Skip to content

docs: one CI/CD path from drift check to gated release (#10) - #52

Merged
adrianbrowning merged 3 commits into
mainfrom
docs/10-ci-cd-path
Oct 6, 2026
Merged

adrianbrowning merged 3 commits into
mainfrom
docs/10-ci-cd-path

Conversation

@adrianbrowning

@adrianbrowning adrianbrowning commented Oct 6, 2026 •

Copy link
Copy Markdown
Owner

Refs #10

Summary

#11, #12 and #13 each shipped one piece. This PR adds the section that puts them in order for a consumer. It's in the package README, so npm shows it too:

 ## Project Configuration
+## CI/CD Integration
+   1. docs in sync        → links to Checking Docs in CI / Project Configuration
+   2. runnable snippets   → links to Validating Runnable Snippets in CI
+   3. gate the release    → new:
+### Gating a Release
+   prepublishOnly: npm test && docs:check && docs:snippets
+   GitHub Actions: checks job (read-only, named Gate: steps) → publish job (needs: checks, id-token: write, trusted publishing, npm publish --ignore-scripts)
 ## CLI Flags Reference

The root README links to the new section after its two existing CI paragraphs.

Evidence

I packed this branch, installed the tarball into a temp project with the copied scripts, and ran the documented prepublishOnly recipe:

  • In sync: npm publish --dry-run exit 0. Output: 1 document(s) in sync., 1 runnable block(s) passed., then Publishing … (dry-run).
  • After editing src/add.js: exit 1. Output: ✗ README.md: out of sync / line 3: out of sync with src/add.js. No Publishing line.
  • npm publish --dry-run --ignore-scripts skips a failing prepublishOnly (exit 0), where plain npm publish --dry-run runs it (exit 1). That keeps snippets out of the job that holds id-token.
  • The documented workflow YAML parses, and publish needs checks. Only publish has id-token: write.
  • I checked the trusted-publishing requirement (npm 11.5.1+, Node 22.14+) against npm's docs.

Merge Danger

Door: two-way

Blast Radius: docs

Docs and a patch bump file only. #10 stays open: it also requires the canonical package name (#3), and the maintainer still has to set up the release credentials.

@github-actions

github-actions Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

bumpy-frog

The changes in this PR will be included in the next version bump.

patch Patch releases

  • mdcode-ts 0.0.4 → 0.0.5

Bump files in this PR

Click here if you want to add another bump file to this PR


This comment is maintained by bumpy.

@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown

⚠️ ESLint Check Warnings

Click to see details

Style


> mdcode@0.0.1 lint:s /home/runner/work/mdcode-ts/mdcode-ts
> pnpm -r lint:s

Scope: 2 of 3 workspace projects
packages/mdcode lint:s$ eslint --config .eslintrc.style.json "src/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/mdcode lint:s: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/mdcode lint:s: Done
packages/usage lint:s$ eslint --config .eslintrc.style.json "{tests,fixtures,examples}/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/usage lint:s: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/usage lint:s: Done

Correctness


> mdcode@0.0.1 lint:esl /home/runner/work/mdcode-ts/mdcode-ts
> pnpm -r lint:esl

Scope: 2 of 3 workspace projects
packages/mdcode lint:esl$ eslint "src/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/mdcode lint:esl: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/mdcode lint:esl: Done
packages/usage lint:esl$ eslint "{tests,fixtures,examples}/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/usage lint:esl: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/usage lint:esl: Done

View workflow run

@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown

⚠️ ESLint Check Warnings

Click to see details

Style


> mdcode@0.0.1 lint:s /home/runner/work/mdcode-ts/mdcode-ts
> pnpm -r lint:s

Scope: 2 of 3 workspace projects
packages/mdcode lint:s$ eslint --config .eslintrc.style.json "src/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/mdcode lint:s: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/mdcode lint:s: Done
packages/usage lint:s$ eslint --config .eslintrc.style.json "{tests,fixtures,examples}/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/usage lint:s: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/usage lint:s: Done

Correctness


> mdcode@0.0.1 lint:esl /home/runner/work/mdcode-ts/mdcode-ts
> pnpm -r lint:esl

Scope: 2 of 3 workspace projects
packages/mdcode lint:esl$ eslint "src/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/mdcode lint:esl: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/mdcode lint:esl: Done
packages/usage lint:esl$ eslint "{tests,fixtures,examples}/**/*.{j,t}s{,x}" --cache --max-warnings=0
packages/usage lint:esl: [baseline-browser-mapping] The data in this module is over two months old.  To ensure accurate Baseline data, please update: 'npm i baseline-browser-mapping@latest -D'
packages/usage lint:esl: Done

View workflow run

@adrianbrowning
adrianbrowning merged commit 84e555b into main Oct 6, 2026
4 checks passed
@adrianbrowning
adrianbrowning deleted the docs/10-ci-cd-path branch October 6, 2026 13:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant