{
  "schema": "kye.implementation_registry.v1",
  "registry_id": "kye:registry:implementation-registry",
  "version": "1.0",
  "adopted": "2026-05-19",
  "constitution_ref": "constitution/40-IMPLEMENTATION-CANONICAL.md",
  "notes": [
    "Seed manifest. Identified concepts from the 2026-05-19 audit prompted by 'we need to be 10000% certain there is only one implementation'. This file grows with every concept clarified — but the registry is itself canonical: any merge that adds a NEW reimplementation of a registered concept fails CI.",
    "2026-05-21 full runtime drift audit: registry extended from 19 to 46 concepts. Triggered by the prior third-party search SaaS→KYE Native Search Engine drift that CI missed because search/directory were unregistered. Competing-systems smells (gateway-worker consolidation, kye-reporting-worker vs kye-reporting-agent-worker, dead private/runtime/search/) are tracked for the runtime-consolidation PR.",
    "2026-05-23 framework-coverage bidirectional mapping: each concept MAY carry an optional `framework_coverage[]` array of requirement_ids (matching private/specs/compliance/<framework>/*.json). Verified by scripts/gates/framework-coverage-bijection.mjs. The companion framework-requirement registry (private/specs/compliance/<framework>/) provides the OUTBOUND map; framework_coverage[] here provides the INBOUND map. Bijection enforced at CI."
  ],
  "concepts": [
    {
      "concept_id": "agent-dev-kit",
      "entity_class": "concept",
      "name": "KYE Agent Dev Kit (TS + Python — agent SDK + lifecycle hooks)",
      "plane": "runtime",
      "constitution_ref": "constitution/32-AGENT-DEV-KIT.md",
      "ssot_module": "private/runtime/agent-dev-kit",
      "ssot_package": "@kye/agent-dev-kit",
      "ssot_entry_point": "lifecycle hooks + evidence helpers",
      "transport_wrappers": [
        {
          "module": "private/runtime/agent-dev-kit-python",
          "transport": "language-port",
          "note": "Python port (kye-agent-dev-kit) — same contract, separate language; parallel SSOT per §32."
        }
      ],
      "competitor_forbidden_patterns": [
        "function makePurposeAdmissibility(",
        "const makePurposeAdmissibility =",
        "class makePurposeAdmissibility "
      ]
    },
    {
      "concept_id": "agent.demo",
      "entity_class": "concept",
      "name": "Demo Agent — SSOT library",
      "plane": "onboarding",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/demo-agent",
      "ssot_package": "@kye/demo-agent",
      "ssot_entry_point": "DemoAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-demo-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the Demo Agent; imports the SSOT via ../../demo-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function CANONICAL_DEMO_SCENARIOS(",
        "const CANONICAL_DEMO_SCENARIOS =",
        "class CANONICAL_DEMO_SCENARIOS "
      ]
    },
    {
      "concept_id": "agent.dsar-evidence",
      "entity_class": "concept",
      "name": "DSAR Evidence Agent — SSOT library",
      "plane": "evidence",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/dsar-evidence-agent",
      "ssot_package": "@kye/dsar-evidence-agent",
      "ssot_entry_point": "DsarEvidenceAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-dsar-evidence-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the DSAR Evidence Agent; imports the SSOT via ../../dsar-evidence-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function assembleEvidenceRows(",
        "const assembleEvidenceRows =",
        "class assembleEvidenceRows "
      ]
    },
    {
      "concept_id": "agent.entitlements",
      "entity_class": "concept",
      "name": "Entitlements Agent — SSOT library",
      "plane": "billing",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/entitlements-agent",
      "ssot_package": "@kye/entitlements-agent",
      "ssot_entry_point": "EntitlementsAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-entitlements-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the Entitlements Agent; imports the SSOT via ../../entitlements-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function EntitlementsAgent(",
        "const EntitlementsAgent =",
        "class EntitlementsAgent "
      ]
    },
    {
      "concept_id": "agent.ops",
      "entity_class": "concept",
      "name": "Ops Agent — SSOT library",
      "plane": "runtime",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/ops-agent",
      "ssot_package": "@kye/ops-agent",
      "ssot_entry_point": "OpsAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-ops-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the Ops Agent; imports the SSOT via ../../ops-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function disabledCapabilityIds(",
        "const disabledCapabilityIds =",
        "class disabledCapabilityIds "
      ]
    },
    {
      "concept_id": "agent.silent-compromise",
      "entity_class": "concept",
      "name": "Silent Compromise Agent — SSOT library",
      "plane": "governance",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/silent-compromise-agent",
      "ssot_package": "@kye/silent-compromise-agent",
      "ssot_entry_point": "SilentCompromiseAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-silent-compromise-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the Silent Compromise Agent; imports the SSOT via ../../silent-compromise-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function SilentCompromiseAgent(",
        "const SilentCompromiseAgent =",
        "class SilentCompromiseAgent "
      ]
    },
    {
      "concept_id": "agent.sku-lifecycle",
      "entity_class": "concept",
      "name": "SKU Lifecycle Agent — SSOT library",
      "plane": "billing",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/sku-lifecycle-agent",
      "ssot_package": "@kye/sku-lifecycle-agent",
      "ssot_entry_point": "SkuLifecycleAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-sku-lifecycle-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the SKU Lifecycle Agent; imports the SSOT via ../../sku-lifecycle-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function SkuLifecycleAgent(",
        "const SkuLifecycleAgent =",
        "class SkuLifecycleAgent "
      ]
    },
    {
      "concept_id": "agent.trainer",
      "entity_class": "concept",
      "name": "Trainer Agent — SSOT library",
      "plane": "runtime",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/trainer-agent",
      "ssot_package": "@kye/trainer-agent",
      "ssot_entry_point": "TrainerAgent",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-trainer-agent",
          "transport": "http",
          "note": "CF Worker — agent_manifest runtime_path for the Trainer Agent; imports the SSOT via ../../trainer-agent/src/index.js."
        }
      ],
      "competitor_forbidden_patterns": [
        "function TrainerAgent(",
        "const TrainerAgent =",
        "class TrainerAgent "
      ]
    },
    {
      "concept_id": "analytics.clickhouse-client",
      "entity_class": "concept",
      "name": "Analytics Plane HTTP client for ClickHouse (Worker-compatible)",
      "plane": "runtime",
      "constitution_ref": "constitution/20-ANALYTICS-PLANE.md",
      "ssot_module": "private/runtime/clickhouse-client",
      "ssot_package": "@kye/clickhouse-client",
      "ssot_entry_point": "tenant-token-scoped ClickHouse HTTP client (tables / projections / queries / audit-emit)",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function assertTemplateIsTenantSafe(",
        "const assertTemplateIsTenantSafe =",
        "class assertTemplateIsTenantSafe "
      ]
    },
    {
      "concept_id": "audit.chain.append",
      "entity_class": "concept",
      "name": "Audit chain append + the chain id it appends to (§0.3 evidence emission)",
      "plane": "audit",
      "constitution_ref": "constitution/21-DELEGATED-AUDITABILITY.md",
      "ssot_module": "private/runtime/audit-chain",
      "ssot_package": null,
      "ssot_entry_point": "appendEvent(envelope) · workerChainEmitter(baseUrl) · tenantChainId(tenant_id) / platformChainId(component)",
      "transport_wrappers": [
        {
          "module": "private/runtime/audit-chain-worker",
          "transport": "http",
          "note": "HTTP surface; receives the append from every privileged Worker. It is the RECEIVER, so it legitimately owns CHAIN_ID_RE and the /v1/chains/:chain_id/{append,verify} route patterns — a validator has to spell out what it validates. Declared so the enforcer does not accuse the one module whose job is to hold the shape."
        },
        {
          "module": "private/lib/chain-id",
          "transport": "library",
          "note": "The tenant→chain-id derivation. private/lib/chain-id is the SSOT (plain JS so BOTH the TypeScript emitter can import it and the public plane can receive it by byte-projection across §33); the public/site/functions copy is that projection, verified byte-for-byte by this gate."
        },
        {
          "module": "public/site/functions/api/_lib/chain-id.js",
          "transport": "projection",
          "note": "Byte-projection of private/lib/chain-id for the Pages Functions, which cannot import a private/ module across §33. Three of them wrote `kye:audit-chain:${tenantId}` inline with no strip — accepted by the receiver, but a DIFFERENT chain from the stripped form, so a tenant's audit history split in two."
        }
      ],
      "competitor_forbidden_patterns": [
        "function InProcessAuditEmitter(",
        "const InProcessAuditEmitter =",
        "class InProcessAuditEmitter ",
        "`kye:audit-chain:${",
        "function canonicalEmit(",
        "function chainIdForTenant("
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__audit_chain_append",
      "migration": {
        "status": "complete",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__audit_chain_append"
      },
      "projection_anchor": {
        "begin": "// >>> canonical chain-id — generated from private/lib/chain-id/index.js; do not edit",
        "end": "// <<< canonical chain-id",
        "anchor_bearers": [
          {
            "path": "scripts/lib/projection-specs.mjs",
            "role": "definition",
            "reason": "Declares the anchor strings as data for both the generator and the verifier, so it necessarily contains every token. It was split out of the generator in 2026-08-14 precisely because importing a SCRIPT for its data executed its write — the verifier repaired the drift it existed to detect, then passed."
          }
        ]
      }
    },
    {
      "concept_id": "audit.replay-run",
      "entity_class": "concept",
      "name": "Audit replay orchestration (re-derive evidence packs on a cadence + emit drift)",
      "plane": "audit",
      "constitution_ref": "constitution/21-DELEGATED-AUDITABILITY.md",
      "ssot_module": "private/runtime/audit-replay-orchestrator",
      "ssot_package": null,
      "ssot_entry_point": "scheduled() — worker.js",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function AuditReplayOrchestrator(",
        "const AuditReplayOrchestrator =",
        "class AuditReplayOrchestrator "
      ]
    },
    {
      "concept_id": "audit.self-audit-daemon",
      "entity_class": "concept",
      "name": "Self-Audit Daemon — live self-governance library",
      "plane": "audit",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "private/runtime/self-audit-daemon/src",
      "ssot_package": null,
      "ssot_entry_point": "worker.js (scheduled + fetch)",
      "note": "The ONE implementation of §0.3 self-governance proven on production/live: the governed-inventory lane (governed-inventory.js), the patent-safe live bundle built and Ed25519-signed with the production key (live-bundle.js), the GitHub Actions OIDC door that admits a workflow run of this repository to start a cycle (github-oidc.js), and the cycle itself, which records its outcome as public evidence beside the bundle (worker.js). Judged 2026-09-25 when github-oidc.js became the third shared module of this directory: live-bundle.js and governed-inventory.js sat in unregistered_backlog[] since 2026-09-10 as measurements not yet judged — this row is that judgement, and their backlog entries are removed with it. A second verifier of GitHub's OIDC, a second live-bundle signer or a second governed-inventory walker anywhere in the estate is a competing implementation of this concept.",
      "competitor_forbidden_patterns": [
        "function verifyGithubActionsToken(",
        "function buildAndSignLiveBundle(",
        "function runGovernedInventory(",
        "function publishLiveBundle("
      ]
    },
    {
      "concept_id": "authority.grant",
      "entity_class": "concept",
      "name": "Authority Engine (issue/revoke/validate Authority Grants + delegation walk)",
      "plane": "decision",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/authority-engine",
      "ssot_package": "@kye/authority-engine",
      "ssot_entry_point": "grant / revoke / validate + cascade",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function verifyGrantViaCustody(",
        "const verifyGrantViaCustody =",
        "class verifyGrantViaCustody "
      ]
    },
    {
      "concept_id": "authority.proof-bundle.assemble",
      "entity_class": "concept",
      "name": "Authority Proof Bundle assembler",
      "plane": "evidence",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/authority-proof-bundle",
      "ssot_package": null,
      "ssot_entry_point": "assembleBundle(...)",
      "transport_wrappers": [
        {
          "module": "private/runtime/authority-proof-bundle-worker",
          "transport": "http",
          "note": "HTTP surface that wraps the assembler"
        }
      ],
      "competitor_forbidden_patterns": [
        "function assembleBundle(",
        "const assembleBundle =",
        "class assembleBundle "
      ]
    },
    {
      "concept_id": "billing.metering",
      "entity_class": "concept",
      "name": "Stripe billing/metering client (BPS calc + meter batcher + webhook verify)",
      "plane": "billing",
      "constitution_ref": "constitution/23-BILLING-METERING.md",
      "ssot_module": "private/runtime/stripe-client",
      "ssot_package": "@kye/stripe-client",
      "ssot_entry_point": "typed Stripe wrapper + meter batcher",
      "transport_wrappers": [
        {
          "module": "private/runtime/stripe-meter",
          "transport": "cron",
          "note": "Hourly Stripe meter Worker (§23)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function BPS_APPLICABLE_ACTION_CLASSES(",
        "const BPS_APPLICABLE_ACTION_CLASSES =",
        "class BPS_APPLICABLE_ACTION_CLASSES "
      ]
    },
    {
      "concept_id": "chain.input_fingerprint",
      "entity_class": "concept",
      "name": "Which tree did the gate chain actually pass on? (the falsifiable already-ran proof)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/chain-input-fingerprint.mjs",
      "ssot_package": null,
      "ssot_entry_point": "inputFingerprint() · scopedFingerprint(paths) · inputsClean() · freshness() · isChainOutput(path) · CHAIN_OUTPUT_PATHSPEC / CHAIN_OUTPUT_ROOTS",
      "transport_wrappers": [],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-10 by the same tree-side inverse that found git-env. Nine distinct importers — run-gates records the fingerprint, .githooks/pre-push verifies it, and build-derived-all, fresh-all, merge-authority, devplane-pep, canonical-first, ip-oss-line, scoped-chain and prove-read-backs all resolve CHAIN_OUTPUT_PATHSPEC through it. That pathspec is the estate's ONE declaration of which paths are the chain's own outputs rather than its inputs, which is why a second copy would be silently catastrophic: a hand-rolled exclusion list that disagrees by one path makes a green chain unprovable or, worse, provable on a tree that moved. HONEST LIMIT: the fingerprint covers the TRACKED tree minus the chain's own outputs, via git ls-files -s, so it moves on content/mode/rename/add/delete of an input and does NOT see unstaged working-tree edits — which is why inputsClean() exists beside it and the skip requires both."
      },
      "competitor_forbidden_patterns": [
        "function inputFingerprint(",
        "const inputFingerprint =",
        "function isChainOutput(",
        "const isChainOutput =",
        ":(exclude)_diagnostics"
      ]
    },
    {
      "concept_id": "ci.privileged_op_evidence",
      "entity_class": "concept",
      "name": "Emit the §0.3 evidence family for a privileged CI action",
      "plane": "evidence",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/ci/govern-privileged-op.mjs",
      "ssot_package": null,
      "ssot_entry_point": "node scripts/ci/govern-privileged-op.mjs (env: GOP_CAPABILITY, GOP_PURPOSE, GOP_ALLOWED_EVENTS)",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function emitEvidencePack(",
        "const emitEvidencePack ="
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__ci_privileged_op_evidence",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15. Invoked BOTH via the .github/actions/govern-op composite AND directly by workflows such as deploy-cloudflare-pages.yml. An agent grepping only the composite name reported KYE's public landing deploy as ungoverned — a false finding caused by matching the wrapper instead of the mechanism."
      }
    },
    {
      "concept_id": "ci.workflow_privileged_classification",
      "entity_class": "concept",
      "name": "Is a CI workflow privileged, and at what tier?",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/workflow-classification.mjs",
      "ssot_package": null,
      "ssot_entry_point": "classifyWorkflow({ slug, text, triggers }) -> { kind, risk_tier, privileged_ops, classification_basis }",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function classifyWorkflow(",
        "const classifyWorkflow ="
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__ci_workflow_privileged_classification",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15 after an agent hand-rolled a secrets+mutation grep as a THIRD copy of this question. The module's own header already warned: workflow-governance-coverage asks 'is this privileged, and is it governed?' and build-workflow-registry asks 'is this privileged, so what tier?' — same question, one answer. Its HONEST LIMIT is load-bearing: 'mutating' means the canonical privileged-op set, and widening that set is a §0.3 amendment, not a tweak. A grep that widens it silently produces false gaps."
      }
    },
    {
      "concept_id": "ckan.connector",
      "entity_class": "concept",
      "name": "CKAN Connector (read-only CKAN Action API client → canonical KYE entities)",
      "plane": "connector",
      "constitution_ref": "constitution/28-CKAN-OPEN-DATA.md",
      "ssot_module": "private/runtime/ckan-connector",
      "ssot_package": "@kye/ckan-connector",
      "ssot_entry_point": "pull portal/datasets/activity → map to KYE entities",
      "transport_wrappers": [
        {
          "module": "private/runtime/ckan-connector-worker",
          "transport": "cron",
          "note": "Cron-triggered harvester Worker"
        }
      ],
      "competitor_forbidden_patterns": [
        "function mapPortalStatus(",
        "const mapPortalStatus =",
        "class mapPortalStatus "
      ]
    },
    {
      "concept_id": "commerce.sku_boot",
      "entity_class": "concept",
      "name": "The declared SKU set, and booting one SKU from the canonical manifest — what counts as a SKU that exists",
      "plane": "commerce",
      "constitution_ref": "constitution/26-COMMERCIAL.md",
      "ssot_module": "scripts/lib/sku-families.mjs",
      "ssot_package": null,
      "ssot_entry_point": "skuFamiliesOf(schema) · skuRowsOf(manifest, families) · undeclaredSkuArrays(manifest, families) · assertKeyedByFamily(map, families, label) — loaded from disk by the node wrapper as skuFamilies() · allSkus() · allSkuIds() · intakeSkuIds(surface) · bootSku(skuId) · isSkuCallable(skuId) · skuLifecycleEvent(skuId)",
      "transport_wrappers": [
        {
          "module": "scripts/lib/sku-eval.mjs",
          "transport": "import",
          "must_import": "./sku-families.mjs",
          "note": "Reads the manifest and its contract from disk through canonical-paths and delegates every decision to the pure SSOT; scripts, gates and the reconciler import this. The bundled commercial-lifecycle worker imports the SSOT directly, because a Worker cannot read files."
        }
      ],
      "note": "DECLARED 2026-10-01 because a second consumer arrived, not because a second implementation did. The module has existed as the boot of kye:registry:skus (private/specs/skus/sku_manifest.json) for the executable-coverage gate; apply-cta-sku-canonical became the second importer when it was rewritten to resolve every ?sku= deep link against the declared set instead of merely testing that a parameter is present, and implementation-canonical correctly refused the commit until the shared implementation had a concept row (§0.9 — an artefact referenced from more than one file belongs to a canonical registry). The SSOT is the one place that knows the eight declared families (pilot_skus · annual_skus · sector_packs · assurance_addons · edge_addons · developer_skus · engagement_skus · consultant_skus) sum to the declared SKU set; a consumer asks for the set and never re-types the family list. MIGRATED THE SAME DAY. The family set is no longer known here either: it is DECLARED once, in the manifest's contract (kye.commercial.sku_manifest.v1 — an array property whose items reference #/$defs/sku_row is a family), and read through scripts/lib/sku-families.mjs — the pure SSOT since that day (no I/O, no Node imports), imported by the bundled commercial-lifecycle worker directly and by everything else through scripts/lib/sku-eval.mjs, its node loader. All twelve inline copies now ask this module (skuFamilies() · allSkus() · allSkuIds()), and three of them had lost engagement_skus: the canonical graph (so the published SKU count read 161 of 300), the sku-manifest-alive reconciler, and the worker's SKU lookup, which resolved no entitlement for any of the 139 §49 tiers. Maps keyed by family (cost ratios, disclosure owners, offering owner rails) are asserted to cover exactly the declared families. The inline enumeration is therefore now a forbidden pattern too: with zero copies left there is nothing to hold, and a thirteenth fails at once. sku-manifest-canonical verifies the declaration from the other end — SKU rows outside a declared family are refused. THE PATTERN SET FOUND A REAL COMPETITOR ON ITS FIRST RUN, which is why it is declared rather than exempted: scripts/gates/sku-owner-canonical.mjs built its own `const allSkuIds = new Set()` by walking EVERY array in the manifest (Object.values) instead of its eight declared families — so it would have silently absorbed any future array that is not a SKU family, and it carried no family classification. Measured before changing it: both forms yield the same 300 ids on this tree, so importing the SSOT was behaviour-preserving (the gate reports the same 300 SKUs, 7 owner rails, 0 unowned, 0 dangling product refs), and it is now correct for the manifest it will meet tomorrow. The patterns forbid a second DEFINITION of the SSOT exports, which is the established style on this registry (compare chain.input_fingerprint), and — since the migration above — a typed family enumeration in any of its three written forms. SIX MORE COPIES FOUND BY THE NEW PATTERNS on their first run: four gates (ai-adoption-navigator-canonical, governed-knowledge-assistant-canonical, product-canonical, product-fanout-canonical) built `const allSkus` by walking EVERY array of the manifest — the shape sku-owner-canonical had — and one of them walked it a second time with Object.values(...).flat() to find a row. All five read through the SSOT now.",
      "competitor_forbidden_patterns": [
        "function allSkuIds(",
        "const allSkuIds =",
        "function bootSku(",
        "const bootSku =",
        "function isSkuCallable(",
        "const isSkuCallable =",
        "function skuLifecycleEvent(",
        "const skuLifecycleEvent =",
        "function skuFamilies(",
        "const skuFamilies =",
        "function allSkus(",
        "const allSkus =",
        "function intakeSkuIds(",
        "const intakeSkuIds =",
        "\"pilot_skus\", \"annual_skus\"",
        "'pilot_skus', 'annual_skus'",
        ".pilot_skus, "
      ]
    },
    {
      "concept_id": "commercial.lifecycle",
      "entity_class": "concept",
      "name": "Commercial Lifecycle Agent (16-state commercial workflow machine)",
      "plane": "billing",
      "constitution_ref": "constitution/27-COMMERCIAL-LIFECYCLE.md",
      "ssot_module": "private/runtime/commercial-lifecycle-agent",
      "ssot_package": "@kye/commercial-lifecycle-agent",
      "ssot_entry_point": "lifecycle-machine.json runner",
      "transport_wrappers": [
        {
          "module": "private/runtime/commercial-lifecycle-worker",
          "transport": "queue",
          "note": "KYE_LIFECYCLE_QUEUE consumer Worker"
        }
      ],
      "competitor_forbidden_patterns": [
        "function CommercialLifecycleRunner(",
        "const CommercialLifecycleRunner =",
        "class CommercialLifecycleRunner "
      ]
    },
    {
      "concept_id": "comms.delivery.email",
      "entity_class": "concept",
      "name": "Email delivery primitive (CF Email Sending binding)",
      "plane": "comms",
      "constitution_ref": "constitution/38-COMMS-RAIL.md",
      "ssot_module": "private/runtime/mail-sender",
      "ssot_package": null,
      "ssot_entry_point": "POST /send",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-comms-engine-worker",
          "transport": "service-binding",
          "note": "Comms Engine routes compiled templates through mail-sender via the MAIL_SENDER service binding"
        }
      ],
      "competitor_scan_exemption": {
        "reason": "Delivery is a deployed worker reached over a transport; a competing sender is a second deployed surface, which the delivery gate reconciles and a symbol pattern cannot.",
        "enforced_by": "email-delivery-canonical"
      }
    },
    {
      "concept_id": "comms.dispatch",
      "entity_class": "concept",
      "name": "Outbound communications dispatch",
      "plane": "comms",
      "constitution_ref": "constitution/38-COMMS-RAIL.md",
      "ssot_module": "private/runtime/kye-comms-engine-worker",
      "ssot_package": null,
      "ssot_entry_point": "POST /v1/comms/dispatch",
      "transport_wrappers": [
        {
          "module": "public/site/functions/api/_lib/comms-dispatch.js",
          "transport": "http-client",
          "note": "Pages Functions client (kye-protocol Pages project)"
        },
        {
          "module": "public/admin/functions/api/_lib/comms-dispatch.js",
          "transport": "http-client",
          "note": "Pages Functions client (kye-admin Pages project)"
        },
        {
          "module": "public/status/functions/api/_lib/comms-dispatch.js",
          "transport": "http-client",
          "note": "Pages Functions client (status Pages project)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function compileTemplate(",
        "const compileTemplate =",
        "class compileTemplate "
      ]
    },
    {
      "concept_id": "comms.email-templates",
      "entity_class": "concept",
      "name": "Outbound email template manifest",
      "plane": "comms",
      "constitution_ref": "constitution/38-COMMS-RAIL.md",
      "ssot_module": "private/specs/comms",
      "ssot_package": null,
      "ssot_entry_point": "manifest.json + blocks.json + links.json + providers.json",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "Templates are data files under private/specs/comms; a duplicate is a second template record, not a second exported function.",
        "enforced_by": "comms-manifest-alive"
      }
    },
    {
      "concept_id": "conformance.run",
      "entity_class": "concept",
      "name": "Conformance Runner (Conformance Pack execution against tenant stacks)",
      "plane": "governance",
      "constitution_ref": "constitution/15-MCP-AND-SDK.md",
      "ssot_module": "private/runtime/conformance-runner",
      "ssot_package": "@kye/conformance-runner",
      "ssot_entry_point": "consumeBatch + processMessage",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-conformance-runner",
          "transport": "queue",
          "note": "Worker shell — wires consumeBatch to the kye-conformance queue"
        },
        {
          "module": "private/runtime/kye-conformance-scheduler-worker",
          "transport": "cron",
          "note": "Periodic re-run scheduler"
        }
      ],
      "competitor_forbidden_patterns": [
        "function canonicalComposite(",
        "const canonicalComposite =",
        "class canonicalComposite "
      ]
    },
    {
      "concept_id": "connector.onboarding-agent",
      "entity_class": "concept",
      "name": "Connector Onboarding Agent",
      "plane": "onboarding",
      "constitution_ref": "constitution/22-ONBOARDING.md",
      "ssot_module": "private/runtime/connector-onboarding-agent",
      "ssot_package": null,
      "ssot_entry_point": "runDiscovery(...)",
      "transport_wrappers": [
        {
          "module": "private/runtime/connector-onboarding-agent-worker",
          "transport": "http",
          "note": "CF Worker HTTP surface"
        }
      ],
      "competitor_forbidden_patterns": [
        "function InMemoryConnectorWorkflowStore(",
        "const InMemoryConnectorWorkflowStore =",
        "class InMemoryConnectorWorkflowStore "
      ]
    },
    {
      "concept_id": "constitution.read",
      "entity_class": "concept",
      "name": "Constitution + manifests + gates → structured snapshot (the Constitution Engine)",
      "plane": "governance",
      "constitution_ref": "constitution/40-IMPLEMENTATION-CANONICAL.md",
      "ssot_module": "private/runtime/constitution-engine",
      "ssot_package": "@kye/constitution-engine",
      "ssot_entry_point": "snapshotConstitution(repoRoot) + checkCompliance(snapshot)",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-constitution-gateway-worker",
          "transport": "http",
          "must_import": "@kye/constitution-engine",
          "note": "HTTP surface at constitution.kyeprotocol.com — builds the snapshot at deploy time and serves it as JSON"
        }
      ],
      "competitor_forbidden_patterns": [
        "function readImplementationRegistry(",
        "const readImplementationRegistry =",
        "class readImplementationRegistry "
      ]
    },
    {
      "concept_id": "content.page_facet_similarity",
      "entity_class": "concept",
      "name": "Page relatedness in the §50 content graph (facet vocabulary + similarity)",
      "plane": "governance",
      "constitution_ref": "constitution/50-CONTENT-GRAPH-DISCOVERABILITY.md",
      "ssot_module": "scripts/lib/page-facets.mjs",
      "ssot_package": null,
      "ssot_entry_point": "facetSet(discoverability) / facetSimilarity(a, b)",
      "transport_wrappers": [
        {
          "module": "scripts/build-derived-search.mjs",
          "transport": "library",
          "must_import": "./lib/page-facets.mjs",
          "note": "computeRelated() ranks by score then url. It owned the facet-set construction and the Jaccard body until this concept was registered; the RANKING stays here because it legitimately differs per surface."
        },
        {
          "module": "scripts/lib/archetypes.mjs",
          "transport": "library",
          "must_import": "./page-facets.mjs",
          "note": "renderRouter() ranks by similarity, then §50 buyer-journey stage, then title. It did NOT share the search index's relation — it required an audience match AND an exact kye-topic intersection, and §50 §2 declares kye-topic FREE-FORM, so no two pages share one verbatim. Measured: badges.html scored zero routes on all three of its audiences, the router returned null, and the page kept a disclosure where its kind requires a control. The two relations disagreed silently because an empty route list and an undefined relation are indistinguishable at the call site."
        }
      ],
      "competitor_forbidden_patterns": [
        "new Set\\(\\); *for \\(const a of .*\\) .*add\\(`a:",
        "\\.some\\(\\(t\\) => topics\\.has\\(t\\)\\)"
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__content_page_facet_similarity",
      "migration": {
        "status": "complete",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__content_page_facet_similarity"
      }
    },
    {
      "concept_id": "crypto.byok",
      "entity_class": "concept",
      "name": "BYOK envelope encryption (tenant-managed CMK for R2 Evidence Packs + D1 audit logs)",
      "plane": "runtime",
      "constitution_ref": "constitution/30-AUDIT-WORM-RETENTION.md",
      "ssot_module": "private/runtime/byok",
      "ssot_package": "@kye/byok",
      "ssot_entry_point": "RFC 8152 envelope encryption — per-record DEK + customer-KMS-wrapped DEK, re-wrap on KEK rotation",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function InMemoryBYOKConfigStore(",
        "const InMemoryBYOKConfigStore =",
        "class InMemoryBYOKConfigStore "
      ]
    },
    {
      "concept_id": "crypto.primitives",
      "entity_class": "concept",
      "name": "Crypto primitives (COSE_Sign1, JWS detached, Evidence Pack / Decision Map signers)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/crypto",
      "ssot_package": "@kye/crypto",
      "ssot_entry_point": "COSE/JWS signers (Ed25519)",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function verifyDecisionMapWithPublicJwk(",
        "const verifyDecisionMapWithPublicJwk =",
        "class verifyDecisionMapWithPublicJwk "
      ]
    },
    {
      "concept_id": "d1.schema",
      "entity_class": "concept",
      "name": "D1 migration tree (canonical database schema)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/d1",
      "ssot_package": null,
      "ssot_entry_point": "d1/migrations/ — ordered migration files",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "The schema is SQL DDL in a migration tree; a competing copy is a second CREATE TABLE, which is a shape no JavaScript symbol pattern can match.",
        "enforced_by": "d1-schema-apply"
      }
    },
    {
      "concept_id": "d1.migration_apply",
      "entity_class": "concept",
      "name": "Apply the D1 migration tree — one drift-repair declaration + one error grammar, two executors (from-empty gate · live runner)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "scripts/lib/d1-migrations.mjs",
      "ssot_package": null,
      "ssot_entry_point": "driftRepairDeclarations(root) · applyWithDriftRepair({ file, sql, driftRepair, exec }) · stripColumnStatement(sql, col) · columnOfDriftError(text) · classifyMigrationError(text) · IDEMPOTENT_NOISE_RE / TRANSIENT_RE · listMigrationFiles(dir)",
      "transport_wrappers": [
        {
          "module": "scripts/ci/apply-d1-migrations.mjs",
          "transport": "cli",
          "must_import": "../lib/d1-migrations.mjs",
          "note": "The LIVE runner (wrangler d1 execute --remote) behind deploy-cloudflare-pages · deploy-all-surfaces · deploy-workers-fleet. Owns the executor (atomic remote batch + transient retry) and the verdict; the loop and the grammar are imported."
        },
        {
          "module": "scripts/gates/d1-schema-apply.mjs",
          "transport": "library",
          "must_import": "../lib/d1-migrations.mjs",
          "note": "The from-EMPTY replay (node:sqlite). Owns the executor (SAVEPOINT per attempt); the loop and the declaration reader are imported."
        }
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-25 when the two executors were found answering one question — is this apply error the migration saying it already ran? — with two grammars: a DECLARED drift-repair constant in the gate, and ~90 lines of bash inlined verbatim in two deploy workflows with a tolerance regex of their own. Migration 059 (a DROP COLUMN, redundant on any database it already ran on) replayed clean from empty and hard-failed on kye-prod on every deploy after the one that applied it, unseen behind continue-on-error; 064 and 066–071 never reached production. The declaration now lives on the migration's manifest row (drift_repair.reason) and both executors read it here (§0.61)."
      },
      "competitor_forbidden_patterns": [
        "function stripAddColumn(",
        "function stripColumnStatement(",
        "apply_one_migration()",
        "IDEMPOTENT_RE='",
        "function classifyMigrationError("
      ]
    },
    {
      "concept_id": "pricing.review_clock",
      "entity_class": "concept",
      "name": "Where a pricing record stands on its §26 §13(c) review clock — one classifier + one lead window, read by the enforcer and by the governed review door",
      "plane": "commerce",
      "constitution_ref": "constitution/26-COMMERCIAL.md",
      "ssot_module": "scripts/lib/pricing-cadence.mjs",
      "ssot_package": null,
      "ssot_entry_point": "reviewState({ rec, cadenceClasses, schema, now }) · classifyCadence(cadenceClasses, mode, banded) · cadenceClassesOf(dict) · hasInternalBand(rec) · ageDays(lastReviewed, now)",
      "transport_wrappers": [
        {
          "module": "scripts/gates/pricing-canonical-fresh.mjs",
          "transport": "library",
          "must_import": "../lib/pricing-cadence.mjs",
          "note": "The ENFORCER. Owns the totality proof over the disclosure-mode enum, the (d) cadence-limit and due_lead_days validation, and the verdict; the clock position is imported."
        },
        {
          "module": "scripts/govern/pricing-review-pep.mjs",
          "transport": "cli",
          "must_import": "../lib/pricing-cadence.mjs",
          "note": "The governed DOOR (the only writer of review_record). Owns the engine decision and the write; --due / --all-due select records by the same imported clock the gate fails them on, so the door opens inside the lead window rather than after the breach."
        }
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-26 when the gate and the door were found computing one clock two ways: the gate classified by exposure from kye:dictionary:pricing while the door read review_cadence_days off the record with no class, and the door's only bulk verb (--all-expired) opened only after the gate had already failed — every review post-facto by construction (§0.37), main red on an unchanged tree four times in eleven days. The lead window (due_lead_days per class) and the shared computation land together."
      },
      "competitor_forbidden_patterns": [
        "function isExpired(doc, now)",
        "function hasInternalBand(",
        "const classifyCadence = (mode, banded) => cadenceClasses.filter("
      ]
    },
    {
      "concept_id": "declared-source.merge",
      "entity_class": "concept",
      "name": "Merge of a kye.declared_source.v1 sidecar onto the rows a generator derives — the decided half of a derived registry, applied by identity",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/declared-source.mjs",
      "ssot_package": null,
      "ssot_entry_point": "readDeclaredSource(absPath) · declaredRowsByKey(src) · mergeDeclaredRows(rows, src, key)",
      "transport_wrappers": [
        {
          "module": "scripts/build-edge-runtime-manifests.mjs",
          "transport": "library",
          "must_import": "./lib/declared-source.mjs",
          "note": "Six concepts (queues · kv · r2 · secrets · sector-packs · rule-packs); owns declared_only[] handling and the one-row-per-key assertion."
        },
        {
          "module": "scripts/build-workflow-registry.mjs",
          "transport": "library",
          "must_import": "./lib/declared-source.mjs",
          "note": "Workflows; owns the default_owner rule and the unclassified count."
        },
        {
          "module": "scripts/build-deployed-estate.mjs",
          "transport": "library",
          "must_import": "./lib/declared-source.mjs",
          "note": "Deployed estate; merges each off-lifecycle resource's disposition by resource_id (2026-09-29)."
        }
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-29 when a third generator needed the merge: it existed as a private map-and-spread in the edge-runtime and workflow generators, and the estate disposition sidecar would have been the third copy of one concept (§0.49 point-of-use). The three now import one implementation."
      },
      "competitor_forbidden_patterns": [
        "new Map(Object.entries(src.rows || {}))"
      ]
    },
    {
      "concept_id": "data.classify",
      "entity_class": "concept",
      "name": "Data Classification Engine (canonical data classification assign/enforce)",
      "plane": "decision",
      "constitution_ref": "constitution/31-DATA-GOVERNANCE-PACK.md",
      "ssot_module": "private/runtime/data-classification-engine",
      "ssot_package": "@kye/data-classification-engine",
      "ssot_entry_point": "classify(asset|payload)",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-data-classification-agent",
          "transport": "http",
          "note": "HTTP Worker — POST /v1/classifications"
        }
      ],
      "competitor_forbidden_patterns": [
        "function DataClassificationEngine(",
        "const DataClassificationEngine =",
        "class DataClassificationEngine "
      ]
    },
    {
      "concept_id": "decision.pipeline",
      "entity_class": "concept",
      "name": "Decision Engine (authority + purpose + rules pipeline → Decision Map)",
      "plane": "decision",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/decision-engine",
      "ssot_package": "@kye/decision-engine",
      "ssot_entry_point": "deterministic decision pipeline",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function DECISION_ENGINE_GOVERNANCE_EVENT_FAMILY(",
        "const DECISION_ENGINE_GOVERNANCE_EVENT_FAMILY =",
        "class DECISION_ENGINE_GOVERNANCE_EVENT_FAMILY "
      ]
    },
    {
      "concept_id": "derived.freshness_verify",
      "entity_class": "concept",
      "name": "Verify every generator's committed output matches what it would produce",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/ci/fresh-all.mjs",
      "ssot_package": null,
      "ssot_entry_point": "npm run -s test:fresh-all",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "const GENERATORS = ["
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__derived_freshness_verify",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15. It must never maintain a second generator list — that divergence is what let six derived artefacts drift silently. It is also the authority the build-derived-all reverse-check reads: a generator EXCLUDED from the chain whose output fresh-all verifies must say so in its exclusion reason."
      }
    },
    {
      "concept_id": "derived.regeneration",
      "entity_class": "concept",
      "name": "Regenerate the full derived tree to a fixpoint, in dependency order",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/build-derived-all.mjs",
      "ssot_package": null,
      "ssot_entry_point": "node scripts/build-derived-all.mjs [--check]",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "const PHASES = [",
        "const P1 = ["
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__derived_regeneration",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15. Membership and order are DATA in private/specs/propagators/propagator-registry.json; this module is the engine. Both .githooks/pre-commit and .githooks/pre-push invoke it — pre-commit generates and stages, pre-push verifies. Importing it for data EXECUTES it (a full fixpoint run); probe it by spawning, never by import()."
      }
    },
    {
      "concept_id": "diagnostic.engine",
      "entity_class": "concept",
      "name": "Authority Finality Diagnostic — gateway handler",
      "plane": "diagnostic",
      "constitution_ref": "constitution/40-IMPLEMENTATION-CANONICAL.md",
      "ssot_module": "private/runtime/gateway/src/handlers/diagnostic.ts",
      "ssot_package": null,
      "ssot_entry_point": "sealDiagnostic / mapDiagnosticFramework / verifyDiagnostic",
      "endpoints": [
        "POST /v1/diagnostic/seal",
        "POST /v1/diagnostic/framework-map",
        "POST /v1/diagnostic/verify"
      ],
      "transport_wrappers": [
        {
          "module": "private/sdks/typescript/src/client.ts",
          "transport": "http-client",
          "note": "client.sealDiagnostic() / client.mapDiagnosticFramework() / client.verifyDiagnostic()"
        },
        {
          "module": "private/sdks/python/kye_sdk/client.py",
          "transport": "http-client",
          "note": "client.diagnostic_seal() / diagnostic_framework_map() / diagnostic_verify()"
        },
        {
          "module": "private/cli/src/cmds/diagnostic.ts",
          "transport": "cli",
          "note": "kye diagnostic seal | framework-map | verify"
        },
        {
          "module": "public/oss/kye-claude-code-plugin/commands/report.md",
          "transport": "plugin",
          "note": "Claude Code /kye:report wraps the seal endpoint"
        },
        {
          "module": "public/oss/kye-claude-code-plugin/commands/framework-map.md",
          "transport": "plugin",
          "note": "Claude Code /kye:framework-map wraps the framework-map endpoint"
        },
        {
          "module": "public/oss/kye-claude-code-plugin/commands/verify.md",
          "transport": "plugin",
          "note": "Claude Code /kye:verify wraps the verify endpoint"
        },
        {
          "module": "public/oss/kye-mcp-server/src/server.ts",
          "transport": "mcp",
          "note": "MCP tools kye_report / kye_framework_map / kye_verify reach every MCP-aware client (Claude Desktop, Claude Code, Cursor, Windsurf, Cline, Zed)"
        }
      ],
      "note": "Production weighting + canonicalisation + palette MAP + Ed25519 signing live in the proprietary diagnostic-engine reached via KYE_DIAGNOSTIC_ENGINE_URL. Smoke-test fallback in the gateway handler uses the published simple-average reference. Free-tier quota: 3 sealed envelopes / month / actor_email; enforced via D1 033 sealed_reports + actor_email + month JOIN. framework-map reads private/specs/compliance/nist-800-53-rev5-hub.json (canonical) with a fallback to the public mirror at public/site/.well-known/nist-800-53-hub.json; 24-hour in-process cache; no authentication required. verify is an online courtesy lookup against the JWKS at https://kyeprotocol.com/.well-known/jwks.json. Full offline Ed25519 verification of canonical bytes is published in the SDK verifier.",
      "competitor_forbidden_patterns": [
        "function mapDiagnosticFramework(",
        "const mapDiagnosticFramework =",
        "class mapDiagnosticFramework "
      ]
    },
    {
      "concept_id": "directory.index",
      "entity_class": "concept",
      "name": "Directory Engine (entity/authority/evidence index model + federated DirectoryQuery)",
      "plane": "runtime",
      "constitution_ref": "constitution/17-DIRECTORY-SEARCH.md",
      "ssot_module": "private/runtime/directory-engine",
      "ssot_package": "@kye/directory-engine",
      "ssot_entry_point": "IndexClient + DirectoryQuery + AuthoritySearch + EvidenceFinder",
      "transport_wrappers": [],
      "note": "Owns the index/query MODEL; the query SURFACE is search.query (kye-search-engine).",
      "competitor_forbidden_patterns": [
        "function DirectoryQueryBuilder(",
        "const DirectoryQueryBuilder =",
        "class DirectoryQueryBuilder "
      ]
    },
    {
      "concept_id": "durable-objects.classes",
      "entity_class": "concept",
      "name": "Durable Object class set (rate limiter, audit batcher, drift counter, replay cursor, dual-control broker)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/durable-objects",
      "ssot_package": "@kye/durable-objects",
      "ssot_entry_point": "canonical Durable Object classes",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function DualControlBroker(",
        "const DualControlBroker =",
        "class DualControlBroker "
      ]
    },
    {
      "concept_id": "edge.wrangler_config_predicate",
      "entity_class": "concept",
      "name": "Is this filename a wrangler config (any shape the repo uses)?",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "scripts/gates/_lib.mjs",
      "ssot_package": null,
      "ssot_entry_point": "isWranglerConfig(name) / WRANGLER_CONFIG_RE",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "name === \"wrangler.toml\"",
        "=== 'wrangler.toml'",
        "endsWith(\"wrangler.toml\")"
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__edge_wrangler_config_predicate",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15. The literal `name === \"wrangler.toml\"` was re-typed in 18 scripts, which made cf-resource-governance-coverage blind to per-region and prefixed configs while reporting the fleet clean. The canonical existed from 2026-08-11 and one consumer had adopted it; an agent then nearly defined a SECOND copy inside the same file that already exported it."
      }
    },
    {
      "concept_id": "email-action.token",
      "entity_class": "concept",
      "name": "Email-action one-click HMAC token",
      "plane": "auth",
      "constitution_ref": "constitution/27-COMMERCIAL-LIFECYCLE.md",
      "ssot_module": "public/site/functions/api/_lib/email-action-token.js",
      "ssot_package": null,
      "ssot_entry_point": "mintEmailActionToken / verifyEmailActionToken",
      "transport_wrappers": [
        {
          "module": "public/site/functions/api/_lib/admin-action-buttons.js",
          "transport": "render",
          "note": "Canonical button-renderer used by every actionable admin notification (pilot, consultant, expert-review, key-rotation, etc.). Mints via the SSOT lib."
        },
        {
          "module": "public/admin/functions/email-action.js",
          "transport": "dispatcher",
          "note": "Single canonical /email-action endpoint on admin.kyeprotocol.com. Verifies via the SSOT, enforces single-use via email_action_token_used, applies expert-review inline; queues every other domain to the per-domain consumer."
        }
      ],
      "secret_keys": [
        "KYE_EMAIL_ACTION_SECRET_CURRENT",
        "KYE_EMAIL_ACTION_SECRET_PREVIOUS"
      ],
      "removed_competitors": [
        "public/site/functions/api/_lib/expert-action-token.js (deleted 2026-05-23 — parallel HMAC lib with separate EXPERT_ACTION_SECRET)",
        "public/admin/functions/api/v1/expert-reviews/[id]/email-action.js (deleted 2026-05-23 — per-domain dispatcher)"
      ],
      "competitor_forbidden_patterns": [
        "function verifyEmailActionToken(",
        "const verifyEmailActionToken =",
        "class verifyEmailActionToken "
      ]
    },
    {
      "concept_id": "entity.resolve",
      "entity_class": "concept",
      "name": "Entity Engine (entity registry + KYEID parse/format/generate + faceted lookup)",
      "plane": "identity",
      "constitution_ref": "constitution/01-NAMING.md",
      "ssot_module": "private/runtime/entity-engine",
      "ssot_package": "@kye/entity-engine",
      "ssot_entry_point": "KYEID parse/format + entity registry",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function EntityRegistryError(",
        "const EntityRegistryError =",
        "class EntityRegistryError "
      ]
    },
    {
      "concept_id": "entity.state",
      "entity_class": "concept",
      "name": "State Engine (six-dimension entity state vector + transitions)",
      "plane": "runtime",
      "constitution_ref": "constitution/18-OPERATING-MODEL.md",
      "ssot_module": "private/runtime/state-engine",
      "ssot_package": "@kye/state-engine",
      "ssot_entry_point": "state vector + deterministic transitions + invariant validation",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function StateEngine(",
        "const StateEngine =",
        "class StateEngine "
      ]
    },
    {
      "concept_id": "estate.resolve",
      "entity_class": "concept",
      "name": "Declared Estate Resolver (which Cloudflare account and zones KYE is authorised to touch)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md#0.28",
      "ssot_module": "scripts/lib/cf-estate.mjs",
      "ssot_entry_point": "declaredAccount / assertAccount / declaredZone / declaredZones / accountIsShared",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "process.env.CLOUDFLARE_ACCOUNT_ID",
        "process.env.CF_ACCOUNT_ID",
        "process.env.CLOUDFLARE_ZONE_ID",
        "process.env.CF_ZONE_ID"
      ]
    },
    {
      "concept_id": "evidence-import.bridge",
      "entity_class": "concept",
      "name": "Universal evidence importer — connectors → sealed evidence",
      "plane": "evidence",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/kye-evidence-import-worker",
      "ssot_package": null,
      "ssot_entry_point": "POST /v1/evidence-import",
      "transport_wrappers": [
        {
          "module": "public/app/functions/api/v1/evidence-import.js",
          "transport": "pages-function",
          "note": "kye-app Pages Function that fronts the worker for the customer dashboard's connectors page; auth via tenant session, forwards to the worker with IMPORT_WORKER_BEARER."
        },
        {
          "module": "public/widgets/evidence-import/v1",
          "transport": "embed-widget",
          "note": "Embeddable evidence-import widget (post-message conformant)."
        }
      ],
      "note": "Transport bridge — the worker hosts the canonical /v1/evidence-import HTTP surface that connector adapters and the embed widget post raw evidence batches to; the worker normalises and forwards to the canonical sealing pipeline. Not a stateful engine; no SSOT library because the canonical sealing logic lives downstream in the evidence-pack-assembler.",
      "competitor_forbidden_patterns": [
        "function buildImportBatch(",
        "const buildImportBatch =",
        "class buildImportBatch "
      ]
    },
    {
      "concept_id": "evidence.chain",
      "entity_class": "concept",
      "name": "Evidence Engine (Decision Map builder + Evidence Pack assembler core)",
      "plane": "evidence",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/evidence-engine",
      "ssot_package": "@kye/evidence-engine",
      "ssot_entry_point": "Decision Map builder + Evidence Pack assembler",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function assembleEvidencePackViaCustody(",
        "const assembleEvidencePackViaCustody =",
        "class assembleEvidencePackViaCustody "
      ]
    },
    {
      "concept_id": "evidence.pack.assemble",
      "entity_class": "concept",
      "name": "Evidence Pack assembler",
      "plane": "evidence",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/evidence-pack-assembler",
      "ssot_package": null,
      "ssot_entry_point": "assemblePack(decisionId, fragments)",
      "transport_wrappers": [
        {
          "module": "private/runtime/evidence-pack-sealer-periodic",
          "transport": "queue",
          "note": "Periodic sealer triggers assembly on a cron-tolerated cadence per §35"
        }
      ],
      "competitor_forbidden_patterns": [
        "function makeAssembleMessage(",
        "const makeAssembleMessage =",
        "class makeAssembleMessage "
      ]
    },
    {
      "concept_id": "gateway.dispatch",
      "entity_class": "concept",
      "name": "Gateway / PEP middleware",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/gateway",
      "ssot_package": "@kye/gateway",
      "ssot_entry_point": "createGateway(...)",
      "transport_wrappers": [
        {
          "module": "private/runtime/gateway-worker",
          "transport": "http",
          "note": "Legacy CF Worker — being consolidated to kye-gateway-worker"
        },
        {
          "module": "private/runtime/kye-gateway-worker",
          "transport": "http",
          "note": "Canonical CF Worker hosting the gateway library"
        }
      ],
      "competitor_forbidden_patterns": [
        "function decideCapabilityInvocation(",
        "const decideCapabilityInvocation =",
        "class decideCapabilityInvocation "
      ]
    },
    {
      "concept_id": "generator.write-targets",
      "entity_class": "concept",
      "name": "Generator write-target detection (which canonical paths a generator writes)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md#0.49",
      "ssot_module": "scripts/lib/generator-writes.mjs",
      "ssot_entry_point": "writeTargetsIn(text)",
      "transport_wrappers": [
        {
          "module": "scripts/build-cascade-edges.mjs",
          "transport": "import",
          "must_import": "./lib/generator-writes.mjs",
          "note": "Assigns cascade node kind. Previously carried its own matcher that knew writeFileSync + named constants but not the writeJson helper."
        },
        {
          "module": "scripts/gates/generated-not-source.mjs",
          "transport": "import",
          "must_import": "../lib/generator-writes.mjs",
          "note": "Checks the label this builder assigns. Previously carried its own matcher that knew writeJson but could not resolve a named constant."
        }
      ],
      "competitor_forbidden_patterns": [
        "function constPathsFor",
        "const WRITE_IDENT_RE",
        "WRITE_LITERAL_RE"
      ],
      "note": "An x-er/x-or class: 'which paths does a generator write' is a question two consumers ask and MUST NOT answer differently. They did — each had half the matcher — and the gap between the halves was 24 generated artefacts labelled kind=source-of-truth in the cascade graph, the exact set §53 §3.2 could then not protect from a silently-reverted hand-edit. Registered here so a third half-matcher fails the competitor scan instead of quietly becoming the fourth answer."
    },
    {
      "concept_id": "git.out_of_tree_env",
      "entity_class": "concept",
      "name": "What environment does OUT-OF-TREE git work run under? (the hook-injected GIT_* scrub)",
      "plane": "diagnostic",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/git-env.mjs",
      "ssot_package": null,
      "ssot_entry_point": "gitEnvWithoutHookState() -> env without GIT_INDEX_FILE · GIT_DIR · GIT_WORK_TREE · GIT_PREFIX · GIT_COMMON_DIR (the set is exported as HOOK_GIT_VARS)",
      "transport_wrappers": [],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-10, when main's #1619 added the tree-side inverse of this registry (scripts/lib/shared-implementations.mjs) and it correctly reported this module as a shared implementation with no concept row. The module was extracted on 2026-09-09 from a private function inside generator-determinism because prove-read-backs had independently re-made the same mistake — so the extraction was the §0.49 fix and this row is the declaration that should have landed WITH it. The obligation was readable before the edit (§0.9: an artefact referenced from more than one file belongs to a canonical registry); it was not read, and the chain found it afterwards. HONEST LIMIT, and it is load-bearing: this is the SCRUB half only. A command that must read THE CHANGE UNDER REVIEW (git write-tree, git diff HEAD) inherits the hook's index deliberately — scrubbing those would substitute the on-disk index for the one being committed and the verifier would judge a tree nobody asked about. The module's header declares the split; a caller must not re-derive it."
      },
      "competitor_forbidden_patterns": [
        "delete env.GIT_INDEX_FILE",
        "delete e.GIT_INDEX_FILE",
        "GIT_INDEX_FILE: undefined",
        "GIT_WORK_TREE: undefined"
      ]
    },
    {
      "concept_id": "governance-envelope",
      "entity_class": "concept",
      "name": "KYE Governance Envelope (the transport envelope every §0.3 event crosses a boundary in)",
      "plane": "runtime",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "public/app/functions/api/_lib/governance-envelope.js",
      "ssot_package": "(none — a Pages Functions module, imported by relative path)",
      "ssot_entry_point": "governanceEnvelope() — the ONE guarded constructor; envelopeId(); resolveEngagementId(); ENGAGEMENT_ID_PATTERN",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "an inline `{ schema: \"kye.governance_envelope.v1\", … }` object literal at an emit site — the sixteen that existed across six files are what left this class undeclared and unvalidated",
        "a second import of the compiled kye.governance_envelope.v1 validator outside this module — three Workers did exactly that, each hand-rolling its own relative depth, and all three got it wrong"
      ]
    },
    {
      "concept_id": "html.escape",
      "entity_class": "concept",
      "name": "HTML escaper (text + quoted-attribute safe)",
      "plane": "surface",
      "constitution_ref": "constitution/00-INDEX.md#0.49",
      "ssot_module": "private/lib/html-escape",
      "ssot_entry_point": "escapeHtml(value)",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-comms-engine-worker/src/compiler.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "private/runtime/reporting-engine/src/templates.ts",
          "transport": "import",
          "must_import": "@kye/html-escape",
          "note": "STRICT-TS PACKAGE, cannot take the projection. tsconfig sets rootDir 'src' + include 'src/**/*', so a file outside src is not in the program, and noImplicitAny rejects the canonical's untyped parameter. Its current copy is COMPLETE and correct (all five characters, null-safe) — this is a duplicate, not a defect, which is why it is time-boxed rather than rushed. Closure is to publish the SSOT as @kye/html-escape with types and add the dependency."
        },
        {
          "module": "public/admin/functions/api/v1/pilot-applications/[id]/send-sign-in.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/admin/functions/email-action.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/admin/search.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "public/app/assets/dashboard-realtime-components.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/app/assets/usage-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/app/coa/_assets/chrome.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/app/dashboard.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/app/document-governance.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/app/entity-passport.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "public/app/ep/_assets/chrome.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/sandbox/estate-planning/assets/console.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "public/sandbox/main.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/assets/site-authority-record.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/_lib/admin-action-buttons.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/_lib/consultant-emails.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/_lib/persona-intake.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/audit-pilot.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/consultant-lead.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/contact.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/dsar.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/engage-access.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/expert-review.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/functions/api/v1/poc/apply.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/main.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "public/status/assets/status.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/widgets/consultant-card/v1/index.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/widgets/partner-registry/v1/index.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "scripts/build-ontology-derivative.mjs",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "site/src/fragments/admin/search.body.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "site/src/fragments/app/dashboard.body.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "site/src/fragments/app/document-governance.body.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "site/src/fragments/app/entity-passport.body.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Enrolled 2026-08-10 — this copy was introduced by the #1505 security sweep, which is exactly the copy-N+1 this concept exists to prevent."
        },
        {
          "module": "site/src/fragments/widgets/consultant-card/v1/home.tail.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "site/src/fragments/widgets/partner-registry/v1/home.tail.html",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical."
        },
        {
          "module": "public/site/assets/expert-wall-form.js",
          "transport": "projection",
          "note": "Browser code — cannot import a Node module, so it carries the canonical bytes between the marker comments and implementation-canonical verifies the equality. Enrolled 2026-08-12 replacing a hand-rolled esc() that escaped & < > but NOT the double quote, while all eight of its call sites interpolate into DOUBLE-QUOTED HTML attributes (href, title, aria-label, data-cite, data-embed). `x\" onmouseover=\"alert(1)` passed through it unchanged. CodeQL js/incomplete-html-attribute-sanitization."
        },
        {
          "module": "public/app/assets/apps-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/authorities-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/authority-wallet-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/classification-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/connectors-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/entities-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/plugins-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/purposes-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/replay-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        },
        {
          "module": "public/app/assets/scopes-page.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14 with the Class-1 sanitization sweep: this page interpolated a DOM-attribute-sourced empty-state string into innerHTML (CodeQL js/xss-through-dom). It carried no escaper, so it is reached through the declared insertion marker."
        }
      ],
      "competitor_forbidden_patterns": [
        "function escapeHtml(",
        "function escapeHTML(",
        "const escapeHtml =",
        "const escapeHTML ="
      ],
      "competitor_scan_extensions": [
        ".html"
      ],
      "migration": {
        "status": "in-progress",
        "advisory_until": "2026-11-08",
        "tracked_in": "constitution/DECAY-WINDOWS.md",
        "wrappers_pending_import": [
          "private/runtime/reporting-engine/src/templates.ts"
        ]
      },
      "projection_anchor": {
        "begin": "// >>> canonical escaper — generated from private/lib/html-escape/index.js; do not edit",
        "end": "// <<< canonical escaper",
        "anchor_bearers": [
          {
            "path": "scripts/lib/projection-specs.mjs",
            "role": "definition",
            "reason": "Declares the anchor strings as data for both the generator and the verifier, so it necessarily contains every token. It was split out of the generator in 2026-08-14 precisely because importing a SCRIPT for its data executed its write — the verifier repaired the drift it existed to detect, then passed."
          }
        ],
        "retired_begins": [
          {
            "text": "// >>> canonical escaper — generated from the canonical html-escape library; do not edit",
            "superseded_on": "2026-08-13",
            "reason": "Superseded when the token was rewritten to name the canonical's PATH rather than 'the library'. The old line was left behind in 26 files, where it opened nothing and was emitted by nothing — measured 2026-09-06 when grepping the token to find the consumer set returned a list 13% false, which is how it was found."
          }
        ]
      }
    },
    {
      "concept_id": "key.custody",
      "entity_class": "concept",
      "name": "Key Custody adapter (HSM/KMS-backed signing)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/key-custody",
      "ssot_package": "@kye/key-custody",
      "ssot_entry_point": "AWS/GCP/Azure KMS + PKCS#11 HSM adapters",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function CKM_EC_EDWARDS_KEY_PAIR_GEN(",
        "const CKM_EC_EDWARDS_KEY_PAIR_GEN =",
        "class CKM_EC_EDWARDS_KEY_PAIR_GEN "
      ]
    },
    {
      "concept_id": "learn.articles",
      "entity_class": "concept",
      "name": "Education-rail articles + glossary",
      "plane": "surface",
      "constitution_ref": "constitution/39-LEARN-RAIL.md",
      "ssot_module": "private/specs/learn",
      "ssot_package": null,
      "ssot_entry_point": "manifest.json + glossary.json",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "Articles are content records in a manifest, not code; a duplicate is a second manifest entry rather than a second implementation.",
        "enforced_by": "learn-manifest-alive"
      }
    },
    {
      "concept_id": "markdown.cell_escape",
      "entity_class": "concept",
      "name": "Markdown table-cell escaper",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md#0.49",
      "ssot_module": "private/lib/markdown-cell",
      "ssot_entry_point": "markdownCell(value)",
      "competitor_forbidden_patterns": [
        "replace(/\\|/g",
        "function markdownCell(",
        "const markdownCell ="
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__markdown_cell_escape",
      "transport_wrappers": [],
      "migration": {
        "status": "complete",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__markdown_cell_escape"
      }
    },
    {
      "concept_id": "marketplace.registry",
      "entity_class": "concept",
      "name": "Marketplace Registry (rule-pack marketplace index/filter/trust-score/verify)",
      "plane": "billing",
      "constitution_ref": "constitution/31-DATA-GOVERNANCE-PACK.md",
      "ssot_module": "private/runtime/marketplace-registry",
      "ssot_package": "@kye/marketplace-registry",
      "ssot_entry_point": "index + filter + trust-score + signature-verify",
      "transport_wrappers": [
        {
          "module": "private/runtime/marketplace-worker",
          "transport": "http",
          "note": "HTTP surface (Marketplace Rail)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function MarketplaceRegistry(",
        "const MarketplaceRegistry =",
        "class MarketplaceRegistry "
      ]
    },
    {
      "concept_id": "mcp.tools",
      "entity_class": "concept",
      "name": "KYE MCP Server (locked KYE Protocol tool set over MCP)",
      "plane": "runtime",
      "constitution_ref": "constitution/15-MCP-AND-SDK.md",
      "ssot_module": "private/runtime/mcp-server",
      "ssot_package": "@kye/mcp-server",
      "ssot_entry_point": "MCP server (stdio transport)",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-mcp-server-worker",
          "transport": "http",
          "note": "Streamable-HTTP MCP server Worker (§15)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function CONTROL_PLANE_TOOL_OUTPUT_SCHEMA(",
        "const CONTROL_PLANE_TOOL_OUTPUT_SCHEMA =",
        "class CONTROL_PLANE_TOOL_OUTPUT_SCHEMA "
      ]
    },
    {
      "concept_id": "oscal.export",
      "entity_class": "concept",
      "name": "OSCAL Exporter (KYE evidence → NIST OSCAL JSON)",
      "plane": "audit",
      "constitution_ref": "constitution/21-DELEGATED-AUDITABILITY.md",
      "ssot_module": "private/runtime/oscal-exporter",
      "ssot_package": "@kye/oscal-exporter",
      "ssot_entry_point": "project evidence → OSCAL component-definition / SSP / assessment-results",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-oscal-exporter-worker",
          "transport": "http",
          "note": "HTTP Worker (§21)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function exportComponentDefinition(",
        "const exportComponentDefinition =",
        "class exportComponentDefinition "
      ]
    },
    {
      "concept_id": "parse.engine",
      "entity_class": "concept",
      "name": "Parse engine — the ONE door every governed parse goes through (grammar resolved from kye:dictionary:parse-engine, decided as kye:action-class:parse, dispatched to the declared implementation)",
      "plane": "governance",
      "constitution_ref": "constitution/40-IMPLEMENTATION-CANONICAL.md",
      "ssot_module": "scripts/lib/parse-engine.mjs",
      "ssot_package": null,
      "ssot_entry_point": "parse(grammarId, input, { target })",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "actionClass: \"kye:action-class:parse\""
      ],
      "migration": {
        "status": "complete",
        "note": "Adopted 2026-09-08 with zero competitors: the two call sites that decided a parse directly (scripts/gates/region-ownership-canonical.mjs, scripts/prove-read-backs.mjs) were routed through the engine in the same change-set. The pattern is the DECISION literal — a parse decided anywhere but through the engine is a second door, whatever grammar it parses under."
      }
    },
    {
      "concept_id": "policy.administration",
      "entity_class": "concept",
      "name": "Policy Administration Point (Operating Model → Compiled Authority Bundle compiler)",
      "plane": "decision",
      "constitution_ref": "constitution/25-EDGE-GOVERNANCE.md",
      "ssot_module": "private/runtime/pap",
      "ssot_package": "@kye/pap",
      "ssot_entry_point": "Control Compiler + signed Review Records",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function CONTROL_COMPILER_VERSION(",
        "const CONTROL_COMPILER_VERSION =",
        "class CONTROL_COMPILER_VERSION "
      ]
    },
    {
      "concept_id": "policy.decision",
      "entity_class": "concept",
      "name": "Policy Decision (PDP)",
      "plane": "decision",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/pdp",
      "ssot_package": "@kye/pdp",
      "ssot_entry_point": "DecisionPoint.decide()",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-pdp-worker",
          "transport": "http",
          "must_import": "@kye/pdp",
          "note": "CF Worker HTTP surface — Phase 1 import (stableHash) complete 2026-05-19; Phase 2 (full DecisionPoint adapter for resolvers + evidence sink) tracked separately"
        },
        {
          "module": "private/runtime/epdp",
          "transport": "embedded",
          "must_import": "@kye/pdp",
          "note": "Embedded wrapper — imports canonicalJsonString from SSOT so HMAC-signed bundles hash bit-identically with central PDP"
        },
        {
          "module": "private/runtime/spdp",
          "transport": "sidecar",
          "must_import": "@kye/pdp",
          "note": "Sidecar — exports adaptKyePdpAsUpstream() bridge so sidecar deployments host the SSOT DecisionPoint in-process"
        },
        {
          "module": "private/runtime/gateway-worker",
          "transport": "http",
          "must_import": "@kye/decision-engine",
          "note": "HTTP front-end for /v1/decide. Read in full 2026-09-06: decideHandler() reaches NO verdict of its own — it loads a compiled rule bundle from D1, calls decide() from @kye/decision-engine (itself a pure adapter over @kye/pdp DecisionPoint.decide() since the 2026-08-27 collapse recorded below), persists a decision_records row and shadow-runs the canonical evaluator. It surfaced as an UNDECLARED core only when the entry predicate was widened to `decide\\w*`, which is the correct outcome: a transport that was never declared is indistinguishable from a second decider until someone reads it. Declared here rather than as an unconsolidated core because it imports the chain to the SSOT rather than re-implementing it."
        }
      ],
      "competitor_forbidden_patterns": [
        "function NativePolicyEngineAdapter(",
        "const NativePolicyEngineAdapter =",
        "class NativePolicyEngineAdapter "
      ],
      "decision_entry_patterns": [
        "export\\s+(async\\s+)?function\\s+(decide|arbitrate)\\b",
        "(^|[^.\\w$])(async\\s+)?function\\s+arbitrate\\b",
        "export\\s+class\\s+\\w*(DecisionPoint|Arbiter|EmbeddedPdp)\\b",
        "export\\s+(async\\s+)?function\\s+decide\\w*",
        "export\\s+(async\\s+)?function\\s+authoriz\\w*"
      ],
      "decision_entry_patterns_note": "Constitution §0.58 — the decision-SSOT domain of pdp-ssot-canonical is EVERY module under decision_corpus_roots that reaches an admissibility verdict, DERIVED from disk with these signatures (§0.43 no blind enforcers), not only the declared transport_wrappers. A disk hit that is neither ssot_module, a transport_wrapper, nor a declared unconsolidated_decision_core is an UNDECLARED parallel decision core and HARD-FAILS.\n\nWIDENED 2026-09-06, and the old note is why. It read: 'These signatures matched exactly four surfaces at adoption — precise, zero false positives.' Both halves were true and the conclusion was false: measured across the declared corpus, THIRTY-THREE modules export a verdict-producing symbol and these patterns saw THREE. `function\\s+(decide|arbitrate)\\b` matches `decide` exactly, so `decideAuthority`, `decideRecovery`, `decideCapabilityInvocation`, `decideRuntime` and `authorize` all fell outside it. The live cost: private/runtime/gateway/src/pdp.ts — 189 lines of deny-by-default admissibility with its own PolicyDecision type and its own `kye:pdc:reference:` id namespace — was an undeclared second decision core, in a file named pdp.ts, while this gate reported the domain clean. Precision without coverage is the §0.43 blind enforcer: a narrow predicate has zero false positives BY CONSTRUCTION and tells you nothing about what it cannot see.",
      "decision_corpus_roots": [
        "private/runtime",
        "public/app/functions",
        "public/site/functions"
      ],
      "decision_corpus_extensions": [
        ".ts",
        ".mjs",
        ".js"
      ],
      "decision_corpus_note": "§0.43 — the corpus ROOTS and EXTENSIONS are declared here because the gate had them hardcoded: `const RUNTIME_ROOT = \"private/runtime\"` with a `.ts`-only filter. Measured 2026-09-06 that was a LIVE blind spot, not a theoretical one — public/app/functions/api/coa/_lib/engine.js exports decideAuthority(), a real custody-to-authority decision core minting its own decision_map and reason_codes, and it sat outside the corpus while the gate reported the decision-SSOT domain clean. A root typed into an enforcer is a domain nobody declared: the gate can then only be widened by editing the gate, never by declaring the estate, which is the shape §0.43 forbids. Deciders live wherever the estate runs code, so the roots name the homes the estate actually has and the extensions cover the JS family as well as TypeScript.",
      "unconsolidated_decision_cores": [
        {
          "module": "private/runtime/decision-engine",
          "decision_symbol": "decide",
          "must_import": "@kye/pdp",
          "imports_core": true,
          "consumers": [
            "private/runtime/gateway-worker",
            "private/runtime/mcp-server"
          ],
          "constitution_ref": "constitution/00-INDEX.md §0.58",
          "burn_down": "COLLAPSED 2026-08-27 (user-approved full migration to pdp). decide() is now a PURE ADAPTER over @kye/pdp DecisionPoint.decide() — zero independent admissibility logic (rulesEngine deleted; hash.ts re-exports @kye/pdp's canonicalJsonString; decision_id is now the pdp fingerprint). gateway-worker + mcp-server re-pointed (await the now-async decide). Behaviour-preserving: all suites (decision-engine 28, mcp-server 98, gateway decide-handler 12/12) pass unchanged — pdp's rule/outcome derivation is semantically identical for the mapped inputs; decision_id values change (nothing pins them, and it is MORE replay-stable). Still declared here (it exports decide, a disk decision-surface) but imports the core, so the ratchet no longer counts it. Remaining: edge-arbiter (§25 edge tier).",
          "declared_at": "2026-08-27",
          "collapsed": true,
          "collapse_verified": "Verified 2026-08-27 and re-read 2026-09-06: decide() is a pure adapter over @kye/pdp DecisionPoint.decide() with zero independent admissibility logic — rulesEngine deleted, hash.ts re-exports the SSOT canonicalJsonString, decision_id is the pdp fingerprint. The VERDICT routes through the SSOT, which an import check cannot establish and a reader can."
        },
        {
          "module": "private/runtime/edge-arbiter",
          "decision_symbol": "arbitrate",
          "must_import": "@kye/pdp",
          "consumers": [],
          "constitution_ref": "constitution/00-INDEX.md §0.58",
          "burn_down": "§25 edge compiled-bundle evaluator; reimplements the verdict standalone (a legitimately-different edge tier — §0.47 already declares pdp + edge-arbiter one spine). Extract the shared bundle-evaluation core so pdp's rules-stage and the edge tier import ONE verdict logic. Larger §25 work; tracked toward zero, not a same-commit collapse.",
          "declared_at": "2026-08-27"
        },
        {
          "module": "private/runtime/gateway",
          "decision_symbol": "authorize",
          "must_import": "@kye/pdp",
          "consumers": [
            "private/runtime/gateway/src/handlers/capabilities.ts",
            "private/runtime/gateway/src/handlers/recovery.ts",
            "private/runtime/gateway/src/payments-spdp.ts"
          ],
          "constitution_ref": "constitution/00-INDEX.md §0.58",
          "burn_down": "A COMPLETE SECOND POLICY DECISION POINT, read in full 2026-09-06: private/runtime/gateway/src/pdp.ts is 189 lines of deny-by-default admissibility — actor status and stop signals, delegation resolution with expiry and subject matching, scope intersection, access-right grants, credential and attestation verification including Ed25519, high-risk escalation to RequireApproval, obligations and stop conditions — returning its own PolicyDecision type under its own id namespace `kye:pdc:reference:`. It imports shortFingerprint from @kye/pdp for IDENTITY only; the VERDICT is entirely its own. Its header calls it an 'illustrative reference' that 'does not implement' the decision algorithm, and 189 lines of live, gateway-imported admissibility logic is a decision algorithm whatever the header says. Undeclared until now for one mechanical reason: the entry predicate matched `decide` and `arbitrate` exactly, and this symbol is `authorize`. Collapse to a thin @kye/pdp adapter, behaviour-preserved against the gateway suites.",
          "declared_at": "2026-09-06"
        },
        {
          "module": "private/runtime/insight-authority-engine",
          "decision_symbol": "decideAuthority",
          "must_import": "@kye/pdp",
          "consumers": [
            "public/app/functions/api/coa"
          ],
          "constitution_ref": "constitution/00-INDEX.md §0.58",
          "burn_down": "The pure custody→authority core for the Iron Mountain InSight sector pack: mapCdvToDecisionInputs → evaluateRules → decideAuthority over the four kye:rule-pack:chain-of-authority-insight rules, deterministic and dependency-free. It is a real second decider — allow / refuse / advisory-hold without @kye/pdp — and it is HALF of a §0 duplication measured 2026-09-06: public/app/functions/api/coa/_lib/engine.js re-implements the SAME FOUR RULE IDS (insight_custody_to_authority_binding · insight_due_diligence_before_action · insight_named_authority · insight_signoff_gate) with the same two symbol names, importing nothing from this module. This file's own header asserts it is 'the single canonical implementation … no other module re-implements the decision', which was false when written and stayed false because no enforcer could see either copy. Collapse: the public COA lane imports THIS module, and this module's rule evaluation moves onto @kye/pdp's rules stage.",
          "declared_at": "2026-09-06"
        },
        {
          "module": "public/app/functions/api",
          "decision_symbol": "decideRuntime",
          "must_import": "@kye/pdp",
          "consumers": [
            "public/app/functions/api/coa",
            "public/app/functions/api/v1/runtime"
          ],
          "constitution_ref": "constitution/00-INDEX.md §0.58",
          "burn_down": "The Pages-Function decision plane, carrying TWO deciders. _lib/runtime-evaluate-engine.js exports validateEvaluateRequest → evaluateDeclaredRules → decideRuntime → runEvaluatePipeline, a full evaluate-and-seal pipeline over DERIVED_RULE_PACKS with its own decisionIdFromSeed() identity. coa/_lib/engine.js exports evaluateRules + decideAuthority, the §0 duplicate of private/runtime/insight-authority-engine described on that row. Neither reaches @kye/pdp. Both were outside every enforcer until 2026-09-06, because this gate's corpus root was hardcoded to `private/runtime` — a Pages Function is where the app plane actually decides, and no declaration could reach it. Collapse: the runtime pipeline routes through the PDP transport, and the COA lane imports the IP-track core instead of copying it.",
          "declared_at": "2026-09-06"
        }
      ],
      "unconsolidated_decision_cores_baseline_key": "pdp_ssot__unconsolidated_cores",
      "decision_identity": {
        "note": "§39/§0.49 — the decision-identity derivation is a CANONICAL CONTRACT, not a hand-rolled literal. pdp DERIVES its id prefixes from generated constants (private/runtime/pdp/src/generated/decision-identity.ts, regenerated from THIS block by scripts/build-decision-identity.mjs and verified against private/specs/identity/id-grammar.json per §0.43). Identity is PORTABLE: another entity re-derives it from the declared inputs + algorithm (§38).",
        "producer": "private/runtime/pdp/src/decision-point.ts",
        "generated_constant": "private/runtime/pdp/src/generated/decision-identity.ts",
        "generator": "scripts/build-decision-identity.mjs",
        "algorithm": "shortFingerprint",
        "id_classes": {
          "decision": "decision",
          "decision_map_fragment": "decision-map-fragment",
          "evidence_pack": "evidence-pack"
        },
        "identity_inputs": [
          "semantic_request",
          "compilation_seal",
          "decision",
          "reasons",
          "matched_rules"
        ],
        "t0_invariant": "identity covers the SEMANTIC request only; evaluated_at is excluded so an identical request re-derives an identical decision_id (§13/§0.20)."
      }
    },
    {
      "concept_id": "purpose.admit",
      "entity_class": "concept",
      "name": "Purpose & Scope Engine (Purpose Permission admit/issue/revoke)",
      "plane": "decision",
      "constitution_ref": "constitution/12-PURPOSE-PERMISSION.md",
      "ssot_module": "private/runtime/purpose-engine",
      "ssot_package": "@kye/purpose-engine",
      "ssot_entry_point": "admit(grant, request, now, signals)",
      "transport_wrappers": [
        {
          "module": "private/runtime/gateway-worker/src/lib/admit.ts",
          "transport": "http",
          "must_import": "@kye/purpose-engine",
          "note": "CF Worker hot path (POST /v1/purpose/admit). Owns transport only: the Worker-local grant/request types its schema validates, the 3-arg signature with `now` inside signals, and the wire decision shape (decided_by, verbatim decided_at, FNV-1a admissibility_decision_id, detail-free reasons so a detail wording change never moves a replay hash, §13). Verdict comes from the SSOT.",
          "entry_point": "admit(grant, request, signals)"
        },
        {
          "module": "private/runtime/mcp-server/src/stores.ts",
          "transport": "mcp",
          "must_import": "@kye/purpose-engine",
          "note": "MCP tool surface. Declared transport precondition: principal_in_session is REQUIRED in the purpose_admit tool input schema and in AdmitRequest — an MCP call with no identified session principal is rejected at the schema boundary, before the engine; the engine's own absent-principal semantics (corpus vector 085) are unchanged. The 2026-08-30 swap also closed two fail-opens in the old local copy, pinned by vector 086: not_revoked now reads lifecycle state (superseded/expired inside the window is denied), and omitting `resource` no longer bypasses a resource restriction.",
          "entry_point": "admit(grant, request, now)",
          "fixture_adapter": {
            "_why": "This wrapper owns the MCP wire shape: the canonical conformance fixture is projected into it so the gate compares VERDICTS, not field names. Declared here (§0.49) so the harness applies it generically instead of branching per wrapper.",
            "request_rename": {
              "id": "request_id"
            },
            "request_nest_signals": "signals",
            "grant_signature_object": {
              "alg": "EdDSA",
              "kid": "kye:key:mcp-conformance-fixture",
              "field": "sig_b64"
            }
          }
        }
      ],
      "competitor_forbidden_patterns": [
        "export function admit("
      ]
    },
    {
      "concept_id": "rate-limiting.tenant",
      "entity_class": "concept",
      "name": "Tenant rate-limiting (Durable Object backed; in-memory reference for tests)",
      "plane": "runtime",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "private/runtime/gateway-worker",
      "ssot_package": null,
      "ssot_entry_point": "TenantRateLimiter Durable Object + src/middleware/ratelimit.ts",
      "transport_wrappers": [
        {
          "module": "private/runtime/gateway",
          "transport": "library",
          "note": "In-process token-bucket reference for single-process tests at src/middleware/rate-limit.ts. The DO-backed limiter on gateway-worker is the production authority."
        }
      ],
      "competitor_forbidden_patterns": [
        "function analyticsReplayEquivalenceRoute(",
        "const analyticsReplayEquivalenceRoute =",
        "class analyticsReplayEquivalenceRoute "
      ]
    },
    {
      "concept_id": "render.comment_strip",
      "entity_class": "concept",
      "name": "Comment stripping for source scanners (code vs. prose)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/strip-comments.mjs",
      "ssot_package": null,
      "ssot_entry_point": "stripComments(src, { dialect, preservePositions })",
      "transport_wrappers": [
        {
          "module": "scripts/gates/_lib.mjs",
          "transport": "library",
          "must_import": "../lib/strip-comments.mjs",
          "note": "stripCodeComments(src, { html }) — the HTML-aware entry point. It adds ONLY the markup branch (blank comments, then lex script bodies as js and style bodies as css) and delegates every code-lexing decision to the canonical. It USED to carry its own lexer, and the two disagreed on 30 of 1200 files: in 14 this one deleted live code because its regex state did not track the character class in /[^/]+/, and in 14 it left whole comments unstripped. The SSOT moved here after that measurement — the more capable implementation (7 dialects, preservePositions, regex-vs-division by value position) wins, and the HTML branch it lacked is preserved by this wrapper."
        }
      ],
      "competitor_forbidden_patterns": [
        "function stripComments(",
        "const stripComments =",
        "/\\/\\*[\\s\\S]*?\\*\\//g"
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__render_comment_strip",
      "migration": {
        "status": "in-progress",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__render_comment_strip"
      }
    },
    {
      "concept_id": "render.html_tag_match",
      "entity_class": "concept",
      "name": "HTML tag + comment matching for scanners (CodeQL js/bad-tag-filter class)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "public/oss/software-constitution/kit/lib/html-tags.mjs",
      "ssot_package": null,
      "ssot_entry_point": "htmlCommentRe() / rawTextElementRe(tag) / blankHtmlComments() / blankRawTextBodies()",
      "transport_wrappers": [
        {
          "module": "scripts/lib/html-tags.mjs",
          "transport": "library",
          "must_import": "../../public/oss/software-constitution/kit/lib/html-tags.mjs",
          "note": "Re-export only, zero implementation. The canonical lives in the §42 kit because the kit is PUBLISHED and scaffolded into other repos: it imports nothing outside itself, so a copy there would ship its defects to every adopter. must_import is the mechanical proof this path forwards to the canonical instead of re-implementing it."
        }
      ],
      "competitor_forbidden_patterns": [
        "<\\/script>",
        "<\\/style>",
        "<!--[\\s\\S]*?-->"
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__render_html_tag_match",
      "migration": {
        "status": "in-progress",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__render_html_tag_match"
      }
    },
    {
      "concept_id": "replay.derive",
      "entity_class": "concept",
      "name": "Replay Engine (Execution Context Seal + Determinism Proof + Replay Proof)",
      "plane": "evidence",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/replay-engine",
      "ssot_package": "@kye/replay-engine",
      "ssot_entry_point": "context seal + determinism proof",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function DeterminismProver(",
        "const DeterminismProver =",
        "class DeterminismProver "
      ]
    },
    {
      "concept_id": "replay.proof-generation",
      "entity_class": "concept",
      "name": "Replay-Proof™ generation (re-derive a decision from public signatures)",
      "plane": "evidence",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/replay-proof-generator",
      "ssot_package": null,
      "ssot_entry_point": "POST /v1/replay/derive — worker.js",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "Proof generation is proven by OUTPUT EQUIVALENCE across engines, not by symbol uniqueness — two engines agreeing is the invariant, so a competing-symbol pattern would test the wrong thing.",
        "enforced_by": "engine-replay-equiv"
      }
    },
    {
      "concept_id": "reporting.synthesize",
      "entity_class": "concept",
      "name": "Reporting Engine (per-framework compliance report synthesis)",
      "plane": "audit",
      "constitution_ref": "constitution/21-DELEGATED-AUDITABILITY.md",
      "ssot_module": "private/runtime/reporting-engine",
      "ssot_package": "@kye/reporting-engine",
      "ssot_entry_point": "per-framework report synthesis from the audit chain",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-reporting-worker",
          "transport": "http",
          "note": "HTTP + cron period-close + auto-delivery Worker"
        },
        {
          "module": "private/runtime/kye-reporting-agent-worker",
          "transport": "http",
          "note": "Reporting Agent Worker (§26 stakeholder reports). Overlap with kye-reporting-worker flagged for runtime-consolidation review."
        }
      ],
      "competitor_forbidden_patterns": [
        "function sampleAuditChainRefs(",
        "const sampleAuditChainRefs =",
        "class sampleAuditChainRefs "
      ]
    },
    {
      "concept_id": "risk.score",
      "entity_class": "concept",
      "name": "Risk Engine (canonical risk tier + 0..100 risk score)",
      "plane": "decision",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "private/runtime/risk-engine",
      "ssot_package": "@kye/risk-engine",
      "ssot_entry_point": "risk tier + score per EU AI Act floor",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-risk-agent",
          "transport": "http",
          "note": "HTTP Worker — POST /v1/risk/assess"
        }
      ],
      "competitor_forbidden_patterns": [
        "function RiskEngine(",
        "const RiskEngine =",
        "class RiskEngine "
      ]
    },
    {
      "concept_id": "rules.evaluate",
      "entity_class": "concept",
      "name": "Rules Engine (rights/obligations/prohibitions/stop-conditions evaluator)",
      "plane": "decision",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/rules-engine",
      "ssot_package": "@kye/rules-engine",
      "ssot_entry_point": "evaluate(input, bundle) -> rule_result",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function RuleCompileError(",
        "const RuleCompileError =",
        "class RuleCompileError "
      ]
    },
    {
      "concept_id": "rules.gateway",
      "entity_class": "concept",
      "name": "Rules Gateway (rule-pack evaluation surface)",
      "plane": "runtime",
      "constitution_ref": "constitution/29-PROFILES-LITE.md",
      "ssot_module": "private/runtime/rules-gateway",
      "ssot_package": "@kye/rules-gateway",
      "ssot_entry_point": "evaluate(...)",
      "transport_wrappers": [
        {
          "module": "private/runtime/rules-gateway-worker",
          "transport": "http",
          "note": "CF Worker HTTP surface around the rules-gateway library"
        }
      ],
      "competitor_scan_exemption": {
        "reason": "The gateway's uniqueness question is orphan RULES rather than a duplicated symbol — a second rule set, not a second evaluate(). The operating-model gate answers that question directly.",
        "enforced_by": "om-no-orphan-rules"
      }
    },
    {
      "concept_id": "search.query",
      "entity_class": "concept",
      "name": "KYE Native Search Engine™ (D1 FTS5 lexical + Vectorize semantic query surface)",
      "plane": "runtime",
      "constitution_ref": "constitution/17-DIRECTORY-SEARCH.md",
      "ssot_module": "private/runtime/kye-search-engine",
      "ssot_package": "kye-search-engine",
      "ssot_entry_point": "POST /v1/search — worker.ts (F34 entitlement gate + F37 classification floor + F38 risk-tier cap + Ed25519-signed envelope + §0.3 audit emission)",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-search-indexer-worker",
          "transport": "queue",
          "note": "Index refresher — rebuilds the native D1 FTS5 + Vectorize substrate (cron full/incremental + kye-search-delta queue)."
        }
      ],
      "note": "Pre-cutover legacy-search dead code at private/runtime/search/ deleted. The three legacy Cloudflare search workers were decommissioned 2026-08-05 (deleted via the Cloudflare API); native D1 FTS5 + Vectorize is the one search substrate.",
      "competitor_forbidden_patterns": [
        "function buildFtsQuery(",
        "const buildFtsQuery =",
        "class buildFtsQuery "
      ]
    },
    {
      "concept_id": "siem.export",
      "entity_class": "concept",
      "name": "SIEM Export (audit-log shipping to Splunk/Sentinel/Elastic/Datadog)",
      "plane": "audit",
      "constitution_ref": "constitution/14-AGENTS-AND-ENGINES.md",
      "ssot_module": "private/runtime/siem-export",
      "ssot_package": "@kye/siem-export",
      "ssot_entry_point": "push/pull SIEM shipping per tenant_siem_targets",
      "transport_wrappers": [
        {
          "module": "private/runtime/kye-siem-export-worker",
          "transport": "http",
          "note": "Streaming Worker (§14)"
        }
      ],
      "competitor_forbidden_patterns": [
        "function sentinelCanonicalString(",
        "const sentinelCanonicalString =",
        "class sentinelCanonicalString "
      ]
    },
    {
      "concept_id": "sql.like_escape",
      "entity_class": "concept",
      "name": "LIKE-pattern escaper for a user-supplied search term",
      "plane": "surface",
      "constitution_ref": "constitution/00-INDEX.md#0.49",
      "ssot_module": "private/lib/sql-like",
      "ssot_entry_point": "escapeLike(value)",
      "competitor_forbidden_patterns": [
        "replace(/[%_]/g",
        "function escapeLike(",
        "const escapeLike ="
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__sql_like_escape",
      "transport_wrappers": [
        {
          "module": "public/app/functions/api/v1/search.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. A Pages Function cannot import from private/ (§33 IP/OSS line), so projection is the transport, exactly as for html.escape and url.safe."
        },
        {
          "module": "public/admin/functions/api/v1/search.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. A Pages Function cannot import from private/ (§33 IP/OSS line), so projection is the transport, exactly as for html.escape and url.safe."
        },
        {
          "module": "public/admin/functions/api/v1/issuers.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. A Pages Function cannot import from private/ (§33 IP/OSS line), so projection is the transport, exactly as for html.escape and url.safe."
        },
        {
          "module": "public/admin/functions/api/v1/evidence-index.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. A Pages Function cannot import from private/ (§33 IP/OSS line), so projection is the transport, exactly as for html.escape and url.safe."
        }
      ],
      "migration": {
        "status": "complete",
        "tracked_in": "private/specs/ratchets/baselines.json#implementation_canonical__competitors__sql_like_escape"
      },
      "projection_anchor": {
        "begin": "// >>> canonical sql-like — generated from private/lib/sql-like/index.js; do not edit",
        "end": "// <<< canonical sql-like",
        "anchor_bearers": [
          {
            "path": "scripts/lib/projection-specs.mjs",
            "role": "definition",
            "reason": "Declares the anchor strings as data for both the generator and the verifier, so it necessarily contains every token. It was split out of the generator in 2026-08-14 precisely because importing a SCRIPT for its data executed its write — the verifier repaired the drift it existed to detect, then passed."
          }
        ]
      }
    },
    {
      "concept_id": "toolchain.version_pin",
      "entity_class": "concept",
      "name": "Which exact version of an external toolchain component does KYE run?",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "private/specs/toolchain/deploy-toolchain.json",
      "ssot_package": null,
      "ssot_entry_point": "tools[].channels[].version (exact x.y.z, enforced by scripts/gates/deploy-toolchain-pinned.mjs)",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "node-version: '2",
        "node-version: \"2"
      ],
      "competitor_baseline_key": "implementation_canonical__competitors__toolchain_version_pin",
      "migration": {
        "status": "complete",
        "note": "Registered 2026-08-15. The registry is tool-generic but held ONE member (wrangler) while node was pinned by hand 38 times across .github/workflows, four of them on an EOL major. Nobody noticed because there was no canonical version to drift FROM — the unpopulated-registry defect."
      }
    },
    {
      "concept_id": "ui.cache-bust",
      "entity_class": "concept",
      "name": "Cache-bust value used on every static asset URL",
      "plane": "surface",
      "constitution_ref": "constitution/06-WEBSITE.md",
      "ssot_module": "scripts/sync-marketing-counters.mjs",
      "ssot_package": null,
      "ssot_entry_point": "rolling value applied via 'npm run fix:consistency'",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "The cache-bust value is a rolling STRING stamped across assets, not a callable symbol, so a second copy is a second value rather than a second function definition — a §40 pattern cannot see it.",
        "enforced_by": "cache-bust-canonical"
      }
    },
    {
      "concept_id": "ui.chrome",
      "entity_class": "concept",
      "name": "Site chrome (top-bar, footer, breadcrumbs, drawer)",
      "plane": "surface",
      "constitution_ref": "constitution/02-INFORMATION-ARCHITECTURE.md",
      "ssot_module": "public/site/assets/components.js",
      "ssot_package": null,
      "ssot_entry_point": "TOP_BAR_HUB_IDS + FOOTER_GROUPS + kyeTopBar() + kyeFooter() + kyeBreadcrumbs() + kyeDrawer()",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function kyeCalloutDelegatedAuditability(",
        "const kyeCalloutDelegatedAuditability =",
        "class kyeCalloutDelegatedAuditability "
      ]
    },
    {
      "concept_id": "ui.theme-bootstrap",
      "entity_class": "concept",
      "name": "UI theme bootstrap (dark/light + brand tokens)",
      "plane": "surface",
      "constitution_ref": "constitution/04-DESIGN-SYSTEM.md",
      "ssot_module": "public/site/assets/theme-bootstrap.js",
      "ssot_package": null,
      "ssot_entry_point": "theme-bootstrap.js (default export)",
      "transport_wrappers": [],
      "competitor_scan_exemption": {
        "reason": "theme-bootstrap.js is a browser bootstrap loaded by a script tag with no named export to key on; a competing copy is a second injected script, which the theme freshness gate detects.",
        "enforced_by": "theme-canonical-fresh"
      }
    },
    {
      "concept_id": "url.safe",
      "entity_class": "concept",
      "name": "URL sink guard (scheme allow-list for href/src)",
      "plane": "surface",
      "constitution_ref": "constitution/00-INDEX.md#0.49",
      "ssot_module": "private/lib/safe-url",
      "ssot_entry_point": "safeUrl(value)",
      "competitor_forbidden_patterns": [
        "function safeUrl(",
        "const safeUrl ="
      ],
      "competitor_scan_extensions": [
        ".html"
      ],
      "transport_wrappers": [
        {
          "module": "public/site/assets/video-library.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14: four sinks assigned a DOM-attribute URL straight to href/src (CodeQL js/xss-through-dom), where a javascript: value executes on click."
        },
        {
          "module": "public/site/assets/demos.js",
          "transport": "projection",
          "note": "Byte-projected by scripts/build-html-escape-projection.mjs; equality verified by implementation-canonical. Added 2026-08-14: setAttribute('src', …) from a data- attribute (CodeQL js/xss-through-dom)."
        }
      ],
      "projection_anchor": {
        "begin": "// >>> canonical safe-url — generated from private/lib/safe-url/index.js; do not edit",
        "end": "// <<< canonical safe-url",
        "anchor_bearers": [
          {
            "path": "scripts/lib/projection-specs.mjs",
            "role": "definition",
            "reason": "Declares the anchor strings as data for both the generator and the verifier, so it necessarily contains every token. It was split out of the generator in 2026-08-14 precisely because importing a SCRIPT for its data executed its write — the verifier repaired the drift it existed to detect, then passed."
          }
        ]
      }
    },
    {
      "concept_id": "webhook.signature.verify",
      "entity_class": "concept",
      "name": "Inbound webhook signature verification (KYE-Timestamp + KYE-Signature + KYE-Delivery-ID HMAC scheme per private/specs/webhooks/signing.md)",
      "plane": "runtime",
      "constitution_ref": "constitution/06-WEBSITE.md",
      "ssot_module": "private/runtime/webhook-dispatcher",
      "ssot_package": null,
      "ssot_entry_point": "verify({ body, headers, resolveSecret, isDeliveryFresh }) — see src/verify.ts",
      "transport_wrappers": [],
      "note": "Vendor schemes (Svix in public/site/functions/webhooks/clerk.js, Stripe-Signature in public/admin/functions/webhooks/stripe.js) are vendor-specific and out of scope — they implement the vendor's signing protocol, not the KYE one. Legacy in-process v1 verifier at private/runtime/gateway/src/webhook-verifier.ts was DELETED 2026-05-19 (zero non-test callers; consolidation complete).",
      "competitor_forbidden_patterns": [
        "function parseSignatureHeader(",
        "const parseSignatureHeader =",
        "class parseSignatureHeader "
      ]
    },
    {
      "concept_id": "declared-agent-set",
      "entity_class": "concept",
      "name": "The DECLARED agent set at the runtime boundary — which kye:agent:<name> ids KYE declares",
      "plane": "identity",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "public/app/functions/api/_lib/declared-agents.generated.js",
      "ssot_package": "(none — a GENERATED Pages Functions module imported by relative path; written by scripts/build-declared-agents.mjs from kye:registry:agents-manifest, never hand-edited)",
      "ssot_entry_point": "isDeclaredAgent(id) — the ONE membership test; DECLARED_AGENT_IDS is the set it closes over",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "AGENT_PRINCIPAL_RE"
      ],
      "removed_competitors": [
        "public/app/functions/api/_lib/api-key-auth.js AGENT_PRINCIPAL_RE (deleted 2026-09-10 — a point-of-use copy of the ^kye:agent:…$ pattern kye.agent.exchange.v1 declares for sender.agent_entity_id, standing in for a membership test. Measured before deleting: the shape test returned kye:agent:ghost-agent — an agent nobody declares — as an authoritative actor, and it could not see an agent REMOVED from the manifest, so undeclaring an agent revoked nothing. Membership returns null for both.)"
      ],
      "note": "Two consumers need one answer to 'is this a declared agent': api-keys/agent/issue.js at issuance (may this key be minted) and _lib/api-key-auth.js at verification (does this key act as an agent KYE declares NOW). Both ends check on purpose and it is not a §0 duplicate — only the second moves when the manifest does — but they must answer through ONE set, which is why the second importer is what made this a registered concept. A Worker cannot read the repo, so the declaration reaches the boundary as a projection rather than a re-listing.\n\nONE pattern, and the honest reason there is not a second. AGENT_PRINCIPAL_RE names the competitor that actually existed here and measures 0 hits, so zero-tolerance is the right posture and no ceiling is declared (the ratchet index is CLOSED, §0.62). The other competitor class — a hand-written list of agent ids at a point of use — was left WITHOUT a pattern deliberately: the candidates were measured, and the only literal that would catch it (a specific agent id in quotes) hits nothing but the SSOT today while a future test naming that agent would fire falsely. A verifier that fails on a correct tree is the same defect as one that passes on a broken one, so the risk is recorded here rather than shipped as a rule. The projection itself is the structural defence: it is generated, and scripts/build-declared-agents.mjs refuses to emit an id kye.agent.exchange.v1 cannot carry, so there is nothing for a hand-written list to be more convenient than."
    },
    {
      "concept_id": "sandbox.govern_core",
      "entity_class": "concept",
      "name": "Sandbox act decision loop — the ONE loop every sandbox provider act is decided through (masterblueprint §11 S-8)",
      "plane": "governance",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/lib/sandbox-govern-core.mjs",
      "ssot_package": null,
      "ssot_entry_point": "buildSandboxDP(pdp, {tenant, evidenceSink}) · decideAct(dp, act) · sandboxBundle() · SANDBOX_ACTIONS / CLASS_OF · DECISION_BUDGET / ATTACH_BUDGET_MS · decisionSummary()",
      "transport_wrappers": [
        {
          "module": "private/runtime/sandbox-runtime/src/govern.ts",
          "transport": "import",
          "note": "Worker lane: static @kye/pdp import + a retaining evidence sink (kye-evidence-seal queue + §0.3 chain); decides nothing itself."
        },
        {
          "module": "scripts/smoke/sandbox-runtime.mjs",
          "transport": "cli",
          "note": "Node smoke: measures the verdict path against DECISION_BUDGET and exercises the deployed substrate with --live."
        },
        {
          "module": "scripts/smoke/freestyle-sandbox.mjs",
          "transport": "cli",
          "note": "Node smoke for the comparator provider (Freestyle) behind the same five-verb port."
        }
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-15 with the S-8 phase 2 runtime. Sibling of governed-run-core (the §0.34 inventory loop, one self-run action) — NOT a fork of it: this bundle admits exactly the five sandbox actions. Four importers at registration (the Worker, two smokes, the Worker test)."
      },
      "competitor_forbidden_patterns": [
        "function sandboxBundle(",
        "function decideAct(",
        "export const SANDBOX_ACTIONS"
      ]
    },
    {
      "concept_id": "surface.rendered_shell_verify",
      "entity_class": "concept",
      "name": "Rendered-shell verification — the ONE page→shell-class resolution and the ONE measurement of a rendered shell (selector counts + computed styles) that every verifier of the compulsory visual inspection reads (CLAUDE.md 2026-09-15/16)",
      "plane": "surface",
      "constitution_ref": "constitution/13-RESILIENCE-LOOP.md",
      "ssot_module": "scripts/lib/ui-boot-core.mjs",
      "ssot_package": null,
      "ssot_entry_point": "shellClassFor(pagePath, {smokeManifest, affordanceContract}) · measureRenderedShell(page, shell) · startStaticServer · answerApi · setSurface",
      "transport_wrappers": [
        {
          "module": "scripts/smoke/surface-smoke.mjs",
          "transport": "import",
          "note": "--rendered arm: opens every page of every class and calls measureRenderedShell; measures nothing itself."
        },
        {
          "module": "scripts/smoke/ui-journey-run.mjs",
          "transport": "import",
          "note": "The customer/admin journey: resolves each walked page through shellClassFor and asserts through measureRenderedShell (shell-mismatch); keeps no copy of either."
        },
        {
          "module": "scripts/gates/subdomain-chrome-canonical.mjs",
          "transport": "import",
          "note": "Check (e): the estate-chrome population for the theme bootstrap is resolved through shellClassFor; the gate keys on no private page→class rule."
        }
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-16 with the shell-stylesheet cure. Measured 2026-09-16: the page→class resolution lived twice (the journeys runner and the theme-bootstrap gate each keyed on a private copy) and the count probe lived twice (the rendered arm and the journeys runner); both unified here the same day the computed-style assertion was added."
      },
      "competitor_forbidden_patterns": [
        "function shellClassFor(",
        "function measureRenderedShell(",
        "export async function measureRenderedShell("
      ]
    },
    {
      "concept_id": "entity_class.stamp",
      "entity_class": "concept",
      "name": "Entity-class stamp — the ONE implementation of the §0.36 limb (c) instance self-declaration rule for GENERATED registries (scope, value and key position), read by the late P5b writer and by every owning generator's --check projection",
      "plane": "governance",
      "constitution_ref": "constitution/40-IMPLEMENTATION-CANONICAL.md",
      "ssot_module": "scripts/lib/entity-class-stamp.mjs",
      "ssot_package": null,
      "ssot_entry_point": "stampClassFor(path, raw) / applyEntityClassStamp(path, doc, raw) / projectEntityClassStamp(path, bytes)",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "entries.splice(idIdx >= 0 ? idIdx + 1 : 0, 0, [\"entity_class\""
      ],
      "migration": {
        "status": "complete",
        "note": "Adopted 2026-09-17 with zero competitors. A generated registry has TWO declared writers by design — the generator that owns its content, and build-entity-class-stamps.mjs at P5b/85 (after build-admission-matrix at P5b/82, which is what makes the stamp value derivable rather than typed). A P3 generator cannot read that matrix without depending backwards on P5b, so its raw byte-equality --check is false of a CORRECT tree the moment its class enters the matrix. The cure is the 2026-09-07 verifier rule: compare against the PROJECTED bytes, through the writer's own implementation. Three hand-rolled copies of the splice were routed through the SSOT in the same change-set (build-edge-runtime-manifests.mjs, build-workflow-registry.mjs, and the writer's own private block, now deleted); build-component-graph.mjs and build-ontology-crossmap-browser.mjs — the two of 12 candidate emitters MEASURED to be failing — call the projection."
      }
    },
    {
      "concept_id": "egress.decision",
      "entity_class": "concept",
      "name": "May this outbound crossing happen? (the one egress decision: URL host → declared counterparty row → kye:action-class:egress through the real PDP; credential resolved at the boundary)",
      "plane": "decision",
      "constitution_ref": "constitution/00-INDEX.md",
      "ssot_module": "scripts/govern/egress-decision.mjs",
      "ssot_package": null,
      "ssot_entry_point": "counterparties() · resolveCrossing(url) · decideEgress({row, purpose, carriesTenantData}) · notACrossing() · credentialFor(row)",
      "transport_wrappers": [
        {
          "module": "scripts/govern/egress-pep.mjs",
          "transport": "cli",
          "entry_point": "egress-pep.mjs <subprocessor-id> <purpose> [tenant-data] | --list",
          "must_import": "./egress-decision.mjs",
          "note": "A governed caller asks by counterparty name before it makes the call. Thin over decideEgress(); carries no decision of its own (boundary-governance-canonical (a2) + this row's competitor patterns)."
        },
        {
          "module": "scripts/lib/egress-gateway.mjs",
          "transport": "http-client",
          "entry_point": "install() via --import scripts/lib/egress-gateway.preload.mjs",
          "must_import": "../govern/egress-decision.mjs",
          "note": "The process's HTTP client, governed: Every connection the process makes asks by URL, BEFORE the socket: undici Agent({connect}) + compose interceptor, node:http/https Agent.createConnection + request() header injection. Loopback read from not_a_crossing[] through notACrossing(), never restated."
        }
      ],
      "competitor_forbidden_patterns": [
        "function decideEgress(",
        "const decideEgress =",
        "function resolveCrossing(",
        "const resolveCrossing =",
        "function counterparties("
      ],
      "migration": {
        "status": "complete",
        "note": "Registered 2026-09-22 with the interceptor. The decision used to live inline in scripts/govern/egress-pep.mjs, a CLI a caller had to invoke; the interceptor (undici connect + node:http createConnection) needed the SAME decision before a socket, so it was extracted to one module both call (§0.49/§0.61). The two wrappers are the CLI (a governed caller asks by name) and the runtime interceptor (every connection the process makes asks by URL); a third copy of resolveCrossing or decideEgress anywhere is the competitor this row forbids. Loopback exemption is READ from not_a_crossing[] on the boundary row through notACrossing(), never restated (boundary-governance-canonical (a2))."
      }
    },
    {
      "concept_id": "storage.projection",
      "entity_class": "concept",
      "name": "Storage projection reader — store objects, contract↔column comparison, writer coverage (the one measurement of what the runtime corpus declares, inserts, updates and reads per table)",
      "plane": "diagnostic",
      "constitution_ref": "constitution/16-EDGE-RUNTIME.md",
      "ssot_module": "scripts/lib/storage-projection.mjs",
      "ssot_package": null,
      "ssot_entry_point": "loadStoreObjects() · compareRow() · writerCoverage() · phantomColumns() · fleetSites() · fleetTableNames()",
      "transport_wrappers": [],
      "competitor_forbidden_patterns": [
        "function loadStoreObjects(",
        "function compareRow(",
        "function writerCoverage(",
        "function phantomColumns(",
        "function fleetTableNames("
      ]
    },
    {
      "concept_id": "followability.served-block",
      "entity_class": "concept",
      "name": "Follow-surface served block (what a §75 pull endpoint carries: surfaces × state classes × recorded transitions)",
      "plane": "surface",
      "constitution_ref": "constitution/75-FOLLOWABILITY-RAIL.md#section-2",
      "ssot_module": "scripts/lib/follow-surfaces.mjs",
      "ssot_entry_point": "deriveFollowSurfaces() · renderFollowSurfacesBlock(surfaces)",
      "transport_wrappers": [
        {
          "module": "scripts/build-derived-follow-surfaces.mjs",
          "transport": "import",
          "must_import": "./lib/follow-surfaces.mjs",
          "note": "Writes the block into the Astro source fragments and the public sidecar. The writer never re-derives."
        },
        {
          "module": "scripts/gates/followability-canonical.mjs",
          "transport": "import",
          "must_import": "../lib/follow-surfaces.mjs",
          "note": "Check 3a asserts the RENDERED pull page carries every surface id, state class and item decision id the same derivation yields (§0.61: writer and checker share one implementation)."
        }
      ],
      "competitor_forbidden_patterns": [
        "function deriveFollowSurfaces",
        "function renderFollowSurfacesBlock",
        "data-follow-state-class=\\\""
      ],
      "note": "Measured 2026-09-30: the followability gate's served check was existsSync(<page>) and /directory.html carried none of the Armenia surface's declared state; a second derivation of 'what the pull page serves' in the gate would be the §0.49 copy that drifts from the block it checks. One derivation, imported by both ends."
    }
  ],
  "projection_anchor_scan_exclusions": [
    {
      "prefix": "site/dist",
      "reason": "Astro's own output directory, ignored by site/.gitignore and written by scripts/build-astro-pages.mjs. It cannot be declared as a wrapper because nothing can declare an untracked artefact; its anchor block is a third copy of a pair already governed on both tracked sides, and keeping it in step is build-astro-pages --check's freshness contract (§53 vertical-down)."
    }
  ],
  "unregistered_backlog": {
    "scripts/lib/canonical-paths.mjs": {
      "importers_at_measurement": 575,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 575 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/baseline.mjs": {
      "importers_at_measurement": 146,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 146 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/public-redaction.mjs": {
      "importers_at_measurement": 36,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 36 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/admin/functions/api/v1/_lib/scenario-testing.js": {
      "importers_at_measurement": 29,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 29 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/reconciliation/lib.mjs": {
      "importers_at_measurement": 29,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 29 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/no-parallel-definition.mjs": {
      "importers_at_measurement": 27,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 27 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/admission.mjs": {
      "importers_at_measurement": 26,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 26 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/browser.mjs": {
      "importers_at_measurement": 26,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 26 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/pdp-bootstrap.mjs": {
      "importers_at_measurement": 24,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 24 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/research/lib/html-text.mjs": {
      "importers_at_measurement": 22,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 22 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/asset-version.mjs": {
      "importers_at_measurement": 17,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 17 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/governed-run-core.mjs": {
      "importers_at_measurement": 17,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 17 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/admin/functions/api/v1/_lib/reality-coupling.js": {
      "importers_at_measurement": 16,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 16 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/default-theme.mjs": {
      "importers_at_measurement": 16,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 16 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/admin/functions/api/v1/_lib/consultant.js": {
      "importers_at_measurement": 15,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 15 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/assert.mjs": {
      "importers_at_measurement": 14,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 14 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/framework-eval.mjs": {
      "importers_at_measurement": 14,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 14 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/site/functions/api/_lib/public-evidence.js": {
      "importers_at_measurement": 13,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 13 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/estate-engine/src/governance.ts": {
      "importers_at_measurement": 12,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 12 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/estate-engine/src/routes/_deferral.ts": {
      "importers_at_measurement": 11,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 11 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/chrome-fragments.mjs": {
      "importers_at_measurement": 11,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 11 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/estate-engine/src/auth.ts": {
      "importers_at_measurement": 10,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 10 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/estate-engine/src/index.ts": {
      "importers_at_measurement": 10,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 10 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/liveness/lib.mjs": {
      "importers_at_measurement": 10,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 10 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/coa/_lib/engine.js": {
      "importers_at_measurement": 9,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 9 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/generated-marker.mjs": {
      "importers_at_measurement": 9,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 9 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/warm-contact-profile-locations.mjs": {
      "importers_at_measurement": 9,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 9 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/canonical-json/index.mjs": {
      "importers_at_measurement": 8,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 8 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/govern/_pdp-lib.mjs": {
      "importers_at_measurement": 8,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 8 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.compliance.attestation.v1.mjs": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/admin/functions/api/v1/admin/partners/_lib/partner-actions.js": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/meter-events.js": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/runtime-evaluate-engine.js": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/v1/onboarding/_lib.js": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/mobile/authority-wallet-demo/src/data/seed.ts": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/publication-conventions.mjs": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/trademark-prose.mjs": {
      "importers_at_measurement": 7,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 7 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/mobile/authority-wallet-demo/src/lib/decision.ts": {
      "importers_at_measurement": 6,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 6 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/widgets/_shared/dom.js": {
      "importers_at_measurement": 6,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 6 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/custody.mjs": {
      "importers_at_measurement": 6,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 6 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/run-state.mjs": {
      "importers_at_measurement": 6,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 6 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/mow-soc-collector/lib/classify.mjs": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/types.ts": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/types.ts": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/admin/functions/api/v1/_lib/queue-handler.js": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/attestation.js": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/dashboard-envelopes.js": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/v1/api-keys/_lib.js": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/astro-page-map.mjs": {
      "importers_at_measurement": 5,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 5 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/authority-bundle/index.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/insight-authority-engine/src/governance.ts": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/api-key-auth.js": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/oss/software-constitution/kit/lib/admission-core.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/oss/software-constitution/kit/orchestration/lib.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/git/assert-remote-admissible.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/bound-notices.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/functional-boot-core.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/governed-inventory-enum.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/media-join.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/npm-script-target.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/registry-projection.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/scoped-chain.mjs": {
      "importers_at_measurement": 4,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 4 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.agent.completion.v1.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.agent.governance.v1.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.billing.meter_event.v1.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/seal-custody/index.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/text-extraction/index.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/insight-authority-engine/src/decision.ts": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/pin.ts": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/types/v3/entities.ts": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/types/v3/library.ts": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/types/v3/state.ts": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/mobile/authority-wallet-demo/src/components/Card.tsx": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/compliance/_parquet-snapshot.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/authority-issuance.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/cascade-inverse.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/coordinates.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/decision-right-authority.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/foreign-matter.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/generated-paths.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/github-credential.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/id-grammar.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/propagator-classification.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/qr.mjs": {
      "importers_at_measurement": 3,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 3 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/css-declaration/index.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.agent.refusal.v1.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.clip_run.v1.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.lifecycle.compensating.v1.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/schema-guard/generated/kye.onboarding.workflow.v1.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/lib/text-extraction/engines.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/document-governance/src/clause-mapping.js": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/document-governance/src/content-safety.js": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/drift-to-authority/map.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/governed-capture/emulate-narration.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/insight-authority-engine/src/seal.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/fallback.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/hash.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/index.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/research-gather/src/perplexity.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/runtime/stripe-chargeback-app/evidence-pack.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/client-v3.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/types/v3/relationships.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "private/sdks/typescript/src/zod.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/entity-tenant.js": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/app/functions/api/_lib/evidence-source.js": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/mobile/authority-wallet-demo/src/types/index.ts": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "public/site/functions/api/_lib/entity-register.js": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/build-enforcer-scope-paths.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/anti-stampede.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/canonical-linkify.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/canonical-schema-corpus.cjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/color-class-scan.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/credential-custody-authority.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/d1-schema.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/declared-audit-events.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/detect-handrolled.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/dev-plane-evidence.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/edge-purpose.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/kit-mirrors.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/kye-id-for-path.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/pages-function-corpus.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/projection-specs.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/r2-sigv4.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/right-sized-exception.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/risk-profiler-score.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/tech-dd-resolve.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    },
    "scripts/lib/whitepaper-freshness.mjs": {
      "importers_at_measurement": 2,
      "measured_at": "2026-09-10",
      "note": "Measured as a shared implementation: imported from 2 distinct files, which is the §0.9 trigger (an artefact referenced from more than one file belongs to a canonical registry). No §40 concept row names it. What concept it implements, and therefore what a competing copy of it would look like, has not been judged — that judgement is the registration this entry is owed."
    }
  }
}