Skip to content

feat(bitcoin-da): Job service#2960

Open
jfldde wants to merge 104 commits intonightlyfrom
feat/bitcoin-da-job-service
Open

feat(bitcoin-da): Job service#2960
jfldde wants to merge 104 commits intonightlyfrom
feat/bitcoin-da-job-service

Conversation

@jfldde
Copy link
Contributor

@jfldde jfldde commented Oct 8, 2025

Description

  • Fixes the stale fee issue and utxo selection by funding the tx at the time of sending instead of the time of queueing.
  • Replaces two queues with a single persistent job storage.

Improvements

  • A proving job id now has an associated da job id. A partial chunked proof can now be recovered via da job id and doesn't have to be fully resent. This saves re-sending already sent chunks.
  • Each da job now uses the current bitcoin fee rate for sending transaction. Txs are funded on the same block they are sent. This should fix the stale fee issue feat: batch proof sending stops over 15 sat/vbyte #2801
  • Da queue is now persistent and handles recovery of pending and in-progress da jobs

Status

  • Job submission and tracking
  • Partial sending of chunked transactions
  • Recovery (missing tests)

Missing

Linked Issues

@codecov
Copy link

codecov bot commented Oct 8, 2025

Codecov Report

❌ Patch coverage is 90.22646% with 82 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.8%. Comparing base (65687ea) to head (8de4155).

Files with missing lines Patch % Lines
crates/bitcoin-da/src/job/service.rs 82.7% 20 Missing ⚠️
crates/bitcoin-da/src/service.rs 90.9% 15 Missing ⚠️
crates/bitcoin-da/src/job/metrics.rs 76.7% 10 Missing ⚠️
crates/storage-ops/src/rollback/node/sequencer.rs 54.5% 10 Missing ⚠️
crates/bitcoin-da/src/job/rpc.rs 91.4% 8 Missing ⚠️
crates/bitcoin-da/src/job/utils.rs 0.0% 4 Missing ⚠️
...ates/sovereign-sdk/adapters/mock-da/src/service.rs 88.4% 3 Missing ⚠️
...dk/full-node/db/sov-db/src/schema/types/da_jobs.rs 90.0% 3 Missing ⚠️
crates/bitcoin-da/src/fee.rs 96.7% 2 Missing ⚠️
...s/bitcoin-da/src/helpers/builders/body_builders.rs 83.3% 1 Missing ⚠️
... and 6 more
Additional details and impacted files
Files with missing lines Coverage Δ
bin/citrea/src/main.rs 80.4% <ø> (ø)
bin/citrea/src/rollup/bitcoin.rs 67.5% <100.0%> (-0.3%) ⬇️
bin/citrea/src/rollup/mock.rs 75.9% <100.0%> (+0.3%) ⬆️
bin/citrea/src/rollup/mod.rs 86.4% <100.0%> (+<0.1%) ⬆️
crates/batch-prover/src/prover.rs 98.7% <100.0%> (+1.1%) ⬆️
crates/batch-prover/src/rpc.rs 94.1% <100.0%> (+0.6%) ⬆️
crates/bitcoin-da/src/error.rs 64.7% <ø> (-23.6%) ⬇️
crates/bitcoin-da/src/helpers/builders/mod.rs 100.0% <ø> (ø)
crates/bitcoin-da/src/helpers/builders/tests.rs 98.5% <100.0%> (+<0.1%) ⬆️
crates/bitcoin-da/src/helpers/mod.rs 93.6% <100.0%> (+0.5%) ⬆️
... and 25 more

... and 3 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

jfldde and others added 30 commits November 10, 2025 10:17
Co-authored-by: Erce Can Bektüre <47954181+ercecan@users.noreply.github.com>
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.

bitcoin-da Job service feat: batch proof sending stops over 15 sat/vbyte Bypass commit transaction change unsafeness

5 participants