Lesson 103: Post-Inquiry Corrective Action Closure Row - CAPA Linkage to Lesson 96 Verification and Lesson 102 Inquiry Index

Direct answer: A post-inquiry corrective action closure row is the single append-only CAPA record that binds a Lesson 102 inquiry_response_id to concrete remediation—with an owner, due utc, measurable acceptance checks, and proof rows in Lesson 96 (verification_packet_id) or explicitly linked follow-on verification—ending in capa_closure_evidence_hash so inquiries cannot stall in “we answered the letter” limbo.

Safari animals illustration suggesting many species tracked back to one conservation ledger

What this lesson solves

Inquiries create moral debt. CAPA rows turn promises into inventory with receipts.

Prerequisites: At least one Lesson 102 index row for the inquiry and clarity on whether remediation needs new Lesson 94 holds or only tooling fixes. Expected time: about eighty minutes including a tabletop on a “process improvement” finding.

What you will build

  1. lesson78_post_inquiry_corrective_action_closure_policy.md (contract below)
  2. lesson78_post_inquiry_corrective_action_closure.csv (one row per CAPA, not per email thread)
  3. A closure checklist tied to your ticket tool’s resolved state and hash export

Step 1 - Define closure gate classes

gate fail signal posture
C1 – Orphan inquiry inquiry_response_id_ref missing or wrong quarter block closure
C2 – Unverified fix acceptance requires live hash proof but no Lesson 96 row block
C3 – Owner drift owner_id changed without delegation row fail audit
C4 – Open sibling CAPA duplicate finding not merged merge or disclose
C5 – Disclosure without engineering fix ships without ticket link block

Step 2 - Author lesson78_post_inquiry_corrective_action_closure_policy.md

Minimum sections:

  1. Purpose – convert inquiry outcomes into tracked remediation with verification discipline.
  2. Eligibility – every material finding from Lesson 102 gets one CAPA; cosmetic typos get a waiver id instead.
  3. Acceptance tests – must cite observable signals: hash match, metric threshold, or policy doc version bump under Lesson 99.
  4. Linkageverification_packet_id_ref when rollback/telemetry proof is relevant; kill_switch_event_id_ref if new holds were part of the fix.
  5. Escalation – if due date slips twice, auto-notify audit chair and freeze non-critical Lesson 95 overrides for that product line.
  6. Retention – align to Lesson 97 archive family; minimum match regulator retention if stricter.

Step 3 - Author lesson78_post_inquiry_corrective_action_closure.csv

column purpose
capa_id stable id
inquiry_response_id_ref Lesson 102
finding_summary one line
owner_id human
due_at_utc deadline
acceptance_criteria short text
verification_packet_id_ref Lesson 96 optional
capa_status open / closed_verified / waived
capa_closure_evidence_hash sha256 over closure bundle

Step 4 - Close the CAPA (35 minutes)

  1. Map each Lesson 102 question that implied work to one capa_id; split if scopes differ.
  2. Execute remediation; capture before/after hashes or config snapshots.
  3. Attach Lesson 96 verification row if player-visible copy or telemetry changed.
  4. Review with legal if the inquiry touched representations.
  5. Sign capa_closure_evidence_hash with owner + governance delegate.
  6. Reply to regulator/platform with pointer to closure PDF, not raw logs.

Step 5 - Tabletop - “training issue only”

Finding says “staff need training.” Outcome: C5—still open a CAPA with completion metric (e.g., signed attestations count), not a vague workshop.

Pro tips

  • Pair metrics – tie CAPA to a dashboard tile executives already trust.
  • Dual product – duplicate CAPA rows per product_code when Lesson 101 applies.
  • Freeze discipline – if fix waits on Lesson 92, cite scheduled dry-run id in acceptance_criteria.

Troubleshooting

symptom likely cause fix
Cannot verify fix behind feature flag add flag state to evidence
Owner left company no delegation transfer row with signed note
Duplicate CAPAs two teams fixing same bug merge with supersede pointer

Common mistakes

  • Marking closed when only responded to the inquiry email.
  • Skipping Lesson 96 when rollback language changed.
  • Letting CAPA live only in legal tools without CSV export for Lesson 97 next quarter.

FAQ

What if the inquiry is withdrawn?

Log capa_status=waived with waiver_id and legal note; still keep the row for lineage.

Do we need a new Lesson 97 attestation?

Not automatically—append closure PDF path to next quarterly zip’s manifest if material.

Can CAPA close before Lesson 100 fiscal closure?

Yes; fiscal_closure_id_ref is optional unless finding spans year-end.

Lesson recap

A closed inquiry without a CAPA hash is fan mail, not compliance.

Next lesson teaser

Next: Lesson 104: Annual Escalation Governance Tabletop Red-Team Drill runs staged scenarios against Lesson 94 and Lesson 95 with T1–T4 scorecards, drill_evidence_hash, and staging-only DRILL:: trains.

Related learning

Treat CAPA as inventory, not intent.