Skip to content

fix(BundleDataClient): gate blocked-recipient slow fills in _canCreateSlowFillLeaf - #1488

Open
mrice32 wants to merge 1 commit into
masterfrom
matt/slow-fill-excess-blocked-recipients
Open

fix(BundleDataClient): gate blocked-recipient slow fills in _canCreateSlowFillLeaf#1488
mrice32 wants to merge 1 commit into
masterfrom
matt/slow-fill-excess-blocked-recipients

Conversation

@mrice32

@mrice32 mrice32 commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Fixes a real P1 from Codex review on #1487: the blocked-recipient check sat in updateBundleSlowFills, suppressing leaf creation (no destination-chain credit) but not the unexecutable-slow-fill excess accounting, which infers prior leaf creation via _canCreateSlowFillLeaf. A blocked-recipient deposit with a prior-bundle slow fill request that later expired or was fast-filled would be marked as an excess, debiting the destination spoke funds that were never sent.

Moving the check into _canCreateSlowFillLeaf — the shared predicate gating every validatedBundleSlowFills push and both excess sites — keeps leaf creation and excess accounting consistent. The updateBundleSlowFills guard is removed (redundant).

The second Codex P1 (Arweave bypass) is not a real concern: dispute validation never loads Arweave data (Dataworker#validate leaves loadDataFromArweave false), only the executor's post-liveness re-validation does, and validated bundles are permissionlessly executable regardless.

🤖 Generated with Claude Code

https://claude.ai/code/session_011AwNYDz6oYJB4n41QNw3kT

…eSlowFillLeaf

The blocked-recipient check from #1487 sat in updateBundleSlowFills, so
it suppressed slow fill leaf creation (no destination-chain credit) but
not the unexecutable-slow-fill excess accounting, which infers leaf
creation via _canCreateSlowFillLeaf. A blocked-recipient deposit with a
prior-bundle slow fill request that later expired or was fast-filled
would be marked as an excess, debiting the destination spoke funds that
were never sent. Moving the check into _canCreateSlowFillLeaf keeps
leaf creation and excess accounting consistent.

Flagged by Codex review on #1487.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011AwNYDz6oYJB4n41QNw3kT
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