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

iotaledger / iota / 40049193734
72%

Build:
DEFAULT BRANCH: develop
Ran 24 Oct 2026 02:15AM UTC
Jobs 1
Files 1129
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

23 Oct 2026 09:10PM UTC coverage: 71.567% (+0.2%) from 71.364%
40049193734

push

github

web-flow
fix(consensus): bound commit and latest header fetch entry counts while decoding (#13232)

# Description of change

Applies the bounded decoding from #13205 to the remaining fetch RPCs, so
no fetch response can make the client build many more entries than an
honest server sends.

- `FetchLatestBlockHeaders`: at most 256 headers per message, charged as
`TooManyFetchedHeadersReturned`.
- `FetchCommits` and `FetchCommitsAndTransactions`: one ceiling per
message over all fields together, from the new
`COMMITS_PER_FETCH_CEILING` (1024) plus, for fast sync, the transaction
entries a `MAX_FETCH_RESPONSE_BYTES` message can hold. A refusal is
charged as the new `TooManyCommitSyncEntries` (unprovable); the
collectors still check each field's count after decoding.
- The requests of these RPCs carry only numbers, so they get no entry
limit, and adding a field to them later stays compatible with older
servers.
- `GetLatestRounds` needs no limit: no client calls it.

## Links to any relevant issues

relates to iotaledger/iota-private#594

## How the change has been tested

- [x] Basic tests (linting, compilation, formatting, unit/integration
tests)
- [x] Patch-specific tests (correctness, functionality coverage)
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have checked that new and existing unit tests pass locally with
my changes

### Release Notes

- [ ] Protocol:
- [x] Nodes (Validators and Full nodes): `commit_sync_batch_size` and
`fast_commit_sync_batch_size` above 1024 are now rejected at startup.
- [ ] Indexer:
- [ ] JSON-RPC:
- [ ] GraphQL:
- [ ] CLI:
- [ ] Rust SDK:
- [ ] gRPC:

<!-- Do not remove: everything below this line is ignored by the
release-notes check. -->

---

137 of 138 new or added lines in 5 files covered. (99.28%)

3122 existing lines in 78 files now uncovered.

196892 of 275117 relevant lines covered (71.57%)

458052.4 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
93.93
1.78% crates/starfish/core/src/network/tonic_network.rs

Coverage Regressions

Lines Coverage ∆ File
380
86.96
-1.0% crates/iota-core/src/authority.rs
222
92.62
0.66% crates/iota-core/src/authority/authority_per_epoch_store.rs
217
37.9
-0.74% crates/iota/src/keytool.rs
175
63.48
-0.82% crates/iota-json-rpc-types/src/iota_transaction.rs
140
84.54
-0.04% crates/iota-core/src/checkpoints/mod.rs
136
85.96
1.52% crates/iota-json-rpc/src/read_api.rs
121
89.77
1.13% crates/iota-node/src/lib.rs
120
84.33
-0.21% crates/iota-transactional-test-runner/src/test_adapter.rs
107
92.28
1.75% crates/iota-protocol-config/src/lib.rs
103
93.93
1.78% crates/starfish/core/src/network/tonic_network.rs
97
79.44
-1.32% iota-execution/latest/iota-adapter/src/execution_engine.rs
96
52.2
0.22% crates/iota-transactional-test-runner/src/simulator_persisted_store.rs
91
69.73
-0.93% crates/simulacrum/src/lib.rs
86
81.35
0.07% crates/starfish/core/src/commit.rs
74
84.23
-0.23% crates/iota-types/src/transaction.rs
69
0.0
0.0% crates/iota-core/src/generate_format.rs
53
73.11
-0.55% crates/iota-types/src/error.rs
51
68.11
0.71% crates/iota-swarm-config/src/genesis_config.rs
49
97.2
0.5% crates/iota-core/src/consensus_handler.rs
49
93.01
0.27% crates/iota-network/src/state_sync/mod.rs
47
59.42
0.2% crates/iota-core/src/test_authority_clients.rs
47
90.1
-0.06% crates/iota-grpc-server/src/types.rs
46
95.81
-0.07% crates/starfish/core/src/authority_service.rs
45
89.53
-3.16% crates/iota-core/src/post_consensus_validation.rs
41
79.67
-1.01% crates/test-cluster/src/lib.rs
35
84.2
0.08% crates/iota-types/src/messages_consensus.rs
29
95.6
-0.04% crates/starfish/core/src/commit_syncer/fast.rs
28
89.2
0.0% crates/iota-transactional-test-runner/src/args.rs
26
87.2
-0.88% crates/iota-core/src/post_consensus_input_reader/reader.rs
26
55.83
5.83% crates/iota-grpc-server/src/error.rs
24
93.38
3.7% crates/iota-core/src/checkpoints/checkpoint_executor/mod.rs
23
96.34
-2.49% crates/iota-core/src/post_consensus_input_reader/owned.rs
23
88.21
-3.52% iota-execution/latest/iota-adapter/src/temporary_store.rs
21
81.86
0.89% crates/iota-swarm-config/src/network_config_builder.rs
21
98.85
0.04% crates/starfish/core/src/cordial_knowledge.rs
20
86.09
0.05% iota-execution/latest/iota-move-natives/src/crypto/groth16.rs
16
88.25
-0.49% crates/iota-test-transaction-builder/src/lib.rs
14
85.89
0.0% crates/iota-core/src/consensus_manager/mod.rs
11
96.96
0.62% crates/iota-core/src/post_consensus_input_reader/shared.rs
11
54.7
-1.54% crates/iota-types/src/storage/shared_in_memory_store.rs
11
97.04
0.36% crates/starfish/config/src/parameters.rs
9
98.65
-0.1% crates/iota-core/src/authority/handler_object_state.rs
9
97.41
0.0% crates/iota-core/src/unit_tests/post_consensus_determinism_oracle.rs
7
87.24
-2.08% crates/iota-transaction-builder/src/utils.rs
6
56.41
-0.28% crates/iota-json-rpc-types/src/iota_object.rs
6
76.94
-0.4% crates/iota-network/src/randomness/mod.rs
6
91.02
0.0% crates/iota-types/src/lib.rs
5
93.17
-0.6% crates/iota-core/src/execution_scheduler/transaction_manager.rs
5
98.63
0.02% crates/iota-core/src/signature_verifier.rs
5
95.19
-0.03% crates/iota-vm-sdk/src/executor/local_vm.rs
4
69.89
-0.36% crates/iota-core/src/authority/authority_store.rs
4
95.79
0.07% crates/iota-core/src/authority/authority_test_utils.rs
4
71.24
-2.61% crates/iota-json-rpc-types/src/lib.rs
4
82.0
-4.0% crates/iota-vm-sdk/src/executor/types.rs
3
88.83
-0.74% crates/iota-config/src/genesis.rs
3
88.3
-1.13% crates/iota-core/src/authority_server/mod.rs
3
82.14
0.0% crates/iota-genesis-builder/src/validator_info.rs
3
81.47
-1.05% crates/iota-sdk/src/wallet_context.rs
3
82.3
-0.36% crates/iota-swarm/src/memory/swarm.rs
3
90.77
-4.62% crates/iota-types/src/execution.rs
3
0.0
-10.0% crates/simulacrum/src/transaction_executor.rs
3
84.21
-3.16% crates/starfish/config/src/crypto.rs
3
90.1
0.0% crates/starfish/core/src/network/mod.rs
2
98.68
-0.21% crates/iota-core/src/authority/dropped_tx_status_cache.rs
2
38.46
0.0% crates/iota-core/src/checkpoints/checkpoint_output.rs
2
89.35
-0.34% crates/iota-core/src/connection_monitor.rs
2
78.47
-0.41% crates/iota-core/src/storage.rs
2
92.86
5.95% crates/iota-types/src/quorum_driver_types.rs
1
87.69
3.82% crates/iota-core/src/authority_server/validator_v2.rs
1
99.02
0.0% crates/iota-core/src/post_consensus_input_reader/package.rs
1
96.73
-0.65% crates/iota-json-rpc/src/balance_changes.rs
1
83.33
14.58% crates/iota-network-stack/src/anemo_ext.rs
1
98.11
0.49% crates/iota-types/src/signature.rs
1
99.57
0.0% crates/iota-types/src/unit_tests/utils.rs
1
84.29
3.24% crates/starfish/core/src/commit_syncer/mod.rs
1
97.18
-0.07% crates/starfish/core/src/leader_schedule.rs
1
99.17
-0.21% crates/starfish/core/src/leader_scoring.rs
1
99.02
0.03% crates/starfish/core/src/misbehavior_store.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 40049193734.1 24 Oct 2026 02:15AM UTC 1129
71.57
GitHub Action Run
Source Files on build 40049193734
  • Tree
  • List 1129
  • Changed 123
  • Source Changed 77
  • Coverage Changed 115
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #40049193734
  • 6579c140 on github
  • Prev Build on develop (#39883454019)
  • Next Build on develop (#40150237915)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc