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

iotaledger / iota / 28414473601
68%

Build:
DEFAULT BRANCH: develop
Ran 30 Jun 2026 02:36AM UTC
Jobs 1
Files 1109
Run time 2min
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

29 Jun 2026 12:54PM UTC coverage: 67.438% (+0.08%) from 67.359%
28414473601

push

github

web-flow
refactor(iota-types): replace node EndOfEpochData with SDK type (#12027)

## Why

Continues the effort to remove duplicated checkpoint-family types from
`iota-types` and adopt their canonical `iota_sdk_types` counterparts
(cf. `Object` #11718, `CheckpointCommitment` #11976). This is **PR 2 of
the checkpoint-family track** — `EndOfEpochData` is embedded in
`CheckpointSummary` and depends only on `CheckpointCommitment` (already
migrated).

## What

- Drop the node `struct EndOfEpochData` and re-export
`iota_sdk_types::checkpoint::EndOfEpochData`. It is BCS-identical, so
the wire format does not change:
- `next_epoch_committee`: `Vec<(AuthorityName, StakeUnit)>` →
`Vec<ValidatorCommitteeMember>` (a tuple and a struct serialize
identically in BCS, and the SDK `Bls12381PublicKey` serializes
length-prefixed exactly like `AuthorityPublicKeyBytes`).
- `next_epoch_protocol_version`: `ProtocolVersion` (`NEWTYPESTRUCT:
U64`) → bare `u64`.
- Delete the now-redundant `EndOfEpochData` `From` impls from
`iota_sdk_types_conversions.rs`, and simplify the two
`CheckpointSummary` conversions whose `end_of_epoch_data` field is now
the same type on both sides (`.map(Into::into)` became a no-op).
- Add two helpers on `Committee` to localize the node↔SDK
committee-member mapping: `from_committee_members` (build a committee
from `next_epoch_committee`) and `committee_members` (the inverse).
Update all construction/read sites in `iota-core`, `iota-network`,
`simulacrum`, `iota-light-client`, and the `iota-types` stores to use
them.
- Update the `iota-json-rpc-types` `EndOfEpochDataSchema` `From` impls
to bridge the new SDK field types — the public camelCase JSON-RPC wire
format is unchanged.

## Test plan

- `cargo check --tests` across `iota-types`, `iota-core`,
`iota-indexer`, `iota-json-rpc-types`, `iota-json-rpc`,
`iota-graphql-rpc`, `iota-grpc-server`, `iota-light-client`,
`iota-network`, `simulacrum`, `iota-swarm-config`,
`iota-data-ingestion-core`.
- `cargo clippy --al... (continued)

42 of 73 new or added lines in 14 files covered. (57.53%)

34 existing lines in 9 files now uncovered.

157779 of 233963 relevant lines covered (67.44%)

489377.44 hits per line

Uncovered Changes

Lines Coverage ∆ File
13
24.6
-1.02% crates/iota-json-rpc-types/src/iota_checkpoint.rs
5
0.0
0.0% crates/iota-core/src/generate_format.rs
4
64.49
0.13% crates/iota-light-client/src/verifier.rs
4
65.89
-0.0% crates/iota-types/src/storage/shared_in_memory_store.rs
2
0.0
0.0% crates/iota-light-client/src/main.rs
2
86.38
0.0% crates/iota-types/src/test_checkpoint_data_builder.rs
1
52.55
0.62% crates/iota-types/src/iota_sdk_types_conversions.rs

Coverage Regressions

Lines Coverage ∆ File
9
66.67
-18.75% crates/iota-network-stack/src/anemo_ext.rs
6
83.82
-1.47% crates/iota-core/src/storage.rs
6
65.89
-0.0% crates/iota-types/src/storage/shared_in_memory_store.rs
4
74.31
-0.58% crates/iota-network/src/randomness/mod.rs
3
89.0
0.0% crates/iota-core/src/connection_monitor.rs
2
89.03
-0.27% crates/iota-network/src/discovery/mod.rs
2
91.5
-0.05% crates/starfish/core/src/header_synchronizer.rs
1
93.47
-0.04% crates/starfish/core/src/authority_service.rs
1
96.31
-0.03% crates/starfish/core/src/dag_state.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 28414473601.1 30 Jun 2026 02:36AM UTC 1109
67.44
GitHub Action Run
Source Files on build 28414473601
  • Tree
  • List 1109
  • Changed 33
  • Source Changed 15
  • Coverage Changed 29
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #28414473601
  • 17752581 on github
  • Prev Build on develop (#28343461771)
  • Next Build on develop (#28487821551)
  • 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