What you're trying to do
When I have already reviewed several pending proposals, I want to approve them in one command, because approving each one separately is repetitive and encourages shell workarounds.
What you've tried
I can run vouch approve <id> repeatedly, or use a pipeline like vouch pending --json | jq -r '.[].id' | xargs -n1 vouch approve.
That works, but it is clunky, less discoverable, and easier to misuse than a first-class batch approval command.
Suggested shape
Add batch approval to the existing approve flow:
vouch approve --batch <proposal-id>... --reason "reviewed together"
Each proposal should use the same validation, self-approval checks, artifact creation, and audit behavior as single-proposal approval.
Compatibility considerations
This should be additive and should not break existing KBs. It should not change the object model, on-disk layout, bundle format, or kb.* method surface.
Because it preserves the existing review gate and only extends the CLI, it likely should not require a VEP.
Alternatives
Keep approving proposals one at a time with vouch approve <id>.
Use vouch review for an interactive queue.
Document a shell pipeline using vouch pending --json, though that is less discoverable and easier to get wrong.
What you're trying to do
When I have already reviewed several pending proposals, I want to approve them in one command, because approving each one separately is repetitive and encourages shell workarounds.
What you've tried
I can run
vouch approve <id>repeatedly, or use a pipeline likevouch pending --json | jq -r '.[].id' | xargs -n1 vouch approve.That works, but it is clunky, less discoverable, and easier to misuse than a first-class batch approval command.
Suggested shape
Add batch approval to the existing approve flow:
vouch approve --batch <proposal-id>... --reason "reviewed together"Each proposal should use the same validation, self-approval checks, artifact creation, and audit behavior as single-proposal approval.
Compatibility considerations
This should be additive and should not break existing KBs. It should not change the object model, on-disk layout, bundle format, or
kb.*method surface.Because it preserves the existing review gate and only extends the CLI, it likely should not require a VEP.
Alternatives
Keep approving proposals one at a time with
vouch approve <id>.Use
vouch reviewfor an interactive queue.Document a shell pipeline using
vouch pending --json, though that is less discoverable and easier to get wrong.