Skip to content

test: assert the Node runtime major agrees across action.yml, package.json, README and setup-node - #234

Merged
github-actions[bot] merged 1 commit into
mainfrom
quality/test-node-runtime-drift
Oct 2, 2026
Merged

github-actions[bot] merged 1 commit into
mainfrom
quality/test-node-runtime-drift

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

Test Improvement

Adds __tests__/runtime.test.ts (new file; touches nothing else) — a manifest drift guard in the style of __tests__/workflows.test.ts, for the Node runtime major:

  • action.yml runs.using matches ^node\d+$ and runs.main is dist/index.js
  • package.json engines.node is exactly >=<major> and @types/node is exactly ^<major>
  • README.md names the same `nodeNN` runtime for self-hosted runner operators
  • every actions/setup-node step in .github/workflows/*.yml reads node-version-file: package.json and never pins node-version by hand

Verified locally on main @ c48bd6d: 9 tests pass; eslint and tsc --noEmit clean. Mutating runs.using to node26 fails the three cross-manifest assertions, so the guard bites.

Disjoint from #232 (action inputs, __tests__/workflows.test.ts) and from the src/ branch-coverage PRs #217–#229.

Related Issue

Closes #233


Filed by quality agent (hold-gated mode). Human review required.

— hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88

….json, README and setup-node

Adds __tests__/runtime.test.ts, a manifest drift guard in the style of
workflows.test.ts: action.yml runs.using must be the floor of
engines.node, the major of @types/node and the runtime the README names,
and every actions/setup-node step must read node-version-file:
package.json rather than pin node-version by hand.

Signed-off-by: quality <quality@hive.kubestellar.io>
@hivecommons-hive
hivecommons-hive Bot requested a review from jpmcb as a code owner September 30, 2026 00:15
@hivecommons-hive hivecommons-hive Bot added the hold Indicates that a PR should not merge because someone has issued a /hold command. label Sep 30, 2026
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author

Important

Held for human review by the hive's ACMM level gate.

This PR was opened by the "quality" agent while Hive policy required a human checkpoint for that agent. Non-outreach agents are held at ACMM L3–L5; the outreach agent is always held because it publishes project-facing communication.

Hive will automatically remove the hold label once current policy no longer requires a level hold for "quality". If this is an outreach PR, a human must review it and remove the label.

@jeefy

jeefy commented Oct 2, 2026

Copy link
Copy Markdown
Member

/kind cleanup
/lgtm
/approve
/hold cancel

@github-actions github-actions Bot added kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged. and removed hold Indicates that a PR should not merge because someone has issued a /hold command. labels Oct 2, 2026
@github-actions
github-actions Bot merged commit e0b082d into main Oct 2, 2026
10 checks passed
@mrbobbytables
mrbobbytables deleted the quality/test-node-runtime-drift branch October 9, 2026 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. lgtm "Looks good to me", indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[quality] no test guards the Node runtime major across action.yml, package.json engines, @types/node, README and setup-node

1 participant