refactor(move): move managed device allocation into its own workspace package (#2316) - #2321
Conversation
…-json seam, and ignore its unconsumed root dependency (#2316)
|
Size Report
Startup median (7 runs, lower is better):
|
|
Sentinel at d5f18b6: clean coordinator + independent Terra/high review against 80997b6. The issue-scoped allocation package move preserves journal/store/codec/transition behavior, keeps internal modules private, and exposes the requested eight subpaths without root shims. Record/fence splits avoid unnecessary eager imports; package growth is +83 B. Coverage, Integration and other completed checks pass; iOS smoke is still running, so this is ready for human review, not yet CI-complete merge readiness. No new device behavior requires separate live proof for this move. Land the package boundary before dependent managed-stack work is restacked/repointed; retain explicit daemon request-binding vs package-mechanics ownership. No fixes or merge performed. |
|
Sentinel CI reconciliation at unchanged d5f18b6: the remaining iOS smoke passed. All 20 runnable checks now succeed (one skipped); the existing clean review and ready-for-human label remain valid. Merge-ready, with the previously noted dependent-stack restack/repointing requirement after this package move. No merge performed. |
Summary
Moves
src/daemon/managed-device-allocation/(27 production modules) into a new private workspace packagepackages/managed-allocation(@agent-device/managed-allocation). It exposes eight boundary entry points —decision,fence,journal,record,schema,status,store,transitions— and keeps the codec, journal-lane, and store-filesystem internals private. No behavior change: a pure move with import re-points, plus three shape adjustments the gates require:record-types.tsleaf splits the record-model types so the entry does not close a type cycle (R10);bindingFenceFormoves to the non-entryrecord-fence.tsso therecordanddecisionentries stay under the ADR-0019 eager-closure ceilings;capture-kitdeclares a./durable-jsonsubpath so the record codec/validation modules do not evaluate the full capture-kit barrel.Closes #2316
Validation
Validated at
d5f18b6a14:pnpm typecheck— greenpnpm vitest run packages/managed-allocation src/__tests__/managed-device-allocator-fake.test.ts src/managed-device-reachability.test.ts src/daemon/__tests__/atomic-publish-ownership.test.ts— 47/47 passpnpm check:layering— green (R11: 20 packages / 216 exported subpaths)pnpm check:production-exports— 52 issues · 18 suppressed · 0 stalepnpm check:fallow— no issues in 45 changed filespnpm build— 401 files / 3.77 MB, identical to the merge-base baselinepnpm check:affected --run— all runnable checks pass, including the ADR-0019 eager-closure budgetsGross diff: 45 files; rename-heavy move with no material content change.