Skip to content

v3.32.14 β€” parser scoping fix + hooks route --parallel canonical restored

Choose a tag to compare

@ruvnet ruvnet released this 27 Jul 02:20

Follow-up to v3.32.13 that closes the last thing I left as a documented workaround.

Fixed

Parser: subcommand's non-boolean flag now overrides the global boolean set. The prior getBooleanFlags() walked every registered command + subcommand and merged all boolean options into one flat set that governed value-consumption everywhere. Any command anywhere declaring a name as boolean poisoned that name on every other command. That forced the --moa-parallel rename in v3.32.13. Fix: getScopedBooleanFlags now REMOVES flags from the boolean set when the resolved subcommand declares them as non-boolean. Narrowest scope wins.

hooks route --parallel restored as the canonical MoA fanout flag (with short -p). --moa-parallel kept as a deprecated compat alias for anyone who upgraded to v3.32.13 in the ~15-minute window before this patch.

Test plan run

  • Parser tests: 55/55 β†’ 56/56 (new regression test guarding the scoping fix)
  • hooks route --mode moa E2E matrix, all pass: --parallel 5 β†’ 5, --moa-parallel 6 β†’ 6, -p 4 β†’ 4, default β†’ 3, both-passed β†’ canonical wins.

Upgrade

npx ruflo@latest --version   # β†’ 3.32.14