@damenor/agent-docs 0.1.1 → 0.4.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 (41) hide show
  1. package/README.md +65 -29
  2. package/dist/index.js +3834 -217
  3. package/package.json +14 -11
  4. package/templates/modules/agents/.agents/agents/doc-designer.md +39 -37
  5. package/templates/modules/agents/.agents/agents/doc-maintainer.md +35 -35
  6. package/templates/modules/agents/.agents/agents/doc-reviewer.md +55 -46
  7. package/templates/modules/agents/.agents/agents/doc-writer.md +34 -33
  8. package/templates/modules/agents/.agents/agents/reviewer.md +114 -100
  9. package/templates/modules/agents/.agents/skills/doc-design/SKILL.md +176 -174
  10. package/templates/modules/agents/.agents/skills/doc-design/references/design-system-format.md +241 -247
  11. package/templates/modules/agents/.agents/skills/doc-maintain/SKILL.md +205 -195
  12. package/templates/modules/agents/.agents/skills/doc-maintain/references/triggers.md +171 -165
  13. package/templates/modules/agents/.agents/skills/doc-review/SKILL.md +245 -240
  14. package/templates/modules/agents/.agents/skills/doc-review/references/health-checklist.md +115 -112
  15. package/templates/modules/agents/.agents/skills/doc-scaffold/SKILL.md +164 -157
  16. package/templates/modules/agents/.agents/skills/doc-scaffold/references/diataxis-quick-ref.md +110 -110
  17. package/templates/modules/agents/.agents/skills/doc-write/SKILL.md +240 -212
  18. package/templates/modules/agents/.agents/skills/doc-write/references/adr-format.md +99 -93
  19. package/templates/modules/agents/.agents/skills/doc-write/references/diataxis-patterns.md +221 -200
  20. package/templates/base/AGENTS.md +0 -177
  21. package/templates/base/CHANGELOG.md +0 -86
  22. package/templates/base/README.md +0 -110
  23. package/templates/base/docs/CONTEXT.md +0 -111
  24. package/templates/base/docs/README.md +0 -131
  25. package/templates/base/docs/adr/TEMPLATE.md +0 -83
  26. package/templates/modules/design/docs/DESIGN.md +0 -253
  27. package/templates/modules/explanation/docs/explanation/agent-flow.md +0 -15
  28. package/templates/modules/explanation/docs/explanation/architecture.md +0 -138
  29. package/templates/modules/guides/docs/guides/deployment.md +0 -189
  30. package/templates/modules/guides/docs/guides/runbooks/TEMPLATE.md +0 -86
  31. package/templates/modules/guides/docs/guides/troubleshooting.md +0 -65
  32. package/templates/modules/operations/docs/operations/README.md +0 -115
  33. package/templates/modules/product/docs/product/overview.md +0 -90
  34. package/templates/modules/product/docs/roadmap.md +0 -80
  35. package/templates/modules/reference/docs/reference/api.md +0 -131
  36. package/templates/modules/reference/docs/reference/code-style.md +0 -275
  37. package/templates/modules/reference/docs/reference/configuration.md +0 -117
  38. package/templates/modules/reference/docs/reference/infrastructure.md +0 -191
  39. package/templates/modules/tutorials/docs/tutorials/environment-setup.md +0 -212
  40. package/templates/modules/tutorials/docs/tutorials/first-task.md +0 -246
  41. package/templates/modules/tutorials/docs/tutorials/quick-start.md +0 -146
