{
  "schema": "varexis-public-evidence-record/0.3",
  "generated_at_utc": "2026-10-16T02:40:06.177Z",
  "record_id": "VXI-EXT-PROCUREMENT-GITLAB-AUDIT-DEDUPE-01-v1",
  "record_kind": "external_reference",
  "title": "GitLab audit streaming: Event delivery is not exactly once",
  "system": "GitLab",
  "evidence_family": "vendor_evidence_review",
  "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
  "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
  "canonical_question": "Can an audit receiver count each GitLab streamed event as a unique action?",
  "near_questions": [
    "Can GitLab stream an audit event twice?",
    "Which event field supports deduplication?",
    "Does disabling one destination stop all streams?",
    "Can destination configuration remain while streaming is paused?",
    "What interval did the receiver observe?",
    "Does a raw message count equal user actions?",
    "How should an agent reconcile duplicate deliveries?",
    "Which destination was active for the review?",
    "Can a configured stream still be inactive?",
    "What evidence supports distinct-event counts?",
    "When should an audit count remain qualified?",
    "Can I save an audit-stream accounting review?"
  ],
  "supported_claims": [
    {
      "claim": "GitLab documents that one event can be streamed more than once to the same destination and recommends deduplication using its event identifier. Destinations can also be deactivated independently. Receiver counts need event identity and destination-state context before being presented as counts of distinct actions.",
      "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": "GitLab documents that one event can be streamed more than once to the same destination and recommends deduplication using its event identifier. Destinations can also be deactivated independently. Receiver counts need event identity and destination-state context before being presented as counts of distinct actions.",
  "related_record_ids": [
    "VXI-EXT-PROCUREMENT-ENTRA-RETENTION-01-v1",
    "VXI-EXT-PROCUREMENT-NOTION-AGENT-AUDIT-01-v1",
    "VXI-EXT-PROCUREMENT-CLOUDTRAIL-VALIDATION-01-v1",
    "VXI-EXT-PROCUREMENT-GCP-SINK-EXCLUSIONS-01-v1",
    "VXI-EXT-PROCUREMENT-S3-LOG-COMPLETENESS-01-v1"
  ],
  "source_review": {
    "source_type": "official_external_documentation",
    "source_title": "GitLab audit event streaming reliability",
    "source_url": "https://docs.gitlab.com/user/compliance/audit_event_streaming/",
    "checked_on": "2026-10-16",
    "candidate_record_id": "VXI-EXT-PROCUREMENT-GITLAB-AUDIT-DEDUPE-01-v1",
    "candidate_record_sha256": "5bb9a02ed1f257edf3f76f3f633b04d60c83e0da8adf445134c8c72e7ceace0d",
    "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": "GitLab documents that one event can be streamed more than once to the same destination and recommends deduplication using its event identifier. Destinations can also be deactivated independently. Receiver counts need event identity and destination-state context before being presented as counts of distinct actions.",
    "required_buyer_context": "GitLab: Event IDs, receiver deduplication, destination state and reporting interval; buyer configuration and operational evidence are required.",
    "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": "Every received audit message represents one distinct user action.",
    "documented_statement": {
      "status": "documented",
      "statement": "GitLab documents that one event can be streamed more than once to the same destination and recommends deduplication using its event identifier. Destinations can also be deactivated independently. Receiver counts need event identity and destination-state context before being presented as counts of distinct actions.",
      "source_ids": [
        "gitlab-stream"
      ]
    },
    "buyer_evidence_required": [
      "Event identifier handling and receiver deduplication.",
      "Destination configuration and active-state history.",
      "Reconciliation of unique events for the stated reporting interval."
    ],
    "review_condition": {
      "status": "varexis_review_policy",
      "statement": "Do not equate message count with unique action count without deduplication."
    },
    "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": "gitlab-stream",
        "url": "https://docs.gitlab.com/user/compliance/audit_event_streaming/",
        "final_url": "https://docs.gitlab.com/user/compliance/audit_event_streaming/",
        "title": "GitLab audit event streaming reliability",
        "checked_on": "2026-10-16",
        "sha256": "7923a9ae6d1cc13edcc11acbaff71a51daa57a936e20b6dc4a6049e310aabf61",
        "bytes": 56456
      }
    ],
    "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": "Preserve how duplicate messages and destination state affect audit counts.",
      "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": "Event IDs, receiver deduplication, destination state and reporting interval"
    }
  },
  "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#gitlab-audit-stream-duplicate-events",
  "machine_readable_record": "/varexis-index/records/gitlab-audit-stream-duplicate-events.json"
}
