Skip to content

frametx fixes - #293

Merged
pk910 merged 3 commits into
masterfrom
pk910/frametx-fixes2
Sep 22, 2026
Merged

pk910 merged 3 commits into
masterfrom
pk910/frametx-fixes2

Conversation

@pk910

@pk910 pk910 commented Sep 22, 2026

Copy link
Copy Markdown
Member

No description provided.

@pk910
pk910 enabled auto-merge September 22, 2026 17:13
@pk910
pk910 merged commit 02b0d06 into master Sep 22, 2026
7 checks passed
@pk910
pk910 deleted the pk910/frametx-fixes2 branch September 22, 2026 17:18

@redpandabot redpandabot Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Adds EIP-8141 deploy-led validation prefixes (self-paying via a funded-pending-account buffer, sponsored via a minted account), a dedicated capability-probe wallet with a block-count timeout, and tolerant frame-receipt number decoding. The core generation/submission lifecycle traces clean; one real issue in --recipe replay mode.

Issues

  • 🟡 scenarios/frametx-fuzz/generator.go:419 — replayed deploy recipe is mutated in place, permanently degrading it — see the thread on that line

Reviewed @ 730e8d39
"You ain't gonna need it." — XP principle (YAGNI)

if recipe.Prefix == PrefixDeploySelfVerify {
account, ok := env.pending.take(int(recipe.Index))
if !ok {
recipe.Prefix = PrefixSelfVerify

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 replayed deploy recipe is mutated in place, permanently degrading it

recipeFor returns the shared s.replay pointer, and takeDeployedSender rewrites recipe.Prefix to PrefixSelfVerify when the pending buffer is empty — which it always is for a keyless replay, since a keyless transaction never appends funding frames. The first replayed deploy+self_verify transaction therefore permanently converts the recipe to self_verify (the deploy shape can never be reproduced), and since Run drives ProcessNextTxFn from concurrent goroutines, concurrent writes to the shared Recipe are also a data race.

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