Skip to content

feat(fibre-txsim): async tx confirmation for pipelined uploads#7061

Merged
walldiss merged 5 commits intomainfrom
feat/fibre-txsim-async-confirm
Apr 15, 2026
Merged

feat(fibre-txsim): async tx confirmation for pipelined uploads#7061
walldiss merged 5 commits intomainfrom
feat/fibre-txsim-async-confirm

Conversation

@walldiss
Copy link
Copy Markdown
Member

@walldiss walldiss commented Apr 13, 2026

Summary

  • Decouples TX confirmation from the upload loop in fibre-txsim
  • Workers broadcast PFF tx and immediately start next blob; confirmation happens in background
  • Measured 3x throughput improvement (18 MB/s → 50+ MB/s on 10-validator setup)

Test plan

  • go build -tags="ledger" ./tools/fibre-txsim/ compiles
  • Run with --upload-only — behavior unchanged
  • Run without --upload-only — pipelined uploads with async confirmation

Closes https://linear.app/celestia/issue/PROTOCO-1494/fibre-txsim-async-tx-confirmation-for-pipelined-uploads

🤖 Generated with Claude Code


Open with Devin

Workers now encode + upload + broadcast the PFF transaction, then
immediately start the next blob. Confirmation polling is handled by
8 background goroutines reading from a buffered channel, decoupling
upload throughput from on-chain confirmation latency (~5s per tx).
Upload-only mode is unchanged.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@walldiss walldiss requested a review from a team as a code owner April 13, 2026 17:43
@walldiss walldiss requested review from vgonkivs and removed request for a team April 13, 2026 17:43
Copy link
Copy Markdown

@claude claude Bot left a comment

Choose a reason for hiding this comment

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

Claude Code Review

This repository is configured for manual code reviews. Comment @claude review to trigger a review and subscribe this PR to future pushes, or @claude review once for a one-time review.

Tip: disable this comment in your organization's Code Review settings.

devin-ai-integration[bot]

This comment was marked as resolved.

walldiss and others added 2 commits April 14, 2026 14:21
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…e concurrency

- Each confirmRequest now carries its own txClient reference so confirmation
  workers always use the same client that broadcast the tx (fixes cross-client
  tracker issues)
- Added concurrency >= 1 validation at startup

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
devin-ai-integration[bot]

This comment was marked as resolved.

@walldiss walldiss self-assigned this Apr 14, 2026
Replace TxClient.ConfirmTx with a lightweight TxStatus poll via raw gRPC.
ConfirmTx modifies the signer sequence on rejection/eviction without holding
the client mutex, which races with concurrent BroadcastTx calls. Since
fibre-txsim doesn't need sequence recovery or tx resubmission, a direct
status poll is sufficient and race-free.
devin-ai-integration[bot]

This comment was marked as resolved.

@walldiss walldiss enabled auto-merge April 15, 2026 14:13
Copy link
Copy Markdown
Member

@Wondertan Wondertan left a comment

Choose a reason for hiding this comment

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

utack

@walldiss walldiss added this pull request to the merge queue Apr 15, 2026
Merged via the queue into main with commit 8bbf4ab Apr 15, 2026
55 of 56 checks passed
@walldiss walldiss deleted the feat/fibre-txsim-async-confirm branch April 15, 2026 14:24
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.

2 participants