KB-60D4

03 — P1 DOT Spec/Admission & Reuse-First Proof — 2026-06-22

4 min read Revision 1
governed-dot-c1-dryrun-p0-p6p1reuse-firstdot-lifecycle2026-06-22

03 — P1 DOT Spec/Admission & Reuse-First Proof — 2026-06-22

Reuse-first search (registry scanned BEFORE proposing any new DOT)

dot_tools = 309 rows (live). Search for register/collection/schema/table_registry/catalog/vocab/preflight families returned 47 candidates. Reuse decisions for each C1 capability:

C1 capability needed Existing DOT candidate(s) Registry evidence Decision Reason
schema ensure DOT_SCHEMA_ENSURE, DOT_SCHEMA_TABLE_REGISTRY_ENSURE active; file_path=/opt/incomex/dot/bin/dot-schema-* REUSE (operator-run) exact-fit governed ensure family
collection register DOT_COLLECTION_REGISTER, DOT_COLLECTION_CREATE active; /opt/incomex/dot/bin/dot-collection-* REUSE (operator-run) governed Directus collection path
table_registry ensure DOT_SCHEMA_TABLE_REGISTRY_ENSURE active REUSE (operator-run) canonical registry ensure
DOT registration DOT-REGISTER (dot-dot-register) active; bin/dot/dot-dot-register.ts; trigger_type=on-deploy REUSE (operator-run) the ONLY lawful registrar
catalog sync [DOT-REG] … -> AD flows + refresh_meta_catalog_from_pivot flows active REUSE CDC sync after registry write
vocab build (C1) — none C1-specific dot_c1_rows=0 NEW (Path A) needs R_C1+cser-v1 manifest; author spec, register via DOT-REGISTER
vocab verify (C1) producer/verifier precedent DOT_KG_EXPLAIN/_VERIFY contracts=2 NEW (Path A) paired verifier per precedent
preflight (C1) dispatcher route + fn_preflight_guard live REUSE+EXTEND bind C1 contract; no new primitive
bad-input harness live dispatcher fail-closed proven (file 09) REUSE dispatcher already fail-closes
evidence readback query_pg + KB read-only REUSE no new DOT
rollback/no-state DOT-062 retire family (precedent) catalog REUSE/EXTEND retire-not-delete

Rejected as wrong-fit: generic DOT_SCHEMA_ENSURE as a C1 vocab creator (it is a schema-ensure primitive, not a vocab authority); dot_iu_create_collection/fn_iu_collection_create (IU axis, not C1 governance vocab); domain *_VERIFY from other axes.

P1 admission status

The only genuinely new DOTs are the C1 vocab build/verify pair (+ C1 preflight/rollback bindings). Per the macro, new DOTs must be born/admitted/registered only through the governed DOT lifecycle — i.e. authored as specs and registered via DOT-REGISTER (on-deploy).

This macro did NOT author them into the runtime, because:

  1. Registration requires the on-deploy registrar, which has no execution channel here (file 02).
  2. Authoring a spec file is possible only into the docs channel (/opt/incomex/docs/mcp-writes), which is not runtime registration and must not masquerade as one.
  3. Inventing a new birth path is explicitly forbidden by the macro.

Therefore P1 produces a reuse-first plan (reuse the 5 registrar/ensure DOTs as-is; add ~2 C1 DOTs via Path A at operator deploy time) but no runtime admission. No orphan DOT was created (file 12). ⇒ The lawful next action is operator-run registration (file 14).

Back to Knowledge Hub knowledge/dev/laws-new/reports/governed-dot-c1-dryrun-p0-p6/03-p1-dot-spec-admission-and-reuse-first-proof-2026-06-22.md