replay_completed. It does not continue following newly arriving events. Replay sends available historical data over the WebSocket. Standard replay paces events according to speed. Core L4 replay uses checkpoint-anchored bulk delivery and ignores speed. Check live and replay availability before choosing a channel.
Answer: Use WebSocket replay for bounded historical event order. Standard replay emits available records for the requested window; core L4 replay anchors to a checkpoint and delivers a snapshot plus ordered batches. It does not turn into a live subscription.Evidence: Verify the channel in WebSocket channels, apply the message contract from WebSocket schema, and check the selected window in Venue coverage.
All six Lighter channels support historical replay. Lighter replay returns
historical_data rows in the stored Lighter shape, which differs from the live data payloads on lighter_orderbook, lighter_trades, lighter_open_interest, and lighter_funding. Parse the two separately; see Lighter WebSocket channels.Lighter on Robinhood Chain replays on its own five channels: rh_lighter_orderbook, rh_lighter_trades, rh_lighter_candles, rh_lighter_open_interest, and rh_lighter_funding, in the same stored Lighter shape. Trades replay from 2026-06-26; order books, open interest, and funding from 2026-08-22.Single-Channel Replay
Core L4 Replay
Core L4 replay is available forl4_diffs and l4_orders. It is single-channel and uses a different delivery model from standard timed replay.
start, emits an l4_snapshot, then sends one or more l4_batch events for the requested window. For this bulk path, speed is ignored. The server-side collection, backfill, and checkpoint anchoring reduce infrastructure work; they do not remove client-side event application for a continuously updated local book. Apply each batch in order after the snapshot; a snapshot-only consumer can use the returned state directly. Bound the window and move batch processing off the message callback instead of using standard replay speed as backpressure.
A core L4 request can be rejected when no usable checkpoint exists for the symbol and window. Check coverage and treat the accepted replay events as the authority rather than inferring one universal L4 start date. HIP-3, HIP-4, and Spot L4 channels are real-time only; replay requests for those L4 channel families are rejected.
Standard Multi-Channel Replay
rh_lighter_* channels replay together, never with lighter_* channels. Core L4 replay remains single-channel.
Replay Controls
Pause, resume, and stop work for both standard replay and core L4.replay.seek is standard-only and is rejected for core L4. Core L4 bulk replay remains bounded by its requested window and does not use speed for pacing.
Pause
{"op":"replay.pause"}Resume
{"op":"replay.resume"}Seek
{"op":"replay.seek","timestamp":1681550000000}Stop
{"op":"replay.stop"}Gap Handling
Replay Event Flow
Replay control commands use dottedop values. Server events use underscore event names.
Replay Design
Replay is for workflows where event order matters: backtests, local book reconstruction, incident review, data QA, and model-input regeneration. Choose the narrowest channel set that can answer the question. A single-channel order-book replay is easier to audit than a broad multi-channel replay, and a broad replay should be split into windows that can be resumed independently.Replay Manifest
Store a manifest beside every replay output. This is application metadata, not an additional 0xArchive wire schema. At minimum record:
Include replay controls used during the run. Standard replay supports pause, resume, seek, and stop. Core L4 supports pause, resume, and stop but rejects seek. If a standard replay client changes speed or seeks to a new timestamp, record that in the manifest so another run can explain the output sequence. For core L4, record
delivery as checkpoint_anchored_bulk, omit speed, and retain checkpoint and batch metadata.