Better to keep tasks in a separate repo imo, or at least make sure they aren't committed.
I always follow one rule: looking at the git history should tell me what each change did, and the commit message alone should be enough to understand what actually changed.
If you mix tasks with code changes, you will just confuse your future self.
Moreover, you can set up something like beads to handle task delegation and status updates for your agents.