{
  "rows": [
    {
      "id": "capability-floor",
      "canonical": "capability floor",
      "family": "policy-capability",
      "kind": "concept",
      "definition": "The deployable, declarative authorization layer that defines exactly which tools an agent may call by name, loaded as a JSON manifest at runtime.",
      "distinction": "The abstract authorization INTENT - NOT the policy manifest (its on-disk JSON) and NOT the adjudicator (the enforcer that consults it).",
      "distinct_from": ["policy-manifest", "adjudicator"],
      "aliases": [],
      "grounding": "capability",
      "grounding_kind": "claims",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "policy-manifest",
      "canonical": "policy manifest",
      "family": "policy-capability",
      "kind": "config",
      "definition": "The versioned JSON structure an operator edits to configure the capability floor, mapping 1:1 to adjudicator.Policy with deny reasons validated against the closed vocabulary.",
      "distinction": "The on-disk JSON REPRESENTATION - NOT the capability floor (the abstract intent) and NOT Policy (the compiled in-memory form).",
      "distinct_from": ["capability-floor", "policy-loaded"],
      "aliases": [],
      "grounding": "policy",
      "grounding_kind": "path",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "capability-floor",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "policy-loaded",
      "canonical": "Policy (loaded)",
      "family": "policy-capability",
      "kind": "symbol",
      "definition": "The in-memory decision table compiled from a manifest, holding allow-lists, deny maps, arg predicates, posture, and secret patterns the adjudicator consults.",
      "distinction": "The COMPILED in-memory table - NOT the manifest (the on-disk JSON) and NOT the adjudicator (the enforcer that reads it).",
      "distinct_from": ["policy-manifest", "adjudicator"],
      "aliases": ["compiled policy"],
      "grounding": "policy",
      "grounding_kind": "symbol",
      "glossary_anchor": "",
      "parent": "policy-manifest",
      "verdict": "defined",
      "gaps": ["the compiled-Policy vs manifest distinction is defined-only"]
    },
    {
      "id": "adjudicator",
      "canonical": "adjudicator",
      "family": "policy-capability",
      "kind": "subsystem",
      "definition": "The in-process DOS reference monitor: the rung that folds a decision chain to prove a tool call allowed, denied, or deferred under the loaded policy.",
      "distinction": "The ENFORCER - NOT policy (the rule table it consults) and NOT a verdict (the decision it returns).",
      "distinct_from": ["policy-loaded", "verdict", "preflight-ladder"],
      "aliases": ["reference monitor"],
      "grounding": "adjudicator",
      "grounding_kind": "path",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "verdict",
      "canonical": "abi.Verdict",
      "family": "policy-capability",
      "kind": "symbol",
      "definition": "The discriminated-union decision an adjudicator returns, keyed by kind (Allow, Deny, Defer, Transform, Quarantine, RequireWitness) with typed payloads.",
      "distinction": "The full DECISION (kind + payload + reason) - NOT a reason code (only the WHY of a deny) and NOT session.Verdict (the per-turn boundary gate).",
      "distinct_from": ["reason-code", "adjudicator"],
      "aliases": [],
      "grounding": "verdict",
      "grounding_kind": "symbol",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "reason-code",
      "canonical": "reason code",
      "family": "policy-capability",
      "kind": "symbol",
      "definition": "The closed, additive vocabulary of refusal reasons (DEFAULT_DENY, POLICY_BLOCK, SELF_MODIFY, ...) that every deny verdict cites, never free text.",
      "distinction": "The WHY of a deny (closed vocabulary) - NOT the verdict (the WHAT, which embeds the reason) and NOT posture (the default-deny behavior).",
      "distinct_from": ["verdict", "posture"],
      "aliases": [],
      "grounding": "reasoncode",
      "grounding_kind": "symbol",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "verdict",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "posture",
      "canonical": "posture (tool admission)",
      "family": "policy-capability",
      "kind": "config",
      "definition": "The policy's default behavior after all provable refusal checks pass: PostureFailClosed (deny everything not allowed) or PostureAdmitAndLog (admit low-risk reads with forensic metadata).",
      "distinction": "The CALL-admit default-deny knob - NOT secret posture (the RESULT-bearing-a-credential knob) and NOT a reason code.",
      "distinct_from": ["reason-code", "preflight-ladder"],
      "aliases": [],
      "grounding": "posture",
      "grounding_kind": "symbol",
      "glossary_anchor": "docs/fak/concept-glossary.md",
      "parent": "",
      "verdict": "crystal",
      "gaps": []
    },
    {
      "id": "preflight-ladder",
      "canonical": "preflight ladder",
      "family": "policy-capability",
      "kind": "subsystem",
      "definition": "The cheapest-first well-formedness rung ladder that catches malformed / unsafe calls before they fire, registered ahead of the authoritative monitor.",
      "distinction": "STATIC well-formedness checks (parse, schema) - NOT the adjudicator (authorization enforcement) and NOT a single rung within it.",
      "distinct_from": ["adjudicator", "posture"],
      "aliases": [],
      "grounding": "preflight",
      "grounding_kind": "path",
      "glossary_anchor": "",
      "parent": "",
      "verdict": "defined",
      "gaps": ["preflight ladder vs adjudicator vs rung not yet fully in the glossary"]
    }
  ]
}
