Skip to content

feat(emit): dogfood github-warden Action + prep npm publish - #4

Merged
lex00 merged 1 commit into
mainfrom
feat/distribution
Jun 19, 2026
Merged

lex00 merged 1 commit into
mainfrom
feat/distribution

Conversation

@lex00

@lex00 lex00 commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Dogfood the github-warden Action in the emitted pipeline: src/emit/pipeline.ts now emits uses: intentius/github-warden@50db522e57c4ccdb36af932062ee38839bc1b88e # v1 steps (SHA-pinned per GHA029, # v1 comment for readability). Removed the setup-node + npm install --global github-warden + npx github-warden reconcile run-steps; inputs (command, config, mode, app-id, installation-id, private-key, cycles) now pass via with:. Dry-run-on-PR / apply-on-push split, PR-comment step, least-privilege permissions, and timeout-minutes are all preserved.
  • Prep package.json for npm publish: removed "private": true, added "publishConfig": { "access": "public" }, "files": ["bin", "dist"], and "prepublishOnly": "npm run build". bin/github-warden.js launcher already committed and loads dist/cli.js.

Test plan

  • npx tsc --noEmit — clean (no output)
  • npm test — 231 tests pass (11 test files)
  • npm run build — CLI bundle builds to dist/cli.js
  • npm run build:action — action bundle builds to action/index.mjs
  • npm pack --dry-run — tarball contains bin/github-warden.js + dist/cli.js, no "invalid/removed" bin warning
  • node bin/github-warden.js --help — prints usage against built dist
  • New pipeline test assertions: SHA-pinned uses: with # v1, with: inputs present, no setup-node/npm install steps
  • CI green

Replace the npm-install + npx run-steps in the emitted governance
workflow with a `uses: intentius/github-warden@<SHA> # v1` action step,
SHA-pinned to the v1 commit (GHA029). This eliminates setup-node and
npm-install boilerplate and passes all inputs (command, config, mode,
app-id, installation-id, private-key, cycles) via with:, keeping the
dry-run-on-PR / apply-on-push split and PR-comment behavior intact.

Update tests to assert the SHA-pinned uses: reference with # v1
comment, with: inputs, and that setup-node/npm-install are absent.
Also prep package.json for npm publish: remove "private", add
publishConfig.access=public, files manifest (bin + dist), and
prepublishOnly build script.
@lex00
lex00 merged commit e14606a into main Jun 19, 2026
2 checks passed
@lex00
lex00 deleted the feat/distribution branch June 19, 2026 08:04
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