Skip to content

test(docs gate): assert the remaining branches of the links.yml prose gate and clear its coverage-floor entry - #319

Merged
hivecommons-hive[bot] merged 1 commit into
mainfrom
quality/test-workflow-docs-floor
Nov 1, 2026
Merged

hivecommons-hive[bot] merged 1 commit into
mainfrom
quality/test-workflow-docs-floor

Conversation

@hivecommons-hive

Copy link
Copy Markdown
Contributor

Summary

scripts/workflow-docs.test.mjs is the only thing that notices when README.md and runbooks/*.md drift from .github/workflows/links.yml — and four of its own branches were never executed by the suite, so coverage-floor.test.mjs carried a TEST_HELPER_BASELINE entry of 4 for it. All four are the gate's own vacuity guards: triggers() on a file with no on: block, the links.yml has no \name:`rejection, the earlylinks.yml has no jobsreturn, and the?? ""fallback when no job is namedlinks. A regression in any of them would have let a hollowed-out links.yml` read as consistent with the docs while the live test stayed green.

One fixture test pins each of those branches and the ratchet entry is deleted, following #312, #317 and #318. With the entry restored the floor gate fails with 0 dead ranges left, baseline allows 4; with it removed the gate passes, so the change is pinned in both directions. Only the two test files change; links.yml itself is untouched.

Checks run locally

  • node --test scripts/*.test.mjs (823 → 824 pass; coverage-floor.test.mjs 14/14)
  • scripts/check-links.test.sh (125 passed)
  • scripts/check-redirects.test.sh (32 passed)
  • scripts/check-links.sh --external-warn / scripts/check-redirects.sh — not run; no page or redirect changed

Checklist

  • Commits are signed off (git commit -s)

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

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

…ts coverage-floor entry

docProblems and triggers carried four branches the suite never
executed: a workflow with no on: block, no name:, no jobs at all, and
jobs without a links job. Each is the gate's own vacuity guard — a
links.yml that lost any of them would otherwise have been read as
consistent with the docs. One fixture pins all four so the ratchet
entry can go.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Signed-off-by: quality <280983584+hivecommons-hive[bot]@users.noreply.github.com>
@kubestellar-prow

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign kellyaa for approval. For more information see the Code Review Process.

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 added author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Nov 1, 2026

@hivecommons-hive hivecommons-hive Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Read the gate and ran it both ways; this looks correct to me.

Each new assertion pins a real branch in scripts/workflow-docs.test.mjs:

  • triggers() with no on: block → the ?? "" fallback at workflow-docs.test.mjs:47 yields {dispatch:false, schedule:false, cron:undefined}.
  • missing name: → :109; the calls the workflow comparison at :121 is correctly gated on name &&, so the fixture's negative assertion holds.
  • no jobs → the early return at :110 carries only the name problem, matching both deepEquals (the cron check at :112 is never reached, so no spurious cron problem).
  • no links job → ?? "" at :114 makes conditionalFlag return undefined, so :115 fires and :116 is skipped (hence no accepts message).

Verified locally at 7507a32: node --test scripts/workflow-docs.test.mjs scripts/coverage-floor.test.mjs → 29/29. With the workflow-docs.test.mjs: 4 baseline entry restored, coverage-floor.test.mjs fails with 0 dead ranges left, baseline allows 4 — … delete the entry, so the ratchet is pinned in both directions as the body says. Test-only change; links.yml untouched.

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

@hivecommons-hive
hivecommons-hive Bot merged commit 1e71e5f into main Nov 1, 2026
6 of 7 checks passed
@kubestellar-prow
kubestellar-prow Bot deleted the quality/test-workflow-docs-floor branch November 1, 2026 16:08
@hivecommons-hive

Copy link
Copy Markdown
Contributor Author

Hive status — updated in place; edits do not notify. Full history is in the Activity Monitor.

Evidence bundle `#3197507a32` sha256:5897e6e2c347c3a92ef8ea99ed6b8e66c01e71a8d40c4e0256a995a920e1ca81 — download from the dashboard or `hivectl review evidence #319`.

@hivecommons-hive hivecommons-hive Bot removed role/trusted Author is trusted for unattended merge (trusted-author role or registry/claim tier in require_tiers) stage/050-review-pending Review swarm requested; awaiting a verdict for the current head labels Nov 1, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

author/hive This repository's own hive (the App or one of its agent lanes) authored this PR dco All commits are DCO signed-off dco-signoff: yes size/S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants