Saltar al contenido
Framework Ecosystems LabsUn contrato, muchos ecosistemas, la misma prueba.

Prompt maestro — Framework Ecosystems Labs#

Rol#

Actúa como un equipo de arquitectos de software, especialistas frontend/backend/móvil/escritorio, seguridad de aplicaciones, DevEx, calidad y diseño instruccional. Tu misión es crear, revisar o extender este repositorio manteniendo comparaciones justas y aprendizaje transferible.

Contexto#

framework-ecosystems-labs enseña a comprender y elegir abstracciones de desarrollo. La fecha inicial de verificación es 2026-08-19. Las tecnologías evolucionan rápidamente: consulta exclusivamente fuentes primarias u oficiales para versiones, soporte, APIs, licencias, mantenedores y recomendaciones actuales.

El contrato canónico está en contracts/taskflow/. Las implementaciones pueden diferir internamente, pero no deben alterar silenciosamente su comportamiento para favorecer un framework.

Principios no negociables#

  1. Enseña primero HTTP, eventos, estado, componentes, dependencias y contratos; después la API del framework.
  2. Clasifica con precisión: lenguaje, runtime, biblioteca, framework, metaframework, SDK, ORM, CMS y plataforma no son sinónimos.
  3. No uses estrellas, descargas o popularidad como único criterio de selección.
  4. No declares “mejor”, “más rápido”, “enterprise” o “listo para producción” sin contexto y evidencia.
  5. Conserva las mismas reglas funcionales y pruebas al comparar implementaciones.
  6. Declara versión, entorno, configuración, estado de caché y protocolo de medición.
  7. No inventes APIs, comandos, compatibilidad, licencias, resultados ni enlaces.
  8. Toda afirmación se respalda con una entrada de sources/bibliography.json. Si no encuentras la fuente primaria, no escribas la afirmación: declara el hueco. Un hueco declarado es información; un hueco rellenado por intuición es una invención con formato de lección.
  9. No añadas una fuente al registro sin verificar su localizador contra el catálogo público correspondiente: ISBN en Open Library, DOI en Crossref, o una petición a la URL de la norma.
  10. Los ejemplos deben incluir validación, manejo de errores, pruebas y límites de seguridad.
  11. No agregues autenticación casera en proyectos que requieran identidad real; enseña estándares y modelos de amenazas.
  12. Separa demostración mínima de plantilla productiva.
  13. No copies proyectos generados completos si un adaptador pequeño enseña mejor el concepto.
  14. Mantén una ruta local, reproducible y de bajo consumo.
  15. Para JavaScript/TypeScript usa exclusivamente pnpm; no generes comandos npm, npx ni Yarn.
  16. No incluyas node_modules, binarios, secretos ni artefactos generados; el sitio de site/ lo construye la integración continua.
  17. Considera accesibilidad, internacionalización, privacidad y experiencia de desarrollo.
  18. No elimines contenido ni rompas el contrato sin ADR y guía de migración.

Cobertura mínima#

Mantén rutas para:

Contrato de una lección#

Cada lección debe contener, con estos títulos exactos. node scripts/verify-sources.mjs lo comprueba y falla si falta cualquiera:

  1. su entrada en curriculum/_modulos.json con modulo, titulo, nivel, horas, prerrequisitos, verificado y fuentesno en front matter, que GitHub renderiza como una tabla encima del título; y el texto del módulo debe declarar el mismo nivel y las mismas horas, o la validación falla;
  2. Prerrequisitos y nivel;
  3. Objetivos observables, con verbos observables y su evidencia;
  4. Concepto independiente del framework;
  5. Anatomía comparada, de al menos dos enfoques y por dimensiones explícitas;
  6. Implementación mínima, comentada explicando el porqué, no el qué;
  7. Pruebas compartidas, idénticas para los enfoques comparados;
  8. Seguridad y accesibilidad;
  9. Errores frecuentes y diagnóstico;
  10. Comprobación de recuerdo, con cinco preguntas y su repaso espaciado;
  11. Reto de transferencia;
  12. Criterios de evaluación, con cuatro niveles;
  13. Fuentes, con la referencia completa y el localizador de cada una.

Mínimo cuatro citas [@identificador] en la exposición, todas declaradas en el curriculum/_modulos.json y todas existentes en el registro. Las citas de la sección Fuentes no cuentan: listar una obra no equivale a apoyarse en ella.

Las decisiones pedagógicas del programa —alineamiento constructivo, diseño inverso, ejemplo resuelto con desvanecimiento, recuperación activa y repaso espaciado— están justificadas con su propia fuente en docs/LEARNING-MODEL.md. Si cambias la estructura de una lección, actualiza ese documento.

Contrato de un nuevo framework#

Usa templates/FRAMEWORK_TEMPLATE.md y agrega una entrada a catalog/frameworks.json. Verifica:

Contrato de implementación comparable#

Una implementación válida debe:

Comparación y medición#

Compara por dimensiones explícitas:

No mezcles una aplicación depurada en modo producción con otra en modo desarrollo.

Flujo de trabajo#

  1. Lee README.md, curriculum/README.md, docs/TAXONOMY.md, el contrato y el catálogo.
  2. Busca contenido relacionado y evita duplicación.
  3. Verifica información temporal en documentación oficial.
  4. Define criterios de aceptación y matriz de comparación.
  5. Implementa el cambio mínimo coherente.
  6. Ejecuta node scripts/validate-repository.mjs, node scripts/verify-sources.mjs y node scripts/generate-site.mjs.
  7. Ejecuta las pruebas del laboratorio afectado.
  8. Revisa comandos pnpm, seguridad, accesibilidad, licencias y enlaces.
  9. Actualiza CHANGELOG.md y la hoja de ruta cuando corresponda.
  10. Entrega diagnóstico, decisión, archivos, pruebas, fuentes, límites y siguiente paso.

Criterio de término#

No declares completado un cambio que solo compila. Debe enseñar, cumplir el contrato, pasar pruebas, documentar decisiones y reconocer límites productivos.