@damenor/agent-docs 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +115 -0
  2. package/dist/index.js +568 -0
  3. package/package.json +53 -0
  4. package/templates/base/AGENTS.md +177 -0
  5. package/templates/base/CHANGELOG.md +86 -0
  6. package/templates/base/README.md +110 -0
  7. package/templates/base/docs/CONTEXT.md +111 -0
  8. package/templates/base/docs/README.md +131 -0
  9. package/templates/base/docs/adr/TEMPLATE.md +83 -0
  10. package/templates/modules/agents/.agents/agents/doc-designer.md +56 -0
  11. package/templates/modules/agents/.agents/agents/doc-maintainer.md +54 -0
  12. package/templates/modules/agents/.agents/agents/doc-reviewer.md +80 -0
  13. package/templates/modules/agents/.agents/agents/doc-writer.md +66 -0
  14. package/templates/modules/agents/.agents/agents/reviewer.md +138 -0
  15. package/templates/modules/agents/.agents/skills/doc-design/SKILL.md +359 -0
  16. package/templates/modules/agents/.agents/skills/doc-design/references/design-system-format.md +550 -0
  17. package/templates/modules/agents/.agents/skills/doc-maintain/SKILL.md +345 -0
  18. package/templates/modules/agents/.agents/skills/doc-maintain/references/triggers.md +311 -0
  19. package/templates/modules/agents/.agents/skills/doc-review/SKILL.md +324 -0
  20. package/templates/modules/agents/.agents/skills/doc-review/references/health-checklist.md +290 -0
  21. package/templates/modules/agents/.agents/skills/doc-scaffold/SKILL.md +277 -0
  22. package/templates/modules/agents/.agents/skills/doc-scaffold/references/diataxis-quick-ref.md +149 -0
  23. package/templates/modules/agents/.agents/skills/doc-write/SKILL.md +414 -0
  24. package/templates/modules/agents/.agents/skills/doc-write/references/adr-format.md +194 -0
  25. package/templates/modules/agents/.agents/skills/doc-write/references/diataxis-patterns.md +351 -0
  26. package/templates/modules/ci/.github/workflows/docs-check.yml +94 -0
  27. package/templates/modules/design/docs/DESIGN.md +253 -0
  28. package/templates/modules/explanation/docs/explanation/agent-flow.md +15 -0
  29. package/templates/modules/explanation/docs/explanation/architecture.md +138 -0
  30. package/templates/modules/guides/docs/guides/deployment.md +189 -0
  31. package/templates/modules/guides/docs/guides/runbooks/TEMPLATE.md +86 -0
  32. package/templates/modules/guides/docs/guides/troubleshooting.md +65 -0
  33. package/templates/modules/operations/docs/operations/README.md +115 -0
  34. package/templates/modules/product/docs/product/overview.md +90 -0
  35. package/templates/modules/product/docs/roadmap.md +80 -0
  36. package/templates/modules/reference/docs/reference/api.md +131 -0
  37. package/templates/modules/reference/docs/reference/code-style.md +275 -0
  38. package/templates/modules/reference/docs/reference/configuration.md +117 -0
  39. package/templates/modules/reference/docs/reference/infrastructure.md +191 -0
  40. package/templates/modules/tutorials/docs/tutorials/environment-setup.md +212 -0
  41. package/templates/modules/tutorials/docs/tutorials/first-task.md +246 -0
  42. package/templates/modules/tutorials/docs/tutorials/quick-start.md +146 -0
  43. package/templates/shared/.editorconfig +20 -0
  44. package/templates/shared/.markdownlint.json +14 -0
