@tacuchi/agent-workflow-cli 9.3.0 → 10.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.
- package/dist/application/auto-plan.d.ts +15 -2
- package/dist/application/auto-plan.d.ts.map +1 -1
- package/dist/application/auto-plan.js +70 -9
- package/dist/application/auto-plan.js.map +1 -1
- package/dist/application/host-doctor-service.d.ts +21 -0
- package/dist/application/host-doctor-service.d.ts.map +1 -0
- package/dist/application/host-doctor-service.js +101 -0
- package/dist/application/host-doctor-service.js.map +1 -0
- package/dist/application/project-tab-data.d.ts +4 -13
- package/dist/application/project-tab-data.d.ts.map +1 -1
- package/dist/application/project-tab-data.js +8 -64
- package/dist/application/project-tab-data.js.map +1 -1
- package/dist/application/release-data/sessions.d.ts +2 -0
- package/dist/application/release-data/sessions.d.ts.map +1 -1
- package/dist/application/release-data/sessions.js +4 -1
- package/dist/application/release-data/sessions.js.map +1 -1
- package/dist/application/render/history-row.d.ts.map +1 -1
- package/dist/application/render/history-row.js +3 -0
- package/dist/application/render/history-row.js.map +1 -1
- package/dist/application/session-create-service.d.ts +2 -0
- package/dist/application/session-create-service.d.ts.map +1 -1
- package/dist/application/session-create-service.js +21 -1
- package/dist/application/session-create-service.js.map +1 -1
- package/dist/application/session-resolver.d.ts +8 -0
- package/dist/application/session-resolver.d.ts.map +1 -1
- package/dist/application/session-resolver.js +29 -0
- package/dist/application/session-resolver.js.map +1 -1
- package/dist/application/templates/objetivo.d.ts +1 -1
- package/dist/application/templates/objetivo.d.ts.map +1 -1
- package/dist/application/templates/objetivo.js +13 -1
- package/dist/application/templates/objetivo.js.map +1 -1
- package/dist/cli/commands/auto-plan-decide.d.ts.map +1 -1
- package/dist/cli/commands/auto-plan-decide.js +56 -3
- package/dist/cli/commands/auto-plan-decide.js.map +1 -1
- package/dist/cli/commands/host-doctor.d.ts +3 -0
- package/dist/cli/commands/host-doctor.d.ts.map +1 -0
- package/dist/cli/commands/host-doctor.js +10 -0
- package/dist/cli/commands/host-doctor.js.map +1 -0
- package/dist/cli/commands/session-create.d.ts.map +1 -1
- package/dist/cli/commands/session-create.js +2 -0
- package/dist/cli/commands/session-create.js.map +1 -1
- package/dist/cli/main.js +2 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/tui/app.js +25 -13
- package/dist/cli/tui/app.js.map +1 -1
- package/dist/cli/tui/components/home-footer.d.ts.map +1 -1
- package/dist/cli/tui/components/home-footer.js +1 -0
- package/dist/cli/tui/components/home-footer.js.map +1 -1
- package/dist/cli/tui/data/activity.d.ts +4 -11
- package/dist/cli/tui/data/activity.d.ts.map +1 -1
- package/dist/cli/tui/data/activity.js +21 -70
- package/dist/cli/tui/data/activity.js.map +1 -1
- package/dist/cli/tui/tabs/project-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/project-tab.js +32 -34
- package/dist/cli/tui/tabs/project-tab.js.map +1 -1
- package/dist/cli/tui/tabs/status-tab.js +1 -1
- package/dist/cli/tui/tabs/status-tab.js.map +1 -1
- package/package.json +3 -3
- package/skills/agent-workflow/commands/export-scripts.md +36 -19
- package/skills/agent-workflow/commands/patch.md +49 -0
- package/skills/agent-workflow/doctrine/implement/references/rollback-guide.md +5 -3
- package/skills/agent-workflow/doctrine/session/SKILL.md +47 -0
- package/skills/agent-workflow/exports/export-scripts/SKILL.md +97 -76
- package/skills/agent-workflow/exports/export-scripts/references/lexico-tecnico.md +20 -6
- package/skills/agent-workflow/exports/export-scripts/references/manifest-template.md +13 -1
- package/skills/agent-workflow/exports/export-scripts/references/readme-template.md +252 -42
- package/skills/agent-workflow/exports/export-scripts/references/theme-handling.md +45 -72
- package/skills/agent-workflow/exports/export-scripts/references/validations.md +119 -71
- package/skills/agent-workflow/standards/sql-rollback-generator/SKILL.md +77 -62
- package/skills/agent-workflow/standards/sql-rollback-generator/references/release-rollback.md +4 -2
- package/skills/agent-workflow/standards/sql-rollback-generator/references/rollback-patterns.md +5 -3
- package/skills/agent-workflow/standards/sql-script-organizer/SKILL.md +16 -16
- package/skills/agent-workflow/workflows/analyze-workflow/SKILL.md +3 -26
- package/skills/agent-workflow/workflows/design-workflow/SKILL.md +3 -24
- package/skills/agent-workflow/workflows/dev-workflow/SKILL.md +3 -26
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Consolida N sesiones del workspace + `docs/scripts/` ya graduados en un paquete de paso a producción bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD
|
|
3
|
-
argument-hint: (opcional) --since sessionNNN | --source <alias> | --themes slug1,slug2|infer | --keep-parts | --skip-code-scan | --dry-run
|
|
2
|
+
description: Consolida N sesiones del workspace + `docs/scripts/` ya graduados en un paquete de paso a producción bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD/` (v4.0.0 — session093). Layout plano cross-session al root del bundle: 00-ROLLBACK.sql + 01-DDL-TABLES.sql + 02-DDL-FUNCTIONS.sql + 03-DML.sql + 04-INSERTS.sql + README.md único. Sin por-sesion/, sin companions .rollback.sql, sin per-sesión rollback. `--themes` opt-in genera por-tema/ como capa adicional. Read-only. Reemplaza /agent-workflow:release + /agent-workflow:release-scripts (deprecation Fase 1).
|
|
3
|
+
argument-hint: (opcional) --sessions NNN[,NNN] | --since sessionNNN | --source <alias> | --themes slug1,slug2|infer | --keep-parts | --skip-code-scan | --dry-run
|
|
4
4
|
allowed-tools:
|
|
5
5
|
[
|
|
6
6
|
"Read",
|
|
@@ -15,19 +15,34 @@ allowed-tools:
|
|
|
15
15
|
|
|
16
16
|
Consolida N sesiones cerradas (más opcionalmente activas) en un paquete único de paso a producción. Delega al skill `export-scripts` (`agent-workflow/skills/export-scripts/SKILL.md`).
|
|
17
17
|
|
|
18
|
-
El skill **nunca** ejecuta commits, merges, push, SQL ni envía correos.
|
|
18
|
+
El skill **nunca** ejecuta commits, merges, push, SQL ni envía correos. Layout v4.0.0 del bundle (cross-session al root):
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
-
|
|
20
|
+
```
|
|
21
|
+
<docs>/scripts/NNN-export-scripts-YYYY-MM-DD/
|
|
22
|
+
├── 00-ROLLBACK.sql # único rollback cross-session (encadenado 04→01)
|
|
23
|
+
├── 01-DDL-TABLES.sql # CREATE/ALTER TABLE cross-session (skip si vacío)
|
|
24
|
+
├── 02-DDL-FUNCTIONS.sql # CREATE OR REPLACE FUNCTION cross-session (skip si vacío)
|
|
25
|
+
├── 03-DML.sql # UPDATE/DELETE/migración cross-session (skip si vacío)
|
|
26
|
+
├── 04-INSERTS.sql # INSERT/seed cross-session (skip si vacío)
|
|
27
|
+
├── README.md # único informe + índice + how-to-execute
|
|
28
|
+
├── _queries/ # opcional: queries de soporte por sesión
|
|
29
|
+
│ └── sessionXXX/...
|
|
30
|
+
└── por-tema/ # opt-in (capa adicional encima del root plano)
|
|
31
|
+
├── tema-<slug>/
|
|
32
|
+
│ ├── 01-DDL-TABLES.sql
|
|
33
|
+
│ ├── 02-DDL-FUNCTIONS.sql
|
|
34
|
+
│ ├── 03-DML.sql
|
|
35
|
+
│ ├── 04-INSERTS.sql
|
|
36
|
+
│ └── parts/ # si --keep-parts
|
|
37
|
+
└── tema-<otro>/...
|
|
38
|
+
```
|
|
26
39
|
|
|
27
40
|
Donde `<docs>` es:
|
|
28
41
|
- `Path.cwd() / docs` por default (project mode o hub workspace base).
|
|
29
42
|
- `<source.path>/docs` si se pasa `--source <alias>` en hub mode.
|
|
30
43
|
|
|
44
|
+
**No se generan** (eliminados desde v4.0.0): `manifest.md` separado, `ORDER.md`, `rollback-global.sql`, `por-sesion/`, `<file>.rollback.sql` companions, `<session>/rollback/`. El histórico v3.x (`docs/scripts/001-002-003-*` ya generados) queda como histórico — no se migra.
|
|
45
|
+
|
|
31
46
|
Último comando de la familia `/agent-workflow:export-*` definida en `docs/conclusiones/007-export-commands-family.md`. Refactor que consolida `/agent-workflow:release` v2.0.0 + `/agent-workflow:release-scripts` v2.0.0.
|
|
32
47
|
|
|
33
48
|
## Excepción session-aware
|
|
@@ -40,34 +55,35 @@ Este skill (junto con `release`, `release-scripts`, `export-report`, `export-arq
|
|
|
40
55
|
|
|
41
56
|
### Argumentos soportados
|
|
42
57
|
|
|
43
|
-
- `--
|
|
58
|
+
- `--sessions NNN[,NNN]` — filtro discreto por código. Toma precedencia sobre `--since` (warning si ambos).
|
|
59
|
+
- `--since sessionNNN` — incluye sólo sesiones posteriores a NNN (inclusive). Ignorado si `--sessions` presente.
|
|
44
60
|
- `--source <alias>` — en hub mode, limita a una fuente específica.
|
|
45
|
-
- `--themes slug1,slug2` — genera `por-tema
|
|
61
|
+
- `--themes slug1,slug2` — genera `por-tema/<slug>/` (capa adicional encima del root plano).
|
|
46
62
|
- `--themes infer` — inferencia LLM de temas (mismo flujo que release-scripts legacy).
|
|
47
63
|
- `--keep-parts` — preserva `por-tema/<slug>/parts/<categoria>/*.sql`.
|
|
48
64
|
- `--skip-code-scan` — omite el escaneo de código fuente.
|
|
49
65
|
- `--dry-run` — reporte propositivo sin escribir archivos.
|
|
50
66
|
|
|
51
|
-
Sin args: incluye todas las sesiones cerradas, sin
|
|
67
|
+
Sin args: incluye todas las sesiones cerradas, sin capa `por-tema/`, escanea todo el código.
|
|
52
68
|
|
|
53
69
|
## Flujo
|
|
54
70
|
|
|
55
71
|
Antes de generar, el skill llama al CLI `agent-workflow`:
|
|
56
72
|
|
|
57
73
|
```
|
|
58
|
-
agent-workflow release-data --include-graduated [--since sessionNNN] [--source <alias>]
|
|
74
|
+
agent-workflow release-data --include-graduated [--sessions NNN[,NNN]] [--since sessionNNN] [--source <alias>]
|
|
59
75
|
agent-workflow code-scan # con built-in patterns + override
|
|
60
76
|
agent-workflow next-number docs/scripts # numeración determinística
|
|
61
77
|
agent-workflow session-artifacts --code <CODE> # lazy read de OBJECTIVE/TASKS/DECISIONS/scripts
|
|
62
78
|
```
|
|
63
79
|
|
|
64
|
-
Luego
|
|
80
|
+
Luego consolida cross-session por categoría al root del bundle (`01-DDL-TABLES.sql`, `02-DDL-FUNCTIONS.sql`, `03-DML.sql`, `04-INSERTS.sql`) y delega a `sql-rollback-generator` v2.0.0+ para generar el `00-ROLLBACK.sql` único. Si `--themes` declarado o inferido: agrega capa `por-tema/<slug>/` sin duplicar rollback.
|
|
65
81
|
|
|
66
82
|
Valida V1-V6 (`references/validations.md`) antes de escribir el bundle al filesystem.
|
|
67
83
|
|
|
68
84
|
## Plan mode
|
|
69
85
|
|
|
70
|
-
Reglas generales en `skills/session/references/sandbox-readonly-rules.md`. Describir en el plan file: NNN resuelto + sesiones incluidas +
|
|
86
|
+
Reglas generales en `skills/session/references/sandbox-readonly-rules.md`. Describir en el plan file: NNN resuelto + sesiones incluidas + sentencias cross-session por categoría, capa `por-tema/` (activación + slugs), hallazgos esperados del code-scan, acciones manuales detectadas, advertencias bloqueantes (sesiones abiertas, rollback ausente, irreversibles).
|
|
71
87
|
|
|
72
88
|
## Relación con `/agent-workflow:release` y `/agent-workflow:release-scripts`
|
|
73
89
|
|
|
@@ -80,13 +96,14 @@ Detalle del plan: `skills/export-scripts/references/deprecation-plan.md`.
|
|
|
80
96
|
|
|
81
97
|
## Recursos
|
|
82
98
|
|
|
83
|
-
- `skills/export-scripts/SKILL.md`
|
|
84
|
-
- `skills/export-scripts/references/
|
|
85
|
-
- `skills/export-scripts/references/
|
|
99
|
+
- `skills/export-scripts/SKILL.md` v4.0.0 — orquestador del comando (layout plano cross-session).
|
|
100
|
+
- `skills/export-scripts/references/readme-template.md` — plantilla canónica del README único.
|
|
101
|
+
- `skills/export-scripts/references/manifest-template.md` — **DEPRECATED** desde v4.0.0 (histórico).
|
|
86
102
|
- `skills/export-scripts/references/lexico-tecnico.md` — léxico vetado V2.
|
|
87
|
-
- `skills/export-scripts/references/validations.md` — V1-V6 detalladas.
|
|
103
|
+
- `skills/export-scripts/references/validations.md` — V1-V6 detalladas (anti-redundancia v4.0.0).
|
|
88
104
|
- `skills/export-scripts/references/code-scan-recommendations.md` — catálogo extendido de patrones.
|
|
89
105
|
- `skills/export-scripts/references/theme-handling.md` — algoritmo de detección/consolidación por tema.
|
|
90
106
|
- `skills/export-scripts/references/deprecation-plan.md` — plan de fases 1-2.
|
|
107
|
+
- `skills/sql-rollback-generator/SKILL.md` v2.0.0 — `00-ROLLBACK.sql` único cross-session.
|
|
91
108
|
- `docs/conclusiones/007-export-commands-family.md` — Propuesta original de la familia `/agent-workflow:export-*`.
|
|
92
109
|
- `agent-workflow/skills/release/SKILL.md`, `release-scripts/SKILL.md` — legacy en deprecation Fase 1.
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Comando ligero para tareas pequeñas y directas (fixes, ajustes, chores acotados). Micro-lifecycle en modo --lite de flow=dev — ceremonia mínima (OBJECTIVE condensado, sin TASKS/DESIGN, closure condensado). Escala in-place a sesión completa si la tarea crece.
|
|
3
|
+
argument-hint: (<descripción-tarea> | sessionXXX | XXX | close)
|
|
4
|
+
allowed-tools:
|
|
5
|
+
[
|
|
6
|
+
"Bash",
|
|
7
|
+
"Read",
|
|
8
|
+
"Write",
|
|
9
|
+
"Edit",
|
|
10
|
+
"Glob",
|
|
11
|
+
"Grep",
|
|
12
|
+
]
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
# Patch — micro-lifecycle para tareas pequeñas
|
|
16
|
+
|
|
17
|
+
Azúcar sobre el lifecycle universal: invoca el skill `session` (canónico de agent-workflow) en **modo lite** con `$ARGUMENTS`. Para fixes, ajustes y chores acotados que no justifican la ceremonia de una sesión completa, pero sí merecen trazabilidad mínima (HISTORY + DECISIONS lazy + commit M1).
|
|
18
|
+
|
|
19
|
+
No es un flow nuevo ni un motor paralelo: `/patch "<qué>"` = `session-create --lite --flow dev "<qué>"`.
|
|
20
|
+
|
|
21
|
+
## Resolución de intención
|
|
22
|
+
|
|
23
|
+
El skill evalúa `$ARGUMENTS`:
|
|
24
|
+
|
|
25
|
+
1. `close` → cerrar el patch activo (closure condensado).
|
|
26
|
+
2. Matchea `sessionXXX` o `XXX` (3 dígitos) → retomar ese patch/sesión.
|
|
27
|
+
3. Texto descriptivo → crear micro-sesión lite (este es el caso común).
|
|
28
|
+
|
|
29
|
+
## Qué hace el modo lite (al crear)
|
|
30
|
+
|
|
31
|
+
1. `agent-workflow session-create --lite --flow dev --name <slug> --objetivo "<texto>"` — crea la micro-sesión.
|
|
32
|
+
- OBJECTIVE condensado (solo `## Type` + `## Requirement`).
|
|
33
|
+
- `## Type` default `bugfix` (o `chore` si la heurística lo detecta). No admite `feature|refactor`.
|
|
34
|
+
- Tag `kind:patch` en la fila de HISTORY.
|
|
35
|
+
2. **Salta la ceremonia de planning**: sin auto-plan prompt, sin TASKS.md, sin DESIGN.md/S7, sin M10. El Requirement es la única tarea.
|
|
36
|
+
3. **Loop directo**: aplicar el cambio mínimo componiendo `implement` + `coding-standards`. Mostrar diff. Registrar DECISIONS solo si hay algo no obvio (lazy).
|
|
37
|
+
4. **Closure condensado**: commit M1 (propose-then-execute) directo; no gradúa por default.
|
|
38
|
+
|
|
39
|
+
## Escalado in-place
|
|
40
|
+
|
|
41
|
+
Si durante el trabajo emerge complejidad (toca >3 archivos, requiere scripts SQL/BD, o el cambio resulta ser feature/refactor): el AI **propone promover** a sesión completa. Promover = quitar el tag `kind:patch`, generar TASKS.md y, si el Type sube a feature/refactor, disparar DESIGN.md + S7 — en la **misma** sesión (no fragmenta).
|
|
42
|
+
|
|
43
|
+
## Plan mode
|
|
44
|
+
|
|
45
|
+
El skill resuelve la intención normalmente y describe acciones en el plan file en lugar de ejecutarlas.
|
|
46
|
+
|
|
47
|
+
## Recursos
|
|
48
|
+
|
|
49
|
+
Ver `skills/session/SKILL.md` §"Modo lite (/patch)" para el detalle del micro-lifecycle y el escalado.
|
|
@@ -68,9 +68,11 @@ Para minimizar la necesidad de rollback:
|
|
|
68
68
|
|
|
69
69
|
Los rollbacks de código (git) descritos arriba **no revierten cambios en base de datos**. Para revertir scripts SQL ejecutados en producción, usar el skill `sql-rollback-generator`.
|
|
70
70
|
|
|
71
|
-
El skill produce:
|
|
72
|
-
- **
|
|
73
|
-
- **
|
|
71
|
+
El skill (v2.0.0+) produce:
|
|
72
|
+
- **Un único `00-ROLLBACK.sql`** al root del bundle generado por `/agent-workflow:export-scripts` v4.0.0+. Encadena rollbacks cross-session en orden inverso (última sesión → primera, 04→01 dentro de cada una) dentro de un `BEGIN; ... COMMIT;` único.
|
|
73
|
+
- **Bloque "Fase 5 — Cleanup irreversible"** al final del archivo, fuera de la transacción, listando irreversibles para revisión manual.
|
|
74
|
+
|
|
75
|
+
> Comportamiento v1.0.0 (companions `.rollback.sql` por sentencia + per-sesión `rollback/`) eliminado en v2.0.0. Bundles ya generados con v1.0.0 quedan como histórico.
|
|
74
76
|
|
|
75
77
|
Para operaciones irreversibles (TRUNCATE, DROP COLUMN, DROP TABLE sin backup), ver `skills/sql-rollback-generator/references/irreversible-checklist.md`.
|
|
76
78
|
|
|
@@ -241,6 +241,53 @@ Artefacto opcional por sesión que captura "lo que queda para otras sesiones": d
|
|
|
241
241
|
- Append-only en práctica (no borrar entries previas; mover items a `Discarded` con razón).
|
|
242
242
|
- Si el usuario explícitamente dice "no hay backlog para esta sesión", NO crear el archivo.
|
|
243
243
|
|
|
244
|
+
## Modo lite (/patch) — micro-lifecycle
|
|
245
|
+
|
|
246
|
+
Perfil de ceremonia reducida sobre el lifecycle, para tareas pequeñas y directas (fixes, ajustes, chores acotados). Expuesto como `/agent-workflow:patch` (azúcar) y activado por el flag `--lite` de `session-create`. **No es un flow nuevo**: es un modo de `flow=dev`. Origen: `docs/conclusiones/010` (session095).
|
|
247
|
+
|
|
248
|
+
### Cuándo usarlo
|
|
249
|
+
|
|
250
|
+
- Tarea acotada que no justifica la ceremonia completa (1-3 archivos, sin decisión de arquitectura, sin contrato FE-BE nuevo).
|
|
251
|
+
- Pero sí merece trazabilidad mínima (HISTORY + DECISIONS lazy + commit M1), a diferencia del trabajo ad-hoc sin rastro.
|
|
252
|
+
- Si la tarea es feature/refactor → NO usar lite; abrir sesión completa.
|
|
253
|
+
|
|
254
|
+
### Crear (qué cambia vs sesión normal)
|
|
255
|
+
|
|
256
|
+
```
|
|
257
|
+
agent-workflow session-create --lite --flow dev --name <slug> --objetivo "<texto>"
|
|
258
|
+
```
|
|
259
|
+
|
|
260
|
+
- OBJECTIVE condensado: solo `## Type` + `## Requirement` (template `PATCH_TEMPLATE`).
|
|
261
|
+
- `## Type` default `bugfix`; `chore` si la heurística lo detecta. `--lite` rechaza `feature|refactor`.
|
|
262
|
+
- Tag `kind:patch` en la columna `refs` de la fila HISTORY.
|
|
263
|
+
|
|
264
|
+
### Las 4 fases en modo lite
|
|
265
|
+
|
|
266
|
+
- **planning**: SKIP de la ceremonia. Sin auto-plan prompt, sin TASKS.md, sin DESIGN.md/S7, sin M10. El `## Requirement` es la única tarea.
|
|
267
|
+
- **execution**: loop directo. Verificar rama, cambio mínimo, diff, DECISIONS sólo si no es obvio (igual que `implement` flat). La doctrina bugfix (3 pasos) aplica si el cambio lo amerita; para un fix trivial el paso 1 (root-cause) se salta con justificación inline.
|
|
268
|
+
- **validation**: la que aporte el cambio (test puntual si aplica). No formal.
|
|
269
|
+
- **closure**: condensado. Inspección mínima del diff (sin el cleanup-gate elaborado de §1.5). Commit M1 (propose-then-execute) directo. **No gradúa** por default; si surge una decisión que merece persistir → `decision` como en cualquier sesión.
|
|
270
|
+
|
|
271
|
+
### Escalado
|
|
272
|
+
|
|
273
|
+
**Upgrade in-place** (lite → completo) — caso principal. Señales de que la tarea creció:
|
|
274
|
+
- Toca >3 archivos o ≥2 fuentes.
|
|
275
|
+
- Requiere scripts SQL / cambios de BD.
|
|
276
|
+
- El cambio resulta ser feature/refactor (no un fix acotado).
|
|
277
|
+
|
|
278
|
+
Cuando el AI detecta una señal: **proponer** (no auto-escalar) vía `AskUserQuestion` (estilo S2): "Esto creció. ¿Promovemos a sesión dev completa?". Si el usuario acepta, promover **en la misma sesión**:
|
|
279
|
+
1. Quitar el tag `kind:patch` de la fila HISTORY.
|
|
280
|
+
2. Generar TASKS.md (auto-plan).
|
|
281
|
+
3. Si el Type sube a feature/refactor → disparar DESIGN.md + S7 antes de seguir.
|
|
282
|
+
|
|
283
|
+
No fragmenta (a diferencia de `--from`, que queda como alternativa manual si el usuario prefiere separar en dos sesiones).
|
|
284
|
+
|
|
285
|
+
**Downgrade** (completo → lite) — preventivo, no a mitad. El valor está en sugerir `--lite` al inicio (heurística / auto-plan) antes de invertir en TASKS/DESIGN, no en des-escalar una sesión ya armada.
|
|
286
|
+
|
|
287
|
+
### Exports
|
|
288
|
+
|
|
289
|
+
Los exports (`release-data`) colapsan las sesiones `kind:patch`: se agrupan/resumen (no una entrada completa por patch) para no inflar informes.
|
|
290
|
+
|
|
244
291
|
## Cerrar sesión
|
|
245
292
|
|
|
246
293
|
### 0. Detección de items abiertos → sugerir BACKLOG.md (F-F)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: export-scripts
|
|
3
|
-
description: "Consolida N sesiones del workspace + `docs/scripts/` ya graduados en un paquete de paso a producción bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD/`.
|
|
4
|
-
version:
|
|
3
|
+
description: "Consolida N sesiones del workspace + `docs/scripts/` ya graduados en un paquete de paso a producción bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD/`. v4.0.0 BREAKING (session093): layout plano cross-session al root del bundle — `00-ROLLBACK.sql`, `01-DDL-TABLES.sql`, `02-DDL-FUNCTIONS.sql`, `03-DML.sql`, `04-INSERTS.sql`, `README.md` único. Sin `por-sesion/`, sin `<file>.rollback.sql` companions, sin per-sesión `rollback/`, sin `manifest.md`/`ORDER.md` separados (absorbidos por `README.md`). Lee `SCRIPTS.sql` único per sesión (uppercase EN, G1), parsea markers `@category`/`@stmt` y consolida cross-session. Delega `sql-rollback-generator` v2.0.0+ on-export para generar `00-ROLLBACK.sql` único encadenado 04→01. Aborta con sugerencia de `/agent-workflow:migrate --upgrade-topology` si detecta layout legacy `scripts/01-04/*.sql` (G2). `--themes` opt-in: capa adicional `por-tema/<slug>/` encima del root plano. Read-only / reporte — no ejecuta commits ni SQL. Invocado sólo vía `/agent-workflow:export-scripts`."
|
|
4
|
+
version: 4.0.0
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Export Scripts — Bundle SQL + informe consolidado desde N sesiones
|
|
@@ -31,16 +31,17 @@ Como `release` y `release-scripts` legacy, este skill requiere conocimiento del
|
|
|
31
31
|
- Re-generar tras agregar nuevas sesiones desde el último export.
|
|
32
32
|
- Antes de go/no-go meeting.
|
|
33
33
|
|
|
34
|
-
## Qué hace este skill
|
|
34
|
+
## Qué hace este skill (v4.0.0)
|
|
35
35
|
|
|
36
|
-
1. Lee sesiones (`.workflow/sessions/`) recolectando `
|
|
36
|
+
1. Lee sesiones (`.workflow/sessions/`) recolectando `SCRIPTS.sql` (uppercase EN canónico) de **todas** las sesiones del workspace (filtrables por `--since` y `--source`).
|
|
37
37
|
2. Escanea código fuente buscando patrones que no deben llegar a producción.
|
|
38
38
|
3. Consulta git (rama vs `certificacion`, commits pendientes, archivos sin commit).
|
|
39
|
-
4.
|
|
40
|
-
5.
|
|
41
|
-
6.
|
|
42
|
-
7.
|
|
43
|
-
8.
|
|
39
|
+
4. **Consolida cross-session por categoría al root** del bundle: `01-DDL-TABLES.sql`, `02-DDL-FUNCTIONS.sql`, `03-DML.sql`, `04-INSERTS.sql` (skip silencioso si la categoría está vacía).
|
|
40
|
+
5. Delega a `sql-rollback-generator` v2.0.0+ para generar **`00-ROLLBACK.sql` único** cross-session (encadenado 04→01).
|
|
41
|
+
6. Detecta acciones manuales requeridas (matriz heredada de `release`).
|
|
42
|
+
7. **Theme detection (opt-in)**: si hay `## Temas` en algún OBJECTIVE o `--themes slug1,slug2` declarado, genera `por-tema/<slug>/` como capa adicional encima del root plano (NO duplica rollback).
|
|
43
|
+
8. Aplica validations V1-V6 (`references/validations.md`).
|
|
44
|
+
9. Si pasa: escribe el bundle completo bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD/` con el layout plano + `README.md` único.
|
|
44
45
|
|
|
45
46
|
## Qué NO hace
|
|
46
47
|
|
|
@@ -49,11 +50,17 @@ Como `release` y `release-scripts` legacy, este skill requiere conocimiento del
|
|
|
49
50
|
- Enviar correos ni crear PRs.
|
|
50
51
|
- Modificar código fuente (los hallazgos del escaneo son recomendaciones).
|
|
51
52
|
- Tocar `.workflow/sessions/` ni artefactos individuales.
|
|
52
|
-
- Migrar histórico de `docs/release/`
|
|
53
|
+
- Migrar histórico de `docs/release/` ni bundles `docs/scripts/00X-*` generados por export-scripts v3.x (layout previo, no se reescribe).
|
|
54
|
+
- **Escribir `por-sesion/`** (eliminado en v4.0.0): la consolidación es cross-session al root.
|
|
55
|
+
- **Escribir `<file>.rollback.sql` companions** (eliminado en v4.0.0): el rollback canónico es `00-ROLLBACK.sql` único.
|
|
56
|
+
- **Escribir `<session>/rollback/`** (eliminado en v4.0.0): no hay per-sesión rollback.
|
|
57
|
+
- **Escribir `manifest.md` separado** (eliminado en v4.0.0): absorbido por `README.md`.
|
|
58
|
+
- **Escribir `ORDER.md` separado** (eliminado en v4.0.0): absorbido por §4 del `README.md`.
|
|
59
|
+
- **Escribir `rollback-global.sql` separado** (eliminado en v4.0.0): el rollback es `00-ROLLBACK.sql` único.
|
|
53
60
|
|
|
54
61
|
## Sandbox read-only
|
|
55
62
|
|
|
56
|
-
`../session/references/sandbox-readonly-rules.md`. Plan describe NNN, sesiones incluidas, secciones del
|
|
63
|
+
`../session/references/sandbox-readonly-rules.md`. Plan describe NNN, sesiones incluidas, secciones del `README.md`, hallazgos esperados, contenido del bundle plano cross-session y (opcionalmente) capa `por-tema/`.
|
|
57
64
|
|
|
58
65
|
## Estilo de comunicación
|
|
59
66
|
|
|
@@ -97,7 +104,7 @@ Output: `{workspace_mode, is_hub, source_alias, docs_root, sessions, sessions_co
|
|
|
97
104
|
> Sesiones en formato legacy detectadas: sessionXXX, sessionYYY.
|
|
98
105
|
> Migrar primero con `/agent-workflow:migrate --upgrade-topology`, luego re-correr export-scripts.
|
|
99
106
|
|
|
100
|
-
### Paso 1.5 — Gate de layout SQL (
|
|
107
|
+
### Paso 1.5 — Gate de layout SQL (v4.0.0, G2)
|
|
101
108
|
|
|
102
109
|
Por cada sesión del corpus, verificar el layout SQL:
|
|
103
110
|
|
|
@@ -134,7 +141,7 @@ Built-in patterns: localhost, IP literal, TODO/FIXME/XXX/HACK, hardcoded-secret,
|
|
|
134
141
|
|
|
135
142
|
Output: `{matches: [{pattern_id, severity, file, line, snippet, recommendation}], counts, by_severity, total_matches}`.
|
|
136
143
|
|
|
137
|
-
Si `--skip-code-scan`: marcar la sección
|
|
144
|
+
Si `--skip-code-scan`: marcar la sección 6 del `README.md` como "escaneo omitido".
|
|
138
145
|
|
|
139
146
|
Catálogo extendido (alta/media/baja con recomendaciones detalladas) en `references/code-scan-recommendations.md`.
|
|
140
147
|
|
|
@@ -163,47 +170,63 @@ Output dir resuelto:
|
|
|
163
170
|
|
|
164
171
|
Si `docs/scripts/` no existe, crearlo.
|
|
165
172
|
|
|
166
|
-
### Paso 5 —
|
|
173
|
+
### Paso 5 — Consolidación cross-session por categoría (v4.0.0)
|
|
167
174
|
|
|
168
|
-
|
|
175
|
+
Recolectar markers de todos los `SCRIPTS.sql` del corpus y consolidar al root del bundle:
|
|
169
176
|
|
|
170
|
-
1.
|
|
171
|
-
|
|
177
|
+
1. **Para cada sesión** con `SCRIPTS.sql` (verificado en Paso 1.5):
|
|
178
|
+
- Leer y parsear el archivo.
|
|
172
179
|
- Detectar markers `-- @category: <01-04>` + `-- @stmt: NNN-verbo-objetivo`.
|
|
173
|
-
- Detectar opcionales `@objeto` y `@alcance` para
|
|
174
|
-
- Validar idempotencia básica (presencia de `IF EXISTS`, `OR REPLACE`, `ON CONFLICT`); advertir en
|
|
175
|
-
3. **Separar en 01-04**:
|
|
176
|
-
- Por cada par marker → escribir archivo `por-sesion/sessionXXX-<slug>/<categoria>/<stmt>.sql` con header canónico re-derivado (Script / Sesion / Objeto / Alcance) + BEGIN/COMMIT propios.
|
|
177
|
-
- Orden dentro de cada categoría: cronológico según aparición en SCRIPTS.sql.
|
|
180
|
+
- Detectar opcionales `@objeto` y `@alcance` para header de cada sentencia.
|
|
181
|
+
- Validar idempotencia básica (presencia de `IF EXISTS`, `OR REPLACE`, `ON CONFLICT`); advertir en `README.md` §Hallazgos si falta.
|
|
178
182
|
- Spec del SCRIPTS.sql: `agent-workflow/skills/sql-script-organizer/references/scripts-sql-format.md`.
|
|
179
|
-
4. **Delegar a `sql-rollback-generator` v1.0.0** (on-export): genera `<stmt>.rollback.sql` por cada forward separado + `rollback/00-rollback-global.sql` encadenado 04→01.
|
|
180
|
-
5. Copiar `queries/` tal cual si existe (canal aparte para queries de soporte; no se separa).
|
|
181
|
-
6. Si la sesión tenía layout legacy `scripts/01-04/*.sql` (sub-carpetas), el Paso 1.5 ya abortó antes — nunca llegamos acá con layout mixto.
|
|
182
183
|
|
|
183
|
-
|
|
184
|
+
2. **Consolidar por categoría al root** — un archivo por categoría con todas las sentencias cross-session. Mapping marker → filename:
|
|
185
|
+
- `01-DDL-TABLES.sql` ← `@category: 01-ddl-tablas` (CREATE/ALTER TABLE, INDEX, SEQUENCE).
|
|
186
|
+
- `02-DDL-FUNCTIONS.sql` ← `@category: 02-ddl-funciones` (CREATE OR REPLACE FUNCTION/PROCEDURE).
|
|
187
|
+
- `03-DML.sql` ← `@category: 03-migracion` (UPDATE/DELETE/INSERT...SELECT sobre datos existentes).
|
|
188
|
+
- `04-INSERTS.sql` ← `@category: 04-inserts` (INSERT INTO ... VALUES, seeds).
|
|
189
|
+
- Orden cross-session: sessionXXX cronológica → stmt cronológica dentro de cada una.
|
|
190
|
+
- Header de cada archivo: bloque inicial con metadata del bundle (corpus + fecha + versión CLI) + tabla de contenidos (sentencias en orden).
|
|
191
|
+
- Cada bloque de sentencia preserva su header canónico (`Script` / `Sesion` / `Objeto` / `Alcance`) + bloque transaccional `BEGIN; ... COMMIT;` propio.
|
|
192
|
+
- **Categorías vacías → skip silencioso**: no se escribe el archivo si no hay sentencias del corpus en esa categoría.
|
|
193
|
+
|
|
194
|
+
3. **Delegar a `sql-rollback-generator` v2.0.0** (on-export): genera `00-ROLLBACK.sql` único cross-session encadenado 04→01 (ver Paso 7).
|
|
195
|
+
|
|
196
|
+
4. **Queries de soporte**: si alguna sesión tiene `queries/`, copiarlas a `_queries/<sessionXXX>/` (sub-dir aparte; canal de consulta, no de ejecución).
|
|
197
|
+
|
|
198
|
+
5. Si la sesión tenía layout legacy `scripts/01-04/*.sql` (sub-carpetas), el Paso 1.5 ya abortó — nunca llegamos acá con layout mixto.
|
|
199
|
+
|
|
200
|
+
**Nota explícita**: NO se crea `por-sesion/`. NO se crea `<file>.rollback.sql` companion por sentencia. NO se crea sub-carpeta `rollback/` per-sesión. Esos artefactos del v3.x quedan eliminados del default.
|
|
201
|
+
|
|
202
|
+
### Paso 6 — `por-tema/` (opt-in, capa adicional encima del root plano)
|
|
184
203
|
|
|
185
204
|
Activación:
|
|
186
205
|
- `--themes slug1,slug2` declarado, **o**
|
|
187
206
|
- Al menos una sesión tiene `## Temas` en su OBJECTIVE, **o**
|
|
188
207
|
- `--themes infer` declarado (inferencia LLM).
|
|
189
208
|
|
|
190
|
-
Si activado,
|
|
209
|
+
Si activado, generar `por-tema/<slug>/` como **capa adicional** encima del root plano — NO reemplaza los archivos `0X-*.sql` del root. Aplicar `references/theme-handling.md`:
|
|
191
210
|
|
|
192
211
|
1. Resolver temas por sesión (lectura declarativa + inferencia + confirmación).
|
|
193
|
-
2. Asignar cada
|
|
194
|
-
3. Consolidar por categoría dentro de cada tema en un único `.sql` ejecutable
|
|
195
|
-
4.
|
|
196
|
-
5. Si `--keep-parts`: preservar `por-tema/<slug>/parts/<categoria>/*.sql
|
|
212
|
+
2. Asignar cada sentencia a su tema (header `-- Temas:`, nombre, contenido, fallback `tema-general`).
|
|
213
|
+
3. Consolidar por categoría dentro de cada tema en un único `.sql` ejecutable: `por-tema/<slug>/01-DDL-TABLES.sql`, `02-DDL-FUNCTIONS.sql`, `03-DML.sql`, `04-INSERTS.sql`.
|
|
214
|
+
4. **Rollback per-tema**: NO se genera. El rollback canónico es siempre `00-ROLLBACK.sql` al root — un solo punto de verdad para reversa. Esto evita estado inconsistente si el operador ejecuta rollback de un tema y deja otros aplicados.
|
|
215
|
+
5. Si `--keep-parts`: preservar `por-tema/<slug>/parts/<categoria>/*.sql` con sentencias individuales.
|
|
216
|
+
6. README §Mapping: agregar tabla "Sesión ↔ Tema ↔ Scripts" cuando `por-tema/` activado.
|
|
197
217
|
|
|
198
218
|
Si no activado, **skip** este paso completo (sin sub-carpeta `por-tema/` vacía).
|
|
199
219
|
|
|
200
|
-
### Paso 7 — `
|
|
220
|
+
### Paso 7 — `00-ROLLBACK.sql` cross-session (rollback único)
|
|
221
|
+
|
|
222
|
+
Delegar a **`sql-rollback-generator` v2.0.0** para generar un único archivo `00-ROLLBACK.sql` al root del bundle:
|
|
201
223
|
|
|
202
|
-
|
|
224
|
+
- Encadena rollbacks en orden inverso: última sesión → primera, dentro de cada una 04→03→02→01.
|
|
225
|
+
- Header del archivo lista las sesiones cubiertas + corpus + fecha de generación.
|
|
226
|
+
- Cuerpo: `BEGIN; ... COMMIT;` único con bloques agrupados por sesión + categoría inversa.
|
|
227
|
+
- **Irreversibles**: bloque "Fase 5 — Cleanup irreversible" **después** del `COMMIT;` con header `-- WARNING: IRREVERSIBLE` y referencia a `DECISIONS.md` de la sesión origen. El operador decide ejecutar este bloque manualmente.
|
|
203
228
|
|
|
204
|
-
|
|
205
|
-
- Sin `por-tema/`: orden por sesión cronológica, dentro de cada una 01→04.
|
|
206
|
-
- Con `por-tema/`: intercalado por fase (Fase 1 DDL tablas cross-tema, Fase 2 DDL funciones cross-tema, etc.) — algoritmo en `references/theme-handling.md`.
|
|
229
|
+
**No se genera** `ORDER.md`: la secuencia ejecutable vive en §4 del `README.md` (única fuente de verdad).
|
|
207
230
|
|
|
208
231
|
### Paso 8 — Detección de acciones manuales
|
|
209
232
|
|
|
@@ -212,37 +235,38 @@ Cruzar contra `release/references/manual-actions-catalog.md` (reference cruzada
|
|
|
212
235
|
| Condición | Acción manual |
|
|
213
236
|
|---|---|
|
|
214
237
|
| Tokens/api-key/credenciales mencionados sin valor | Solicitar a admin de prod (plantilla de correo) |
|
|
215
|
-
|
|
|
238
|
+
| Sentencias categorizadas `03-migracion` (consolidadas en `03-DML.sql`) | Respaldar tablas afectadas |
|
|
216
239
|
| `ALTER TABLE ... DROP` o `DROP TABLE` | Validar ventana de downtime |
|
|
217
240
|
| Escaneo: `localhost` / staging URL | Reemplazar por env var |
|
|
218
241
|
| Escaneo: credenciales hardcodeadas (alta) | Rotar + gestor de secretos |
|
|
219
242
|
| Rama distinta de `certificacion` con commits | Crear PR a `certificacion` |
|
|
220
243
|
| Sesión activa con `.sql` sin bundle | Cerrar o aislar antes del export |
|
|
221
244
|
|
|
222
|
-
Cada acción incluye `id` (ACT-001, …) para referenciar desde el checklist final del
|
|
245
|
+
Cada acción incluye `id` (ACT-001, …) para referenciar desde el checklist final del `README.md` (§9).
|
|
223
246
|
|
|
224
|
-
### Paso 9 — `
|
|
247
|
+
### Paso 9 — `README.md` único + validaciones
|
|
248
|
+
|
|
249
|
+
**`README.md`** (único informe + índice + how-to-execute): usar `references/readme-template.md`. Secciones canónicas v4.0.0:
|
|
225
250
|
|
|
226
|
-
**`manifest.md`** (informe consolidado): usar `references/manifest-template.md`. Secciones canónicas:
|
|
227
251
|
1. Resumen ejecutivo + readiness.
|
|
228
252
|
2. Sesiones incluidas.
|
|
229
253
|
3. Acciones manuales (ACT-NNN).
|
|
230
|
-
4.
|
|
231
|
-
5.
|
|
232
|
-
6.
|
|
233
|
-
7.
|
|
234
|
-
8.
|
|
235
|
-
9.
|
|
236
|
-
10. Metadata.
|
|
254
|
+
4. Secuencia de ejecución 01→04 + invocaciones psql.
|
|
255
|
+
5. Rollback (`00-ROLLBACK.sql` — cómo, cuándo, irreversibles).
|
|
256
|
+
6. Hallazgos del code-scan.
|
|
257
|
+
7. Git y ramas.
|
|
258
|
+
8. Documentación graduada (decisiones / manuales / etc.).
|
|
259
|
+
9. Checklist final de producción.
|
|
260
|
+
10. Metadata (corpus + fecha + versión CLI).
|
|
237
261
|
|
|
238
|
-
|
|
262
|
+
**NO se genera `manifest.md`** (absorbido por README §1-§10). **NO se genera `ORDER.md`** (absorbido por §4 del README). El template `manifest-template.md` queda marcado `## Status: DEPRECATED` como histórico.
|
|
239
263
|
|
|
240
264
|
**Validaciones V1-V6** (`references/validations.md`):
|
|
241
|
-
- V1 estructura del manifest.
|
|
242
|
-
- V2 noise vetado (placeholders, paths absolutos, `NNN` sin reemplazar).
|
|
243
|
-
- V3 secciones obligatorias del
|
|
244
|
-
- V4 conditionals (
|
|
245
|
-
- V5 header del
|
|
265
|
+
- V1 estructura del bundle: archivos `00-ROLLBACK.sql`, `01..04-*.sql`, `README.md` al root. Falla si aparece `por-sesion/`, `<file>.rollback.sql`, `<session>/rollback/`, `manifest.md`, `ORDER.md` o `rollback-global.sql`.
|
|
266
|
+
- V2 noise vetado (placeholders, paths absolutos, `NNN` sin reemplazar) + anti-redundancia (sin patrones del layout v3.x).
|
|
267
|
+
- V3 secciones obligatorias del README único (las 10).
|
|
268
|
+
- V4 conditionals (`por-tema/` honored si activo, dry-run, code-scan skip).
|
|
269
|
+
- V5 header del README bien formado.
|
|
246
270
|
- V6 referencias resolubles (paths a `docs/`).
|
|
247
271
|
|
|
248
272
|
Si V1, V3 o V4 fallan → abortar con error report. V2, V5, V6 → warning.
|
|
@@ -251,33 +275,30 @@ Si V1, V3 o V4 fallan → abortar con error report. V2, V5, V6 → warning.
|
|
|
251
275
|
|
|
252
276
|
Si `--dry-run`: imprimir reporte (count sesiones incluidas, hallazgos por severidad, acciones manuales, V4 outcome). No escribir.
|
|
253
277
|
|
|
254
|
-
Si pasa: escribir directorio completo:
|
|
278
|
+
Si pasa: escribir directorio completo (layout plano cross-session):
|
|
255
279
|
|
|
256
280
|
```
|
|
257
281
|
docs/scripts/NNN-export-scripts-YYYY-MM-DD/
|
|
258
|
-
├──
|
|
259
|
-
├──
|
|
260
|
-
├──
|
|
261
|
-
├──
|
|
262
|
-
├──
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
│
|
|
266
|
-
|
|
267
|
-
│ │ ├── 04-inserts/
|
|
268
|
-
│ │ └── rollback/
|
|
269
|
-
│ └── ...
|
|
270
|
-
└── por-tema/ # opt-in
|
|
282
|
+
├── 00-ROLLBACK.sql # único rollback cross-session (encadenado 04→01)
|
|
283
|
+
├── 01-DDL-TABLES.sql # CREATE/ALTER TABLE cross-session (skip si vacío)
|
|
284
|
+
├── 02-DDL-FUNCTIONS.sql # CREATE OR REPLACE FUNCTION cross-session (skip si vacío)
|
|
285
|
+
├── 03-DML.sql # UPDATE/DELETE/migración cross-session (skip si vacío)
|
|
286
|
+
├── 04-INSERTS.sql # INSERT/seed cross-session (skip si vacío)
|
|
287
|
+
├── README.md # único informe + índice + how-to-execute
|
|
288
|
+
├── _queries/ # opcional: queries de soporte por sesión (canal de consulta)
|
|
289
|
+
│ └── sessionXXX/...
|
|
290
|
+
└── por-tema/ # opt-in (capa adicional encima del root plano)
|
|
271
291
|
├── tema-<slug>/
|
|
272
|
-
│ ├── 01-
|
|
273
|
-
│ ├── 02-
|
|
274
|
-
│ ├── 03-
|
|
275
|
-
│ ├── 04-
|
|
276
|
-
│
|
|
277
|
-
│ └── parts/ # si --keep-parts
|
|
292
|
+
│ ├── 01-DDL-TABLES.sql # consolidado cross-session del tema
|
|
293
|
+
│ ├── 02-DDL-FUNCTIONS.sql
|
|
294
|
+
│ ├── 03-DML.sql
|
|
295
|
+
│ ├── 04-INSERTS.sql
|
|
296
|
+
│ └── parts/ # si --keep-parts (sentencias individuales por categoría)
|
|
278
297
|
└── tema-<otro>/...
|
|
279
298
|
```
|
|
280
299
|
|
|
300
|
+
**No se escriben** (eliminados desde v4.0.0): `por-sesion/`, `<file>.rollback.sql` companions, `<session>/rollback/`, `rollback-global.sql` separado, `manifest.md` separado, `ORDER.md`. El histórico (`docs/scripts/001-002-003-*` generados por v3.x) queda como histórico — no se migra.
|
|
301
|
+
|
|
281
302
|
### Paso 11 — Resumen al usuario
|
|
282
303
|
|
|
283
304
|
- Ruta del bundle (`docs/scripts/NNN-export-scripts-YYYY-MM-DD/`).
|
|
@@ -288,10 +309,10 @@ docs/scripts/NNN-export-scripts-YYYY-MM-DD/
|
|
|
288
309
|
## Composición con otras skills
|
|
289
310
|
|
|
290
311
|
- **`sql-script-organizer`** — clasificación 01→04 cross-session (paso 5 y consolidación por tema paso 6).
|
|
291
|
-
- **`sql-rollback-generator`** —
|
|
312
|
+
- **`sql-rollback-generator`** v2.0.0+ — `00-ROLLBACK.sql` único cross-session (sin companions ni per-sesión).
|
|
292
313
|
- **`session`** — este skill NO invoca graduación ni cierre.
|
|
293
314
|
- **`coding-standards`** — patrones de escaneo derivan de reglas de seguridad.
|
|
294
|
-
- **`agent-workflow:redaccion-simple`** — preset default aplicado en prosa del
|
|
315
|
+
- **`agent-workflow:redaccion-simple`** — preset default aplicado en prosa del `README.md`.
|
|
295
316
|
|
|
296
317
|
## Re-ejecución
|
|
297
318
|
|
|
@@ -312,7 +333,7 @@ Detalle completo: `references/deprecation-plan.md`.
|
|
|
312
333
|
|
|
313
334
|
## Recursos adicionales
|
|
314
335
|
|
|
315
|
-
- **`references/manifest-template.md`** —
|
|
336
|
+
- **`references/manifest-template.md`** — **DEPRECATED** desde v4.0.0. El informe consolidado se redacta directamente en `README.md` siguiendo `references/readme-template.md`. Archivo se conserva como histórico — no usar para bundles nuevos.
|
|
316
337
|
- **`references/readme-template.md`** — plantilla del README del bundle.
|
|
317
338
|
- **`references/lexico-tecnico.md`** — lista mínima de noise vetado para V2.
|
|
318
339
|
- **`references/validations.md`** — V1-V6 con condiciones de hard-fail.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# Léxico técnico — limpieza mínima de noise para export-scripts
|
|
1
|
+
# Léxico técnico — limpieza mínima de noise para export-scripts (v4.0.0)
|
|
2
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-scripts` es técnica (devs / DBAs / release managers) y los términos técnicos son bienvenidos. Sólo se veta el noise interno: placeholders sin reemplazar, paths del developer, restos de plantilla.
|
|
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-scripts` es técnica (devs / DBAs / release managers) y los términos técnicos son bienvenidos. Sólo se veta el noise interno: placeholders sin reemplazar, paths del developer, restos de plantilla, y referencias residuales al layout v3.x (`por-sesion/`, `manifest.md` separado, `ORDER.md`, `rollback-global.sql`).
|
|
4
4
|
|
|
5
5
|
## Lista vetada (V2 — para grep determinista)
|
|
6
6
|
|
|
7
|
-
Términos / patrones que **no deben aparecer** en el cuerpo del `
|
|
7
|
+
Términos / patrones que **no deben aparecer** en el cuerpo del `README.md` rendered (excepto en `## 10. Metadata`):
|
|
8
8
|
|
|
9
9
|
```
|
|
10
10
|
{{
|
|
@@ -70,11 +70,25 @@ El validator de V2 (descrito en `validations.md` §V2) procesa este `.md` extray
|
|
|
70
70
|
|
|
71
71
|
```bash
|
|
72
72
|
awk '/^```$/{flag=!flag; next} flag' lexico-tecnico.md > /tmp/lexico-vetado.txt
|
|
73
|
-
grep -n -F -f /tmp/lexico-vetado.txt /tmp/
|
|
73
|
+
grep -n -F -f /tmp/lexico-vetado.txt /tmp/readme-body.md
|
|
74
74
|
```
|
|
75
75
|
|
|
76
76
|
El primer awk toggle-extrae las líneas entre triple-backticks (alterna `flag` cada `\`\`\`` solitario); el segundo grep matchea como fixed strings.
|
|
77
77
|
|
|
78
|
-
##
|
|
78
|
+
## Anti-redundancia v4.0.0 (regex aparte)
|
|
79
79
|
|
|
80
|
-
|
|
80
|
+
Patrones del layout v3.x que NO deben aparecer en prosa del README (V2 los rechaza vía regex, no fixed-string):
|
|
81
|
+
|
|
82
|
+
```regex
|
|
83
|
+
por-sesion/
|
|
84
|
+
manifest\.md
|
|
85
|
+
ORDER\.md
|
|
86
|
+
rollback-global\.sql
|
|
87
|
+
\.rollback\.sql
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Estos patrones son válidos sólo dentro de bloques que declaran explícitamente "v3.x histórico" / "DEPRECATED" / "eliminado". V2 valida el contexto (presencia de palabra "deprecated"/"histórico" cercana).
|
|
91
|
+
|
|
92
|
+
## Total ≈ 50 términos vetados (fixed-string) + 5 patrones v3.x (regex)
|
|
93
|
+
|
|
94
|
+
Mantenimiento: revisar tras cada change major del `readme-template.md`; los términos derivan 1:1 de los placeholders activos en la plantilla.
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
# Plantilla — Informe del bundle export-scripts
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
## Status: DEPRECATED (desde v4.0.0 — session093)
|
|
4
|
+
|
|
5
|
+
Este template ya **no se usa** para bundles nuevos. Desde `export-scripts` v4.0.0 el informe consolidado vive en `README.md` único al root del bundle (ver `readme-template.md`). El layout plano cross-session reemplazó `manifest.md` + `ORDER.md` + `rollback-global.sql` separados.
|
|
6
|
+
|
|
7
|
+
**Si estás generando un bundle nuevo**: usar `references/readme-template.md` (plantilla canónica).
|
|
8
|
+
|
|
9
|
+
**Si estás leyendo un bundle histórico** (`docs/scripts/001-002-003-export-scripts-*` generado por v3.x): este template describe el formato que tenía. No se reescriben los bundles ya generados.
|
|
10
|
+
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
## Plantilla original (export-scripts v3.x — histórico)
|
|
14
|
+
|
|
15
|
+
Plantilla exacta que usaba el skill `export-scripts` v3.x para generar `manifest.md` dentro del output dir. Reemplazar los placeholders `[entre corchetes]` con valores reales al momento de generar.
|
|
4
16
|
|
|
5
17
|
> **Heredada de `release/references/report-template.md` v2.0.0**. Cambios respecto al original: (1) paths actualizados al nuevo output dir único; (2) sección 4.4 "Vista por tema" condicional (V4.a); (3) header con readiness color emoji; (4) sección 10 cita `export-scripts v1.0.0`.
|
|
6
18
|
|