{
  "schema": "varexis-public-evidence-record/0.3",
  "generated_at_utc": "2026-10-14T20:21:57.226Z",
  "record_id": "VXI-EXT-PROCUREMENT-FASTLY-SOFT-PURGE-01-v1",
  "record_kind": "external_reference",
  "title": "Fastly soft purge: Stale marking is not immediate removal",
  "system": "Fastly",
  "evidence_family": "vendor_evidence_review",
  "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
  "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
  "canonical_question": "Does a successful soft purge prove cached content can no longer be served?",
  "near_questions": [
    "Does soft purging remove cached content immediately?",
    "Can stale content still be served after a purge?",
    "What distinguishes soft and hard cache invalidation?",
    "Which cache setting allows stale responses on error?",
    "Does an accepted purge prove a customer received new content?",
    "What evidence supports an urgent content-removal claim?",
    "Can a surrogate key select more than one object?",
    "Does purge-all behave like a soft purge?",
    "Which origin headers support revalidation?",
    "What should procurement request about cache removal?",
    "When should an agent avoid claiming content is gone?",
    "Can I save a cache-purge evidence review?"
  ],
  "supported_claims": [
    {
      "claim": "Soft purge marks content stale and can leave it available during revalidation or other configured stale-serving conditions. Fastly distinguishes this from hard invalidation. Identify the purge method and cache behaviour before treating a purge response as evidence that old content is unavailable.",
      "reliance": "DOCUMENTED_CAPABILITY_ONLY"
    }
  ],
  "not_demonstrated_claims": [
    "Verified buyer configuration or effective access rights",
    "Independent execution, completeness or security testing",
    "Vendor certification, legal compliance or guaranteed suitability"
  ],
  "public_summary": "Soft purge marks content stale and can leave it available during revalidation or other configured stale-serving conditions. Fastly distinguishes this from hard invalidation. Identify the purge method and cache behaviour before treating a purge response as evidence that old content is unavailable.",
  "related_record_ids": [
    "VXI-EXT-PROCUREMENT-GITHUB-DEPLOY-REVIEW-01-v1",
    "VXI-EXT-PROCUREMENT-CODEQL-BUILD-COVERAGE-01-v1",
    "VXI-EXT-PROCUREMENT-GCP-KMS-ROTATION-DATA-01-v1"
  ],
  "source_review": {
    "source_type": "official_external_documentation",
    "source_title": "Fastly soft purge and stale delivery",
    "source_url": "https://www.fastly.com/documentation/guides/full-site-delivery/purging/soft-purges/",
    "checked_on": "2026-10-14",
    "candidate_record_id": "VXI-EXT-PROCUREMENT-FASTLY-SOFT-PURGE-01-v1",
    "candidate_record_sha256": "cc4ae1224aff465dd561a810e92475ac6c0d48b054f254281a0bafc568c45e86",
    "method": "Primary documentation reviewed for the published bounded statement.",
    "deployment_tested_by_varexis": false,
    "revalidation": "The delivered snapshot preserves the review date shown. Recheck current primary documentation and deployment context before relying on present applicability; payment does not trigger fresh research."
  },
  "answer_policy": {
    "classification": "DOCUMENTED_WITH_DEPLOYMENT_BOUNDARY",
    "bounded_answer": "Soft purge marks content stale and can leave it available during revalidation or other configured stale-serving conditions. Fastly distinguishes this from hard invalidation. Identify the purge method and cache behaviour before treating a purge response as evidence that old content is unavailable.",
    "required_buyer_context": "Purge type, URL/key scope, stale-serving policy and observed content responses.",
    "missing_evidence": "A broader claim needs evidence matching the intended use. Payment does not upgrade the evidence state."
  },
  "private_boundary": "Raw logs, thresholds, private paths, source code, protected mechanisms and reconstruction-level details are excluded from public and paid delivery.",
  "decision_profile": {
    "schema": "varexis-vendor-evidence-review/1",
    "review_status": "documentation_review_only",
    "checked_on": "2026-10-14",
    "claim_to_check": "The purge response proves immediate removal of the old content.",
    "documented_statement": {
      "status": "documented",
      "statement": "Soft purge marks content stale and can leave it available during revalidation or other configured stale-serving conditions. Fastly distinguishes this from hard invalidation. Identify the purge method and cache behaviour before treating a purge response as evidence that old content is unavailable.",
      "source_ids": [
        "fastly-purge"
      ]
    },
    "buyer_evidence_required": [
      "Exact purge method and target scope.",
      "Stale-while-revalidate and stale-on-error configuration.",
      "Authorised observation of the relevant content after the operation."
    ],
    "review_condition": {
      "status": "varexis_review_policy",
      "statement": "Do not report immediate unavailability from a soft-purge acknowledgement."
    },
    "unknowns": "The buyer configuration, contract, effective entitlement and operational evidence have not been inspected. Missing evidence does not establish absence or failure of the feature.",
    "evidence_sources": [
      {
        "source_id": "fastly-purge",
        "url": "https://www.fastly.com/documentation/guides/full-site-delivery/purging/soft-purges/",
        "final_url": "https://www.fastly.com/documentation/guides/full-site-delivery/purging/soft-purges/",
        "title": "Fastly soft purge and stale delivery",
        "checked_on": "2026-10-14",
        "sha256": "9e588db74f5a1a4fd916e92f85831ddf8089a3700966a2963254cc9dc0e06ca1",
        "bytes": 359692
      }
    ],
    "observed_deployment": false,
    "commercial_reliance_boundary": "Procurement evidence support only; no supplier clearance, legal conclusion, configuration audit or verification of the buyer's claim is supplied.",
    "paid_value": {
      "decision_context": "Save the difference between an accepted cache action and verified content-removal behaviour.",
      "free": "Complete review, practical questions, sources and limitations; may be saved locally.",
      "single_request": "Existing server-saved version-bound route snapshot for later authenticated retrieval.",
      "evidence_receipt": "The same snapshot plus the existing unsigned delivery receipt.",
      "excluded": [
        "Fresh vendor research",
        "Continuous monitoring or change alerts",
        "Testing the buyer configuration",
        "Private evidence or vendor certification"
      ],
      "integrity": "Hashes identify content versions; they do not prove truth or provide a signature."
    },
    "revalidation": {
      "trigger": "A saved purchase does not recheck the source or buyer configuration.",
      "specific_watch": "Cache policy, purge type and origin revalidation behaviour."
    }
  },
  "paid_access_note": "The full published answer and boundaries are free. Paid access saves the selected route and source versions, with an unsigned receipt when purchased. Preview coverage before paying. Fresh research, bespoke assessment and protected evidence are excluded.",
  "service_route": {
    "request_guide": "/varexis-index/request.html",
    "request_workflow": "/varexis-index/request-workflow.json",
    "service_id": "single_request",
    "service_routes_url": "/varexis-index/service-routes.json",
    "payment_required": true,
    "availability_endpoint": "/api/index/capabilities",
    "operational_status": "AUTOMATIC_SERVICE_CAPABILITIES_GATED",
    "checkout_url": "/index-access"
  },
  "authority_boundary": "VAREXIS-INDEX informs evidence reliance. It does not provide advice, certification, deployment authority, security assurance, production approval, or guarantee.",
  "human_page": "/varexis-index/catalog.html#fastly-soft-purge-removal-boundary",
  "machine_readable_record": "/varexis-index/records/fastly-soft-purge-removal-boundary.json"
}
