PASS 01 structured notes produce three review items
PASS 02 missing approval produces no drafts
PASS 03 approval selects two drafts and leaves the third for review
PASS 04 incremental approval respects drafts already in this revision ledger
PASS 05 calendar offset and duration produce the expected UTC end
PASS 06 same approval replay creates no duplicate drafts
PASS 07 changed notes invalidate the previous approval
PASS 08 wrong meeting approval is rejected
PASS 09 unknown action approval is rejected
PASS 10 duplicate approval IDs are rejected
PASS 11 empty approved selection creates no drafts
PASS 12 real email domains are refused in this synthetic demo
PASS 13 timezone-free calendar input is refused
PASS 14 nonexistent calendar dates are refused
PASS 15 duplicate source IDs fail before creating drafts
PASS 16 malformed structured actions fail visibly
PASS 17 instructions in free text do not authorize or execute actions
PASS 18 ordinary ACTION headings remain prose rather than malformed actions
PASS 19 cloud data-policy change is refused
PASS 20 damaged ledger fails closed
PASS 21 malformed ledger entries fail closed
PASS 22 conflicting stored record fails closed
PASS 23 engine does not mutate caller input or prior state
PASS 24 workflow contains only manual trigger and two Code nodes
PASS 25 exported Code wrapper defaults to unapproved review output
PASS 26 exported Code wrapper matches approved engine and replay output
PASS 27 CLI persists ledger and suppresses a later process replay
PASS 28 CLI ledger file is private to its owner
PASS 29 CLI refuses a concurrent or stale lock
PASS 30 CLI refuses corrupt stored JSON without overwriting it

30 checks passed. Network requests: 0. External sends/calendar writes: 0.
Code-wrapper checks use a local Node VM; actual n8n runtime evidence is recorded separately.
