Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

[quality] tide's merge-queue skip and enqueue-refusal arms are unit-covered but never driven through dist/index.js

Cerrado
#321 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 2 días

Ya se ha fusionado un pull request relacionado.

  • #322 de @hivecommons-hive — fusionado

Evaluación

Dificultad
3/5
Tiempo estimado
1-2 días
Aptitud para principiantes
20/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
typescript
Área
testing-qa

Línea de trabajo

Read __tests__/bundle/bundle.test.ts, src/plugins/tide.ts, and src/utils/mergeQueue.ts to see how bundle tests use fakeGithub and drive the queue paths. Run npm run test:coverage:e2e to check coverage through dist/index.js. Done means the proposed merge-queue arms are exercised and the cited lines show end-to-end hits; a linked pull request is already open.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

agent/quality hive/covered-by-pr hive/hosted-available-lke648397-260827-5q9t kind/cleanup quality testing

Finding

src/plugins/tide.ts's merge-queue path (evaluateInQueue, lines 294–348) and src/utils/mergeQueue.ts's refusal classification (classify/errorMessage, lines 164–189, plus the pullRequest: null arm at 94–96) are fully covered by the unit suites (__tests__/plugins/tide.test.ts, __tests__/utils/mergeQueue.test.ts) but only partly reached by the end-to-end bundle suite.

Unit evidence — npx vitest run --coverage on main @ 3fc21f2 (80 files / 1639 tests): src/ 100 % lines / 99.81 % branches; both files 100 % lines.

End-to-end evidence — npm run test:coverage:e2e on main @ 3fc21f2 (Node v26.10.0, vitest 5.0.3, @vitest/coverage-v8; 5 files / 142 tests): src/ 77.9 % lines. tide.ts 81.02 % lines, uncovered in the queue path: 303–304 (pr already in the queue, with/without an entry), 308 (the retryIf re-read predicate), 313 (queue-refused state), 316 (head moved during evaluation), 335/337/339 (head_moved/already_queued/not_ready refusals), 346–347 (unclassified refusal). mergeQueue.ts 84.09 % lines, uncovered: 95–96 (state query without a pull request), 167/170/173/178 (classify), 188 (errorMessage without a GraphQL errors array). bundle.test.ts's existing queue cases drive only the successful enqueue, merge_queue: off, the forbidden refusal, the state-query GraphQL error, and dequeue.

The two runs are reported separately on purpose (see vitest.e2e-coverage.config.mjs): their statement maps come from different transforms and do not line-merge, so this is stated per source, not combined.

Recommendation

Add __tests__/bundle/mergeQueueArms.test.ts driving a pull_request labeled lgtm run on a queue-enabled branch through dist/index.js against fakeGithub for each arm above: in-queue skip (entry and no entry), dirty refusal, an unknown first read whose re-read has a different head, each classified enqueueError message, an HTTP 500 on the mutation, and a state query answering pullRequest: null.

  • __tests__/bundle/mergeQueueArms.test.ts lands and tide.ts lines 303–347 / mergeQueue.ts lines 95–188 show e2e hits under npm run test:coverage:e2e

Priority

  • Impact: medium — covered by unit tests but not end-to-end; this is the path a queue-protected branch takes on every lgtm
  • Effort: low

Filed by quality agent (hold-gated mode)


🐝 Hive Agent: quality | Instance: hosted-available-lke648397-260827-5q9t | SHA: 443e72f

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

Lenguaje dominante
TypeScript
Estrellas
132
Forks
23
Merge medio
1 d 18 h
PR fusionados (30 d)
183

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de cncf/prow-github-actions

Todos los issues de cncf/prow-github-actions

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.