{
  "schema_version": "0.1.0",
  "catalogue_status": "discovery_inventory",
  "authority": "Evidence-derived inventory; not a final implementation-governing SSOT. Preserve source modality and consult conflicts.json.",
  "category": "architecture_runtime",
  "description": "Runtime composition, boundaries, trust surfaces, and described subsystems.",
  "items": [
    {
      "id": "arch.dual_surface",
      "name": "Dual-surface model",
      "kind": "architecture_pattern",
      "description": "Stateful authorization monolith with sharply separated human Owner and cryptographic Key surfaces.",
      "modality": "firm_statement",
      "sources": [
        {
          "file": "docs/seed/Always_Preserve.txt",
          "lines": "1"
        },
        {
          "file": "docs/seed/Description.txt",
          "lines": "1-34"
        }
      ],
      "subcomponents": [
        "Owner Control Plane",
        "Key Execution Plane"
      ]
    },
    {
      "id": "surface.owner",
      "name": "Owner Control Plane",
      "kind": "trust_surface",
      "description": "Human-authenticated browser application for account administration, Primary Author creation, initial ceilings, lineage, provenance, activity, alerts, lifecycle actions, and branch/tenant freezes.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Description.txt",
          "lines": "6-20"
        }
      ]
    },
    {
      "id": "surface.key",
      "name": "Key Execution Plane",
      "kind": "trust_surface",
      "description": "API-only surface for Primary Author, Secondary Author, Use, and Keyring credentials, authenticated by cryptographic signatures; source firmly excludes Owner cookies/password/email auth and bearer Credential ID.",
      "modality": "firm_statement",
      "sources": [
        {
          "file": "docs/seed/Description.txt",
          "lines": "24-34"
        }
      ]
    },
    {
      "id": "runtime.php_monolith",
      "name": "CRE8 PHP Monolith",
      "kind": "runtime",
      "description": "Single PHP runtime process described as starting at public/index.php.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "1-9"
        },
        {
          "file": "docs/seed/Structure.txt",
          "lines": "10-21"
        }
      ],
      "startup_sequence": [
        "Load environment and normalize key sources",
        "Build typed RuntimeConfig",
        "Build DI container with ContainerFactory",
        "Run BootChecks startup assertions",
        "Build Slim app, middleware, and routes with AppFactory and RouteRegistrar"
      ]
    },
    {
      "id": "subsystem.bootstrap",
      "name": "Bootstrap and configuration",
      "kind": "subsystem",
      "description": "Runtime entry, bootstrap, and typed configuration.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "13"
        }
      ],
      "paths": [
        "public/index.php",
        "src/Bootstrap/*",
        "src/Config/*"
      ]
    },
    {
      "id": "subsystem.transport",
      "name": "Transport policy enforcement",
      "kind": "subsystem",
      "description": "HTTP middleware boundary for transport policies.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "14"
        }
      ],
      "paths": [
        "src/Http/Middleware/*"
      ]
    },
    {
      "id": "subsystem.routes",
      "name": "Route orchestration",
      "kind": "subsystem",
      "description": "Central route registration boundary.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "15"
        }
      ],
      "paths": [
        "src/Http/Routes/RouteRegistrar.php"
      ]
    },
    {
      "id": "subsystem.application",
      "name": "Domain services",
      "kind": "subsystem",
      "description": "Application service boundary.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "16"
        }
      ],
      "paths": [
        "src/Application/*/*Service.php"
      ]
    },
    {
      "id": "subsystem.security",
      "name": "Security primitives",
      "kind": "subsystem",
      "description": "Security primitive boundary.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "17"
        }
      ],
      "paths": [
        "src/Security/*"
      ]
    },
    {
      "id": "subsystem.observability",
      "name": "Observability",
      "kind": "subsystem",
      "description": "Observability boundary.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "18"
        }
      ],
      "paths": [
        "src/Observability/*"
      ]
    },
    {
      "id": "subsystem.ui",
      "name": "No-build UI runtime",
      "kind": "subsystem",
      "description": "Static/self-hosted UI runtime described without a build toolchain.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Composition_Dependencies.txt",
          "lines": "19"
        }
      ],
      "paths": [
        "public/ui/*"
      ]
    },
    {
      "id": "service.owner_auth",
      "name": "Owner authentication",
      "kind": "application_component",
      "description": "Authenticates Owner browser users.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "13"
        }
      ]
    },
    {
      "id": "service.enrollment",
      "name": "Key enrollment coordinator",
      "kind": "application_component",
      "description": "Coordinates one-time component claims and public-key registration.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "13"
        },
        {
          "file": "docs/seed/Five_Device_Instantiation.txt",
          "lines": "22-78"
        }
      ]
    },
    {
      "id": "service.request_verifier",
      "name": "Request verifier",
      "kind": "application_component",
      "description": "Verifies fixed-format signed Key API requests.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "14"
        },
        {
          "file": "docs/seed/API_Request_Format.txt",
          "lines": "1-44"
        }
      ]
    },
    {
      "id": "service.permission_evaluator",
      "name": "Permission evaluator",
      "kind": "application_component",
      "description": "Evaluates effective authorization policy and limits.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "14"
        }
      ]
    },
    {
      "id": "service.lifecycle",
      "name": "Key lifecycle manager",
      "kind": "application_component",
      "description": "Manages component/Key rotation, suspension, quarantine, freeze, and revocation.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "15"
        }
      ]
    },
    {
      "id": "service.event_writer",
      "name": "Provenance and event writer",
      "kind": "application_component",
      "description": "Writes provenance and append-only event records.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "15"
        }
      ]
    },
    {
      "id": "service.alert_evaluator",
      "name": "Alert evaluator",
      "kind": "application_component",
      "description": "Evaluates security and operational alert conditions.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "16"
        }
      ]
    },
    {
      "id": "service.handlers",
      "name": "HTML and API handlers",
      "kind": "application_component",
      "description": "Serves the browser and API surfaces.",
      "modality": "source_description",
      "sources": [
        {
          "file": "docs/seed/Structure.txt",
          "lines": "16"
        }
      ]
    }
  ]
}
