{
  "receipt": "gcal-persistent-ingest",
  "recorded": "2026-07-17T21:45:00-05:00",
  "calendar": "chris@ax0s.io primary calendar (Google Workspace)",
  "pipeline": {
    "source": "ax0s-ingest v0.1.0 (versioned source + 248-test suite)",
    "runtime": "systemd user timer ax0s-ingest-gcal.timer, 5-minute cadence, hub host; secrets supplied per-unit via systemd LoadCredential",
    "write_path": "ax0s-memory REST /api/remember + /api/fabric/write (gate-receipt checked)"
  },
  "connector_query": {
    "endpoint": "Google Calendar API events.list incremental sync-token flow (OAuth2 refresh-token)",
    "result_class": "ok",
    "seed_window": "full bootstrap listing of the configured calendar, then incremental sync tokens"
  },
  "sync": {
    "events_ingested": 40,
    "event_pointers_written": 40,
    "raw_corpus": "project gcal (secret-redacted snapshots; no attendee identity in corpus)",
    "raw_record_example": "record:r_770282a49e4f",
    "pointer_record_example": "record:r_afcc21f3e404",
    "fabric": "domain comms on slug ax0s — calendar_event, person, organization, topic, project entities"
  },
  "checkpoint": {
    "mechanism": "Calendar syncToken watermark; an invalidated token re-seeds from a clean re-list; atomic per-connector state file",
    "scheduled_run_observed": "2026-07-17T21:38:47-05:00 timer run completed clean (0 new events, watermark current)"
  },
  "deduplication": {
    "mechanism": "per-event seen ledger (content hash) + supersede_same_key on gcal/<calendar>/event/<id>; one live pointer per event superseded in place as the event changes; cancellation tombstones are re-asserted through partial-failure markers"
  },
  "later_recall": {
    "query": "LAUNCH PAD Austin event (hybrid recall, slug ax0s)",
    "hit": "calendar-event pointer record:r_afcc21f3e404 (public LAUNCH PAD event, 2026-07-16) surfaced as the top hit, linking corpus snapshot record:r_770282a49e4f",
    "result_class": "ok"
  },
  "filtering": "one configured calendar only; cancelled events become tombstone records, not silent deletions",
  "redaction": "secret-shape scrubbing runs on summaries, descriptions, and locations before any write; corpus snapshots carry no attendee identity — normalized attendee emails live only on pointer records",
  "limitation": "This receipt proves persistent Google Calendar ingest with checkpoint, deduplication, and one later recall on the recorded date. It does not prove indefinite continuous operation, production health, or customer availability; timer health is observable via systemd."
}
