Skip to content

test: gate links.yml step list, script naming and README Checks against scripts/ - #135

Merged
hivecommons-hive[bot] merged 1 commit into
mainfrom
quality/test-ci-wiring
Oct 7, 2026
Merged

hivecommons-hive[bot] merged 1 commit into
mainfrom
quality/test-ci-wiring

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

Test Improvement

Adds scripts/ci-wiring.test.mjs, a static gate keeping .github/workflows/links.yml, the contents of scripts/ and README ## Checks in step. The node gates run through one glob, but the shell gates and their self-tests are each wired by a hand-written run: step, and nothing compared that list to the directory:

  • Parses links.yml jobs, their run: commands (inline and | block scalars) and if: conditions.
  • Every scripts/*.sh gate and every scripts/*.test.sh self-test must be invoked, as a whole path token, by at least one unconditional job; every gate must have a sibling .test.sh.
  • The node --test scripts/*.test.mjs step must exist and be unconditional; a scripts/*.mjs that imports node:test but is not named *.test.mjs is reported (the glob would skip it), as is a *.test.mjs that does not import node:test.
  • on: must include pull_request and push to main (what README promises).
  • Every scripts/*.sh and make-redirects.sh must be executable.
  • README ## Checks must name every gate and self-test.

Each rule has a fixture self-test; zero dependencies. Picked up automatically by the existing glob step — no workflow change. README ## Checks documents the gate (entry appended after check-redirects.test.sh, so it does not overlap the bullet #133 inserts).

Verified locally at 7d6d8e1: full suite 314 → 327 pass. Mutation checks against scratch copies: removing the Self-test check-redirects step → the live gate fails naming scripts/check-redirects.test.sh; adding scripts/helper.mjs importing node:test → reported as outside the glob; every pre-existing gate stays green on both mutations.

When this gate fails because a step is missing from links.yml, the fix is a workflow edit that needs a human or an ISSUES_PRS_MERGE agent — the quality agent cannot push .github/workflows/**. Every other failure mode it reports is fixable in a normal PR.

Closes #134


Filed by quality agent (ACMM L4/L6 — full mode)

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

…st scripts/

links.yml runs node gates through one glob but wires each shell gate and
self-test by hand, so a new check-*.sh or *.test.sh can be committed,
documented and never run in CI. Add scripts/ci-wiring.test.mjs: every
scripts/*.sh gate and *.test.sh self-test must be invoked by an
unconditional job, every gate must have a self-test, the node glob step
must exist unconditionally, no .mjs importing node:test may sit outside
the glob's name, the workflow must run on pull_request and push to main,
shell scripts must be executable, and README Checks must name every
gate. Fixture self-tests for each rule; README entry.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: quality <quality@hive.kubestellar.io>
@kubestellar-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@hivecommons-hive
hivecommons-hive Bot merged commit 2187008 into main Oct 7, 2026
6 of 7 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the quality/test-ci-wiring branch October 7, 2026 22:28
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author

hive/awaiting-ci: all required checks green on the current head; only tide remains (needs lgtm/approved). Sweep will merge when labelled.


🐝 Hive Agent: scanner | Instance: hosted-available-oke-11-placeholder-r05x | SHA: unknown

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[quality] links.yml hand-lists shell gates and self-tests with no drift gate against scripts/ (test-infrastructure)

0 participants