v3.32.14

ruvnet/ruflov3.32.14Jul 27, 2026by ruvnet

AI Summary

Fixes a parser bug where boolean flags were globally poisoned and restores the canonical `--parallel` flag for hooks route mode.

Key Highlights

  • Fixed `getBooleanFlags()` scoping to ensure subcommand flags don't poison other commands.
  • Restored `hooks route --parallel` (short `-p`) as the canonical MoA fanout flag.
  • Kept `--moa-parallel` as a deprecated compat alias for users who upgraded to v3.32.13.

New Features

  • Parser scoping fix for boolean flags
  • Restored `--parallel` flag for hooks route

Full Release Notes

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

```bash
npx ruflo@latest --version   # → 3.32.14
```