Flujo de trabajo del sitio
Flujo de trabajo extremo a extremo para a11yequitas.org — desde Zed + Claude Code en el editor, pasando por agentes de IA orquestados, auditorías de accesibilidad y seguridad, y finalmente hasta producción en Rocky Linux. Cada paso es una puerta para el siguiente; nada se publica sin una auditoría limpia.
10 pasos, desarrollo → producción
1. Desarrollar en Zed con Claude CodeZed IDE conduce la edición del árbol de trabajo local; Claude Code (este asistente) ejecuta comandos slash y skills directamente contra él.
2. Editar contenido y estructura con orquestación de IALos agentes de Claude Code (caveman investigator / builder / reviewer, skill ui, skill wcag-aaa-audit) operan en paralelo. Una persona revisa cada diff antes del commit — no hay fusiones solo de IA.
3. Auditar y corregir con Playwright + Vitesttests/a11y.spec.ts ejecuta axe-core + Alfa en todas las rutas × 6 combinaciones de tema y tipografía. Vitest cubre regresiones a nivel de componente. Ambos deben pasar antes del commit.
4. Pruebas con lectores de pantalla (VoiceOver, NVDA, TalkBack)Pasadas manuales con lista de verificación AAA: VoiceOver + Safari (macOS/iOS), NVDA + Firefox (Windows), TalkBack + Chrome (Android). Cada pasada exporta JSON a public/reports/screen-readers/ y se muestra en la página de auditoría. Captura lo que solo se oye: calidad de los anuncios, orden de lectura, finalización de tareas con pantalla apagada.
5. Auditoría de seguridad y correcciones con Vitest + fallowfallow (escáner estático de seguridad en Rust) audita la salida de build buscando vulnerabilidades web comunes. Vitest sostiene la línea de regresión de seguridad. Los hallazgos se corrigen en la fuente antes de cualquier push.
6. Commit y push a Codeberg (vía subtree de Forgejo)Un Forgejo autoalojado en un host Tailscale-only es el remoto principal; Codeberg recibe el push del subtree de a11yequitas.org (git subtree push --prefix=a11yequitas.org codeberg main). Espejo público, con licencia MIT.
7. Pasada final de auditoría antes de pnpm buildLa suite final de 264 pruebas de Playwright corre de extremo a extremo. Cero violaciones de axe-core Y de Alfa es el único criterio de aprobación. El build solo continúa si ambos motores quedan limpios.
8. Construir export estático y generar índice de Pagefindpnpm build ejecuta next build (export estático a out/) y luego pagefind --site out, que recorre cada <main data-pagefind-body> y escribe un índice de búsqueda en el lado del cliente, segmentado, en out/pagefind/. ~3.8k palabras, sin nube — la búsqueda es completamente local en el navegador de la persona visitante.
9. Commit final y push a CodebergTras una auditoría limpia y un build + índice exitosos, se envía el commit listo para producción. El subtree de Codeberg espeja el árbol de trabajo de forma exacta.
10. Desplegar en producción en Rocky LinuxEl código se publica en Codeberg y se trae a los hosts de producción Rocky Linux por Tailscale. Nginx sirve el export estático — sin servidor de JS en tiempo de ejecución, sin base de datos.
Por qué este flujo
- Auditoría con dos motores (axe-core + Alfa) captura ~1.5× las violaciones de cada motor por separado — ver la página de auditoría.
- Forgejo local + Codeberg público hacen que a11yequitas.org esté versionado de forma privada (solo Tailscale) y a la vez sea inspeccionable públicamente (MIT, código abierto).
- Export estático servido por Nginx en pods de Rocky Linux — sin servidor de JS en tiempo de ejecución, sin base de datos, sin superficie para vulnerabilidades de runtime.
- Puerta de auditoría antes del build implica que el sitio desplegado nunca está más roto de lo que detectó la suite de pruebas.
