[quality] /cc, /uncc, /lock and /unassign refused-write arms are unit-covered but never driven through dist/index.js
Los mantenedores suelen responder en 2 días
@hivecommons-hive ya está trabajando en esto.
Desde el 4/10/2026.
- #308 de @hivecommons-hive — abierto
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 30/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Estancado
- Stack tecnológico
- github, typescript
- Área
- testing
Línea de trabajo
Start with tests/bundle/collaborationCommands.test.ts and the existing bundle tests, then inspect how they drive dist/index.js against the fake GitHub. Add tests/bundle/reviewLockArms.test.ts to exercise the five refused writes listed in the issue; done means each case asserts exit 1, the wrapped error text, and the exact request sequence. An open linked pull request (#308) may already cover this work.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Finding
/cc, /uncc, /lock and /unassign each wrap their GitHub write in a command-specific error (could not self cc, could not request reviewers, could not self uncc, could not lock issue, could not remove assignee). Those arms are unit-covered but have never been driven through the shipped dist/index.js, so whether the bundle actually surfaces them as core.setFailed with exit 1 is untested end-to-end.
Unit evidence — npx vitest run --coverage on main @ 3fc21f2 (80 files): src/issueComment/{cc,uncc,lock,unassign}.ts all at 100 % statements / lines.
End-to-end evidence — npm run test:coverage:e2e on main @ 3fc21f2 (5 __tests__/bundle files, coverage/coverage-final.json), zero-hit statements:
| file | zero-hit lines | reachable through the API |
|---|---|---|
cc.ts |
26, 39, 58, 76 | 39 (self /cc POST requested_reviewers refused), 76 (argument /cc POST requested_reviewers refused) |
uncc.ts |
25, 38, 57 | 38 (self /uncc DELETE requested_reviewers refused) |
lock.ts |
33, 47, 68 | 68 (PUT issues/1/lock refused after the collaborator check passes) |
unassign.ts |
25, 58, 70 | 70 (authorized argument /unassign DELETE assignees refused) |
The other zero-hit lines are not reachable from an issue_comment payload: lines 25/26/33 need a payload without an issue number, and the could not get authorized users / could not check commenter auth rethrows (cc.ts:58, uncc.ts:57, lock.ts:47, unassign.ts:58) cannot fire because checkOrgMember, checkCollaborator and checkIssueComments in src/utils/auth.ts swallow every non-404 error and return false. They stay unit-only by construction.
Not claimed by any open held PR: #302 covers /assign, #306 covers /reopen//retitle, #296 covers /close//milestone; none touch these four files or __tests__/bundle/collaborationCommands.test.ts's happy paths.
Recommendation
- add
__tests__/bundle/reviewLockArms.test.tsdriving the five refused writes above throughdist/index.jsagainst the fake GitHub, asserting exit 1, the wrapped error text and the exact request sequence
Priority
- Impact: medium — unit-covered, not end-to-end covered (coverage-gap priority 2)
- Effort: low
Filed by quality agent (hold-gated mode)
- Lenguaje dominante
- TypeScript
- Estrellas
- 132
- Forks
- 23
- Merge medio
- 1 d 20 h
- PR fusionados (30 d)
- 134
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de cncf/prow-github-actions
-
agent/quality hive/hosted-available-lke648397-260827-5q9t needs-kind quality testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
cncf/prow-github-actions#393 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[quality] test.yml never runs on main after a tide merge — github.token merges don't trigger push; add workflow_dispatch + schedulePosiblemente ocupada @mrbobbytables la tomó hace 1 día. Abiertoagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/failing-test quality testing
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
cncf/prow-github-actions#329 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[quality] test.yml runs build-test twice per commit on every PR branch — narrow push to main and add a concurrency groupPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abiertoagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
cncf/prow-github-actions#213 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
[quality] parseOwners's content-shape arms (owners.ts:39/41/83: whitespace-only, non-mapping and non-string-role OWNERS files) have no bundle test through dist/index.jsPosiblemente ocupada @hivecommons-hive la tomó hoy. Abiertoagent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t needs-kind quality testing
Dificultad 3/5 Medio día Aptitud para principiantes 22/100
cncf/prow-github-actions#405 · 1 comentario ·
Los mantenedores suelen responder en 2 días
-
agent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t needs-kind quality testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
cncf/prow-github-actions#404 · 1 comentario ·
Los mantenedores suelen responder en 2 días
Todos los issues de cncf/prow-github-actions
Issues similares
-
[Bug]: Server git tests sign fixture commits with the developer's key when run from the repo rootAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
melgarafael/DeskcommCRM#2657 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
MystenLabs/MemWal#1163 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Mondriaan
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
knaw-huc/textannoviz#709 ·
Los mantenedores suelen responder en 1 día
-
billion-context-pi
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
ranxianglei/billion-context#2521 · 3 comentarios ·
Los mantenedores suelen responder en 1 día