This guide describes the release gate for layout-style-css@3.0.1. Running verification does not publish, tag, push, create a GitHub Release, or change the npm registry.
npm ci
npm run build
npm run lint
npm run test:full
npm run release:verify
git diff --checknpm run release:verify includes npm audit --audit-level=moderate, the cross-engine browser matrix, Pages verification, tarball dry-run, publish dry-run, and npm run release:preflight. It does not publish.
The read-only ecosystem preflight uses the immutable UI fixture in ecosystem-release-fixture.json, overrides Layout Style with the candidate tarball, queries npm for every exact documented minimum/current version, resolves all packed exports (including personality modules), validates maintained documentation, and runs the reviewed clean-install matrices. Pull requests execute this same gate without enabling publish, tag, release, or deployment mutations.
The package's prepublishOnly script runs npm run release:verify, so a direct npm publish uses the same full gate.
The immutable cross-repository pins require this exact remote sequence:
- Push a stable UI bootstrap ref containing
bdbb6a7e432f30b92de206cac6a00fe85394190c. - Push and merge Interactive Surface CSS and Layout Style CSS with merge commits so their reviewed commit SHAs remain reachable.
- Update and verify the final UI companion pins against those merged companion commits.
- Push the final UI branch, rerun its ecosystem preflight, and merge UI with a merge commit.
- Do not squash, rebase, or delete the only remote refs until every pinned commit is reachable through merged ancestry.
The bootstrap SHA is deliberately stable: companion workflows use it to load the reviewed preflight implementation before the final UI commit can reference the companion heads.
Confirm:
- package version is
3.0.1 - intended tag would be
v3.0.1 - runtime and peer dependencies are empty
- exact exports and tarball files match the v3 contract
- generated CSS matches authored sources
- Chromium, Firefox, and WebKit are green
desktop.iniand other local-only files are absent from the tarball
Only after explicit approval:
- Commit the verified candidate.
- Push the intended branch.
- Merge through the repository's normal review policy.
- Create the exact
v3.0.1tag from the protected release commit. - Publish the GitHub Release.
- Let the protected npm workflow verify the tag and publish with provenance.
- Confirm the GitHub Release, tag, and npm registry state independently.
The npm job uses the protected npm environment, required reviewers, least-privilege permissions, strict tag validation, exact tag checkout, main-ancestry verification, and an immutable commit sha. Prefer npm trusted publishing when the registry setup supports it.
If verification fails, fix the candidate and rerun the complete gate. Do not move or overwrite an existing release tag. Use a new semantic version when a published artifact must be corrected.