{
  "schemaVersion": 1,
  "contract": "kungfu-buildchain-workflow-registry",
  "workflowSource": ".github/workflows reverse input enumeration",
  "workflows": [
    {
      "id": ".build-demo-adapter",
      "path": ".github/workflows/.build-demo-adapter.yml",
      "reusable": true,
      "inputs": [
        "adapter-arguments-json",
        "adapter-path",
        "artifact-retention-days",
        "contract-lock",
        "media-profile",
        "render-media",
        "renderer-image",
        "require-trusted-event",
        "runtime-ref",
        "runtime-selection",
        "source-artifact-digest",
        "source-artifact-name",
        "source-ref"
      ],
      "inputCount": 13,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "gate-artifact-digest",
        "gate-artifact-id",
        "gate-artifact-name",
        "gate-artifact-url",
        "gate-root",
        "media-artifact-digest",
        "media-artifact-id",
        "media-artifact-name",
        "media-artifact-url",
        "media-profile",
        "media-qualification-root",
        "media-root",
        "source-sha"
      ],
      "outputCount": 13,
      "taxonomy": {
        "id": ".auditable-demo",
        "role": "component",
        "category": "build",
        "purpose": "demo-adapter",
        "status": "active",
        "canonicalPath": ".github/workflows/.build-demo-adapter.yml",
        "compatibilityAlias": false
      },
      "surface": "auditable-demo",
      "capabilityGroup": "api-cli-reference",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".build-gate-profile",
      "path": ".github/workflows/.build-gate-profile.yml",
      "reusable": true,
      "inputs": [
        "artifact-name",
        "artifact-retention-days",
        "cargo-registry-index",
        "checkout-cache-fallback",
        "checkout-cache-fetch-attempts",
        "checkout-cache-github-timeout-seconds",
        "checkout-cache-mirror-url-template",
        "checkout-cache-mode",
        "checkout-cache-reference-repository-template",
        "checkout-cache-timeout-seconds",
        "contract-lock",
        "gate-command-json",
        "gate-environment-json",
        "gate-plan-command-json",
        "gate-profile",
        "gate-registry",
        "include-advisory",
        "node-version",
        "platforms-json",
        "require-trusted-event",
        "runner-preset",
        "runtime-ref",
        "runtime-selection",
        "rust-toolchain",
        "rustup-dist-server",
        "rustup-update-root",
        "shifu-cache-profile-digest",
        "shifu-cache-profile-ref",
        "source-ref",
        "untrusted-policy",
        "working-directory"
      ],
      "inputCount": 31,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "buildchain-runtime-sha",
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "gate-aggregate-artifact",
        "gate-aggregate-digest",
        "gate-aggregate-json",
        "gate-aggregate-status",
        "gate-matrix-digest",
        "source-sha"
      ],
      "outputCount": 14,
      "taxonomy": {
        "id": ".gate-profile",
        "role": "component",
        "category": "build",
        "purpose": "gate-profile",
        "status": "active",
        "canonicalPath": ".github/workflows/.build-gate-profile.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".build",
      "path": ".github/workflows/.build.yml",
      "reusable": true,
      "inputs": [
        "config-path",
        "contract-lock",
        "resume-run-id",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 5,
      "secrets": [
        "BUILDCHAIN_MACOS_CERTIFICATE_P12_BASE64",
        "BUILDCHAIN_MACOS_CERTIFICATE_PASSWORD",
        "BUILDCHAIN_MACOS_NOTARY_API_ISSUER",
        "BUILDCHAIN_MACOS_NOTARY_API_KEY_ID",
        "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64",
        "BUILDCHAIN_PROMOTION_TOKEN"
      ],
      "secretCount": 6,
      "outputs": [
        "result"
      ],
      "outputCount": 1,
      "taxonomy": {
        "id": ".build",
        "role": "component",
        "category": "build",
        "purpose": "engine",
        "status": "active",
        "canonicalPath": ".github/workflows/.build.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-build",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".ops-git-sync",
      "path": ".github/workflows/.ops-git-sync.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "force",
        "remote-host",
        "remote-path",
        "remote-repo",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 7,
      "secrets": [
        "REMOTE_CREDENTIAL",
        "REMOTE_USER"
      ],
      "secretCount": 2,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": ".sync-remote-git",
        "role": "component",
        "category": "ops",
        "purpose": "git-sync",
        "status": "active",
        "canonicalPath": ".github/workflows/.ops-git-sync.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".release-authority",
      "path": ".github/workflows/.release-authority.yml",
      "reusable": true,
      "inputs": [
        "admission-json",
        "authority-workflow-path",
        "auto-admission",
        "auto-admission-kind",
        "auto-no-gate",
        "consumer-gate-command",
        "consumer-gate-controller-sha",
        "consumer-gate-evidence-source-sha",
        "consumer-gate-evidence-source-tree",
        "consumer-predicate-digest",
        "consumer-predicate-id",
        "consumer-qualification-required",
        "contract-lock",
        "control-plane-audit-json",
        "dry-run",
        "evidence-controller-artifact",
        "evidence-manifest-pattern",
        "evidence-passport-artifact",
        "evidence-payload-pattern",
        "evidence-publication-artifact",
        "evidence-repository",
        "evidence-run-id",
        "evidence-summary-artifact",
        "expected-json",
        "gate-aggregate-json",
        "github-governance-receipt-json",
        "package-name",
        "product",
        "publication-target",
        "publication-version",
        "publisher-workflow-path",
        "required-status-check",
        "runner-provenance-json",
        "runtime-ref",
        "runtime-selection",
        "source-sha",
        "target-ref",
        "used-nonces-json"
      ],
      "inputCount": 38,
      "secrets": [
        "BUILDCHAIN_GOVERNANCE_READ_TOKEN",
        "KUNGFU_GOVERNANCE_AUDITOR_APP_PRIVATE_KEY"
      ],
      "secretCount": 2,
      "outputs": [
        "capability-artifact",
        "capability-digest",
        "capability-json",
        "gate-aggregate-digest",
        "gate-aggregate-json"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": ".publication-authority",
        "role": "component",
        "category": "release",
        "purpose": "authority",
        "status": "active",
        "canonicalPath": ".github/workflows/.release-authority.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".release-binary-assets",
      "path": ".github/workflows/.release-binary-assets.yml",
      "reusable": true,
      "inputs": [
        "auto-admission",
        "contract-lock",
        "evidence-run-id",
        "github-governance-receipt-json",
        "publication-admission-json",
        "publication-control-plane-audit-json",
        "publication-expected-json",
        "publication-gate-aggregate-json",
        "publication-runner-provenance-json",
        "publication-used-nonces-json",
        "publication-version",
        "release-tag",
        "runtime-ref",
        "runtime-selection",
        "source-sha",
        "target-ref"
      ],
      "inputCount": 16,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": ".binary-release-assets",
        "role": "component",
        "category": "release",
        "purpose": "binary-assets",
        "status": "active",
        "canonicalPath": ".github/workflows/.release-binary-assets.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": ".release-promote",
      "path": ".github/workflows/.release-promote.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "request-json",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 4,
      "secrets": [
        "BUILDCHAIN_ISSUE_APP_ID",
        "BUILDCHAIN_ISSUE_APP_PRIVATE_KEY",
        "BUILDCHAIN_ISSUE_TOKEN",
        "BUILDCHAIN_PROMOTION_TOKEN",
        "BUILDCHAIN_PUBLICATION_COMMIT_SIGNING_KEY",
        "BUILDCHAIN_PUBLICATION_COMMIT_TOKEN",
        "KUNGFU_GOVERNANCE_AUDITOR_APP_PRIVATE_KEY",
        "buildchain-issue-app-id",
        "buildchain-issue-app-private-key",
        "buildchain-issue-token"
      ],
      "secretCount": 10,
      "outputs": [
        "built-source-sha",
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "github-artifact-attestation-evidence-root",
        "github-artifact-attestation-id",
        "github-artifact-attestation-publication-receipt-digest",
        "github-artifact-attestation-url",
        "promoted-sha",
        "publication-capability-digest",
        "publication-commit-evidence-digest",
        "publication-commit-evidence-path",
        "publication-commit-payload-root",
        "publication-commit-url",
        "release-candidate-action",
        "release-candidate-artifact",
        "release-candidate-recovery-receipt-artifact",
        "release-candidate-recovery-root",
        "release-invocation-root",
        "release-propagation-work-artifact",
        "release-receipt-root",
        "release-tail-declaration-root",
        "release-tail-receipt-roots-json",
        "release-tail-state-root",
        "release-tail-transaction-root",
        "release-tail-transaction-state",
        "release-transaction-root"
      ],
      "outputCount": 31,
      "taxonomy": {
        "id": ".release-candidate-promote",
        "role": "component",
        "category": "release",
        "purpose": "promote",
        "status": "active",
        "canonicalPath": ".github/workflows/.release-promote.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "build",
      "path": ".github/workflows/build.yml",
      "reusable": true,
      "inputs": [
        "config-path",
        "contract-lock",
        "resume-run-id",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 5,
      "secrets": [
        "BUILDCHAIN_MACOS_CERTIFICATE_P12_BASE64",
        "BUILDCHAIN_MACOS_CERTIFICATE_PASSWORD",
        "BUILDCHAIN_MACOS_NOTARY_API_ISSUER",
        "BUILDCHAIN_MACOS_NOTARY_API_KEY_ID",
        "BUILDCHAIN_MACOS_NOTARY_API_KEY_P8_BASE64",
        "BUILDCHAIN_PROMOTION_TOKEN"
      ],
      "secretCount": 6,
      "outputs": [
        "controller-receipt-artifact",
        "release-candidate-artifact",
        "result"
      ],
      "outputCount": 3,
      "taxonomy": {
        "id": "build",
        "role": "public",
        "category": "build",
        "purpose": "candidate",
        "status": "active",
        "canonicalPath": ".github/workflows/build.yml",
        "compatibilityAlias": false
      },
      "surface": "channel-build-router",
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-build-adopter-qualification",
      "path": ".github/workflows/public-build-adopter-qualification.yml",
      "reusable": true,
      "inputs": [
        "consumer",
        "consumer-ref",
        "consumer-repository",
        "contract-lock",
        "input-path",
        "invocation-source-path",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 8,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-adopter-delivery",
        "role": "public",
        "category": "build",
        "purpose": "adopter-qualification",
        "status": "active",
        "canonicalPath": ".github/workflows/public-build-adopter-qualification.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-build-check",
      "path": ".github/workflows/public-build-check.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "mode",
        "node-version",
        "require-version-state",
        "runtime-ref",
        "runtime-selection",
        "source-proof-closure-paths-json",
        "source-proof-dependency-paths-json",
        "source-proof-policy-paths-json",
        "source-proof-required-contexts-json",
        "source-proof-reuse",
        "upload-artifacts",
        "working-directory"
      ],
      "inputCount": 13,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "source-proof-decision-root",
        "source-proof-producer-run-id",
        "source-proof-reuse-reason",
        "source-proof-reused",
        "source-proof-root"
      ],
      "outputCount": 12,
      "taxonomy": {
        "id": "check",
        "role": "public",
        "category": "build",
        "purpose": "check",
        "status": "active",
        "canonicalPath": ".github/workflows/public-build-check.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-build-demo",
      "path": ".github/workflows/public-build-demo.yml",
      "reusable": true,
      "inputs": [
        "artifact-retention-days",
        "binary-artifact-digest",
        "binary-artifact-name",
        "contract-lock",
        "materialize",
        "materialize-base-ref",
        "media-profile",
        "render-failure-advisory",
        "render-media",
        "renderer-image",
        "runtime-ref",
        "runtime-selection",
        "scenario-path",
        "source-ref"
      ],
      "inputCount": 14,
      "secrets": [
        "DEMO_UPDATE_TOKEN"
      ],
      "secretCount": 1,
      "outputs": [
        "capture-artifact-digest",
        "capture-artifact-name",
        "evidence-artifact-digest",
        "evidence-artifact-name",
        "publication-pr-url",
        "render-result",
        "source-sha"
      ],
      "outputCount": 7,
      "taxonomy": {
        "id": ".declarative-auditable-demo",
        "role": "public",
        "category": "build",
        "purpose": "demo",
        "status": "active",
        "canonicalPath": ".github/workflows/public-build-demo.yml",
        "compatibilityAlias": false
      },
      "surface": "declarative-auditable-demo",
      "capabilityGroup": "api-cli-reference",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-build-publication",
      "path": ".github/workflows/public-build-publication.yml",
      "reusable": true,
      "inputs": [
        "artifact-name",
        "artifact-paths",
        "artifact-retention-days",
        "build-command",
        "buildchain-alpha-contract-lock-path",
        "buildchain-stable-contract-lock-path",
        "contract-lock",
        "node-version",
        "package-name",
        "prepare-paper-package",
        "publish-dist-tag",
        "runtime-ref",
        "runtime-selection",
        "setup-node",
        "target-ref",
        "toolchain-command",
        "toolchain-digest",
        "toolchain-image",
        "toolchain-type",
        "verify-command",
        "working-directory"
      ],
      "inputCount": 21,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "package-name",
        "package-version",
        "publication-artifact-name",
        "publication-manifest-json",
        "publication-manifest-path",
        "publication-passport-path",
        "publication-registry-path",
        "publish-dist-tag",
        "runtime-sha"
      ],
      "outputCount": 16,
      "taxonomy": {
        "id": "publication-artifact",
        "role": "public",
        "category": "build",
        "purpose": "publication",
        "status": "active",
        "canonicalPath": ".github/workflows/public-build-publication.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-build-stage-capsule-canary",
      "path": ".github/workflows/public-build-stage-capsule-canary.yml",
      "reusable": true,
      "inputs": [
        "build-artifact-path",
        "consumer",
        "contract-lock",
        "go-version",
        "install-artifact-path",
        "node-version",
        "runtime-ref",
        "runtime-selection",
        "verify-artifact-path"
      ],
      "inputCount": 9,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-stage-capsule-canary",
        "role": "public",
        "category": "build",
        "purpose": "stage-capsule-canary",
        "status": "active",
        "canonicalPath": ".github/workflows/public-build-stage-capsule-canary.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-alpha-candidate-patrol",
      "path": ".github/workflows/public-ops-alpha-candidate-patrol.yml",
      "reusable": true,
      "inputs": [
        "alpha-workflow-path",
        "auto-merge",
        "contract-lock",
        "dev-workflow-path",
        "dry-run",
        "max-age-seconds",
        "merge-method",
        "pull-request-body-prefix",
        "pull-request-body-prefix-renderer",
        "reactivation-authorized",
        "runtime-ref",
        "runtime-selection",
        "settlement-authorized",
        "source-branch",
        "target-branch"
      ],
      "inputCount": 15,
      "secrets": [
        "promotion-token"
      ],
      "secretCount": 1,
      "outputs": [
        "active-candidate-pr",
        "candidate-generation",
        "candidate-tree-sha",
        "controller-state",
        "cut-root",
        "drift-root",
        "eligible",
        "hold-root",
        "next-candidate-sha",
        "prior-state-root",
        "promotion-pr",
        "result-path",
        "runtime-sha",
        "selected-sha",
        "settlement-action",
        "source-lock-ref",
        "train-root"
      ],
      "outputCount": 17,
      "taxonomy": {
        "id": "dev-alpha-candidate-patrol",
        "role": "public",
        "category": "ops",
        "purpose": "alpha-candidate-patrol",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-alpha-candidate-patrol.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-bootstrap",
      "path": ".github/workflows/public-ops-bootstrap.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "request-json",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 4,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "admission-root",
        "request-root",
        "result-json",
        "result-root",
        "runtime-sha",
        "terminal-receipt-json",
        "terminal-receipt-root"
      ],
      "outputCount": 7,
      "taxonomy": {
        "id": "bootstrap",
        "role": "public",
        "category": "ops",
        "purpose": "bootstrap",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-bootstrap.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-dev-auto-merge",
      "path": ".github/workflows/public-ops-dev-auto-merge.yml",
      "reusable": true,
      "inputs": [
        "active-lease-context",
        "affected-paths-json",
        "allowed-head-prefixes",
        "block-labels",
        "closure-root",
        "contract-lock",
        "defer-landing",
        "delivery-class",
        "delivery-priority",
        "delivery-warrant-mode",
        "dependency-root",
        "diagnostic-context",
        "dry-run",
        "environment-root",
        "expected-head-sha",
        "expected-pr-number",
        "handoff-workflow-id",
        "landing-mode",
        "max-merges",
        "merge-method",
        "native-command",
        "native-command-root",
        "native-heartbeat-seconds",
        "native-proof-json",
        "plan-root",
        "project-cut-proof-json",
        "queue-admission-context",
        "ready-label",
        "release-blocker-priority-json",
        "require-approval",
        "required-status-checks",
        "runtime-ref",
        "runtime-selection",
        "same-repository-only",
        "shard-evidence-roots-json",
        "source-identity-root",
        "source-patch-root",
        "source-root",
        "source-workflow-run-id",
        "target-branch",
        "toolchain-root",
        "warrant-lease-seconds"
      ],
      "inputCount": 42,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action-count",
        "admission-receipt-root",
        "admission-state",
        "enqueued-count",
        "evaluated-count",
        "final-base-sha",
        "merged-count",
        "native-execution-transfer-root",
        "native-proof-root",
        "native-reuse-decision-root",
        "project-cut-proof-root",
        "provider-finalizer-boundary-root",
        "provider-heartbeat-receipt-root",
        "qualified-warrant-receipt-root",
        "skipped-count",
        "source-proof-root",
        "warrant-receipt-root",
        "warrant-state-commit",
        "warrant-state-root"
      ],
      "outputCount": 19,
      "taxonomy": {
        "id": "dev-pr-auto-merge",
        "role": "public",
        "category": "ops",
        "purpose": "dev-auto-merge",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-dev-auto-merge.yml",
        "compatibilityAlias": false
      },
      "surface": "dev-governance",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-dev-qualification-patrol",
      "path": ".github/workflows/public-ops-dev-qualification-patrol.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "dev-workflow-path",
        "dispatch-inputs-json",
        "dry-run",
        "max-attempts",
        "mutation-authorized",
        "preflight-workflow-path",
        "priority-workflows-json",
        "runtime-ref",
        "runtime-selection",
        "source-branch"
      ],
      "inputCount": 11,
      "secrets": [
        "qualification-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action",
        "active-run-id",
        "decision-root",
        "pending-sha",
        "reason",
        "source-sha",
        "state"
      ],
      "outputCount": 7,
      "taxonomy": {
        "id": "dev-qualification-patrol",
        "role": "public",
        "category": "ops",
        "purpose": "dev-qualification-patrol",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-dev-qualification-patrol.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-housekeeping",
      "path": ".github/workflows/public-ops-housekeeping.yml",
      "reusable": true,
      "inputs": [
        "apply-enabled",
        "artifact-prefix",
        "artifact-retention-days",
        "contract-lock",
        "max-actions",
        "mode",
        "protected-patterns",
        "repository",
        "retained-patterns",
        "runtime-ref",
        "runtime-selection",
        "stale-days",
        "stale-pull-request-label",
        "target-branch",
        "temporary-branch-patterns"
      ],
      "inputCount": 15,
      "secrets": [
        "housekeeper_app_id",
        "housekeeper_app_private_key",
        "housekeeper_token"
      ],
      "secretCount": 3,
      "outputs": [
        "action-count",
        "branch-receipt-root",
        "outcome",
        "plan-artifact",
        "plan-root",
        "pull-request-receipt-root",
        "receipt-artifact",
        "report-artifact",
        "report-receipt-root"
      ],
      "outputCount": 9,
      "taxonomy": {
        "id": "engineering-housekeeper",
        "role": "public",
        "category": "ops",
        "purpose": "housekeeping",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-housekeeping.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.2",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
    },
    {
      "id": "public-ops-observed-evidence",
      "path": ".github/workflows/public-ops-observed-evidence.yml",
      "reusable": true,
      "inputs": [
        "artifact-path",
        "build-command",
        "cloudfront-distribution",
        "contract-lock",
        "evidence-source-path",
        "evidence-source-ref",
        "evidence-source-repository",
        "manifest-path",
        "production-aws-role-arn",
        "production-bucket",
        "production-environment",
        "runtime-ref",
        "runtime-selection",
        "verify-command"
      ],
      "inputCount": 14,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "receipt-path"
      ],
      "outputCount": 1,
      "taxonomy": {
        "id": "patrol-observed-evidence",
        "role": "public",
        "category": "ops",
        "purpose": "observed-evidence",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-observed-evidence.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-patrol-daily",
      "path": ".github/workflows/public-ops-patrol-daily.yml",
      "reusable": true,
      "inputs": [
        "allowed-head-prefixes",
        "block-labels",
        "contract-lock",
        "dry-run",
        "landing-mode",
        "max-actions",
        "merge-method",
        "ready-label",
        "require-approval",
        "required-status-checks",
        "runtime-ref",
        "runtime-selection",
        "same-repository-only",
        "target-branch"
      ],
      "inputCount": 14,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action-count",
        "evaluated-count",
        "planned-count",
        "result-path",
        "skipped-count"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": "patrol-daily",
        "role": "public",
        "category": "ops",
        "purpose": "patrol-daily",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-patrol-daily.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-patrol-monthly",
      "path": ".github/workflows/public-ops-patrol-monthly.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "dry-run",
        "runtime-ref",
        "runtime-selection",
        "target-branch"
      ],
      "inputCount": 5,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action-count",
        "evaluated-count",
        "planned-count",
        "result-path",
        "skipped-count"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": "patrol-monthly",
        "role": "public",
        "category": "ops",
        "purpose": "patrol-monthly",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-patrol-monthly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-patrol-weekly",
      "path": ".github/workflows/public-ops-patrol-weekly.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "dry-run",
        "runtime-ref",
        "runtime-selection",
        "target-branch"
      ],
      "inputCount": 5,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action-count",
        "evaluated-count",
        "planned-count",
        "result-path",
        "skipped-count"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": "patrol-weekly",
        "role": "public",
        "category": "ops",
        "purpose": "patrol-weekly",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-patrol-weekly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-patrol",
      "path": ".github/workflows/public-ops-patrol.yml",
      "reusable": true,
      "inputs": [
        "allowed-head-prefixes",
        "block-labels",
        "cadence",
        "capabilities",
        "contract-lock",
        "dry-run",
        "landing-mode",
        "max-actions",
        "merge-method",
        "mode",
        "ready-label",
        "require-approval",
        "required-status-checks",
        "runtime-ref",
        "runtime-selection",
        "same-repository-only",
        "target-branch"
      ],
      "inputCount": 17,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "action-count",
        "evaluated-count",
        "planned-count",
        "result-path",
        "skipped-count"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": "buildchain-patrol",
        "role": "public",
        "category": "ops",
        "purpose": "patrol",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-patrol.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-release-governance",
      "path": ".github/workflows/public-ops-release-governance.yml",
      "reusable": true,
      "inputs": [
        "apply",
        "branch",
        "candidate-sha",
        "contract-lock",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 6,
      "secrets": [
        "BUILDCHAIN_PROMOTION_TOKEN",
        "governance-token"
      ],
      "secretCount": 2,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "release-governance-reconcile",
        "role": "public",
        "category": "ops",
        "purpose": "release-governance",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-release-governance.yml",
        "compatibilityAlias": false
      },
      "surface": "release-governance",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-stable-candidate-patrol",
      "path": ".github/workflows/public-ops-stable-candidate-patrol.yml",
      "reusable": true,
      "inputs": [
        "auto-approve",
        "auto-merge",
        "auto-promote",
        "contract-lock",
        "dry-run",
        "hold",
        "hold-reason",
        "ledger-ref",
        "merge-method",
        "minimum-soak-seconds",
        "release-now",
        "required-checks",
        "revoke-reason",
        "revoked-versions",
        "runtime-ref",
        "runtime-selection",
        "target-branch"
      ],
      "inputCount": 17,
      "secrets": [
        "approval-token",
        "promotion-token"
      ],
      "secretCount": 2,
      "outputs": [
        "promotion-pr",
        "result-path",
        "selected",
        "selected-sha",
        "selected-version",
        "stable-version"
      ],
      "outputCount": 6,
      "taxonomy": {
        "id": "stable-candidate-patrol",
        "role": "public",
        "category": "ops",
        "purpose": "stable-candidate-patrol",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-stable-candidate-patrol.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-tail-reseal",
      "path": ".github/workflows/public-ops-tail-reseal.yml",
      "reusable": true,
      "inputs": [
        "artifact-retention-days",
        "consumer-policy-receipt-json",
        "contract-lock",
        "macos-finalization-command",
        "request-json",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 7,
      "secrets": [
        "BUILDCHAIN_EVIDENCE_READ_TOKEN",
        "BUILDCHAIN_SIGNING_TOKEN"
      ],
      "secretCount": 2,
      "outputs": [
        "release-candidate-passport-json",
        "tail-reseal-receipt-root"
      ],
      "outputCount": 2,
      "taxonomy": {
        "id": "v4-tail-reseal",
        "role": "public",
        "category": "ops",
        "purpose": "tail-reseal",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-tail-reseal.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-warrant-cancel",
      "path": ".github/workflows/public-ops-warrant-cancel.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "event-action",
        "expected-candidate-id",
        "expected-old-state-root",
        "expected-pr-number",
        "expected-source-head-sha",
        "observed-source-head-sha",
        "outcome",
        "reason",
        "runtime-ref",
        "runtime-selection",
        "target-branch",
        "terminal-evidence-root"
      ],
      "inputCount": 13,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "cancellation-action",
        "cancellation-receipt-root",
        "final-state-root"
      ],
      "outputCount": 3,
      "taxonomy": {
        "id": "dev-delivery-warrant-cancel",
        "role": "public",
        "category": "ops",
        "purpose": "warrant-cancel",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-warrant-cancel.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-ops-warrant-close",
      "path": ".github/workflows/public-ops-warrant-close.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "current-base-sha",
        "expected-head-sha",
        "expected-pr-number",
        "merge-group-head-sha",
        "merge-group-tree-sha",
        "outcome",
        "reason",
        "replay-tree-sha",
        "required-context-roots-json",
        "runtime-ref",
        "runtime-selection",
        "target-branch",
        "terminal-evidence-root"
      ],
      "inputCount": 14,
      "secrets": [
        "github-token"
      ],
      "secretCount": 1,
      "outputs": [
        "close-receipt-root",
        "final-state-root",
        "integration-proof-root",
        "successor-wake-json"
      ],
      "outputCount": 4,
      "taxonomy": {
        "id": "dev-delivery-warrant-close",
        "role": "public",
        "category": "ops",
        "purpose": "warrant-close",
        "status": "active",
        "canonicalPath": ".github/workflows/public-ops-warrant-close.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-artifact-attestation",
      "path": ".github/workflows/public-release-artifact-attestation.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "environment",
        "evidence-artifact-name",
        "evidence-run-id",
        "platform-manifest-artifact-name",
        "platform-manifest-relative-path",
        "policy-json",
        "release-passport-artifact-name",
        "release-passport-relative-path",
        "retention-days",
        "runtime-ref",
        "runtime-selection",
        "source-sha",
        "subject-artifact-name",
        "subject-relative-path"
      ],
      "inputCount": 15,
      "secrets": [],
      "secretCount": 0,
      "outputs": [
        "attestation-id",
        "attestation-url",
        "bundle-digest",
        "evidence-artifact-name",
        "evidence-root"
      ],
      "outputCount": 5,
      "taxonomy": {
        "id": "github-artifact-attestation",
        "role": "public",
        "category": "release",
        "purpose": "artifact-attestation",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-artifact-attestation.yml",
        "compatibilityAlias": false
      },
      "surface": "release-passport",
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-oci-compose-preview",
      "path": ".github/workflows/public-release-oci-compose-preview.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 3,
      "secrets": [
        "BUILDCHAIN_PROMOTION_TOKEN"
      ],
      "secretCount": 1,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "oci-compose-preview",
        "role": "public",
        "category": "release",
        "purpose": "oci-compose-preview",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-oci-compose-preview.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-paper",
      "path": ".github/workflows/public-release-paper.yml",
      "reusable": true,
      "inputs": [
        "artifact-name",
        "artifact-paths",
        "artifact-retention-days",
        "branch-protection-bypass-apps",
        "contract-lock",
        "dry-run",
        "github-governance-receipt-json",
        "github-release",
        "package-name",
        "publish-dist-tag",
        "publisher-workflow-path",
        "release-passport-impact-json",
        "release-passport-output-dir",
        "release-passport-product-name",
        "required-status-check",
        "runtime-ref",
        "runtime-selection",
        "target-ref",
        "target-sha",
        "toolchain-type",
        "verify-command",
        "working-directory"
      ],
      "inputCount": 22,
      "secrets": [
        "BUILDCHAIN_GENERATED_WRITE_APP_CLIENT_ID",
        "BUILDCHAIN_GENERATED_WRITE_APP_PRIVATE_KEY",
        "BUILDCHAIN_GENERATED_WRITE_TOKEN",
        "KUNGFU_GOVERNANCE_AUDITOR_APP_PRIVATE_KEY"
      ],
      "secretCount": 4,
      "outputs": [
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "github-release-url",
        "package-name",
        "package-version",
        "propagation-work-artifact",
        "public-release-tag",
        "release-passport-path",
        "upstream-release-json"
      ],
      "outputCount": 14,
      "taxonomy": {
        "id": "paper-release",
        "role": "public",
        "category": "release",
        "purpose": "paper",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-paper.yml",
        "compatibilityAlias": false
      },
      "surface": "reusable-build",
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-promote",
      "path": ".github/workflows/public-release-promote.yml",
      "reusable": true,
      "inputs": [
        "contract-lock",
        "request-json",
        "runtime-ref",
        "runtime-selection"
      ],
      "inputCount": 4,
      "secrets": [
        "BUILDCHAIN_ISSUE_APP_ID",
        "BUILDCHAIN_ISSUE_APP_PRIVATE_KEY",
        "BUILDCHAIN_ISSUE_TOKEN",
        "BUILDCHAIN_PROMOTION_TOKEN",
        "BUILDCHAIN_PUBLICATION_COMMIT_SIGNING_KEY",
        "BUILDCHAIN_PUBLICATION_COMMIT_TOKEN",
        "KUNGFU_GOVERNANCE_AUDITOR_APP_PRIVATE_KEY",
        "buildchain-issue-app-id",
        "buildchain-issue-app-private-key",
        "buildchain-issue-token"
      ],
      "secretCount": 10,
      "outputs": [
        "buildchain-channel",
        "built-source-sha",
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "github-artifact-attestation-evidence-root",
        "github-artifact-attestation-id",
        "github-artifact-attestation-publication-receipt-digest",
        "github-artifact-attestation-url",
        "promoted-sha",
        "promotion-contract-lock-digest",
        "promotion-contract-lock-path",
        "promotion-override-used",
        "promotion-publication-channel",
        "promotion-router-ref",
        "promotion-router-sha",
        "promotion-runtime-ref",
        "promotion-runtime-sha",
        "promotion-shell-ref",
        "promotion-shell-sha",
        "promotion-target-ref",
        "publication-capability-digest",
        "publication-commit-evidence-digest",
        "publication-commit-evidence-path",
        "publication-commit-payload-root",
        "publication-commit-url",
        "release-candidate-action",
        "release-candidate-artifact",
        "release-candidate-recovery-receipt-artifact",
        "release-candidate-recovery-root",
        "release-invocation-root",
        "release-propagation-work-artifact",
        "release-receipt-root",
        "release-tail-declaration-root",
        "release-tail-receipt-roots-json",
        "release-tail-state-root",
        "release-tail-transaction-root",
        "release-tail-transaction-state",
        "release-transaction-root"
      ],
      "outputCount": 43,
      "taxonomy": {
        "id": "release-candidate-promote",
        "role": "public",
        "category": "release",
        "purpose": "promote",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-promote.yml",
        "compatibilityAlias": false
      },
      "surface": "release-governance",
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-propagation",
      "path": ".github/workflows/public-release-propagation.yml",
      "reusable": true,
      "inputs": [
        "agent-work-context-json",
        "agent-work-mode",
        "contract-lock",
        "downstream-base-ref",
        "downstream-branch",
        "downstream-prepare-command",
        "downstream-repository",
        "downstream-target",
        "downstream-update-command",
        "downstream-verify-command",
        "dry-run",
        "graph-json",
        "lock-path",
        "pr-body",
        "pr-title",
        "refresh-managed-readme-badges",
        "runtime-ref",
        "runtime-selection",
        "source-node",
        "upstream-release-json"
      ],
      "inputCount": 20,
      "secrets": [
        "propagation-token"
      ],
      "secretCount": 1,
      "outputs": [
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "propagation-receipt-digest",
        "propagation-receipt-json",
        "propagation-work-artifact",
        "propagation-work-json",
        "propagation-work-next-action",
        "propagation-work-root"
      ],
      "outputCount": 13,
      "taxonomy": {
        "id": "release-propagation",
        "role": "public",
        "category": "release",
        "purpose": "propagation",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-propagation.yml",
        "compatibilityAlias": false
      },
      "surface": "release-propagation",
      "capabilityGroup": "site-and-propagation",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-signing-authority",
      "path": ".github/workflows/public-release-signing-authority.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "artifact-signing-authority",
        "role": "public",
        "category": "release",
        "purpose": "signing-authority",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-signing-authority.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-tail",
      "path": ".github/workflows/public-release-tail.yml",
      "reusable": true,
      "inputs": [
        "candidate-root",
        "contract-lock",
        "declaration-path",
        "execute",
        "provider-bindings-path",
        "rehearsal-authority-path",
        "rehearsal-capsule-path",
        "rehearsal-evidence-path",
        "rehearsal-mode",
        "runtime-ref",
        "runtime-selection",
        "state-path"
      ],
      "inputCount": 12,
      "secrets": [
        "http-token"
      ],
      "secretCount": 1,
      "outputs": [
        "rehearsal-evidence-root",
        "state-root",
        "transaction-root",
        "transaction-state"
      ],
      "outputCount": 4,
      "taxonomy": {
        "id": "release-tail",
        "role": "public",
        "category": "release",
        "purpose": "tail",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-tail.yml",
        "compatibilityAlias": false
      },
      "surface": "release-tail-provider-plane",
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "public-release-web",
      "path": ".github/workflows/public-release-web.yml",
      "reusable": true,
      "inputs": [
        "artifact-path",
        "aws-region",
        "build-command",
        "contract-lock",
        "fail-on-release-pr-error",
        "github-governance-receipt-json",
        "node-version",
        "preview-apply",
        "preview-aws-role-arn",
        "preview-cleanup-apply",
        "preview-comment",
        "preview-environment",
        "production-apply",
        "production-approved",
        "production-aws-role-arn",
        "production-environment",
        "production-release-app-client-id",
        "production-release-branch-channel",
        "production-release-head-prefix",
        "production-release-label",
        "production-release-on-main",
        "production-release-pr-mode",
        "production-source-sha",
        "publication-admission-json",
        "publication-control-plane-audit-json",
        "publication-expected-json",
        "publication-gate-aggregate-json",
        "publication-runner-provenance-json",
        "publication-used-nonces-json",
        "release-feedback-actor-privacy",
        "runtime-ref",
        "runtime-selection",
        "staging-apply",
        "staging-aws-role-arn",
        "staging-environment",
        "verify-command",
        "working-directory"
      ],
      "inputCount": 37,
      "secrets": [
        "production-release-app-private-key",
        "production-release-pr-token"
      ],
      "secretCount": 2,
      "outputs": [
        "buildchain-runtime-class",
        "buildchain-runtime-override",
        "buildchain-runtime-ref",
        "buildchain-runtime-sha",
        "controller-plan-artifact",
        "controller-plan-digest",
        "controller-plan-json",
        "controller-receipt-artifact",
        "controller-receipt-digest",
        "controller-receipt-json",
        "controller-receipt-status",
        "preview-apply-result-json",
        "preview-cleanup-result-json",
        "production-apply-result-json",
        "production-release-pr-url",
        "release-pr-status",
        "staging-apply-result-json",
        "web-surface-alias",
        "web-surface-channel",
        "web-surface-cleanup-plan-json",
        "web-surface-manifest-json",
        "web-surface-url",
        "web-surface-urls-json"
      ],
      "outputCount": 23,
      "taxonomy": {
        "id": ".web-surface",
        "role": "public",
        "category": "release",
        "purpose": "web",
        "status": "active",
        "canonicalPath": ".github/workflows/public-release-web.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-adopter-dogfood",
      "path": ".github/workflows/self-build-adopter-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-adopter-delivery-dogfood",
        "role": "self",
        "category": "build",
        "purpose": "adopter-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-adopter-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-alpha-dogfood",
      "path": ".github/workflows/self-build-alpha-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-alpha-self-dogfood",
        "role": "self",
        "category": "build",
        "purpose": "alpha-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-alpha-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-binary-distribution",
      "path": ".github/workflows/self-build-binary-distribution.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "binary-distribution",
        "role": "self",
        "category": "build",
        "purpose": "binary-distribution",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-binary-distribution.yml",
        "compatibilityAlias": false
      },
      "surface": "release-passport",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-channel-verify",
      "path": ".github/workflows/self-build-channel-verify.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "channel-verify",
        "role": "self",
        "category": "build",
        "purpose": "channel-verify",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-channel-verify.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-demo-dogfood",
      "path": ".github/workflows/self-build-demo-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "auditable-demo",
        "role": "self",
        "category": "build",
        "purpose": "demo-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-demo-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-demo-media-qualification",
      "path": ".github/workflows/self-build-demo-media-qualification.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "auditable-demo-media-profile-qualification",
        "role": "self",
        "category": "build",
        "purpose": "demo-media-qualification",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-demo-media-qualification.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-fixture",
      "path": ".github/workflows/self-build-fixture.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "build-surface-fixture",
        "role": "self",
        "category": "build",
        "purpose": "fixture",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-fixture.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "repository-internal",
      "owner": "buildchain-workflows",
      "maturity": "repository-internal",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-public-consumer-dogfood",
      "path": ".github/workflows/self-build-public-consumer-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-public-consumer-dogfood",
        "role": "self",
        "category": "build",
        "purpose": "public-consumer-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-public-consumer-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-stable-candidate-qualification",
      "path": ".github/workflows/self-build-stable-candidate-qualification.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-stable-candidate-qualification",
        "role": "self",
        "category": "build",
        "purpose": "stable-candidate-qualification",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-stable-candidate-qualification.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "api-cli-reference",
      "status": "repository-internal",
      "owner": "buildchain-workflows",
      "maturity": "repository-internal",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-stable-dogfood",
      "path": ".github/workflows/self-build-stable-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-stable-self-dogfood",
        "role": "self",
        "category": "build",
        "purpose": "stable-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-stable-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-build-verify",
      "path": ".github/workflows/self-build-verify.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "verify",
        "role": "self",
        "category": "build",
        "purpose": "verify",
        "status": "active",
        "canonicalPath": ".github/workflows/self-build-verify.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-bootstrap-dogfood",
      "path": ".github/workflows/self-ops-bootstrap-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "universal-bootstrap-dogfood",
        "role": "self",
        "category": "ops",
        "purpose": "bootstrap-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-bootstrap-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-dev-delivery",
      "path": ".github/workflows/self-ops-dev-delivery.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-dev-delivery",
        "role": "self",
        "category": "ops",
        "purpose": "dev-delivery",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-dev-delivery.yml",
        "compatibilityAlias": false
      },
      "surface": "dev-governance",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-governance-audit",
      "path": ".github/workflows/self-ops-governance-audit.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "github-governance-audit",
        "role": "self",
        "category": "ops",
        "purpose": "governance-audit",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-governance-audit.yml",
        "compatibilityAlias": false
      },
      "surface": "dev-governance",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-housekeeping-daily",
      "path": ".github/workflows/self-ops-housekeeping-daily.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "engineering-housekeeper-daily",
        "role": "self",
        "category": "ops",
        "purpose": "housekeeping-daily",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-housekeeping-daily.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.2",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
    },
    {
      "id": "self-ops-housekeeping-monthly",
      "path": ".github/workflows/self-ops-housekeeping-monthly.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "engineering-housekeeper-monthly",
        "role": "self",
        "category": "ops",
        "purpose": "housekeeping-monthly",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-housekeeping-monthly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.2",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
    },
    {
      "id": "self-ops-housekeeping-weekly",
      "path": ".github/workflows/self-ops-housekeeping-weekly.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "engineering-housekeeper-weekly",
        "role": "self",
        "category": "ops",
        "purpose": "housekeeping-weekly",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-housekeeping-weekly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "preview",
      "owner": "buildchain-workflows",
      "maturity": "preview",
      "introducedVersion": "4.1.2",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One reusable policy and evidence boundary owns Engineering Housekeeper execution; scheduled callers contain cadence values only."
    },
    {
      "id": "self-ops-merge-queue",
      "path": ".github/workflows/self-ops-merge-queue.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "dev-merge-queue-governance",
        "role": "self",
        "category": "ops",
        "purpose": "merge-queue",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-merge-queue.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-patrol-daily",
      "path": ".github/workflows/self-ops-patrol-daily.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-patrol-daily",
        "role": "self",
        "category": "ops",
        "purpose": "patrol-daily",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-patrol-daily.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-patrol-monthly",
      "path": ".github/workflows/self-ops-patrol-monthly.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-patrol-monthly",
        "role": "self",
        "category": "ops",
        "purpose": "patrol-monthly",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-patrol-monthly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-patrol-weekly",
      "path": ".github/workflows/self-ops-patrol-weekly.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-patrol-weekly",
        "role": "self",
        "category": "ops",
        "purpose": "patrol-weekly",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-patrol-weekly.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-promotion-recovery",
      "path": ".github/workflows/self-ops-promotion-recovery.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-ref-promotion-recovery",
        "role": "self",
        "category": "ops",
        "purpose": "promotion-recovery",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-promotion-recovery.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-runner-smoke",
      "path": ".github/workflows/self-ops-runner-smoke.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "self-hosted-runner-smoke",
        "role": "self",
        "category": "ops",
        "purpose": "runner-smoke",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-runner-smoke.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "compatibility-fixture",
      "owner": "buildchain-workflows",
      "maturity": "compatibility-fixture",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-ops-stable-candidate-patrol",
      "path": ".github/workflows/self-ops-stable-candidate-patrol.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-stable-candidate-patrol",
        "role": "self",
        "category": "ops",
        "purpose": "stable-candidate-patrol",
        "status": "active",
        "canonicalPath": ".github/workflows/self-ops-stable-candidate-patrol.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-patrol",
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-binary-assets",
      "path": ".github/workflows/self-release-binary-assets.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "binary-release-assets",
        "role": "self",
        "category": "release",
        "purpose": "binary-assets",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-binary-assets.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-line-open",
      "path": ".github/workflows/self-release-line-open.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "release-line-bootstrap",
        "role": "self",
        "category": "release",
        "purpose": "line-open",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-line-open.yml",
        "compatibilityAlias": false
      },
      "surface": "release-governance",
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-next-development",
      "path": ".github/workflows/self-release-next-development.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "next-development-review",
        "role": "self",
        "category": "release",
        "purpose": "next-development",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-next-development.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-npm-dry-run",
      "path": ".github/workflows/self-release-npm-dry-run.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "npm-publish",
        "role": "self",
        "category": "release",
        "purpose": "npm-dry-run",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-npm-dry-run.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-promote",
      "path": ".github/workflows/self-release-promote.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "buildchain-ref-promotion",
        "role": "self",
        "category": "release",
        "purpose": "promote",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-promote.yml",
        "compatibilityAlias": false
      },
      "surface": "release-governance",
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-rehearsal-dogfood",
      "path": ".github/workflows/self-release-rehearsal-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-publication-rehearsal-dogfood",
        "role": "self",
        "category": "release",
        "purpose": "rehearsal-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-rehearsal-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    },
    {
      "id": "self-release-tail-dogfood",
      "path": ".github/workflows/self-release-tail-dogfood.yml",
      "reusable": false,
      "inputs": [],
      "inputCount": 0,
      "secrets": [],
      "secretCount": 0,
      "outputs": [],
      "outputCount": 0,
      "taxonomy": {
        "id": "v4-declarative-release-tail-dogfood",
        "role": "self",
        "category": "release",
        "purpose": "tail-dogfood",
        "status": "active",
        "canonicalPath": ".github/workflows/self-release-tail-dogfood.yml",
        "compatibilityAlias": false
      },
      "surface": "repository-workflow",
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-workflows",
      "maturity": "active",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "Canonical workflow owns one declared API or orchestration responsibility."
    }
  ],
  "actionSource": "actions/*/*/*/action.yml reverse input enumeration",
  "actions": [
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/admit",
      "path": "actions/adoption/adopter/admit/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/admit-policy",
      "path": "actions/adoption/adopter/admit-policy/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/aggregate",
      "path": "actions/adoption/adopter/aggregate/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/exercise-platform",
      "path": "actions/adoption/adopter/exercise-platform/action.yml",
      "inputs": [
        "consumer-sha",
        "platform",
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/qualify",
      "path": "actions/adoption/adopter/qualify/action.yml",
      "inputs": [
        "consumer-sha",
        "platform",
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/reconcile",
      "path": "actions/adoption/adopter/reconcile/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "adoption/adopter/select",
      "path": "actions/adoption/adopter/select/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/admit-attestation",
      "path": "actions/build/artifact/admit-attestation/action.yml",
      "inputs": [
        "definition-sha",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/attest",
      "path": "actions/build/artifact/attest/action.yml",
      "inputs": [
        "plan"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/finalize",
      "path": "actions/build/artifact/finalize/action.yml",
      "inputs": [
        "jobs",
        "plan",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/package",
      "path": "actions/build/artifact/package/action.yml",
      "inputs": [
        "passport-artifact",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "build/artifact/prepare-attestation",
      "path": "actions/build/artifact/prepare-attestation/action.yml",
      "inputs": [
        "platform-manifest-path",
        "policy-json",
        "release-passport-path",
        "runtime-sha",
        "subject-path"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/resolve",
      "path": "actions/build/artifact/resolve/action.yml",
      "inputs": [
        "digest",
        "name",
        "output",
        "source-sha",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/retain",
      "path": "actions/build/artifact/retain/action.yml",
      "inputs": [
        "plan",
        "platform",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "build/artifact/seal-attestation",
      "path": "actions/build/artifact/seal-attestation/action.yml",
      "inputs": [
        "attestation-id",
        "attestation-url",
        "bundle-path",
        "preparation-json",
        "runtime-sha",
        "token"
      ],
      "inputCount": 6,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/sign",
      "path": "actions/build/artifact/sign/action.yml",
      "inputs": [
        "certificate-p12-base64",
        "certificate-password",
        "certificate-sha1",
        "control-token",
        "expected-team-id",
        "kind",
        "notary-api-issuer",
        "notary-api-key-id",
        "notary-api-key-p8-base64",
        "plan",
        "platform"
      ],
      "inputCount": 11,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/artifact/transfer",
      "path": "actions/build/artifact/transfer/action.yml",
      "inputs": [
        "plan",
        "platform"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/attestation/prepare-build",
      "path": "actions/build/attestation/prepare-build/action.yml",
      "inputs": [
        "plan",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/attestation/verify-build",
      "path": "actions/build/attestation/verify-build/action.yml",
      "inputs": [
        "attestation-id",
        "attestation-url",
        "bundle-path",
        "plan",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/build",
      "path": "actions/build/binary/build/action.yml",
      "inputs": [
        "matrix-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/dispatch-publication",
      "path": "actions/build/binary/dispatch-publication/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/package",
      "path": "actions/build/binary/package/action.yml",
      "inputs": [
        "matrix-json",
        "tag"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/passport",
      "path": "actions/build/binary/passport/action.yml",
      "inputs": [
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/preflight",
      "path": "actions/build/binary/preflight/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/binary/qualify",
      "path": "actions/build/binary/qualify/action.yml",
      "inputs": [
        "tag",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/credential/admit",
      "path": "actions/build/credential/admit/action.yml",
      "inputs": [
        "plan",
        "platform",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "build/credential/macos-island",
      "path": "actions/build/credential/macos-island/action.yml",
      "inputs": [
        "artifact-id",
        "artifact-name",
        "artifact-relative-output",
        "artifact-stem",
        "buildchain-runtime-sha",
        "certificate-p12-base64",
        "certificate-password",
        "certificate-sha1",
        "entitlements-profile",
        "expected-bundle-id",
        "expected-team-id",
        "input-root",
        "notary-api-issuer",
        "notary-api-key-id",
        "notary-api-key-p8-base64",
        "output-root",
        "platform-id",
        "source-ref",
        "source-repository",
        "source-sha",
        "source-tree-sha"
      ],
      "inputCount": 21,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/credential/retain",
      "path": "actions/build/credential/retain/action.yml",
      "inputs": [
        "artifact-root",
        "manifest-path",
        "plan",
        "platform",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/adapter-gate",
      "path": "actions/build/demo/adapter-gate/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/adapter-render",
      "path": "actions/build/demo/adapter-render/action.yml",
      "inputs": [
        "gate-artifact-name",
        "gate-root",
        "request-json",
        "source-sha",
        "workflow-sha"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/capture",
      "path": "actions/build/demo/capture/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/capture-collection",
      "path": "actions/build/demo/capture-collection/action.yml",
      "inputs": [
        "renderer-image",
        "runtime-sha",
        "scenario-path",
        "source-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/materialize-collection",
      "path": "actions/build/demo/materialize-collection/action.yml",
      "inputs": [
        "base-ref",
        "renderer-image",
        "runtime-sha",
        "scenario-path",
        "source-sha",
        "token"
      ],
      "inputCount": 6,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/measure-media",
      "path": "actions/build/demo/measure-media/action.yml",
      "inputs": [
        "fixture-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/prepare-binary",
      "path": "actions/build/demo/prepare-binary/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/publish",
      "path": "actions/build/demo/publish/action.yml",
      "inputs": [
        "capture-artifact-name",
        "evidence-artifact-name",
        "request-json",
        "source-sha",
        "update-token",
        "workflow-sha"
      ],
      "inputCount": 6,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/qualify",
      "path": "actions/build/demo/qualify/action.yml",
      "inputs": [
        "capture-artifact-digest",
        "capture-artifact-name",
        "request-json",
        "source-sha",
        "workflow-sha"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/qualify-binary",
      "path": "actions/build/demo/qualify-binary/action.yml",
      "inputs": [
        "source-checkout-outcome"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/qualify-collection",
      "path": "actions/build/demo/qualify-collection/action.yml",
      "inputs": [
        "media-profile",
        "render-failure-advisory",
        "render-media",
        "renderer-image",
        "runtime-sha",
        "scenario-path",
        "source-sha"
      ],
      "inputCount": 7,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/qualify-media",
      "path": "actions/build/demo/qualify-media/action.yml",
      "inputs": [
        "matrix-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/render-media",
      "path": "actions/build/demo/render-media/action.yml",
      "inputs": [
        "gate-root",
        "media-profile",
        "renderer-image",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/demo/run-adapter",
      "path": "actions/build/demo/run-adapter/action.yml",
      "inputs": [
        "adapter-arguments-json",
        "adapter-path",
        "media-profile",
        "renderer-image",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 6,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/environment/provision",
      "path": "actions/build/environment/provision/action.yml",
      "inputs": [
        "plan",
        "platform",
        "token",
        "tools"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/aggregate",
      "path": "actions/build/gate/aggregate/action.yml",
      "inputs": [
        "controller-plan-artifact",
        "execution-result",
        "plan-artifact",
        "plan-result",
        "request-json",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 7,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/execute",
      "path": "actions/build/gate/execute/action.yml",
      "inputs": [
        "cache-mirror-url-template",
        "cache-reference-repository-template",
        "matrix-json",
        "plan-artifact",
        "request-json",
        "runtime-ref",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 8,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/plan",
      "path": "actions/build/gate/plan/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/qualify-profile",
      "path": "actions/build/gate/qualify-profile/action.yml",
      "inputs": [
        "source-sha"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/resolve",
      "path": "actions/build/gate/resolve/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/gate/run-profile",
      "path": "actions/build/gate/run-profile/action.yml",
      "inputs": [
        "entry-json",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/lifecycle/plan",
      "path": "actions/build/lifecycle/plan/action.yml",
      "inputs": [
        "config-path",
        "control-token",
        "workflow-ref",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/lifecycle/prepare",
      "path": "actions/build/lifecycle/prepare/action.yml",
      "inputs": [
        "checkout-source",
        "plan",
        "platform",
        "tools"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "build/lifecycle/run",
      "path": "actions/build/lifecycle/run/action.yml",
      "inputs": [
        "artifact-name",
        "artifact-paths",
        "command",
        "cwd",
        "diagnostics-artifact-name",
        "diagnostics-path",
        "expected-artifacts-json",
        "manifest-artifact-name",
        "manifest-path",
        "platform-id",
        "platform-name",
        "process-sample-interval-ms",
        "process-samples-path",
        "process-summary-path",
        "process-summary-required",
        "requested-parallelism",
        "required",
        "sample-process-tree",
        "stage",
        "substage-evidence-path",
        "summary-path",
        "timeout-minutes"
      ],
      "inputCount": 22,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/lifecycle/stage",
      "path": "actions/build/lifecycle/stage/action.yml",
      "inputs": [
        "plan",
        "platform",
        "stage",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "build/lifecycle/validate",
      "path": "actions/build/lifecycle/validate/action.yml",
      "inputs": [
        "config-required",
        "require-lifecycle-stages",
        "require-version-state"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/plan/resolve",
      "path": "actions/build/plan/resolve/action.yml",
      "inputs": [
        "config-path",
        "control-token",
        "token",
        "workflow-ref",
        "workflow-sha"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/admit-requests",
      "path": "actions/build/signing/admit-requests/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/complete",
      "path": "actions/build/signing/complete/action.yml",
      "inputs": [
        "control-token",
        "plan",
        "platform",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/qualify-delivery",
      "path": "actions/build/signing/qualify-delivery/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/seal-native",
      "path": "actions/build/signing/seal-native/action.yml",
      "inputs": [
        "credential-artifact-root",
        "evidence-path",
        "item-json",
        "request-json",
        "signed-payload"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/sign-detached",
      "path": "actions/build/signing/sign-detached/action.yml",
      "inputs": [
        "item-json",
        "key-id",
        "private-key-base64",
        "request-json"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/sign-macos",
      "path": "actions/build/signing/sign-macos/action.yml",
      "inputs": [
        "certificate-base64",
        "certificate-password",
        "certificate-sha1",
        "item-json",
        "notary-issuer",
        "notary-key-base64",
        "notary-key-id",
        "request-json",
        "team-id"
      ],
      "inputCount": 9,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/signing/sign-windows",
      "path": "actions/build/signing/sign-windows/action.yml",
      "inputs": [
        "certificate-base64",
        "certificate-password",
        "certificate-sha1",
        "item-json",
        "request-json",
        "timestamp-url"
      ],
      "inputCount": 6,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/admit",
      "path": "actions/build/source/admit/action.yml",
      "inputs": [
        "directory",
        "expected-sha",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/check-lifecycle",
      "path": "actions/build/source/check-lifecycle/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/evaluate-proof",
      "path": "actions/build/source/evaluate-proof/action.yml",
      "inputs": [
        "candidate-json",
        "identities-json",
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/finalize",
      "path": "actions/build/source/finalize/action.yml",
      "inputs": [
        "identities-json",
        "observations-json",
        "request-json",
        "runtime-ref",
        "source-outcome"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/initialize",
      "path": "actions/build/source/initialize/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/locate-proof",
      "path": "actions/build/source/locate-proof/action.yml",
      "inputs": [
        "token"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/proof",
      "path": "actions/build/source/proof/action.yml",
      "inputs": [
        "identities-json",
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/qualify",
      "path": "actions/build/source/qualify/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "source-checkout-outcome",
        "steps-source-outcome"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/run-check",
      "path": "actions/build/source/run-check/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/source/verify-checkouts",
      "path": "actions/build/source/verify-checkouts/action.yml",
      "inputs": [
        "source-directory",
        "source-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/admit-consumer",
      "path": "actions/build/stage-capsule/admit-consumer/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/aggregate-consumer",
      "path": "actions/build/stage-capsule/aggregate-consumer/action.yml",
      "inputs": [
        "consumer",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/qualify",
      "path": "actions/build/stage-capsule/qualify/action.yml",
      "inputs": [
        "matrix-json",
        "request-json",
        "source-checkout-outcome",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/qualify-consumer",
      "path": "actions/build/stage-capsule/qualify-consumer/action.yml",
      "inputs": [
        "platform",
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/reconcile",
      "path": "actions/build/stage-capsule/reconcile/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/rehearse",
      "path": "actions/build/stage-capsule/rehearse/action.yml",
      "inputs": [
        "platform"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/stage-capsule/verify-checkpoints",
      "path": "actions/build/stage-capsule/verify-checkpoints/action.yml",
      "inputs": [
        "matrix-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/verification/backbone",
      "path": "actions/build/verification/backbone/action.yml",
      "inputs": [
        "source-checkout-outcome"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/verification/qualify-backbone",
      "path": "actions/build/verification/qualify-backbone/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/verification/qualify-runner",
      "path": "actions/build/verification/qualify-runner/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/verification/qualify-source",
      "path": "actions/build/verification/qualify-source/action.yml",
      "inputs": [
        "token"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "build/verification/repository",
      "path": "actions/build/verification/repository/action.yml",
      "inputs": [
        "source-checkout-outcome"
      ],
      "inputCount": 1,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "consumer/policy/admit",
      "path": "actions/consumer/policy/admit/action.yml",
      "inputs": [
        "alpha-lock-path",
        "definition-repository",
        "definition-sha",
        "directory",
        "expected-channel",
        "invocation-directory",
        "runtime-sha",
        "source-sha",
        "stable-lock-path",
        "workflow",
        "workflow-sha"
      ],
      "inputCount": 11,
      "capabilityGroup": "governance-versioning",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/admit",
      "path": "actions/dev-delivery/candidate/admit/action.yml",
      "inputs": [
        "github-token",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/inspect-request",
      "path": "actions/dev-delivery/candidate/inspect-request/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/qualify",
      "path": "actions/dev-delivery/candidate/qualify/action.yml",
      "inputs": [
        "github-token",
        "needs-json",
        "request-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/qualify-source",
      "path": "actions/dev-delivery/candidate/qualify-source/action.yml",
      "inputs": [
        "branch",
        "request-json",
        "runtime-ref",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/reserve",
      "path": "actions/dev-delivery/candidate/reserve/action.yml",
      "inputs": [
        "github-token",
        "predecessors-ok",
        "proof-outcome",
        "proof-source-proof-root",
        "qualify-outcome",
        "request-json",
        "runtime-sha",
        "target-branch"
      ],
      "inputCount": 8,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/candidate/schedule",
      "path": "actions/dev-delivery/candidate/schedule/action.yml",
      "inputs": [
        "branch",
        "predecessors-ok",
        "proof-outcome",
        "qualification-outcome",
        "request-json",
        "runtime-sha",
        "source-proof-root",
        "token"
      ],
      "inputCount": 8,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/admit-finalizer",
      "path": "actions/dev-delivery/native/admit-finalizer/action.yml",
      "inputs": [
        "branch",
        "pull-request",
        "runner-environment",
        "runtime-selection-root",
        "runtime-sha",
        "source-head",
        "token"
      ],
      "inputCount": 7,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/execute",
      "path": "actions/dev-delivery/native/execute/action.yml",
      "inputs": [
        "needs-json",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/heartbeat",
      "path": "actions/dev-delivery/native/heartbeat/action.yml",
      "inputs": [
        "github-token",
        "needs-json",
        "request-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/maintain-lease",
      "path": "actions/dev-delivery/native/maintain-lease/action.yml",
      "inputs": [
        "branch",
        "heartbeat-seconds",
        "lease-seconds",
        "runtime-sha",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/qualify-proof",
      "path": "actions/dev-delivery/native/qualify-proof/action.yml",
      "inputs": [
        "branch",
        "request-json",
        "runtime-sha",
        "source-proof-root",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/run-proof",
      "path": "actions/dev-delivery/native/run-proof/action.yml",
      "inputs": [
        "branch",
        "request-json",
        "runner-environment",
        "runtime-selection-root",
        "runtime-sha",
        "source-proof-root"
      ],
      "inputCount": 6,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/seal",
      "path": "actions/dev-delivery/native/seal/action.yml",
      "inputs": [
        "needs-json",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/native/seal-transfer",
      "path": "actions/dev-delivery/native/seal-transfer/action.yml",
      "inputs": [
        "runner-environment",
        "runtime-selection-root",
        "runtime-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/queue/admit-landing",
      "path": "actions/dev-delivery/queue/admit-landing/action.yml",
      "inputs": [
        "branch",
        "project-cut-proof-root",
        "request-json",
        "runtime-sha",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/queue/apply-policy",
      "path": "actions/dev-delivery/queue/apply-policy/action.yml",
      "inputs": [
        "apply",
        "branch",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/queue/complete",
      "path": "actions/dev-delivery/queue/complete/action.yml",
      "inputs": [
        "already-qualified",
        "boundary-outcome",
        "defer-landing",
        "failure-settlement-outcome",
        "heartbeat-job-outcome",
        "merge-step-outcome",
        "native-job-outcome",
        "native-qualification-outcome",
        "run-native",
        "seal-job-outcome",
        "targeted",
        "targeted-ok",
        "warrant-mode"
      ],
      "inputCount": 13,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/queue/land",
      "path": "actions/dev-delivery/queue/land/action.yml",
      "inputs": [
        "boundary-native-outcome",
        "boundary-outcome",
        "failure-final-outcome",
        "github-token",
        "native-final-outcome",
        "needs-json",
        "predecessors-ok",
        "request-json"
      ],
      "inputCount": 8,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/queue/reconcile",
      "path": "actions/dev-delivery/queue/reconcile/action.yml",
      "inputs": [
        "apply",
        "branch",
        "source-checkout-outcome",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/warrant/cancel",
      "path": "actions/dev-delivery/warrant/cancel/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-github-token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/warrant/cancel-queued",
      "path": "actions/dev-delivery/warrant/cancel-queued/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/warrant/close-event",
      "path": "actions/dev-delivery/warrant/close-event/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/warrant/settle",
      "path": "actions/dev-delivery/warrant/settle/action.yml",
      "inputs": [
        "github-token",
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "dev-delivery/warrant/settle-native-failure",
      "path": "actions/dev-delivery/warrant/settle-native-failure/action.yml",
      "inputs": [
        "branch",
        "runtime-sha",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/alpha-candidate/observe",
      "path": "actions/governance/alpha-candidate/observe/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository"
      ],
      "inputCount": 3,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/alpha-candidate/reconcile",
      "path": "actions/governance/alpha-candidate/reconcile/action.yml",
      "inputs": [
        "observation-json",
        "pull-request-body-prefix",
        "request-json",
        "settlement-authorized",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/alpha-candidate/settle",
      "path": "actions/governance/alpha-candidate/settle/action.yml",
      "inputs": [
        "observation-json",
        "pull-request-body-prefix",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/candidate/render-body",
      "path": "actions/governance/candidate/render-body/action.yml",
      "inputs": [
        "request-json",
        "source-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/dev-qualification/apply",
      "path": "actions/governance/dev-qualification/apply/action.yml",
      "inputs": [
        "observation-json",
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-qualification-token"
      ],
      "inputCount": 5,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/dev-qualification/observe",
      "path": "actions/governance/dev-qualification/observe/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository"
      ],
      "inputCount": 3,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/dev-qualification/reconcile",
      "path": "actions/governance/dev-qualification/reconcile/action.yml",
      "inputs": [
        "mode",
        "observation-json",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/housekeeping/delete-branches",
      "path": "actions/governance/housekeeping/delete-branches/action.yml",
      "inputs": [
        "needs-plan-outputs-plan-artifact",
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-housekeeper-app-id",
        "secrets-housekeeper-app-private-key",
        "secrets-housekeeper-token"
      ],
      "inputCount": 7,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/housekeeping/label-pull-requests",
      "path": "actions/governance/housekeeping/label-pull-requests/action.yml",
      "inputs": [
        "needs-plan-outputs-plan-artifact",
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-housekeeper-app-id",
        "secrets-housekeeper-app-private-key",
        "secrets-housekeeper-token"
      ],
      "inputCount": 7,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/housekeeping/plan",
      "path": "actions/governance/housekeeping/plan/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-housekeeper-app-id",
        "secrets-housekeeper-app-private-key",
        "secrets-housekeeper-token"
      ],
      "inputCount": 6,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/housekeeping/reconcile",
      "path": "actions/governance/housekeeping/reconcile/action.yml",
      "inputs": [
        "repository",
        "request-json",
        "scope",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "governance/incident/report",
      "path": "actions/governance/incident/report/action.yml",
      "inputs": [
        "artifact-url",
        "body",
        "body-file",
        "buildchain-ref",
        "buildchain-version",
        "channel",
        "comment-cooldown-hours",
        "consumer-ref",
        "consumer-repository",
        "consumer-sha",
        "diagnosis",
        "diagnostics-path",
        "diagnostics-url",
        "dry-run",
        "fail-on-error",
        "failure-code",
        "fingerprint",
        "friction-class",
        "heavy-builds-json",
        "job",
        "labels",
        "max-body-bytes",
        "mode",
        "next-action",
        "passport-path",
        "passport-url",
        "pull-request",
        "related-runs-json",
        "release-intent",
        "report-kind",
        "repository",
        "run-attempt",
        "run-id",
        "run-url",
        "source-ref",
        "source-sha",
        "source-tree-hash",
        "summary",
        "target-repository",
        "title",
        "token",
        "version",
        "workflow"
      ],
      "inputCount": 43,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/release/align-checks",
      "path": "actions/governance/release/align-checks/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/release/reconcile",
      "path": "actions/governance/release/reconcile/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/audit",
      "path": "actions/governance/repository/audit/action.yml",
      "inputs": [
        "auditor-app-id",
        "auditor-private-key",
        "governance-read-token"
      ],
      "inputCount": 3,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/collect-audit",
      "path": "actions/governance/repository/collect-audit/action.yml",
      "inputs": [
        "token"
      ],
      "inputCount": 1,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/finalize-audit",
      "path": "actions/governance/repository/finalize-audit/action.yml",
      "inputs": [
        "credential-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/patrol",
      "path": "actions/governance/repository/patrol/action.yml",
      "inputs": [
        "github-token",
        "request-json",
        "runtime-ref",
        "runtime-repository"
      ],
      "inputCount": 4,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/reconcile-patrol",
      "path": "actions/governance/repository/reconcile-patrol/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/repository/verify",
      "path": "actions/governance/repository/verify/action.yml",
      "inputs": [
        "receipt-json",
        "runtime-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/runner/verify",
      "path": "actions/governance/runner/verify/action.yml",
      "inputs": [
        "source-checkout-outcome"
      ],
      "inputCount": 1,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/stable-candidate/patrol",
      "path": "actions/governance/stable-candidate/patrol/action.yml",
      "inputs": [
        "policy-json",
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-approval-token",
        "secrets-promotion-token"
      ],
      "inputCount": 6,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "governance/stable-candidate/reconcile",
      "path": "actions/governance/stable-candidate/reconcile/action.yml",
      "inputs": [
        "approval-token",
        "policy-json",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/controller/identify",
      "path": "actions/observability/controller/identify/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/controller/plan",
      "path": "actions/observability/controller/plan/action.yml",
      "inputs": [
        "contract-digest",
        "controller-id",
        "input-boundary",
        "inputs-json",
        "plan-path",
        "registry",
        "runtime-ref",
        "runtime-sha",
        "source-repository",
        "source-sha"
      ],
      "inputCount": 10,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/controller/receipt",
      "path": "actions/observability/controller/receipt/action.yml",
      "inputs": [
        "artifact",
        "evidence-files-json",
        "evidence-json",
        "plan-path",
        "reason-code",
        "reason-summary",
        "receipt-path",
        "stages-json"
      ],
      "inputCount": 8,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/evidence/admit-publisher",
      "path": "actions/observability/evidence/admit-publisher/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/evidence/advance",
      "path": "actions/observability/evidence/advance/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/evidence/publish",
      "path": "actions/observability/evidence/publish/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "observability/evidence/qualify",
      "path": "actions/observability/evidence/qualify/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "observability-diagnostics",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/candidate/admit",
      "path": "actions/paper/candidate/admit/action.yml",
      "inputs": [
        "app-client-id",
        "app-private-key",
        "candidate-plan-json",
        "capability-json",
        "request-json",
        "source-checkout-outcome",
        "write-token"
      ],
      "inputCount": 7,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/candidate/publish",
      "path": "actions/paper/candidate/publish/action.yml",
      "inputs": [
        "candidate-json",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/candidate/verify",
      "path": "actions/paper/candidate/verify/action.yml",
      "inputs": [
        "candidate-plan-json",
        "capability-json",
        "request-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/publication/finalize",
      "path": "actions/paper/publication/finalize/action.yml",
      "inputs": [
        "aggregate-outcome",
        "candidate-json",
        "observations-json",
        "publication-json",
        "publish-outcome"
      ],
      "inputCount": 5,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/publication/lock",
      "path": "actions/paper/publication/lock/action.yml",
      "inputs": [
        "candidate-json",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/publication/observe",
      "path": "actions/paper/publication/observe/action.yml",
      "inputs": [
        "candidate-json",
        "publication-json",
        "target-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "paper/publication/settle",
      "path": "actions/paper/publication/settle/action.yml",
      "inputs": [
        "candidate-json",
        "plan-outcome",
        "promote-outcome",
        "publication-json",
        "publish-outcome",
        "request-json",
        "target-json",
        "token"
      ],
      "inputCount": 8,
      "capabilityGroup": "reusable-build",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/aws/configure",
      "path": "actions/providers/aws/configure/action.yml",
      "inputs": [
        "region",
        "role",
        "session-name"
      ],
      "inputCount": 3,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/git/sync",
      "path": "actions/providers/git/sync/action.yml",
      "inputs": [
        "force",
        "remote-credential",
        "remote-host",
        "remote-path",
        "remote-repo",
        "remote-user",
        "source-ref"
      ],
      "inputCount": 7,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/github/admit-access",
      "path": "actions/providers/github/admit-access/action.yml",
      "inputs": [
        "app-id-configured",
        "client-configured",
        "failure-policy",
        "organization",
        "private-key-configured",
        "repository"
      ],
      "inputCount": 6,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/github/select-token",
      "path": "actions/providers/github/select-token/action.yml",
      "inputs": [
        "app-outcome",
        "app-token",
        "client-configured",
        "failure-policy",
        "fallback-token",
        "private-key-configured",
        "require-token",
        "workflow-token"
      ],
      "inputCount": 8,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/github/token",
      "path": "actions/providers/github/token/action.yml",
      "inputs": [
        "app-id",
        "client-id",
        "failure-policy",
        "fallback-token",
        "organization",
        "permission-checks",
        "permission-contents",
        "permission-pull-requests",
        "private-key",
        "repository",
        "require-token",
        "workflow-token"
      ],
      "inputCount": 12,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "providers/source/checkout",
      "path": "actions/providers/source/checkout/action.yml",
      "inputs": [
        "cache-mode",
        "cache-timeout-seconds",
        "diagnostics-path",
        "directory",
        "fallback",
        "fetch-attempts",
        "github-timeout-seconds",
        "history",
        "mirror-url-template",
        "ref",
        "reference-repository-template",
        "repository",
        "reset-working-tree",
        "sha",
        "token",
        "tree-sha"
      ],
      "inputCount": 16,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/admit",
      "path": "actions/publication/authority/admit/action.yml",
      "inputs": [
        "auditor-app-id",
        "auditor-private-key",
        "governance-read-token",
        "request-json",
        "runtime-ref",
        "runtime-repository"
      ],
      "inputCount": 6,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/artifact-evidence",
      "path": "actions/publication/authority/artifact-evidence/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/assemble",
      "path": "actions/publication/authority/assemble/action.yml",
      "inputs": [
        "consumer-gate-json",
        "governance-token",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/candidate-evidence",
      "path": "actions/publication/authority/candidate-evidence/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/inspect-request",
      "path": "actions/publication/authority/inspect-request/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/locate-controller",
      "path": "actions/publication/authority/locate-controller/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/qualify-admission",
      "path": "actions/publication/authority/qualify-admission/action.yml",
      "inputs": [
        "admission-bundle-json",
        "consumer-gate-json",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/qualify-consumer-gate",
      "path": "actions/publication/authority/qualify-consumer-gate/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/verify",
      "path": "actions/publication/authority/verify/action.yml",
      "inputs": [
        "admission-bundle-json",
        "consumer-gate-json",
        "request-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/authority/verify-governance",
      "path": "actions/publication/authority/verify-governance/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/binary/publish",
      "path": "actions/publication/binary/publish/action.yml",
      "inputs": [
        "capability-json",
        "runtime-sha",
        "source-sha",
        "tag",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/build",
      "path": "actions/publication/candidate/build/action.yml",
      "inputs": [
        "request-json",
        "runtime-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/collect",
      "path": "actions/publication/candidate/collect/action.yml",
      "inputs": [
        "controller-identities-outcome",
        "controller-plan-outcome",
        "manifest-path",
        "outcomes-json",
        "passport-path",
        "predecessors-ok",
        "request-json",
        "runtime-outcome",
        "source-sha"
      ],
      "inputCount": 9,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/package",
      "path": "actions/publication/candidate/package/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/plan",
      "path": "actions/publication/candidate/plan/action.yml",
      "inputs": [
        "request-json",
        "runtime-class",
        "runtime-override",
        "runtime-ref",
        "runtime-sha",
        "source-checkout-outcome",
        "workflow-ref",
        "workflow-sha"
      ],
      "inputCount": 8,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/qualify",
      "path": "actions/publication/candidate/qualify/action.yml",
      "inputs": [
        "request-json",
        "runtime-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/candidate/record-evidence",
      "path": "actions/publication/candidate/record-evidence/action.yml",
      "inputs": [
        "manifest-path",
        "outcomes-json",
        "passport-path",
        "request-json",
        "runtime-outcomes-json",
        "source-sha",
        "upload-outcome"
      ],
      "inputCount": 7,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/npm/preview",
      "path": "actions/publication/npm/preview/action.yml",
      "inputs": [
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/npm/qualify-preview",
      "path": "actions/publication/npm/qualify-preview/action.yml",
      "inputs": [
        "run-check"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/oci/admit-preview",
      "path": "actions/publication/oci/admit-preview/action.yml",
      "inputs": [
        "token",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/oci/apply-preview",
      "path": "actions/publication/oci/apply-preview/action.yml",
      "inputs": [
        "registry-token",
        "token",
        "workflow-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/oci/promote-preview",
      "path": "actions/publication/oci/promote-preview/action.yml",
      "inputs": [
        "promotion-token",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/settlement/retain",
      "path": "actions/publication/settlement/retain/action.yml",
      "inputs": [
        "apply-outcome",
        "candidate-sha",
        "runtime-sha",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "publication/settlement/verify",
      "path": "actions/publication/settlement/verify/action.yml",
      "inputs": [
        "candidate-sha",
        "runtime-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/binary/coordinates",
      "path": "actions/release/binary/coordinates/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/binary/publish",
      "path": "actions/release/binary/publish/action.yml",
      "inputs": [
        "capability-json",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/candidate/classify-publication",
      "path": "actions/release/candidate/classify-publication/action.yml",
      "inputs": [
        "token"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/candidate/qualify-public-build",
      "path": "actions/release/candidate/qualify-public-build/action.yml",
      "inputs": [
        "run-id",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/candidate/qualify-stable",
      "path": "actions/release/candidate/qualify-stable/action.yml",
      "inputs": [
        "run-id",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/candidate/resolve-public-build",
      "path": "actions/release/candidate/resolve-public-build/action.yml",
      "inputs": [
        "run-id",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/line/bootstrap",
      "path": "actions/release/line/bootstrap/action.yml",
      "inputs": [
        "request-json",
        "token",
        "workflow-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/line/inspect",
      "path": "actions/release/line/inspect/action.yml",
      "inputs": [
        "directory"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/line/open",
      "path": "actions/release/line/open/action.yml",
      "inputs": [
        "request-json",
        "source-checkout-outcome",
        "token",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/line/verify-lineage",
      "path": "actions/release/line/verify-lineage/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/next-development/complete-review",
      "path": "actions/release/next-development/complete-review/action.yml",
      "inputs": [
        "approval-token",
        "mutation-token",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/next-development/qualify",
      "path": "actions/release/next-development/qualify/action.yml",
      "inputs": [
        "token"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/next-development/review",
      "path": "actions/release/next-development/review/action.yml",
      "inputs": [
        "secrets-buildchain-approval-token",
        "secrets-buildchain-promotion-token",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/admit",
      "path": "actions/release/promotion/admit/action.yml",
      "inputs": [
        "request-json",
        "selection-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/admit-invocation",
      "path": "actions/release/promotion/admit-invocation/action.yml",
      "inputs": [
        "consumer-policy-root",
        "request-json",
        "selection-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/apply",
      "path": "actions/release/promotion/apply/action.yml",
      "inputs": [
        "needs-qualify-outputs-candidate-artifact",
        "needs-qualify-outputs-candidate-build-summary-path",
        "needs-qualify-outputs-candidate-passport-path",
        "needs-qualify-outputs-candidate-source-sha",
        "needs-qualify-outputs-channel",
        "needs-qualify-outputs-exact-tag",
        "needs-qualify-outputs-product-publication-intent-path",
        "needs-qualify-outputs-publication-qualification-path",
        "needs-qualify-outputs-publisher-sha",
        "needs-qualify-outputs-recovery-receipt-path",
        "needs-qualify-outputs-release-artifact-paths",
        "needs-qualify-outputs-requested-sha",
        "needs-qualify-outputs-required-artifacts-path",
        "needs-qualify-outputs-runtime-sha",
        "needs-qualify-outputs-runtime-tree",
        "needs-qualify-outputs-sealed-bundle-manifest",
        "needs-qualify-outputs-sealed-bundle-root",
        "needs-qualify-outputs-stage-capsules-path",
        "needs-qualify-outputs-target-ref",
        "needs-qualify-outputs-version",
        "request-json",
        "secrets-buildchain-promotion-token",
        "source-checkout-outcome"
      ],
      "inputCount": 23,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/bind-selection",
      "path": "actions/release/promotion/bind-selection/action.yml",
      "inputs": [
        "request-json",
        "selection-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "release/promotion/candidate",
      "path": "actions/release/promotion/candidate/action.yml",
      "inputs": [
        "artifact-paths",
        "candidate-build-summary-path",
        "candidate-passport-path",
        "failure-after-capability",
        "mutation-token",
        "product-publication-intent-path",
        "publication-qualification-path",
        "publish-artifact-kind",
        "publish-auth",
        "publish-command",
        "publish-dist-tag",
        "publish-mode",
        "publish-package-main",
        "publish-package-set-order",
        "publish-rematerialize-on-resume",
        "publish-transaction-override",
        "publisher-workflow-sha",
        "recovery-receipt-path",
        "repository",
        "required-artifacts-path",
        "required-status-check",
        "resume-transaction-id",
        "runtime-commit",
        "runtime-tree",
        "sealed-bundle-manifest",
        "sealed-bundle-root",
        "source-sha",
        "stage-capsules-path",
        "state-path",
        "target-ref",
        "target-sha",
        "token"
      ],
      "inputCount": 32,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/classify",
      "path": "actions/release/promotion/classify/action.yml",
      "inputs": [
        "source-checkout-outcome"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/inspect-invocation",
      "path": "actions/release/promotion/inspect-invocation/action.yml",
      "inputs": [
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/qualify",
      "path": "actions/release/promotion/qualify/action.yml",
      "inputs": [
        "job-workflow-sha",
        "request-json",
        "runtime-ref",
        "runtime-repository"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/qualify-candidate",
      "path": "actions/release/promotion/qualify-candidate/action.yml",
      "inputs": [
        "request-json",
        "token",
        "workflow-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "release/promotion/ref",
      "path": "actions/release/promotion/ref/action.yml",
      "inputs": [
        "allow-repository",
        "branch-protection-bypass-apps",
        "dry-run",
        "expected-publication-version",
        "generated-pull-request-token",
        "generated-ref-update-token",
        "generated-status-check-token",
        "github-release",
        "github-release-artifact-paths",
        "promote-only-release-candidate",
        "publication-capability-json",
        "publication-gate-aggregate-json",
        "publication-qualification-receipt-json",
        "publication-used-qualification-nonces-json",
        "publish-auth",
        "publish-command",
        "publish-dist-tag",
        "publish-evidence-path",
        "publish-mode",
        "publish-package-main",
        "publish-package-set-order",
        "publish-provider-json",
        "publish-rematerialize-on-resume",
        "publish-required-artifacts-json",
        "publish-required-artifacts-path",
        "publish-sealed-bundle-manifest",
        "publish-sealed-bundle-root",
        "publish-source-locked",
        "publish-source-ref",
        "publish-source-sha",
        "publish-tooling-sha",
        "publish-transaction",
        "publish-transaction-override",
        "reconciliation-workspace",
        "release-candidate-build-summary-path",
        "release-candidate-family-assignment-id",
        "release-candidate-family-evidence-required",
        "release-candidate-family-evidence-root",
        "release-candidate-family-initiative-id",
        "release-candidate-passport-path",
        "release-candidate-version",
        "release-material-sha",
        "release-passport",
        "release-passport-attachment-command",
        "release-passport-build-summary-path",
        "release-passport-buildchain-self-kfd",
        "release-passport-evidence-jsons",
        "release-passport-github-artifact-attestation-policy-jsons",
        "release-passport-impact-json",
        "release-passport-invariant-passport-command",
        "release-passport-invariant-passport-jsons",
        "release-passport-kfd-1-witness-jsons",
        "release-passport-kfd-2-claim-jsons",
        "release-passport-kfd-3-artifact-verify-command",
        "release-passport-kfd-3-artifact-witness-jsons",
        "release-passport-kfd-3-prebuild-witness-jsons",
        "release-passport-kfd-adopter-manifest-json",
        "release-passport-kfd-product-gate-jsons",
        "release-passport-kfd-support-matrix-json",
        "release-passport-output-dir",
        "release-passport-platform-manifest-paths",
        "release-passport-product-name",
        "release-passport-promotion-routing-json",
        "release-passport-v4-consumer-policy-certification-json",
        "release-passport-v4-consumer-policy-certification-root",
        "release-passport-v4-runtime-resume-evidence-command",
        "release-passport-v4-runtime-resume-evidence-json",
        "release-tail-state-path",
        "require-governance",
        "require-publication-qualification",
        "require-publish-source-lock",
        "require-version-state",
        "required-status-check",
        "sha",
        "tags",
        "target-ref",
        "token",
        "transaction-state-path",
        "verification-command"
      ],
      "inputCount": 79,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/resolve",
      "path": "actions/release/promotion/resolve/action.yml",
      "inputs": [
        "request-json",
        "workflow-ref",
        "workflow-repository",
        "workflow-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/route",
      "path": "actions/release/promotion/route/action.yml",
      "inputs": [
        "request-json",
        "token",
        "workflow-ref",
        "workflow-repository",
        "workflow-sha"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/promotion/settle",
      "path": "actions/release/promotion/settle/action.yml",
      "inputs": [
        "needs-qualify-outputs-action",
        "needs-qualify-outputs-requested-sha",
        "needs-qualify-outputs-runtime-sha",
        "request-json"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/capture",
      "path": "actions/release/propagation/capture/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/deliver",
      "path": "actions/release/propagation/deliver/action.yml",
      "inputs": [
        "controller-plan-digest",
        "predecessors-ok",
        "propagation-key",
        "request-json",
        "token"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/materialize",
      "path": "actions/release/propagation/materialize/action.yml",
      "inputs": [
        "node-path",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/plan",
      "path": "actions/release/propagation/plan/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref",
        "runtime-repository",
        "secrets-propagation-token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/reconcile",
      "path": "actions/release/propagation/reconcile/action.yml",
      "inputs": [
        "predecessors-ok",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/report",
      "path": "actions/release/propagation/report/action.yml",
      "inputs": [
        "cancelled",
        "reconcile-outcome",
        "request-json",
        "upload-outcome",
        "work-upload-outcome"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/propagation/resolve",
      "path": "actions/release/propagation/resolve/action.yml",
      "inputs": [
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/admit",
      "path": "actions/release/reseal/admit/action.yml",
      "inputs": [
        "request-json",
        "runtime-sha",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/close",
      "path": "actions/release/reseal/close/action.yml",
      "inputs": [
        "runtime-sha"
      ],
      "inputCount": 1,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/finalize-platform",
      "path": "actions/release/reseal/finalize-platform/action.yml",
      "inputs": [
        "finalization-command",
        "platform",
        "runtime-sha",
        "signing-token"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/plan",
      "path": "actions/release/reseal/plan/action.yml",
      "inputs": [
        "evidence-read-token",
        "request-json",
        "workflow-sha"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/platforms",
      "path": "actions/release/reseal/platforms/action.yml",
      "inputs": [
        "evidence-read-token",
        "matrix-json",
        "request-artifact",
        "request-json",
        "runtime-sha",
        "signing-authority-repository",
        "signing-authority-run-id",
        "signing-result-artifact",
        "signing-token",
        "source-checkout-outcome",
        "source-run-id"
      ],
      "inputCount": 11,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/reseal/seal",
      "path": "actions/release/reseal/seal/action.yml",
      "inputs": [
        "request-artifact",
        "request-json",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/attest",
      "path": "actions/release/signing/attest/action.yml",
      "inputs": [
        "definition-sha",
        "request-json",
        "runtime-ref"
      ],
      "inputCount": 3,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/deliver",
      "path": "actions/release/signing/deliver/action.yml",
      "inputs": [
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 2,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/detached",
      "path": "actions/release/signing/detached/action.yml",
      "inputs": [
        "item-json",
        "key-id",
        "private-key-base64",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 5,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/intake",
      "path": "actions/release/signing/intake/action.yml",
      "inputs": [
        "authority-token",
        "promotion-token",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 4,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/macos",
      "path": "actions/release/signing/macos/action.yml",
      "inputs": [
        "certificate-base64",
        "certificate-password",
        "certificate-sha1",
        "item-json",
        "notary-issuer",
        "notary-key-base64",
        "notary-key-id",
        "request-json",
        "source-checkout-outcome",
        "team-id"
      ],
      "inputCount": 10,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "release/signing/windows",
      "path": "actions/release/signing/windows/action.yml",
      "inputs": [
        "certificate-base64",
        "certificate-password",
        "certificate-sha1",
        "item-json",
        "request-json",
        "source-checkout-outcome",
        "timestamp-url"
      ],
      "inputCount": 7,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "public",
      "id": "release/tail/settle",
      "path": "actions/release/tail/settle/action.yml",
      "inputs": [
        "candidate-root",
        "declaration",
        "execute",
        "github-token",
        "http-token",
        "provider-bindings",
        "rehearsal-authority",
        "rehearsal-capsule",
        "rehearsal-evidence-path",
        "rehearsal-mode",
        "state-path"
      ],
      "inputCount": 11,
      "capabilityGroup": "release-passport-trust",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/dependencies/install",
      "path": "actions/runtime/dependencies/install/action.yml",
      "inputs": [
        "directory",
        "ignore-scripts",
        "production"
      ],
      "inputCount": 3,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/environment/activate",
      "path": "actions/runtime/environment/activate/action.yml",
      "inputs": [
        "selection"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/environment/prepare",
      "path": "actions/runtime/environment/prepare/action.yml",
      "inputs": [
        "selection",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/selection/resolve",
      "path": "actions/runtime/selection/resolve/action.yml",
      "inputs": [
        "contract-lock",
        "resume-run-id",
        "runtime-ref",
        "selection",
        "source-repository",
        "source-sha",
        "token",
        "workflow-ref",
        "workflow-sha"
      ],
      "inputCount": 9,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/toolchain/user-paths",
      "path": "actions/runtime/toolchain/user-paths/action.yml",
      "inputs": [],
      "inputCount": 0,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "runtime/toolchain/windows-rust",
      "path": "actions/runtime/toolchain/windows-rust/action.yml",
      "inputs": [
        "dist-server",
        "toolchain",
        "update-root"
      ],
      "inputCount": 3,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/controller/finalize",
      "path": "actions/web/controller/finalize/action.yml",
      "inputs": [
        "observations-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/controller/initialize",
      "path": "actions/web/controller/initialize/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "runtime-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/controller/plan",
      "path": "actions/web/controller/plan/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "runtime-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/controller/receipt",
      "path": "actions/web/controller/receipt/action.yml",
      "inputs": [
        "observations-json",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/deployment/apply",
      "path": "actions/web/deployment/apply/action.yml",
      "inputs": [
        "channel",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/deployment/report",
      "path": "actions/web/deployment/report/action.yml",
      "inputs": [
        "channel",
        "job-status",
        "release-pr",
        "release-source",
        "request-json",
        "rollback-pointer",
        "runtime-sha",
        "token"
      ],
      "inputCount": 8,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/feedback/preview",
      "path": "actions/web/feedback/preview/action.yml",
      "inputs": [
        "cleanup",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/feedback/review",
      "path": "actions/web/feedback/review/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/planning/admit-inputs",
      "path": "actions/web/planning/admit-inputs/action.yml",
      "inputs": [
        "decision-approved",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/planning/build",
      "path": "actions/web/planning/build/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "runtime-json",
        "selection-json"
      ],
      "inputCount": 4,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/planning/plan",
      "path": "actions/web/planning/plan/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "runtime-json",
        "selection-json",
        "source-checkout-outcome",
        "workflow-ref"
      ],
      "inputCount": 6,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/planning/resolve-intent",
      "path": "actions/web/planning/resolve-intent/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/preview/cleanup",
      "path": "actions/web/preview/cleanup/action.yml",
      "inputs": [
        "needs-runtime-outputs-runtime-sha",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/preview/deploy",
      "path": "actions/web/preview/deploy/action.yml",
      "inputs": [
        "needs-runtime-outputs-runtime-sha",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/production/deploy",
      "path": "actions/web/production/deploy/action.yml",
      "inputs": [
        "needs-external-publication-authority-outputs-capability-json",
        "needs-publication-authority-outputs-candidate-json",
        "needs-publication-authority-outputs-capability-json",
        "needs-release-intent-outputs-production-release-pr",
        "needs-release-intent-outputs-production-release-source",
        "needs-release-intent-outputs-production-source-sha",
        "needs-runtime-outputs-rollback-ref",
        "needs-runtime-outputs-runtime-sha",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 10,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/production/open-release-pr",
      "path": "actions/web/production/open-release-pr/action.yml",
      "inputs": [
        "needs-runtime-outputs-runtime-sha",
        "request-json",
        "secrets-production-release-app-private-key",
        "secrets-production-release-pr-token"
      ],
      "inputCount": 4,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/production/reconcile-release-pr",
      "path": "actions/web/production/reconcile-release-pr/action.yml",
      "inputs": [
        "credential-json",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/publication/admit",
      "path": "actions/web/publication/admit/action.yml",
      "inputs": [
        "observations-json",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/publication/authorize",
      "path": "actions/web/publication/authorize/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/publication/decide",
      "path": "actions/web/publication/decide/action.yml",
      "inputs": [
        "intent-json",
        "request-json",
        "runtime-json"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/publication/seal",
      "path": "actions/web/publication/seal/action.yml",
      "inputs": [
        "observations-json",
        "request-json",
        "token"
      ],
      "inputCount": 3,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/publication/verify-capability",
      "path": "actions/web/publication/verify-capability/action.yml",
      "inputs": [
        "candidate-json",
        "capability-json",
        "environment",
        "role-arn",
        "runtime-sha",
        "source-sha"
      ],
      "inputCount": 6,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "web/staging/deploy",
      "path": "actions/web/staging/deploy/action.yml",
      "inputs": [
        "needs-runtime-outputs-rollback-ref",
        "needs-runtime-outputs-runtime-sha",
        "request-json",
        "source-checkout-outcome"
      ],
      "inputCount": 4,
      "capabilityGroup": "site-and-propagation",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/admission/admit",
      "path": "actions/workflow/admission/admit/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/admission/inspect",
      "path": "actions/workflow/admission/inspect/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/admission/reject",
      "path": "actions/workflow/admission/reject/action.yml",
      "inputs": [
        "reason"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/bootstrap/admit",
      "path": "actions/workflow/bootstrap/admit/action.yml",
      "inputs": [
        "job-workflow-sha",
        "request-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/bootstrap/execute",
      "path": "actions/workflow/bootstrap/execute/action.yml",
      "inputs": [
        "needs-admit-outputs-admission-json",
        "needs-admit-outputs-capability-id",
        "needs-admit-outputs-runtime-sha",
        "request-json",
        "secrets-buildchain-promotion-token",
        "source-checkout-outcome"
      ],
      "inputCount": 6,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/bootstrap/settle",
      "path": "actions/workflow/bootstrap/settle/action.yml",
      "inputs": [
        "job-workflow-sha",
        "needs-admit-outputs-admission-json",
        "needs-execute-outputs-result-json",
        "request-json"
      ],
      "inputCount": 4,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/dogfood/admit",
      "path": "actions/workflow/dogfood/admit/action.yml",
      "inputs": [
        "request-json",
        "token"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/dogfood/compare",
      "path": "actions/workflow/dogfood/compare/action.yml",
      "inputs": [
        "candidate-sha",
        "observations-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/dogfood/generate",
      "path": "actions/workflow/dogfood/generate/action.yml",
      "inputs": [
        "coordinates-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/dogfood/prepare",
      "path": "actions/workflow/dogfood/prepare/action.yml",
      "inputs": [
        "request-json"
      ],
      "inputCount": 1,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/dogfood/reconcile",
      "path": "actions/workflow/dogfood/reconcile/action.yml",
      "inputs": [
        "candidate-sha",
        "observations-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/engine/execute",
      "path": "actions/workflow/engine/execute/action.yml",
      "inputs": [
        "admission-json",
        "mutation-token",
        "request-json",
        "token"
      ],
      "inputCount": 4,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/event/admit",
      "path": "actions/workflow/event/admit/action.yml",
      "inputs": [
        "head-repository",
        "require-trusted",
        "untrusted-policy"
      ],
      "inputCount": 3,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    },
    {
      "apiRole": "implementation",
      "id": "workflow/settlement/seal",
      "path": "actions/workflow/settlement/seal/action.yml",
      "inputs": [
        "admission-json",
        "result-json"
      ],
      "inputCount": 2,
      "capabilityGroup": "api-cli-reference",
      "status": "active",
      "owner": "buildchain-actions",
      "maturity": "stable",
      "introducedVersion": "4.1.0-alpha.0",
      "compatibilityPromise": "current-contract-only",
      "deprecationReplacement": "",
      "sunsetCondition": "explicit-contract-change-review",
      "nonDuplicationRationale": "One capability node owns the composite or JavaScript adapter boundary."
    }
  ]
}
