ci: add GitHub Actions CI, release, and PR checks - #82
Open
Dhirenderchoudhary wants to merge 2 commits into
Open
ci: add GitHub Actions CI, release, and PR checks#82Dhirenderchoudhary wants to merge 2 commits into
Dhirenderchoudhary wants to merge 2 commits into
Conversation
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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
Adds the CI/CD pipeline from #52 so PRs to
maincannot land untyped, unlinted, or untested code.This PR is CI/docs only. Formatting lives in a separate PR (
style/apply-prettier) so review stays focused.CI (every PR + push to
main)tscviapnpm run buildfail-fast: false)pnpm run test:coverageon Node 22, uploaded as acoverageartifactCI: one required check for branch protection (quality+testmust both succeed)packageManager,--frozen-lockfile, store cachecontents: read; checkout usespersist-credentials: falseCD
workflow_dispatch) publishes to npm with--provenanceNPM_TOKEN(automation token with publish access topassmark)Also in this PR
feat/fix/docs/style/ci/ …)main, and a weekly cron.gitignore:coverage,.pnpm-storeNot in this PR (on purpose)
src/__tests__/integration/*is mocked and already runs in Vitest. Fork PRs never get secrets; a live E2E job can be added later, gated on push tomain.Merge order
style/apply-prettier).format:checkis red — it checks the existing tree).CHANGELOG.mdcurrently conflicts withmain— keep both Unreleased bullets; ours is the GitHub Actions CI/CD line.After merge
main(the aggregator job, not every matrix cell).NPM_TOKENbefore the first GitHub Release.Closes #52
Test plan
pnpm run lint— 0 errors (existing warnings only)pnpm run buildpnpm test— 12 files, 155 testspnpm run format:checkon this branch