dot-iu-cutter v0.5 — Constitution source_document Seed: Operations-First Framing ("Cắt Hiến pháp")
dot-iu-cutter v0.5 — Constitution source_document Seed: Operations-First Framing
Phase:
v0_5_constitution_source_document_seed_authoring· Nature:authoring_only__no_execution· Date: 2026-05-18design_order: operations_first (per current-operating-objectives-and-principles 2026-05-18 §3) dml_executed: 0 ; dry_run: none ; cut: none ; verify: none decision_authority: GPT / User ONLY ; self_advance: PROHIBITED
This is doc 1 of 5. It states the operator workflow and exception model first; schema/checksum/DML detail is derived in the companion docs, not led with.
1. The operational goal this seed serves
The long-term target (operating-objectives §1, §4) is that a user issues one small command:
Cắt Hiến pháp
and the system runs MARK → REVIEW → CUT → VERIFY → STORE → REPORT with controlled gates, exception-only human attention, and a concise PASS/FAIL/BLOCKED report.
For Cắt Hiến pháp to be unambiguous, the system must be able to answer, with zero human guesswork, six questions. This seed package is the row of data that lets the system answer the first five and gate the sixth:
operator_says: "Cắt Hiến pháp"
system_must_resolve_deterministically:
1_which_source: -> source_document_registry row (identity, URL, family)
2_which_version: -> source_document_version_registry row (checksum-pinned)
3_which_grammar: -> via source_family -> grammar_profile (already live)
4_which_scope: -> enacted_only (status_policy live; GPT R2)
5_which_path: -> dry-run -> command-review -> cut -> verify route
6_what_report: -> PASS / FAIL / BLOCKED back to operator
Without a source_document + source_document_version row, Cắt Hiến pháp has no anchor: the system would not know which document, at which content state, the operator means. This package authors that anchor (B5) — but only if the version can be pinned deterministically (B6).
2. What this seed must enable operationally
source_identity_lookup:
operator_phrase "Hiến pháp" -> exactly one source_document_registry row
key: source_document_ref = "incomex-constitution" ; docprefix = "ICX-CONST"
effect: every Constitution IU address is namespaced ICX-CONST/... (no collision
with legacy D38-DIEU28..., nor with internal_incomex_law)
source_version_lookup:
"Cắt Hiến pháp" -> the one authoritative source_document_version row
key: content_checksum-pinned version (the cut is reproducible & auditable)
checksum_drift_detection:
on re-run, system re-fetches + re-normalizes + re-hashes;
if content_checksum != stored -> NEW version row (supersession), NOT silent re-cut
-> living-document drift becomes a visible, gated event, not a hidden corruption
grammar_binding:
source_family internal_incomex_constitution -> grammar_profile
incomex-architecture-constitution-v4 (LIVE, derived; not a column on source_document)
-> the cut uses the ratified level grammar + 4-marker map automatically
enacted_only_scope:
source_family_registry.status_policy = enacted_only (LIVE) + GPT R2
-> only ✅ enacted nodes are cut-eligible on the first dry-run;
📋 controlled-draft Điều 44, 📝 draft, ⛔ obsolete excluded automatically
future_dry_run_package:
with source+version pinned, the first Constitution dry-run package becomes a
mechanical, deterministic build (no further identity decisions needed)
3. What the operator should see
normal_path (no exception):
operator: "Cắt Hiến pháp"
system: resolves source=ICX-CONST, version=<checksum>, grammar=v4,
scope=enacted_only -> runs gated cut -> "PASS: N IU cut, M deferred
(📋/📝/⛔), 0 errors. Report: <KB link>."
human_attention: none unless exception
exception_path:
system surfaces ONLY the exception + a one-line reason + the safe default it took
(e.g. "BLOCKED: source content_checksum drifted since last enacted version —
new version proposed, cut withheld pending review").
technical_detail: always written to KB, never forced on the operator.
4. What should be automated later (NOT now)
later_automated (after this seed + B6 resolved + dry-run proven):
- re-fetch + normalize + checksum on every "Cắt Hiến pháp"
- automatic new-version row on content drift (supersession chain)
- automatic scope filter to enacted_only
- automatic dry-run -> command-review packaging
- concise operator report
NOT automated / still sovereign-gated:
- first creation of the source_document/version rows (this package, gated)
- parser/normalization profile ratification (OD-SR2 — B6)
- promotion of 📋 controlled-draft Điều 44 into scope (GPT R3 defer)
- the cut itself
5. Exceptions that MUST stop the workflow
These are the operator-visible stop conditions the seed + downstream must enforce:
STOP_conditions:
E1 source_not_resolvable:
"Hiến pháp" maps to 0 or >1 source_document rows -> STOP (ambiguous anchor)
E2 version_not_pinnable:
content_checksum cannot be computed deterministically (no ratified parser
profile / Nuxt chrome non-deterministic) -> STOP, do NOT cut on a guessed
version [THIS IS THE CURRENT STATE — B6 BLOCKED; see doc 2/3]
E3 checksum_drift_on_rerun:
re-fetched content_checksum != stored authoritative version -> STOP cut,
propose new version, route to review (living-document discipline)
E4 grammar_unbound:
source_family has no resolvable grammar_profile -> STOP (cannot cut blind)
E5 scope_violation:
a non-✅ node would be cut under enacted_only -> STOP (fail-closed)
E6 authority_insufficient:
source not authority_class=authoritative for the requested node -> STOP
Operationally, E2 is active right now: the version cannot be pinned because the normalization profile for the Nuxt-rendered source is not ratified (B6). The correct operations-first behaviour is therefore to not author executable seed DML that fakes a stable version — it is to stop and surface the blocker. That is exactly what doc 3 does (NO-DML-DRAFT, QG5).
6. Statement
- Operations-first framing precedes all technical detail (QG1). The seed exists to make
Cắt Hiến phápdeterministic on identity, version, grammar, scope, path, report. - No DML, no dry-run, no cut/verify executed. doc 1 of 5; STOP after package → route GPT/User. Self-advance PROHIBITED.
Companion: grounding-and-checksum-plan, seed-DML-draft (NO-DML-DRAFT), rollback-and-verification-plan, authoring-report.