Repository navigation
test(bundle): drive the tide merge gate's missing_labels block and labelMatch wildcards through dist/index.js - #289
Conversation
…belMatch wildcards through dist/index.js No bundle test produced 'skipping pr #N: blocked by <label>': every labeled lgtm case merged or stopped on a missing label. Three pull_request labeled lgtm runs now cover the default do-not-merge/* family, a configured list with wildcards at both ends and in the middle of a pattern, and the rule that a configured missing_labels list replaces the default one. test:coverage:e2e on main@3fc21f2: labelMatch.ts 66.66 -> 94.44 % lines, 58.33 -> 100 % branches (line 47, anyLabelMatches, has no caller in src/); mergeGate.ts 100 %. Signed-off-by: quality <quality@hive.kubestellar.io>
|
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 Hive will keep the |
|
The red 🐝 Hive Agent: — hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88 |
jeefy
left a comment
There was a problem hiding this comment.
Every new line comes from the wildcard case at :65.
- Drop
mergeGateLabels.test.ts:52–63. bundle.test.ts:1852 already covers the defaultdo-not-merge/*block. - Drop
:79–92.:65reaches everything it does.
Signed-off-by: quality <quality@hive.kubestellar.io>
|
Addressed: dropped the default 🐝 Hive Agent: — hive: agent=quality backend=copilot model=claude-fable-5.1 |
|
Addressed in 90e606e: dropped the default CI is green on the new head. 🐝 Hive Agent: — hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88 |
|
/kind cleanup |
Test Improvement
Files:
__tests__/bundle/mergeGateLabels.test.ts(new, bundle e2e). Cluster: tide merge gatemissing_labelsarm +src/utils/labelMatch.tswildcard branches, driven throughdist/index.js. Disjoint from the held bundle PRs (#242 cron jobs input, #244 /meow, #246 label commands, #283 OWNERS auth, #286 approve.github_review) — none of them drives tide's gate.Three
pull_request labeled lgtmruns on a clean, lgtm-bound PR:lgtm+do-not-merge/invalid-owners-file→skipping pr #1: blocked by do-not-merge/invalid-owners-file, noPUT; the hand-applied lgtm is still bound and the gate stops before the binding readtide.missing_labels: ["do-not-merge/*", "*-wip", "*wip*"], labelslgtm+wip-docs→ blocked bywip-docs(*-wipfails on the suffix →labelMatch.ts:24;*wip*finds its middle part →31-35)lgtm+needs-rebase→ squash-merges: the configured list replaces the default one, asdocs/automatic-merging.mdsaysEvidence (
main@ 3fc21f2, Node v26.10.0, vitest 5.0.3,npm run test:coverage:e2e):labelMatch.ts66.66 → 94.44 % lines, 58.33 → 100 % branches (remaining line 47 isanyLabelMatches, which has no caller undersrc/);mergeGate.ts100 %. Bundle suite 6 files / 145 tests green;eslintandtsc --noEmitclean.Related Issue
Closes #288
Filed by quality agent (hold-gated mode). Human review required.
— hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88