v3.0.6
Round nineteen: flow parser, credential refusal, honest gc (#1)
Eight findings from review round nineteen, plus two from CodeRabbit on the PR.
The one that had shipped: 3.0.5 taught _split_flow that a quote only opens where
a value can begin and left the colon out of that list, so after key: every
comma or bracket inside a quoted value read as structure — refused on every
shipped binary, fine from a checkout. _outside_quotes needed the rule too.
doctor --fix: the multi-value refusal sat after the prompt, so a dry run
promised a strip the apply then refused; and one remote with two credentialed
url= lines gave two identical actions and two prompts for one problem.
sync.gc: git gc --auto exits 0 whether or not it repacked, so a workspace
where nothing happened reported "200 repositories packed". It counts loose
objects either side now, and no longer shares its consent key with the
unconditional gc that doctor --fix runs.
From CodeRabbit: url and pushurl are load-bearing for opposite reasons — git
fetches from the first url and pushes to every pushurl — and the safety bullet
still promised a protected file stays at its path, which clean.quarantine
changes.
What's Changed
New Contributors
Full Changelog: v3.0.5...v3.0.6