Thirty-eight commands walked argv by hand and each decided on its own whether an unknown --flag was an error, a positional or nothing at all; mr review --approve --bogus reported repository --bogus as not found.
parseFlags reads argv against a flagSpec of value flags, repeatable flags, switches and a positional limit, and answers every mistake the same way with the command's usage attached: unknown flag, missing value, too many arguments. A value is taken verbatim (- included, so --file - still works) and -- ends flag parsing. Every command was converted; validation that a loop used to do inline (a limit range, --visibility public|private, --key -) follows the parse unchanged. Only parsePageFlags, a pre-pass that strips --limit/--cursor before a list command sees the rest, keeps its own loop.
TestParseFlags covers the parser; the control and cmd unit tests pass. The e2e suite runs here.
Closes #96