Metadatos de verificación
- Ruta:
/transparency/dependency-ci/ - Última verificación:
- Próxima revisión pendiente:
- Alcance de la verificación: Política de paquetes npm, comportamiento del archivo de bloqueo, flujos de trabajo de GitHub Actions y documentación de lanzamiento.
- Previous version: Dependency and CI/CD Governance before the June 2026 tooling update
June 2026 CI/CD Tooling Update
This page now links to the complete CI/CD Tooling and Release Governance article. That article documents local hooks, public-health gates, release-ledger promotion, production receipts, and portability work in one place.
Política de dependencia de npm
PayCal utiliza una política de dependencia de archivos de bloqueo primero para las herramientas de JavaScript y las comprobaciones de automatización del navegador.
- Install mode for automation:
npm cionly (frozen lockfile install). - Lockfile source of truth:
package-lock.jsonis required for deterministic CI installs. - Declared package manifest:
package.jsondefines lint, smoke, and accessibility command surfaces. - Override controls: dependency overrides are declared in
package.jsonto pin selected transitive risk points.
If npm ci reports a mismatch between package.json and package-lock.json, the lockfile is updated intentionally in a dedicated maintenance change before CI reruns.
Para qué se utiliza npm
| Propósito | Comando | Control primario |
|---|---|---|
| Comprobaciones de pelusa y fregadero de JavaScript | npm run test:js |
Reglas ESLint + comprobaciones de políticas de receptor JS |
| Controles de humo del dramaturgo | npm run test:smoke:ui |
Comportamiento de ruta a nivel de navegador y validación de regresión |
| Verificaciones de políticas y rutas de accesibilidad | npm run test:a11y:all |
Conjuntos de pruebas WCAG, reflujo, contraste y ARIA |
| Generación de matriz de contraste. | npm run test:a11y:contrast |
Verificación de conformidad de contraste a nivel de tema |
Modelo de puerta CI/CD
PayCal separa los controles de calidad entre los flujos de trabajo para que las fallas sean explícitas y rastreables:
.github/workflows/javascript.yml: Node 20 +npm ci+ JavaScript quality gates..github/workflows/phpunit.yml: staged backend validation from fast gate to deep verification and artifacts..github/workflows/phpstan.yml: strict static analysis with baseline-blocking policy.
Los flujos de trabajo de higiene de versiones tratan las puertas fallidas como bloqueadores y requieren una nueva ejecución después de las correcciones.
Limitaciones conocidas
- Las páginas de transparencia pública se sincronizan manualmente con los cambios de flujo de trabajo y paquetes en los ciclos de lanzamiento.
- El comportamiento de la canalización de CI está documentado en varias páginas y puede variar si las actualizaciones no se aplican de manera consistente.
Mejoras planificadas en la documentación
- Publique una matriz de puerta canónica que asigne cada trabajo de CI al estado de propietario, activador, comando y bloqueo.
- Agregue una instantánea de gobierno de dependencia trimestral que incluya paquetes npm directos, justificación y cadencia de actualización.
- Agregue un elemento de la lista de verificación de lanzamiento para confirmar que los documentos de gobernanza de npm permanecen alineados con el flujo de trabajo y la política de archivos de bloqueo.
Cómo verificar
# Reproduce JavaScript CI gates locally npm ci npm run test:js # Reproduce broader release-level accessibility gate npm run test:a11y:all # Inspect workflow definitions cat .github/workflows/javascript.yml cat .github/workflows/phpunit.yml cat .github/workflows/phpstan.yml
Related transparency pages: CI/CD Tooling and Release Governance, Testing and Validation Governance, and Verification and Governance.