Skip to content

fix(ci): the storage layer names only SDK suites that exist - #1070

Merged
cryptskii merged 1 commit into
mainfrom
fix/ci-selector-names-only-existing-sdk-suites
Sep 30, 2026
Merged

cryptskii merged 1 commit into
mainfrom
fix/ci-selector-names-only-existing-sdk-suites

Conversation

@cryptskii

Copy link
Copy Markdown
Collaborator

Why

#1069 changes only the storage node, so the layer selector runs the sdk-node-protocol group. That group failed:

error: no test target named `b0x_integration` in `dsm_sdk` package

The group named four SDK suites that no longer exist. #1069 is the first storage-only PR since they were deleted, so nothing had run the group until now.

Name Kind Deleted in Effect
b0x_integration integration target #977 cargo refuses: the group fails
storage_full_lifecycle integration target #932 cargo refuses: the group fails
sdk::storage_sync_sdk lib filter #976 matches nothing, runs nothing, passes
sdk::storage_node_health lib filter #977 matches nothing, runs nothing, passes

What

  • The four names are removed from ci/layers.toml.
  • No SDK integration binary exercises the storage-node contract now, so the group runs one command: the four lib suites that do (handlers::storage_routes, sdk::storage_node_sdk, sdk::b0x_sdk, sdk::storage_set). On test(storage): the object store's refusals are exercised #1069 these ran and passed 48 tests; the stale filters added none.
  • ci/select_layers.py no longer renders an integration-target list.
  • A new selector self-test, test_every_named_sdk_suite_is_a_module_that_exists, refuses a lib filter that does not resolve to a module of dsm_sdk. That makes the silent case loud.

Evidence

  • python3 ci/test_select_layers.py: 17 tests, OK.
  • Mutation control: sdk::storage_sync_sdk put back into lib_filters makes the new test fail with "sdk::storage_sync_sdk names no module of dsm_sdk". Restored.
  • Rendered for test(storage): the object store's refusals are exercised #1069's diff: changed ['STORAGE'] → ['SDK_NODE_PROTOCOL', 'STORAGE'], and sdk-node-protocol runs the single lib command above.

Editing ci/** is a FULL trigger, so this PR runs the full matrix. #1069, rebased after this merges, becomes the first live run of the narrow storage path.

Not changed

Which SDK suites a storage change should escalate to is unchanged apart from the dead names. The node-backed SDK lib suites (handlers::node_e2e_tests and the admission and faucet tests, which stand up real nodes) are not in the group. Adding them is a coverage decision for the owner.

A change that touches the storage node and not the SDK runs the
`sdk-node-protocol` group, which named four SDK suites that no longer exist:

- `b0x_integration` (deleted in #977) and `storage_full_lifecycle` (deleted in
  #932), integration targets. cargo refuses an unknown target, so the group
  failed on the first storage-only PR since then (#1069).
- `sdk::storage_sync_sdk` and `sdk::storage_node_health`, lib filters. A
  filter that matches nothing runs nothing and passes, so these narrowed the
  group's coverage silently.

The four names are removed. No SDK integration binary exercises the
storage-node contract now, so the group runs one command: the four lib
suites that do (`handlers::storage_routes`, `sdk::storage_node_sdk`,
`sdk::b0x_sdk`, `sdk::storage_set`).

The selector's self-test now refuses a lib filter that does not resolve to a
module of dsm_sdk (`test_every_named_sdk_suite_is_a_module_that_exists`).
Mutation control: `sdk::storage_sync_sdk` put back, the test is red.
@cryptskii
cryptskii merged commit 19ce4ee into main Sep 30, 2026
27 checks passed
@cryptskii
cryptskii deleted the fix/ci-selector-names-only-existing-sdk-suites branch September 30, 2026 01:42
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