
===== C2/B3 - canonical resolve + disk cross-check =====
  STATUS.md canonical: mig=69 test=590 gotcha=85 table=96 menu=55 policy=220
  disk cross-check:    mig=71 gotcha=85
[DETECTOR] HIGH | docs/STATUS.md | canonical-itself-stale: STATUS Migrations=**69** but disk has 71 migration .cs | resolve: re-ground STATUS.md Migrations row to 71

===== C2/B3 - derived-doc staleness =====
[DETECTOR] LOW  | CLAUDE.md:94 | derived-stale: writes 6 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/contract-workflow/SKILL.md:24 | derived-stale: writes 3 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/contract-workflow/SKILL.md:35 | derived-stale: writes 6 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/contract-workflow/SKILL.md:332 | derived-stale: writes 6 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/contract-workflow/SKILL.md:332 | derived-stale: writes 6 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/contract-workflow/SKILL.md:367 | derived-stale: writes 77 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] MED  | .claude/skills/ef-core-migration/SKILL.md:93 | derived-stale: writes 97 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:93 | derived-stale: writes 1 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:93 | derived-stale: writes 7 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:102 | derived-stale: writes 2 migration but canonical=69 | resolve: update to 69 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:103 | derived-stale: writes 1 migration but canonical=69 | resolve: update to 69 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:119 | derived-stale: writes 3 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:122 | derived-stale: writes 1 table/bang but canonical=96 | resolve: update to 96 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:170 | derived-stale: writes 1 migration but canonical=69 | resolve: update to 69 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/ef-core-migration/SKILL.md:187 | derived-stale: writes 1 migration but canonical=69 | resolve: update to 69 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/permission-matrix/SKILL.md:60 | derived-stale: writes 4 policy but canonical=220 | resolve: update to 220 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/permission-matrix/SKILL.md:80 | derived-stale: writes 0 menu but canonical=55 | resolve: update to 55 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/skills/permission-matrix/SKILL.md:80 | derived-stale: writes 0 policy but canonical=220 | resolve: update to 220 OR replace with pointer '-> docs/STATUS.md'
[DETECTOR] LOW  | .claude/commands/session-end.md:253 | derived-stale: writes 2 test but canonical=590 | resolve: update to 590 OR replace with pointer '-> docs/STATUS.md'
  (note: count-token grep is a soft net - module-local phrases like "4 bang Budget" / "71 test (Phase 8)" can false-positive; H18-A ratio-band demotes far-from-canonical counts to LOW = review-not-fail, near-canonical stale-totals stay MED)

===== C1 - broken gotcha-ref =====
[DETECTOR] MED  | docs/changelog/sessions/2026-07-25-1930-S151-bootstrap-trio-auto-fixes.md:25 | broken-gotcha-ref: cites #91 but max gotcha is 85 | resolve: fix the number or add the gotcha to docs/gotchas.md

===== C1 - dangling wikilink =====
[DETECTOR] LOW  | user-memory/feedback_7agent_split_upgrade.md:70 | dangling-wikilink: [[feedback-multi-agent-setup]] -> feedback-multi-agent-setup.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_h18_ghostwire_stamp_integrity.md:18 | dangling-wikilink: [[faultinjection-proves-teeth]] -> faultinjection-proves-teeth.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_h18_ghostwire_stamp_integrity.md:18 | dangling-wikilink: [[canonical-spec-over-broadcast]] -> canonical-spec-over-broadcast.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_h18_ghostwire_stamp_integrity.md:18 | dangling-wikilink: [[agent-return-garble-recover]] -> agent-return-garble-recover.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_implementer_truncation_mitigation.md:81 | dangling-wikilink: [[feedback-per-chunk-commit]] -> feedback-per-chunk-commit.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_implementer_truncation_mitigation.md:81 | dangling-wikilink: [[feedback-multi-agent-setup]] -> feedback-multi-agent-setup.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_implementer_truncation_mitigation.md:81 | dangling-wikilink: [[feedback-rag-hybrid-pattern]] -> feedback-rag-hybrid-pattern.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_phase10_namgroup_port.md:72 | dangling-wikilink: [[feedback-rag-distributed-ownership]] -> feedback-rag-distributed-ownership.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_phase10_namgroup_port.md:72 | dangling-wikilink: [[feedback-multi-agent-setup]] -> feedback-multi-agent-setup.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_rag_mcp_recovery_concurrency.md:21 | dangling-wikilink: [[status-handoff-tiering]] -> status-handoff-tiering.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_rag_mcp_recovery_concurrency.md:21 | dangling-wikilink: [[aiinfra-charter-v2]] -> aiinfra-charter-v2.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_resume_premise_reverify.md:19 | dangling-wikilink: [[agent-kill-recovery]] -> agent-kill-recovery.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_resume_premise_reverify.md:19 | dangling-wikilink: [[prod-config-inspect-before-change]] -> prod-config-inspect-before-change.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_resume_premise_reverify.md:19 | dangling-wikilink: [[stale-diagnostic-background-agent]] -> stale-diagnostic-background-agent.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/feedback_status_handoff_tiering.md:18 | dangling-wikilink: [[implementer-truncation-mitigation]] -> implementer-truncation-mitigation.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/project_h22_wal_session_continuity.md:20 | dangling-wikilink: [[h18-ghostwire-stamp-integrity]] -> h18-ghostwire-stamp-integrity.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | user-memory/project_h22_wal_session_continuity.md:20 | dangling-wikilink: [[workflow-fanout-reliability]] -> workflow-fanout-reliability.md not found in user-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/MEMORY.md:32 | dangling-wikilink: [[feedback_agent_return_garble_recover]] -> feedback_agent_return_garble_recover.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/feedback_machine_blind_classes.md:19 | dangling-wikilink: [[ctx-curator-run-log]] -> ctx-curator-run-log.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/pattern_master_page_mirror.md:38 | dangling-wikilink: [[pattern-fe-mirror-2-app]] -> pattern-fe-mirror-2-app.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/pattern_master_page_mirror.md:38 | dangling-wikilink: [[pattern-readonly-admin-mirror]] -> pattern-readonly-admin-mirror.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/project_s103_h20_crystallized_backfill_review.md:30 | dangling-wikilink: [[wire-claim-verification-anchors]] -> wire-claim-verification-anchors.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/project_s92_admin_only_modules_revoke.md:31 | dangling-wikilink: [[s89-pe-sectionb-review]] -> s89-pe-sectionb-review.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/2026-06.gist.md:33 | dangling-wikilink: [[feedback_agent_kill_recovery]] -> feedback_agent_kill_recovery.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)
[DETECTOR] LOW  | agent-memory/2026-06.gist.md:34 | dangling-wikilink: [[feedback_harness10_run_trace]] -> feedback_harness10_run_trace.md not found in agent-memory | resolve: fix the link target or create the file (note: hyphen vs underscore basename fork is common)

===== C3 - vocab-fork =====
[DETECTOR] MED  | multiple files | vocab-fork: wave-folder=19f vs run-trace=70f live side-by-side -- 'wave-folder' in [docs/changelog/sessions/2026-06-07-S49-harness-1-2-3-adopt.md, docs/changelog/sessions/2026-06-07-S50-harness-verified-runtime.md] | 'run-trace' in [docs/HANDOFF.md, docs/STATUS.md] | resolve: merge to ONE canonical term, or record an alias-map in docs/governance
[DETECTOR] MED  | multiple files | vocab-fork: D? tr PRO=9f vs Ngn sch PRO=7f live side-by-side -- 'D? tr PRO' in [docs/changelog/sessions/2026-06-12-S60-S62-pe-budget-workitem-softwarning.md, docs/changelog/sessions/2026-06-16-S65-hrm-golive-employee-masterdetail-pe-link.md] | 'Ngn sch PRO' in [docs/changelog/sessions/2026-06-16-S65-hrm-golive-employee-masterdetail-pe-link.md, docs/_archive/STATUS-HANDOFF-tier-S94-2026-06-29.md] | resolve: merge to ONE canonical term, or record an alias-map in docs/governance
[DETECTOR] MED  | multiple files | vocab-fork: two-tier=23f vs all-inherit=41f vs worker-tier-pin=22f live side-by-side -- 'two-tier' in [docs/STATUS.md, docs/changelog/sessions/2026-06-16-S66-closeout-harness8-cicd-curate.md] | 'all-inherit' in [docs/HANDOFF.md, docs/STATUS.md] | 'worker-tier-pin' in [docs/HANDOFF.md, docs/STATUS.md] | resolve: merge to ONE canonical term, or record an alias-map in docs/governance

