{
  "contract": "sourcey.site-record/v1alpha1",
  "release_id": "sha256:1042b2f7b6130b564b0059e00560960c50db2d7578dfa5178d401e5d14d9b11f",
  "snapshot_id": "sha256:696d9730d13ebc723115e4a92f695a0f26345d4350d440a417805b69d1b209e4",
  "artifact_sha256": "sha256:a695609a4d6872bd447e3125d912e7f84e605d0f064df0b08e62a9f24d9d2e80",
  "data": {
    "entity_id": "ent_01kyyts97tbppvx69rh3v86sk2",
    "entity_slug": "notion",
    "profile": {
      "projection_contract": "sourcey.agent-readiness-projection/v1alpha1",
      "agent_readiness_profile_id": "arp_01kzf0m4xd8y5ms1v7q3kc9pg2",
      "entity_id": "ent_01kyyts97tbppvx69rh3v86sk2",
      "scope": {
        "product": {
          "key": "notion-api",
          "name": "Notion API"
        },
        "funnel": {
          "key": "api-integration-lifecycle",
          "name": "API integration lifecycle"
        }
      },
      "catalog_binding": {
        "base_release_id": "sha256:5082ec07047a2324648f569d234cc64342ce2707b2f3d77fde8fc06af517cee6",
        "entity_revision_digest": "sha256:62f4d66bedfeb994302976356b77a20495b191e04e9d44060282e358d80c8f71"
      },
      "declaration_revision_digest": "sha256:4fbf69da9679af5d11f2657758de0482c9363d5766f3df6c0207741659eef141",
      "declaration": {
        "declaration_id": "declaration_notion_api_integration_lifecycle",
        "provenance": {
          "repository": "sourcey/agent-ready-services",
          "commit": "00f00edd170194cc1cf3081b97b218474537ffdb",
          "path": "vendors/no/notion.yaml",
          "git_blob_oid": "f4d57f252216910893d6f0c5719b464475ee7c09",
          "blob_digest": "sha256:d9c6334dfe8f41a6f1a4f76b2d9badf1de5cd95dbd7efc459bc9500d7486b344"
        },
        "status": "community_declared"
      },
      "surface_catalog": {
        "participants": [
          {
            "participant_id": "notion",
            "roles": [
              "access_operator",
              "identity_provider",
              "operations_provider",
              "payment_provider",
              "provisioning_provider",
              "subject"
            ],
            "identity": {
              "entity_id": "ent_01kyyts97tbppvx69rh3v86sk2"
            }
          }
        ],
        "resources": [
          {
            "resource_id": "api-overview",
            "uri": "https://developers.notion.com/guides/get-started/overview",
            "roles": [
              "discovery",
              "documentation",
              "operations"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "authorization",
            "uri": "https://developers.notion.com/guides/get-started/authorization",
            "roles": [
              "descriptor",
              "documentation",
              "provisioning"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "pricing",
            "uri": "https://www.notion.com/pricing",
            "roles": [
              "pricing"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "quickstart",
            "uri": "https://developers.notion.com/guides/get-started/quick-start",
            "roles": [
              "documentation",
              "operations",
              "provisioning"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "request-limits",
            "uri": "https://developers.notion.com/reference/request-limits",
            "roles": [
              "documentation",
              "operations",
              "status"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "service-terms",
            "uri": "https://app.notion.com/terms",
            "roles": [
              "terms"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "status-codes",
            "uri": "https://developers.notion.com/reference/status-codes",
            "roles": [
              "documentation",
              "operations",
              "recovery",
              "status"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "support",
            "uri": "https://www.notion.com/help/category/connections/all",
            "roles": [
              "documentation",
              "recovery"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "resource_id": "workspace-signup",
            "uri": "https://app.notion.com/signup",
            "roles": [
              "checkout",
              "provisioning",
              "sign_up"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          }
        ],
        "endpoints": [
          {
            "endpoint_id": "notion-api",
            "uri": "https://api.notion.com/v1",
            "transport": "http",
            "roles": [
              "service",
              "status"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "endpoint_id": "oauth-token",
            "uri": "https://api.notion.com/v1/oauth/token",
            "transport": "http",
            "roles": [
              "authorization",
              "token"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": [
              {
                "namespace": "oauth",
                "version": "2.0",
                "relation": "implements"
              }
            ]
          }
        ],
        "interfaces": [
          {
            "interface_id": "content-api",
            "capabilities": [
              "api",
              "tools"
            ],
            "endpoint_ids": [
              "notion-api"
            ],
            "resource_ids": [
              "api-overview",
              "quickstart",
              "request-limits",
              "status-codes"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": []
          },
          {
            "interface_id": "integration-authentication",
            "capabilities": [
              "authentication"
            ],
            "endpoint_ids": [
              "oauth-token"
            ],
            "resource_ids": [
              "authorization"
            ],
            "operated_by_participant_id": "notion",
            "standard_bindings": [
              {
                "namespace": "oauth",
                "version": "2.0",
                "relation": "uses"
              }
            ]
          }
        ],
        "relations": [
          {
            "relation_id": "authentication-authenticates-api",
            "kind": "authenticates",
            "from": {
              "node_kind": "interface",
              "node_id": "integration-authentication"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "content-api"
            }
          },
          {
            "relation_id": "overview-describes-api",
            "kind": "describes",
            "from": {
              "node_kind": "resource",
              "node_id": "api-overview"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "content-api"
            }
          },
          {
            "relation_id": "signup-precedes-authentication",
            "kind": "precedes",
            "from": {
              "node_kind": "resource",
              "node_id": "workspace-signup"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "integration-authentication"
            }
          },
          {
            "relation_id": "status-describes-api",
            "kind": "describes",
            "from": {
              "node_kind": "resource",
              "node_id": "status-codes"
            },
            "to": {
              "node_kind": "interface",
              "node_id": "content-api"
            }
          }
        ]
      },
      "lifecycle": "active",
      "effective_from": "2026-08-08T02:07:05.231Z",
      "revision_digest": "sha256:9a87be92ab1e3705cf482e99015d9a8fd0403a75f650f298e3ababeee826504e",
      "policy_digest": "sha256:334e56852b5c38e178fcea839cfba680fb82dd96693842d933776baed21d63df",
      "policy_version": "service-lifecycle-2026-08-08-calibrated",
      "policy_as_of": "2026-08-06T00:00:00Z",
      "overall_outcome": "fail",
      "public_state": "blocked",
      "state_label": "Blocked",
      "grade": "D",
      "grade_derivation": {
        "label": "Agent Readiness service-use grade",
        "explanation": "Complete, fresh evidence for the core service lifecycle first applies hard stage severity, then grades the share of applicable evidenced signals that are constrained. Optional blocker probes affect the grade when established and remain visible as unknown when public evidence cannot establish them.",
        "coverage_rule": "Any incomplete, contradictory, unsupported, or non-fresh required evidence produces an unrated profile.",
        "outcome_rule": "A failed Evaluate, Sign up, or Pay stage derives D; a failed Provision or Operate stage derives F; otherwise constrained-signal ratio derives A+ through C."
      },
      "publication": {
        "visibility": "discoverable",
        "reasons": []
      },
      "first_autonomy_break": {
        "stage": "evaluate",
        "stage_label": "Evaluate",
        "public_state": "limited",
        "finding": {
          "signal_code": "structured_terms",
          "condition": "Structured terms limited",
          "finding": "Only part of the applicable terms is machine-readable."
        }
      },
      "stages": [
        {
          "stage": "evaluate",
          "stage_label": "Evaluate",
          "outcome": "constrained",
          "public_state": "limited",
          "state_label": "Limited",
          "primary_finding": {
            "signal_code": "structured_terms",
            "condition": "Structured terms limited",
            "finding": "Only part of the applicable terms is machine-readable."
          },
          "secondary_context": [
            {
              "signal_code": "decidable_eligibility",
              "condition": "Decidable eligibility unknown",
              "finding": "Decidable eligibility has not been established."
            },
            {
              "signal_code": "ard_declaration",
              "condition": "ARD declaration unknown",
              "finding": "An ARD declaration has not been established."
            },
            {
              "signal_code": "machine_discovery",
              "condition": "Machine discovery",
              "finding": "An agent can discover the product and funnel from the tested public entrypoints."
            },
            {
              "signal_code": "readable_pricing",
              "condition": "Readable pricing",
              "finding": "Pricing or the absence of a charge is explicit and machine-readable."
            }
          ],
          "signals": [
            {
              "signal_code": "ard_declaration",
              "evaluation_role": "informational",
              "required": false,
              "value": "unknown",
              "value_label": "Unknown",
              "outcome": "unknown",
              "public_state": "unknown",
              "condition": "ARD declaration unknown",
              "finding": "An ARD declaration has not been established.",
              "evidence_status": "missing",
              "freshness": "unknown",
              "tested_surfaces": []
            },
            {
              "signal_code": "decidable_eligibility",
              "evaluation_role": "graded",
              "required": false,
              "value": "unknown",
              "value_label": "Unknown",
              "outcome": "unknown",
              "public_state": "unknown",
              "condition": "Decidable eligibility unknown",
              "finding": "Decidable eligibility has not been established.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:25:59.188Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "service-terms"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "The retained terms text provides metadata and title info, but lacks explicit criteria to establish decidable eligibility."
            },
            {
              "signal_code": "machine_discovery",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Machine discovery",
              "finding": "An agent can discover the product and funnel from the tested public entrypoints.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:46.924Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "api-overview"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Machine discovery is supported via canonical links and explicit document references to llms.txt and API navigation routes."
            },
            {
              "signal_code": "readable_pricing",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Readable pricing",
              "finding": "Pricing or the absence of a charge is explicit and machine-readable.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:48.501Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "pricing"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Pricing details across Free, Plus, and Business tiers with specific pricing values are explicitly published and machine-readable."
            },
            {
              "signal_code": "structured_terms",
              "evaluation_role": "graded",
              "required": true,
              "value": "partial",
              "value_label": "Limited",
              "outcome": "constrained",
              "public_state": "limited",
              "condition": "Structured terms limited",
              "finding": "Only part of the applicable terms is machine-readable.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:25:59.188Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "service-terms"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "negative_coverage": {
                "kind": "complete-response-inspection",
                "scope": "exact-resource",
                "covered_surfaces": [
                  {
                    "node_kind": "resource",
                    "node_id": "service-terms"
                  }
                ]
              },
              "note": "Terms are published via HTML, representing a readable but un-structured terms contract format.",
              "remediation": {
                "signal_code": "structured_terms",
                "code": "improve.evaluate.structured_terms",
                "instruction": "Publish complete applicable terms in a stable machine-readable document."
              }
            }
          ],
          "blockers": [],
          "remediations": [
            {
              "signal_code": "structured_terms",
              "code": "improve.evaluate.structured_terms",
              "instruction": "Publish complete applicable terms in a stable machine-readable document."
            }
          ]
        },
        {
          "stage": "sign_up",
          "stage_label": "Sign up",
          "outcome": "pass",
          "public_state": "ready",
          "state_label": "Ready",
          "primary_finding": {
            "signal_code": "stable_entrypoint",
            "condition": "Stable signup entrypoint",
            "finding": "A stable signup entrypoint is available."
          },
          "secondary_context": [
            {
              "signal_code": "machine_operable_form",
              "condition": "Machine-operable signup",
              "finding": "The tested signup flow exposes machine-operable controls."
            },
            {
              "signal_code": "captcha_free",
              "condition": "CAPTCHA-free signup",
              "finding": "No CAPTCHA was encountered on the tested signup path."
            },
            {
              "signal_code": "phone_verification_free",
              "condition": "Phone-free signup",
              "finding": "The tested signup path does not require phone or SMS verification."
            },
            {
              "signal_code": "supported_identity_flow",
              "condition": "Supported identity flow",
              "finding": "A scoped, revocable machine identity flow is documented, including explicit human authorization boundaries."
            }
          ],
          "signals": [
            {
              "signal_code": "captcha_free",
              "evaluation_role": "graded",
              "required": false,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "CAPTCHA-free signup",
              "finding": "No CAPTCHA was encountered on the tested signup path.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "No CAPTCHA challenge was encountered on the Notion signup page during headless evaluation."
            },
            {
              "signal_code": "machine_operable_form",
              "evaluation_role": "graded",
              "required": false,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Machine-operable signup",
              "finding": "The tested signup flow exposes machine-operable controls.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "The account creation page presents standard machine-operable form controls, including input fields for work email and submission buttons."
            },
            {
              "signal_code": "phone_verification_free",
              "evaluation_role": "graded",
              "required": false,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Phone-free signup",
              "finding": "The tested signup path does not require phone or SMS verification.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "The signup interface allows registration using work email or single sign-on without requiring phone or SMS verification."
            },
            {
              "signal_code": "stable_entrypoint",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Stable signup entrypoint",
              "finding": "A stable signup entrypoint is available.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:26.289Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "The signup URL returned a valid and stable HTTP response."
            },
            {
              "signal_code": "supported_identity_flow",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Supported identity flow",
              "finding": "A scoped, revocable machine identity flow is documented, including explicit human authorization boundaries.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:14:15.518Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "authorization"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "Notion documents scoped and revocable authorization flows, including OAuth 2.0 public connections with explicit user page-picking consent and internal integration tokens."
            }
          ],
          "blockers": [],
          "remediations": []
        },
        {
          "stage": "pay",
          "stage_label": "Pay",
          "outcome": "fail",
          "public_state": "blocked",
          "state_label": "Blocked",
          "primary_finding": {
            "signal_code": "machine_operable_checkout",
            "condition": "Machine-operable checkout unavailable",
            "finding": "The required checkout cannot be operated by an agent."
          },
          "secondary_context": [
            {
              "signal_code": "supported_payment_rail",
              "condition": "Supported payment rail unavailable",
              "finding": "No supported payment rail is available for the tested funnel."
            },
            {
              "signal_code": "explicit_price",
              "condition": "Explicit price",
              "finding": "The required price or no-charge status is explicit before commitment."
            },
            {
              "signal_code": "sales_intervention_free",
              "condition": "Sales-free purchase",
              "finding": "The tested funnel can complete without sales intervention."
            }
          ],
          "signals": [
            {
              "signal_code": "explicit_price",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Explicit price",
              "finding": "The required price or no-charge status is explicit before commitment.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:48.501Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "pricing"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Notion explicitly publishes plan pricing details (e.g. Free at $0, Plus at $10/member/month, Business at $20/member/month) on its public pricing page."
            },
            {
              "signal_code": "machine_operable_checkout",
              "evaluation_role": "graded",
              "required": false,
              "value": "no",
              "value_label": "Blocked",
              "outcome": "fail",
              "public_state": "blocked",
              "condition": "Machine-operable checkout unavailable",
              "finding": "The required checkout cannot be operated by an agent.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "negative_coverage": {
                "kind": "bounded-rendered-flow-inspection",
                "scope": "tested-surfaces",
                "covered_surfaces": [
                  {
                    "node_kind": "resource",
                    "node_id": "workspace-signup"
                  }
                ]
              },
              "note": "The signup flow at app.notion.com presents interactive email and single sign-on registration forms that require human interaction rather than a machine-operable API checkout.",
              "blocker": {
                "signal_code": "machine_operable_checkout",
                "code": "pay.machine_operable_checkout",
                "explanation": "The required checkout cannot be operated by an agent."
              },
              "remediation": {
                "signal_code": "machine_operable_checkout",
                "code": "improve.pay.machine_operable_checkout",
                "instruction": "Expose documented, labelled checkout controls or an agent-compatible commerce interface."
              }
            },
            {
              "signal_code": "sales_intervention_free",
              "evaluation_role": "graded",
              "required": false,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Sales-free purchase",
              "finding": "The tested funnel can complete without sales intervention.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "The standard account creation and onboarding flow allows self-service signup via work email or direct provider authentication (Google/Microsoft) without sales intervention."
            },
            {
              "signal_code": "supported_payment_rail",
              "evaluation_role": "graded",
              "required": false,
              "value": "no",
              "value_label": "Blocked",
              "outcome": "fail",
              "public_state": "blocked",
              "condition": "Supported payment rail unavailable",
              "finding": "No supported payment rail is available for the tested funnel.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:54:24.665Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "workspace-signup"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "negative_coverage": {
                "kind": "bounded-rendered-flow-inspection",
                "scope": "tested-surfaces",
                "covered_surfaces": [
                  {
                    "node_kind": "resource",
                    "node_id": "workspace-signup"
                  }
                ]
              },
              "note": "The workspace signup flow does not expose an automated or supported programmatic payment rail for machine operations.",
              "blocker": {
                "signal_code": "supported_payment_rail",
                "code": "pay.supported_payment_rail",
                "explanation": "No supported payment rail is available for the tested funnel."
              },
              "remediation": {
                "signal_code": "supported_payment_rail",
                "code": "improve.pay.supported_payment_rail",
                "instruction": "Document a supported payment rail, authorization boundary, receipts, and failure semantics."
              }
            }
          ],
          "blockers": [
            {
              "signal_code": "machine_operable_checkout",
              "code": "pay.machine_operable_checkout",
              "explanation": "The required checkout cannot be operated by an agent."
            },
            {
              "signal_code": "supported_payment_rail",
              "code": "pay.supported_payment_rail",
              "explanation": "No supported payment rail is available for the tested funnel."
            }
          ],
          "remediations": [
            {
              "signal_code": "machine_operable_checkout",
              "code": "improve.pay.machine_operable_checkout",
              "instruction": "Expose documented, labelled checkout controls or an agent-compatible commerce interface."
            },
            {
              "signal_code": "supported_payment_rail",
              "code": "improve.pay.supported_payment_rail",
              "instruction": "Document a supported payment rail, authorization boundary, receipts, and failure semantics."
            }
          ]
        },
        {
          "stage": "provision",
          "stage_label": "Provision",
          "outcome": "constrained",
          "public_state": "limited",
          "state_label": "Limited",
          "primary_finding": {
            "signal_code": "machine_readable_status",
            "condition": "Machine-readable provisioning status limited",
            "finding": "Only part of the provisioning lifecycle exposes machine-readable status."
          },
          "secondary_context": [
            {
              "signal_code": "bounded_delay",
              "condition": "Bounded provisioning delay unknown",
              "finding": "A bounded provisioning delay has not been established."
            },
            {
              "signal_code": "automatic_activation",
              "condition": "Automatic activation",
              "finding": "Successful onboarding automatically activates usable access."
            },
            {
              "signal_code": "credential_delivery",
              "condition": "Credential delivery",
              "finding": "Usable credentials or delegated access are delivered through a documented flow."
            }
          ],
          "signals": [
            {
              "signal_code": "automatic_activation",
              "evaluation_role": "graded",
              "required": false,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Automatic activation",
              "finding": "Successful onboarding automatically activates usable access.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:14:03.955Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "quickstart"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "Notion API quickstart shows that creating a personal access token automatically grants usable access for immediate page creation requests."
            },
            {
              "signal_code": "bounded_delay",
              "evaluation_role": "graded",
              "required": false,
              "value": "unknown",
              "value_label": "Unknown",
              "outcome": "unknown",
              "public_state": "unknown",
              "condition": "Bounded provisioning delay unknown",
              "finding": "A bounded provisioning delay has not been established.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:50.607Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "request-limits"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Notion documentation specifies rate limits and retry guidelines, but does not provide an explicit bounded timing guarantee for API request or credential provisioning."
            },
            {
              "signal_code": "credential_delivery",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Credential delivery",
              "finding": "Usable credentials or delegated access are delivered through a documented flow.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:14:15.518Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "authorization"
                }
              ],
              "assessment_method": {
                "name": "headless",
                "version": "1",
                "method_digest": "sha256:5c58a6d3f59d1910064324a215209f16f177b8021442dcbf1465f4c3ccd78ed1"
              },
              "note": "Notion delivers usable credentials via static tokens for internal connections and PATs, and via an OAuth 2.0 exchange endpoint delivering an access_token and refresh_token for public connections."
            },
            {
              "signal_code": "machine_readable_status",
              "evaluation_role": "graded",
              "required": false,
              "value": "partial",
              "value_label": "Limited",
              "outcome": "constrained",
              "public_state": "limited",
              "condition": "Machine-readable provisioning status limited",
              "finding": "Only part of the provisioning lifecycle exposes machine-readable status.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:50.607Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "request-limits"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "negative_coverage": {
                "kind": "complete-response-inspection",
                "scope": "exact-resource",
                "covered_surfaces": [
                  {
                    "node_kind": "resource",
                    "node_id": "request-limits"
                  }
                ]
              },
              "note": "Notion documents structured machine-readable status and error codes (such as rate_limited and HTTP 429/529 errors), but does not detail complete machine-readable asynchronous progress, reconciliation, or cancellation status for all provisioning stages.",
              "remediation": {
                "signal_code": "machine_readable_status",
                "code": "improve.provision.machine_readable_status",
                "instruction": "Expose deterministic provisioning progress, terminal states, errors, cancellation, and reconciliation where applicable."
              }
            }
          ],
          "blockers": [],
          "remediations": [
            {
              "signal_code": "machine_readable_status",
              "code": "improve.provision.machine_readable_status",
              "instruction": "Expose deterministic provisioning progress, terminal states, errors, cancellation, and reconciliation where applicable."
            }
          ]
        },
        {
          "stage": "operate",
          "stage_label": "Operate",
          "outcome": "constrained",
          "public_state": "limited",
          "state_label": "Limited",
          "primary_finding": {
            "signal_code": "delegated_recovery",
            "condition": "Delegated recovery limited",
            "finding": "Recovery is available only for some failure modes or requires human intervention."
          },
          "secondary_context": [
            {
              "signal_code": "agent_protocol_interface",
              "condition": "Agent protocol interface unknown",
              "finding": "An agent protocol interface has not been established."
            },
            {
              "signal_code": "api_tool_access",
              "condition": "API or tool access",
              "finding": "A documented API or tool interface is available for operation."
            },
            {
              "signal_code": "usable_authentication",
              "condition": "Usable authentication",
              "finding": "Authentication is documented and usable within an agent authorization boundary."
            },
            {
              "signal_code": "documented_limits_errors",
              "condition": "Documented limits and errors",
              "finding": "Limits, structured errors, retry behavior, and idempotency semantics are documented where applicable."
            }
          ],
          "signals": [
            {
              "signal_code": "agent_protocol_interface",
              "evaluation_role": "informational",
              "required": false,
              "value": "unknown",
              "value_label": "Unknown",
              "outcome": "unknown",
              "public_state": "unknown",
              "condition": "Agent protocol interface unknown",
              "finding": "An agent protocol interface has not been established.",
              "evidence_status": "missing",
              "freshness": "unknown",
              "tested_surfaces": []
            },
            {
              "signal_code": "api_tool_access",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "API or tool access",
              "finding": "A documented API or tool interface is available for operation.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:46.924Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "api-overview"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Notion provides a documented REST API allowing machine access to pages, databases, users, comments, and other workspace content."
            },
            {
              "signal_code": "delegated_recovery",
              "evaluation_role": "graded",
              "required": true,
              "value": "partial",
              "value_label": "Limited",
              "outcome": "constrained",
              "public_state": "limited",
              "condition": "Delegated recovery limited",
              "finding": "Recovery is available only for some failure modes or requires human intervention.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:49.584Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "status-codes"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "negative_coverage": {
                "kind": "complete-response-inspection",
                "scope": "exact-resource",
                "covered_surfaces": [
                  {
                    "node_kind": "resource",
                    "node_id": "status-codes"
                  }
                ]
              },
              "note": "Status code documentation provides retry guidance for transient errors, conflicts, and rate limits, but full credential rotation and recovery pathways require human intervention or standard OAuth handling.",
              "remediation": {
                "signal_code": "delegated_recovery",
                "code": "improve.operate.delegated_recovery",
                "instruction": "Provide delegated credential rotation, revocation, retry, and recovery paths without requiring unrestricted human intervention."
              }
            },
            {
              "signal_code": "documented_limits_errors",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Documented limits and errors",
              "finding": "Limits, structured errors, retry behavior, and idempotency semantics are documented where applicable.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:50.607Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "request-limits"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Notion documents rate limits, parameter size limits, structured error codes, Retry-After header guidance, and explicit idempotency semantics for retries."
            },
            {
              "signal_code": "usable_authentication",
              "evaluation_role": "graded",
              "required": true,
              "value": "yes",
              "value_label": "Ready",
              "outcome": "pass",
              "public_state": "ready",
              "condition": "Usable authentication",
              "finding": "Authentication is documented and usable within an agent authorization boundary.",
              "evidence_status": "supported",
              "freshness": "fresh",
              "observed_at": "2026-08-07T21:13:51.750Z",
              "tested_surfaces": [
                {
                  "node_kind": "resource",
                  "node_id": "authorization"
                }
              ],
              "assessment_method": {
                "name": "http",
                "version": "1",
                "method_digest": "sha256:2d2f445064222c234cbaf541a627226a2c4be06a90e226b98a4389cb49e2d66b"
              },
              "note": "Notion supports usable agent and application authentication via Bearer tokens for internal connections/PATs and OAuth 2.0 access tokens for public connections."
            }
          ],
          "blockers": [],
          "remediations": [
            {
              "signal_code": "delegated_recovery",
              "code": "improve.operate.delegated_recovery",
              "instruction": "Provide delegated credential rotation, revocation, retry, and recovery paths without requiring unrestricted human intervention."
            }
          ]
        }
      ],
      "coverage": {
        "status": "complete",
        "required_signals": 11,
        "covered_signals": 11,
        "ratio": 1
      },
      "last_tested_at": "2026-08-07T21:54:26.289Z",
      "freshness": "fresh",
      "provenance": {
        "tier": "observed",
        "freshness": "fresh",
        "dispute": "none",
        "coverage_policy_digest": "sha256:334e56852b5c38e178fcea839cfba680fb82dd96693842d933776baed21d63df",
        "freshness_policy_digest": "sha256:f4e31a29c2ce994bb8c3009207294ffa086e82b8e0d695abc95d6d6bdb30c2e5",
        "basis_event_ids": [
          "sha256:0b778d8036862a031cf7141d6bee542a7e0d3c0c4504fbf980bc43a6c98a0fa0",
          "sha256:13d9fc132adeac47ca479e5e893205788d9377dcd5a30ac5e9b7876232313de7",
          "sha256:21b04f96ae3d859626e2189f6b139d6e5df1f613fa593b7e9ff946870c4b8195",
          "sha256:23bf27eb3302d46bc4291aa78742c95a80f068ff641d42e10b790ecad55e69fa",
          "sha256:4ec0d7b3a754e49ec5959d0522a4e472ef0b135221ebdc659852a3854801400a",
          "sha256:4f3ca5441941c2c5af6ce70a0ba9aea4a7d908160437e8c7bcd45eb8d0c5c460",
          "sha256:52bb03714c9d38ffc97923f87fd492d718e2093d80f7868fcc7c4231ca8fd5c8",
          "sha256:54b6a42720a87da2a45ee596204b71e44aa16d37ecd0fff95864d5caa7338dda",
          "sha256:61add3659650802d660bc60f914bbbd4582b45a09fff35a32bfd83b36c753a85",
          "sha256:795c3700b2ad48b3b9463d17f19c29dee478c2b5c2654fe2ddd526e14e05f344",
          "sha256:7d3c0635a2aec2a903ef407a34818f69e5f4fac9c658cd3af284ec323f663511",
          "sha256:8216016faec7945765e161036dc28c6e590ee070ddca517e53fc11cb736f39e4",
          "sha256:9588b9b5a4fcb25c2203deb25ca096b0f2516bd3b6b253a73d2c65b5f53fe650",
          "sha256:a6f12dbdbe25109e1d8f2bdd6248db8f91bde692e70d865bebd3f2b518cb0ff9",
          "sha256:aaf2b179efd7eed59a44869c38f07a5d47c0808ebc84a6b6917c7f8047667757",
          "sha256:af65105a9e0f10d8e00e5859c564ac7c0e1ce83a1e0b74f35dd285306ee5bc6c",
          "sha256:b2fef0037a659d05c11015b838bb9d36d8614c706632d092888ebe0d04f535d7",
          "sha256:b373d93a65fbe049d98bc181086b5efaa308badc44fd26b9963d4e4dac3f213e",
          "sha256:bb186420f1ce7d8ae43b386a85ec371335cb8d13efcb821e5454cd9afe2c5228",
          "sha256:db035145c020a893672ec5b07bddf26a82d7501338a6c81e65296178a4099e6a",
          "sha256:fbd10e68257c8b2db6cb85d27b9be9115b48a05fb1f9785f106fd2d4611975ae"
        ],
        "fields": [
          {
            "path": "/signals/0",
            "supporting_event_ids": [
              "sha256:52bb03714c9d38ffc97923f87fd492d718e2093d80f7868fcc7c4231ca8fd5c8"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:25:59.188Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/1",
            "supporting_event_ids": [
              "sha256:54b6a42720a87da2a45ee596204b71e44aa16d37ecd0fff95864d5caa7338dda"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:46.924Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/2",
            "supporting_event_ids": [
              "sha256:61add3659650802d660bc60f914bbbd4582b45a09fff35a32bfd83b36c753a85"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:48.501Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/3",
            "supporting_event_ids": [
              "sha256:aaf2b179efd7eed59a44869c38f07a5d47c0808ebc84a6b6917c7f8047667757"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:25:59.188Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/4",
            "supporting_event_ids": [
              "sha256:fbd10e68257c8b2db6cb85d27b9be9115b48a05fb1f9785f106fd2d4611975ae"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/5",
            "supporting_event_ids": [
              "sha256:a6f12dbdbe25109e1d8f2bdd6248db8f91bde692e70d865bebd3f2b518cb0ff9"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/6",
            "supporting_event_ids": [
              "sha256:8216016faec7945765e161036dc28c6e590ee070ddca517e53fc11cb736f39e4"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/7",
            "supporting_event_ids": [
              "sha256:4f3ca5441941c2c5af6ce70a0ba9aea4a7d908160437e8c7bcd45eb8d0c5c460"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:26.289Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/8",
            "supporting_event_ids": [
              "sha256:23bf27eb3302d46bc4291aa78742c95a80f068ff641d42e10b790ecad55e69fa"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:14:15.518Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/9",
            "supporting_event_ids": [
              "sha256:b2fef0037a659d05c11015b838bb9d36d8614c706632d092888ebe0d04f535d7"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:48.501Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/10",
            "supporting_event_ids": [
              "sha256:9588b9b5a4fcb25c2203deb25ca096b0f2516bd3b6b253a73d2c65b5f53fe650"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/11",
            "supporting_event_ids": [
              "sha256:db035145c020a893672ec5b07bddf26a82d7501338a6c81e65296178a4099e6a"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/12",
            "supporting_event_ids": [
              "sha256:7d3c0635a2aec2a903ef407a34818f69e5f4fac9c658cd3af284ec323f663511"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:54:24.665Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/13",
            "supporting_event_ids": [
              "sha256:af65105a9e0f10d8e00e5859c564ac7c0e1ce83a1e0b74f35dd285306ee5bc6c"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:14:03.955Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/14",
            "supporting_event_ids": [
              "sha256:bb186420f1ce7d8ae43b386a85ec371335cb8d13efcb821e5454cd9afe2c5228"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:50.607Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/15",
            "supporting_event_ids": [
              "sha256:795c3700b2ad48b3b9463d17f19c29dee478c2b5c2654fe2ddd526e14e05f344"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:14:15.518Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/16",
            "supporting_event_ids": [
              "sha256:4ec0d7b3a754e49ec5959d0522a4e472ef0b135221ebdc659852a3854801400a"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:50.607Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/17",
            "supporting_event_ids": [
              "sha256:21b04f96ae3d859626e2189f6b139d6e5df1f613fa593b7e9ff946870c4b8195"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:46.924Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/18",
            "supporting_event_ids": [
              "sha256:13d9fc132adeac47ca479e5e893205788d9377dcd5a30ac5e9b7876232313de7"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:49.584Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/19",
            "supporting_event_ids": [
              "sha256:b373d93a65fbe049d98bc181086b5efaa308badc44fd26b9963d4e4dac3f213e"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:50.607Z",
            "freshness": "fresh"
          },
          {
            "path": "/signals/20",
            "supporting_event_ids": [
              "sha256:0b778d8036862a031cf7141d6bee542a7e0d3c0c4504fbf980bc43a6c98a0fa0"
            ],
            "contradicting_event_ids": [],
            "accepted_proof_kinds": [
              "observed"
            ],
            "evidence_proof_kinds": [
              "observed"
            ],
            "latest_observation_at": "2026-08-07T21:13:51.750Z",
            "freshness": "fresh"
          }
        ]
      },
      "canonical_url": "https://sourcey.com/agent-readiness/notion/notion-api/api-integration-lifecycle",
      "projection_digest": "sha256:eae5245d11e8ef3c221d0706d7fde6c674ce91b807a2aa7f648588796f667c64"
    }
  }
}
