Consume positional source/target left-to-right across commands
Commit

sync/replicate/plan, bootstrap, and probe consumed positional args by fixed
index (args[0]→source, args[1]→target), so --source-url URL <target> left
the lone positional in args[0] and the target slot empty — sync/bootstrap/plan
errored with "requires source and target"; probe failed silently, dropping the
target and probing only the source.
Extract the left-to-right consumption that convert-sha256 already did correctly into a shared resolvePositionalEndpoints helper, and route all four commands through it. When a positional is left over after both slots are filled (e.g. a flag-supplied source plus two positionals), reject it rather than silently ignoring one — the fixed-index code dropped a positional here too. Add a table test covering the mixed forms and the over-specified case.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com Entire-Checkpoint: b21841a5f646