Skip to content

chore: bump nexum-runtime pins to db39b6c1 - #51

Open
mfw78 wants to merge 3 commits into
mainfrom
chore/nexum-runtime-pin-bump
Open

chore: bump nexum-runtime pins to db39b6c1#51
mfw78 wants to merge 3 commits into
mainfrom
chore/nexum-runtime-pin-bump

Conversation

@mfw78

@mfw78 mfw78 commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

What

Bumps every nexum-runtime/nexum-tasks git rev from d78a368a to db39b6c1 (10 dependency lines across 6 Cargo.toml files, plus wit/deps.toml whose WIT payload is unchanged between the revs), refreshes Cargo.lock, and deletes the all-zero component digest placeholder from all four module manifests (echo-client, echo-keeper, echo-venue, flaky-venue) since the runtime now rejects it at parse. Absorbs the compile fallout from the intervening runtime PRs: run.module is now a ModuleId newtype (.as_str() at three call sites), boot_single takes ModuleEntry+BootEnv (new test_boot_env/boot_one helpers in platform.rs), ProviderManifest gained a mandatory component_digest (the handshake test helper now fabricates one), MockChainProvider became test_utils::rpc::FakeNode, extension_subscription_kinds() became subscription_plan().extension_kinds, and the chain-subscription boot gate now requires [chains] in the e2e EngineConfigs (test_chain_configs()) as well.

Why

Keeps this module building against current nexum-runtime and nexum-tasks, and removes a placeholder digest that the runtime now hard-rejects at manifest parse time. Closes #50

Testing

All commands run in the repo's pinned nix develop shell (rustc 1.94.0, matching the CI toolchain pin), on a fresh clone detached at the branch tip, with --locked throughout.

  • cargo clippy --locked --workspace --all-targets --all-features -- -D warnings: clean, no warnings (RUSTFLAGS=-D warnings)
  • RUSTDOCFLAGS='-D warnings' cargo doc --locked --workspace --no-deps: clean, docs generated for all 10 crates
  • just build-modules: all four guest wasms built for wasm32-wasip2 --release: echo-venue, echo-client, echo-keeper, flaky-venue
  • CI=1 cargo nextest run --locked --workspace --all-features --no-fail-fast: 180 tests run: 180 passed, 1 skipped (the skip is videre-test reference::tests::regenerate_reference_fixtures, a pre-existing #[ignore]d fixture regenerator, not a gate)

Red-teamed against nexum-runtime at both revs (cloned upstream and read the 24 commits in d78a368a..db39b6c1 rather than trusting the report). The bump itself is sound; two follow-up commits fix one vacuous test and three doc/simplification defects, gate green after the fixes.

AI Assistance

Implemented with claude-fable-5, red-teamed with claude-opus-5, PR authored with claude-sonnet-5.

mfw78 added 3 commits August 6, 2026 14:02
Move every nexum-runtime and nexum-tasks rev from d78a368a to db39b6c1
and refresh Cargo.lock. Drop the all-zero component digest placeholder
from the four module manifests (rejected at manifest parse since rt#79)
and repin wit/deps.toml (WIT is unchanged between the revs).

Absorb the API fallout from the runtime PRs in between: the ModuleId
newtype at run.module (rt#91), the ModuleEntry/BootEnv boot_single
shape (rt#98), the mandatory ProviderManifest component_digest (rt#79),
FakeNode replacing MockChainProvider, subscription_plan() replacing
extension_subscription_kinds(), and the chain-subscription boot gate
(rt#75), which now requires [chains] entries in the test configs.

Adapter liveness assertions move to the new
VenueRegistry::alive_venue_count, since the supervisor no longer
exposes adapter_alive_count. The blank-name refusal now fires at
manifest parse (rt#96), one layer before the venue-id boundary.
The test gated on an `example.wasm` that no crate in this repo produces,
so it has skipped since the carve and its assertions never ran. Boot it
from the echo-client wasm and the existing echo-client status manifest,
dropping the orphaned fixture and renaming the helper that named the
absent module.

Derive the boot env through `BootEnv::from_config` over one test engine
config rather than assembling the struct field by field, so the test
tracks the production derivation instead of shadowing it.
`venue_count` counts dead entries too, so its "routable" claim belonged
to `alive_venue_count`. The venue-id note described a runtime fallback
namespace that rt#96 removed when it started refusing a blank
`[module].name` at manifest parse.
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.

chore: bump the nexum-runtime pin past the carve tip

1 participant