{
  "api_contract": "sourcey.catalog-api/v1",
  "release_id": "sha256:f94358e3c57b6e575ca58c8031b9b7552cbfdb411f937b8ecdc3b042c4980a77",
  "artifact_sha256": "sha256:7472396c2449279d33e7a0fb2426f02a89991501262d1db8c04c81d57bdf9021",
  "data": {
    "revision_contract": "sourcey.agent-readiness-revision/v1alpha1",
    "agent_readiness_profile_id": "arp_01kzf0m4xn2p7wd9g3a5rt8zq6",
    "entity_id": "ent_01kyh8fpe5dk9hex187x4g03fn",
    "scope": {
      "product": {
        "key": "vercel-rest-api",
        "name": "Vercel REST API"
      },
      "funnel": {
        "key": "deployment-operations",
        "name": "Deployment operations"
      }
    },
    "catalog_binding": {
      "base_release_id": "sha256:cad9f851ab1bb553246eb2fb2b2803a4741814a33ccf28997014247439b9013d",
      "entity_revision_digest": "sha256:2ca7db4f429b3bb813bb1ac6d59c8cb5213e3c16a9096dfaa1455909f7b73e13"
    },
    "declaration_revision_digest": "sha256:d7568bddb1b91a95870247219d2342d2acddb595cc98a292645a4704be00b472",
    "declaration": {
      "declaration_id": "declaration_vercel_api_deployment_operations",
      "provenance": {
        "repository": "sourcey/agent-ready-services",
        "commit": "62b512f0c49352e55a399ba53866a5effa431d71",
        "path": "vendors/ve/vercel.yaml",
        "git_blob_oid": "8b524c33bb76fe518f088b6fa2af9b78111ddf45",
        "blob_digest": "sha256:97e1000513c54771bc5e6e7170d76d7bd91f4e1768c0f9028a1f023f4c98fafc"
      },
      "status": "community_declared"
    },
    "lifecycle": "active",
    "effective_from": "2026-08-20T14:33:24.000Z",
    "signals": [
      {
        "stage": "evaluate",
        "signal_code": "eligibility_decidability",
        "selector_group_id": "eligibility_decidability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:41.487Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:276f373b51d8d4b56d1afae71f328da7cdd33f68aa63ed3e5c7a0fb618de4cef",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:8e8a0e54a0914860398b1271affba87ff76d8cdfd4b00026c388ad34b80e53a3",
              "sha256:b8d3521bbc52ac1327616b578ce1b772dfd54977f7efa230dfaba7ebf61626a7",
              "sha256:d7e6130a3d8dc377070d4d84225e057b1eeeabfea2e05a891fd7b6e751af7447"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:b8d3521bbc52ac1327616b578ce1b772dfd54977f7efa230dfaba7ebf61626a7",
                "start_byte": 9325,
                "end_byte": 10119,
                "value_digest": "sha256:89b7c06c13317b210660c52084b8f79c96ead3a733cba57d8dc9cc21ad1c1f96"
              }
            ]
          }
        ],
        "note": "Vercel's Terms of Service explicitly state age and eligibility conditions, requiring users to be at least 16 years of age and to use or access services through an electronic device controlled by the user."
      },
      {
        "stage": "evaluate",
        "signal_code": "pricing_decidability",
        "selector_group_id": "pricing_decidability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:57:01.412Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "billing-checkout"
          },
          {
            "node_kind": "resource",
            "node_id": "pricing"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:d5d8a4b4d9f75b0c0577d04bb1375c57f4df9ff5eccef3b358392e9a6137d0e9",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2e0f5a01b7b08dd200fa527eb16e120300d139eb8e989e307cfd9c4f0bfd7430",
              "sha256:3221725ff99fcdc0dfb9ac53f960e6b5ced087dc4934b60c630905b4cf293919",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:e7cc7c45316286ba910c1991d75c290b0d84416848a251e81d9ace040efda019"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "pricing"
            },
            "locators": [
              {
                "artifact_digest": "sha256:3221725ff99fcdc0dfb9ac53f960e6b5ced087dc4934b60c630905b4cf293919",
                "start_byte": 6983,
                "end_byte": 7786,
                "value_digest": "sha256:1bee2df6b749a102d156c942bacd7671fff46a2ffd5e5c9fe3e924452696967f"
              },
              {
                "artifact_digest": "sha256:3221725ff99fcdc0dfb9ac53f960e6b5ced087dc4934b60c630905b4cf293919",
                "start_byte": 8588,
                "end_byte": 9394,
                "value_digest": "sha256:b905f4efbaf538e96b26f63cc1e155b534b78f56e7ee51170f6c30e156eace02"
              }
            ]
          }
        ],
        "note": "Vercel's pricing page discloses plan options including Hobby ($0/mo) and Pro ($20/mo), with explicit usage rates, included credits, variable resource limits, and currency in USD."
      },
      {
        "stage": "evaluate",
        "signal_code": "service_discovery",
        "selector_group_id": "service_discovery-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:18.718Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-reference"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5fd1c5dfe9ba870693f9a82e9b76eda4c3510276df4988fed18cc9d538b309e7",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b0aaecf5f95cc4530f0c735c6fc3d526c7643d2df352c3ab96f12e4e58c6ff2d",
              "sha256:d813415bd8abb4b66d12bc3d6782c15254b7e4328fa111520391707a9935676e",
              "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-reference"
            },
            "locators": [
              {
                "artifact_digest": "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1",
                "start_byte": 24533,
                "end_byte": 25333,
                "value_digest": "sha256:885494883e0a0104262619eeb67c095ea0756a35311412a1b8f4761bb564f8b1"
              }
            ]
          }
        ],
        "note": "The Vercel REST API documentation explicitly provides the service details, HTTP/1 and HTTP/2 SSL architecture support, and the base entrypoint URL at https://api.vercel.com."
      },
      {
        "stage": "evaluate",
        "signal_code": "terms_access",
        "selector_group_id": "terms_access-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:41.487Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "service-terms"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:276f373b51d8d4b56d1afae71f328da7cdd33f68aa63ed3e5c7a0fb618de4cef",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2b98f6d533f53426430f441ae4db7466db45b981aaa78e294567688f840dccdc",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b8d3521bbc52ac1327616b578ce1b772dfd54977f7efa230dfaba7ebf61626a7",
              "sha256:d7e6130a3d8dc377070d4d84225e057b1eeeabfea2e05a891fd7b6e751af7447"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "service-terms"
            },
            "locators": [
              {
                "artifact_digest": "sha256:b8d3521bbc52ac1327616b578ce1b772dfd54977f7efa230dfaba7ebf61626a7",
                "start_byte": 6137,
                "end_byte": 6929,
                "value_digest": "sha256:3959dcda0ad9cf80831fd1e7ab6e92ffd896372f1c9f3b907e04e7ceb2124cd3"
              },
              {
                "artifact_digest": "sha256:b8d3521bbc52ac1327616b578ce1b772dfd54977f7efa230dfaba7ebf61626a7",
                "start_byte": 6930,
                "end_byte": 7729,
                "value_digest": "sha256:5ec198c6f5a80582fdd3b3c6dde5fe6d88820f2ee80d1559ee869d083e07486e"
              }
            ]
          }
        ],
        "note": "Vercel's Terms of Service agreement is retrievable, readable, and materially complete, covering applicable terms, schedule additions, and commitments for using Vercel's Services."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_control_operability",
        "selector_group_id": "access_control_operability-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:56.492Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          }
        ],
        "assessment_method": {
          "name": "bounded-headless-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f1212e8cd082308cfde3c097bc933c4a4b72046b1f242205c3e27a3b020b3311"
        },
        "determination_bases": [],
        "note": "The sign-up page displays options to continue with Google, GitHub, ChatGPT, Apple, or Email. Current admissible evidence does not resolve whether the access controls, navigation, and handoffs are fully machine-operable."
      },
      {
        "stage": "sign_up",
        "signal_code": "access_entrypoint_stability",
        "selector_group_id": "access_entrypoint_stability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:56.492Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "bounded-headless-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f1212e8cd082308cfde3c097bc933c4a4b72046b1f242205c3e27a3b020b3311"
        },
        "determination_bases": [
          {
            "kind": "direct_observation",
            "captures": [
              {
                "retained_capture_digest": "sha256:3a28d77bd7cb104bb6acbb4dcb7908e9fd9071c172223b0c72405e3343a41a26",
                "capture_rung": "headless"
              }
            ],
            "artifact_digests": [
              "sha256:2e34a529bd31c311dd4fa8cbca51a537ee38a0abeee8aa6978baebfe40ddd06a",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:9f8f8c188804bfa8aab7adfe6dbadfe7b2491409dedf49045f08bb8fba3b25f3",
              "sha256:a1e8d53c0c3296297b269f9c884626242f586b08ee2ccf0d4b5205360a27eb20",
              "sha256:ec92bf08363b0e8590a3ebdaa89cdbbc3feda6d11b56d6117ddb08c066e0982e",
              "sha256:f8f024283d04fc451917ebbef9dc508070977f289d8ed03229bb8e87a4dfedaf"
            ],
            "locators": [
              {
                "artifact_digest": "sha256:f8f024283d04fc451917ebbef9dc508070977f289d8ed03229bb8e87a4dfedaf",
                "start_byte": 667,
                "end_byte": 1026,
                "value_digest": "sha256:c538a8fb7c6905b9fb8c63f9631a03c43751bf24f2a09f1588f87b809ef69f80"
              }
            ]
          }
        ],
        "note": "A stable sign-up page at https://vercel.com/signup presents options to continue with third-party providers or email to begin service access."
      },
      {
        "stage": "sign_up",
        "signal_code": "captcha_compatible_access",
        "selector_group_id": "captcha_compatible_access-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:56.492Z",
        "tested_surfaces": [
          {
            "node_kind": "endpoint",
            "node_id": "registration"
          },
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "bounded-headless-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f1212e8cd082308cfde3c097bc933c4a4b72046b1f242205c3e27a3b020b3311"
        },
        "determination_bases": [],
        "note": "The captured sign-up pages display third-party login and email authentication options. Admissible evidence does not explicitly establish whether CAPTCHA challenges are present or if a supported alternative exists."
      },
      {
        "stage": "sign_up",
        "signal_code": "delegated_identity_access",
        "selector_group_id": "delegated_identity_access-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:41.742Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "access-tokens"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "direct_observation",
            "captures": [
              {
                "retained_capture_digest": "sha256:1bd779ac5bd6f555ceddc9ed10385c19a2f81c103cd12566092ecbef14a2e4fd",
                "capture_rung": "http"
              },
              {
                "retained_capture_digest": "sha256:f3d01f359901abde492ac4f08dece1bae1d6138066ec3582e5f6154765e739e3",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:5962a522dd7c248106e1d517b4625a9329ec9a3dff5d77e485b1374ea679a7c3",
              "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
              "sha256:b789ecb6c1edeef8135d93765dc634e9f53bdc62d4d5fa824a470cc41588330d",
              "sha256:bc8f361e8ccd45ef2b4db6127b3a95c2660e0cf145c7e4da0340eb6188a12b0e",
              "sha256:c891c78882d6acc1d53bd941c6daf6cd41b17359aa771d7c3def9f4f5fb45311",
              "sha256:f50e22b3d539ca24945a5e1d75ab26087935c686e7eb90d869d571bdb0043356"
            ],
            "locators": [
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 15071,
                "end_byte": 15849,
                "value_digest": "sha256:7229ded016d0c8cda63472866c684809c40518f36814571e81c571ef004dcfae"
              },
              {
                "artifact_digest": "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
                "start_byte": 8640,
                "end_byte": 9424,
                "value_digest": "sha256:1238aa895205654d881f5080362e8c404d89b37e26acd62d40a328156fb4415c"
              }
            ]
          }
        ],
        "note": "Vercel API access tokens can be created in personal account settings or via the CLI and scoped to user accounts, teams, or single projects. However, newly created tokens are shown in plaintext only once and require manual copying and storage into secret managers or environment variables."
      },
      {
        "stage": "sign_up",
        "signal_code": "phone_verification_compatible",
        "selector_group_id": "phone_verification_compatible-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:56.492Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "account-signup"
          }
        ],
        "assessment_method": {
          "name": "bounded-headless-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f1212e8cd082308cfde3c097bc933c4a4b72046b1f242205c3e27a3b020b3311"
        },
        "determination_bases": [],
        "note": "The sign-up capture presents third-party and email login options, but current admissible evidence does not explicitly document whether phone verification is required, absent, or supported through a resumable boundary."
      },
      {
        "stage": "pay",
        "signal_code": "checkout_operability",
        "selector_group_id": "checkout_operability-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:22.271Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "billing-checkout"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-54635e0ef5c0510ed84229bf9da667a7aa6eae5d7bde501e7987da45a62b4c64"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The retained evidence describes Pro plan checkout domain claims and payment method settings, but does not document an API, protocol, or web flow for deterministic checkout construction, approval handoff, and resumption."
      },
      {
        "stage": "pay",
        "signal_code": "commitment_disclosure",
        "selector_group_id": "commitment_disclosure-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:22.271Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "billing-checkout"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:70063f8046d2ff2ec0be3911030dc25ed356cddf91c385d9cf0a855c10619b88",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:6730ba850f57c8716c49217c4275fcf2387e626d9b853f819c5d93e0678c42b4",
              "sha256:d99976e95717a4c42acc982c073a1b46236a989109a06d064f050f5a54801f39",
              "sha256:fc571350d579955b3e557ecf1fd25fc459de8d0026497a64bb023432401284d1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "billing-checkout"
            },
            "locators": [
              {
                "artifact_digest": "sha256:d99976e95717a4c42acc982c073a1b46236a989109a06d064f050f5a54801f39",
                "start_byte": 12115,
                "end_byte": 12913,
                "value_digest": "sha256:25caa0694bfd1c783dc17335c55e9ed3edae2b902bc5a745b796687fdc34a8cd"
              },
              {
                "artifact_digest": "sha256:d99976e95717a4c42acc982c073a1b46236a989109a06d064f050f5a54801f39",
                "start_byte": 18486,
                "end_byte": 19284,
                "value_digest": "sha256:79d48944c08e7d1e555ff117da9663c29efa1eb56a93abcc5b56869e2b1ca441"
              }
            ]
          }
        ],
        "note": "Vercel discloses that the Pro plan payments are billed at the beginning of each billing cycle in USD (if converted by the card provider) via Credit/Debit card."
      },
      {
        "stage": "pay",
        "signal_code": "payment_authorization",
        "selector_group_id": "payment_authorization-primary",
        "value": "unknown",
        "observed_at": "2026-08-20T15:56:22.271Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "billing-checkout"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-54635e0ef5c0510ed84229bf9da667a7aa6eae5d7bde501e7987da45a62b4c64"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [],
        "note": "The documentation mentions automatic credit card charges upon invoice issuance and adding new cards in billing settings, but does not document scoped delegation rails or human-confirmed payment authorization protocols with receipts."
      },
      {
        "stage": "pay",
        "signal_code": "self_service_purchase",
        "selector_group_id": "self_service_purchase-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:22.271Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "billing-checkout"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-54635e0ef5c0510ed84229bf9da667a7aa6eae5d7bde501e7987da45a62b4c64"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:70063f8046d2ff2ec0be3911030dc25ed356cddf91c385d9cf0a855c10619b88",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:d99976e95717a4c42acc982c073a1b46236a989109a06d064f050f5a54801f39",
              "sha256:e4b8b5031138e110066c92f11e59a00fd81cb6f0cc2aafa95517e6ea23313267",
              "sha256:fc571350d579955b3e557ecf1fd25fc459de8d0026497a64bb023432401284d1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "billing-checkout"
            },
            "locators": [
              {
                "artifact_digest": "sha256:d99976e95717a4c42acc982c073a1b46236a989109a06d064f050f5a54801f39",
                "start_byte": 13710,
                "end_byte": 14505,
                "value_digest": "sha256:17e9f61f65d5f4c43a251d6a4aaec07f4e238191de6e5c7dc6f070b5a07b5323"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:49f79e09c0fee3c10af2d019f79a166728e29c4bebebe391bf9770fde0418c70",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:7226efc03c8450a2b19a3f44bd1d57ca7e4975fefe6db41a93b478b670759737",
              "sha256:7229ab4ed300caab983893971bdd125f3c19c4616e2d9810e9d534c29b0f27ea",
              "sha256:bf222cd0342b07f91707574418ae39f516b2ac9f0697f232c42a74123ca5b8b4"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-54635e0ef5c0510ed84229bf9da667a7aa6eae5d7bde501e7987da45a62b4c64"
            },
            "locators": [
              {
                "artifact_digest": "sha256:7229ab4ed300caab983893971bdd125f3c19c4616e2d9810e9d534c29b0f27ea",
                "start_byte": 18846,
                "end_byte": 19646,
                "value_digest": "sha256:4418433dfb66e1d2ad78a4b1d984069fa73cf28eb162c4edf2a9ccb051879be1"
              }
            ]
          }
        ],
        "note": "A direct self-service upgrade path is documented where new subscriptions can claim a domain at checkout during the upgrade or add a payment method via team settings under Billing."
      },
      {
        "stage": "provision",
        "signal_code": "access_material_delivery",
        "selector_group_id": "access_material_delivery-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:22.881Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "access-tokens"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:1bd779ac5bd6f555ceddc9ed10385c19a2f81c103cd12566092ecbef14a2e4fd",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:bc8f361e8ccd45ef2b4db6127b3a95c2660e0cf145c7e4da0340eb6188a12b0e",
              "sha256:f807197e46f6f2358ea7700449399c795e67ebcee9346f36090e0938c32b7af2"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 15071,
                "end_byte": 15849,
                "value_digest": "sha256:7229ded016d0c8cda63472866c684809c40518f36814571e81c571ef004dcfae"
              },
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 15850,
                "end_byte": 16637,
                "value_digest": "sha256:c02b6465738b1b6f3faf890bce294a494ec613f041da4d12e046c86ed16c9b4c"
              }
            ]
          }
        ],
        "note": "Tokens can be created via the account settings page or using the `vercel tokens` CLI command. The CLI displays the plaintext token value only once upon creation, requiring manual copy and storage in a secret manager or environment variable."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_completion",
        "selector_group_id": "provisioning_completion-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:54.901Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "deployment-operations"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:abddf00df14bb608b0d9dd298b0b871168b22f9f8bf6d966faa02855ca917961",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
              "sha256:74f99352d46a23477ce75e953130ae98093b82f1b61292ede97283c3b95d55dd",
              "sha256:77e071b48b89081c5fd19fde8871b34fef15ec81fd1f93f0f77baec74d620bff",
              "sha256:e0bdc8f4b2c4b9a6b6d423866003482c62667da598e7345b75d8ed12ddf48536"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "deployment-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 14618,
                "end_byte": 15418,
                "value_digest": "sha256:d7cbb3d4969a9d3120d0268f69ef7f45f56e25d76deb8ba5f3e44731be1d48be"
              }
            ]
          }
        ],
        "note": "Deployment creation returns an object and exposes pollable progress and terminal states, but the retained evidence does not establish a documented completion bound."
      },
      {
        "stage": "provision",
        "signal_code": "provisioning_operability",
        "selector_group_id": "provisioning_operability-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:54.901Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "access-tokens"
          },
          {
            "node_kind": "resource",
            "node_id": "deployment-operations"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:abddf00df14bb608b0d9dd298b0b871168b22f9f8bf6d966faa02855ca917961",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
              "sha256:229b86fef59038e113d8b4c79aef50ef7fa4e827a4f31d17a61c4dc08bd8273e",
              "sha256:74f99352d46a23477ce75e953130ae98093b82f1b61292ede97283c3b95d55dd",
              "sha256:77e071b48b89081c5fd19fde8871b34fef15ec81fd1f93f0f77baec74d620bff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "deployment-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 8359,
                "end_byte": 9126,
                "value_digest": "sha256:86ddf84a34f8500eea7bf902a42d423332d7674d4c2a6058829bff4f01298cf7"
              },
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 9127,
                "end_byte": 9931,
                "value_digest": "sha256:d3fc1d14b85360b1f9eff77f89dc3e16bba84dbcd22a46497fb9933d35d918d6"
              }
            ]
          }
        ],
        "note": "Deployment provisioning can be programmatically initiated via the Vercel REST API endpoint `POST https://api.vercel.com/v13/deployments` by passing an access token in the Authorization header along with deployment file configuration in the JSON request body."
      },
      {
        "stage": "operate",
        "signal_code": "credential_lifecycle",
        "selector_group_id": "credential_lifecycle-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:41.742Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "access-tokens"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:f3d01f359901abde492ac4f08dece1bae1d6138066ec3582e5f6154765e739e3",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:5962a522dd7c248106e1d517b4625a9329ec9a3dff5d77e485b1374ea679a7c3",
              "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
              "sha256:c891c78882d6acc1d53bd941c6daf6cd41b17359aa771d7c3def9f4f5fb45311",
              "sha256:f50e22b3d539ca24945a5e1d75ab26087935c686e7eb90d869d571bdb0043356"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "access-tokens"
            },
            "locators": [
              {
                "artifact_digest": "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
                "start_byte": 8640,
                "end_byte": 9424,
                "value_digest": "sha256:1238aa895205654d881f5080362e8c404d89b37e26acd62d40a328156fb4415c"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:1bd779ac5bd6f555ceddc9ed10385c19a2f81c103cd12566092ecbef14a2e4fd",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:964810117ac232aae54476ada2e4df2bcab8d763bc6ec585c2bf478c27cae459",
              "sha256:bc8f361e8ccd45ef2b4db6127b3a95c2660e0cf145c7e4da0340eb6188a12b0e"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 15071,
                "end_byte": 15849,
                "value_digest": "sha256:7229ded016d0c8cda63472866c684809c40518f36814571e81c571ef004dcfae"
              },
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 16638,
                "end_byte": 17400,
                "value_digest": "sha256:68c15c9493bbee20720bb4e9835817c785560ab1b266e4ddd1dd39d5b181bfac"
              }
            ]
          }
        ],
        "note": "First-party documentation states that Vercel access tokens can be created inside account settings or via the Vercel CLI (`vercel tokens add`), listed, and revoked/removed using `vercel tokens rm <token-id>`. However, evidence does not document full agent-executable automated credential rotation, compromise handling, or recovery semantics."
      },
      {
        "stage": "operate",
        "signal_code": "failure_contract",
        "selector_group_id": "failure_contract-primary",
        "value": "partial",
        "observed_at": "2026-08-20T15:56:09.464Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "api-errors"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:cfda002dda00f8488c722d5b3efb37a7794321c9523ddda0d7ab63210b3b3500",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:3600f6b4c9c8639a607eba1c4699288c195c8a1ef3ade171c3e648b13b2cc39d",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:881fd0fc71fb86bb4ffa5397e5e35373dd202d7d3472e507b40ead4831e70ae1",
              "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff",
                "start_byte": 6203,
                "end_byte": 6884,
                "value_digest": "sha256:1a0ed3cc38673966cb308caa56c2edc8849a88390d8cd09fcbf208a55c97f101"
              },
              {
                "artifact_digest": "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff",
                "start_byte": 6885,
                "end_byte": 7682,
                "value_digest": "sha256:872f7f5c5ce144424ee6316888391eda9bfa285dd144f1f44efd8bc1678979c4"
              }
            ]
          }
        ],
        "note": "Documentation establishes generic error responses (such as `forbidden`, `rate_limited`, `bad_request`, `internal_server_error`, and `not_found`) along with rate limit headers and error payloads. However, safe failure handling semantics such as explicit request idempotency, retry procedures, cancellation, and reconciliation are not fully documented in the evidence."
      },
      {
        "stage": "operate",
        "signal_code": "operation_authentication",
        "selector_group_id": "operation_authentication-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:41.742Z",
        "tested_surfaces": [
          {
            "node_kind": "resource",
            "node_id": "access-tokens"
          },
          {
            "node_kind": "resource",
            "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:1bd779ac5bd6f555ceddc9ed10385c19a2f81c103cd12566092ecbef14a2e4fd",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b789ecb6c1edeef8135d93765dc634e9f53bdc62d4d5fa824a470cc41588330d",
              "sha256:bc8f361e8ccd45ef2b4db6127b3a95c2660e0cf145c7e4da0340eb6188a12b0e"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "readiness-55d5a3246b49c5978d9cd909619ea57cb2e9a92593283460fba3bdd38e64a609"
            },
            "locators": [
              {
                "artifact_digest": "sha256:4468f8592a48cada4e1bdb71c8cfdb5ea549f2ec34cffb5333b4bfb5f1561bac",
                "start_byte": 15071,
                "end_byte": 15849,
                "value_digest": "sha256:7229ded016d0c8cda63472866c684809c40518f36814571e81c571ef004dcfae"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:f3d01f359901abde492ac4f08dece1bae1d6138066ec3582e5f6154765e739e3",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:1b5104ac4564da9bdb873efb1a94f76853589825e8146229d5c74178b7ac036d",
              "sha256:5962a522dd7c248106e1d517b4625a9329ec9a3dff5d77e485b1374ea679a7c3",
              "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
              "sha256:c891c78882d6acc1d53bd941c6daf6cd41b17359aa771d7c3def9f4f5fb45311"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "access-tokens"
            },
            "locators": [
              {
                "artifact_digest": "sha256:7c178444ea00159b38e54a30cf7c4877c1bb54c901a07f0d6138be96071f6769",
                "start_byte": 9425,
                "end_byte": 10224,
                "value_digest": "sha256:7b8c3747be27106cf184ebfb41889284692306f78f1f3e993f5c304d55aac902"
              }
            ]
          }
        ],
        "note": "Request-time authentication is documented using Vercel Access Tokens passed via the `Authorization: Bearer TOKEN` HTTP header, which can be scoped to personal accounts, specific teams, or individual projects."
      },
      {
        "stage": "operate",
        "signal_code": "operation_contract",
        "selector_group_id": "operation_contract-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:54.901Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "deployment-api"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5fd1c5dfe9ba870693f9a82e9b76eda4c3510276df4988fed18cc9d538b309e7",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b0aaecf5f95cc4530f0c735c6fc3d526c7643d2df352c3ab96f12e4e58c6ff2d",
              "sha256:d813415bd8abb4b66d12bc3d6782c15254b7e4328fa111520391707a9935676e",
              "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-reference"
            },
            "locators": [
              {
                "artifact_digest": "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1",
                "start_byte": 24533,
                "end_byte": 25333,
                "value_digest": "sha256:885494883e0a0104262619eeb67c095ea0756a35311412a1b8f4761bb564f8b1"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:abddf00df14bb608b0d9dd298b0b871168b22f9f8bf6d966faa02855ca917961",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
              "sha256:6f9ad7ec2196b53f3fae6b6b18709c06561365683b83b2bc9d30e4cc18c928b5",
              "sha256:74f99352d46a23477ce75e953130ae98093b82f1b61292ede97283c3b95d55dd",
              "sha256:77e071b48b89081c5fd19fde8871b34fef15ec81fd1f93f0f77baec74d620bff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "deployment-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 14618,
                "end_byte": 15418,
                "value_digest": "sha256:d7cbb3d4969a9d3120d0268f69ef7f45f56e25d76deb8ba5f3e44731be1d48be"
              },
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 9127,
                "end_byte": 9931,
                "value_digest": "sha256:d3fc1d14b85360b1f9eff77f89dc3e16bba84dbcd22a46497fb9933d35d918d6"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:cfda002dda00f8488c722d5b3efb37a7794321c9523ddda0d7ab63210b3b3500",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:62dcf16e34fa6a8fd556ed80eb1640060dc19860a012be411fb6c3611b039eba",
              "sha256:881fd0fc71fb86bb4ffa5397e5e35373dd202d7d3472e507b40ead4831e70ae1",
              "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff",
                "start_byte": 6203,
                "end_byte": 6884,
                "value_digest": "sha256:1a0ed3cc38673966cb308caa56c2edc8849a88390d8cd09fcbf208a55c97f101"
              }
            ]
          }
        ],
        "note": "Essential endpoints and error payloads are documented across all evaluated targets. For instance, creating a deployment via POST to `/v13/deployments` specifies HTTP methods, query parameters (`teamId`, `forceNew`), JSON body fields (`files`, `deploymentId`, `customEnvironmentSlugOrId`), response structures (`id`, `readyState`, `target`), and state transition flow (`QUEUED` → `INITIALIZING` → `BUILDING` → `READY`/`ERROR`)."
      },
      {
        "stage": "operate",
        "signal_code": "target_interface_access",
        "selector_group_id": "target_interface_access-primary",
        "value": "yes",
        "observed_at": "2026-08-20T15:56:54.901Z",
        "tested_surfaces": [
          {
            "node_kind": "interface",
            "node_id": "deployment-api"
          }
        ],
        "assessment_method": {
          "name": "public-http-semantic-assessment",
          "version": "2026-08-20",
          "method_digest": "sha256:f7c4219d9b75928a6bcff8d125dc30bbc718673e579a66f00d832172e8c9d43d"
        },
        "determination_bases": [
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:cfda002dda00f8488c722d5b3efb37a7794321c9523ddda0d7ab63210b3b3500",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:4442adf8ff62567096a8bd2dbdacffb3e443f8aea2afabf80b715545407db22f",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:881fd0fc71fb86bb4ffa5397e5e35373dd202d7d3472e507b40ead4831e70ae1",
              "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-errors"
            },
            "locators": [
              {
                "artifact_digest": "sha256:ca908a12a5bbd1d4c9f8d68d4f15f3a4511c40c0f8480fbbfc1bdcca336f75ff",
                "start_byte": 5398,
                "end_byte": 6202,
                "value_digest": "sha256:97f5e6161838d77a7c0a88b07764bfbe52fd4276f0b292e8e2f957d16c4bd4b7"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:abddf00df14bb608b0d9dd298b0b871168b22f9f8bf6d966faa02855ca917961",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
              "sha256:1fdf4d28f2b6adaf55d0195b5f8a6f96c02d2e8163b9f64100b4c1ddf3496807",
              "sha256:74f99352d46a23477ce75e953130ae98093b82f1b61292ede97283c3b95d55dd",
              "sha256:77e071b48b89081c5fd19fde8871b34fef15ec81fd1f93f0f77baec74d620bff"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "deployment-operations"
            },
            "locators": [
              {
                "artifact_digest": "sha256:03fb00403a8c729880514c3fc4da9819f5d5d3da07bab7132548ea87bcbe888b",
                "start_byte": 7565,
                "end_byte": 8358,
                "value_digest": "sha256:85b7b1668c1fcee1069bd68d41d36781ccf05d5e5da6b7706c6e67ba6efe8df0"
              }
            ]
          },
          {
            "kind": "explicit_first_party_declaration",
            "captures": [
              {
                "retained_capture_digest": "sha256:5fd1c5dfe9ba870693f9a82e9b76eda4c3510276df4988fed18cc9d538b309e7",
                "capture_rung": "http"
              }
            ],
            "artifact_digests": [
              "sha256:2235b2fe079987bfa185906e3c7f71bae01ed43a1256e96476a3fa5a9ca25f7e",
              "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
              "sha256:b0aaecf5f95cc4530f0c735c6fc3d526c7643d2df352c3ab96f12e4e58c6ff2d",
              "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1"
            ],
            "source_surface": {
              "node_kind": "resource",
              "node_id": "api-reference"
            },
            "locators": [
              {
                "artifact_digest": "sha256:e879e37c61aee3084ce8e7bc77a90279a8e4a61a8c51c8f84b3a82b9f28429e1",
                "start_byte": 23736,
                "end_byte": 24532,
                "value_digest": "sha256:608f9fe9c94f8d44f1571ba9e0f713e984c0172bdb618bbe87431f8ef97cb6fd"
              }
            ]
          }
        ],
        "note": "Every essential target is accessible through agent-usable machine interfaces, specifically the Vercel REST API (`https://api.vercel.com`) and the Vercel CLI."
      }
    ],
    "revision_digest": "sha256:574d1fbcd53d0646a8e51bb4de3abad38c72876e5af3057e9a7e9bcfbd4f6fed"
  }
}
