Scans meeting transcripts processed by the daily meeting-intake cycle for first-person commitments Ethan made out loud ('I'll send you...', 'I'll get that over by Friday'), then cross-checks each against the task-ledger and sent-mail-watch history to see whether it actually happened. Anything still unfulfilled 48 hours later lands as a card on the tablet brief. Ethan's systems track tasks he wrote down — this catches the ones he only said.
Create /home/ethan/bin/meeting-promise-tripwire (bash+python). Step 1: glob the last 7 days of transcripts under the process-meeting output dir (same path daily-meeting-intake-cycle writes to), pipe each through `llmq` with a prompt extracting {promise_text, recipient, due_hint} for first-person commitments by Ethan only; store as JSONL in ~/.local/state/meeting-promises.jsonl keyed by sha1(transcript_id+promise_text) so re-runs dedupe. Step 2: for each open promise older than 48h, check fulfillment by (a) grepping `task-ledger list` output for a fuzzy match, (b) querying sent-mail-watch's log for a message to the recipient after the meeting date. Mark fulfilled ones closed. Step 3: pipe the remaining open set to `socratic-tablet-pipe` (or `morning-tablet-brief` append) as a 'You said you would' section, and `telegram-notify` if any promise is >5 days old. Wire as a systemd timer at 07:15 daily, with a companion meeting-promise-tripwire-freshness-check matching the existing *-freshness-check convention.