===== C5 - WAL guardrail (H22) =====
[DETECTOR] MED  | .claude/WAL.md | wal-overflow: 41 lines > 40-line hard cap (H22 N.1 overwrite-not-append) | resolve: trim WAL to <= 40 lines: move long notes to run-folder/work-state; keep chain+next+verify only

===== H24-1 - title-freshness =====
  anchors parsed: 2 doc(s) ; moc-phai (newest governance milestone) = 2026-05-12 from docs/rag-setup-plan.md:4
    anchor 2026-05-12  docs/rag-setup-plan.md:4
    anchor 2026-04-30  .claude/skills/form-engine/SKILL.md:15
[DETECTOR] LOW  | .claude/skills/form-engine/SKILL.md:15 | title-stale: anchor says 2026-04-30 but newest governance milestone is 2026-05-12 (12d behind) | resolve: refresh the title/status anchor date, or state explicitly that the doc is frozen-historical

===== H24-3 - session-label lag =====
  [skip] no doc carries BOTH a session label and an S-heading - nothing to compare

===== H24-2 - carry-age (INFORM-only) =====
  config resolved: .claude/agent-memory/memory-budget.json
  M = h24_cadence.light_every = 6 (read from config, not hardcoded)
  HANDOFF logic-segments (NEXT anh/em) = 25 ; of those, carry-lines = 18
    [ok] carry 'ctx-t9-dogfood' streak=2 < M=6
    [ok] carry 'ring5-audit-gap' streak=1 < M=6
    [ok] carry 'hmw-width-vs-roster' streak=1 < M=6
    [ok] carry 'hmw-subfile-index-collision' streak=1 < M=6
    [ok] carry 'adap-apply-2-thu' streak=3 < M=6

===== H25-closeout-ritual (GAP-2) =====
  closeouts found: 31 in 27 close-group(s) ; scoring 3 most-recent group(s) (label-folded union-window per group)
    [ok] e5123ff S162: union (1d3d167..e5123ff] has all 4 ritual books
    [ok] 1d3d167 S159-S160: union (33e7f68..1d3d167] has all 4 ritual books
    [ok] 33e7f68 S158: union (871ac0a..33e7f68] has all 4 ritual books

===== H25-role-notebook (GAP-3) =====
  roster=23 ; diaries-ok=23 ; flagged=0 ; inert(defined-not-run)=0
  UNMAPPED sub-file prefixes (206) [INFORM, not flagged - measure content not name, S122]:
    apply-L1, apply-L2, apply-L3, apply-L4, apply-L5-evalcuaeval, apply-L6, cicd-verify-k1, cicd-verify-k2, cicd-verify-k3, ctx-audit-close-S158, ctx-audit-close-S162, ctx-audit-open-S154, ctx-audit-open-S159, ctx-audit-open-S163, d2-be, d2-fe, d2-test, fable-invest-S153, frontend-designer-dot4, frontend-designer-tongquan, h24-audit-S146, h24-audit-S149, harvest, harvest-close-S152, harvest-curator-close-S153, harvest-curator-close-S158, harvest-curator-close-S162, harvest-curator-open-S154, harvest-curator-open-S159, harvest-curator-open-S163, harvest-curator-S153, harvest-S150, harvest-S151, harvest-S152, implbe-k1, implbe-k2, implbe-k3, implbe-k4a, implement-A-c7, implement-CE-sessionmodel, implement-D-5vong, implfe-k1, implfe-k2, implfe-k3, impl-M1-scaffold, impl-M2-tick, impl-M3-signal, impl-M4-c11, impl-M5-sentinel, impl-runsreadme, impl-sleepcmd, invest-1-vong-def, invest-2-vong-nhip, invest-3-vong-2lo, invest-4-se-do-A, invest-5-se-do-B, invest-6-thu-bind, invest-8-thu-bind, invest-A, invest-B, invest-backlog, invest-bch, invest-be, invest-C, invest-codebase-A-mapping, invest-codebase-B-approach, invest-codebase-C-edge, invest-day, invest-fable-b1a, invest-fable-b2-cum1, invest-fable-b2-cum2, invest-fable-b2-cum3, invest-fe, invest-hoi-tu, investigator-2-spec-draft, investigator-codebase-A, investigator-codebase-B, investigator-codebase-C, investigator-codebase-D, investigator-codebase-E, invest-kehoach, invest-menu, invest-owner-gated, invest-wfver, lead-gap-close-S152, lead-gap-close-S153, lead-gap-close-S158, lead-gap-close-S162, lead-gap-deep-S151, lead-gap-open-S154, lead-gap-open-S159, lead-gap-open-S163, lead-gap-S150, lead-gap-S151, lead-gap-S152, lead-gap-S153, lead-omission, lead-omission-auditor, lead-omission-S146, lead-stale-close-S152, lead-stale-close-S153, lead-stale-close-S158, lead-stale-close-S162, lead-stale-deep-S151, lead-stale-open-S154, lead-stale-open-S159, lead-stale-open-S163, lead-stale-S150, lead-stale-S151, lead-stale-S152, lead-stale-S153, lead-view, lead-view-auditor, lead-view-S146, review-claims, reviewer-1-verdict, reviewer-3-verdict, reviewer-5vong-closure, reviewer-anchor-A-s160, reviewer-anchor-B-s160, reviewer-anchor-C-s160, reviewer-axisE, reviewer-bulk, reviewer-c1-l1, reviewer-c1-l2, reviewer-c1-l3, reviewer-c2-l1, reviewer-c2-l2, reviewer-c2-l3, reviewer-c3-l1, reviewer-c3-l2, reviewer-c3-l3, reviewer-c7, reviewer-chot-cuoi-s160, reviewer-clone-l1-b1b, reviewer-clone-l2-b1b, reviewer-clone-l3-b1b, reviewer-diff-dot4, reviewer-diff-dot5, reviewer-diff-tongquan, reviewer-f1-checkbox, reviewer-fable-spec, reviewer-gate-k1, reviewer-gate-k2, reviewer-gate-k3, reviewer-hoi-tu, reviewer-precommit-s146, reviewer-R2, reviewer-R3, reviewer-security-s160, reviewer-session-model, reviewer-wave-logic-s160, review-fable-b3, review-fidelity, review-gaps, review-gate, review-q2, review-r1, review-r2, review-r3, review-schema, review-verdict, review-wave, ring1-audit-close-S162, ring1-audit-open-S159, ring1-audit-open-S163, ring1-close-S152, ring1-close-S153, ring1-close-S158, ring1-open-S154, ring1-S150, ring1-S151, ring1-S152, ring1-S153, ring2-audit-close-S162, ring2-audit-open-S159, ring2-audit-open-S163, ring2-close-S152, ring2-close-S153, ring2-close-S158, ring2-deep-S151, ring2-open-S154, ring2-S150, ring2-S151, ring2-S152, ring2-S153, ring4-close-S152, task, test-k1, test-k2, test-k3, tooling, tooling-auditor-close-S153, tooling-auditor-close-S158, tooling-auditor-close-S162, tooling-auditor-open-S154, tooling-auditor-open-S159, tooling-auditor-open-S163, tooling-auditor-S153, tooling-close-S152, tooling-S150, tooling-S151, tooling-S152, w1-task, w2-task, w3-task

===== C6 - cite-2-tier (INFORM-only) =====
  C6 scanned 52 file(s) (governance-top + commands + agents; adap-reports excluded)
  C6 cite-2-tier flags = 0 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== H24-4 - pending-flip (INFORM-only) =====
  HANDOFF current-segment = lines 1..117 (boundary '**Prev S' at line 118)
  H24-4 pending-flip flags = 0 [INFORM-only, LOW, NOT folded; 0 = designed first-run]

