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

iotaledger / iota / 33703404334
70%

Build:
DEFAULT BRANCH: develop
Ran 03 Sep 2026 02:15AM UTC
Jobs 1
Files 1070
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

02 Sep 2026 01:31PM UTC coverage: 70.359% (+0.2%) from 70.185%
33703404334

push

github

web-flow
feat(iota-types): add DynamicFieldNotExists error for missing dynamic fields (#12820)

# Description of change

Return a dedicated error when a dynamic field does not exist, instead of
the generic read error.

`get_dynamic_field_object_from_store` returned
`IotaError::DynamicFieldRead` both when reading a field failed and when
the field simply was not there, so a caller could not tell a missing
field apart from a real read failure without parsing the message text.

This PR:

- adds the `IotaError::DynamicFieldNotExists { parent_id, id, key }`
variant and returns it from `get_dynamic_field_object_from_store` when
the derived field object is absent from the store; failed reads keep
returning `DynamicFieldRead`,
- appends the variant at the end of `IotaError`, per the append-only
rule; the variant-order snapshot from #12819 (which this PR is stacked
on) picks it up as a one-line diff in `tests/staged/iota_error.yaml`,
- adds a unit test asserting the missing-field case yields
`DynamicFieldNotExists` with the parent and key, and that the same
lookup succeeds once the field object is present.

Checked that nothing matches on `DynamicFieldRead` or parses its message
text, with a positive control per method: a full-filetype grep (sources,
snapshots, fixtures) over this repo, `iota-rust-sdk`, `ts-packages`,
`wasp`, `identity`, and `network-benchmark`, validated by planting the
needle in each repo and confirming the same command finds it; and an
org-wide GitHub code search, validated on a string that is known to be
referenced across repos. The only hits are the definition and
construction sites in this repo - no match arms, no message-text parsing
- so narrowing `DynamicFieldRead`'s use is not observable by existing
consumers.

## Links to any relevant issues

None.

## 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 ... (continued)

17 of 18 new or added lines in 1 file covered. (94.44%)

907 existing lines in 29 files now uncovered.

177449 of 252206 relevant lines covered (70.36%)

445969.73 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
44.51
4.39% crates/iota-types/src/dynamic_field.rs

Coverage Regressions

Lines Coverage ∆ File
147
66.52
9.64% crates/iota-localnet/src/commands.rs
126
87.89
0.23% crates/iota-node/src/lib.rs
97
81.89
7.57% crates/iota-swarm/src/memory/swarm.rs
80
88.01
1.93% crates/iota-config/src/node.rs
65
67.41
4.44% crates/iota-swarm-config/src/genesis_config.rs
63
40.18
-18.75% external-crates/move/crates/move-package/src/resolution/dependency_cache.rs
54
71.71
0.0% crates/iota-types/src/error.rs
47
0.0
0.0% crates/iota-node/src/main.rs
47
84.93
-1.11% crates/iota-swarm-config/src/node_config_builder.rs
30
59.82
1.56% crates/iota-cluster-test/src/cluster.rs
27
73.68
13.68% crates/iota-swarm-config/src/network_config.rs
27
79.41
-0.71% crates/test-cluster/src/lib.rs
23
81.24
1.24% crates/iota-swarm-config/src/network_config_builder.rs
16
73.3
-2.02% crates/iota-network/src/randomness/mod.rs
10
67.34
-0.51% crates/iota-core/src/authority/authority_store.rs
8
87.1
-0.24% crates/iota-core/src/authority.rs
7
91.08
-0.86% crates/iota-core/src/authority/consensus_quarantine.rs
7
72.92
-14.58% crates/iota-network-stack/src/anemo_ext.rs
6
88.83
-1.49% crates/iota-config/src/genesis.rs
4
83.86
-0.52% crates/starfish/core/src/network/tonic_network.rs
3
91.39
-0.13% crates/iota-core/src/execution_cache/writeback_cache.rs
3
0.0
-10.0% crates/simulacrum/src/transaction_executor.rs
2
89.35
0.0% crates/iota-core/src/connection_monitor.rs
2
96.77
-0.32% crates/iota-core/src/overload_monitor.rs
2
77.08
-0.42% crates/iota-core/src/storage.rs
1
86.11
-2.78% crates/iota-cluster-test/src/test_case/native_transfer_test.rs
1
65.38
-1.28% crates/iota-config/src/persisted_config.rs
1
91.35
-0.11% crates/iota-network/src/state_sync/mod.rs
1
96.76
-0.03% crates/starfish/core/src/dag_state.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 33703404334.1 03 Sep 2026 02:15AM UTC 1070
70.36
GitHub Action Run
Source Files on build 33703404334
  • Tree
  • List 1070
  • Changed 43
  • Source Changed 15
  • Coverage Changed 42
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #33703404334
  • a19d5701 on github
  • Prev Build on develop (#33578818734)
  • Next Build on develop (#33825041707)
  • 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