{
  "schema": "varexis-public-evidence-record/0.3",
  "generated_at_utc": "2026-10-24T21:56:24.175Z",
  "record_id": "VXI-EXT-PROCUREMENT-OPENFGA-CONTEXTUAL-TUPLE-PRECEDENCE-01-v1",
  "record_kind": "external_reference",
  "title": "OpenFGA request-local relationship overrides",
  "system": "OpenFGA",
  "evidence_family": "vendor_evidence_review",
  "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
  "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
  "canonical_question": "Can a contextual tuple override the same stored relationship in an OpenFGA request?",
  "near_questions": [
    "Which tuple wins when OpenFGA context duplicates a stored relationship?",
    "Do contextual FGA tuples persist after a request?",
    "Can database tuples alone explain an OpenFGA decision?",
    "What must an audit retain for request-local FGA permissions?"
  ],
  "supported_claims": [
    {
      "claim": "The pinned contextual-tuples guide says request-local tuples participate in evaluation as stored tuples would, but are not persisted and affect only that request. When user, relation and object match a stored tuple, the contextual tuple takes precedence. Reviewing the database alone therefore does not reconstruct the relationships used by that specific decision.",
      "reliance": "DOCUMENTED_CAPABILITY_ONLY"
    }
  ],
  "not_demonstrated_claims": [
    "The actual contextual inputs and caller authority to supply them are unknown.",
    "Authentication or a policy result does not establish business approval, safe tool behaviour or completed execution.",
    "Buyer deployment testing, live runtime enforcement, certification or permission to act",
    "Expanded capabilities or licences for existing INDEX executables"
  ],
  "public_summary": "The pinned contextual-tuples guide says request-local tuples participate in evaluation as stored tuples would, but are not persisted and affect only that request. When user, relation and object match a stored tuple, the contextual tuple takes precedence. Reviewing the database alone therefore does not reconstruct the relationships used by that specific decision.",
  "related_record_ids": [],
  "source_review": {
    "source_type": "official_external_documentation",
    "source_title": "Contextual Tuples",
    "source_url": "https://raw.githubusercontent.com/openfga/openfga.dev/fb5359796e1e1027985675cfdd2413e6dcbfdf5d/docs/content/interacting/contextual-tuples.mdx",
    "checked_on": "2026-10-24",
    "candidate_record_id": "VXI-EXT-PROCUREMENT-OPENFGA-CONTEXTUAL-TUPLE-PRECEDENCE-01-v1",
    "candidate_record_sha256": "ea7f5c0275734a4415319375cf0cd0c2e548196145be1f80a17e096af5b9ccb2",
    "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": "The pinned contextual-tuples guide says request-local tuples participate in evaluation as stored tuples would, but are not persisted and affect only that request. When user, relation and object match a stored tuple, the contextual tuple takes precedence. Reviewing the database alone therefore does not reconstruct the relationships used by that specific decision.",
    "required_buyer_context": "Stored relationship and matching contextual tuple; Exact authorization request and model ID; Authority and validation of the caller supplying contextual tuples. Buyer deployment not 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-24",
    "claim_to_check": "Can a contextual tuple override the same stored relationship in an OpenFGA request?",
    "documented_statement": {
      "status": "documented",
      "statement": "The pinned contextual-tuples guide says request-local tuples participate in evaluation as stored tuples would, but are not persisted and affect only that request. When user, relation and object match a stored tuple, the contextual tuple takes precedence. Reviewing the database alone therefore does not reconstruct the relationships used by that specific decision.",
      "source_ids": [
        "fga-context"
      ]
    },
    "review_inference": {
      "status": "review_inference",
      "statement": "Capture request-local authority inputs before explaining a permission result. This is a source-based review decision, not an observed deployment result.",
      "source_ids": [
        "fga-context"
      ]
    },
    "buyer_evidence_required": [
      "Stored relationship and matching contextual tuple",
      "Exact authorization request and model ID",
      "Authority and validation of the caller supplying contextual tuples"
    ],
    "review_condition": {
      "status": "varexis_review_policy",
      "statement": "Do not reconstruct a decision from stored tuples while omitting request-local overrides."
    },
    "unknowns": "The actual contextual inputs and caller authority to supply them are unknown.",
    "unknown_finding": {
      "status": "unknown",
      "statement": "The actual contextual inputs and caller authority to supply them are unknown."
    },
    "evidence_sources": [
      {
        "source_id": "fga-context",
        "url": "https://raw.githubusercontent.com/openfga/openfga.dev/fb5359796e1e1027985675cfdd2413e6dcbfdf5d/docs/content/interacting/contextual-tuples.mdx",
        "final_url": "https://raw.githubusercontent.com/openfga/openfga.dev/fb5359796e1e1027985675cfdd2413e6dcbfdf5d/docs/content/interacting/contextual-tuples.mdx",
        "status": 200,
        "captured_at_utc": "2026-10-24T21:45:02.197Z",
        "sha256": "a2f69100dea52414e63bfb41f8b2b0b475a21311cf385ae51fe99670cf370678",
        "bytes": 4010,
        "title": "Contextual Tuples",
        "hash_basis": "Decoded HTTP response body bytes",
        "rights_review": "Original factual paraphrase and source metadata only; Apache-2.0 repository captures retained privately and not redistributed.",
        "checked_on": "2026-10-24",
        "capture_status": 200,
        "claim_review_completed": true,
        "reviewed_sections": [
          "How Contextual Tuples Work",
          "Important Considerations",
          "User Directories, Identity Tokens, And Relationships",
          "02. Get changes for all object types",
          "Warning"
        ],
        "version_context": "Pinned openfga/openfga.dev revision fb5359796e1e1027985675cfdd2413e6dcbfdf5d captured 2026-10-24. Documentation review, not evidence that a buyer implementation conforms."
      }
    ],
    "observed_deployment": false,
    "commercial_reliance_boundary": "Documentation review only; the buyer must establish applicability and actual outcomes. INDEX does not inspect or control the deployment.",
    "paid_value": {
      "decision_context": "Capture request-local authority inputs before explaining a permission result.",
      "free": "Complete review, sources, practical questions 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": "Recheck the pinned source, actual implementation version, policy inputs and retained decision evidence before relying on a current outcome."
    },
    "buyer_relevance": "Capture request-local authority inputs before explaining a permission result.",
    "refusal_conditions": [
      "Do not reconstruct a decision from stored tuples while omitting request-local overrides."
    ]
  },
  "niche": {
    "niche_id": "agent-authority-action-evidence",
    "label": "Agent Authority & Action Evidence",
    "classification_id": "identity",
    "classification_label": "Agent Identity, Credentials & Delegation",
    "topic_id": "identity",
    "buyer_intent": "Capture request-local authority inputs before explaining a permission result.",
    "comparison_role": "supplementary_discovery"
  },
  "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#openfga-contextual-tuple-precedence",
  "machine_readable_record": "/varexis-index/records/openfga-contextual-tuple-precedence.json"
}
