{"schema_version":"2.0","record_type":"article","canonical_url":"https://marketingwiki.ai/articles/email-agent-skipped-hook-proof","id":"email-agent-skipped-hook-proof","slug":"email-agent-skipped-hook-proof","title":"A Skipped Email Agent Hook Needs Its Own Evidence","description":"Verify whether a required email check ran when plugin ordering can skip a mod hook, and block dependent actions when its result is absent.","dek":"A prerequisite-result graph and a five-case hook execution drill.","category":"Email Operations","topics":["Migma","email marketing","hook execution evidence"],"publishedAt":"2026-10-20","updatedAt":"2026-10-20","lastVerifiedAt":"2026-10-20","readingMinutes":4,"author":"Marketing Wiki Research Automation","reviewer":null,"featured":false,"sources":[{"title":"Migma Claude connection tutorial","url":"https://docs.migma.ai/tutorials/connect-migma-to-claude-code?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof"},{"title":"Claude Code v2.1.304 release","url":"https://github.com/anthropics/claude-code/releases/tag/v2.1.304"},{"title":"Migma Email Preflight","url":"https://docs.migma.ai/email-editor/email-preflight?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof"},{"title":"Migma Visual Canvas","url":"https://docs.migma.ai/creating-emails/visual-canvas?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof"}],"wordCount":675,"body":"Affiliation: Marketing Wiki's commissioning editor maintains Migma.\n\nMarketing Wiki Research Automation published this guide directly without independent review.\n\nMigma Preflight results are useful only when the intended check actually ran against the email being considered. If an agent plugin skips a hook that normally performs a prerequisite check, a quiet transcript must not count as a passing result. Require a separate completion record before the dependent action proceeds.\n\nClaude Code [v2.1.304](https://github.com/anthropics/claude-code/releases/tag/v2.1.304), published October 19 at 21:34:39 UTC, adds a transcript line identifying the event and plugin when an earlier plugin skips a mod’s hook. That improves visibility into a specific execution path. It does not establish that the skipped work was unnecessary or automatically performed elsewhere.\n\n## A skipped check is a missing result\n\nConsider a fictional email agent that normally checks the destination of a primary booking link before preparing a campaign. Another plugin handles an earlier event and the expected hook does not execute. The email may still look correct, and the agent may continue writing a confident summary.\n\nThe question is whether a fresh link-check result exists for this email version. It is not whether the hook was configured, whether it ran yesterday or whether the tool returned no visible error. Configuration, invocation and successful completion are separate evidence.\n\n[Migma’s Claude workflow](https://docs.migma.ai/tutorials/connect-migma-to-claude-code?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof) documents drafts, canvas review, inbox checks and explicit sending decisions. Use those boundaries to identify the prerequisites your own automation requires. Do not assume a local hook is a built-in Migma enforcement mechanism.\n\n## Draw the prerequisite-result graph\n\nRepresent the workflow in ordinary terms:\n\n```text\nreviewed email version\n  -> required checks requested\n  -> completed results tied to that version\n  -> unresolved findings handled\n  -> authorized campaign action\n  -> destination result recorded\n```\n\nFor each arrow, identify the owner and the artifact it consumes. A transcript line reporting a skipped hook belongs beside “checks requested”; it cannot supply “completed results.” If a different supported route performed the same check, reconcile that result explicitly rather than inventing equivalence.\n\nSave the check name, email version, invocation time, completion status, findings and result reference. Keep “not run,” “running,” “failed” and “passed” distinct. An unavailable check needs a deliberate disposition by the responsible owner, not a green default.\n\n## Rehearse five execution paths\n\nUse this original drill in a safe environment before trusting an unattended chain.\n\n| Fixture | Required observation | Dependent action |\n| --- | --- | --- |\n| Hook completes normally | Fresh matching result | May continue after other gates |\n| Earlier plugin skips hook | Skip notice and no result | Hold |\n| Check starts but times out | Incomplete status | Reconcile before retry |\n| Old result exists | Wrong email version or age | Rerun the required check |\n| Alternate route completes check | Equivalent scope demonstrated | Continue only after reconciliation |\n\nAssert the dependent action’s count as well as the transcript. A clear “skipped” message is helpful, but the workflow still fails its own contract if a send proceeds without its required evidence.\n\nThis drill is a proposed method. Marketing Wiki did not install a mod, alter plugin order, invoke Migma tools or perform any campaign action.\n\n## Repair the smallest missing boundary\n\nOpen the reviewed email on [Migma’s Visual Canvas](https://docs.migma.ai/creating-emails/visual-canvas?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof) and run the relevant [Preflight checks](https://docs.migma.ai/email-editor/email-preflight?utm_source=marketingwiki&utm_medium=referral&utm_campaign=email-agent-skipped-hook-proof) through the supported workflow when needed. If the email changes during repair, invalidate results affected by that change and collect fresh ones. Avoid rerunning successful external actions simply because a validation hook was missing.\n\n## Check authority after restoring validation\n\nKeep authority separate from validation. A person can approve an action whose prerequisites still fail; a passing check does not authorize a send. Both records must refer to the intended artifact and action. See the [unattended approval handoff](/articles/email-agent-unattended-person-approval) for the separate person-decision boundary.\n\nRecover the missing creative-validation result through Migma’s visible draft and check surfaces. Begin with the one hook whose absence would permit the most consequential mistake, and verify that a skipped invocation produces an honest hold instead of an assumed pass."}