KB-6D15

FIX7 N-Number Envelope Conformance Probe

2 min read Revision 1
tool-kiem-thufix7codexn6tkt-v022026-06-11

#!/usr/bin/env python3

Executable closure proof for CODEX-NNODE-ACTIVE-CONFLICT: the live N7 envelope

must NOT label membership as N1, and the canonical checker must agree.

import sys import n_node_checker as C env = open("n7_envelope.md", encoding="utf-8").read() res = [] def chk(name, ok): res.append((name, ok))

1. stale binding label absent

chk("envelope no longer labels 'membership_sha256 (N1)'", "membership_sha256 (N1)" not in env)

2. membership now annotated un-numbered

chk("envelope annotates membership as un-numbered", "membership_sha256 (membership — un-numbered)" in env)

3. canonical checker: membership is canonical when named 'membership' (un-numbered)

try: chk("checker accepts membership named 'membership'", C.assert_node("membership", "active_corpus_membership_sha256", "active_corpus_membership_sha256", True) == "membership") except C.NodeReject: chk("checker accepts membership named 'membership'", False)

4. checker REJECTS labeling membership digest as N1 outside alias context (R1/R4)

ok, rule = C._expect_reject("R4_VALUE_WRONG_NODE", lambda: C.assert_node("N1", claimed_value="active_corpus_membership_sha256")) chk("checker rejects membership-value-under-N1 (R4)", ok)

5. checker canonical: N1 is per-doc normalized content (NOT membership)

chk("checker canonical N1 = normalized_active_content_sha256[d]", C.CANONICAL["N1"]["name"] == "normalized_active_content_sha256[d]")

6. N2..N6 envelope labels still canonical

for n,lab in [("N2","canonicalizer_sha256 (N2)"),("N3","marker_fence_registry_sha256 (N3)"), ("N6","active_corpus_sha256 (N6)")]: chk(f"envelope label {lab} canonical", lab in env) npass = sum(1 for _,o in res if o) for n,o in res: print(f" [{'PASS' if o else 'FAIL'}] {n}") print(f"ENVELOPE-CONFORMANCE: {npass}/{len(res)} PASS") sys.exit(0 if all(o for _,o in res) else 1)