Skip to content

feat: guard the root and registry manifests against dependency drift - #166

Merged
lmcorbalan merged 11 commits into
feat/registry-distributionfrom
feat/registry-deps-guard
Sep 3, 2026
Merged

feat: guard the root and registry manifests against dependency drift#166
lmcorbalan merged 11 commits into
feat/registry-distributionfrom
feat/registry-deps-guard

Conversation

@lmcorbalan

Copy link
Copy Markdown
Collaborator

Summary

Closes #160

The root manifest now ships the registry as an npm package, so the same seven packages are named in two files with nothing keeping them in step. npm run check:deps fails when they come apart.

Changes

  • scripts/check-registry-deps.mjs: a runtime dependency declared on one side only, a shared package at two ranges, a mismatched engines.node or type, and a package the two lockfiles resolve differently.
  • It also fails when a lockfile stops recording the manifest beside it, the state npm ci refuses and that a range edit leaves behind.
  • One check:deps entry in the root package.json.

Acceptance criteria

  • All six from the issue are met, plus the two corrections filed as comments on it (resolutions, not just ranges; engines.node and type). Comparison is symmetric, which the issue asked one way.

Test plan

Automated tests

None; the script is its own check and no suite changed.

Manual verification

Twelve mutations redden with the intended message, including a lockfile-only version drift with both manifests agreeing, and a range shadowed by a second declaration of the same package. Green from a fresh clone with nothing installed.

Breaking changes

None.

@lmcorbalan
lmcorbalan merged commit 882af07 into feat/registry-distribution Sep 3, 2026
2 checks passed
@lmcorbalan
lmcorbalan deleted the feat/registry-deps-guard branch September 3, 2026 12:08
@github-project-automation github-project-automation Bot moved this from Backlog to Done in Canton - dAppBooster (#390) Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants