05 DOT / Trigger / Process Reconciliation — 2026-06-05
05 — DOT / Trigger / Process Reconciliation (Phase D)
Goal: DOT count is no longer ambiguous; reconcile DOT/trigger/process inventory against live + filesystem truth.
D1 · v_dot_reconciliation_reliability (dot_tools × fs snapshot)
dot_tools 309 classified by joining wf_fs_dot_bin_snapshot.mapped_dot_code:
| dot_class | n | label |
|---|---|---|
| DOT_EXECUTABLE_CONFIRMED | 186 | FINAL (fs-mapped to real /opt/incomex/dot/bin file) |
| DOT_HELPER_TOOL | 19 | ADVISORY (metadata/catalog/registry/schema/auth/permission) |
| DOT_MISSING_FILE | 4 | NEEDS_RECONCILE (script_path declared, no fs match) |
| DOT_REGISTERED | 100 | PARTIAL (no script_path, not fs-confirmed) |
Filesystem-side: 101 dot/bin files have NO dot registry row (DOT_FILE_NO_REGISTRY). script_path: 119 declared, 117 resolve on disk, 2 missing.
D2 · v_dot_process_type1_projection (104 triggered dots)
DOT_TYPE1_PROCESS_READY 10 (cron/event/dual/on-deploy AND fs-confirmed → CANDIDATE) · DOT_TYPE1_NEEDS_EVIDENCE 47 (triggered, not fs-confirmed → NEEDS_RECONCILE) · NOT_TYPE1 47.
D3 · v_trigger_reconciliation_reliability
db_dml_trigger live 408 vs trigger_registry 107 → STALE (use pg_trigger for headline) · event_type active 30 / total 52 → NOT_ADDITIVE · dot_triggered 104 scheduled / any-trigger 104 → CANDIDATE.
D4 · v_process_trigger_reconciliation_reliability
process_candidates 19 (CANDIDATE) · candidate_members 143 · official_process 0 (AUTHORITY_BLOCKED) · residual_awaiting_owner 2 (OWNER_BLOCKED) · orphan_remediation_queue 143.
Completion: DOT 309 is fully decomposed (186+19+4+100) with filesystem confirmation; trigger live-vs-snapshot drift and process-candidate vs official gap are explicit. ✔