Merge Combine and into one flow. Default to fast-forward; preserve a merge commit when fast-forward isn't possible or the user asks for one. Always interactive about deleting branches and worktrees. Flow 1. Refuse if already on main. If returns (or ), stop and report — there's nothing to merge. 2. Working tree must be clean. If there are uncommitted changes, ask the user whether to commit, stash, or abort. Do not silently stash. 3. Capture the feature branch name — . 4. Sync main. - - 5. Try fast-forward merge first. - - If it succeeds, history is linear — done with the merge step. - If it fa…