DC-SESS-06
DC derived enforcedReplay equivalence under fragmented inbound streams: two reducer
runs over the same byte-chunk sequence (including inputs where
single CBOR items span multiple mux frames) produce
byte-identical DeliverPeerFrame lists. Truncated tails are
preserved across step() calls until completion; malformed CBOR
at an item boundary surfaces as
SessionError::ProtocolPayloadMalformed { protocol, detail } —
NEVER a silent drop, NEVER a partial accept.
- Source
docs/clusters/PHASE4-N-M-FRAG/cluster.md §1
- Cluster
- CL-WIRE-PROTOCOL
Enforcement trace
Tests 3
- crates/ade_network/src/session/core.rs::tests::fragmented_replay_equivalence_two_runs_byte_identical
- crates/ade_network/src/session/core.rs::tests::malformed_cbor_at_item_boundary_returns_session_error
- crates/ade_network/src/session/core.rs::tests::truncated_then_complete_two_step_drain
Cross-references
Evidence notes
PHASE4-N-M-FRAG (2026-05-27): the per-protocol buffer + closed-sum item-completeness predicate together preserve replay-equivalence across fragmented streams. SessionError::ProtocolPayloadMalformed exists as a closed-sum variant on the reducer's error path, with a closed &'static str detail discriminator (unexpected_eof / unknown_era_tag / ... / duplicate_map_key).