← Back to brief

feedback email status verification

memory · feedback_email_status_verification.md

Rule

Before stating an email is sent, drafted, scheduled, bounced, or in any specific delivery state — the agent MUST run a fresh Gmail MCP query that proves the state. No exceptions.

Required verification pattern

For "is this email sent?":
1. Run list_drafts filtered by recipient/subject — if the message ID is in the result, the email is UNSENT (still a draft).
2. Run search_threads with in:sent and the same filter — message ID appearing here is the only acceptable proof of delivery.
3. If the same message ID appears in BOTH (rare but possible during certain Gmail edge cases), treat it as UNSENT until confirmed otherwise.

If you cannot run those queries in the current context, say "I can't verify this without Gmail access" — never substitute inference for verification.

Why

On 2026-04-30, Joseph caught a false claim. The agent said an Adam Fleckles email (thread 19dd050a7abf8719, msg 19ddb3b7ab1de4fd, dated Apr 29 21:53 UTC) was "sent yesterday." It was sitting in drafts. Joseph's quote: "You're supposed to be resourceful and all knowing... lazy mistake."

Root cause:

This was not a parsing edge case — it was a habit of trusting a derivative source over the primary one. That's the lazy mistake Joseph called out.

How to apply

Skill maintenance flag

The transcript-scan skill should be updated to:
1. Mark every captured email with a delivery_status field: sent_confirmed, draft, or unknown.
2. Set unknown when the capture comes from a self-paste, a forward, or an Otter/Gemini summary — these don't authoritatively indicate the source folder.
3. Stop using past-tense delivery language in followup summary files unless delivery_status: sent_confirmed.
4. When an Otter/Gemini transcript captures content from a draft (e.g., voice-recorded conversation that's later transcribed and dropped into a draft), label delivery_status: draft not sent.

Tracked in project_skill_maintenance_flags.md as item: "transcript-scan email-delivery-status field needed; pass-37 false-sent-claim incident as forcing function."