[quality] /retest and /ok-to-test's refusal, no-op and failure arms never run through dist/index.js
I maintainer di solito rispondono entro 1 giorno
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Ferma
- Stack tecnologico
- github, node.js, typescript
- Ambito
- testing-qa
Direzione di ricerca
Start with __tests__/bundle/bundle.test.ts, __tests__/bundle/triggerTestAndLgtmCancel.test.ts, and the fake GitHub setup they use; then read src/issueComment/trigger.ts to map the listed arms. Add bundle-level cases in __tests__/bundle/triggerArms.test.ts and run npm run test:coverage:e2e. Done means the uncovered arms are exercised through dist/index.js with the specified outcomes and request sequences asserted.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Finding
src/issueComment/trigger.ts (the /retest, /test and /ok-to-test commands) is fully covered by the unit suite but only its happy paths are exercised end-to-end against the shipped bundle.
Unit evidence — npx vitest run --coverage __tests__/issueCommentTest/trigger.test.ts __tests__/pullReq on main @ 3fc21f2 (Node v26.10.0, vitest 5.0.3): trigger.ts | 100 | 100 | 100 | 100.
End-to-end evidence — npm run test:coverage:e2e on main @ 3fc21f2 (the source-mapped bundle from #274, __tests__/bundle/*.test.ts, 142 tests): trigger.ts 108/132 statements, 81.67 % lines. Uncovered through dist/index.js:
| lines | arm |
|---|---|
| 35 | /retest on an issue that is not a pull request |
| 43–51 | /retest with no failed run: the "N in progress, N successful" summary comment, with and without a summary |
| 56–57 | /retest when every rerun-failed-jobs answers 409: "already being re-run" |
| 114 | /ok-to-test on an issue that is not a pull request |
| 121, 127–128 | /ok-to-test on a pull request already carrying ok-to-test with nothing awaiting approval |
| 155–156, 158 | approvePendingRuns 403 (names actions: write) and any other approval failure |
| 216 | /ok-to-test by the pull request author (refuseAuthor) |
| 239 | the listWorkflowRunsForRepo failure |
| 265 | a rerun failure that is neither 409 nor 403 |
| 299 | the rocket reaction failing (warning only) |
| 309 | refuse when the refusal comment itself cannot be posted |
| 188, 207, 293 | payload-shape guards: pull_request without a head sha, issue_comment without an issue number, a comment without an id |
The existing /retest and /ok-to-test cases in __tests__/bundle/bundle.test.ts (issue_comment trigger commands on a pull request) and the /test cases in __tests__/bundle/triggerTestAndLgtmCancel.test.ts cover only the success paths plus /test's 409/403 arms. None of the open hold-gated bundle PRs (#242–#302) touch trigger.ts.
Recommendation
- add
__tests__/bundle/triggerArms.test.tsdriving each/retestand/ok-to-testarm above throughdist/index.jsagainst the fake GitHub, asserting the exit status,::error::lines, the comment bodies and the exact request sequence after authorization (hold-gated PR open)
The three payload-shape guards (188, 207, 293) are deliberately left out: they need a malformed event payload rather than a GitHub API answer, and the unit suite already pins them.
Priority
- Impact: medium — unit-covered, e2e-uncovered; these are the arms a contributor actually hits (
/retestwith nothing failed,/ok-to-testby the author, a token withoutactions: write) - Effort: low
Filed by quality agent (hold-gated mode)
🐝 Hive Agent: quality | Instance: hosted-available-lke648397-260827-5q9t | SHA: 3fc21f2
— hive: agent=quality backend=copilot model=claude-fable-5.1 copilot=1.0.88
- Lingua principale
- TypeScript
- Stelle
- 123
- Fork
- 24
- 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 2 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
-
bot:ai-assisted status:untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
midnightntwrk/midnight-js#1424 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
mksglu/context-mode#1268 ·
I maintainer di solito rispondono entro 5 giorni
-
Edit:Apertacheck:failed streams:edit
Difficoltà 2/5 1-3 ore Idoneità per principianti 60/100
iptv-org/iptv#54352 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
[Table] reserveSelectedRowOnPaginate=false 时表头全选包含其他页数据Forse già presa @dvd233 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Tencent/tdesign-react#4416 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
area:widget bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 66/100
interledger/publisher-tools#894 ·
I maintainer di solito rispondono entro 1 giorno