Mostrar Comentarios de PR
Lista todos los comentarios no resueltos en una solicitud de extracción como una tabla.
Entrada
Determine el número de PR en este orden:
- Inferir del contexto actual de la conversación.
- Analizar desde el nombre de la rama actual (ej.
APIF-1234/some-feature→ buscar un PR en esa rama). - Si es ambiguo, preguntar al usuario.
Proceso
# Encontrar número de PR desde la rama actual
gh pr list --head "$(git rev-parse --abbrev-ref HEAD)" --json number,url --jq '.[0]'
# Obtener todos los comentarios de revisión + comentarios de incidencia
gh pr view <PR> --json reviews,comments
# O obtener comentarios en línea
gh api repos/:owner/:repo/pulls/<PR>/comments
gh api repos/:owner/:repo/issues/<PR>/comments
Usa gh api para obtener:
- Comentarios de revisión de PR (en línea, sobre el diff):
GET /repos/{owner}/{repo}/pulls/{pull_number}/comments- Estos incluyen campos
path(archivo) yline(ooriginal_line).
- Estos incluyen campos
- Comentarios a nivel de incidencia (generales):
GET /repos/{owner}/{repo}/issues/{pull_number}/comments- No tienen archivo/línea (son a nivel de PR); deja Ubicación en blanco.
- Hilos de revisión con estado de resolución:
gh pr view <PR> --json reviewThreads
Filtra solo los hilos no resueltos (isResolved: false). Para comentarios que no están en un hilo, inclúyelos todos.
Salida
Renderiza una tabla en markdown:
| # | Autor | Categoría | Mensaje | Ubicación |
|---|---|---|---|---|
| 1 | @alice | pregunta | "¿Por qué esto es un ConcurrentDictionary?" | Foo.cs:42 |
| 2 | @bob | bug potencial | "Esto causará un null ref en producción..." | Bar.cs:17 |
| 3 | @carol | sugerencia | "Considera extraer esto a un método auxiliar." | (Nivel de PR) |
Categoría — lee el cuerpo del comentario y elige 1–2 palabras que mejor capturen su naturaleza. No hay una lista fija; infiere libremente. Ejemplos de valores adecuados: pregunta, bug potencial, bug crítico, debe arreglarse, advertencia, sugerencia, recomendación, limpieza, problema de prueba, info — pero cualquier etiqueta concisa que refleje con precisión el comentario es válida.
Ubicación — para comentarios en línea sobre el diff usa `archivo:línea` (usa el campo line; como respaldo original_line). Para comentarios a nivel de PR escribe _(Nivel de PR)_.
Incluye una línea de resumen debajo de la tabla:
N comentario(s) no resuelto(s) en PR #NNN —
<título del PR>