feat(scenarios): bounded override persistence - #10
Conversation
…y slot Addresses two review comments. A persisted override was re-queued with fetch_before_use intact, so every following slot pulled the whole account from mainnet again: one RPC per slot per override, and any field the override does not write was reset to mainnet's value, discarding what local transactions had written to it. fetch_before_use is now cleared on the re-queue, but only after the write succeeds, so a failed apply still retries next slot with the fetch. The re-queue replaces a copy of itself already queued for that slot instead of bailing out, which keeps one entry per id. persist also gains the ts-bindings attribute its sibling fetch_before_use already had, and the regenerated OverrideInstance.ts exposes it - the field was previously absent from the TS SDK entirely.
…ge numbers support
…eChain/surfpool into feat/bisonfi-support
…y slot Addresses two review comments. A persisted override was re-queued with fetch_before_use intact, so every following slot pulled the whole account from mainnet again: one RPC per slot per override, and any field the override does not write was reset to mainnet's value, discarding what local transactions had written to it. fetch_before_use is now cleared on the re-queue, but only after the write succeeds, so a failed apply still retries next slot with the fetch. The re-queue replaces a copy of itself already queued for that slot instead of bailing out, which keeps one entry per id. persist also gains the ts-bindings attribute its sibling fetch_before_use already had, and the regenerated OverrideInstance.ts exposes it - the field was previously absent from the TS SDK entirely.
…ge numbers support
… and a force stop if needed
… and a force stop if needed
|
|
|
…y slot Addresses two review comments. A persisted override was re-queued with fetch_before_use intact, so every following slot pulled the whole account from mainnet again: one RPC per slot per override, and any field the override does not write was reset to mainnet's value, discarding what local transactions had written to it. fetch_before_use is now cleared on the re-queue, but only after the write succeeds, so a failed apply still retries next slot with the fetch. The re-queue replaces a copy of itself already queued for that slot instead of bailing out, which keeps one entry per id. persist also gains the ts-bindings attribute its sibling fetch_before_use already had, and the regenerated OverrideInstance.ts exposes it - the field was previously absent from the TS SDK entirely.
…ge numbers support
|
|
|
No additional actionable issues found in the reviewed range. The reported |
|
|
The reported SDK return-type issue is already fixed to |
Tests couldn’t run because Rustup attempted to write under the read-only |
|
Tests could not run because rustup attempted to write under the read-only home directory. |
|
No actionable issues found in the PR changes. The persistence, rollback, PDA identity, overdue-slot, RPC, and SDK paths appear consistent. I couldn’t run tests because rustup’s temp directory is read-only in this environment. |
9af2fc5 to
61a9091
Compare
Greptile Summary
The PR adds bounded scenario-override persistence and an explicit RPC operation for stopping scheduler-generated continuations. The latest changes also complete the previously reported scheduler identity, timeline-preservation, and Node SDK contract fixes.
Confidence Score: 5/5
The PR appears safe to merge.
No blocking failure remains.
Important Files Changed
Sequence Diagram
Reviews (19): Last reviewed commit: "fix(scenarios): preserve bounded persist..." | Re-trigger Greptile
Context used (4)