refactor(command-registry): move the wait-positionals test into the package
What
src/__tests__/wait-positionals.test.ts tests parseWaitPositionals / resolveWaitBudgetMs from @agent-device/command-registry/wait-positionals and nothing in root src. That is procedure case 2 (a package's test living at root), so it moves beside the module it tests: packages/command-registry/src/wait-positionals.test.ts.
- Commit 1: pure
git mv(100% similarity). - Commit 2: the parser import becomes
./wait-positionals.ts; command-registry declaresfast-checkindevDependencies(the test uses it; the lockfile importer entry is added,pnpm install --frozen-lockfilepasses).
The test still imports PROPERTY_RUNS from @agent-device/selectors/snapshot-geometry-fixtures (selectors is already a command-registry dependency). That specifier is changed when the fixture moves to test-kit.
Fixture decisions (root importers of the fixtures I own)
I classified every root src/test/scripts importer of the four fixture exports. This is the only one that tests package code. The others test root src/commands/**, src/platform-runtime*, the CLI or integration harnesses (root worker), or src/__tests__/daemon-composition/** (daemon thread), so they only get import-specifier edits when their fixture moves. src/__tests__/kernel/snapshot-ref-grammar.test.ts tests the kernel package and belongs to whoever owns kernel.
Parity
vitest run <file> --reporter=json: before 17 / 17 at src/__tests__/wait-positionals.test.ts; after 17 / 17 at packages/command-registry/src/wait-positionals.test.ts. Selected by unit-core (packages/*/src/**/*.test.ts) and ran under check:affected --run. No vi.mock.
Surface
exports count command-registry 21 -> 21. No new subpaths, barrels or export *. One new devDependency (fast-check, already used by the repo).
Gates
check:quick, check:layering, check:fallow, check:gate-manifest, pnpm format pass. pnpm check:affected --run fails open to the full set (a package manifest changed) and passes except one test unrelated to this diff: scripts/__tests__/eager-closure-budgets.test.ts > no APPROVED_OVER_CEILING row is stale reports packages/daemon/src/index.ts (the row added with the daemon single-entry change #3633). Nothing in this branch touches daemon or that table.
Pointer for the daemon thread: the comment at packages/daemon/src/sessions/handlers/__tests__/snapshot.test.ts:113 names src/__tests__/wait-positionals.test.ts; it should now read packages/command-registry/src/wait-positionals.test.ts. I left it alone because I only edit specifiers in daemon files.
🤖 Generated with Claude Code