APPROVAL: people approve the exact action, once
"Human in the loop" usually means a chat message that says "the agent wants to delete some invoices, OK?" APPROVAL binds the yes to one exact action (agent, service, method, path and body hash), requires N of M named approvers, never lets the agent approve itself, and turns the result into ONE credential that works once.
#9 of the CAIN-42 Top 25 7 gaps found and fixed today 1.1.0 live since 2026-11-02 15:31Z (verified on both gateway instances)
attacks held on today's blind set, before any change
after the fixes (now a tuning set)
credential per approval, used once
ways for the requesting agent to vote
Try the whole loop
Every button calls a live route: open a request, vote, mint, use, replay.
2. Vote as each approver (in production each ballot goes only to its owner):
On this site
How it works
Request, ballots, quorum, receipt.
Live demos
The loop plus single attacks.
Attack lab
Try to break it yourself.
Slack
Buttons, signatures, the message.
Evidence
The blind set, all 26 rows.
Verify it yourself
Ledger and bundle.
API
Routes.
Limits
Honestly.
Use cases
Where it fits.
2026-11-02 upgrade
What we broke and fixed.
FAQ
Questions.
FIRME AI CORPORATION · CAIN-42 is a Byzantine trust fabric. Numbers marked "our own check" were run by us, not by an independent party. Nothing on these pages is a certification.