Mission Run Overview
Mission Run: Doctrine-activation freshness integrity
Close the activate-then-refresh seam so a doctrine mutation can never silently dangle the derived freshness signal: wire the built-but-unwired consistency_check parity into the freshness/preflight path, fix the references.yaml hash-input bug, aggregate the one-at-a-time implement gate, add an opt-in --resynthesize, and durably un-pin the 4 @regression DRG-staleness tests.
Epic #2519: config.yaml activated_* and answers.yaml selected_* are disjoint ledgers with no reconciler. charter/activation_engine.py commit_plan writes ONLY config.yaml — none of the 4 hashed bundle files — so the content-identity freshness signal (#2732) is blind to activation by construction. Recurring revision-driven drift class: #2770 (shipped-DRG stale), #2759 (activate/deactivate skip bundle refresh), #2758 (compute_bundle_content_hash None on missing references.yaml that sync never writes), #2157 (implement gate bounces prerequisites one-at-a-time). Folds those 4. Design per architect-alphonso grounding: option (c) --resynthesize + wire existing consistency_check parity, NOT eager-always regen (layering inversion C-001 + hot-path cost + upgrade-migration harm). #2760 OUT (upgrade-overlay-revalidation, DRG-model lane #2721). MUST NOT regress the just-landed #2732 content-identity machinery.