* fix(daemon): keep an existing checkout's work when repo checkout runs again
Re-running `multica repo checkout` on a path that already held a checkout
ran git reset --hard and git clean -fd and moved it to a new branch from the
default branch; isolated checkouts also deleted earlier agent/* branches.
Uncommitted changes, untracked files, and unpushed commits were lost with
output that still read as a normal checkout.
An existing checkout that holds work, or is already on this task's branch,
is now kept exactly as it is and only its remote refs are fetched. The
result reports that it was kept, with its branch and uncommitted/unpushed
counts, and the CLI says so. --fresh restores the old start-over behavior.
Isolated-mode pruning keeps agent/* branches with unpushed commits, and a
linked worktree holding work is no longer removed to migrate it.
MUL-7284
Co-authored-by: multica-agent <[email protected]>
* fix(daemon): carry a migrated linked worktree's unpushed branch into the isolated checkout
--fresh migration of a linked worktree to an isolated checkout removed the
worktree and seeded a new clone whose copied branches are all deleted, so a
branch holding unpushed commits stayed only in the shared cache: out of the
agent's reach and dropped by the next GC. Carry that one branch into the new
checkout (no other cache branch), imported before the task branch so a
same-named task branch moves to a timestamped name.
Align the agent-facing --fresh wording: it discards uncommitted and untracked
files and starts a new branch; commits stay on the old branch, but push any
still needed first, since a linked worktree's old branch lives in the shared
cache that GC prunes.
MUL-7284
Co-authored-by: multica-agent <[email protected]>
---------
Co-authored-by: J <[email protected]>
Co-authored-by: multica-agent <[email protected]>