{
  "schema": "nexuscrm.serviceification.release-inventory.r1a.v1",
  "status": "descriptive_current_state_not_release_authority",
  "audited_at": "2026-07-13",
  "tracking_issue": "https://github.com/pingcap-inc/NexusCRM/issues/3624",
  "repositories": [
    {
      "name": "pingcap-inc/NexusCRM",
      "revision": "c9736c2da0e718980e7a8d8fe4d51a8b5133ace4",
      "release_identity": "source_commit"
    },
    {
      "name": "pingcap-inc/nexuscrm-contract",
      "revision": "917886fc6920e97f8ed93615629865a53cde8407",
      "release_identity": "annotated_module_tags"
    },
    {
      "name": "pingcap-inc/nexuscrm-controlplane",
      "revision": "2a760135ecc202c016ed9e3e2268357974cce65a",
      "release_identity": "annotated_module_tags"
    },
    {
      "name": "pingcap-inc/nexuscrm-api-host",
      "revision": "5930bcbb4bb46b709a69e1ce3a55372392834e31",
      "release_identity": "annotated_module_tags"
    },
    {
      "name": "pingcap-inc/nexuscrm-connectors",
      "revision": "a4ff1938780b98b75ca6254e8bcef0c424ba5de9",
      "release_identity": "annotated_module_tags"
    },
    {
      "name": "pingcap-inc/nexuscrm-app-packs",
      "revision": "fc22e2049a41e5a1558ed07fdc1608d02439e9db",
      "release_identity": "source_commit_and_per_pack_manifest"
    },
    {
      "name": "pingcap-inc/nexuscrm-pingcap-pack",
      "revision": "330f27e7c3a96526e1d2eacc77bf5d86599cf9dc",
      "release_identity": "source_commit_or_annotated_staging_release_tag"
    }
  ],
  "artifacts": [
    {
      "id": "contract-root-go-module",
      "class": "l0_go_module",
      "owner": "pingcap-inc/nexuscrm-contract",
      "current_audited_release": "v0.1.7",
      "current_nexuscrm_pin": "v0.1.5",
      "authoritative_version_or_ref": "consumer-selected semantic-version tag",
      "build_input_commit_or_tag": "v0.1.5 for current NexusCRM; audited latest v0.1.7 peels to 917886fc6920e97f8ed93615629865a53cde8407",
      "publication_destination": "private Git repository consumed through Go module download",
      "installation_or_deployment_input": "backend/go.mod and backend/distributions/go.mod require version",
      "compatibility_assumptions": "root contract API remains source-compatible with the pinned consumer; no runtime artifact negotiation",
      "publication": "Git tag and Go module source fetch; no GitHub Release asset",
      "consumer": "NexusCRM backend and distribution modules",
      "immutable_identity": true,
      "checksum_or_provenance": "consumer go.sum only",
      "rollback": "repin and rebuild consumer",
      "evidence": [
        "pingcap-inc/nexuscrm-contract@917886fc6920e97f8ed93615629865a53cde8407:refs/tags/v0.1.7^{}",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:14-18"
      ]
    },
    {
      "id": "contract-wire-go-module",
      "class": "generated_wire_go_module",
      "owner": "pingcap-inc/nexuscrm-contract",
      "current_audited_release": "wire-go/v0.1.1",
      "current_nexuscrm_pin": "v0.1.1",
      "authoritative_version_or_ref": "nested-module semantic-version tag",
      "build_input_commit_or_tag": "wire-go/v0.1.1",
      "publication_destination": "private Git repository consumed through Go module download",
      "installation_or_deployment_input": "backend/go.mod and backend/distributions/go.mod wire-go require version",
      "compatibility_assumptions": "protobuf compatibility fixture and generated-code checks pass; caller and host support the same protocol/capability envelope",
      "publication": "Nested Go module tag; generated code committed in source",
      "consumer": "NexusCRM backend/runtime and api-host",
      "immutable_identity": true,
      "checksum_or_provenance": "consumer go.sum plus deterministic generation check",
      "rollback": "repin and rebuild consumer",
      "evidence": [
        "pingcap-inc/nexuscrm-contract@917886fc6920e97f8ed93615629865a53cde8407:wire-go/go.mod:1-11",
        "pingcap-inc/nexuscrm-contract@917886fc6920e97f8ed93615629865a53cde8407:.github/workflows/contract.yml:11-38",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:14-18"
      ]
    },
    {
      "id": "controlplane-go-module",
      "class": "l0_go_module",
      "owner": "pingcap-inc/nexuscrm-controlplane",
      "current_audited_release": "v0.1.20",
      "current_nexuscrm_pin": "v0.1.20",
      "authoritative_version_or_ref": "consumer-selected semantic-version tag",
      "build_input_commit_or_tag": "v0.1.20, peeled commit 75e9e7e650721f26882b6346c630914e62f61e76",
      "publication_destination": "private Git repository consumed through Go module download",
      "installation_or_deployment_input": "backend/go.mod require version compiled into setup and server",
      "compatibility_assumptions": "the selected controlplane supports the selected NexusCRM core pseudo-version closure and pack grammar",
      "publication": "Git tag and Go module source fetch; no checked-in publication workflow",
      "consumer": "NexusCRM setup/runtime composition",
      "immutable_identity": true,
      "checksum_or_provenance": "consumer go.sum only",
      "rollback": "repin and rebuild consumer; data changes remain forward state",
      "evidence": [
        "pingcap-inc/nexuscrm-controlplane@2a760135ecc202c016ed9e3e2268357974cce65a:refs/tags/v0.1.20^{}",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:14-18"
      ]
    },
    {
      "id": "api-host-go-module",
      "class": "l0_go_module",
      "owner": "pingcap-inc/nexuscrm-api-host",
      "current_audited_release": "v0.4.0",
      "current_nexuscrm_pin": "v0.4.0",
      "authoritative_version_or_ref": "consumer-selected semantic-version tag",
      "build_input_commit_or_tag": "v0.4.0, peeled commit 5930bcbb4bb46b709a69e1ce3a55372392834e31",
      "publication_destination": "private Git repository consumed through Go module download",
      "installation_or_deployment_input": "backend and distribution go.mod require version",
      "compatibility_assumptions": "host primitives remain compatible with the pinned contract and wire-go versions in its own go.mod",
      "publication": "Git tag and Go module source fetch; no checked-in publication workflow",
      "consumer": "NexusCRM backend and distribution modules",
      "immutable_identity": true,
      "checksum_or_provenance": "consumer go.sum only",
      "rollback": "repin and rebuild consumer",
      "evidence": [
        "pingcap-inc/nexuscrm-api-host@5930bcbb4bb46b709a69e1ce3a55372392834e31:refs/tags/v0.4.0^{}",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:118"
      ]
    },
    {
      "id": "connectors-go-module",
      "class": "l0_go_module",
      "owner": "pingcap-inc/nexuscrm-connectors",
      "current_audited_release": "v0.1.16",
      "current_nexuscrm_pin": "v0.1.16",
      "authoritative_version_or_ref": "consumer-selected semantic-version tag",
      "build_input_commit_or_tag": "v0.1.16, peeled commit ea55154eb1098eea6af2afd76d09e6ce365558b2",
      "publication_destination": "private Git repository consumed through Go module download",
      "installation_or_deployment_input": "backend and distribution go.mod require version",
      "compatibility_assumptions": "connector runtime remains compatible with the selected contract and the metadata declarations installed from packs",
      "publication": "Git tag and Go module source fetch; no checked-in publication workflow",
      "consumer": "NexusCRM backend and distribution modules",
      "immutable_identity": true,
      "checksum_or_provenance": "consumer go.sum only",
      "rollback": "repin and rebuild consumer",
      "evidence": [
        "pingcap-inc/nexuscrm-connectors@a4ff1938780b98b75ca6254e8bcef0c424ba5de9:refs/tags/v0.1.16^{}",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:14-18"
      ]
    },
    {
      "id": "nexuscrm-core-module-closure",
      "class": "l0_source_release",
      "owner": "pingcap-inc/NexusCRM",
      "current_audited_release": "c9736c2da0e718980e7a8d8fe4d51a8b5133ace4",
      "authoritative_version_or_ref": "exact NexusCRM Git commit",
      "build_input_commit_or_tag": "c9736c2da0e718980e7a8d8fe4d51a8b5133ace4 for this audit; deployment selects another exact commit through lineage/tag payload",
      "publication_destination": "Git repository and Go VCS source fetch",
      "installation_or_deployment_input": "L2 UPSTREAM_REF / resolved upstream commit",
      "compatibility_assumptions": "all core modules come from one NexusCRM commit and the selected external L0 module pins compile together",
      "publication": "Git commit; internal workspace uses local v0.0.0 replacements",
      "consumer": "NexusCRM commands and separately tagged L0 modules via pinned pseudo-versions",
      "immutable_identity": true,
      "checksum_or_provenance": "Git object identity; no release attestation",
      "rollback": "select an older NexusCRM commit and rebuild",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:10-18",
        "pingcap-inc/nexuscrm-controlplane@2a760135ecc202c016ed9e3e2268357974cce65a:go.mod:101-131"
      ]
    },
    {
      "id": "crm-backend-and-setup-binaries",
      "class": "l0_l1_composed_binaries",
      "owner": "pingcap-inc/NexusCRM",
      "authoritative_version_or_ref": "none as standalone binaries; derived from selected NexusCRM and app-packs source refs",
      "build_input_commit_or_tag": "selected NexusCRM commit plus CRM distribution/app-packs source checkout",
      "publication_destination": "CI-local backend image or L2 PR-UAT image; production uses environment-local go build cache/go run",
      "installation_or_deployment_input": "NexusCRM upstream ref, app-packs ref, CRM build tag and generated runtime environment",
      "compatibility_assumptions": "CRM distribution source and selected L1 dialect/pack source compile against the selected L0 module pins",
      "publication": "Built into local CI image and L2 PR-UAT image; production host otherwise runs source through go run",
      "consumer": "CI/PR-UAT image entrypoints; source-based environment systemd runners",
      "immutable_identity": false,
      "checksum_or_provenance": "No standalone binary digest or attestation",
      "rollback": "rebuild selected source tuple or reselect prior production release directory",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/backend.Dockerfile:192-200",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/common.py:2716-2769"
      ]
    },
    {
      "id": "runtime-api-image",
      "class": "l0_service_image",
      "owner": "pingcap-inc/NexusCRM",
      "authoritative_version_or_ref": "none published; CI label uses NexusCRM GITHUB_SHA",
      "build_input_commit_or_tag": "current NexusCRM CI commit",
      "publication_destination": "Docker daemon on NexusCRM CI runner only",
      "installation_or_deployment_input": "CI target runtime-api; generic compose input NEXUSCRM_RUNTIME_API_IMAGE is not a production pin",
      "compatibility_assumptions": "runtime config validates and the pinned contract/wire/host modules compile; no production client/server version matrix is recorded here",
      "publication": "CI-local Docker tag only",
      "consumer": "Runtime image smoke test; generic compose/kustomize examples use dev tags",
      "immutable_identity": false,
      "checksum_or_provenance": "OCI version label in local image; no registry digest, SBOM, or attestation",
      "rollback": "not deployed in the audited production flow",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime.Dockerfile:113-136",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:.github/workflows/go-ci.yml:536-557",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime/compose.yaml:1-17"
      ]
    },
    {
      "id": "runtime-worker-image",
      "class": "l0_service_image",
      "owner": "pingcap-inc/NexusCRM",
      "authoritative_version_or_ref": "none published; CI label uses NexusCRM GITHUB_SHA",
      "build_input_commit_or_tag": "current NexusCRM CI commit",
      "publication_destination": "Docker daemon on NexusCRM CI runner only",
      "installation_or_deployment_input": "CI target runtime-worker; generic compose input NEXUSCRM_RUNTIME_WORKER_IMAGE is not a production pin",
      "compatibility_assumptions": "runtime config validates and the worker skeleton compiles with the selected L0 module closure",
      "publication": "CI-local Docker tag only",
      "consumer": "Runtime image smoke test; generic compose/kustomize examples use dev tags",
      "immutable_identity": false,
      "checksum_or_provenance": "OCI version label in local image; no registry digest, SBOM, or attestation",
      "rollback": "not deployed in the audited production flow",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime.Dockerfile:113-147",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:.github/workflows/go-ci.yml:536-557",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime/kubernetes/base/kustomization.yaml:1-11"
      ]
    },
    {
      "id": "l1-appservice-artifact",
      "class": "optional_l1_service",
      "owner": null,
      "authoritative_version_or_ref": "absent",
      "build_input_commit_or_tag": "absent",
      "publication_destination": "absent",
      "installation_or_deployment_input": "absent",
      "compatibility_assumptions": "not applicable until a separate product decision creates an AppService",
      "publication": "absent",
      "consumer": "none",
      "immutable_identity": false,
      "checksum_or_provenance": "not applicable",
      "rollback": "not applicable",
      "evidence": [
        "pingcap-inc/nexuscrm-app-packs@fc22e2049a41e5a1558ed07fdc1608d02439e9db:repository-wide command/Dockerfile/workflow inventory"
      ]
    },
    {
      "id": "frontend-bundle",
      "class": "l0_host_plus_l1_l2_frontend_bundle",
      "owner": "build workflow or deployment runner",
      "authoritative_version_or_ref": "none as a standalone artifact; derived source closure",
      "build_input_commit_or_tag": "selected NexusCRM commit plus materialized app-packs/final-pack frontend source revision",
      "publication_destination": "CI workspace, PR-UAT image layer, or environment-local frontend version directory",
      "installation_or_deployment_input": "NexusCRM ref, frontend app-packs source ref, L2 frontend overlay and public URL build inputs",
      "compatibility_assumptions": "source provisioner and source-manifest contract supported by the selected NexusCRM frontend; API remains compatible with selected backend",
      "publication": "CI build output, PR-UAT image layer, or environment-local version directory",
      "consumer": "nginx/static host in the same deployment",
      "immutable_identity": false,
      "checksum_or_provenance": "version.json and source refs; no independently published bundle digest",
      "rollback": "reselect retained environment-local release directory; otherwise rebuild",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:frontend/package.json:6-12",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/common.py:2616-2674"
      ]
    },
    {
      "id": "l1-metadata-packages",
      "class": "l1_metadata_source",
      "owner": "pingcap-inc/nexuscrm-app-packs",
      "authoritative_version_or_ref": "exact app-packs Git commit plus per-pack manifest/source identity",
      "build_input_commit_or_tag": "resolved official app-packs commit and selected pack path",
      "publication_destination": "Git source tree; later copied/merged into installed or final pack",
      "installation_or_deployment_input": "official_repo:<pack>, OFFICIAL_APP_PACKS_REF and pack source revision lock",
      "compatibility_assumptions": "pack platformCompatibility/hostRequirements and NexusCRM accepted source revisions pass before activation",
      "publication": "Git source commit and per-pack pack.json",
      "consumer": "controlplane official_repo source resolver and L2 final-pack builder",
      "immutable_identity": true,
      "checksum_or_provenance": "source revision plus installed payload hash; pack semantic version is separate",
      "rollback": "install/reapply an accepted source revision subject to forward schema compatibility",
      "evidence": [
        "pingcap-inc/nexuscrm-app-packs@fc22e2049a41e5a1558ed07fdc1608d02439e9db:salesforce-crm-standard/pack.json:1-11",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/distributions/appsource/source.go:3-27"
      ]
    },
    {
      "id": "l1-frontend-source",
      "class": "l1_frontend_source",
      "owner": "pingcap-inc/nexuscrm-app-packs",
      "authoritative_version_or_ref": "exact app-packs source commit or materialized synthetic source commit",
      "build_input_commit_or_tag": "resolved app-packs commit plus final-pack frontend source/overlay",
      "publication_destination": "Git source tree or temporary synthetic Git source consumed by frontend build",
      "installation_or_deployment_input": "NEXUSCRM_FRONTEND_APP_PACKS_ROOT and NEXUSCRM_FRONTEND_APP_PACKS_REF",
      "compatibility_assumptions": "selected NexusCRM provisioner supports the source manifest and all declared frontend entrypoints compile",
      "publication": "Git source commit and source manifests",
      "consumer": "NexusCRM frontend provisioner or L2 synthetic frontend source materializer",
      "immutable_identity": true,
      "checksum_or_provenance": "source manifest and generated source commit; no standalone bundle digest",
      "rollback": "rebuild with a prior source tuple",
      "evidence": [
        "pingcap-inc/nexuscrm-app-packs@fc22e2049a41e5a1558ed07fdc1608d02439e9db:frontend/source-index.json:1-13",
        "pingcap-inc/nexuscrm-app-packs@fc22e2049a41e5a1558ed07fdc1608d02439e9db:salesforce-crm-standard/frontend/source-manifest.json:1-12",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/distributions/appsource/source.go:15-20"
      ]
    },
    {
      "id": "l2-overlay-and-final-pack",
      "class": "l2_metadata_and_composed_pack",
      "owner": "pingcap-inc/nexuscrm-pingcap-pack",
      "authoritative_version_or_ref": "downstream Git commit plus final-pack tree hash and .build-lineage.json",
      "build_input_commit_or_tag": "downstream commit, NexusCRM commit, official app-packs commit, stack.lock and L2 source inputs",
      "publication_destination": "committed L2 Git tree and optional short-lived GitHub Actions artifact",
      "installation_or_deployment_input": "stack.lock pack list/final_pack_path and final-pack lineage refs/hash",
      "compatibility_assumptions": "builder/audit gates pass; selected pack metadata is compatible with selected NexusCRM/controlplane and L2 overlay merge rules",
      "publication": "Committed Git trees with build-lineage JSON; optional 14-day Actions verification artifact",
      "consumer": "setup/controlplane and all release-class L2 deployment flows",
      "immutable_identity": true,
      "checksum_or_provenance": "stack-lock hash, source SHAs, manifest hashes, final-pack hash; no signature or attestation",
      "rollback": "rebuild/redeploy a prior Git tuple; database mutations are not reversed automatically",
      "evidence": [
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:stack.lock.json:1-9",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:packs/NOT-EDIT-final-merged-packs/.build-lineage.json:1-28",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:.github/workflows/release-tuple-gate.yml:276-299"
      ]
    },
    {
      "id": "release-tuple-verification-input",
      "class": "l2_reproducibility_input",
      "owner": "pingcap-inc/nexuscrm-pingcap-pack",
      "authoritative_version_or_ref": "committed release/release-tuple.json content",
      "build_input_commit_or_tag": "exact NexusCRM and app-packs commits plus checked stack-lock/final-pack hash",
      "publication_destination": "L2 Git tree and Release Tuple Gate Actions artifact",
      "installation_or_deployment_input": "--from-release-tuple / release tuple gate; not the normal production deploy input",
      "compatibility_assumptions": "remote commits exist and deterministic final-pack rebuild matches the recorded hash",
      "publication": "Committed JSON",
      "consumer": "Release Tuple Gate and explicit tuple rebuild mode",
      "immutable_identity": true,
      "checksum_or_provenance": "exact Git SHAs and final-pack SHA-256",
      "rollback": "select prior committed tuple and rebuild",
      "evidence": [
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:release/release-tuple.json:1-16",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:scripts/validate_release_tuple.py:19-76"
      ]
    },
    {
      "id": "staging-release-tag",
      "class": "l2_release_candidate",
      "owner": "pingcap-inc/nexuscrm-pingcap-pack",
      "authoritative_version_or_ref": "annotated staging-release Git tag and embedded release-metadata JSON",
      "build_input_commit_or_tag": "successful staging workflow head plus resolved NexusCRM/app-packs commits and final-pack hash",
      "publication_destination": "L2 Git tag namespace plus GitHub Actions tag-payload artifact",
      "installation_or_deployment_input": "release_tag workflow input",
      "compatibility_assumptions": "staging evidence, app-shell evidence, resolved refs and final-pack hash pass tag eligibility checks",
      "publication": "Annotated Git tag plus short-lived Actions payload artifact",
      "consumer": "production and release-tag-capable L2 deployment workflows",
      "immutable_identity": true,
      "checksum_or_provenance": "resolved source commits, final-pack hash, source workflow/run evidence in tag payload",
      "rollback": "redeploy prior eligible release tag",
      "evidence": [
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deployments/offline/runtime/emit_staging_release_tag.py:121-199",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:.github/workflows/emit-staging-release-tag.yml:232-263"
      ]
    },
    {
      "id": "production-release-directory",
      "class": "l2_environment_local_release",
      "owner": "pingcap-inc/nexuscrm-pingcap-pack deployment workflow",
      "authoritative_version_or_ref": "required staging release tag resolved to exact downstream/upstream/app-packs commits",
      "build_input_commit_or_tag": "release tag payload and its selected source commits",
      "publication_destination": "production host version directory plus systemd/nginx current pointers",
      "installation_or_deployment_input": "release_tag, environment configuration/secrets and existing database",
      "compatibility_assumptions": "selected sources rebuild, setup/apply/verify succeeds, target backend/frontend health passes, and old code remains forward-compatible with DB state for rollback",
      "publication": "Environment-local source worktrees, generated runner, frontend bundle, env and release JSON",
      "consumer": "systemd and nginx on the production host",
      "immutable_identity": false,
      "checksum_or_provenance": "release tag, three resolved refs, final-pack hash and local paths; no binary/frontend digest",
      "rollback": "deploy/reselect a retained older release tag/directory; shared database remains forward state",
      "evidence": [
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/deploy_multi_prod_env.py:1472-1504",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/deploy_multi_prod_env.py:1697-1737",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/deploy_multi_prod_env.py:1867-1912"
      ]
    },
    {
      "id": "pr-uat-all-in-one-image",
      "class": "l2_validation_image",
      "owner": "pingcap-inc/nexuscrm-pingcap-pack",
      "authoritative_version_or_ref": "mutable ECR tag derived from PR and downstream SHA prefix",
      "build_input_commit_or_tag": "PR downstream commit plus final-pack lineage NexusCRM/app-packs refs",
      "publication_destination": "ECR repository configured by PR_UAT_ECR_REPOSITORY",
      "installation_or_deployment_input": "scripts/pr_uat_ecs.py up --image tag plus source refs/final-pack hash",
      "compatibility_assumptions": "all-in-one image build, branch setup and ECS health pass; image digest is currently optional and omitted by workflow",
      "publication": "ECR repository configured by workflow variable",
      "consumer": "PR-UAT ECS task",
      "immutable_identity": false,
      "checksum_or_provenance": "source refs and one final-pack hash in manifest; workflow passes an image tag but not an image digest",
      "rollback": "delete/recreate ephemeral PR environment",
      "evidence": [
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:.github/workflows/pr-uat-ecs-exp.yml:300-345",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:scripts/pr_uat_ecs.py:264-303",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:scripts/build_pr_uat_ecs_image.sh:246-271"
      ]
    },
    {
      "id": "schema-and-migration-program",
      "class": "database_migration_artifact",
      "owner": "NexusCRM setup composition plus pinned controlplane and selected metadata packs",
      "authoritative_version_or_ref": "implicit closure; no single current release identity",
      "build_input_commit_or_tag": "selected NexusCRM/controlplane commits, selected pack payloads, optional patch bundle and current DB state",
      "publication_destination": "compiled/source setup path and metadata pack source; effects/stamps persist in the target database",
      "installation_or_deployment_input": "setup apply/apply-if-needed flags, pack sources, optional patch directory and database connection",
      "compatibility_assumptions": "migrations are idempotent/forward-convergent and the selected application remains compatible with the resulting schema and installed metadata",
      "publication": "Compiled/source code and pack payloads, not a separately versioned migration bundle",
      "consumer": "setup apply/apply-if-needed during deployment",
      "immutable_identity": false,
      "checksum_or_provenance": "migration IDs/stamps and installed-pack payload hashes in database; deployment tuple has no complete schema-program digest",
      "rollback": "forward repair/reapply or environment database branch reset where supported; production code rollback does not reverse schema/data",
      "evidence": [
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/internal/setupcmd/setup.go:58-109",
        "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/internal/setupcmd/setup.go:154-204",
        "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deployments/deployment-config.json:279-287"
      ]
    }
  ],
  "deployment_inputs": [
    {
      "id": "release-source-selection",
      "owner": "L2 release workflow and final-pack lineage",
      "input_names": ["release_tag", "DOWNSTREAM_REF", "UPSTREAM_REF", "OFFICIAL_APP_PACKS_REF", "LINEAGE_PATH"],
      "consumers": ["staging/test/watchdog deploy", "production prepare/deploy", "PR-UAT builder"],
      "identity_class": "immutable for release-tag/final-lineage flows; mutable only in explicit CI/EXP debug flows",
      "evidence": ["pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:scripts/resolve_deploy_refs.py:32-64", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deployments/offline/runtime/emit_staging_release_tag.py:132-199"]
    },
    {
      "id": "l0-module-build-closure",
      "owner": "selected NexusCRM source commit and each tagged L0 module",
      "input_names": ["backend/go.mod", "backend/go.sum", "backend/distributions/go.mod", "backend/distributions/go.sum", "Go toolchain", "CRM build tag"],
      "consumers": ["CRM server/setup build", "runtime-api build", "runtime-worker build", "production go run"],
      "identity_class": "module versions immutable; toolchain/base-image identity not recorded in one production BOM",
      "evidence": ["pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/go.mod:1-27", "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/backend.Dockerfile:20-57"]
    },
    {
      "id": "pack-composition-and-install",
      "owner": "L1 pack publisher for L1 source; L2 delivery repo for overlay/composition; controlplane for install mechanism",
      "input_names": ["stack.lock.json", "app_shell_config", "official_pack_path", "intermediate_pack_path", "final_pack_path", "packs[]", "final_pack_hash", "pack source revision"],
      "consumers": ["final-pack builder/auditor", "setup apply/install/reapply", "frontend source materializer"],
      "identity_class": "source commits and recorded hashes immutable; pack semantic version and source/payload identities remain separate facts",
      "evidence": ["pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:stack.lock.json:1-9", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:stack.lock.json:89-93", "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/internal/setupcmd/setup.go:154-204"]
    },
    {
      "id": "frontend-build",
      "owner": "NexusCRM host source, L1 frontend source, L2 frontend overlay and deployment runner",
      "input_names": ["NexusCRM ref", "NEXUSCRM_FRONTEND_APP_PACKS_ROOT", "NEXUSCRM_FRONTEND_APP_PACKS_REF", "L2 frontend overlay", "public URL/base path build variables", "package-lock.json"],
      "consumers": ["NexusCRM frontend build", "PR-UAT image", "environment-local nginx bundle"],
      "identity_class": "source refs can be immutable; final bundle has no current standalone digest",
      "evidence": ["pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:frontend/package.json:6-12", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/common.py:2616-2674"]
    },
    {
      "id": "schema-metadata-data-convergence",
      "owner": "NexusCRM setup composition, controlplane, selected pack publishers and authorized L2 patch owner",
      "input_names": ["setup subcommand/options", "pack sources", "optional patch directory/manifest", "database connection", "existing migration/install stamps"],
      "consumers": ["setup apply/apply-if-needed", "pack install/reapply", "deployment verification"],
      "identity_class": "implicit executable/data closure; no single release digest",
      "evidence": ["pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/internal/setupcmd/setup.go:75-109", "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:backend/internal/setupcmd/setup.go:154-204", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/common.py:389-495"]
    },
    {
      "id": "environment-runtime-configuration",
      "owner": "L2 deployment configuration plus GitHub environment variables/secrets",
      "input_names": ["deployment target/mode", "database connection/authentication", "application authentication/encryption", "connector/provider configuration", "rate/admission/worker controls", "bootstrap/reset flags"],
      "consumers": ["environment preparation", "setup", "backend/frontend", "health and business verification"],
      "identity_class": "mixed checked config and mutable protected values; complete digest absent and private values excluded from this public inventory",
      "evidence": ["pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deployments/deployment-config.json:1-38", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:.github/workflows/deploy-multi-prod-environment.yml:38-72"]
    },
    {
      "id": "deployment-topology-and-cutover",
      "owner": "L2 environment workflow/deploy implementation",
      "input_names": ["environment/slot", "release root", "backend port slots", "systemd/nginx settings", "health probes", "retention/recovery settings"],
      "consumers": ["staging blue/green", "test slots", "watchdog", "production multi-version cutover"],
      "identity_class": "environment configuration, not release artifact identity",
      "evidence": ["pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deployments/deployment-config.json:129-181", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:deploy/online/runtime/deploy_multi_prod_env.py:1472-1504"]
    },
    {
      "id": "pr-uat-image-and-ecs",
      "owner": "L2 PR UAT ECS EXP workflow",
      "input_names": ["PR number/head SHA", "resolved source refs", "ECR repository/image tag", "ECS/ALB configuration", "ephemeral database branch", "runtime secrets"],
      "consumers": ["all-in-one image builder", "PR-UAT ECS task/service", "route/status manifest"],
      "identity_class": "source refs immutable; pushed/deployed image tag mutable because digest is omitted",
      "evidence": ["pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:.github/workflows/pr-uat-ecs-exp.yml:300-345", "pingcap-inc/nexuscrm-pingcap-pack@330f27e7c3a96526e1d2eacc77bf5d86599cf9dc:scripts/pr_uat_ecs.py:264-303"]
    },
    {
      "id": "independent-runtime-skeleton",
      "owner": "NexusCRM",
      "input_names": ["runtime-api/runtime-worker image name", "runtime JSON config", "workload identity token file", "database/service addresses", "admission/drain settings"],
      "consumers": ["CI image smoke", "generic compose/kustomize skeleton"],
      "identity_class": "development/CI only; no audited production deployment input",
      "evidence": ["pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime/compose.yaml:1-31", "pingcap-inc/NexusCRM@c9736c2da0e718980e7a8d8fe4d51a8b5133ace4:infra/runtime/kubernetes/base/kustomization.yaml:1-11"]
    }
  ],
  "current_delivery_tuple": {
    "deployment_authority": "L2 release tag or selected downstream commit, then final-pack lineage",
    "nexuscrm_revision": "resolved upstream commit from final-pack lineage/tag payload",
    "contract_and_wire_versions": "implicit transitive facts in the selected NexusCRM go.mod files",
    "l0_service_versions": "absent because independent Runtime images are not published or deployed by the audited production flow",
    "l1_app_pack_revision": "resolved official app-packs commit from final-pack lineage/tag payload",
    "l1_appservice_revision": "absent",
    "l2_overlay_revision": "downstream tag target/commit and committed final-pack lineage",
    "frontend_revision": "selected NexusCRM commit plus materialized L1/L2 frontend source; no standalone bundle identity",
    "schema_migration_revision": "implicit closure of selected setup/controlplane code, pack payloads, optional patch input and existing database stamps",
    "environment_configuration": "L2 deployment config plus workflow variables/secrets; values deliberately not copied into this public inventory"
  },
  "gaps": {
    "r1b_release_tuple_decisions": [
      "Choose one authoritative BOM identity and define whether Git commits, module tags, image digests, frontend digest, metadata release digest and schema program digest are first-class or derived.",
      "Decide how the selected NexusCRM revision closes over contract, wire, controlplane, api-host and connectors versions without duplicating them as independently editable facts.",
      "Unify final-pack hash ownership: release-tuple/staging hashing excludes .build-lineage.json while PR-UAT uses a different whole-tree grammar.",
      "Define compatibility and rollback records that preserve the complete previously active tuple without claiming database reverse migration.",
      "Consume A1b AppRelease/AppInstallation decisions without redefining App semantics in the BOM."
    ],
    "r2_build_publication_work": [
      "Add an owned publication path for tagged Go modules and record immutable source/tag provenance.",
      "Publish Runtime service images by digest with checksums, SBOM and attestations instead of CI-local dev tags.",
      "Publish independently consumable frontend and metadata artifacts, if R1b selects them, without rebuilding from different source revisions.",
      "Record generated wire provenance and compatibility inputs in the release BOM.",
      "Remove mutable PR-UAT image-tag identity by recording and deploying the pushed digest."
    ],
    "r3_deployment_integration_work": [
      "Make release-class deployment consume and persist the complete R1b BOM instead of re-deriving only three refs from final-pack lineage.",
      "Promote immutable artifacts without rebuilding backend/frontend on each target host.",
      "Record every install input, config schema revision, patch selection and resulting database migration state in the final deployment record.",
      "Make rollback select a complete prior artifact tuple and state the separate database compatibility/recovery gate.",
      "Add independent Runtime service deployment only after its image publication and identity policy exist."
    ]
  }
}
