Execution meta — see plan: #5296
Problem
State persistence is inconsistent across subsystems. Offsets have a RocksDB path, but subscription registration, push buffers, in-flight deliveries, and A2A tasks remain largely in-memory. A2A documentation also states that InMemoryA2AMessageTransport and the in-memory TaskRegistry are part of the current implementation.
Risks
- A Runtime crash, restart, migration, or network partition produces uncontrollable redelivery or state loss.
- A2A can bypass the Runtime's reliability, DLQ, audit, and authorization paths.
- "At-least-once" cannot be formed into an end-to-end, verifiable contract.
Proposed direction
Introduce a unified state control-plane interface set:
OffsetStore
SubscriptionStore
DeliveryStateStore
SessionStore
DeadLetterStore
TaskStore
In production mode, require:
- subscription and delivery state are recoverable;
- ACK carries
deliveryId, deliveryEpoch, and an idempotency key;
- offsets advance monotonically only;
- disconnected push events return to the unified dispatcher;
- A2A tasks reuse the Runtime transport and persisted state.
Related concrete bugs
The following at-least-once reliability defects in the current develop code are the concrete manifestations of this missing unified state control plane. Landing this issue should fix them together:
Acceptance criteria
Part of the Architecture Review.
Problem
State persistence is inconsistent across subsystems. Offsets have a RocksDB path, but subscription registration, push buffers, in-flight deliveries, and A2A tasks remain largely in-memory. A2A documentation also states that
InMemoryA2AMessageTransportand the in-memoryTaskRegistryare part of the current implementation.Risks
Proposed direction
Introduce a unified state control-plane interface set:
In production mode, require:
deliveryId,deliveryEpoch, and an idempotency key;Related concrete bugs
The following at-least-once reliability defects in the current
developcode are the concrete manifestations of this missing unified state control plane. Landing this issue should fix them together:Acceptance criteria
Part of the Architecture Review.