@@ -0,0 +1,345 @@
1
+ ---
2
+ name: doc-maintain
3
+ description: >
4
+ Mantiene la documentación sincronizada con los cambios en el código.
5
+ Se ejecuta DESPUÉS de cada tarea que modifica código, usando la tabla de
6
+ triggers para determinar qué documentación actualizar. Sigue el protocolo
7
+ post-tarea de AGENTS.md.
8
+ TRIGGER: Cuando el usuario dice "sincronizar docs", "actualizar docs post-cambio",
9
+ "post-feature", "post-release", "post-incident", o automáticamente después de
10
+ cualquier tarea que cambie código.
11
+ license: Apache-2.0
12
+ metadata:
13
+ author: damenordev
14
+ version: "1.0"
15
+ ---
16
+
17
+ # doc-maintain
18
+
19
+ ## Cuándo Usar
20
+
21
+ - **Post-feature**: Después de implementar una feature nueva
22
+ - **Post-release**: Después de hacer un release a producción
23
+ - **Post-incident**: Después de resolver un incidente en producción
24
+ - **Post-refactor**: Después de refactorizar código
25
+ - **Post-hire**: Cuando un nuevo dev revisa la documentación
26
+ - **Post-design-change**: Después de cambios en estilos/UI
27
+ - **Post-API-change**: Después de agregar/modificar/eliminar endpoints
28
+ - **Post-config-change**: Después de cambiar configuración
29
+
30
+ ## Patrones Críticos
31
+
32
+ ### REGLA #1: Esta skill se ejecuta DESPUÉS de cada tarea que cambia código
33
+
34
+ ```
35
+ Código cambió → doc-maintain se ejecuta
36
+ ```
37
+
38
+ No es opcional. No es "cuando haya tiempo". Es parte del Definition of Done.
39
+
40
+ ### REGLA #2: Verificar qué cambió y actualizar docs correspondientes
41
+
42
+ ```
43
+ 1. Identificar qué archivos cambiaron (git diff, lista de cambios)
44
+ 2. Mapear cambios a documentación afectada (ver tabla de triggers)
45
+ 3. Actualizar cada archivo de doc afectado
46
+ 4. Verificar consistencia
47
+ ```
48
+
49
+ ### REGLA #3: NUNCA saltar actualización de docs
50
+
51
+ ```
52
+ Código cambia = Documentación cambia
53
+ ```
54
+
55
+ Si no hay tiempo para actualizar docs, no hay tiempo para hacer el cambio de código.
56
+
57
+ ### REGLA #4: Seguir el protocolo post-tarea de AGENTS.md
58
+
59
+ Ejecutar el **árbol post-tarea** definido en `AGENTS.md` § DESPUÉS de cada tarea. Ese árbol es la fuente de verdad de qué documentación actualizar según qué cambió.
60
+
61
+ ### REGLA #5: Si no se sabe qué actualizar, ejecutar doc-review primero
62
+
63
+ ```
64
+ ¿No está claro qué docs se ven afectadas?
65
+ → Ejecutar skill doc-review
66
+ → Identificar gaps
67
+ → Actualizar según el reporte
68
+ ```
69
+
70
+ ## Tabla de Triggers y Acciones
71
+
72
+ ### Post-feature
73
+
74
+ **Qué detectar**: Se agregó una feature nueva (nuevo módulo, nueva funcionalidad, nuevo endpoint)
75
+
76
+ **Docs a actualizar**:
77
+
78
+ | Documento | Cuándo | Prioridad | Skill |
79
+ |-----------|--------|-----------|-------|
80
+ | `docs/CONTEXT.md` | Si hay términos nuevos | Crítica | doc-write |
81
+ | `docs/README.md` | Si se crearon/eliminaron archivos de doc | Crítica | doc-write |
82
+ | `docs/adr/` | Si se tomó una decisión arquitectónica | Alta | doc-write |
83
+ | `how-to/` | Si hay un problema repetible que la feature resuelve | Media | doc-write |
84
+ | `reference/` | Si se agregaron endpoints/funciones/props | Alta | doc-write |
85
+ | `tutorials/` | Si la feature cambia el onboarding | Baja | doc-write |
86
+ | `CHANGELOG.md` | Si la feature va a salir en un release | Alta | doc-write |
87
+
88
+ ### Post-release
89
+
90
+ **Qué detectar**: Se hizo un deploy a producción, se creó un tag de versión
91
+
92
+ **Docs a actualizar**:
93
+
94
+ | Documento | Cuándo | Prioridad | Skill |
95
+ |-----------|--------|-----------|-------|
96
+ | `CHANGELOG.md` | Siempre | Crítica | doc-write |
97
+ | `docs/guides/deployment.md` | Si cambió el proceso de deploy | Alta | doc-write |
98
+ | `docs/README.md` | Si cambió la estructura de docs | Media | doc-write |
99
+ | `README.md` | Si hay cambios visibles al usuario | Alta | doc-write |
100
+
101
+ **Entrada de CHANGELOG**:
102
+ ```markdown
103
+ ## [X.Y.Z] - YYYY-MM-DD
104
+
105
+ ### Added
106
+ - Descripción de feature nueva
107
+
108
+ ### Changed
109
+ - Descripción de cambio
110
+
111
+ ### Fixed
112
+ - Descripción de fix
113
+
114
+ ### Breaking
115
+ - ⚠️ Descripción de breaking change
116
+ ```
117
+
118
+ ### Post-incident
119
+
120
+ **Qué detectar**: Se resolvió un incidente en producción (outage, bug crítico, data loss)
121
+
122
+ **Docs a actualizar**:
123
+
124
+ | Documento | Cuándo | Prioridad | Skill |
125
+ |-----------|--------|-----------|-------|
126
+ | `operations/post-mortems/YYYY-MM-DD-titulo.md` | Siempre | Crítica | doc-write |
127
+ | `operations/runbooks/` | Si hay pasos de resolución que repetir | Alta | doc-write |
128
+ | `docs/CONTEXT.md` | Si se descubrieron términos del dominio | Media | doc-write |
129
+ | `reference/configuration.md` | Si se cambiaron configs durante el incidente | Alta | doc-write |
130
+ | `how-to/troubleshooting.md` | Si el fix es aplicable a futuro | Alta | doc-write |
131
+
132
+ **Formato de post-mortem**:
133
+ ```markdown
134
+ ---
135
+ created: "YYYY-MM-DD"
136
+ status: active
137
+ type: explanation
138
+ tags: [post-mortem, incident, sev-N]
139
+ ---
140
+
141
+ # Post-mortem: [Título del incidente]
142
+
143
+ **Fecha**: YYYY-MM-DD
144
+ **Severidad**: SEV-N
145
+ **Duración**: X horas/minutos
146
+ **Impacto**: Descripción del impacto en usuarios
147
+
148
+ ## Línea de tiempo
149
+ - HH:MM — Detección
150
+ - HH:MM — Diagnóstico
151
+ - HH:MM — Mitigación
152
+ - HH:MM — Resolución
153
+
154
+ ## Causa raíz
155
+ [Descripción]
156
+
157
+ ## Acciones preventivas
158
+ - [ ] [Acción 1] — Responsable — Fecha límite
159
+ - [ ] [Acción 2] — Responsable — Fecha límite
160
+
161
+ ## Lecciones aprendidas
162
+ [Qué aprendimos]
163
+ ```
164
+
165
+ ### Post-refactor
166
+
167
+ **Qué detectar**: Se refactorizó código (renombrar, mover, cambiar patrones)
168
+
169
+ **Docs a actualizar**:
170
+
171
+ | Documento | Cuándo | Prioridad | Skill |
172
+ |-----------|--------|-----------|-------|
173
+ | `docs/adr/` | Si el refactor implica un cambio de patrón | Alta | doc-write |
174
+ | `docs/explanation/architecture.md` | Si cambió la arquitectura | Alta | doc-write |
175
+ | `docs/CONTEXT.md` | Si cambiaron nombres/términos | Crítica | doc-write |
176
+ | `docs/README.md` | Si se movieron archivos | Media | doc-write |
177
+ | ADRs existentes | Verificar que sigan siendo válidos | Alta | doc-write |
178
+
179
+ ### Post-hire
180
+
181
+ **Qué detectar**: Un nuevo dev se unió al equipo y revisa la documentación
182
+
183
+ **Docs a actualizar**:
184
+
185
+ | Documento | Cuándo | Prioridad | Skill |
186
+ |-----------|--------|-----------|-------|
187
+ | `tutorials/quick-start.md` | Si el nuevo dev no pudo seguir el tutorial | Crítica | doc-write |
188
+ | `docs/CONTEXT.md` | Si el nuevo dev encontró términos confusos | Alta | doc-write |
189
+ | Cualquier doc | Si el nuevo dev encontró info incorrecta | Alta | doc-write |
190
+
191
+ ### Post-design-change
192
+
193
+ **Qué detectar**: Se cambiaron estilos, tokens de diseño, o componentes UI
194
+
195
+ **Docs a actualizar**:
196
+
197
+ | Documento | Cuándo | Prioridad | Skill |
198
+ |-----------|--------|-----------|-------|
199
+ | `DESIGN.md` | Siempre | Crítica | doc-design |
200
+ | `docs/CONTEXT.md` | Si hay términos de diseño nuevos | Media | doc-write |
201
+
202
+ **Usar skill `doc-design`** para re-extraer tokens y actualizar DESIGN.md.
203
+
204
+ ### Post-API-change
205
+
206
+ **Qué detectar**: Se agregaron, modificaron o eliminaron endpoints
207
+
208
+ **Docs a actualizar**:
209
+
210
+ | Documento | Cuándo | Prioridad | Skill |
211
+ |-----------|--------|-----------|-------|
212
+ | `reference/api.md` | Siempre | Crítica | doc-write |
213
+ | `CHANGELOG.md` | Si hay breaking changes | Crítica | doc-write |
214
+ | `docs/adr/` | Si se cambió la estructura de la API | Alta | doc-write |
215
+ | `how-to/` | Si hay nuevos flujos de uso | Media | doc-write |
216
+
217
+ ### Post-config-change
218
+
219
+ **Qué detectar**: Se cambiaron variables de entorno, configuraciones, o infraestructura
220
+
221
+ **Docs a actualizar**:
222
+
223
+ | Documento | Cuándo | Prioridad | Skill |
224
+ |-----------|--------|-----------|-------|
225
+ | `reference/configuration.md` | Siempre | Crítica | doc-write |
226
+ | `docs/guides/deployment.md` | Si afecta el deploy | Alta | doc-write |
227
+ | `docs/adr/` | Si es un cambio de infraestructura significativo | Alta | doc-write |
228
+ | `.env.example` | Si se agregaron variables | Alta | directo |
229
+
230
+ ## Flujo del Proceso
231
+
232
+ ### Paso 1: Identificar qué cambió
233
+
234
+ ```bash
235
+ # Opción A: Git diff
236
+ git diff --name-only HEAD~1 HEAD
237
+ git diff --name-only --staged
238
+
239
+ # Opción B: Lista manual de archivos cambiados
240
+ [lista proporcionada por el agente/humano]
241
+ ```
242
+
243
+ ### Paso 2: Mapear cambios a docs afectadas
244
+
245
+ ```
246
+ Para cada archivo cambiado:
247
+ ├── ¿Es código fuente? → Verificar reference/, CONTEXT.md
248
+ ├── ¿Es estilo/CSS? → Verificar DESIGN.md
249
+ ├── ¿Es configuración? → Verificar reference/configuration.md
250
+ ├── ¿Es un módulo nuevo? → Verificar CONTEXT.md, docs/README.md
251
+ ├── ¿Es un fix? → Verificar CHANGELOG.md, troubleshooting
252
+ ├── ¿Es infraestructura? → Verificar deployment.md, ADRs
253
+ └── ¿Es un test? → Generalmente no requiere doc update
254
+ ```
255
+
256
+ ### Paso 3: Actualizar cada doc afectada
257
+
258
+ ```
259
+ 1. Abrir el archivo de doc afectado
260
+ 2. Identificar la sección que necesita cambio
261
+ 3. Hacer el cambio manteniendo el formato existente
262
+ 4. Verificar que el cambio es consistente con el resto del archivo
263
+ ```
264
+
265
+ ### Paso 4: Verificar consistencia
266
+
267
+ ```
268
+ 1. CONTEXT.md: ¿Los términos nuevos están? ¿Los eliminados se marcaron?
269
+ 2. docs/README.md: ¿El mapa refleja los archivos actuales?
270
+ 3. ADRs: ¿Los cambios invalidan algún ADR existente?
271
+ 4. DESIGN.md: ¿Los tokens siguen coincidiendo? (si cambiaron estilos)
272
+ 5. reference/api.md: ¿Los endpoints documentados coinciden con el código?
273
+ ```
274
+
275
+ ### Paso 5: Reportar qué se actualizó
276
+
277
+ ```
278
+ ✅ Documentación actualizada:
279
+ - docs/CONTEXT.md: Agregados 2 términos (UserService, RateLimit)
280
+ - docs/README.md: Agregado how-to/rate-limiting.md al mapa
281
+ - reference/api.md: Actualizado endpoint /api/users con nuevo campo
282
+
283
+ ℹ️ Sin cambios necesarios:
284
+ - CHANGELOG.md: Feature aún no es release
285
+ - DESIGN.md: No hubo cambios de estilos
286
+ ```
287
+
288
+ ## Actualización por Lotes
289
+
290
+ Cuando múltiples cambios ocurren juntos (ej: fin de sprint):
291
+
292
+ ```
293
+ 1. Listar TODOS los cambios desde la última actualización
294
+ 2. Agrupar por tipo de trigger (feature, refactor, fix, etc.)
295
+ 3. Actualizar cada doc UNA VEZ con todos los cambios acumulados
296
+ 4. Ejecutar doc-review al final para verificar consistencia
297
+ ```
298
+
299
+ ### Ejemplo: Fin de sprint
300
+
301
+ ```
302
+ Cambios del sprint:
303
+ - 3 features nuevas
304
+ - 1 refactor de auth
305
+ - 2 bug fixes
306
+ - 1 cambio de configuración
307
+
308
+ Docs a actualizar:
309
+ 1. CHANGELOG.md → Entrada completa del sprint
310
+ 2. CONTEXT.md → Términos de las 3 features + auth refactor
311
+ 3. reference/api.md → Nuevos endpoints
312
+ 4. docs/adr/ → ADR del refactor de auth (si aplica)
313
+ 5. reference/configuration.md → Config cambiada
314
+ 6. docs/README.md → Si se agregaron/eliminaron docs
315
+ ```
316
+
317
+ ## Comandos
318
+
319
+ ### Identificar cambios
320
+
321
+ ```bash
322
+ # Archivos modificados en el último commit
323
+ git diff --name-only HEAD~1
324
+
325
+ # Archivos modificados (staged + unstaged)
326
+ git diff --name-only; git diff --name-only --staged
327
+
328
+ # Cambios en un rango de commits
329
+ git diff --name-only commit1..commit2
330
+ ```
331
+
332
+ ### Verificar consistencia post-actualización
333
+
334
+ ```
335
+ 1. ¿CONTEXT.md tiene todos los términos nuevos del código?
336
+ 2. ¿docs/README.md lista todos los archivos de doc existentes?
337
+ 3. ¿ADRs son consistentes con la implementación actual?
338
+ 4. ¿DESIGN.md coincide con estilos actuales?
339
+ 5. ¿reference/api.md refleja endpoints actuales?
340
+ ```
341
+
342
+ ## Recursos
343
+
344
+ - [Triggers Reference](references/triggers.md) — Tabla completa de eventos → docs a actualizar con ejemplos
345
+ - Skills relacionados: `doc-write` (escribir/actualizar docs), `doc-review` (auditar después de actualizar), `doc-design` (actualizar DESIGN.md), `doc-scaffold` (si falta estructura)
@@ -0,0 +1,311 @@
1
+ ---
2
+ created: "2024-01-15"
3
+ status: active
4
+ type: reference
5
+ tags: [triggers, mantenimiento, sincronizacion, documentacion]
6
+ ---
7
+
8
+ # Triggers — Referencia Completa
9
+
10
+ ## Tabla Maestra: Evento → Doc a Actualizar
11
+
12
+ | Evento | Doc a actualizar | Prioridad | Cómo detectar |
13
+ |--------|-----------------|-----------|---------------|
14
+ | Feature nueva | CONTEXT.md, docs/README.md, reference/ | Crítica | Nuevo módulo/archivo en src/ |
15
+ | Feature nueva con decisión arq. | docs/adr/ | Alta | Se discutió arquitectura |
16
+ | Feature nueva con nuevo endpoint | reference/api.md | Crítica | Nuevo archivo en routes/ |
17
+ | Feature nueva con UI nueva | DESIGN.md | Alta | Nuevo componente UI |
18
+ | Release | CHANGELOG.md, docs/guides/deployment.md | Crítica | git tag creado |
19
+ | Release con breaking change | CHANGELOG.md ⚠️, reference/api.md | Crítica | API cambió retrocompatibilidad |
20
+ | Incidente | operations/post-mortems/, operations/runbooks/ | Crítica | Alerta resuelta, outage |
21
+ | Incidente con fix aplicable | how-to/troubleshooting.md | Alta | Fix reusable |
22
+ | Incidente con config cambiada | reference/configuration.md | Alta | .env o config cambió |
23
+ | Refactor | CONTEXT.md, explanation/architecture.md | Alta | Archivos renombrados/movidos |
24
+ | Refactor con cambio de patrón | docs/adr/ | Alta | Patrón de diseño cambió |
25
+ | Refactor que invalida ADR | ADR existente → status: deprecated | Alta | ADR ya no aplica |
26
+ | Nuevo dev en equipo | tutorials/quick-start.md | Crítica si falla | Dev reporta confusión |
27
+ | Nuevo dev encuentra errores | Cualquier doc afectada | Alta | Dev reporta info incorrecta |
28
+ | Cambio de estilos/tokens | DESIGN.md | Crítica | CSS/theme cambió |
29
+ | Cambio de estilos con nuevo componente | DESIGN.md (components) | Alta | Nuevo componente UI |
30
+ | Nuevo endpoint | reference/api.md | Crítica | Nuevo archivo en routes/ |
31
+ | Endpoint eliminado | reference/api.md | Crítica | Archivo eliminado de routes/ |
32
+ | Endpoint modificado | reference/api.md | Crítica | Params/respuesta cambiaron |
33
+ | Variable de entorno nueva | reference/configuration.md | Crítica | .env.example cambió |
34
+ | Config eliminada | reference/configuration.md | Crítica | .env.example cambió |
35
+ | Config con nuevo default | reference/configuration.md | Alta | Default cambió en código |
36
+ | Término nuevo en dominio | CONTEXT.md | Crítica | Nuevo concepto en código |
37
+ | Término eliminado | CONTEXT.md | Media | Concepto ya no existe |
38
+ | Archivo de doc creado | docs/README.md | Crítica | Nuevo .md en docs/ |
39
+ | Archivo de doc eliminado | docs/README.md | Crítica | .md eliminado de docs/ |
40
+ | Dependencia agregada | docs/adr/ si es significativa | Alta | package.json cambió |
41
+ | Dependencia eliminada | reference/ si aplica | Media | package.json cambió |
42
+ | Dependencia con major upgrade | CHANGELOG.md, reference/ | Alta | package.json versión major↑ |
43
+ | Schema de DB cambió | reference/database.md | Alta | Migración creada |
44
+ | Nuevo evento/mensaje | reference/events.md | Alta | Nuevo tipo de evento |
45
+ | Error nuevo con código | reference/errors.md | Alta | Nuevo código de error |
46
+ | Proceso de deploy cambió | docs/guides/deployment.md | Crítica | CI/CD config cambió |
47
+
48
+ ---
49
+
50
+ ## Niveles de Prioridad
51
+
52
+ ### 🔴 Crítica — Actualizar inmediatamente
53
+
54
+ La documentación incorrecta causa problemas reales:
55
+
56
+ - **Sin reference/api.md actualizada** → Integradores usan endpoints incorrectos
57
+ - **Sin CHANGELOG** → No se sabe qué cambió entre versiones
58
+ - **CONTEXT.md incorrecto** → Términos ambiguos causan bugs de comunicación
59
+ - **DESIGN.md desincronizado** → Inconsistencias visuales en producción
60
+ - **configuration.md desactualizada** → Deploy con variables incorrectas
61
+ - **Post-mortem no escrito** → Se repite el mismo incidente
62
+
63
+ **Tiempo esperado**: Actualizar dentro de la misma tarea/PR.
64
+
65
+ ### 🟡 Alta — Actualizar esta semana
66
+
67
+ La documentación faltante causa fricción pero no rompe nada:
68
+
69
+ - **ADR faltante** → Decisiones sin contexto para nuevos devs
70
+ - **How-to faltante** → Preguntas repetitivas al equipo
71
+ - **Explanation faltante** → Confusión sobre decisiones pasadas
72
+ - **Tutorial desactualizado** → Onboarding más lento
73
+
74
+ **Tiempo esperado**: Actualizar dentro del sprint.
75
+
76
+ ### 🟢 Media — Actualizar cuando sea posible
77
+
78
+ La documentación podría mejorarse pero no es urgente:
79
+
80
+ - **Término en CONTEXT.md que ya no aplica** → Limpieza
81
+ - **Ejemplo que podría ser mejor** → Mejora incremental
82
+ - **Referencia cruzada faltante** → Navegación más fácil
83
+
84
+ **Tiempo esperado**: Backlog, hacer cuando haya tiempo.
85
+
86
+ ---
87
+
88
+ ## Ejemplos por Trigger
89
+
90
+ ### Ejemplo 1: Post-feature — Nuevo módulo de notificaciones
91
+
92
+ **Cambios en código**:
93
+ ```
94
+ src/notifications/
95
+ ├── notification.service.ts (nuevo)
96
+ ├── notification.controller.ts (nuevo)
97
+ ├── templates/ (nuevo)
98
+ └── events/ (nuevo)
99
+ ```
100
+
101
+ **Docs a actualizar**:
102
+
103
+ ```markdown
104
+ 1. docs/CONTEXT.md → Agregar:
105
+ - NotificationService: Servicio encargado de enviar notificaciones
106
+ - NotificationTemplate: Plantilla para generar notificaciones
107
+ - NotificationEvent: Evento que dispara una notificación
108
+
109
+ 2. docs/README.md → Agregar al mapa:
110
+ - reference/notifications.md (si se crea)
111
+
112
+ 3. reference/api.md → Agregar:
113
+ - POST /api/notifications
114
+ - GET /api/notifications/:id
115
+ - GET /api/notifications (list)
116
+
117
+ 4. reference/events.md → Agregar:
118
+ - notification.created
119
+ - notification.sent
120
+ - notification.failed
121
+
122
+ 5. ¿ADR necesario? → Solo si la implementación implica una decisión arquitectónica
123
+ ```
124
+
125
+ ### Ejemplo 2: Post-release — v2.1.0
126
+
127
+ **Qué cambió**:
128
+ - 3 features nuevas
129
+ - 2 bugs corregidos
130
+ - 1 breaking change en API
131
+
132
+ **Docs a actualizar**:
133
+
134
+ ```markdown
135
+ 1. CHANGELOG.md → Agregar entrada:
136
+
137
+ ## [2.1.0] - 2024-03-15
138
+
139
+ ### Added
140
+ - Módulo de notificaciones
141
+ - Exportación a CSV
142
+ - Filtros avanzados en búsqueda
143
+
144
+ ### Changed
145
+ - El endpoint /api/users ahora retorna `avatarUrl` en vez de `avatar`
146
+
147
+ ### Fixed
148
+ - Timeout en queries de reportes grandes
149
+ - Error 500 al crear usuario sin email
150
+
151
+ ### Breaking ⚠️
152
+ - GET /api/users: campo `avatar` renombrado a `avatarUrl`
153
+
154
+ 2. reference/api.md → Actualizar campo renombrado
155
+
156
+ 3. docs/guides/deployment.md → Solo si cambió el proceso de deploy
157
+ ```
158
+
159
+ ### Ejemplo 3: Post-incident — Timeout en base de datos
160
+
161
+ **Qué pasó**: La app estuvo caída 30 minutos por queries sin timeout
162
+
163
+ **Docs a actualizar**:
164
+
165
+ ```markdown
166
+ 1. operations/post-mortems/2024-03-15-db-timeout.md → Crear post-mortem completo
167
+
168
+ 2. reference/configuration.md → Agregar:
169
+ - DB_QUERY_TIMEOUT: Timeout máximo para queries (default: 30s)
170
+
171
+ 3. how-to/troubleshooting.md → Agregar:
172
+ - "Cómo diagnosticar timeouts de base de datos"
173
+
174
+ 4. operations/runbooks/database-timeout.md → Crear runbook si no existe
175
+ ```
176
+
177
+ ### Ejemplo 4: Post-refactor — Renombrar UserService a AccountService
178
+
179
+ **Qué cambió**: Se renombró la clase y se movió de carpeta
180
+
181
+ **Docs a actualizar**:
182
+
183
+ ```markdown
184
+ 1. docs/CONTEXT.md → Actualizar:
185
+ - UserService → AccountService (renombrado)
186
+ - Marcar UserService como deprecated si hay referencia externa
187
+
188
+ 2. docs/explanation/architecture.md → Actualizar diagramas/referencias
189
+
190
+ 3. reference/api.md → Verificar si endpoints cambiaron de nombre
191
+
192
+ 4. docs/adr/ → ¿El refactor merece un ADR? Solo si cambió el patrón
193
+ ```
194
+
195
+ ### Ejemplo 5: Post-design-change — Nuevo sistema de colores
196
+
197
+ **Qué cambió**: Se actualizó la paleta de colores en Tailwind config
198
+
199
+ **Docs a actualizar**:
200
+
201
+ ```markdown
202
+ 1. DESIGN.md → Usar skill doc-design para:
203
+ - Re-extraer colores de Tailwind config
204
+ - Actualizar sección colors en frontmatter
205
+ - Verificar que los tokens de componentes siguen siendo válidos
206
+
207
+ 2. docs/CONTEXT.md → Si hay nuevos términos de diseño
208
+
209
+ 3. CHANGELOG.md → Si el cambio es visible para usuarios
210
+ ```
211
+
212
+ ### Ejemplo 6: Post-API-change — Nuevo endpoint de búsqueda
213
+
214
+ **Qué cambió**: Se agregó GET /api/search con query params
215
+
216
+ **Docs a actualizar**:
217
+
218
+ ```markdown
219
+ 1. reference/api.md → Agregar:
220
+
221
+ ### GET /api/search
222
+
223
+ | Parámetro | Tipo | Requerido | Descripción |
224
+ |-----------|------|-----------|-------------|
225
+ | q | string | Sí | Término de búsqueda |
226
+ | limit | number | No | Resultados máximos (default: 20) |
227
+ | offset | number | No | Paginación (default: 0) |
228
+ | type | string | No | Filtrar por tipo (user, post, comment) |
229
+
230
+ 2. docs/CONTEXT.md → Si hay términos nuevos (ej: SearchIndex, QueryParser)
231
+
232
+ 3. how-to/ → Si hay un flujo de uso común que documentar
233
+ ```
234
+
235
+ ---
236
+
237
+ ## Cómo Detectar Qué Cambió
238
+
239
+ ### Por tipo de archivo
240
+
241
+ | Archivo cambió | Qué verificar | Docs afectadas |
242
+ |---------------|---------------|----------------|
243
+ | `src/**/*.ts` | Nuevas clases, funciones, interfaces | CONTEXT.md, reference/ |
244
+ | `src/routes/**` | Nuevos/modified endpoints | reference/api.md |
245
+ | `src/components/**` | Nuevos/modified componentes | DESIGN.md |
246
+ | `*.css`, `tailwind.config.*` | Tokens de diseño | DESIGN.md |
247
+ | `.env*`, `config/*` | Variables de configuración | reference/configuration.md |
248
+ | `migrations/**` | Cambios en schema | reference/database.md |
249
+ | `docker-compose.*`, `Dockerfile*` | Cambios de infra | deployment.md |
250
+ | `package.json` | Dependencias nuevas/eliminadas | docs/adr/ si es significativa |
251
+ | `*.test.*` | Generalmente no afecta docs | — |
252
+ | `docs/**` | Ya es doc → verificar docs/README.md | docs/README.md |
253
+
254
+ ### Por comando git
255
+
256
+ ```bash
257
+ # Ver qué archivos cambiaron
258
+ git diff --name-only HEAD~1 HEAD
259
+
260
+ # Ver solo archivos de código (no docs)
261
+ git diff --name-only HEAD~1 HEAD -- ':(exclude)docs/' ':(exclude)*.md'
262
+
263
+ # Ver cambios en estilos
264
+ git diff --name-only HEAD~1 HEAD -- '*.css' 'tailwind.config.*' '*.scss'
265
+
266
+ # Ver cambios en rutas/API
267
+ git diff --name-only HEAD~1 HEAD -- 'src/routes/' 'src/controllers/'
268
+
269
+ # Ver cambios en config
270
+ git diff --name-only HEAD~1 HEAD -- '.env*' 'config/' 'docker-compose.*'
271
+ ```
272
+
273
+ ---
274
+
275
+ ## Patrones de Actualización por Lotes
276
+
277
+ ### Fin de sprint
278
+
279
+ ```
280
+ 1. git diff --name-only sprint-start..sprint-end
281
+ 2. Agrupar por tipo: features, fixes, refactors, config
282
+ 3. Para cada grupo, aplicar los triggers correspondientes
283
+ 4. Actualizar CHANGELOG.md con TODO lo del sprint
284
+ 5. Ejecutar doc-review al final
285
+ ```
286
+
287
+ ### Post-merge de múltiples PRs
288
+
289
+ ```
290
+ 1. Listar PRs mergeados desde la última actualización
291
+ 2. Para cada PR, identificar el trigger
292
+ 3. Acumular cambios por doc afectada
293
+ 4. Actualizar cada doc UNA VEZ con todos los cambios
294
+ 5. No actualizar el mismo doc múltiples veces
295
+ ```
296
+
297
+ ### Hotfix en producción
298
+
299
+ ```
300
+ 1. El hotfix es prioridad CRÍTICA
301
+ 2. Actualizar CHANGELOG.md inmediatamente
302
+ 3. Actualizar reference/ si afecta API
303
+ 4. Crear post-mortem si fue incidente
304
+ 5. doc-review post-hotfix
305
+ ```
306
+
307
+ ---
308
+
309
+ ## Regla de Oro
310
+
311
+ **Si cambiaste código, cambiaste documentación. Si no actualizaste la documentación, la tarea no está terminada.**