TS-003 — Ingestion Pipeline (track/identify/batch)
Objective: Runtime endpoints with fast-ack + processor through segment evaluation (rules engine stubbed to no-op effects).
Archetype: asynchronous event pipeline · Refs: ADR-012/013, core-spec
Objective: Runtime endpoints with fast-ack + processor through segment evaluation (rules engine stubbed to no-op effects).
In: auth (api key + machine role permission core.events.write) · Zod envelope · Upstash rate limit · 202 contract · processor: identity resolution (identities, promotion, merge suggestion queue on DNI conflict) · tracked_events append (idempotency_key) · incremental segment eval for DSL v1 + entered/exited events · nightly full recompute job (freshness tier param).
Out: rules effects (TS-004) · imports CSV (separate spec).
Acceptance: k6 track p95 <100 ms in cert · duplicate idempotency_key ⇒ 202 + no second row · segment diff correctness suite (fixtures per DSL node type) · nightly recompute reconciles a seeded drift.
⌘I