2.3.0 — 2026-08-19
Las fuentes se ven, y se pueden comprobar
La versión anterior dejó el registro correcto pero ilegible: para saber de dónde salía una clase había que abrir un JSON. Ahora la fuente se ve donde se usa.
- Cada cita de clase muestra la edición y el localizador. Las 3 200 citas de
las 288 clases pasan a la forma
Autor — *Obra* (Editorial, año). **Uso en esta clase:** … **Localizador:** [ISBN-13 …](https://openlibrary.org/isbn/…). Editorial y año no se escriben a mano: salen de la ficha de la edición que resolvió el ISBN. - docs/FUENTES.md — la página de lectura del registro: cómo leer una cita, las 164 obras de gestión con autor, editorial, año, enlace y número de clases que las usan, las 41 fuentes oficiales con su URL y fecha de consulta, y la lista de pendientes con su motivo. Se genera desde el registro.
- El README deja de ser un tablero de cifras: una tabla compacta, las obras rectoras con su enlace y el puntero al catálogo completo.
scripts/verify-sources --writeescribe las citas de clase desde el registro, y el CI falla si alguna se desvía: una clase ya no puede decir que cita una obra distinta de la que el registro declara.- Cuatro ediciones corregidas a mano tras comprobarlas contra su ficha: The Lean Startup apuntaba a la traducción alemana y Atomic Habits a una edición self-published; The Effective Executive y The Innovator's Dilemma no tenían ISBN-13 resoluble en la edición que devolvía la búsqueda.
2.2.0 — 2026-08-19
Trazabilidad de fuentes
- Crea
sources/bibliography.json, el registro único de fuentes. Cada entrada exige un localizador resoluble: libro por ISBN-13 con dígito de control válido, artículo por DOI, norma o documentación oficial por URL https de la fuente primaria. Lo que no resuelve se marcapendientecon el motivo; no se borra ni se rellena a ojo. - Declara la obra transversal que faltaba: William Ellet — The Case Study Handbook, citada en las 288 clases porque el método de caso vertebra el programa, y hasta ahora no aparecía en ningún registro.
- Fusiona
data/official_sources.jsony la tabla escrita a mano dedocs/OFFICIAL_SOURCES.mden ese registro único. El documento pasa a generarse desde él;data/official_sources.jsondesaparece. - Normaliza el bloque de fuentes de las 288 clases a una forma canónica:
- <emisor> — *<obra>*. **Uso en esta clase:** <uso>.. Cada cita declara ahora el uso que esa clase hace de la obra, no solo la obra. El desarrollo de las clases no se toca. - Separa en el README la bibliografía de gestión de las fuentes oficiales y normas: son dos cosas distintas y caducan distinto.
Verificación
scripts/verify-sources— offline, determinista, bloquea en CI: esquema del registro, dígito de control del ISBN-13, forma canónica del localizador, toda obra citada declarada, ninguna entrada sin usar, ningún bloque de fuentes repetido entre clases y las cifras publicadas cuadrando con el registro.scripts/refresh-sources— en red, manual o programada, no bloquea: resuelve ISBN enopenlibrary.orgy DOI enapi.crossref.orgcomparando título y autores, hace GET a cada URL de norma, actualizaverified_onyaccessed, e informa de lo que dejó de resolver sin borrarlo.- Las cifras del README las produce el verificador, no una persona: viven entre marcadores y el CI falla si dejan de coincidir con el registro.
.github/workflows/sources.ymlrevalida contra la red el día 1 de cada mes y publica el informe en el resumen del job, separado del CI a propósito: la red no es determinista y un CI intermitente se acaba ignorando.
2.1.0 — 2026-08-13
Contenido
- Repara los 195 títulos de clase que habían perdido sus tildes en
lesson.yaml, en el H1 del README y en el de la evaluación;SYLLABUS.mdconservaba el título correcto y se toma como fuente. - Corrige la cabecera de las 288 clases, que citaba el slug en inglés
(
Professional To Leader) en lugar del título en español de su parte. - Añade
docs/README.mdcomo índice de la documentación, agrupado por para qué sirve cada documento.
Portal
- Publica el programa como portal HTML en GitHub Pages, generado con
tools/build_site.py: espeja la estructura del repositorio, así que cada enlace del material sigue funcionando dentro del sitio. - Portada con las cifras reales, las seis etapas y las 24 partes; temario con buscador que filtra por título, parte, etapa y concepto sin recargar.
- Diagramas Mermaid renderizados, tema claro y oscuro, y capa instalable (PWA) para consultar sin conexión lo ya visitado.
- Retira el
site/escrito a mano —cuatro archivos con un JSON de módulos mantenido aparte— y lo saca del control de versiones: ahora se genera.
Documentos generados
SYLLABUS.md,STATUS.md,MANIFEST.mdyFILE_INDEX.mdpasan a generarse desde el repositorio contools/build_*.py, cada uno con modo--checkque la CI ejecuta. Dos fuentes de verdad para el mismo dato acaban siempre discrepando; ahora hay una.- Añade
MANIFEST.md: qué garantiza cada comprobación y, sobre todo, qué no garantiza. tools/inventario.pycentraliza el recuento: ninguna cifra se escribe a mano.
Herramientas
- Renombra
scripts/atools/, en línea con el resto de los programas. - Reescribe
validate_repository.py: verifica además los campos delesson.yaml, la numeración continua 001–288, la coherencia del título entre los tres archivos de la clase y la cabecera de parte. - Añade
check_links.py,detect_secrets.pyydetect_pii.py. - Corrige el patrón de enlaces, que no alcanzaba la forma
[](destino): los enlaces de las portadas no se comprobaban. - Migra las pruebas a pytest y amplía su cobertura al simulador y a los datos.
Integración continua
- Reescribe
ci.ymlen cinco trabajos con puerta de calidad final, acciones pineadas por SHA,permissions: contents: read,persist-credentials: false,concurrencyytimeout-minutes. - Añade
pages.yml, que genera el portal, lo publica y comprueba que responda tras el despliegue. - Añade
security.yml:pip-audit,bandit,gitleakssobre el historial y los detectores propios, con ejecución semanal. - Audita los propios workflows con
actionlintyzizmor. - Añade lint de Markdown, comprobación de codificación UTF-8 sin BOM y matriz de 3 sistemas × 3 versiones de Python.
Repositorio
- Publica el repositorio y activa GitHub Pages.
- Amplía
SECURITY.md,CONTRIBUTING.mdyCODE_OF_CONDUCT.md, que eran párrafos sueltos. - Añade
.gitattributes,.markdownlint-cli2.jsonc,requirements.txt,requirements-site.txt,pyproject.tomly plantillas de issue y de PR. - Reconcilia la versión:
VERSIONdecía1.1.0mientras el README y el changelog decían2.0.0.
2.0.0 — 2026-08-12
- Reescribe las 288 clases bajo
deep-class-v2; se elimina el patrón de contenido superficial replicado. - Define 288 especificaciones temáticas distintas: concepto central, cinco conceptos, método, evidencia, caso y límites.
- Eleva la profundidad a 3.168–3.987 palabras por clase (mediana ~3.379) sin aceptar párrafos largos repetidos.
- Vincula fuentes al desarrollo mediante una sección de lectura comparada y lentes de lectura por concepto.
- Amplía el catálogo a 229 referencias e incorpora Kieso, Penman, Palepu y Schilit para contabilidad/análisis financiero.
- Incorpora explícitamente How Learning Works, Make It Stick, Understanding by Design, Peak y The Case Study Handbook como fuentes pedagógicas.
- Reescribe 288
assessment.mdespecíficos; cada evaluación usa conceptos, método, métricas, caso y límite propios. - Reescribe
lesson.yamlcon objetivos, evidencias y referencias específicas por clase. - Agrega
docs/PEDAGOGICAL_STANDARD.md,docs/READING_METHOD.mdydocs/REFERENCE_MAP.md. - Agrega
scripts/validate_depth.py: mínimos de profundidad/fuentes, detector de párrafos replicados y similitud anormal. - Prioriza fuentes por tema: contabilidad financiera usa Kieso/Penman/Palepu/Schilit; laboral Chile usa DT, BCN, SUSESO y Previsión Social.
- Añade 38 profundizaciones técnicas/regulatorias con fórmulas, marcos y reglas disciplinares cuando la materia lo exige.
- Mantiene 24 partes, 288 clases, 96 labs y 48 escenarios; todos los validadores y tests pasan.
1.2.0 — 2026-08-12
- Agrega mapa completo de tipos contractuales laborales en Chile: indefinido, plazo fijo y obra/faena.
- Distingue tipo por duración de modalidades como jornada parcial, teletrabajo/híbrido y turnos.
- Incorpora contratos/regímenes especiales: aprendizaje, servicios transitorios, temporada, casa particular y advertencia de estatutos sectoriales.
- Incorpora figuras afines no laborales: honorarios, proveedor, práctica profesional y subcontratación.
- Documenta transformación de plazo fijo a indefinido y controles de renovación.
- Añade checklist de selección contractual y expande la clase 260.
1.1.0 — 2026-08-12
- Incorpora guía completa de derecho laboral chileno para jefaturas, gerencia y founders.
- Profundiza la clase 260 con contratación, honorarios, jornada, previsión, seguridad, Ley Karin, teletrabajo, inclusión y término.
- Agrega mapa JSON de 17 normas/marcos laborales y previsionales.
- Actualiza la referencia temporal de jornada a 42 horas desde 26-04-2026 y la transición a 40 horas en 2028.
- Añade DS 44, Ley 21.735 y preparación para Ley 21.719 (vigencia 01-12-2026).
- Añade 5 plantillas laborales de auditoría y compliance.
- Amplía fuentes oficiales con Mintrab, SUSESO, Superintendencia de Pensiones, AFC, SERMIG y ChileAtiende.
1.0.0 — 2026-08-12
- Primera versión completa.
- 24 partes, 288 clases y 720 horas.
- 96 laboratorios ejecutivos.
- Bibliografía, fuentes oficiales y Founder Track Chile.
- Simulador ejecutivo y validación estructural.
🏠 Inicio · 📊 Estado · 🗺️ Roadmap · 📚 Temario