@tacuchi/agent-workflow-cli 6.1.0 → 7.0.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.
- package/README.md +65 -12
- package/dist/application/profile/profile-service.d.ts +53 -0
- package/dist/application/profile/profile-service.d.ts.map +1 -0
- package/dist/application/profile/profile-service.js +210 -0
- package/dist/application/profile/profile-service.js.map +1 -0
- package/dist/application/render/history-row.d.ts.map +1 -1
- package/dist/application/render/history-row.js +5 -0
- package/dist/application/render/history-row.js.map +1 -1
- package/dist/application/self/bootstrap.js +2 -1
- package/dist/application/self/bootstrap.js.map +1 -1
- package/dist/application/self/detect-hosts.d.ts +18 -0
- package/dist/application/self/detect-hosts.d.ts.map +1 -0
- package/dist/application/self/detect-hosts.js +37 -0
- package/dist/application/self/detect-hosts.js.map +1 -0
- package/dist/application/self/install-hooks.d.ts +30 -0
- package/dist/application/self/install-hooks.d.ts.map +1 -0
- package/dist/application/self/install-hooks.js +253 -0
- package/dist/application/self/install-hooks.js.map +1 -0
- package/dist/application/self/install-skill.d.ts +2 -0
- package/dist/application/self/install-skill.d.ts.map +1 -1
- package/dist/application/self/install-skill.js +69 -3
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/session-close-service.d.ts +10 -0
- package/dist/application/session-close-service.d.ts.map +1 -1
- package/dist/application/session-close-service.js +87 -10
- package/dist/application/session-close-service.js.map +1 -1
- package/dist/cli/commands/self.d.ts.map +1 -1
- package/dist/cli/commands/self.js +9 -1
- package/dist/cli/commands/self.js.map +1 -1
- package/dist/cli/commands/session-close.d.ts.map +1 -1
- package/dist/cli/commands/session-close.js +11 -0
- package/dist/cli/commands/session-close.js.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.js +100 -24
- package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
- package/package.json +2 -2
- package/skills/agent-workflow/commands/README.md +24 -0
- package/skills/agent-workflow/commands/agent-workflow-compact.md +24 -0
- package/skills/agent-workflow/commands/agent-workflow-doctor.md +100 -0
- package/skills/agent-workflow/commands/agent-workflow-export-arq.md +77 -0
- package/skills/agent-workflow/commands/agent-workflow-export-conclusions.md +78 -0
- package/skills/agent-workflow/commands/agent-workflow-export-plan.md +74 -0
- package/skills/agent-workflow/commands/agent-workflow-export-qa-note.md +30 -0
- package/skills/agent-workflow/commands/agent-workflow-export-report.md +78 -0
- package/skills/agent-workflow/commands/agent-workflow-export-requirement.md +30 -0
- package/skills/agent-workflow/commands/agent-workflow-export-scripts.md +92 -0
- package/skills/agent-workflow/commands/agent-workflow-export-tech-manuals.md +75 -0
- package/skills/agent-workflow/commands/agent-workflow-export-tech-note.md +30 -0
- package/skills/agent-workflow/commands/agent-workflow-hub-init.md +82 -0
- package/skills/agent-workflow/commands/agent-workflow-migrate.md +56 -0
- package/skills/agent-workflow/commands/agent-workflow-project-init.md +60 -0
- package/skills/agent-workflow/commands/agent-workflow-resume.md +22 -0
- package/skills/agent-workflow/commands/agent-workflow-rules.md +40 -0
- package/skills/agent-workflow/commands/agent-workflow-session.md +35 -0
- package/skills/agent-workflow/doctrine/README.md +15 -0
- package/skills/agent-workflow/doctrine/compact/SKILL.md +145 -0
- package/skills/agent-workflow/doctrine/doctor/SKILL.md +86 -0
- package/skills/agent-workflow/doctrine/doctor/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/doctrine/hub-init/SKILL.md +157 -0
- package/skills/agent-workflow/doctrine/hub-init/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/doctrine/hub-init/references/multiroot-manual.md +51 -0
- package/skills/agent-workflow/doctrine/implement/SKILL.md +290 -0
- package/skills/agent-workflow/doctrine/implement/references/branch-verification.md +16 -0
- package/skills/agent-workflow/doctrine/implement/references/design-md-template.md +108 -0
- package/skills/agent-workflow/doctrine/implement/references/rollback-guide.md +81 -0
- package/skills/agent-workflow/doctrine/migrate/SKILL.md +281 -0
- package/skills/agent-workflow/doctrine/migrate/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/doctrine/project-init/SKILL.md +100 -0
- package/skills/agent-workflow/doctrine/project-init/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/doctrine/refactor/SKILL.md +208 -0
- package/skills/agent-workflow/doctrine/refactor/references/refactor-md-template.md +108 -0
- package/skills/agent-workflow/doctrine/refactor/references/strangler-checklist.md +116 -0
- package/skills/agent-workflow/doctrine/resume/SKILL.md +199 -0
- package/skills/agent-workflow/doctrine/rules/SKILL.md +224 -0
- package/skills/agent-workflow/doctrine/rules/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/doctrine/session/SKILL.md +383 -0
- package/skills/agent-workflow/doctrine/session/references/auto-plan-rules.md +63 -0
- package/skills/agent-workflow/doctrine/session/references/backlog-template.md +95 -0
- package/skills/agent-workflow/doctrine/session/references/branch-verification.md +198 -0
- package/skills/agent-workflow/doctrine/session/references/commits-policy.md +111 -0
- package/skills/agent-workflow/doctrine/session/references/communication-style.md +50 -0
- package/skills/agent-workflow/doctrine/session/references/graduacion-routing.md +88 -0
- package/skills/agent-workflow/doctrine/session/references/lifecycle-deep.md +160 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/C1-specialty-selection.md +11 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/C2-cost-guard.md +14 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M1-closure-commit-prompt.md +104 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M10-next-step.md +17 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M11-context.md +16 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M2-branch-caso-A.md +14 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M3-branch-caso-C.md +33 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M4-cross-source-hard-gate.md +33 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M5-modality-analyze.md +15 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M6-phase-gate.md +31 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M7-refactor-legacy-detected.md +28 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M8-refactor-cleanup.md +16 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/M9-contract-review.md +39 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S1-type-design.md +15 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S2-topic-change-detection.md +14 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S3-flow-detection.md +28 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S4-resume.md +27 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S5-post-compact.md +17 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S6-scope.md +16 -0
- package/skills/agent-workflow/doctrine/session/references/prompts/S7-design-review.md +37 -0
- package/skills/agent-workflow/doctrine/session/references/prompts-catalog.md +210 -0
- package/skills/agent-workflow/doctrine/session/references/sandbox-readonly-rules.md +82 -0
- package/skills/agent-workflow/doctrine/session/references/specialty-decision-tree.md +56 -0
- package/skills/agent-workflow/doctrine/session/references/topic-change-rules.md +67 -0
- package/skills/agent-workflow/exports/README.md +15 -0
- package/skills/agent-workflow/exports/export-arq/SKILL.md +229 -0
- package/skills/agent-workflow/exports/export-arq/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/exports/export-arq/references/lexico-tecnico.md +94 -0
- package/skills/agent-workflow/exports/export-arq/references/template-c4.md +293 -0
- package/skills/agent-workflow/exports/export-arq/references/template-plantuml.puml +77 -0
- package/skills/agent-workflow/exports/export-arq/references/template-structurizr.dsl +72 -0
- package/skills/agent-workflow/exports/export-arq/references/validations.md +231 -0
- package/skills/agent-workflow/exports/export-conclusions/SKILL.md +169 -0
- package/skills/agent-workflow/exports/export-conclusions/references/dedup-rules.md +154 -0
- package/skills/agent-workflow/exports/export-conclusions/references/template-conclusions.md +158 -0
- package/skills/agent-workflow/exports/export-plan/SKILL.md +225 -0
- package/skills/agent-workflow/exports/export-plan/references/state-transitions.md +141 -0
- package/skills/agent-workflow/exports/export-plan/references/template-plan.md +132 -0
- package/skills/agent-workflow/exports/export-qa-note/SKILL.md +31 -0
- package/skills/agent-workflow/exports/export-report/SKILL.md +262 -0
- package/skills/agent-workflow/exports/export-report/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/exports/export-report/references/lexico.md +174 -0
- package/skills/agent-workflow/exports/export-report/references/template-a.md +95 -0
- package/skills/agent-workflow/exports/export-report/references/template-b.md +221 -0
- package/skills/agent-workflow/exports/export-report/references/template-c.md +180 -0
- package/skills/agent-workflow/exports/export-report/references/validations.md +255 -0
- package/skills/agent-workflow/exports/export-requirement/SKILL.md +31 -0
- package/skills/agent-workflow/exports/export-scripts/SKILL.md +324 -0
- package/skills/agent-workflow/exports/export-scripts/references/code-scan-recommendations.md +83 -0
- package/skills/agent-workflow/exports/export-scripts/references/deprecation-plan.md +80 -0
- package/skills/agent-workflow/exports/export-scripts/references/lexico-tecnico.md +80 -0
- package/skills/agent-workflow/exports/export-scripts/references/manifest-template.md +253 -0
- package/skills/agent-workflow/exports/export-scripts/references/readme-template.md +79 -0
- package/skills/agent-workflow/exports/export-scripts/references/theme-handling.md +168 -0
- package/skills/agent-workflow/exports/export-scripts/references/validations.md +242 -0
- package/skills/agent-workflow/exports/export-tech-manuals/SKILL.md +214 -0
- package/skills/agent-workflow/exports/export-tech-manuals/references/lexico-tecnico.md +97 -0
- package/skills/agent-workflow/exports/export-tech-manuals/references/template-index.md +123 -0
- package/skills/agent-workflow/exports/export-tech-manuals/references/template-manual.md +143 -0
- package/skills/agent-workflow/exports/export-tech-manuals/references/validations.md +211 -0
- package/skills/agent-workflow/exports/export-tech-note/SKILL.md +31 -0
- package/skills/agent-workflow/hooks/README.md +15 -0
- package/skills/agent-workflow/hooks/hooks.template.json +90 -0
- package/skills/agent-workflow/references/README.md +12 -0
- package/skills/agent-workflow/references/legacy-anchors.md +50 -0
- package/skills/agent-workflow/references/profile-parametrization.md +88 -0
- package/skills/agent-workflow/specialties/README.md +14 -0
- package/skills/agent-workflow/specialties/analyze-conclude/SKILL.md +175 -0
- package/skills/agent-workflow/specialties/analyze-conclude/references/incident-classification.md +61 -0
- package/skills/agent-workflow/specialties/analyze-investigate/SKILL.md +148 -0
- package/skills/agent-workflow/specialties/analyze-investigate/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/specialties/analyze-investigate/references/cost-guard.md +85 -0
- package/skills/agent-workflow/specialties/analyze-synthesize/SKILL.md +127 -0
- package/skills/agent-workflow/specialties/design-brief/SKILL.md +90 -0
- package/skills/agent-workflow/specialties/design-deliver/SKILL.md +121 -0
- package/skills/agent-workflow/specialties/design-develop/SKILL.md +115 -0
- package/skills/agent-workflow/specialties/design-discover/SKILL.md +103 -0
- package/skills/agent-workflow/standards/README.md +12 -0
- package/skills/agent-workflow/standards/coding-standards/SKILL.md +102 -0
- package/skills/agent-workflow/standards/coding-standards/SKILL.md.tmp +0 -0
- package/skills/agent-workflow/standards/coding-standards/references/angular-typescript.md +266 -0
- package/skills/agent-workflow/standards/coding-standards/references/database-conventions.md +170 -0
- package/skills/agent-workflow/standards/coding-standards/references/fe-be-integration.md +300 -0
- package/skills/agent-workflow/standards/coding-standards/references/frontend-structure.md +182 -0
- package/skills/agent-workflow/standards/coding-standards/references/java-spring.md +244 -0
- package/skills/agent-workflow/standards/coding-standards/references/project-structure.md +197 -0
- package/skills/agent-workflow/standards/frontend-design/SKILL.md +62 -0
- package/skills/agent-workflow/standards/frontend-design/references/feedback-toasts-patterns.md +249 -0
- package/skills/agent-workflow/standards/frontend-design/references/form-patterns.md +278 -0
- package/skills/agent-workflow/standards/frontend-design/references/list-patterns.md +256 -0
- package/skills/agent-workflow/standards/frontend-design/references/modal-patterns.md +220 -0
- package/skills/agent-workflow/standards/frontend-design/references/navigation-patterns.md +224 -0
- package/skills/agent-workflow/standards/redaccion-simple/SKILL.md +128 -0
- package/skills/agent-workflow/standards/sql-rollback-generator/SKILL.md +197 -0
- package/skills/agent-workflow/standards/sql-rollback-generator/references/irreversible-checklist.md +161 -0
- package/skills/agent-workflow/standards/sql-rollback-generator/references/release-rollback.md +131 -0
- package/skills/agent-workflow/standards/sql-rollback-generator/references/rollback-patterns.md +255 -0
- package/skills/agent-workflow/standards/sql-script-organizer/SKILL.md +244 -0
- package/skills/agent-workflow/standards/sql-script-organizer/references/bundle-readme-template.md +82 -0
- package/skills/agent-workflow/standards/sql-script-organizer/references/categorization-rules.md +122 -0
- package/skills/agent-workflow/standards/sql-script-organizer/references/consolidation-cross-session.md +125 -0
- package/skills/agent-workflow/standards/sql-script-organizer/references/scripts-sql-format.md +140 -0
- package/skills/agent-workflow/standards/testing-strategy/SKILL.md +113 -0
- package/skills/agent-workflow/standards/testing-strategy/references/test-levels.md +255 -0
- package/skills/agent-workflow/workflows/README.md +12 -0
- package/skills/agent-workflow/workflows/analyze-workflow/SKILL.md +107 -0
- package/skills/agent-workflow/workflows/design-workflow/SKILL.md +100 -0
- package/skills/agent-workflow/workflows/dev-workflow/SKILL.md +195 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Léxico técnico — limpieza mínima de noise para export-tech-manuals
|
|
2
|
+
|
|
3
|
+
A diferencia de `export-report/references/lexico.md` (que traduce técnico→ejecutivo para audiencia gerencial), este léxico es **mínimo**: la audiencia de `export-tech-manuals` es técnica (operadores/soporte/onboarding) y los términos técnicos son bienvenidos.
|
|
4
|
+
|
|
5
|
+
Mismo patrón que `export-arq/references/lexico-tecnico.md`: vetar sólo el "noise" interno.
|
|
6
|
+
|
|
7
|
+
## Lista vetada (V2 — para grep determinista)
|
|
8
|
+
|
|
9
|
+
Términos / patrones que **no deben aparecer** en el cuerpo del output (excepto en `## Referencias`):
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
{{
|
|
13
|
+
}}
|
|
14
|
+
<-- TODO
|
|
15
|
+
<-- FIXME
|
|
16
|
+
<-- WIP
|
|
17
|
+
<-- XXX
|
|
18
|
+
{{PRODUCTO}}
|
|
19
|
+
{{FECHA
|
|
20
|
+
{{TITULO
|
|
21
|
+
{{SESIONES
|
|
22
|
+
{{PROPOSITO
|
|
23
|
+
{{PREREQUISITOS
|
|
24
|
+
{{PASO_
|
|
25
|
+
{{PASOS_
|
|
26
|
+
{{VALIDACION
|
|
27
|
+
{{TROUBLESHOOTING
|
|
28
|
+
{{REFERENCIAS
|
|
29
|
+
{{N_MANUALES
|
|
30
|
+
{{N_TEMAS
|
|
31
|
+
{{TABLA_
|
|
32
|
+
{{PROXIMOS_PASOS
|
|
33
|
+
sessionXXX
|
|
34
|
+
sessionYYY
|
|
35
|
+
sessionNNN
|
|
36
|
+
DEC-NNN
|
|
37
|
+
NNN-export-tech-manuals
|
|
38
|
+
YYYY-MM-DD
|
|
39
|
+
/Users/
|
|
40
|
+
~/Git/
|
|
41
|
+
TODO:
|
|
42
|
+
FIXME:
|
|
43
|
+
WIP:
|
|
44
|
+
XXX:
|
|
45
|
+
HACK:
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
**Qué busca esta lista**:
|
|
49
|
+
- **Placeholders no reemplazados** (`{{...}}`): indica fallo del render.
|
|
50
|
+
- **Fragmentos de plantilla** (`<-- TODO`, etc.): noise residual del template.
|
|
51
|
+
- **Paths absolutos del developer** (`/Users/`, `~/Git/`): filtran info local.
|
|
52
|
+
- **Markers WIP** (TODO/FIXME/HACK con dos puntos): incompletos sin terminar.
|
|
53
|
+
|
|
54
|
+
**Excepciones autorizadas** (V2 las exime):
|
|
55
|
+
- Sección `## Referencias` puede contener placeholders esperados (ej. `NNN-` en paths tipo).
|
|
56
|
+
- Header del documento puede contener identificadores del producto canónicos.
|
|
57
|
+
- Sección `## Troubleshooting` puede mencionar errores que contienen jerga técnica del dominio (ej. mensaje literal del sistema).
|
|
58
|
+
|
|
59
|
+
## Cómo validar
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
awk '
|
|
63
|
+
BEGIN { body=0 }
|
|
64
|
+
/^## Referencias/ { body=0 }
|
|
65
|
+
body { print }
|
|
66
|
+
/^## / && !/Referencias/ { body=1 }
|
|
67
|
+
' output.md > /tmp/body.md
|
|
68
|
+
|
|
69
|
+
grep -n -F -f lexico-noise-vetado.txt /tmp/body.md
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Salida vacía → V2 pasa. Salida con matches → V2 falla.
|
|
73
|
+
|
|
74
|
+
## Reglas adicionales de redacción
|
|
75
|
+
|
|
76
|
+
Aplicables al render de cada manual o del INDEX. Heredan de `agent-workflow:redaccion-simple` preset default:
|
|
77
|
+
|
|
78
|
+
- **Frases cortas**: ≤20 palabras.
|
|
79
|
+
- **Listas sobre prosa**: 3+ items paralelos → bullets.
|
|
80
|
+
- **Una idea por línea en bullets**.
|
|
81
|
+
- **Verbos directos**: "Ejecutar" mejor que "Se procede a ejecutar".
|
|
82
|
+
- **Sin pasos compuestos**: una acción por paso numerado.
|
|
83
|
+
- **Términos técnicos OK**: del dominio (`agent-workflow`, `MCP`, `hook`, `kind`, `session`) están autorizados.
|
|
84
|
+
- **Acrónimos**: glosarlos la primera vez si no son del dominio universal del lector técnico operativo.
|
|
85
|
+
- **Sin nombres del developer** (ni paths absolutos, ni emails, ni handles).
|
|
86
|
+
- **Códigos / comandos en backticks**: `agent-workflow session-create` siempre con backticks; no en prosa cursiva.
|
|
87
|
+
|
|
88
|
+
## Diferencias con los lexicos hermanos
|
|
89
|
+
|
|
90
|
+
| Aspecto | `export-tech-manuals/lexico-tecnico.md` | `export-arq/lexico-tecnico.md` | `export-report/lexico.md` |
|
|
91
|
+
|---|---|---|---|
|
|
92
|
+
| Foco | Limpieza noise + render checks | Limpieza noise + render checks | Traducción técnica → ejecutiva |
|
|
93
|
+
| Tamaño | ~30 términos vetados | ~25 términos vetados | ~75 términos vetados |
|
|
94
|
+
| Audiencia | operadores/soporte/onboarding | devs/arquitectos | gerencia/jefatura/comité |
|
|
95
|
+
| Tabla de traducción | ninguna | ninguna | ~45 pares |
|
|
96
|
+
| Términos técnicos del dominio | autorizados | autorizados | vetados (a traducir) |
|
|
97
|
+
| Grep mode | `-F -f` case-sensitive | `-F -f` case-sensitive | `-i -F -f` case-insensitive |
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Plantilla canónica — INDEX.md (modo `complementar`)
|
|
2
|
+
|
|
3
|
+
Plantilla para el archivo único `docs/manuales/INDEX.md` que el skill sobrescribe en modo `complementar`. Es re-generable, sin numeración NNN — siempre vive en el mismo path.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
```markdown
|
|
8
|
+
# Manuales técnicos — {{PRODUCTO}}
|
|
9
|
+
|
|
10
|
+
Índice consolidado actualizado al {{FECHA_GENERACION}}.
|
|
11
|
+
Total: {{N_MANUALES_GRADUADOS}} manuales graduados · {{N_TEMAS_NO_GRADUADOS}} temas sin graduar detectables.
|
|
12
|
+
|
|
13
|
+
## Manuales graduados
|
|
14
|
+
|
|
15
|
+
<!-- Tabla de manuales graduados (`kind=manual`) presentes en docs/manuales/NNN-*.md.
|
|
16
|
+
Una fila por manual. Columna "Sesiones de origen" si el manual está vinculado
|
|
17
|
+
a sesiones específicas (extraído de YAML frontmatter o primer párrafo). -->
|
|
18
|
+
|
|
19
|
+
| Slug | Manual | Sesiones de origen |
|
|
20
|
+
|---|---|---|
|
|
21
|
+
{{TABLA_MANUALES_GRADUADOS}}
|
|
22
|
+
|
|
23
|
+
## Temas sin graduar detectables
|
|
24
|
+
|
|
25
|
+
<!-- Tabla de temas con potencial de ser manuales pero aún no graduados.
|
|
26
|
+
Detección por `## Topics`/`## Temas` en OBJECTIVE.md del corpus + heurística por
|
|
27
|
+
keywords operativos. Confidence: alta (declarado) / media (inferido). -->
|
|
28
|
+
|
|
29
|
+
| Tema | Slug | Sesiones de origen | Confidence |
|
|
30
|
+
|---|---|---|---|
|
|
31
|
+
{{TABLA_TEMAS_NO_GRADUADOS}}
|
|
32
|
+
|
|
33
|
+
## Próximos pasos sugeridos
|
|
34
|
+
|
|
35
|
+
<!-- Sólo aparece si hay ≥1 tema no graduado. Lista de bullets con sugerencias para
|
|
36
|
+
materializar los temas en manuales formales graduados. -->
|
|
37
|
+
|
|
38
|
+
{{PROXIMOS_PASOS_OR_OMIT}}
|
|
39
|
+
|
|
40
|
+
## Cómo refrescar este índice
|
|
41
|
+
|
|
42
|
+
Este archivo se re-genera ejecutando:
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
/agent-workflow:export-tech-manuals
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
(modo `complementar` es el default). El comando sobrescribe `INDEX.md` con el estado actual del workspace; no requiere borrar manualmente. Cada invocación es idempotente sobre el mismo corpus.
|
|
49
|
+
|
|
50
|
+
Para producir un dossier consolidado de manuales (paquete onboarding, por ej):
|
|
51
|
+
|
|
52
|
+
```
|
|
53
|
+
/agent-workflow:export-tech-manuals --mode regenerar
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Esto crea un dossier dentro de `docs/manuales/` con número secuencial y fecha en el nombre, conteniendo un manual por tema detectado.
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Placeholders detallados
|
|
62
|
+
|
|
63
|
+
### `{{PRODUCTO}}`
|
|
64
|
+
|
|
65
|
+
Nombre del workspace/producto. Mismo patrón que en `template-c4.md` de export-arq.
|
|
66
|
+
|
|
67
|
+
### `{{FECHA_GENERACION}}`
|
|
68
|
+
|
|
69
|
+
Formato natural ES: `18 de mayo de 2026`.
|
|
70
|
+
|
|
71
|
+
### `{{N_MANUALES_GRADUADOS}}`
|
|
72
|
+
|
|
73
|
+
Count de archivos `docs/manuales/NNN-*.md` (excluyendo `INDEX.md` y dossiers `NNN-export-tech-manuals-*/`).
|
|
74
|
+
|
|
75
|
+
### `{{N_TEMAS_NO_GRADUADOS}}`
|
|
76
|
+
|
|
77
|
+
Count de temas detectables del corpus que no tienen un manual graduado correspondiente.
|
|
78
|
+
|
|
79
|
+
### `{{TABLA_MANUALES_GRADUADOS}}`
|
|
80
|
+
|
|
81
|
+
Filas con:
|
|
82
|
+
- Slug (extraído del filename `NNN-<slug>.md`).
|
|
83
|
+
- Manual (link al path, ej. `[Configurar MCP](007-configurar-mcp.md)`).
|
|
84
|
+
- Sesiones de origen (lista coma-separada, si extraíble del manual).
|
|
85
|
+
|
|
86
|
+
Si 0 manuales graduados:
|
|
87
|
+
```
|
|
88
|
+
| _Sin manuales graduados en este workspace todavía._ | — | — |
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Una sola fila informativa, no múltiples.
|
|
92
|
+
|
|
93
|
+
### `{{TABLA_TEMAS_NO_GRADUADOS}}`
|
|
94
|
+
|
|
95
|
+
Filas con:
|
|
96
|
+
- Tema (descripción humana corta).
|
|
97
|
+
- Slug (kebab-case).
|
|
98
|
+
- Sesiones de origen.
|
|
99
|
+
- Confidence: `alta` (declarado en `## Topics`/`## Temas`) o `media` (inferido por keywords).
|
|
100
|
+
|
|
101
|
+
Si 0 temas detectables: omitir la sección entera (no aparece encabezado vacío).
|
|
102
|
+
|
|
103
|
+
### `{{PROXIMOS_PASOS_OR_OMIT}}`
|
|
104
|
+
|
|
105
|
+
**A. Si N_TEMAS_NO_GRADUADOS > 0** → bullets:
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
- Crear sesión dev `flow=dev` para materializar el tema "{{tema_1}}" como manual graduado.
|
|
109
|
+
- Crear sesión dev para "{{tema_2}}".
|
|
110
|
+
- (...)
|
|
111
|
+
- Para cada manual nuevo: `agent-workflow graduate --kind manual --session <CODE> --slug <kebab>`.
|
|
112
|
+
- Tras graduar: re-correr `/agent-workflow:export-tech-manuals` para actualizar este índice.
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
**B. Si N_TEMAS_NO_GRADUADOS == 0** → cadena vacía. La sección no aparece.
|
|
116
|
+
|
|
117
|
+
## Reglas de render
|
|
118
|
+
|
|
119
|
+
1. **Idempotente conceptual**: misma invocación sobre mismo corpus produce mismo `INDEX.md`.
|
|
120
|
+
2. **Sin numeración NNN para INDEX**: el INDEX vive en `docs/manuales/INDEX.md` siempre, sobrescribible.
|
|
121
|
+
3. **Cero placeholders sin reemplazar**: V2 grep determinístico atrapa fallas del render.
|
|
122
|
+
4. **Tablas vacías → fila informativa, no eliminadas**: comunica al lector que la sección fue evaluada.
|
|
123
|
+
5. **Sección "Próximos pasos" condicional**: V4 honored; ausencia significa "no hay nada que sugerir".
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
# Plantilla canónica — Manual técnico (modo `regenerar`)
|
|
2
|
+
|
|
3
|
+
Plantilla para un manual técnico individual. Cada archivo del dossier `docs/manuales/NNN-export-tech-manuals-YYYY-MM-DD/` sigue esta estructura.
|
|
4
|
+
|
|
5
|
+
**Audiencia**: operadores / soporte / nuevos miembros del equipo que necesitan ejecutar la tarea descrita sin invocar al equipo de desarrollo.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
# {{TITULO_MANUAL}}
|
|
11
|
+
|
|
12
|
+
> Manual técnico generado desde {{SESIONES_ORIGEN}} el {{FECHA_GENERACION}}.
|
|
13
|
+
> Audiencia: operadores / soporte / onboarding.
|
|
14
|
+
|
|
15
|
+
## Propósito
|
|
16
|
+
|
|
17
|
+
<!-- 1-2 oraciones. Qué problema operativo resuelve este manual. -->
|
|
18
|
+
|
|
19
|
+
{{PROPOSITO}}
|
|
20
|
+
|
|
21
|
+
## Pre-requisitos
|
|
22
|
+
|
|
23
|
+
<!-- Bullets cortos. Conocimientos previos, accesos requeridos, herramientas instaladas. -->
|
|
24
|
+
|
|
25
|
+
{{PREREQUISITOS}}
|
|
26
|
+
|
|
27
|
+
## Pasos
|
|
28
|
+
|
|
29
|
+
<!-- Numeración secuencial. Cada paso ≤2 frases. Si un paso requiere validar algo,
|
|
30
|
+
incluir la verificación inline ("ejecutar X; confirmar que retorna Y"). -->
|
|
31
|
+
|
|
32
|
+
1. {{PASO_1}}
|
|
33
|
+
2. {{PASO_2}}
|
|
34
|
+
3. {{PASO_3}}
|
|
35
|
+
{{PASOS_RESTO}}
|
|
36
|
+
|
|
37
|
+
## Validación post-uso
|
|
38
|
+
|
|
39
|
+
<!-- Cómo el operador confirma que el procedimiento se completó correctamente.
|
|
40
|
+
Bullets con resultados esperados verificables. -->
|
|
41
|
+
|
|
42
|
+
{{VALIDACION}}
|
|
43
|
+
|
|
44
|
+
## Troubleshooting
|
|
45
|
+
|
|
46
|
+
<!-- Errores típicos + cómo resolverlos. Tabla o bullets. Si no se identifican
|
|
47
|
+
errores típicos, escribir "Sin errores típicos identificados al momento de
|
|
48
|
+
generar este manual." -->
|
|
49
|
+
|
|
50
|
+
{{TROUBLESHOOTING}}
|
|
51
|
+
|
|
52
|
+
## Referencias
|
|
53
|
+
|
|
54
|
+
<!-- Links a sesiones de origen, decisiones relacionadas, documentación adicional. -->
|
|
55
|
+
|
|
56
|
+
{{REFERENCIAS}}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Placeholders detallados
|
|
62
|
+
|
|
63
|
+
### `{{TITULO_MANUAL}}`
|
|
64
|
+
|
|
65
|
+
Título descriptivo en oración (no en infinitivo de comando). Ejemplos:
|
|
66
|
+
- "Configurar un servidor MCP de consulta a base de datos"
|
|
67
|
+
- "Crear y cerrar una sesión qtc-* desde cero"
|
|
68
|
+
- "Migrar sesiones legacy al formato común"
|
|
69
|
+
|
|
70
|
+
### `{{SESIONES_ORIGEN}}`
|
|
71
|
+
|
|
72
|
+
Lista coma-separada de las sesiones del corpus que aportaron contenido al manual.
|
|
73
|
+
|
|
74
|
+
Ejemplo: `session031-analyze-revisar-mcp-bd, session032-dev-configurar-mcp-manual, session033-dev-fix-mcp-claude-target`
|
|
75
|
+
|
|
76
|
+
### `{{FECHA_GENERACION}}`
|
|
77
|
+
|
|
78
|
+
Fecha en formato natural ES: `18 de mayo de 2026`.
|
|
79
|
+
|
|
80
|
+
### `{{PROPOSITO}}` (1-2 oraciones)
|
|
81
|
+
|
|
82
|
+
Qué problema operativo resuelve. Sin marketing. Verbos directos.
|
|
83
|
+
|
|
84
|
+
### `{{PREREQUISITOS}}` (bullets cortos)
|
|
85
|
+
|
|
86
|
+
- Conocimientos previos asumidos (ej. "Familiaridad con línea de comandos").
|
|
87
|
+
- Accesos requeridos (ej. "Cuenta en npm registry para publicar el CLI").
|
|
88
|
+
- Herramientas instaladas (ej. "Node.js ≥ 18, git ≥ 2.20").
|
|
89
|
+
- Configuración previa necesaria.
|
|
90
|
+
|
|
91
|
+
### `{{PASOS}}` (numerados)
|
|
92
|
+
|
|
93
|
+
Secuencia operativa concreta. Cada paso ejecutable y verificable. Evitar pasos compuestos ("hacer A y B"); separarlos.
|
|
94
|
+
|
|
95
|
+
Formato sugerido:
|
|
96
|
+
```
|
|
97
|
+
1. **Ejecutar comando X**: `agent-workflow session-create --flow dev --name foo`. Verificar que retorna `ok: true`.
|
|
98
|
+
2. **Abrir archivo Y**: `.workflow/sessions/sessionNNN-dev-foo/OBJECTIVE.md` aparece con headers EN canon.
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### `{{VALIDACION}}` (bullets)
|
|
102
|
+
|
|
103
|
+
Resultados verificables que confirman éxito.
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
- El comando devolvió código de salida 0.
|
|
107
|
+
- El archivo X existe en el path Y.
|
|
108
|
+
- La consulta Z retorna N filas (donde N matchea el conteo previo).
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### `{{TROUBLESHOOTING}}` (tabla o bullets)
|
|
112
|
+
|
|
113
|
+
Tabla preferida cuando hay 3+ errores típicos:
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
| Error | Causa probable | Resolución |
|
|
117
|
+
|---|---|---|
|
|
118
|
+
| "ENOENT: no such file" | Sesión no creada | Ejecutar paso 1 primero |
|
|
119
|
+
| "branch mismatch" | Rama incorrecta | `git checkout feature/last` |
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Si no se identifican: `_Sin errores típicos identificados al momento de generar este manual._`
|
|
123
|
+
|
|
124
|
+
### `{{REFERENCIAS}}`
|
|
125
|
+
|
|
126
|
+
Bullets con paths/links:
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
- Sesión origen: `.workflow/sessions/session031-analyze-revisar-mcp-bd/CONCLUSIONS.md`
|
|
130
|
+
- Decisiones: `.workflow/sessions/session032-dev-configurar-mcp-manual/DECISIONS.md`
|
|
131
|
+
- Propuesta relevante: `docs/conclusiones/004-audit-test.md`
|
|
132
|
+
- Comando del CLI: `agent-workflow mcp configure`
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
## Reglas de render
|
|
136
|
+
|
|
137
|
+
1. **Audiencia operativa**: cada paso debe ser ejecutable por alguien que NO participó en el desarrollo. Sin "obvio", "trivial", "como se sabe".
|
|
138
|
+
2. **Léxico técnico OK**: términos del dominio (`agent-workflow`, `session`, `MCP`, `hook`) están autorizados. Los acrónimos no obvios sí glosarse la primera vez.
|
|
139
|
+
3. **Verbos directos**: "Ejecutar X", "Verificar Y", "Crear Z". No infinitivos perifrásticos ("Se debe ejecutar X").
|
|
140
|
+
4. **Sin pasos compuestos**: una acción por paso. Si la tarea es "A y B", separar en pasos.
|
|
141
|
+
5. **Validación inline cuando posible**: cada paso que produce un side-effect debe declarar cómo verificarlo, además de la sección §Validación.
|
|
142
|
+
6. **Sin diagramas obligatorios**: si un flow es complejo, opt-in a un Mermaid `flowchart` simple. Default: cero diagramas.
|
|
143
|
+
7. **Sin cota dura de palabras**: la longitud la dicta el tema. Manuales de 200w (configuración simple) y de 1500w (procedimiento multi-paso) son ambos válidos.
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
# Validations — V1-V6 para `/agent-workflow:export-tech-manuals`
|
|
2
|
+
|
|
3
|
+
Checks post-render que se aplican antes de escribir output al filesystem. Reglas adaptadas a los **2 modos** del comando (`complementar` y `regenerar`).
|
|
4
|
+
|
|
5
|
+
Niveles de severidad:
|
|
6
|
+
- **Hard-fail**: aborta la escritura, devuelve `ok: false` con error report. No se crea el archivo.
|
|
7
|
+
- **Warning**: emite mensaje, pide confirmación del usuario.
|
|
8
|
+
|
|
9
|
+
## V1 — Estructura por modo
|
|
10
|
+
|
|
11
|
+
**Severidad**: hard-fail si faltan secciones obligatorias del modo activo.
|
|
12
|
+
|
|
13
|
+
**Modo `complementar`** (output = `INDEX.md`):
|
|
14
|
+
Secciones obligatorias en orden:
|
|
15
|
+
1. `# Manuales técnicos — <PRODUCTO>` (header con título)
|
|
16
|
+
2. `## Manuales graduados`
|
|
17
|
+
3. `## Temas sin graduar detectables` (condicional — V4)
|
|
18
|
+
4. `## Próximos pasos sugeridos` (condicional — V4)
|
|
19
|
+
5. `## Cómo refrescar este índice`
|
|
20
|
+
|
|
21
|
+
**Modo `regenerar`** (output = N archivos en dossier):
|
|
22
|
+
Cada archivo `.md` del dossier debe tener:
|
|
23
|
+
1. `# <TITULO_MANUAL>` (header)
|
|
24
|
+
2. `## Propósito`
|
|
25
|
+
3. `## Pre-requisitos`
|
|
26
|
+
4. `## Pasos`
|
|
27
|
+
5. `## Validación post-uso`
|
|
28
|
+
6. `## Troubleshooting`
|
|
29
|
+
7. `## Referencias`
|
|
30
|
+
|
|
31
|
+
Adicionalmente, el dossier debe tener un `README.md` con índice de los manuales generados.
|
|
32
|
+
|
|
33
|
+
**Error report (hard-fail)**:
|
|
34
|
+
```
|
|
35
|
+
V1 FAILED: estructura inválida
|
|
36
|
+
modo: regenerar
|
|
37
|
+
archivo: 01-configurar-mcp.md
|
|
38
|
+
esperado: Propósito, Pre-requisitos, Pasos, Validación post-uso, Troubleshooting, Referencias
|
|
39
|
+
encontrado: Propósito, Pre-requisitos, Pasos, Referencias
|
|
40
|
+
faltantes: Validación post-uso, Troubleshooting
|
|
41
|
+
acción: regenerar el manual incluyendo las secciones faltantes
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## V2 — Noise vetado
|
|
45
|
+
|
|
46
|
+
**Severidad**: hard-fail si hay ≥1 ocurrencia en el cuerpo (header y `## Referencias` exentos).
|
|
47
|
+
|
|
48
|
+
**Scope**: body-only (después del primer `## ` y antes de `## Referencias`).
|
|
49
|
+
|
|
50
|
+
**Lista vetada**: ver `lexico-tecnico.md` §"Lista vetada".
|
|
51
|
+
|
|
52
|
+
**Cómo validar**:
|
|
53
|
+
```bash
|
|
54
|
+
awk '
|
|
55
|
+
BEGIN { body=0 }
|
|
56
|
+
/^## Referencias/ { body=0 }
|
|
57
|
+
body { print }
|
|
58
|
+
/^## / && !/Referencias/ { body=1 }
|
|
59
|
+
' output.md > /tmp/body.md
|
|
60
|
+
grep -n -F -f lexico-noise-vetado.txt /tmp/body.md
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Error report (hard-fail)**:
|
|
64
|
+
```
|
|
65
|
+
V2 FAILED: noise vetado detectado
|
|
66
|
+
archivo: 02-crear-sesion.md
|
|
67
|
+
ocurrencias:
|
|
68
|
+
línea 12: "{{PASO_1}}" → placeholder sin reemplazar
|
|
69
|
+
línea 19: "/Users/tacuchi/" → path absoluto del developer
|
|
70
|
+
línea 28: "TODO:" → marker WIP no resuelto
|
|
71
|
+
total: 3 ocurrencias
|
|
72
|
+
acción: completar render y stripear paths absolutos
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
## V3 — Secciones de `template-manual.md` (sólo modo regenerar)
|
|
76
|
+
|
|
77
|
+
**Severidad**: hard-fail si un archivo del dossier no tiene las 6 secciones obligatorias del template-manual.
|
|
78
|
+
|
|
79
|
+
**No aplica en modo complementar** (V1 ya cubre las secciones del INDEX).
|
|
80
|
+
|
|
81
|
+
**Cómo validar**: por cada archivo `.md` del dossier (excluyendo `README.md`), extraer `^## ` headers; verificar Propósito + Pre-requisitos + Pasos + Validación post-uso + Troubleshooting + Referencias presentes.
|
|
82
|
+
|
|
83
|
+
**Error report**:
|
|
84
|
+
```
|
|
85
|
+
V3 FAILED: archivo del dossier sin secciones obligatorias
|
|
86
|
+
archivo: docs/manuales/NNN-export-tech-manuals-YYYY-MM-DD/01-configurar-mcp.md
|
|
87
|
+
faltantes: ## Validación post-uso, ## Troubleshooting
|
|
88
|
+
acción: regenerar el manual
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## V4 — Condicionales por modo
|
|
92
|
+
|
|
93
|
+
**Severidad**: hard-fail si no se honra la condición.
|
|
94
|
+
|
|
95
|
+
### V4.a — Modo complementar + 0 manuales graduados
|
|
96
|
+
|
|
97
|
+
- **Comportamiento esperado**: tabla "Manuales graduados" presente con una fila informativa `_Sin manuales graduados en este workspace todavía._`. No fila vacía, no encabezado solo.
|
|
98
|
+
- **Comportamiento esperado para "Temas sin graduar"**: si 0 temas detectables → omitir la sección completa.
|
|
99
|
+
- **Comportamiento esperado para "Próximos pasos"**: omitido si 0 temas no graduados.
|
|
100
|
+
|
|
101
|
+
### V4.b — Modo regenerar + 0 temas detectables
|
|
102
|
+
|
|
103
|
+
- **Comportamiento esperado**: abortar con `ok: false`. No producir dossier vacío.
|
|
104
|
+
- **Error report**:
|
|
105
|
+
```
|
|
106
|
+
V4.b FAILED: modo regenerar sin temas detectables
|
|
107
|
+
filtros aplicados: --temas <ninguno>, --source <ninguno>, --since <ninguno>
|
|
108
|
+
corpus: 12 sesiones cerradas
|
|
109
|
+
temas detectados: 0
|
|
110
|
+
acción: ajustar filtros o pasar `--temas slug1` explícito; o pasar a modo `complementar` para reflejar el estado vacío
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### V4.c — Modo regenerar + dossier con ≥1 manual
|
|
114
|
+
|
|
115
|
+
- **Comportamiento esperado**: el dossier `NNN-export-tech-manuals-YYYY-MM-DD/` contiene un `README.md` + ≥1 archivo `.md` adicional (un manual). Si solo hay README → fail.
|
|
116
|
+
|
|
117
|
+
## V5 — Header bien formado
|
|
118
|
+
|
|
119
|
+
**Severidad**: warning.
|
|
120
|
+
|
|
121
|
+
**Checks**:
|
|
122
|
+
- Modo `complementar`: línea 1 contiene `# Manuales técnicos — <PRODUCTO>` con producto resuelto.
|
|
123
|
+
- Modo `regenerar`: cada archivo del dossier tiene línea 1 con `# <TITULO_MANUAL>` (no literal `{{TITULO_MANUAL}}`).
|
|
124
|
+
|
|
125
|
+
**Error report (warning)**:
|
|
126
|
+
```
|
|
127
|
+
V5 WARNING: header de un manual incompleto
|
|
128
|
+
archivo: 03-migrar-legacy.md
|
|
129
|
+
línea 1: "# {{TITULO_MANUAL}}"
|
|
130
|
+
acción sugerida: completar el placeholder
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
## V6 — Referencias resolubles
|
|
134
|
+
|
|
135
|
+
**Severidad**: warning.
|
|
136
|
+
|
|
137
|
+
**Checks**: cada link en `## Referencias` de cada manual / del INDEX apunta a un path existente.
|
|
138
|
+
|
|
139
|
+
**Cómo validar**:
|
|
140
|
+
```bash
|
|
141
|
+
grep -oE '`[^`]+\.md`|`[^`]+\.json`|`docs/[^`]+`' output.md | tr -d '`' | \
|
|
142
|
+
while read p; do
|
|
143
|
+
if [ ! -e "$p" ]; then echo "MISSING: $p"; fi
|
|
144
|
+
done
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
**Error report (warning)**:
|
|
148
|
+
```
|
|
149
|
+
V6 WARNING: 1 referencia apunta a path inexistente
|
|
150
|
+
archivo: 01-configurar-mcp.md
|
|
151
|
+
- docs/conclusiones/004-audit-test.md → no existe en filesystem
|
|
152
|
+
acción sugerida: revisar el link o eliminar la referencia
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Orden de aplicación
|
|
156
|
+
|
|
157
|
+
1. V1 (estructura) — primero, barato.
|
|
158
|
+
2. V2 (noise) — segundo, barato.
|
|
159
|
+
3. V3 (secciones de template-manual, sólo regenerar) — tercero.
|
|
160
|
+
4. V4 (condicionales) — cuarto.
|
|
161
|
+
5. V5 (header) — quinto.
|
|
162
|
+
6. V6 (referencias resolubles) — último.
|
|
163
|
+
|
|
164
|
+
Si V1, V3 o V4 fallan → abortar inmediatamente.
|
|
165
|
+
Si V2 falla → abortar.
|
|
166
|
+
Si V5 o V6 emiten warning → pedir confirmación al usuario.
|
|
167
|
+
|
|
168
|
+
## Reporte consolidado
|
|
169
|
+
|
|
170
|
+
```json
|
|
171
|
+
{
|
|
172
|
+
"ok": true | false,
|
|
173
|
+
"mode": "complementar" | "regenerar",
|
|
174
|
+
"output_paths": ["docs/manuales/INDEX.md"] // o ["docs/manuales/NNN-.../README.md", "...01-...md", ...]
|
|
175
|
+
"manuales_graduados_count": 3,
|
|
176
|
+
"temas_no_graduados_count": 5,
|
|
177
|
+
"manuales_generados_count": 0, // sólo aplica a regenerar
|
|
178
|
+
"validations": {
|
|
179
|
+
"V1": { "status": "pass", "sections_found_per_file": {...} },
|
|
180
|
+
"V2": { "status": "pass", "noise_hits": 0 },
|
|
181
|
+
"V3": { "status": "pass" | "n/a", "details": "..." },
|
|
182
|
+
"V4": { "status": "pass", "conditionals": { "manuales_graduados": "fila informativa OK", "temas_no_graduados": "sección presente con 5 temas", "proximos_pasos": "presente (5 temas)" } },
|
|
183
|
+
"V5": { "status": "warning", "issues": [...] },
|
|
184
|
+
"V6": { "status": "warning", "missing_refs": [...] }
|
|
185
|
+
},
|
|
186
|
+
"summary": "INDEX.md sobrescrito; 3 graduados + 5 temas no-graduados detectables."
|
|
187
|
+
}
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
Si hard-fail:
|
|
191
|
+
|
|
192
|
+
```json
|
|
193
|
+
{
|
|
194
|
+
"ok": false,
|
|
195
|
+
"stage": "validation",
|
|
196
|
+
"failed_at": "V4.b",
|
|
197
|
+
"details": "modo regenerar sin temas detectables",
|
|
198
|
+
"no_files_written": true
|
|
199
|
+
}
|
|
200
|
+
```
|
|
201
|
+
|
|
202
|
+
## Diferencias con los validations hermanos
|
|
203
|
+
|
|
204
|
+
| Validación | `export-tech-manuals` | `export-arq` | `export-report` |
|
|
205
|
+
|---|---|---|---|
|
|
206
|
+
| V1 | estructura por modo (INDEX vs dossier) | estructura de secciones por scope | cota dura de palabras |
|
|
207
|
+
| V2 | noise mínimo (~30) | noise mínimo (~25) | léxico ejecutivo (~75) |
|
|
208
|
+
| V3 | secciones por manual (sólo regenerar) | diagrama C4 presente | secciones obligatorias en orden |
|
|
209
|
+
| V4 | condicionales por modo (3 sub-casos) | condicionales (2 sub-casos) | "Recomendaciones" condicional (1 caso) |
|
|
210
|
+
| V5 | header del INDEX o del manual | header arq con snapshot+fuentes+diagrams | header con período natural |
|
|
211
|
+
| V6 | referencias resolubles | referencias resolubles | referencias resolubles |
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: export-tech-note
|
|
3
|
+
description: "[STUB] Genera una Nota Técnica (`.md`) consolidando el corpus de sesiones del workspace y `docs/`. Stub vacío sin lógica activa — implementación diferida a una sesión futura. Output previsto: `docs/manuales/NNN-export-tech-note-YYYY-MM-DD.md` o `docs/funcional/`. Read-only sobre el corpus. Invocado sólo vía `/agent-workflow:export-tech-note`. Creado en session081-dev-extend-export-family con `version: 0.1.0`."
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Export Tech Note — Stub vacío (sin lógica activa)
|
|
8
|
+
|
|
9
|
+
> **STUB**. Este skill **no genera output útil aún**. Existe como placeholder discoverable para que el catálogo `/agent-workflow:export-*` lo registre. La implementación se difiere a una sesión futura (`flow=design` o `flow=dev`).
|
|
10
|
+
|
|
11
|
+
## Alcance previsto
|
|
12
|
+
|
|
13
|
+
Generar un único `.md` con una **Nota Técnica** consolidada del workspace, dirigida a stakeholders técnicos (devs, líderes técnicos, soporte). Más compacta que `export-tech-manuals` (que es un manual completo); más profunda que `export-report` (que es ejecutivo no técnico).
|
|
14
|
+
|
|
15
|
+
- **Input canónico**: corpus = sesiones del workflow + `docs/`. Ver `agent-workflow/docs/shared-contract/export-corpus-sources.md` (DEC-002 session081).
|
|
16
|
+
- **Subcarpetas de `docs/` que consumirá** (previstas): `docs/manuales/`, `docs/decisiones/`, `docs/conclusiones/`, `docs/arq/`.
|
|
17
|
+
- **Output previsto**: `<docs>/manuales/NNN-export-tech-note-YYYY-MM-DD.md` (sub-decisión a tomar en la sesión de implementación: ¿manuales/ o funcional/ técnica?).
|
|
18
|
+
|
|
19
|
+
## Estado
|
|
20
|
+
|
|
21
|
+
- Creado: session081-dev-extend-export-family (2026-05-21).
|
|
22
|
+
- Implementación: **diferida**. Cuando se aborde, abrir sesión `flow=design` para spec primero.
|
|
23
|
+
|
|
24
|
+
## Plan mode
|
|
25
|
+
|
|
26
|
+
Reglas generales en `skills/session/references/sandbox-readonly-rules.md`. Como el skill es un stub, en plan mode reportar `ok: false` con `reason: "stub not implemented yet"`.
|
|
27
|
+
|
|
28
|
+
## Recursos
|
|
29
|
+
|
|
30
|
+
- `agent-workflow/docs/shared-contract/export-corpus-sources.md` — contrato corpus canónico (DEC-002 session081).
|
|
31
|
+
- `.workflow/sessions/session081-dev-extend-export-family/OBJECTIVE.md` — alcance de la sesión que creó el stub.
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# hooks/
|
|
2
|
+
|
|
3
|
+
Hooks que el host ejecuta automáticamente durante el ciclo de vida de una sesión. Distribuídos como templates; el CLI `agent-workflow self install --target <host>` los materializa con adapters por host (ver `src/application/self/install-hooks.ts`).
|
|
4
|
+
|
|
5
|
+
Contenido esperado (T2 PR2):
|
|
6
|
+
|
|
7
|
+
- `SessionStart.template.json` — carga `profile.json`, registra namespace, auto-copy profile si aplica.
|
|
8
|
+
- `PreCompact.template.json` — checkpoint-write antes de compactar contexto.
|
|
9
|
+
- `PostCompact.template.json` — resume-summary tras compactar.
|
|
10
|
+
- `sql-mutation-guard.template.json` — bloquea SQL no parametrizado / DDL en flujos de runtime.
|
|
11
|
+
- `branch-check.template.json` — gate de rama al entrar a execution.
|
|
12
|
+
- `git-commit-advisor.template.json` — recordatorio M1 ante intención de commit.
|
|
13
|
+
- `commit-prompt-universal.template.json` — disparo del prompt de cierre universal.
|
|
14
|
+
|
|
15
|
+
Cada template es agnóstico de host; los adapters lo traducen a `~/.claude/settings.json`, `~/.codex/config.toml`, etc.
|