@@ -1,177 +0,0 @@
1
- ---
2
- project: "{{PROJECT_NAME}}"
3
- stack: "{{TECH_STACK}}"
4
- created: "2025-01-01"
5
- updated: "2026-05-07"
6
- status: active
7
- type: agent-protocol
8
- tags: [agents, protocolo, operativo, ia]
9
- ---
10
-
11
- # AGENTS.md — Protocolo Operativo
12
-
13
- Reglas que TODO agente de IA debe seguir al trabajar en este proyecto. Guía extendida: `docs/internal/agent-guide.md`.
14
-
15
- ---
16
-
17
- ## STOP — Lee esto ANTES de hacer nada
18
-
19
- 1. **TRIAGE**: Clasifica la tarea (SMALL/MEDIUM/LARGE). No saltes este paso.
20
- 2. **LEE**: Lee la documentación indicada en la tabla ANTES de escribir código.
21
- 3. **PREGUNTA**: Si hay ambigüedad, haz TODAS las preguntas en UN solo mensaje.
22
- 4. **NO IMPLEMENTES** sin seguir el protocolo completo (MEDIUM/LARGE).
23
- 5. **@reviewer**: Invoca ANTES de marcar la tarea como completada (MEDIUM/LARGE).
24
-
25
- ---
26
-
27
- ## Triage de tarea
28
-
29
- Antes de ejecutar el protocolo, clasificar la tarea:
30
-
31
- | Tamaño | Criterio | Protocolo |
32
- |--------|----------|-----------|
33
- | **SMALL** | ≤2 archivos, <50 líneas | Leer CONTEXT.md → implementar → lint → done |
34
- | **MEDIUM** | 3-10 archivos, feature moderada | Protocolo completo (sin subdelegación) |
35
- | **LARGE** | Multi-día, arquitectural | Protocolo completo + ADR + subdelegación |
36
-
37
- **Ejemplos**: SMALL = fix typo, cambiar color, corregir import. MEDIUM = nuevo endpoint, nuevo componente, nuevo servicio simple. LARGE = sistema de auth, integración con provider externo, sistema de notificaciones multi-canal.
38
-
39
- Si empiezas SMALL y la tarea crece → escalar a MEDIUM.
40
-
41
- ---
42
-
43
- ## Stack y convenciones
44
-
45
- ### Stack
46
- - **Frontend**: [framework y versión — ej. {{FRAMEWORK}}]
47
- - **Backend**: [framework y versión — ej. {{FRAMEWORK}}]
48
- - **Base de datos**: [tipo y versión — ej. {{TECH_STACK}}]
49
- - **CI/CD**: [plataforma — ej. {{TECH_STACK}}]
50
-
51
- ### Detección automática de stack
52
-
53
- Si el stack no está rellenado arriba, el agente debe detectarlo:
54
-
55
- | Archivo detectado | Ecosistema | Comandos probables |
56
- |-------------------|------------|--------------------|
57
- | `package.json` | Node.js (npm/pnpm/yarn) | `npm run dev`, `npm run build` |
58
- | `requirements.txt` / `pyproject.toml` | Python (pip/poetry) | `python manage.py runserver`, `pytest` |
59
- | `go.mod` | Go | `go run .`, `go test ./...` |
60
- | `Cargo.toml` | Rust | `cargo run`, `cargo test` |
61
- | `pom.xml` / `build.gradle` | Java/Kotlin | `mvn spring-boot:run`, `gradle bootRun` |
62
-
63
- ### Convenios obligatorios
64
- 1. **Idioma**: Código en **inglés**. Comentarios y docs en **español**.
65
- 2. **Nombramiento**: [convención de nombres — ej. camelCase variables/funciones, PascalCase componentes]
66
- 3. **Estructura**: [convención — ej. feature-based folders]
67
- 4. **Testing**: Todo código nuevo DEBE incluir tests.
68
- 5. **Linting**: Pasar `npm run lint` sin errores antes de completar.
69
- 6. **Commits**: Conventional Commits en español: `tipo(alcance): descripción`.
70
- 7. **Seguridad**: Nunca commitear secrets. Usar variables de entorno.
71
- 8. **Dependencias**: No añadir sin justificación. Si se añade → documentar en ADR.
72
- 9. **Accesibilidad**: Todo componente UI cumple WCAG 2.1 AA.
73
-
74
- ### Comandos
75
-
76
- | Comando | Uso |
77
- |---------|-----|
78
- | `npm run dev` | Desarrollo con hot-reload |
79
- | `npm run build` | Build producción |
80
- | `npm run test` | Tests unitarios e integración |
81
- | `npm run test:e2e` | Tests end-to-end |
82
- | `npm run lint` | Linter (debe pasar sin errores) |
83
- | `npm run typecheck` | Verificación de tipos |
84
-
85
- > **Detalle completo** de convenciones de git, commits, PRs y testing en [`docs/dev-workflow.md`](docs/dev-workflow.md).
86
-
87
- ---
88
-
89
- ## ANTES de cada tarea (MEDIUM/LARGE)
90
-
91
- ### 1. Leer docs según tipo de tarea
92
-
93
- | Tipo de tarea | Documentación a leer primero |
94
- |---------------|------------------------------|
95
- | Cualquier tarea | `docs/CONTEXT.md` |
96
- | Feature nueva | `docs/roadmap.md`, `docs/explanation/architecture.md`, ADRs relevantes |
97
- | Bug/UI/Estilo | `docs/DESIGN.md`, `docs/CONTEXT.md` |
98
- | API/Backend | `docs/reference/api.md`, `docs/reference/configuration.md` |
99
- | Deploy/Infra | `docs/guides/deployment.md`, `docs/reference/infrastructure.md` |
100
- | Arquitectura | `docs/explanation/architecture.md`, `docs/adr/` (todos) |
101
-
102
- ### 2. Verificar ADRs existentes
103
-
104
- Buscar en `docs/adr/` antes de tomar decisiones:
105
- - **Existe ADR aceptado** → SEGUIRLO. No reinventar.
106
- - **Contradice lo que vas a hacer** → Plantear discusión antes.
107
- - **No existe** → Evaluar si merece ADR (ver criterio y ejemplos en [`docs/adr/TEMPLATE.md`](docs/adr/TEMPLATE.md)).
108
-
109
- ### 3. Verificar CONTEXT.md
110
-
111
- Si la tarea usa términos que no están en `docs/CONTEXT.md` → preparar para actualizar al terminar.
112
-
113
- Si `CONTEXT.md` tiene `completeness < 50%` → prioridad: completar CONTEXT.md antes de implementar features.
114
-
115
- ### 4. Preguntar si hay ambigüedad
116
-
117
- Si después de leer la documentación hay ambigüedad → **batch TODAS las preguntas en un solo mensaje**. Cada pregunta con opciones cuando sea posible. No preguntar una por una.
118
-
119
- No preguntes si la tarea está clara, es implementación estándar, o la info está en los docs.
120
-
121
- ---
122
-
123
- ## DESPUÉS de cada tarea (MEDIUM/LARGE)
124
-
125
- ### Árbol post-tarea
126
-
127
- ```
128
- ¿Tomaste una decisión?
129
- ├── Arquitectónica → docs/adr/ (ADR formal)
130
- ├── Implementación no obvia → JSDoc + docs/adr/ai-decisions.md
131
- └── No → siguiente
132
- ¿Términos nuevos del dominio? → docs/CONTEXT.md
133
- ¿Endpoints cambiados? → docs/reference/api.md
134
- ¿UI/UX cambiada? → docs/DESIGN.md
135
- ¿Deploy a producción? → CHANGELOG.md + docs/guides/deployment.md
136
- ¿Feature completado? → docs/roadmap.md
137
- ¿Gotcha descubierto? → docs/guides/troubleshooting.md
138
- ¿Refactor de patrones? → Revisar architecture.md y ADRs
139
- ```
140
-
141
- > **Guía extendida** con diagramas y ejemplos en [`docs/internal/agent-guide.md`](docs/internal/agent-guide.md).
142
- > **Alternativa**: Invocar skill `doc-maintain` para detectar cambios y sugerir actualizaciones automáticamente.
143
-
144
- **Regla de oro**: Si cambias el código, cambias la documentación.
145
-
146
- ---
147
-
148
- ## Quality Gate — @reviewer (MEDIUM/LARGE)
149
-
150
- **ANTES de completar**, invocar `@reviewer` para verificar:
151
- - ✅ Code style conforme a convenciones
152
- - ✅ Sin duplicación — usa componentes/utilidades existentes
153
- - ✅ Sigue la arquitectura del proyecto y respeta ADRs
154
- - ✅ Sin vulnerabilidades de seguridad
155
- - ✅ Tests incluidos para código nuevo
156
- - ✅ Documentación actualizada
157
- - ✅ Sin problemas de performance evidentes
158
-
159
- - **❌ BLOQUEANTE** → arreglar antes de completar.
160
- - **⚠️ SUGERIDO** → recomendado pero no bloquea.
161
-
162
- ---
163
-
164
- ## Subdelegación
165
-
166
- Instrucciones mínimas al subagente:
167
- > Lee AGENTS.md y sigue el protocolo completo. Tarea: [descripción]. Docs relevantes: [lista].
168
-
169
- No repitas convenciones — ya están en AGENTS.md. Ver ejemplo completo en `docs/internal/agent-guide.md`.
170
-
171
- ---
172
-
173
- ## Skills y agentes disponibles
174
-
175
- - **Skills**: `doc-scaffold`, `doc-write`, `doc-design`, `doc-review`, `doc-maintain` — ver `.agents/skills/`
176
- - **Agentes**: `@reviewer` (quality gate), `@doc-writer`, `@doc-reviewer`, `@doc-designer`, `@doc-maintainer` — ver `.agents/agents/`
177
- - **Guía extendida**: `docs/internal/agent-guide.md`
@@ -1,86 +0,0 @@
1
- ---
2
- created: "2025-01-01"
3
- status: active
4
- type: changelog
5
- tags: [changelog, cambios, versiones]
6
- ---
7
-
8
- # Changelog
9
-
10
- Todos los cambios notables de este proyecto se documentarán en este archivo.
11
-
12
- El formato está basado en [Keep a Changelog](https://keepachangelog.com/es-ES/1.1.0/),
13
- y este proyecto adhiere a [Versionado Semántico](https://semver.org/lang/es/).
14
-
15
- ---
16
-
17
- ## [Sin publicar]
18
-
19
- <!--
20
- Sección para cambios que ya están en main pero que aún no se publican.
21
- Mover las entradas aquí al momento de hacer un release.
22
- -->
23
-
24
- ### Añadido
25
- - `TEMPLATE-README.md` con instrucciones paso a paso para usar este template.
26
- - `.editorconfig` para formato consistente entre editores.
27
- - `.markdownlint.json` para linting de archivos Markdown.
28
- - `.github/workflows/docs-check.yml` — CI que verifica frontmatter, archivos vacíos, links rotos y completeness de CONTEXT.md.
29
- - Tabla de detección automática de stack en `AGENTS.md` (soporte multi-lenguaje: Node, Python, Go, Rust, Java).
30
- - Diagramas Mermaid en `architecture.md` y `agent-guide.md` (reemplazan ASCII art).
31
- - Cross-references entre archivos para reducir duplicación interna.
32
-
33
- ### Cambiado
34
- - `agent-flow.md` fusionado en `agent-guide.md` — el archivo original redirige.
35
- - `DESIGN.md` — bloque YAML ahora indica explícitamente que son valores de ejemplo.
36
- - `AGENTS.md` — criterio ADR referencia `TEMPLATE.md` en vez de duplicarlo.
37
- - `doc-maintain` skill — checklist post-tarea referencia `AGENTS.md` en vez de duplicar.
38
- - `doc-scaffold` skill — detección de stack ahora referencia tabla de `AGENTS.md`.
39
-
40
- ### Corregido
41
- - Bug de caracteres chinos en `docs/README.md` ("命名" → "nomenclatura").
42
-
43
- ### Cambiado
44
- <!-- Cambios en funcionalidad existente. Ejemplo: - Se actualizó el flujo de registro para incluir verificación por email. -->
45
-
46
- ### Corregido
47
- <!-- Corrección de bugs. Ejemplo: - Se corrigió error 500 al enviar formularios con caracteres especiales. -->
48
-
49
- ### Eliminado
50
- <!-- Funcionalidades eliminadas. Ejemplo: - Se eliminó el endpoint deprecated /api/v1/users. -->
51
-
52
- ---
53
-
54
- ## [0.1.0] - 2025-01-15
55
-
56
- ### Añadido
57
- - Inicialización del proyecto con estructura base.
58
- - Configuración de CI/CD pipeline.
59
- - Documentación completa del proyecto (ver `docs/`).
60
-
61
- ---
62
-
63
- <!--
64
- GUÍA DE FORMATO:
65
-
66
- Tipos de cambios permitidos:
67
-
68
- - **Añadido**: para funcionalidades nuevas.
69
- - **Cambiado**: para cambios en funcionalidad existente.
70
- - **Deprecado**: para funcionalidades que serán eliminadas en futuras versiones.
71
- - **Eliminado**: para funcionalidades eliminadas en esta versión.
72
- - **Corregido**: para corrección de bugs.
73
- - **Seguridad**: para correcciones de vulnerabilidades.
74
-
75
- Reglas:
76
-
77
- 1. Cada versión tiene su fecha en formato YYYY-MM-DD.
78
- 2. La sección "Sin publicar" siempre está primero.
79
- 3. Los enlaces de comparación van al final del archivo.
80
- 4. Una entrada por cambio, prefijada con "- ".
81
- 5. Ordenar cambios: Añadido > Cambiado > Deprecado > Eliminado > Corregido > Seguridad.
82
- 6. Actualizar al momento de deploy (no al momento de codear).
83
- -->
84
-
85
- [0.1.0]: https://github.com/org/{{PROJECT_NAME}}/releases/tag/v0.1.0
86
- <!-- [Sin publicar]: https://github.com/org/{{PROJECT_NAME}}/compare/v0.1.0...HEAD -->
@@ -1,110 +0,0 @@
1
- ---
2
- created: "2025-01-01"
3
- status: active
4
- type: project-overview
5
- tags: [readme, proyecto, índice]
6
- ---
7
-
8
- # {{PROJECT_NAME}}
9
-
10
- > [Una línea que describe qué hace este proyecto y para quién. Ejemplo: "Portal web corporativo para la gestión de trámites internos del sector finanzas."]
11
-
12
- ---
13
-
14
- ## Inicio rápido
15
-
16
- ```bash
17
- # Clonar el repositorio
18
- git clone https://github.com/org/{{PROJECT_NAME}} && cd [NOMBRE_DEL_PROYECTO]
19
-
20
- # Instalar dependencias
21
- [comando de instalación]
22
-
23
- # Iniciar servidor de desarrollo
24
- [comando de dev]
25
- ```
26
-
27
- El proyecto debería estar disponible en `http://localhost:3000`.
28
-
29
- ---
30
-
31
- ## Mapa de documentación
32
-
33
- Toda la documentación detallada vive en [`docs/`](docs/README.md).
34
-
35
- | Sección | Qué encontrarás | Ir a |
36
- |---------|-----------------|------|
37
- | Producto | Visión, roadmap, stakeholders | [`docs/product/`](docs/product/overview.md) |
38
- | Tutoriales | Quick start, setup, primera tarea | [`docs/tutorials/`](docs/tutorials/quick-start.md) |
39
- | Guías | Deploy, troubleshooting, runbooks | [`docs/guides/`](docs/guides/deployment.md) |
40
- | Referencia | API, configuración, infraestructura | [`docs/reference/`](docs/reference/api.md) |
41
- | Explicación | Arquitectura, decisiones (ADRs) | [`docs/explanation/`](docs/explanation/architecture.md) |
42
- | Operaciones | Monitoreo, incidentes, SLAs | [`docs/operations/`](docs/operations/README.md) |
43
-
44
- Archivos clave en la raíz:
45
-
46
- - [`AGENTS.md`](AGENTS.md) — Protocolo operativo para agentes de IA
47
- - [`CHANGELOG.md`](CHANGELOG.md) — Registro de cambios del proyecto
48
- - [`docs/CONTEXT.md`](docs/CONTEXT.md) — Vocabulario y lenguaje del dominio
49
- - [`docs/DESIGN.md`](docs/DESIGN.md) — Sistema de diseño (colores, tipografía, componentes)
50
-
51
- ---
52
-
53
- ## Comandos
54
-
55
- | Comando | Descripción |
56
- |---------|-------------|
57
- | `[npm run dev]` | Inicia el servidor de desarrollo con hot-reload |
58
- | `[npm run build]` | Genera la build de producción |
59
- | `[npm run test]` | Ejecuta la suite de tests |
60
- | `[npm run lint]` | Ejecuta el linter y el formateador |
61
- | `[npm run test:e2e]` | Ejecuta tests end-to-end |
62
-
63
- > **Fuente de verdad**: [`AGENTS.md`](AGENTS.md) § Comandos. Actualizar ahí primero.
64
-
65
- ## Arquitectura
66
-
67
- Para entender cómo está construido el proyecto, leer [`docs/explanation/architecture.md`](docs/explanation/architecture.md).
68
-
69
- Resumen rápido:
70
-
71
- ```
72
- [DIAGRAMA SIMPLIFICADO DE LA ARQUITECTURA]
73
-
74
- Cliente (Browser)
75
-
76
- [Frontend Framework]
77
-
78
- [API / Backend]
79
-
80
- [Base de datos]
81
- ```
82
-
83
- Las decisiones de arquitectura se documentan como ADRs en [`docs/adr/`](docs/adr/TEMPLATE.md).
84
-
85
- ---
86
-
87
- ## Stack
88
-
89
- | Capa | Tecnología | Versión |
90
- |------|-----------|---------|
91
- | Frontend | [framework] | [versión] |
92
- | Backend | [framework] | [versión] |
93
- | Base de datos | [tipo] | [versión] |
94
- | CI/CD | [plataforma] | — |
95
- | Hosting | [proveedor] | — |
96
- | Lenguaje | [lenguaje] | [versión] |
97
-
98
- ---
99
-
100
- ## Contribuir
101
-
102
- 1. Lee [`docs/dev-workflow.md`](docs/dev-workflow.md) para el flujo de trabajo interno.
103
- 2. Lee [`AGENTS.md`](AGENTS.md) si trabajas con agentes de IA.
104
- 3. Lee [`docs/tutorials/first-task.md`](docs/tutorials/first-task.md) para tu primera contribución.
105
-
106
- ---
107
-
108
- ## Licencia
109
-
110
- [TIPO DE LICENCIA — Ejemplo: Privada. Todos los derechos reservados.]
@@ -1,111 +0,0 @@
1
- ---
2
- created: "2025-01-01"
3
- updated: "2025-01-01"
4
- status: active
5
- completeness: "15%"
6
- type: domain-language
7
- tags: [contexto, dominio, vocabulario, glosario]
8
- ---
9
-
10
- # CONTEXT.md — Lenguaje del Dominio
11
-
12
- Este archivo define el vocabulario compartido que se usa en este proyecto. Todo término de negocio o concepto clave del dominio debe estar documentado aquí.
13
-
14
- Si un término aparece en el código, la documentación o las conversaciones del equipo y NO está en este archivo, es un gap que debe cubrirse.
15
-
16
- ---
17
-
18
- ## Lenguaje del dominio
19
-
20
- ### Entidades principales
21
-
22
- | Término | Definición | Ejemplo de uso | Equivalente técnico |
23
- |---------|-----------|----------------|-------------------|
24
- | **[Término 1]** | [Qué es, en una oración, desde la perspectiva del negocio] | "El [término] se vence el viernes." | `[nombre_en_codigo]` |
25
- | **[Término 2]** | [Qué es, en una oración, desde la perspectiva del negocio] | "Cada [término] puede tener múltiples [otro término]." | `[nombre_en_codigo]` |
26
- | **[Término 3]** | [Qué es, en una oración, desde la perspectiva del negocio] | "El sistema genera un [término] automáticamente." | `[nombre_en_codigo]` |
27
-
28
- ### Estados y flujos
29
-
30
- | Término | Significa | Transiciones posibles |
31
- |---------|-----------|----------------------|
32
- | **[Estado A]** | [Qué significa este estado en términos de negocio] | → [Estado B], → [Estado C] |
33
- | **[Estado B]** | [Qué significa este estado en términos de negocio] | → [Estado C] |
34
- | **[Estado C]** | [Estado final — qué implica] | — |
35
-
36
- ### Roles y permisos
37
-
38
- | Rol | Quién es | Qué puede hacer |
39
- |-----|----------|----------------|
40
- | **[Rol 1]** | [Descripción del perfil de usuario] | [Lista de permisos clave] |
41
- | **[Rol 2]** | [Descripción del perfil de usuario] | [Lista de permisos clave] |
42
- | **Admin** | Administrador del sistema con acceso total | Gestiona usuarios, configuración global, y puede asumir cualquier rol |
43
-
44
- ### Términos de negocio
45
-
46
- | Término | Definición | Notas |
47
- |---------|-----------|-------|
48
- | **[Término de negocio]** | [Definición desde la perspectiva del negocio, no técnica] | [Contexto adicional o advertencias] |
49
- | **[Otro término]** | [Definición] | [Ejemplo: "No confundir con [término similar]. Ver [otra sección]."] |
50
-
51
- ### Términos técnicos internos
52
-
53
- | Término | Definición | Por qué existe |
54
- |---------|-----------|----------------|
55
- | **[Término técnico]** | [Qué es y cómo se usa en este proyecto específicamente] | [Motivo por el que se introdujo o contexto de la decisión] |
56
-
57
- ---
58
-
59
- ## Relaciones entre conceptos
60
-
61
- ```
62
- [Entidad 1] ─── 1:N ───→ [Entidad 2]
63
- └──→ [Entidad 3] (a través de [Entidad 4])
64
-
65
- [Rol 1] ─── puede ───→ [Acción A] sobre [Entidad 1]
66
- └──→ [Acción B] sobre [Entidad 2]
67
-
68
- [Estado A] ──→ [Estado B] ──→ [Estado C] ──→ [Estado D]
69
- └──→ [Estado E] (reversión)
70
- ```
71
-
72
- ---
73
-
74
- ## Ejemplo de diálogo usando el dominio
75
-
76
- Este ejemplo muestra cómo se usa el vocabulario en una conversación real del equipo:
77
-
78
- > **Product Manager**: "El cliente necesita que los [Término 1] en estado [Estado A] se puedan convertir automáticamente en [Término 2] cuando pasen a [Estado B]."
79
- >
80
- > **Developer**: "Entendido. ¿Esa conversación aplica para todos los [Rol 1] o solo para los que tienen permiso de [acción]?"
81
- >
82
- > **Product Manager**: "Solo para [Rol 1]. Los [Rol 2] solo ven el [Término 1] pero no pueden convertirlo."
83
- >
84
- > **Developer**: "Perfecto. Voy a añadir un botón de conversión en la vista de [Término 1] para [Rol 1], visible solo cuando esté en [Estado A]. ¿El [Término 2] resultante empieza en [Estado C]?"
85
- >
86
- > **Product Manager**: "Sí, empieza en [Estado C] y necesita aprobación de un [Rol 2] para pasar a [Estado D]."
87
-
88
- ---
89
-
90
- ## Ambigüedades flagadas
91
-
92
- Estos términos tienen significados que podrían confundirse. Prestar atención al contexto:
93
-
94
- | Término | Confusión posible | Aclaración |
95
- |---------|-------------------|-----------|
96
- | **[Término ambiguo]** | Se podría confundir con [otro término] | En este proyecto significa [definición precisa]. No es lo mismo que [otro término]. |
97
- | **[Otro término ambiguo]** | Significa cosas distintas según el contexto | Cuando dice "[término]" en el contexto de [área 1] significa [X]. En el contexto de [área 2] significa [Y]. |
98
-
99
- ---
100
-
101
- ## Cómo actualizar este archivo
102
-
103
- Cuando se añada un nuevo término al dominio:
104
-
105
- 1. Identificar si es una **entidad**, un **estado**, un **rol**, un **término de negocio** o un **término técnico**.
106
- 2. Añadirlo en la sección correspondiente con: definición, ejemplo de uso, y equivalente técnico.
107
- 3. Si tiene relaciones con otras entidades, actualizar el diagrama de relaciones.
108
- 4. Si es ambiguo o se confunde con otro término, añadirlo en "Ambigüedades flagadas".
109
- 5. Si se introdujo un nuevo estado o flujo, actualizar la tabla de estados.
110
-
111
- **Regla**: Todo término que aparezca en código, APIs, UI o conversaciones del equipo DEBE estar aquí. Si no está, es un bug de documentación.
@@ -1,131 +0,0 @@
1
- ---
2
- created: "2025-01-01"
3
- status: active
4
- type: doc-map
5
- tags: [documentación, índice, mapa, diátaxis]
6
- ---
7
-
8
- # Mapa de Documentación
9
-
10
- Este directorio contiene **toda la documentación** del proyecto, organizada siguiendo el framework Diátaxis.
11
-
12
- ---
13
-
14
- ## Estructura de directorios
15
-
16
- ```
17
- docs/
18
- ├── README.md # ← ESTE ARCHIVO. Mapa y reglas de la documentación.
19
- ├── CONTEXT.md # Vocabulario y lenguaje del dominio.
20
- ├── DESIGN.md # Sistema de diseño (colores, tipografía, componentes).
21
- ├── roadmap.md # Planificación y estado de features.
22
- ├── dev-workflow.md # Convenciones internas de desarrollo.
23
-
24
- ├── product/ # CONTEXTO DE PRODUCTO
25
- │ └── overview.md # Visión, usuarios, valor, métricas.
26
-
27
- ├── tutorials/ # APRENDER — Orientados a aprendizaje
28
- │ ├── quick-start.md # Arrancar el proyecto en 15 minutos.
29
- │ ├── environment-setup.md # Configurar el entorno de desarrollo.
30
- │ └── first-task.md # Hacer tu primera contribución end-to-end.
31
-
32
- ├── guides/ # APLICAR — Orientados a tareas
33
- │ ├── deployment.md # Cómo hacer deploy a cada entorno.
34
- │ ├── troubleshooting.md # Problemas comunes y soluciones.
35
- │ └── runbooks/ # Runbooks para incidentes.
36
- │ └── TEMPLATE.md # Plantilla para crear runbooks nuevos.
37
-
38
- ├── reference/ # CONSULTAR — Información objetiva
39
- │ ├── api.md # Referencia completa de la API.
40
- │ ├── code-style.md # Convenciones de código (naming, imports, etc.)
41
- │ ├── configuration.md # Variables de entorno y configuración.
42
- │ └── infrastructure.md # Entornos, URLs, acceso, CI/CD.
43
-
44
- ├── explanation/ # ENTENDER — Orientados a comprensión
45
- │ ├── agent-flow.md # → Redirige a docs/internal/agent-guide.md
46
- │ └── architecture.md # Cómo y por qué está diseñado el sistema.
47
-
48
- ├── adr/ # DECISIONES — Architecture Decision Records
49
- │ ├── TEMPLATE.md # Plantilla para crear ADRs nuevos.
50
- │ └── 0001-record-architecture-decisions.md # Meta-ADR: por qué usamos ADRs.
51
-
52
- └── operations/ # OPERACIONES — Monitoreo e incidentes
53
- └── README.md # Hub de operaciones: SLAs, monitoreo, post-mortems.
54
- ```
55
-
56
- ---
57
-
58
- ## Clasificación Diátaxis
59
-
60
- La documentación se organiza en cuatro cuadrantes según su propósito:
61
-
62
- | Carpeta | Cuadrante | Propósito | Se lee cuando... |
63
- |---------|-----------|-----------|------------------|
64
- | `tutorials/` | **Aprender** | Guías paso a paso para aprender haciendo | "Quiero aprender cómo funciona esto" |
65
- | `guides/` | **Aplicar** | Instrucciones para completar una tarea específica | "Necesito hacer X, ¿cómo?" |
66
- | `reference/` | **Consultar** | Información técnica objetiva y completa | "¿Cuáles son los parámetros de esta función?" |
67
- | `explanation/` | **Entender** | Contexto, porqués, decisiones de diseño | "¿Por qué se diseñó así?" |
68
-
69
- Archivos transversales que no pertenecen a un cuadrante:
70
-
71
- | Archivo | Propósito |
72
- |---------|-----------|
73
- | `CONTEXT.md` | Define el vocabulario compartido del dominio. Se consulta constantemente. |
74
- | `DESIGN.md` | Sistema de diseño visual. Referencia para todo cambio de UI. |
75
- | `roadmap.md` | Estado de features y planificación. Se actualiza con cada sprint. |
76
- | `dev-workflow.md` | Convenciones internas: git, commits, PRs, code review. |
77
- | `product/` | Contexto de negocio: visión, usuarios, stakeholders, métricas. |
78
- | `adr/` | Registro de decisiones técnicas. Se consulta antes de tomar decisiones. |
79
- | `operations/` | Monitoreo, incidentes, SLAs. Se consulta durante y después de incidentes. |
80
-
81
- ---
82
-
83
- ## Reglas de crecimiento
84
-
85
- La documentación crece orgánicamente. **No crear archivos vacíos "por si acaso".**
86
-
87
- ### Cuándo crear un archivo nuevo
88
-
89
- | Se crea cuando... | Dónde va | Tipo |
90
- |-------------------|----------|------|
91
- | Hay un nuevo tutorial paso a paso que no existe | `tutorials/` | Aprender |
92
- | Hay una tarea operativa recurrente sin guía | `guides/` | Aplicar |
93
- | Hay un componente/servicio nuevo que consultar | `reference/` | Consultar |
94
- | Hay un concepto que necesita explicación de fondo | `explanation/` | Entender |
95
- | Hay una decisión técnica con trade-offs | `adr/` | Decisión |
96
- | Hay un incidente recurrente que necesita pasos fijos | `guides/runbooks/` | Runbook |
97
-
98
- ### Cuándo NO crear un archivo
99
-
100
- - Si la información ya existe en otro lado → **enlazar, no duplicar**.
101
- - Si es un "TODO" sin contenido real → **no crear el archivo hasta tener contenido**.
102
- - Si la información cambia constantemente → **mejor ponerla en código (ej. config en `.env.example`)**.
103
-
104
- ### Reglas de nomenclatura
105
-
106
- - **Tutoriales**: Verbos en infinitivo, descriptivos. Ej. `quick-start.md`, `environment-setup.md`.
107
- - **Guías**: Sustantivos que describan la tarea. Ej. `deployment.md`, `troubleshooting.md`.
108
- - **Referencia**: Sustantivos del sistema. Ej. `api.md`, `configuration.md`, `infrastructure.md`.
109
- - **Explicación**: Conceptos amplios. Ej. `architecture.md`, `auth-flow.md`.
110
- - **ADRs**: Numerados. Ej. `0001-record-architecture-decisions.md`.
111
- - **Runbooks**: Nombre del incidente/servicio. Ej. `database-connection-timeout.md`.
112
-
113
- ---
114
-
115
- ## Convenciones de formato
116
-
117
- 1. **Todo archivo** tiene YAML frontmatter con `created`, `status`, `type`, `tags`.
118
- 2. **Todo archivo** empieza con un H1 (`#`) con el título del documento.
119
- 3. **Contenido en español**, términos técnicos y nombres de archivos en inglés.
120
- 4. **Enlaces relativos** entre archivos de documentación (no absolutos).
121
- 5. **Una fuente de verdad**: cada dato vive en UN archivo. En los demás, enlazar.
122
-
123
- ---
124
-
125
- ## Mantenimiento
126
-
127
- La documentación se mantiene actualizada siguiendo el protocolo definido en [`AGENTS.md`](../AGENTS.md). Después de cada tarea, verificar la checklist post-tarea para actualizar los archivos afectados.
128
-
129
- Para auditar el estado de la documentación, usar la skill `doc-review`.
130
-
131
- Para validación automática en CI, ver [`.github/workflows/docs-check.yml`](../.github/workflows/docs-check.yml).