Implementation update
Implementation is published in MR !23, branch ai/session-03-canonical-ingestion, commit f37d32e.
The change adds the membership-gated frontend-neutral ingress application service, atomic YDB event/run/attempt/manifest/outbox commit, binding-level deduplication that survives a clean-context switch, HMAC-derived opaque IDs, canonical Object Storage prefixes, and a deterministic non-Telegram adapter.
Verified locally with make ci, two clean YDB Local migration applications, the full tagged YDB integration suite, and a focused uncached concurrent-ingress test. One of two simultaneous deliveries creates the records; the other resolves the winner. A later retry after the binding switches still returns the original session/event/run. Object failure, transactional rejection, stale revision, and cross-tenant cases leave no partial canonical workload state.
The issue remains open until the GitCode branch reaches the GitHub mirror and mandatory CI is green.


CI verification — green
GitHub mirror run #68 completed successfully for commit f37d32e4d6ec8832c0700c2a16a0115d5e6ed6fd.
All required jobs passed:
- Go verification;
- YDB schema and state store, including repeatable migrations and the full integration suite;
- Terraform environments;
- local multi-service stand, including stop/restart persistence;
- control-plane and worker runtime image builds.
MR !23 is ready for review and merge. The issue remains open until the implementation is merged.


Completion report
SESSION-03 was merged through PR !23 as merge commit 13e886f.
Delivered:
- frontend-neutral authenticated session creation, switching, and canonical user-event ingestion;
- atomic event/run/attempt/manifest/dispatch-outbox persistence with tenant and session authorization;
- delayed-delivery idempotency across binding switches;
- immutable per-attempt Object Storage namespaces that prevent concurrent retries from overwriting canonical bytes;
- origin-only dispatch gating until SESSION-04 adds frontend-neutral completion/projection;
- synthetic non-Telegram coverage and public English documentation.
Verification included make ci, clean YDB Local integration coverage, duplicate/concurrency/authorization regression tests, and all requested PR review fixes. Follow-up runtime cost work continues in RUNTIME-01 #39.


Parent and architecture
Outcome
Implement frontend-neutral canonical user-event ingestion, session binding/switching and run creation before adapting any transport frontend.
Estimate
Scope
session_event;session_idandtrigger_event_id;Non-goals
Verification
Acceptance criteria
session_idand triggering event.context_epoch.