{
  "schema": "varexis-public-evidence-record/0.3",
  "generated_at_utc": "2026-10-16T14:13:51.913Z",
  "record_id": "VXI-EXT-PROCUREMENT-GITHUB-REUSABLE-TOKEN-01-v1",
  "record_kind": "external_reference",
  "title": "Reusable workflows: Token permission ceilings",
  "system": "GitHub Actions",
  "evidence_family": "vendor_evidence_review",
  "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
  "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
  "canonical_question": "Can a reusable GitHub workflow grant itself broader GITHUB_TOKEN permissions than its caller?",
  "near_questions": [
    "Which workflow supplied the token permissions?",
    "Can a callee elevate GITHUB_TOKEN?",
    "Do nested workflows reduce permissions?",
    "Which permission was denied?",
    "Are other credentials supplied?",
    "Does the caller use a pinned reference?",
    "Which revision ran on retry?",
    "Does token scope prove secret scope?",
    "What operation requires the missing permission?",
    "Who approved the caller grants?",
    "What proves the effective permission chain?",
    "Can I retain this workflow-authority review?"
  ],
  "supported_claims": [
    {
      "claim": "Nested reusable workflows can retain or reduce the caller token permissions, not elevate them. The actual permission chain therefore matters when diagnosing an operation or reviewing claimed isolation. This constraint concerns GITHUB_TOKEN; it does not establish the scope of other credentials supplied to the job.",
      "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": "Nested reusable workflows can retain or reduce the caller token permissions, not elevate them. The actual permission chain therefore matters when diagnosing an operation or reviewing claimed isolation. This constraint concerns GITHUB_TOKEN; it does not establish the scope of other credentials supplied to the job.",
  "related_record_ids": [],
  "source_review": {
    "source_type": "official_external_documentation",
    "source_title": "GitHub: Reusing workflow configurations",
    "source_url": "https://docs.github.com/en/actions/reference/workflows-and-actions/reusing-workflow-configurations",
    "checked_on": "2026-10-16",
    "candidate_record_id": "VXI-EXT-PROCUREMENT-GITHUB-REUSABLE-TOKEN-01-v1",
    "candidate_record_sha256": "318273c3f5acdae98403404beb65b49013595078280d0267acb0115a7517bb58",
    "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": "Nested reusable workflows can retain or reduce the caller token permissions, not elevate them. The actual permission chain therefore matters when diagnosing an operation or reviewing claimed isolation. This constraint concerns GITHUB_TOKEN; it does not establish the scope of other credentials supplied to the job.",
    "required_buyer_context": "Caller/callee revisions, token permissions and separately supplied credentials. Effective configuration and dated operational evidence have not been inspected.",
    "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-16",
    "claim_to_check": "A called workflow can independently elevate its inherited job token.",
    "documented_statement": {
      "status": "documented",
      "statement": "Nested reusable workflows can retain or reduce the caller token permissions, not elevate them. The actual permission chain therefore matters when diagnosing an operation or reviewing claimed isolation. This constraint concerns GITHUB_TOKEN; it does not establish the scope of other credentials supplied to the job.",
      "source_ids": [
        "github-permissions"
      ]
    },
    "buyer_evidence_required": [
      "Caller and nested workflow references.",
      "Effective GITHUB_TOKEN permissions at each call.",
      "Inventory of other credentials available to the job."
    ],
    "review_condition": {
      "status": "varexis_review_policy",
      "statement": "Review the complete credential set before treating the token ceiling as total privilege isolation."
    },
    "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": "github-permissions",
        "url": "https://docs.github.com/en/actions/reference/workflows-and-actions/reusing-workflow-configurations",
        "final_url": "https://docs.github.com/en/actions/reference/workflows-and-actions/reusing-workflow-configurations",
        "title": "GitHub: Reusing workflow configurations",
        "checked_on": "2026-10-16",
        "sha256": "3873a1c94bfe3524532135e82a63eecd235cd0b09aee416073cfe145d04c4fbe",
        "bytes": 416372
      }
    ],
    "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 authority chain used to review a reusable deployment workflow.",
      "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": "Caller/callee revisions, token permissions and separately supplied credentials."
    }
  },
  "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#github-reusable-workflow-token-permission-ceiling",
  "machine_readable_record": "/varexis-index/records/github-reusable-workflow-token-permission-ceiling.json"
}
