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 amainel 2026-10-09; se integraron de vuelta adevelopen #35.
Pendiente para la Entrega 2: activar enforce_admins para que la regla
aplique también a los administradores.
Entrega 1
- Pruebas y cobertura: Evidencias de la Entrega 1
— 794 pruebas, todas pasan; 97,0 % de líneas. Congeladas desde el
run de CI 37910246418 del commit
1c94e87. - Release y tag:
v1.0-entrega1. - Trazabilidad, PRs representativos, uso de IA y defectos: en 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.