KB-27FF

dot-iu-cutter v0.5 — Constitution Nuxt Parser Reference: Test Result (live source 3/3 → exact canonical 17660443…/17522; variant matrix proves N8 cause)

8 min read Revision 1
dot-iu-cutterv0.5constitution-fixturenuxt-parser-reference-impltest-resultreproduces-canonicalvariant-matrixread-onlyno-executiondieu442026-05-18

dot-iu-cutter v0.5 — Constitution Nuxt Parser Reference: Test Result

Phase: v0_5_constitution_nuxt_parser_reference_implementation_authoring · Nature: read_only_test__no_seed_no_dml_no_dryrun · Date: 2026-05-18 · doc 4 of 5

http_method_used: GET only (read-only) ·3 ; redirects: 0 ; mutation: none
source_mutated: false ; production_mutated: false ; directus_mutated: false
kb_mutated: false (except this authoring package's 5 uploads) ; repo_mutated: false
snapshot_written: false ; dml: none ; dry_run/cut/verify: none ; git_commit: false
scratch: local /tmp (raw HTML, refimpl script, normalized text) deleted after measurement
canonical_checksum_action: NOT updated/changed/invented — REPRODUCED & confirmed
decision_authority: GPT / User ONLY ; self_advance: PROHIBITED

1. Test fixture (live source, read-only)

source_url: https://vps.incomexsaigoncorp.vn/knowledge/dev/laws/constitution
fetches: 3 read-only GET, --max-redirs 0, this session
transport: HTTP 200 ·3 ; Server nginx/1.29.5 ; Content-Type text/html;charset=utf-8 ;
  x-powered-by Nuxt ; cache-control no-cache ; num_redirects 0
raw: 1,215,202 bytes ·3 ; raw_sha256 c1c273f20c6bcfb0740b53d35a2533386ac28a47d52734c0c9571920e6cb0766
  IDENTICAL 3/3 this session (raw stable this session; treated forensic-only regardless)
fixture_capture: no separate fixture file persisted; the live page IS the test
  vector this phase (a frozen fixture is part of the recommended next phase, doc 5)

2. Primary test — reference implementation vs ratified canonical

implementation: nuxt-incomex-portal-constitution-v1.refimpl.r1 (doc 3 §4)
expected (ratified canonical, KB-SSOT from Codex BLOCKED seed exec + drift-triage):
  normalized_content_checksum = 17660443e0f23e994e1807cf8e22920951a9e70c598956dbd0e752f4f5cae80c
  normalized_content_length   = 17522
  marker_counts               = ✅19 📋1 📝1 ⛔1

result (all 3 fetches, scratch script form):
  normalized_content_checksum = 17660443e0f23e994e1807cf8e22920951a9e70c598956dbd0e752f4f5cae80c  ✅ MATCH
  normalized_content_length   = 17522                                                            ✅ MATCH
  marker_counts               = enacted 19 / controlled_draft 1 / draft 1 / obsolete 1           ✅ MATCH
  candidate_A (diagnostic)    = 1cd83c64eb5d321ede42625c44e65f1ca279f0c0d564efd490d0e5d2545d17bf / len 17851
  A_minus_B                   = 329 (span geometry stable; consistent with prior 336/339 band)
  determinism                 = 3/3 IDENTICAL (FAIL_NONDETERMINISM not triggered)

result (KB-embedded doc-3 form, header-comment swapped, nbsp as U+00A0):
  17660443…/17522/19·1·1·1  ·3  ✅ IDENTICAL to scratch form
  -> the embedded reference source in doc 3 is verified to reproduce canonical
VERDICT: PASS — the reference implementation REPRODUCES THE RATIFIED CANONICAL
  CHECKSUM EXACTLY and deterministically against the current live source.
classification (per task §4): NOT source-drift, NOT residual parser-mismatch,
  NOT insufficient-fixture. The canonical identity is live-reproducible NOW.
content_drift_since_canonical: NONE (normalized content byte-identical to L3
  canonical; raw byte differences are forensic Nuxt render noise only).

3. Variant matrix — proves the historical +135 cause (single-step ablation)

Same candidate_B fragment, varying exactly one ambiguous step:

variant only-change vs pinned length sha256(12) markers equals
R1.canonical D-VSPACE = drop all empty lines 17522 17660443e0f2 19·1·1·1 RATIFIED CANONICAL (exact)
V-blank D-VSPACE = keep 1 blank line between blocks 17819 b6ea16722c04 19·1·1·1 (intermediate)
V-nbsp as V-blank, nbsp NOT collapsed 17819 b6ea16722c04 19·1·1·1 identical to V-blank → nbsp is NOT a factor
V-detag only p/br/li/tr/h*→\n, other block tags removed 17657 072983ac6cf4 19·1·1·1 CLAUDE E1 OUTPUT (exact)
V-notag no tag→newline at all 17634 438c77c3e408 19·1·1·1 (control)
interpretation:
  - R1.canonical reproduces 17660443…/17522 -> the ratified canonical N8 reading
    is "collapse blank-line runs to a single \n" == ONE NEWLINE, ZERO blank lines.
  - V-detag reproduces 072983ac…/17657 (the exact Claude E1 / drift-triage output)
    -> Claude's prior prose reconstruction diverged in the detag+blank-line
    handling; the +135 chars are the residual block separators it kept.
  - markers 19·1·1·1 invariant across ALL variants -> never a marker/normative
    issue; V-nbsp == V-blank -> U+00A0 handling is null for this document.
  conclusion: the historical +135 divergence is fully explained by ONE pinned
  decision (D-VSPACE). With D-VSPACE pinned canonical, divergence class removed.

4. Output completeness (required_outputs check)

normalized_content          : produced (candidate_B bytes; 17522 codepoints)
normalized_content_checksum : 17660443…cae80c
normalized_content_length   : 17522
marker_counts               : ✅19 📋1 📝1 ⛔1
extraction_span_diagnostics : raw_bytes 1215202 / raw_sha256 c1c273f2… /
  article_found true / article_inner_rawlen 32190 / candidate_A_length 17851 /
  candidate_B_length 17522 / A_minus_B 329 / span_note ok
parser_version              : nuxt-incomex-portal-constitution-v1.refimpl.r1
all required outputs present (GPT ruling required_outputs satisfied)

5. Sanity excerpt of normalized_content (not the artifact — no snapshot written)

first line : HIẾN PHÁP KIẾN TRÚC HỆ THỐNG INCOMEX — v4.6.3 BAN HÀNH
2nd line   : Văn bản tối cao. Vi phạm Hiến pháp = vi phạm nghiêm trọng nhất.
last line  : HP v4.6.3 BAN HÀNH | 15 NT (NT3 có ngoại lệ) | … | Council liên tục
             + Desktop post-enact NT audit

(Content shown for verification only; the snapshot artifact is NOT created this phase.)

6. No-mutation statement

No source / production / Directus / repo mutation. No snapshot artifact write, no source_document / source_document_version INSERT, no DML, no checksum persisted/updated/invented anywhere, no dry-run, no CUT, no VERIFY, no schema change, no GRANT/REVOKE, no Directus mutation, no deploy/restart, no git commit. Read-only GET ·3 + local /tmp scratch (raw HTML, refimpl script, normalized text) deleted after measurement; no secrets recorded. Only KB mutation: this 5-file authoring package. (QG1/QG5/QG7)

7. Statement

  • Reference implementation tested against the live source read-only 3/3 → reproduces the ratified canonical 17660443…/17522/19·1·1·1 exactly and deterministically; embedded doc-3 form independently verified equal (QG4 satisfied).
  • Canonical checksum reproduced & confirmed, never updated/invented (QG5).
  • Variant matrix localizes the historical +135 to D-VSPACE (QG2 reinforced).
  • doc 4 of 5; STOP after 5 files → route GPT/User. Self-advance PROHIBITED.

Companions: operational-framing, algorithm-analysis, implementation-draft, authoring-report.

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.5-constitution-nuxt-parser-reference-implementation-authoring/dot-iu-cutter-v0.5-constitution-nuxt-parser-reference-test-result-2026-05-18.md