===== H24-5 - counter-ancestor-classify (INFORM-only) =====
  [OK] OK-reachable: last_ticked_head 24ea71e2 (session S166) is an ancestor of HEAD
  [ok] counter=40 >= last_audit.light_at_counter=36
  [ok] counter=40 >= last_audit.deep_at_counter=25
  H24-5 counter-ancestor flags = 0 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== C9 - hmw WIDTH mirror-drift (INFORM-only) =====
  [ok] WIDTH mirror 20 == canonical hmw_width.cap 20
  C9 width-drift flags = 0 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== C10 - logic-session folder (INFORM-only) =====
  [ok] session-9 is OPEN (no _end/closed.md)
  C10 logic-session flags = 0 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== C11 - H24 FLAG-khuon + diary-delta (INFORM-only) =====
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-25-S151-h24-open-bookend/sub-lead-gap-S151.md:17 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-25-S151-h24-open-bookend/sub-lead-stale-deep-S151.md:20 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-25-S151-h24-open-bookend/sub-lead-stale-S151.md:11 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-25-S152-h24-open-bookend/sub-lead-stale-close-S152.md:11 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-29-S159-bookend-open/sub-ring2-audit-open-S159.md:41 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-30-S162-bookend-close/sub-ring2-audit-close-S162.md:18 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-30-S163-bookend-open/sub-ctx-audit-open-S163.md | diary-0-delta (GAP-3): role 'ctx-audit' produced an artifact (mtime 2026-07-30T17:32) but its diary has no newer commit (diary last commit 2026-07-30T15:13) - role ran, memory not seeded (spec M9) | resolve: lead APPEND agent-memory/ctx-audit/ on-behalf IN THE SAME session (khuon B3) and commit, so next session does not enter blind
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-30-S163-bookend-open/sub-ring1-audit-open-S163.md | diary-0-delta (GAP-3): role 'ring1-audit' produced an artifact (mtime 2026-07-30T16:34) but its diary has no newer commit (diary last commit 2026-07-30T15:13) - role ran, memory not seeded (spec M9) | resolve: lead APPEND agent-memory/ring1-audit/ on-behalf IN THE SAME session (khuon B3) and commit, so next session does not enter blind
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-30-S163-bookend-open/sub-ring2-audit-open-S163.md:39 | H24 FLAG-khuon: sub-file raises FLAG-<n> but has NO conforming class-tag line "## FLAG-<n> [em-dash] `<view-/gap-...>` [em-dash] SEV" - the by-class tally cannot count an untagged flag (S148 lost 2/9 flags exactly this way) | resolve: tag EACH raised flag on its own line "## FLAG-<n> [em-dash=U+2014] `<class>` [em-dash] SEV" (class in view-*/gap-*); one conforming line un-flags the file
[DETECTOR] LOW  | .claude/workflows/runs/2026-07-30-S163-bookend-open/sub-ring2-audit-open-S163.md | diary-0-delta (GAP-3): role 'ring2-audit' produced an artifact (mtime 2026-07-30T16:44) but its diary has no newer commit (diary last commit 2026-07-30T15:13) - role ran, memory not seeded (spec M9) | resolve: lead APPEND agent-memory/ring2-audit/ on-behalf IN THE SAME session (khuon B3) and commit, so next session does not enter blind
  C11 FLAG-khuon + diary-delta flags = 10 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== C12 - raw-engine-bypass (INFORM-only) =====
  [ok] 2026-07-25-1200-S149-S150-closeout-bookend-first-run.md carries a run= registration line
  [ok] 2026-07-25-1930-S151-bootstrap-trio-auto-fixes.md carries a run= registration line
  [ok] 2026-07-26-0200-S152-bookend-memops-close.md carries a run= registration line
  [ok] 2026-07-26-1600-S153-ctx-adopt-3vai-rename.md carries a run= registration line
  [ok] 2026-07-28-0930-S155-S157-pe-delete-bch-invest-diadiem.md carries a run= registration line
  [ok] 2026-07-28-2100-S158-adap-day-wake-bookend-close.md carries a run= registration line
  [ok] 2026-07-29-1440-S159-tong-quan-quy-trinh-arc2-bookend.md - no unregistered spawn mention
  [ok] 2026-07-30-1100-S162-cay-4-folder-gd-close.md carries a run= registration line
  C12 raw-engine-bypass flags = 0 [INFORM-only, LOW, NOT folded into TOTAL baseline]

===== Summary =====
self-exclusion: 6 paths excluded (exact+dir rules)
  - excluded: scripts/governance-detectors.ps1
  - excluded: docs/governance/harness-11-engine.md
  - excluded: docs/governance/vocab-alias-map.md
  - excluded: broadcasts/inbox
  - excluded: broadcasts/outbox
  - excluded: .claude/workflows/runs
self-match check: governance-detectors.ps1 in scan = 0 ; leaked excluded files in scan = 0
  [OK] 0 self-match (C4 satisfied)

TOTAL FLAGS: 51
INFORM-ONLY (new nets C6 cite-2-tier + H24-4 pending-flip + H24-5 counter-ancestor-classify + C9 hmw-width-drift + C11 h24-flag-form + C12 raw-engine-bypass): 10 - counted SEPARATELY, NOT in TOTAL above (anti-Goodhart, owner-set; fold+sev-raise is post-triage)
NOTE: DETECT-only lowering net. Exit 0 always (never fails build). FLAGs are advisory.
