• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iotaledger / iota-rust-sdk / 26859154640
36%

Build:
DEFAULT BRANCH: develop
Ran 03 Jun 2026 02:01AM UTC
Jobs 1
Files 177
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Jun 2026 01:54PM UTC coverage: 40.126% (+0.8%) from 39.318%
26859154640

push

github

web-flow
fix(txn-builder): paginate auto gas-coin selection (#1162)

* fix(txn-builder): cap auto gas-coin selection to bound request size

Auto gas selection pinned every gas coin the sender owned, which on a
shared development address blew past the GraphQL server's 5000-byte
`query part` cap. Sort candidates largest-first, stop once the
configured budget is covered, and apply a hard cap of 16 inputs as
defense in depth.

Fixes #1160

* refactor(txn-builder): paginate gas-coin fetch for auto selection

Replace the single-page-and-cap strategy with a paginated top-K
selection: page through gas coins via a new ClientMethods::gas_coins_page
hook, keep the running top by balance, and stop fetching as soon as the
candidates cover the requested budget. Bump the hard ceiling to 256 to
match the protocol's max-gas-payment-objects limit.

The previous fix kept the request small but at the cost of a very low
cap (16); pagination plus budget-aware early-stop lets us bound request
size by what's actually needed rather than a blanket limit.

Adds an integration test that funds an address with 2048 coins (the
protocol's per-tx object-creation cap, reached via four `split_coins`
commands at the 512-argument-per-command ceiling) and verifies auto
gas-selection still succeeds.

* chore(txn-builder): trim stale narration from auto-gas test

* test(txn-builder): assert auto gas selection paginates

Extend the many-coins integration test to drain every large coin owned
by the sender after the funding phase, then route the exercise tx
through a counting wrapper client and assert at least two pages of
gas-coin lookups were performed.

Also cap the no-budget auto-selection loop at MAX_AUTO_GAS_PAYMENT_OBJECTS
so it doesn't walk every page of a high-cardinality wallet.

* chore: restore trailing whitespace stripped by stable rustfmt

Stable cargo fmt doesn't honor `normalize_comments = true`, so a prior
local format incorrectly stripped a trailing space inside an ABNF doc
block; nig... (continued)

166 of 193 new or added lines in 3 files covered. (86.01%)

15 existing lines in 6 files now uncovered.

9103 of 22686 relevant lines covered (40.13%)

9774.01 hits per line

Uncovered Changes

Lines Coverage ∆ File
23
28.09
14.52% crates/iota-sdk-transaction-builder/src/builder/client_methods.rs
2
67.84
7.43% crates/iota-sdk-transaction-builder/src/builder/mod.rs
2
86.15
4.54% crates/iota-sdk-transaction-builder/src/lib.rs

Coverage Regressions

Lines Coverage ∆ File
3
19.35
-3.23% crates/iota-sdk-types/src/crypto/secp256r1.rs
3
78.13
-1.88% crates/iota-sdk-types/src/lib.rs
3
72.31
2.29% crates/iota-sdk-types/src/object.rs
3
0.0
-0.85% crates/iota-sdk-types/src/transaction/mod.rs
2
85.62
-1.31% crates/iota-sdk-types/src/crypto/passkey.rs
1
77.14
0.95% crates/iota-sdk-types/src/crypto/signature.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest - 26859154640.1 03 Jun 2026 02:01AM UTC 177
40.13
GitHub Action Run
Source Files on build 26859154640
  • Tree
  • List 177
  • Changed 17
  • Source Changed 3
  • Coverage Changed 17
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26859154640
  • 2eb40bc6 on github
  • Prev Build on develop (#26793578453)
  • Next Build on develop (#26925346672)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc