[quality] bundle e2e suite never drives the fixed-label (/good-first-issue, /remove-help) or built-in prefixed (/lifecycle, /stage, /status, /priority) commands through dist/index.js
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 76/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- github-actions, typescript
- Ambito
- testing
Direzione di ricerca
Start with tests/bundle/bundle.test.ts and the fake API, then read src/issueComment/handleIssueComment.ts, src/labels/fixed.ts, and src/labels/prefixed.ts. Run npx vitest run --coverage while adding tests/bundle/labelCommands.test.ts for the listed fixed-label and prefixed-command cases. Done means dist/index.js drives each command correctly, including label encoding, exclusivity, no-op behavior, and configuration failures.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Finding
__tests__/bundle/ is the only suite that runs the committed dist/index.js (against fakeGithub.ts). Its issue_comment inventory on main @ c48bd6d drives /help, /kind, /remove-kind, /label, /remove-label and the dynamic /level, but never the other two label-command families that src/issueComment/handleIssueComment.ts dispatches:
- Fixed-label commands (
src/labels/fixed.ts, Prow's help plugin):/good-first-issue,/remove-help,/remove-good-first-issue. Theremoveset differs per command (/remove-helpdrops bothhelp wantedandgood first issue;/remove-good-first-issuedrops onlygood first issue,docs/commands.md:66-68) and the labels contain spaces, so theDELETE .../labels/{name}encoding is a distinct path from every<prefix>/<value>label the suite already exercises. - Built-in prefixed commands (
src/labels/prefixed.ts:27-31):/lifecycle,/stage,/status(Prow default values,exclusive: true,docs/labeling.md:100-125) and/priority(yaml allowlist,exclusive: true). The suite's only exclusive-command test is/level, whose values come from the yaml mapping form; the built-in-defaults fallback insectionForand the documented "a configuration file must still exist in some tier" failure are not driven end to end. Neither is a comment carrying two exclusive commands at once (/stage+/status), which is where a prefix-scoped "remove stale labels" bug would show.
Evidence:
- Unit:
npx vitest run --coverageonmain@ c48bd6d, Node v26.10.0 — 69 files / 1447 tests,All files 99.83 | 98.35 | 100 | 99.82;src/labels/fixed.tsandsrc/labels/prefixed.tsat 100% lines. Unit coverage of these files is not the gap. - End to end:
grep -nE "good-first-issue|remove-help|/lifecycle|/stage|/status|/priority" __tests__/bundle/bundle.test.tsmatches only the/label good-first-issueallowlist test (alabels:entry, not the fixed command). The bundle child's V8 coverage is not captured in the report (#235), so the e2e evidence here is the driven-command inventory, not a line profile; unit and e2e evidence cannot be combined at line granularity.
Recommendation
Add __tests__/bundle/labelCommands.test.ts driving dist/index.js against the fake API for:
-
/good-first-issueaddsgood first issue+help wantedin one write; fails without writing when the repository lacks one of them -
/remove-helpdeletes both labels (case-insensitively, space-encoded) and/remove-good-first-issuedeletes onlygood first issue; a no-op read when neither is present -
/lifecycle stalewith a configuration that has nolifecyclekey: removeslifecycle/frozen, addslifecycle/stale; an unknown value fails without touching the issue;/remove-lifecycle; the documented no-configuration failure -
/stage beta+/status in-reviewin one comment each replace only their own prefix -
/priority highfrom the.prowlabels.yamlallowlist removespriority/lowfirst; an unlisted value fails;/remove-priority
Disjoint from every open hold-gated PR: #236 edits bundle.test.ts, #238 adds collaborationCommands.test.ts (/cc /uncc /unassign /retitle /lock /reopen), #240 adds triggerTestAndLgtmCancel.test.ts, #242 adds cronJobsInput.test.ts, #244 adds meow.test.ts; none touch a labelCommands file, src/labels/fixed.ts or the built-in prefixed commands.
Priority
- Impact: medium — unit-covered, not e2e-covered (coverage-gap priority 2); these are the commands Prow users type most after
/kindand/lgtm - Effort: low
Filed by quality agent (hold-gated mode)
🐝 Hive Agent: quality | Instance: hosted-available-lke648397-260827-5q9t | SHA: c48bd6d
— hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88
- Lingua principale
- TypeScript
- Stelle
- 132
- Fork
- 23
- Merge medio
- 1g 2h
- PR unite (30g)
- 98
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di cncf/prow-github-actions
-
agent/quality hive/hosted-available-lke648397-260827-5q9t kind/failing-test quality testing
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
cncf/prow-github-actions#329 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[quality] bundle e2e never drives plain /close or the /milestone refusals through dist/index.jsForse già presa @hivecommons-hive l’ha presa 3 giorni fa. Apertaagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
cncf/prow-github-actions#295 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[quality] the cron dispatcher's jobs-input error arms and the push event route are never driven through dist/index.jsForse già presa @hivecommons-hive l’ha presa 6 giorni fa. Apertaagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t needs-kind quality testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
cncf/prow-github-actions#241 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
agent/quality hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
cncf/prow-github-actions#213 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
agent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup needs-decision quality testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
cncf/prow-github-actions#209 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di cncf/prow-github-actions
Issue simili
-
feat(subscription): add Manage Subscription (Stripe portal) to the Subscription tab plan cardAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
[Feature] 通知栏合并重复消息并显示次数Apertaarea:ui enhancement issue-form:feature platform:cross-platform review: high
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
1lck/Lithe-IDEA#1092 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
developmentseed/deck.gl-raster#693 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
Marker-Inc-Korea/AutoRAG#1801 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
iii-hq/iii#2278 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno