Skip to content

crates: rename six crates the crate_names rule tolerated - #1698

Merged
ac-pplx merged 6 commits into
ac/layers-small-closuresfrom
ac/crate-names-1
Nov 13, 2026
Merged

ac-pplx merged 6 commits into
ac/layers-small-closuresfrom
ac/crate-names-1

Conversation

@ac-pplx

@ac-pplx ac-pplx commented Nov 7, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Renames six crates that archcheck's crate_names rule tolerated only through
[crate_names] baseline entries, so each name says what the crate holds, and
removes those six entries:

  • pplx-space-common-grpc-lb → pplx-space-grpc-lb
  • pplx-space-common-work-coalescer → pplx-space-work-coalescer
  • pplx-space-common-lru-reaper → pplx-space-lru-reaper
  • pplx-space-common-connection-admission → pplx-space-connection-admission
  • pplx-space-common-io → pplx-space-file-io
  • pplx-space-credential-injection-core → pplx-space-credential-injection

One commit per crate. Each moves the directory to its new name's path, renames
the package and library, and updates every manifest, use, doc reference and
config key that names the crate (nextest filter, test-duration budget keys,
the rootfs_copy allow path, scripts/move_crates.toml). No code changes.
credential-injection's build script climbs one directory fewer to proto/.

pplx-space-common-jobs and pplx-space-node-runtime-core are not renamed:
[layers.storage_access] and [layers.dev_direction] name them, and
archcheck has no package rename map, so their renamed entries would fail
no_new_entries.

Validation

At this head: cargo fmt --check; cargo check --workspace --all-targets;
feature builds for api (kubernetes), rpc-auth (k8s), grpc-lb (k8s),
node-api-client (kubernetes) and file-io (reflink);
ci/scripts/run-rust-checks.sh clippy, isolated-crates and
tests-unprivileged (only failures are 41 environmental PermissionDenied
failures in guest-process and node-mgr privileged-path tests);
ci/scripts/run-archcheck.sh against the base: 0 required findings.

Severity and risk

Severity: does not apply (naming only).
Risk: anything outside this repository that names the old packages or paths
breaks until it is updated. Events emitted with tracing's default target
carry the new module paths; no log filter in this repository names the old
ones. Metric, span and wire names are unchanged. Roll back by reverting.

Log targets: events and spans in these crates that set no target: take their module path, so after this merges they carry new targets:

  • pplx_space_common_grpc_lb::channel and pplx_space_common_grpc_lb::kubernetes become pplx_space_grpc_lb::channel and pplx_space_grpc_lb::kubernetes.
  • pplx_space_common_connection_admission becomes pplx_space_connection_admission.
  • pplx_space_common_io::sparse becomes pplx_space_file_io::sparse (one DEBUG event).
  • The work_coalescer.wait and work_coalescer.run spans keep their names, but their target moves from pplx_space_common_work_coalescer to pplx_space_work_coalescer.
  • lru-reaper and credential-injection emit no events or spans.

An exact-value @target filter on an old target stops matching. For connection-admission warnings, the guest_target and guest_file fields of spaced guest diagnostic logs change the same way.

AI assistance: Claude Code made the renames, ran the checks and drafted this
description.

@coderabbitai

coderabbitai Bot commented Nov 7, 2026 •

Copy link
Copy Markdown

Explain Change →

Automatic approval withheld

Automatic approval is disabled by the configured approval policy for this pull request. Review comments and requests for changes continue normally.

Commit: 11eae800226d.

No actionable comments were generated in the recent review.

Walkthrough

Foundation crates and credential injection move to updated paths and package names. Workspace configuration, dependent crates, imports, build mappings, and repository metadata now reference the new names. The summarized call behavior, error handling, and test assertions remain unchanged.

Merge Risk: Minimal · up to 11eae

This renames six crates and updates their references without changing behavior. No concrete defect was found. The remaining risk is that something outside the supplied files still uses an old name, which a workspace build would show.

Security architecture risk: Minimal · up to 11eae

The changes rename and relocate libraries without changing their inspected runtime behavior. Credential validation, secret redaction, and zeroization remain intact. Consumers outside this repository may need to update package names or paths.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — The routed changes do not expand credential authority or independently attackable runtime scope: existing consumers continue to reference the same validation and credential-generation implementations under new Rust identities.

Trust Boundaries and Controls

  • observed — The credential reference conversion retains its validation call, while credential generation retains secret-safe Debug handling and zeroization attributes. The rename does not remove these inspected controls.
Pre-merge checks: Passed 6

Check name Status Explanation
Title check Passed The title "crates: rename six crates the crate_names rule tolerated" starts with a lowercase area and colon, as the title requirement asks. The summary says the change renames six foundation crates (g…
Description Follows The Pr Template Passed The PR description contains all four required items, each with real content. This check reads only the description text, so no repository inspection was needed. 1. "## Summary" is present. It stat…
Bug Fixes Name A Regression Test Passed The check applies only when the pull request fixes a defect in application behavior under crates/, shim/, or ui/. This pull request does not fix a defect. Its title, commit subjects, and description d…
Weakened Safeguards Are Justified Passed The diff renames six crates and updates the references to them. It does not remove, disable, narrow, or weaken any test, assertion, lint, CI check, or repository guard. - **Baseline and guard entries …
Agent Tooling Runs No New Commands Passed The check fails only if the diff adds or changes agent-executed content: plugin manifest hooks, MCP/LSP servers, SKILL.md frontmatter keys other than name/description, inline ! backtick shell substi…
Public-Safe Content Passed The public-safety check passes. I scanned all added lines in the reviewed range (99 changed files) for private keys, token-like strings, AWS ARNs, 12-digit account IDs, personal absolute paths (/Users…
Full details: Title check

Explanation

The title "crates: rename six crates the crate_names rule tolerated" starts with a lowercase area and colon, as the title requirement asks. The summary says the change renames six foundation crates (grpc-lb, work-coalescer, lru-reaper, connection-admission, file-io, credential-injection) and removes their crate_names baseline entries. The title matches the main change. The phrase 'the crate_names rule tolerated' is a little indirect but refers to a real part of the change. The summary starts with a lowercase word, has no trailing period, and has no ticket ID.

Full details: Description Follows The Pr Template

Explanation

The PR description contains all four required items, each with real content. This check reads only the description text, so no repository inspection was needed. 1. "## Summary" is present. It states that the PR renames six crates and removes their [crate_names] baseline entries, and it lists each old and new name. 2. "## Validation" is present. It names the checks run (cargo fmt --check, cargo check --workspace --all-targets, feature builds, ci/scripts/run-rust-checks.sh clippy/isolated-crates/tests-unprivileged, ci/scripts/run-archcheck.sh) and gives results. It reports 0 required archcheck findings and 41 environmental PermissionDenied failures. 3. "## Severity and risk" is present. It gives "Severity: does not apply (naming only)" and a risk statement about external references to old names and changed tracing targets. 4. "AI assistance:" is a line that begins with that label. It reads "Claude Code made the renames, ran the checks and drafted this description." The check is presence-only, so the missing-item rule does not apply.

Full details: Bug Fixes Name A Regression Test

Explanation

The check applies only when the pull request fixes a defect in application behavior under crates/, shim/, or ui/. This pull request does not fix a defect. Its title, commit subjects, and description describe six crate renames. The description states "Severity: does not apply (naming only)" and "No code changes." The raw summary also lists only renames, path updates, and config and manifest edits. No behavior change is described, so the check does not apply and the pull request passes.

Full details: Weakened Safeguards Are Justified

Explanation

The diff renames six crates and updates the references to them. It does not remove, disable, narrow, or weaken any test, assertion, lint, CI check, or repository guard. - Baseline and guard entries removed (tightening): architecture-baseline.toml removes six [crate_names] entries (pplx-space-common-connection-admission, -grpc-lb, -io, -lru-reaper, -work-coalescer, pplx-space-credential-injection-core). Removing a baseline exception makes the guard stricter, so this is not a weakening. - Allow path retargeted, not added: ARCHITECTURE.toml line 245 changes allow = ["crates/l10_foundation/common/io/src/reflink.rs"] to allow = ["crates/l10_foundation/file/io/src/reflink.rs"]. The entry count is unchanged, and the path follows the moved file. This is a path update, which the check does not treat as loosening. The architecture-baseline.toml rootfs_copy entries keep the same counts. - Nextest filter retargeted: .config/nextest.toml line 134 changes package(pplx-space-common-io) to package(pplx-space-file-io). The test selector reflink::tests::nocow_preparation_clones_shared_extents_and_rejects_aliases is unchanged, so the test still runs. - Duration budget keys renamed: ci/test-duration-budget.toml lines 88–89 rename two pplx-space-common-io keys to pplx-space-file-io. The 5-second ceilings are unchanged. - No new suppressions: no #[allow], #[expect], #[ignore], skip, xfail, continue-on-error, or SPACE_TEST_DEPS_OPTIONAL lines were added. - No test or assertion removed: no removed .rs lines match #[test], #[tokio::test], or assert. - No lint tables changed: no [lints] or [workspace.lints] change appears in Cargo.toml or elsewhere. - No guidance files touched: no AGENTS.md, CLAUDE.md, CONTRIBUTING.md, .agents/, docs/rust/, or workflow file changed. The ARCHITECTURE.toml comment edits only rename common-io and credential-injection-core; they add no review or merge-risk text. - Renamed moves (no safeguard change): scripts/move_crates.toml maps the renamed crates and adds rename keys. The credential/injection/build.rs proto path climbs one fewer directory. Neither touches a check, lint, or guard. Some changes are not weakening, so they are not findings. The description's changes to tracing targets and diagnostic fields are outside this check's criteria.

Full details: Agent Tooling Runs No New Commands

Explanation

The check fails only if the diff adds or changes agent-executed content: plugin manifest hooks, MCP/LSP servers, SKILL.md frontmatter keys other than name/description, inline ! backtick shell substitutions, or other content agent tools run. Evidence: - The changed-file inventory (99 files, git diff --name-status against the review base) has no plugin manifests (plugin.json, plugin.yaml), no SKILL.md, no .claude/, .agents/, .cursor/, CLAUDE.md, AGENTS.md, or .mcp.json paths. A name-only regex over the changed set returned no matches. - The head tree does contain agent assets (.agents/plugins/pplx-space/... manifests, .claude/skills/*/SKILL.md, and many AGENTS.md/CLAUDE.md files). None of them appears in the PR diff, so the PR does not change them. - A search of all added diff lines for hooks, mcpServers, mcp_servers, allowed-tools, allowed_tools, lspServers, "command", command:, and !`` returned no matches. - The PR content is crate renames: Cargo manifests, Rust usepaths, build scripts, nextest/archcheck/duration TOML config, andscripts/move_crates.toml. Under this check, none of these is an agent-run entry. The build.rs` path change is a Cargo build script, not an agent tool. No failure condition is met. Agent assets are unchanged and no new command or server entry was added.

Full details: Public-Safe Content

Explanation

The public-safety check passes. I scanned all added lines in the reviewed range (99 changed files) for private keys, token-like strings, AWS ARNs, 12-digit account IDs, personal absolute paths (/Users/, /home/), and internal hostnames or URLs. None matched. The only "http" hit was a file path segment (tls_http/tests.rs), not a URL. The PR description contains no links to private trackers or chats, no incident details, no production logs or measurements, and no undisclosed vulnerability. Its validation notes (41 environmental PermissionDenied test failures, archcheck results) are CI results and do not expose production data. The log-target section names only crate module paths.

Recent review info

Automatic approval policy

Commit: 11eae800226d.

Setting Effective value Source
Automatic approvals Disabled Override 3
Merge risk Moderate Global configuration
Security risk Not set Global configuration

Matching overrides (numbered as in the resolved configuration):

  • Override 3 — any author; paths: .coderabbit.yaml, .coderabbit.yml, coderabbit.yaml, coderabbit.yml, .coderabbit.config.ts, .claude/settings*.json, **/.mcp.json, **/hooks.json, .agents/plugins/**/hooks/**, .agents/plugins/**/scripts/**, .agents/plugins/**/commands/**, .agents/plugins/**/agents/**, **/skills/**/hooks/**, **/skills/**/scripts/**, **/skills/**/commands/**, **/skills/**/agents/**, .claude/commands/**, .claude/agents/**, **/marketplace.json, .github/**, ci/**, !ci/scripts/setup-nextest-*.sh, scripts/source_guards/**, scripts/check*, clippy.toml, deny.toml, .gitleaks.toml, .pre-commit-config.yaml, lefthook.yaml, rust-toolchain.toml, .cargo/**, supply-chain/**, pyproject.toml, uv.lock, **/package.json, **/package-lock.json, **/go.mod, **/go.sum, **/requirements*.txt, **/requirements*.in, proto/**, db/**, docs/versioning.md, crates/l40_api/api/src/auth.rs, crates/l40_api/api/src/auth/**, crates/l40_api/api/src/middleware/auth*, crates/l40_api/api/src/middleware/auth/**, crates/l40_api/api/src/routes/authz.rs, crates/l10_foundation/bearer/**, crates/l10_foundation/rustls/**, crates/l10_foundation/guest/**, crates/l10_foundation/pii/**, shim/**, docker/**, !docker/Dockerfile.rust-build-kind, templates/**, infra/space/aws/**, infra/space/cluster/**, infra/space/identity/**, infra/space/observability/**, infra/space/packer/**, infra/space/kind/charts/**, LICENSE, SECURITY.md; automatic approvals: disabled.

Any matching disabled override withholds approval, regardless of risk. Otherwise, the strictest explicitly set limit wins for each score. Limits omitted by all matching overrides inherit the global configuration.

Not set means no limit was configured after inheritance. Use @coderabbitai configuration to inspect the resolved settings and their sources.

Run configuration

Commits

Reviewing files that changed from the base of the PR and between 80fcc2f and 11eae80.

Files ignored due to path filters: 1

  • Cargo.lock is excluded by !**/*.lock, !**/Cargo.lock
Files selected for processing: 98

  • .config/nextest.toml
  • ARCHITECTURE.toml
  • Cargo.toml
  • architecture-baseline.toml
  • ci/test-duration-budget.toml
  • crates/l10_foundation/connection/admission/Cargo.toml
  • crates/l10_foundation/connection/admission/src/lib.rs
  • crates/l10_foundation/connection/admission/src/tests.rs
  • crates/l10_foundation/file/io/Cargo.toml
  • crates/l10_foundation/file/io/src/fs.rs
  • crates/l10_foundation/file/io/src/fs/tests.rs
  • crates/l10_foundation/file/io/src/lib.rs
  • crates/l10_foundation/file/io/src/reflink.rs
  • crates/l10_foundation/file/io/src/reflink/tests.rs
  • crates/l10_foundation/file/io/src/sparse.rs
  • crates/l10_foundation/file/io/src/sparse/extent.rs
  • crates/l10_foundation/file/io/src/sparse/reader.rs
  • crates/l10_foundation/file/io/src/sparse/reader/tests.rs
  • crates/l10_foundation/file/io/src/sparse/tests.rs
  • crates/l10_foundation/grpc/lb/Cargo.toml
  • crates/l10_foundation/grpc/lb/src/channel.rs
  • crates/l10_foundation/grpc/lb/src/channel/tests.rs
  • crates/l10_foundation/grpc/lb/src/kubernetes.rs
  • crates/l10_foundation/grpc/lb/src/kubernetes/tests.rs
  • crates/l10_foundation/grpc/lb/src/lib.rs
  • crates/l10_foundation/lru/reaper/Cargo.toml
  • crates/l10_foundation/lru/reaper/src/lib.rs
  • crates/l10_foundation/lru/reaper/src/tests.rs
  • crates/l10_foundation/work/coalescer/Cargo.toml
  • crates/l10_foundation/work/coalescer/src/lib.rs
  • crates/l10_foundation/work/coalescer/src/tests.rs
  • crates/l20_domain/credential/injection/Cargo.toml
  • crates/l20_domain/credential/injection/build.rs
  • crates/l20_domain/credential/injection/src/lib.rs
  • crates/l20_domain/credential/injection/src/secret_arn.rs
  • crates/l20_domain/credential/injection/src/secret_arn/tests.rs
  • crates/l20_domain/credential/injection/src/tests.rs
  • crates/l20_domain/credential/injection/src/validation.rs
  • crates/l20_domain/spaced/common/Cargo.toml
  • crates/l20_domain/spaced/common/build.rs
  • crates/l30_storage/credential/injection/store/Cargo.toml
  • crates/l30_storage/credential/injection/store/src/references.rs
  • crates/l40_api/api/Cargo.toml
  • crates/l40_api/api/src/controllers/substrate/kubernetes/execution.rs
  • crates/l40_api/api/src/controllers/substrate/kubernetes/mod.rs
  • crates/l40_api/api/src/controllers/substrate/kubernetes/test_substrate.rs
  • crates/l40_api/api/src/credential_injection/idempotency.rs
  • crates/l40_api/api/src/credential_injection/references.rs
  • crates/l40_api/credmgr/client/Cargo.toml
  • crates/l40_api/credmgr/client/build.rs
  • crates/l40_api/credmgr/client/src/debug_redaction_tests.rs
  • crates/l40_api/credmgr/client/src/zeroize_tests.rs
  • crates/l40_api/credmgr/server/Cargo.toml
  • crates/l40_api/credmgr/server/src/aws_secrets_manager.rs
  • crates/l40_api/credmgr/server/src/credential_injection_authority.rs
  • crates/l40_api/credmgr/server/src/credential_injection_authority/tests.rs
  • crates/l40_api/credmgr/server/src/credential_injection_bundle.rs
  • crates/l40_api/credmgr/server/src/credential_injection_bundle/provider_dispatcher.rs
  • crates/l40_api/credmgr/server/src/credential_injection_bundle/tests.rs
  • crates/l40_api/credmgr/server/src/node_service/tests.rs
  • crates/l40_api/net/gateway/server/Cargo.toml
  • crates/l40_api/net/gateway/server/src/run.rs
  • crates/l40_api/net/gateway/server/src/state/credentials.rs
  • crates/l40_api/net/gateway/server/src/state/credentials/tests.rs
  • crates/l40_api/net/gateway/server/src/state/tests.rs
  • crates/l40_api/net/gateway/server/src/tcp_proxy.rs
  • crates/l40_api/net/gateway/server/src/tcp_proxy/tls_http/tests.rs
  • crates/l40_api/node/api/client/Cargo.toml
  • crates/l40_api/node/api/client/src/cluster.rs
  • crates/l40_api/node/mgr/server/Cargo.toml
  • crates/l40_api/node/mgr/server/src/contained_copy.rs
  • crates/l40_api/node/mgr/server/src/service/artifact_fs/receive.rs
  • crates/l40_api/node/runtime/core/Cargo.toml
  • crates/l40_api/node/runtime/core/src/lib.rs
  • crates/l40_api/sbx/mgr/server/Cargo.toml
  • crates/l40_api/sbx/mgr/server/src/service/grpc_state_snapshot.rs
  • crates/l40_api/sbx/mgr/server/src/service/host_control.rs
  • crates/l40_api/sbx/mgr/server/src/snapshot_gc.rs
  • crates/l40_api/spaced/guest/server/Cargo.toml
  • crates/l40_api/spaced/guest/server/src/platform/unix/mod.rs
  • crates/l40_api/spaced/host/server/Cargo.toml
  • crates/l40_api/spaced/host/server/src/bridge.rs
  • crates/l40_api/spaced/host/server/src/lib.rs
  • crates/l40_api/template/mgr/server/Cargo.toml
  • crates/l40_api/template/mgr/server/src/eviction.rs
  • crates/l40_api/template/mgr/server/src/eviction/tests.rs
  • crates/l40_api/template/mgr/server/src/file_reader.rs
  • crates/l40_api/template/mgr/server/src/rootfs_backing.rs
  • crates/l40_api/template/mgr/server/src/rootfs_backing/tests.rs
  • crates/l40_api/template/mgr/server/src/rootfs_zstd.rs
  • crates/l40_api/template/mgr/server/src/service.rs
  • crates/l40_api/volmgr/server/Cargo.toml
  • crates/l40_api/volmgr/server/src/crypto.rs
  • crates/l40_api/volmgr/server/src/executor.rs
  • crates/l40_api/volmgr/server/src/staging.rs
  • crates/tools/net/gateway/bench/Cargo.toml
  • crates/tools/net/gateway/bench/src/traffic_control.rs
  • scripts/move_crates.toml
Files with no reviewable changes: 25

  • crates/l10_foundation/connection/admission/src/lib.rs
  • crates/l10_foundation/connection/admission/src/tests.rs
  • crates/l10_foundation/file/io/src/fs.rs
  • crates/l10_foundation/file/io/src/fs/tests.rs
  • crates/l10_foundation/file/io/src/lib.rs
  • crates/l10_foundation/file/io/src/reflink.rs
  • crates/l10_foundation/file/io/src/reflink/tests.rs
  • crates/l10_foundation/file/io/src/sparse.rs
  • crates/l10_foundation/file/io/src/sparse/extent.rs
  • crates/l10_foundation/file/io/src/sparse/reader.rs
  • crates/l10_foundation/file/io/src/sparse/reader/tests.rs
  • crates/l10_foundation/file/io/src/sparse/tests.rs
  • crates/l10_foundation/grpc/lb/src/channel.rs
  • crates/l10_foundation/grpc/lb/src/channel/tests.rs
  • crates/l10_foundation/grpc/lb/src/kubernetes.rs
  • crates/l10_foundation/grpc/lb/src/kubernetes/tests.rs
  • crates/l10_foundation/grpc/lb/src/lib.rs
  • crates/l10_foundation/lru/reaper/src/lib.rs
  • crates/l10_foundation/lru/reaper/src/tests.rs
  • crates/l10_foundation/work/coalescer/src/tests.rs
  • crates/l20_domain/credential/injection/src/lib.rs
  • crates/l20_domain/credential/injection/src/secret_arn.rs
  • crates/l20_domain/credential/injection/src/secret_arn/tests.rs
  • crates/l20_domain/credential/injection/src/tests.rs
  • crates/l20_domain/credential/injection/src/validation.rs
Files skipped from review as they are similar to previous changes: 2

  • crates/l10_foundation/work/coalescer/src/lib.rs
  • crates/l40_api/template/mgr/server/src/eviction/tests.rs

Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 8 remain after this review.

@github-actions github-actions Bot added the triage:pending Waiting for a maintainer to triage label Nov 7, 2026
@github-actions

github-actions Bot commented Nov 7, 2026

Copy link
Copy Markdown

Thanks for opening this pull request! A SPACE maintainer will take a look.

CONTRIBUTING.md explains how we review outside contributions.

coderabbitai[bot]
coderabbitai Bot previously requested changes Nov 7, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pre-merge checks failed. Please resolve the failing checks before merging.

@shehan-pplx shehan-pplx left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed by Shehan's Review Bot

@shehan-pplx shehan-pplx left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed by Shehan's Review Bot

The crate holds client-side gRPC load balancing over a discovered
endpoint set; `common` said nothing about that. The package, library
and directory change (crates/l10_foundation/common/grpc/lb ->
crates/l10_foundation/grpc/lb), every reference follows, and its
[crate_names] baseline entry goes. No code changes. Events the crate
emits with tracing's default target now carry the new module path.
…-work-coalescer

The crate holds keyed coalescing of concurrent duplicate work; `common`
said nothing about that. The package, library and directory change
(crates/l10_foundation/common/work/coalescer ->
crates/l10_foundation/work/coalescer), every reference follows, with
rustfmt's reflow of the touched imports, and its [crate_names] baseline
entry goes. No code changes. The `work_coalescer.*` span names are
explicit and unchanged; the crate's spans, which take tracing's default
target, now carry the new module path.
The crate holds the LRU eviction planner that the template cache GC and
the snapshot-artifact reaper share; `common` said nothing about that.
The package, library and directory change
(crates/l10_foundation/common/lru/reaper ->
crates/l10_foundation/lru/reaper), every reference follows, and its
[crate_names] baseline entry goes. No code changes; the crate emits no
events or metrics.
…o pplx-space-connection-admission

The crate holds bounded accepted-connection admission for local service
transports; `common` said nothing about that. The package, library and
directory change (crates/l10_foundation/common/connection/admission ->
crates/l10_foundation/connection/admission), every reference follows,
with rustfmt's reordering of the touched imports, and its [crate_names]
baseline entry goes. No code changes. Events the crate emits with
tracing's default target now carry the new module path.
The crate holds file I/O mechanics: streaming AES-256-GCM file
encryption (`fs`), sparse-file readers and writers (`sparse`) and
NoCoW-preserving reflink copies (`reflink`). `common` said nothing about
that. The package, library and directory change
(crates/l10_foundation/common/io -> crates/l10_foundation/file/io), every
reference follows, with rustfmt's reflow of the touched lines, and its
[crate_names] baseline entry goes. No code changes.

The nextest privileged-test filter, the test-duration budget keys and
the rootfs_copy pattern-ratchet allow path name the crate, so they
follow it. Events the crate emits with tracing's default target now
carry the new module path.
…pplx-space-credential-injection

The crate holds credential injection's model and wire type: validated
credential references (`secret_arn`, `validation`) and the
secret-bearing `ResolvedNetworkCredential` message. `core` said nothing
about that. The package, library and directory change
(crates/l20_domain/credential/injection/core ->
crates/l20_domain/credential/injection), every reference follows, and
its [crate_names] baseline entry goes. No code changes.

The build script's proto root climbs one directory fewer, and the
`extern_path` targets in spaced-common's and credmgr-client's build
scripts name the new library. The generated message is unchanged. The
name does not end in -protocol or -proto, so the crate still counts as
a model.
@ac-pplx
ac-pplx added this pull request to the merge queue Nov 13, 2026
Merged via the queue into main with commit 86a4ca1 Nov 13, 2026
44 checks passed
@ac-pplx
ac-pplx deleted the ac/crate-names-1 branch November 13, 2026 06:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

triage:pending Waiting for a maintainer to triage

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants