Proyecto Evidencias - MiraPdS/mira GitHub Wiki

Proyecto - Evidencias

Toda afirmación importante de la Wiki debe poder verificarse. Aquí se reúnen las evidencias, priorizando enlaces y artefactos reproducibles por sobre capturas: una captura muestra un estado puntual; un PR, un run de CI o una URL viva se pueden revisar.

Cómo se produce la evidencia

Evidencia Dónde vive Dura
Pull Requests revisados PRs del repositorio permanente
Historias con criterios de aceptación Jira y backlog permanente
Trazabilidad historia → PR → pruebas Requisitos y trazabilidad permanente
Runs de CI (formato, lint, tipos, pruebas, build) GitHub Actions logs: 90 días
Reporte de cobertura HTML artefacto cobertura de cada run 90 días
Cobertura y resultados de pruebas por entrega página Evidencias-Entrega-N, congelada desde el run de CI del commit del release permanente
Ambiente desplegado mira-pds.vercel.app · /api/health mientras exista la demo
Release y tag de cada entrega Releases permanente

Los artefactos de GitHub Actions expiran. Por eso la cobertura y los resultados de cada entrega se congelan en el repositorio con npm run wiki:evidencias -- entrega-N: el script toma el run de CI verde del commit actual, descarga su artefacto y escribe las tablas. Así la evidencia dice "esto lo produjo CI, sobre este commit", y no "funcionaba en mi máquina".

Protección de main

main exige Pull Request, una aprobación, conversaciones resueltas y los checks Lint, tipos y pruebas y Build en verde; no admite push forzado ni borrado.

Se puede verificar en cualquier momento con la API de GitHub (salida del 2026-10-09, al preparar el release):

gh api repos/MiraPdS/mira/branches/main/protection
{
  "required_status_checks": { "strict": false, "contexts": ["Lint, tipos y pruebas", "Build"] },
  "required_approving_review_count": 1,
  "dismiss_stale_reviews": true,
  "required_conversation_resolution": true,
  "allow_force_pushes": false,
  "allow_deletions": false,
  "enforce_admins": false
}

enforce_admins: false: los administradores del repositorio pueden saltarse la regla, y en la Entrega 1 ocurrió dos veces:

  • El PR de release #33 se fusionó sin una aprobación registrada (sus checks obligatorios estaban en verde).
  • Cuatro commits que solo tocan el README.md (datos del equipo) se empujaron directo a main el 2026-10-09; se integraron de vuelta a develop en #35.

Pendiente para la Entrega 2: activar enforce_admins para que la regla aplique también a los administradores.

Entrega 1

Ambiente desplegado

  • Health check con verificación de base: /api/health → {"status":"ok","db":"ok"}.
  • Pruebas que lo cubren: health.integration.test.ts (base arriba → 200, base caída → 503).
  • Cómo se montó: docs/despliegue.md; PR #24.