Skip to content

row 113: admin DR verbs proven to land on the book's configured store (test-only; wiring landed in #556) - #817

Open
MattJackson wants to merge 1 commit into
predevfrom
lane-admin-dr-store
Open

MattJackson wants to merge 1 commit into
predevfrom
lane-admin-dr-store

Conversation

@MattJackson

Copy link
Copy Markdown
Collaborator

Row: /status 113 — admin DR verbs reach the configured store on predev; RefusingStore/StoreRef gone.

What. The wiring landed in #556 (5d279a5, 2026-10-07): boot binds the loader's adapter over the configured store onto the node's book (root/boot.rs verb_store: Some(adapter.verb_store())), main composes the admin units over that book (ProductionUnits::admin_over_book), and route hands units.store to busbar_core_admin::Verbs. The root's RefusingStore and StoreRef are deleted. This PR adds one test only: root/tests/kernel.rs the_admin_units_over_a_book_reach_that_books_store_for_every_recovery_verb.

Why. The booted cell from #556 (a_booted_nodes_recovery_verbs_reach_its_configured_store_through_the_book) goes RED when a verb is REFUSED. It stays green if the units hold a different store that also answers Ok. The new test puts a recording store on the book, composes the units through admin_over_book, drives chain_break, store_restore("nightly"), reseal_epoch_floor and the replay slot (commit, then read) through the units' handle, and asserts that each one, with its arguments, lands on THAT store in order. THE DESIGN: the store is reached through the loader adapter (busbar_contract::verb_store::Store). No new seam or ABI.

RED-able. Units with no store fail the expect. Units with any other store leave the recording log empty, so the assert_eq fails.

Ledgers touched: none. Test-only. 1.5.5 admin behaviour is unchanged.

Residual grep hit: git grep 'RefusingStore\|StoreRef' origin/predev -- crates now returns only a test-local fault double in busbar-a2a/src/a2a/tests/taskstore_tests.rs (a full-disk store for the a2a task registry, not related to admin). #787 deletes busbar-a2a, so this PR does not touch it (rule 4.2).

…y recovery verb and the replay slot (RED: units holding no store, or any other store, fail it)
@MattJackson

Copy link
Copy Markdown
Collaborator Author

FYI (queue rule 20): $ draft #870 also edits crates/busbar/src/root/tests/kernel.rs (l.204-209, l.614-620: RawTierRates fixtures go through representable_nano_rate); disjoint from your l.408 block, merges clean.

This branch has not been deployed

No deployments
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.

1 participant