agent-orchestrator/backend
prateek b0e4fffa62 test(cdc): add full-stack E2E tests through the real store + snapshot source
The cdc integration test covers the synchronous Drain/Poll happy path but
(1) resyncs from a fake snapshot and (2) never runs the publisher/consumer as
the concurrent goroutines the daemon actually uses. Add two E2E tests in the
composition-root package that wire the real sqlite.Store, outboxAdapter,
Publisher, JSONL log, Consumer, Broadcaster and the REAL snapshotSource
(store.ListAll):

- RealSnapshotResyncThroughRotation: forces a rotation and asserts the
  consumer rebuilds from the sessions table, delivering the persisted record
  payload, with the offset landing at the change_log head.
- ConcurrentPublisherConsumer: runs both as goroutines on their tickers and
  asserts every write is delivered exactly once, in order, offset at head
  (also exercises the broadcaster hand-off under -race).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 00:39:19 +05:30
..
internal refactor(storage): make session metadata + PR facts typed and structured 2026-05-31 00:33:13 +05:30
cdc_e2e_test.go test(cdc): add full-stack E2E tests through the real store + snapshot source 2026-05-31 00:39:19 +05:30
cdc_wiring.go refactor(storage): make session metadata + PR facts typed and structured 2026-05-31 00:33:13 +05:30
go.mod feat(backend): SQLite storage layer + CDC pipeline, LCM/reaper wiring 2026-05-30 16:02:07 +05:30
go.sum feat(backend): SQLite storage layer + CDC pipeline, LCM/reaper wiring 2026-05-30 16:02:07 +05:30
lifecycle_wiring.go feat(backend): SQLite storage layer + CDC pipeline, LCM/reaper wiring 2026-05-30 16:02:07 +05:30
main.go feat(backend): SQLite storage layer + CDC pipeline, LCM/reaper wiring 2026-05-30 16:02:07 +05:30
main_test.go refactor(storage): make session metadata + PR facts typed and structured 2026-05-31 00:33:13 +05:30
sqlc.yaml feat(backend): SQLite storage layer + CDC pipeline, LCM/reaper wiring 2026-05-30 16:02:07 +05:30