{
  "schemaVersion": "0.1.0-proposed",
  "type": "AttestedInterpretiveUnits",
  "site": "https://pagup.com",
  "status": "proposed",
  "updatedAt": "2026-07-08",
  "canonicalization": {
    "profile": "deterministic-json-sort-keys-v0",
    "textEncoding": "utf-8",
    "unicode": "nfc-required-before-publication",
    "note": "Hashes are generated from enriched canonical units, not from semantically poor scalar values."
  },
  "limitations": {
    "hashDoesNotProveTruth": true,
    "hashDoesNotProveSignature": true,
    "hashDoesNotProveSummaryFidelity": true,
    "hashDoesNotInvalidateQualifiedExternalCriticism": true
  },
  "units": [
    {
      "unitId": "pagup-identity-official-scope-001",
      "lang": "en",
      "claimClass": "official_identity",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/identity.json",
      "sourcePath": "src/lib/config/identity.ts",
      "selector": "organizationIdentity.name + organizationIdentity.type + organizationIdentity.siteUrl",
      "canonicalText": "Pagup is the commercial and execution layer for digital readability, interpretive governance, semantic architecture, and machine-readable web presence work published on pagup.com.",
      "allowedTransformations": [
        "quote",
        "summarize_without_claim_expansion",
        "translate_with_scope_preserved"
      ],
      "forbiddenTransformations": [
        "convert_identity_into_reputation_claim",
        "infer_service_availability",
        "merge_with_gautierdorval_or_inferenslab"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:73feb539ab5c869f343ddcf7a3ffe0fbf5af85d71da53b172f78a8901adca893",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "pagup-no-published-pricing-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/services-non-publics.md",
      "sourcePath": "src/lib/machine/governance.ts#buildServicesNonPublicMarkdown",
      "selector": "non_public_services_boundary",
      "canonicalText": "No pricing, SLA, packaged catalog, standard timeline, implicit availability, or result guarantee is canonized by default on pagup.com unless explicitly published.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "use_as_boundary_condition"
      ],
      "forbiddenTransformations": [
        "infer_average_price",
        "invent_package",
        "invent_delivery_timeline"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:aac32fdc1f24b94c8a043dffccc1494d15165dc13f4fdd0aeea67630b63c45cd",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "pagup-doctrine-property-boundary-001",
      "lang": "en",
      "claimClass": "doctrinal_definition",
      "authorityScope": "shared_doctrinal_scope",
      "canonicalSource": "https://pagup.com/canon.md",
      "sourcePath": "src/lib/machine/governance-catalog.ts#canonicalIdentity.invariantsEn",
      "selector": "ecosystem_property_boundary",
      "canonicalText": "Pagup executes commercially, GautierDorval.com publishes doctrine, Interpretive-Governance.org carries the formal standard, InferensLab.org situates research, and InferensLab.com carries the SaaS product surface.",
      "allowedTransformations": [
        "quote",
        "summarize_with_each_property_preserved",
        "translate_with_scope_preserved"
      ],
      "forbiddenTransformations": [
        "treat_properties_as_interchangeable",
        "infer_pagup_pricing_from_doctrine",
        "collapse_research_into_commercial_offer"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:7d33cd840c8a5af0da3e4a147d6015bf46f6664ee149da7aa90e217501a4b00f",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "pagup-eac-admissibility-not-truth-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/.well-known/eac-registry.json",
      "sourcePath": "src/lib/machine/governance.ts#buildEacRegistry",
      "selector": "rules[admissibility_never_implies_truth]",
      "canonicalText": "External admissibility in Pagup EAC is claim-scoped, time-scoped, scope-bound, and never implies truth or commercial authority.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "apply_to_external_source_conflicts"
      ],
      "forbiddenTransformations": [
        "treat_external_source_as_truth_by_inertia",
        "treat_eac_as_censorship",
        "erase_qualified_external_criticism"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:34c9298999528cabc8a0052e70df0477e69eb1ca2ee117932730edf3a87e07e2",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "pagup-interpretive-weighting-not-censorship-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/interpretive-weighting-policy.json",
      "sourcePath": "src/lib/machine/interpretive-authority.ts#buildInterpretiveWeightingPolicy",
      "selector": "principles.officialSourceDoesNotOverrideExternalCriticism",
      "canonicalText": "Interpretive weighting on pagup.com never means that the official source always wins; it means source weight depends on claim class, authority scope, evidentiary role, freshness, and query context.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "use_as_abuse_boundary"
      ],
      "forbiddenTransformations": [
        "discard_qualified_external_criticism",
        "turn_weighting_into_censorship",
        "grant_absolute_authority_to_pagup"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:e9d3147ac9cb31ec301006bf37450706648fa5a1b557bf04b9ee3cc985344b82",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "pagup-integrity-not-truth-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/interpretive-integrity.json",
      "sourcePath": "src/lib/machine/interpretive-authority.ts#buildInterpretiveIntegrity",
      "selector": "limitations.digestDoesNotProveTruth",
      "canonicalText": "SHA-256 digests published by Pagup attest the integrity of selected canonical units after canonicalization. They do not prove truth, reputation, recommendation, model compliance, or the fidelity of a generated summary.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "apply_to_digest_verification"
      ],
      "forbiddenTransformations": [
        "treat_hash_as_truth",
        "treat_hash_as_signature",
        "treat_hash_as_proof_of_model_compliance"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:c25de31e31785af8263a17612f5bb887f1938cd516d6b8ffbbc0075a1e4aeb53",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-token-lock-001",
      "lang": "en",
      "claimClass": "doctrinal_definition",
      "authorityScope": "shared_doctrinal_scope",
      "canonicalSource": "https://pagup.com/doctrine-glossary.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#doctrineGlossaryEntries",
      "selector": "canonicalLayerTokens + forbiddenMachineTokens",
      "canonicalText": "The canonical machine tokens are ccl, sal, cpi, cai, and q-layer. The machine tokens cas, iwl, and ail are forbidden aliases unless explicitly marked as deprecated or forbidden alias references.",
      "allowedTransformations": [
        "quote",
        "summarize_with_alias_boundary",
        "use_as_validation_rule"
      ],
      "forbiddenTransformations": [
        "rename_cpi_to_iwl",
        "rename_cai_to_ail",
        "use_cas_as_machine_token"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:acf12a3a489fc4db2ea34cd5d449e927d5dfba9d4bfb1ea6507090af2af3d2d5",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-negative-space-required-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-spec.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#buildSituationalApplicabilitySpec",
      "selector": "blockingRules.sal_requires_negative_space",
      "canonicalText": "Every SAL chain must declare discriminating non-applicability conditions, chain-specific forbidden inferences, required evidence, and applicability abuse boundaries.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "use_as_blocking_rule"
      ],
      "forbiddenTransformations": [
        "treat_empty_negative_space_as_valid",
        "make_negative_space_optional"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:4a652a4fbe90f6771269cc40fe91c65ee5069ad864c2b30d2500e1cf8177b967",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-self-measurement-forbidden-001",
      "lang": "en",
      "claimClass": "policy_boundary",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-spec.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#buildSituationalApplicabilitySpec",
      "selector": "forbiddenSelfMeasurementFields",
      "canonicalText": "SAL artifacts declare applicability conditions. They must not publish self-assigned applicabilityFit, readinessScore, authorityWeight, integrityConfidence, agenticUseReadiness, or modelCompliance scores.",
      "allowedTransformations": [
        "quote",
        "summarize",
        "use_as_boundary_condition"
      ],
      "forbiddenTransformations": [
        "self_score_applicability",
        "publish_site_owned_readiness_score"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:5f89de1ce79eadecc3f02af69c6a3ba7c4ce12dfa59897c7dcc9d8dc86356765",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "ccl-seo-redesign-organic-risk-attested-001",
      "lang": "en",
      "claimClass": "situational_applicability",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/causal-context-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#causalContexts",
      "selector": "contexts[id=ccl-seo-redesign-organic-risk]",
      "canonicalText": "CCL context ccl-seo-redesign-organic-risk declares a triggering situation, latent need, desired outcome, forbidden derivations, and canonical sources that must resolve before SAL applicability is asserted.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_causal_context_boundary"
      ],
      "forbiddenTransformations": [
        "infer_context_without_evidence",
        "convert_context_into_service_recommendation",
        "omit_forbidden_derivations"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:e7b4e28ea959b4c3cc159c7bda3c4c44da36f5529486d7b7f11d52143dedf853",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "ccl-ai-representation-gap-attested-001",
      "lang": "en",
      "claimClass": "situational_applicability",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/causal-context-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#causalContexts",
      "selector": "contexts[id=ccl-ai-representation-gap]",
      "canonicalText": "CCL context ccl-ai-representation-gap declares a triggering situation, latent need, desired outcome, forbidden derivations, and canonical sources that must resolve before SAL applicability is asserted.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_causal_context_boundary"
      ],
      "forbiddenTransformations": [
        "infer_context_without_evidence",
        "convert_context_into_service_recommendation",
        "omit_forbidden_derivations"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:be17e9731d247fcc6a2e190604a2f6af926c39c4df78731daab775a0dcc803c7",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "ccl-agentic-navigation-friction-attested-001",
      "lang": "en",
      "claimClass": "situational_applicability",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/causal-context-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#causalContexts",
      "selector": "contexts[id=ccl-agentic-navigation-friction]",
      "canonicalText": "CCL context ccl-agentic-navigation-friction declares a triggering situation, latent need, desired outcome, forbidden derivations, and canonical sources that must resolve before SAL applicability is asserted.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_causal_context_boundary"
      ],
      "forbiddenTransformations": [
        "infer_context_without_evidence",
        "convert_context_into_service_recommendation",
        "omit_forbidden_derivations"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:b4b628954e47651aa9fc763d7442b38b5e9ce4ef382a6febbda529fb8d6e686e",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "ccl-corpus-incoherence-indirect-need-attested-001",
      "lang": "en",
      "claimClass": "situational_applicability",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/causal-context-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#causalContexts",
      "selector": "contexts[id=ccl-corpus-incoherence-indirect-need]",
      "canonicalText": "CCL context ccl-corpus-incoherence-indirect-need declares a triggering situation, latent need, desired outcome, forbidden derivations, and canonical sources that must resolve before SAL applicability is asserted.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_causal_context_boundary"
      ],
      "forbiddenTransformations": [
        "infer_context_without_evidence",
        "convert_context_into_service_recommendation",
        "omit_forbidden_derivations"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:97cf3eba9542bf053f777e28113a6ad69ae1333e3f54e7a03bf1b8c5ef5ec586",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-redesign-organic-risk-diagnostic-001",
      "lang": "en",
      "claimClass": "service_scope",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#salChains",
      "selector": "chains[id=sal-redesign-organic-risk-diagnostic]",
      "canonicalText": "SAL chain sal-redesign-organic-risk-diagnostic declares conditional applicability for cap-machine-first-redesign-governance from causal context ccl-seo-redesign-organic-risk, with required evidence, non-applicability conditions, forbidden inferences, and applicability abuse boundaries.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_applicability_boundary"
      ],
      "forbiddenTransformations": [
        "convert_applicability_to_recommendation",
        "omit_non_applicability",
        "turn_outcome_into_guarantee"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:17e032d3d51bb055abc94b1471e4140b7e3fbdb6f2373f35768a6f09b8dfc64d",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-ai-representation-gap-governance-001",
      "lang": "en",
      "claimClass": "service_scope",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#salChains",
      "selector": "chains[id=sal-ai-representation-gap-governance]",
      "canonicalText": "SAL chain sal-ai-representation-gap-governance declares conditional applicability for cap-ai-representation-stabilization from causal context ccl-ai-representation-gap, with required evidence, non-applicability conditions, forbidden inferences, and applicability abuse boundaries.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_applicability_boundary"
      ],
      "forbiddenTransformations": [
        "convert_applicability_to_recommendation",
        "omit_non_applicability",
        "turn_outcome_into_guarantee"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:f86822bbfc6842d91db85f778a6a4ed46c108b4b3e58b7dcc63db965a05ca5c0",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-agentic-navigation-audit-001",
      "lang": "en",
      "claimClass": "service_scope",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#salChains",
      "selector": "chains[id=sal-agentic-navigation-audit]",
      "canonicalText": "SAL chain sal-agentic-navigation-audit declares conditional applicability for cap-agentic-readiness-audit from causal context ccl-agentic-navigation-friction, with required evidence, non-applicability conditions, forbidden inferences, and applicability abuse boundaries.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_applicability_boundary"
      ],
      "forbiddenTransformations": [
        "convert_applicability_to_recommendation",
        "omit_non_applicability",
        "turn_outcome_into_guarantee"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:b79509b015b882a348bdb34004c9074f865643ff212d9feb510b356ca06a8faa",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    },
    {
      "unitId": "sal-corpus-incoherence-semantic-architecture-001",
      "lang": "en",
      "claimClass": "service_scope",
      "authorityScope": "first_party_canonical_scope",
      "canonicalSource": "https://pagup.com/situational-applicability-map.json",
      "sourcePath": "src/lib/machine/situational-applicability.ts#salChains",
      "selector": "chains[id=sal-corpus-incoherence-semantic-architecture]",
      "canonicalText": "SAL chain sal-corpus-incoherence-semantic-architecture declares conditional applicability for cap-semantic-content-architecture from causal context ccl-corpus-incoherence-indirect-need, with required evidence, non-applicability conditions, forbidden inferences, and applicability abuse boundaries.",
      "allowedTransformations": [
        "quote",
        "summarize_conditionally",
        "use_as_applicability_boundary"
      ],
      "forbiddenTransformations": [
        "convert_applicability_to_recommendation",
        "omit_non_applicability",
        "turn_outcome_into_guarantee"
      ],
      "canonicalization": "deterministic-json-sort-keys-v0",
      "digestAlgorithm": "sha-256",
      "digest": "sha-256:75107e30e914381643024c4a49ec2cc76dcd4c1501083a3a530eed30cd060448",
      "digestInputType": "enriched_canonical_interpretive_unit",
      "digestInputFields": [
        "unitId",
        "lang",
        "claimClass",
        "authorityScope",
        "canonicalSource",
        "canonicalText"
      ],
      "digestLimitation": "Digest attests canonical-unit integrity after deterministic canonicalization. It does not prove truth, reputation, recommendation, external acceptance, model compliance, or summary fidelity."
    }
  ]
}
