Skip to content

ci: add PR-time typecheck+test+build gate - #28

Open
asachs01 wants to merge 1 commit into
mainfrom
ci/add-pr-time-gate
Open

ci: add PR-time typecheck+test+build gate#28
asachs01 wants to merge 1 commit into
mainfrom
ci/add-pr-time-gate

Conversation

@asachs01

Copy link
Copy Markdown
Member

Summary

  • Adds the PR-time CI gate this repo never had - release.yml only triggers on push to main/develop/alpha, so PRs currently get zero CI signal before merge.
  • Same gap class already closed on blackpoint-mcp#46 and mirrored from datto-rmm-mcp/ci.yml (typecheck via tsc --noEmit, vitest, tsup build).
  • Boss follow-up task from the Node-18-EOL batch: task_1784769813181_35351102.
  • Note: this is the @wyre-technology/node-huntress SDK client library, distinct from huntress-mcp (the MCP server) - different repo, different gap.

What changed

  • New .github/workflows/ci.yml: single Node 20 job running install → lint → test → build on every PR to main. No docker/publish job - that stays release.yml's concern, this is PR-time gating only.
  • Single Node version (not the full 20.x/22.x matrix) since release.yml's push-triggered job on main already covers the version matrix - this keeps PR CI fast without duplicating it.
  • No private-registry auth (NODE_AUTH_TOKEN/registry-url) included - this repo has zero @wyre-technology dependencies, so it isn't needed (verified .npmrc untouched).

Test plan

  • npm ci clean
  • npm run lint (tsc --noEmit) - clean
  • npm test - 15/15 passing
  • npm run build - clean

🤖 Generated with Claude Code

release.yml only triggers on push to main/develop/alpha - PRs get zero
CI today, so a PR could merge with a broken build/test and nobody
would know until the push-triggered release run fails after merge.
Same gap class already closed on blackpoint-mcp#46 and datto-rmm-mcp.

Mirrors that pattern: single Node 20 job (release.yml's push-triggered
matrix already covers 20.x/22.x on main, so this stays a fast PR-time
gate, not a duplicate matrix). No private-registry auth needed - this
repo has zero @wyre-technology dependencies.

Verified locally on current main: lint (tsc --noEmit) + test (15/15) +
build all clean.
@asachs01

Copy link
Copy Markdown
Member Author

Analyst review — cleared, ready for Aaron's batch.

Matches the established blackpoint-mcp#46 CI-gate pattern exactly (single Node 20 job: install/lint/test/build on PR+push to main, no docker job needed for a chore/CI-only change). Verified both pinned action SHAs (actions/checkout, actions/setup-node) genuinely resolve to their claimed tags via the GitHub API — not typosquatted or stale. Build job itself is green. Low-risk CI/tooling class per the autonomy rules.

(Left as a comment, not an approve — gh blocks approving under the shared account identity, same mechanics issue as earlier today, not a real conflict.)

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