You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Centralize architecture ownership evidence in scripts/layering/architecture-ownership.ts and make the existing logical-module and snapshot-policy layering tests consume it.
The shared declaration now owns logical-module roots, the ADR 0004 src/snapshot/ executable-policy boundary, four exact public contracts facades (client, capture, replay, progress), and two exact capability roots with enumerated exports.
The old logical-module table is deleted from daemon-modularity.ts; no production src/ or packages/ imports or runtime behavior changed.
The root matcher is boundary-aware: file roots require equality and directory roots require the declared directory prefix. No filename guessing, numerical threshold, compatibility shim, or second parser was added.
Current base for this maintenance rebase: local origin/main and remote mained26b31c94.
Planted snapshot import of src/daemon/types.ts made pnpm check:layering fail at the snapshot boundary; removing it restored the gate.
Removing the shared replay-test src/daemon/ prohibition made the existing logical-module test fail with zero violations; restoring it returned the test to green.
Focused ownership, daemon-modularity, and snapshot-boundary tests: 15/15 passed.
pnpm check:layering: 165/165 tests passed; layering guard OK.
pnpm check:affected --run: all runnable checks passed after the rebase. The selector chose the full 56-check set; GitHub-authoritative native/device/coverage lanes were skipped locally.
pnpm format, typecheck, lint, build, package, integration smoke, depgraph, gate-manifest, fallow, and mutation-model checks passed through the affected gate.
Touched files in the PR diff: 4, all under scripts/layering/.
Gross diff relative to current origin/main: +211 / -49 lines.
Move-adjusted net tooling LOC: +162 (211 - 49). The logical policy/type core is relocated and reformatted, not counted as new ownership surface; the move-adjusted net remains unchanged after reconciling the retired-platform paths.
Unavoidable growth: 70 lines of exact ownership data/helper, 88 lines of root/export/consumer/lookalike proof, and 22 lines wiring the existing checks to the shared declaration = 180 lines. The relocation accounting leaves 18 lines of non-relocation cleanup deleted; daemon-modularity.ts deletes 45 lines and the snapshot test deletes 4.
Residual risks
Native/device/coverage lanes remain GitHub-authoritative and must pass for the new rebased head; this tooling-only change does not alter those paths.
The vocabulary/capability lists are intentionally initial and exact. Follow-up depgraph work must add entries explicitly rather than infer ownership from names or paths.
Review found no code or architecture-design issues. The new architecture-ownership module centralizes the shared facts rather than adding a hand-synced oracle: existing logical-module and snapshot-policy gates consume it, while tests validate roots, public facades, exact capability exports, real consumers, and lookalikes. It leaves ADR 0003 daemon policy, ADR 0009 Apple ownership, and ADR 0019 request-binding/platform composition unchanged. The move-adjusted tooling growth is justified; no materially smaller design preserves this locality and proof. Remaining status is CI only: Smoke, Coverage, and Repo Guards were still pending at review time.
Re-review of exact head 340a99f0155071df6821177137e5d27ffde61b0f found no code or architecture issues. The apparent large delta is the rebase carrying merged #2078/#2119/#2123/#2125; the PR itself remains four layering-tool files. Its only rebase reconciliation removes obsolete src/platforms/ logical-policy entries while retaining current main's retired-platform boundary. #2126 remains fully satisfied: one boundary-aware declaration owns the facts consumed by the logical-module and ADR 0004 snapshot gates, with exact-root/export/consumer/lookalike and planted-red proof. No production runtime or import path changes; Size is 0 B and exact-head CI is fully green. The existing ready-for-human label remains valid.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ready-for-humanValid work that needs human implementation, judgment, or maintainer merge
1 participant
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #2126
Centralize architecture ownership evidence in
scripts/layering/architecture-ownership.tsand make the existing logical-module and snapshot-policy layering tests consume it.src/snapshot/executable-policy boundary, four exact public contracts facades (client,capture,replay,progress), and two exact capability roots with enumerated exports.daemon-modularity.ts; no productionsrc/orpackages/imports or runtime behavior changed.origin/mained26b31c94after refactor: retire platforms source seam #2119/refactor: prune platform split residue #2123/refactor: contract Apple platform surface #2125. The genuine overlap inscripts/layering/daemon-modularity.tswas resolved by retaining the shared declaration import and current main's retired-platform semantics; obsoletesrc/platforms/logical-policy entries were removed.Validation
origin/mainand remotemained26b31c94.src/daemon/types.tsmadepnpm check:layeringfail at the snapshot boundary; removing it restored the gate.src/daemon/prohibition made the existing logical-module test fail with zero violations; restoring it returned the test to green.pnpm check:layering: 165/165 tests passed; layering guard OK.pnpm check:affected --run: all runnable checks passed after the rebase. The selector chose the full 56-check set; GitHub-authoritative native/device/coverage lanes were skipped locally.pnpm format, typecheck, lint, build, package, integration smoke, depgraph, gate-manifest, fallow, and mutation-model checks passed through the affected gate.Size
scripts/layering/.origin/main: +211 / -49 lines.211 - 49). The logical policy/type core is relocated and reformatted, not counted as new ownership surface; the move-adjusted net remains unchanged after reconciling the retired-platform paths.daemon-modularity.tsdeletes 45 lines and the snapshot test deletes 4.Residual risks