Skip to content

PRS-22, finalize history by RPC with state update#9

Open
BoogVAr wants to merge 20 commits intoparasol-devfrom
filalize_history_by_signal
Open

PRS-22, finalize history by RPC with state update#9
BoogVAr wants to merge 20 commits intoparasol-devfrom
filalize_history_by_signal

Conversation

@BoogVAr
Copy link

@BoogVAr BoogVAr commented Jan 21, 2026

  • Disabled automatic finalization by MAX_LOCKOUT_HISTORY; history now accumulates until an external signal.
  • replayHistory performs replay: reset to root, replay to target slot, set new root.
  • replayHistory supports exclude_signatures (txid of the first signature); matching transactions are skipped during replay.
  • replayHistory supports prepend_transactions: base64‑encoded VersionedTransaction strings inserted at the start of specified slots.
  • finalizeHistory sets root directly without replay.
  • Slot fallback: if slot is omitted or 0, use the highest frozen slot above current root (error if none).
  • Added a safety timeout to force replay‑finalize if no external finalize arrives in time.
  • Added a dedicated finalize‑history RPC listener with its own enlarged max_request_body_size to handle large requests.
  • Account patching removed; direct state mutation is unsafe.

RPC methods

finalizeHistory(slot?)
replayHistory(slot?, exclude_signatures?, prepend_transactions?)

New CLI flags

--finalize-history-rpc-port (default: rpc-port + 2)
--finalize-history-rpc-max-request-body-size (default: 100MB)
--external-finalize-timeout-secs (default: 3600)

Replay payload fields

exclude_signatures: [, ...]
prepend_transactions: { "": ["<tx_base64>", ...], ... }

@BoogVAr BoogVAr force-pushed the filalize_history_by_signal branch from 1ca2de9 to d92bb2b Compare January 22, 2026 06:30
@BoogVAr BoogVAr force-pushed the filalize_history_by_signal branch from 5ee33ae to fcc8347 Compare February 4, 2026 12:47
@BoogVAr BoogVAr force-pushed the filalize_history_by_signal branch from ac3a50f to 2e57242 Compare February 23, 2026 13:57
@BoogVAr BoogVAr force-pushed the filalize_history_by_signal branch from 2e57242 to 593dc67 Compare February 23, 2026 14:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant