@tacuchi/agent-workflow-cli 14.6.0 → 14.9.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 +6 -3
- package/dist/adapters/node-process.d.ts.map +1 -1
- package/dist/adapters/node-process.js +7 -3
- package/dist/adapters/node-process.js.map +1 -1
- package/dist/application/plugin-doctor/skills.d.ts +1 -0
- package/dist/application/plugin-doctor/skills.d.ts.map +1 -1
- package/dist/application/plugin-doctor/skills.js +1 -1
- package/dist/application/plugin-doctor/skills.js.map +1 -1
- package/dist/application/self/install-plugin-skills-git.js +2 -1
- package/dist/application/self/install-plugin-skills-git.js.map +1 -1
- package/dist/application/self/install-plugin-skills.d.ts.map +1 -1
- package/dist/application/self/install-plugin-skills.js +2 -2
- package/dist/application/self/install-plugin-skills.js.map +1 -1
- package/dist/application/self/install-skill.d.ts +2 -1
- package/dist/application/self/install-skill.d.ts.map +1 -1
- package/dist/application/self/install-skill.js +5 -32
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/self/install-targets.d.ts +10 -0
- package/dist/application/self/install-targets.d.ts.map +1 -0
- package/dist/application/self/install-targets.js +19 -0
- package/dist/application/self/install-targets.js.map +1 -0
- package/dist/application/self/plugin-cache-clear.d.ts +2 -1
- package/dist/application/self/plugin-cache-clear.d.ts.map +1 -1
- package/dist/application/self/plugin-cache-clear.js +5 -2
- package/dist/application/self/plugin-cache-clear.js.map +1 -1
- package/dist/application/self/plugin-cache-reload.js.map +1 -1
- package/dist/application/self/uninstall-skill.d.ts.map +1 -1
- package/dist/application/self/uninstall-skill.js +4 -2
- package/dist/application/self/uninstall-skill.js.map +1 -1
- package/dist/application/source-launch-scripts-service.d.ts +6 -0
- package/dist/application/source-launch-scripts-service.d.ts.map +1 -1
- package/dist/application/source-launch-scripts-service.js +15 -2
- package/dist/application/source-launch-scripts-service.js.map +1 -1
- package/dist/application/source-launch-service.d.ts +4 -2
- package/dist/application/source-launch-service.d.ts.map +1 -1
- package/dist/application/source-launch-service.js +7 -3
- package/dist/application/source-launch-service.js.map +1 -1
- package/dist/cli/commands/check-branch.js +2 -1
- package/dist/cli/commands/check-branch.js.map +1 -1
- package/dist/cli/commands/git-flow.d.ts.map +1 -1
- package/dist/cli/commands/git-flow.js +3 -7
- package/dist/cli/commands/git-flow.js.map +1 -1
- package/dist/cli/commands/merge-state.d.ts.map +1 -1
- package/dist/cli/commands/merge-state.js +2 -5
- package/dist/cli/commands/merge-state.js.map +1 -1
- package/dist/cli/commands/release-data.d.ts.map +1 -1
- package/dist/cli/commands/release-data.js +6 -2
- package/dist/cli/commands/release-data.js.map +1 -1
- package/dist/cli/commands/session-artifacts.d.ts.map +1 -1
- package/dist/cli/commands/session-artifacts.js +8 -0
- package/dist/cli/commands/session-artifacts.js.map +1 -1
- package/dist/cli/commands/session-resume.d.ts.map +1 -1
- package/dist/cli/commands/session-resume.js +8 -0
- package/dist/cli/commands/session-resume.js.map +1 -1
- package/dist/cli/parser.d.ts +6 -0
- package/dist/cli/parser.d.ts.map +1 -1
- package/dist/cli/parser.js +18 -0
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/tui/components/logs-section.d.ts.map +1 -1
- package/dist/cli/tui/components/logs-section.js +12 -1
- package/dist/cli/tui/components/logs-section.js.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.js +7 -10
- package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
- package/package.json +1 -1
- package/skills/w/README.md +2 -2
- package/skills/w/SKILL.md +5 -3
- package/skills/w/artifacts/README.md +6 -3
- package/skills/w/artifacts/artifacts-core/SESSION.md +1 -1
- package/skills/w/artifacts/artifacts-design/SPEC.md +42 -0
- package/skills/w/commands/README.md +1 -1
- package/skills/w/commands/plan-exec.md +1 -0
- package/skills/w/commands/plan-new.md +4 -0
- package/skills/w/commands/plan-refine.md +4 -0
- package/skills/w/commands/quick.md +1 -0
- package/skills/w/commands/workspace-init.md +1 -1
- package/skills/w/exports/export-diagrams/SKILL.md +1 -1
- package/skills/w/exports/export-manuals/SKILL.md +1 -1
- package/skills/w/exports/export-reports/SKILL.md +1 -1
- package/skills/w/exports/export-scripts/SKILL.md +1 -1
- package/skills/w/loops/README.md +3 -2
- package/skills/w/loops/plan-exec-loop/SKILL.md +32 -20
- package/skills/w/loops/plan-new-loop/SKILL.md +17 -16
- package/skills/w/loops/plan-refine-loop/SKILL.md +16 -14
- package/skills/w/loops/quick-loop/SKILL.md +18 -18
- package/skills/w/loops/spec-refine-loop/SKILL.md +2 -0
- package/skills/w/roles/README.md +3 -1
- package/skills/w/roles/ui-spec/SKILL.md +22 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logs-section.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/logs-section.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"logs-section.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/logs-section.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAajD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACxF;
|
|
1
|
+
{"version":3,"file":"skills-tab.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAajD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE;QAAE,IAAI,EAAE,IAAI,GAAG,MAAM,GAAG,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACxF;AAkBD,wBAAgB,SAAS,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,cAAc,2CA4SnE"}
|
|
@@ -17,7 +17,9 @@ import { useInputLock } from "../input-lock.js";
|
|
|
17
17
|
import { rowWidth } from "../row-width.js";
|
|
18
18
|
import { colors, icons } from "../theme.js";
|
|
19
19
|
const HOOKS_SUPPORTED_TARGETS = new Set(["claude"]);
|
|
20
|
-
|
|
20
|
+
// Derived from the backend's own target map so the tab can't drift from what
|
|
21
|
+
// `self install/uninstall-skill` actually supports (clean-legacy v14.5.1 lesson).
|
|
22
|
+
const BACKED_INSTALL_TARGETS = new Set(Object.keys(TARGET_ROOTS));
|
|
21
23
|
export function SkillsTab({ ctx, isActive, onToast }) {
|
|
22
24
|
const [skills, setSkills] = useState([]);
|
|
23
25
|
const [cursor, setCursor] = useState(0);
|
|
@@ -244,15 +246,10 @@ function pathForHost(host, home) {
|
|
|
244
246
|
return `${home}/${root.join("/")}/${SKILL_DIR_NAME}`;
|
|
245
247
|
}
|
|
246
248
|
function friendlyPath(host, _home) {
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
if (host.id === "warp")
|
|
252
|
-
return `~/.warp/skills/${SKILL_DIR_NAME}/`;
|
|
253
|
-
if (host.id === "agents")
|
|
254
|
-
return `~/.agents/skills/${SKILL_DIR_NAME}/`;
|
|
255
|
-
return "(not wired yet)";
|
|
249
|
+
const root = TARGET_ROOTS[host.id];
|
|
250
|
+
if (!root)
|
|
251
|
+
return "(not wired yet)";
|
|
252
|
+
return `~/${root.join("/")}/${SKILL_DIR_NAME}/`;
|
|
256
253
|
}
|
|
257
254
|
function buildArgsFor(action, target) {
|
|
258
255
|
const flags = new Set();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"skills-tab.js","sourceRoot":"","sources":["../../../../src/cli/tui/tabs/skills-tab.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tacuchi/agent-workflow-cli",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.9.0",
|
|
4
4
|
"description": "Agnostic runtime CLI for AI development workflows — a stages + loops + artifacts harness. Bundles the universal `w` skill set under `skills/w/` (slash commands `/w:*`: spec-new/spec-refine, plan-new/plan-exec, quick, workspace-init, export-*); `self install --target <host>` copies SKILL + commands + hooks into the host. Pluggable capability skills via `.workflow/skills.toml`. Multi-empresa parametrization via `profile.json` cascade. Namespace auto-detected from any `.<ns>/sessions/` dir in CWD; default `workflow`.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
package/skills/w/README.md
CHANGED
|
@@ -33,7 +33,7 @@ ZONE docs/ — permanent, user-facing deliverables
|
|
|
33
33
|
| [`loops/`](loops/) | 2 | The 5 loops (chassis `spec-refine-loop` + heirs) the AI runs |
|
|
34
34
|
| [`exports/`](exports/) | 1 | The `export-*` family — the only artifact→`docs/` promotion path |
|
|
35
35
|
| [`roles/`](roles/) | cross-cutting | Pluggable capability skills (built-in defaults; rebindable via `.workflow/skills.toml`) |
|
|
36
|
-
| [`harness/`](harness/SKILL.md) | cross-cutting | Capability→harness-mechanism binding (agnostic across Claude Code / Codex /
|
|
36
|
+
| [`harness/`](harness/SKILL.md) | cross-cutting | Capability→harness-mechanism binding (agnostic across Claude Code / Codex / Gemini-Antigravity / OpenCode / Crush / Warp) |
|
|
37
37
|
| [`artifacts/`](artifacts/) | 3 | Session artifact templates the loops manage |
|
|
38
38
|
| [`hooks/`](hooks/) | — | Host hook template (branch-check, sql-mutation-guard, checkpoint, …) |
|
|
39
39
|
| [`SKILL.md`](SKILL.md) | overview | The `workflow` orientation skill (whole-model guide) |
|
|
@@ -58,7 +58,7 @@ Run [`/w:workspace-init`](commands/workspace-init.md) once to turn a folder into
|
|
|
58
58
|
|
|
59
59
|
1. **No auto-export** — loops never promote artifacts to `docs/`; only `export-*` does, explicitly.
|
|
60
60
|
2. **Folder ownership** — SPEC→`specs`; PLAN→`plans`; QUICK→none; the rest→`export-*`. (`docs/tools` is ambient — written by the `creating-tools` skill, not a flow.)
|
|
61
|
-
3. **spec & plan are documents** (`docs/`), not artifacts.
|
|
61
|
+
3. **spec & plan are documents** (`docs/`), not artifacts. *(Not to be confused with the **design SPECs** `NNN-SPEC-<SLUG>.md`: per-screen UI design artifacts of PLAN sessions — see [`artifacts/artifacts-design/`](artifacts/artifacts-design/).)*
|
|
62
62
|
4. **DB scripts-only** — the AI never executes DML/DDL; migrations land in `SCRIPTS.sql` and ship via `export-scripts`; reads are read-only via MCP.
|
|
63
63
|
5. **Git-safe** — verify the expected branch before editing; propose commits per source; never `push`/`--amend`/`--no-verify`.
|
|
64
64
|
6. **All loops** — gap-driven convergent; one session per run (research inline); **structured-choice** (capability — see [`harness/`](harness/SKILL.md); on Claude Code: `AskUserQuestion`) with ≤3 content questions + 1 always-present `flow` control (`Compactar`/`Cerrar`); a **convergence gate** before saving; compact/resume; artifacts as a live log (`CHECKPOINT` always; `BACKLOG` only when deferring).
|
package/skills/w/SKILL.md
CHANGED
|
@@ -112,6 +112,8 @@ Un loop es una skill que enseña a la IA **cómo iterar** hasta un entregable. P
|
|
|
112
112
|
|
|
113
113
|
Cada loop tiene un **convergence gate** read-only antes de ofrecer `Guardar`/`done`, que es operacionalmente **"todos los `SESSION.Success criteria` en verde"** (*verification-first*): chequea invariantes propios del entregable y lo que falle vuelve como gap (en `spec-refine-loop` es el *analyze gate*; en `plan-new-loop` —y en `plan-refine-loop`— la coherencia del plan; en `plan-exec-loop`, la validación final; en `quick-loop`, una validación puntual proporcional). El detalle vive en cada loop.
|
|
114
114
|
|
|
115
|
+
Los loops que **editan código** (`plan-exec-loop` por fase, `quick-loop` proporcional) corren además un **gate de revisión de cierre** ANTES de proponer cada commit: re-lectura **independiente** del diff aplicando las **convenciones ambientes instaladas** (el host las auto-descubre; el workflow crea el momento, no las bindea — no es un rol); los hallazgos se corrigen (re-validando) o se difieren justificados. Nada llega a un commit propuesto sin revisar. Ver `loops/plan-exec-loop/SKILL.md` § *Delta 5*.
|
|
116
|
+
|
|
115
117
|
`spec-new` no tiene loop (single-pass): **6 comandos / 5 loops**.
|
|
116
118
|
|
|
117
119
|
### The `export-*` family (única vía artefacto → `docs/`)
|
|
@@ -145,7 +147,7 @@ Catálogo de roles y su default:
|
|
|
145
147
|
|
|
146
148
|
| Role | Default | Tier | Composed by |
|
|
147
149
|
|---|---|---|---|
|
|
148
|
-
| `ui-design` | `ui-spec` | must | `spec-refine-loop` (UI) |
|
|
150
|
+
| `ui-design` | `ui-spec` | must | `spec-refine-loop` (UI) · `plan-new-loop` / `plan-refine-loop` (design SPECs) |
|
|
149
151
|
| `sql` | `sql` | must | research · `plan-exec-loop` · `quick-loop` · `export-scripts` |
|
|
150
152
|
| `git` | `git` | must | `plan-exec-loop` · `quick-loop` |
|
|
151
153
|
| `research` | `research` | should | todos los loops (capacidad inline) |
|
|
@@ -158,7 +160,7 @@ El **chasis del loop** NO se bindea: **es** el loop, no es enchufable.
|
|
|
158
160
|
|
|
159
161
|
### Harness (agnóstico al arnés)
|
|
160
162
|
|
|
161
|
-
La doctrina nombra **capacidades** abstractas, no tools concretos de un arnés. Un solo doc —`harness/SKILL.md`— liga cada capacidad al mecanismo de cada arnés (Claude Code, Codex,
|
|
163
|
+
La doctrina nombra **capacidades** abstractas, no tools concretos de un arnés. Un solo doc —`harness/SKILL.md`— liga cada capacidad al mecanismo de cada arnés (Claude Code, Codex, Gemini/Antigravity, OpenCode, Crush, Warp, genérico). Dos principios: **capacidad-no-tool** (los loops/comandos referencian la capacidad por nombre) y **progressive-enhancement** (usar el mecanismo más rico del arnés; degradar a un fallback universal cuando no exista).
|
|
162
164
|
|
|
163
165
|
Capacidades clave:
|
|
164
166
|
|
|
@@ -172,7 +174,7 @@ Las únicas `must` para el ciclo de un loop son **structured-choice** y **compac
|
|
|
172
174
|
|
|
173
175
|
1. **Sin auto-export** — los loops nunca graduan/exportan a `docs/`. Solo `export-*` lo hace, explícito.
|
|
174
176
|
2. **Cada flujo toca solo sus carpetas `docs/`** — SPEC→`specs` · PLAN→`plans` · QUICK→ninguna · resto→`export-*`. (`docs/tools` no es de un flujo: lo escribe la skill ambiente `creating-tools`.)
|
|
175
|
-
3. **El spec y el plan son documentos** (`docs/`), no artefactos de sesión.
|
|
177
|
+
3. **El spec y el plan son documentos** (`docs/`), no artefactos de sesión. *(No confundir con los **design SPECs** `NNN-SPEC-<SLUG>.md`: artefactos de diseño de UI **por pantalla** que las sesiones de PLAN producen vía la capacidad `ui-design` cuando el plan incluye UI — ver `artifacts/artifacts-design/` — no son el requirement-spec.)*
|
|
176
178
|
4. **BD solo-scripts** — la IA nunca ejecuta DML/DDL; las migraciones quedan en `SCRIPTS.sql` y las aplica el usuario. Solo lecturas read-only vía MCP.
|
|
177
179
|
5. **Git seguro** — rama esperada verificada antes de editar; commits propuestos por fuente; nunca `push`/`--amend`/`--no-verify`.
|
|
178
180
|
6. **Chasis de loops** — **objetivo persistente + verification-first** (persigue `SESSION.Objective` hasta que sus `SESSION.Success criteria` —sembrados al inicio, TDD generalizado— están en verde) · gap-driven convergente · una sola session por run (research inline) · **structured-choice** con ≤3 preguntas de contenido + 1 control `flow` (`Compactar`/`Cerrar`) siempre · compactación/resume · artefactos como log vivo **artifact-first** (sembrar `Pending`/`Next` antes, `Completed` después; `CHECKPOINT` siempre; `BACKLOG` solo si difiere).
|
|
@@ -15,7 +15,7 @@ Central distinction of the model:
|
|
|
15
15
|
| Location | `.workflow/sessions/NNN-…/` | `docs/<category>/` |
|
|
16
16
|
| Who manages it | a **loop**, through a **session** | produced by a loop/command at "save" time |
|
|
17
17
|
| User-facing | No (internal) | Yes |
|
|
18
|
-
| Examples | `CHECKPOINT`, `ANALYSIS-FILE`, `CONCLUSIONS`, `SCRIPTS.sql`, `TASKS`, `DECISION` | `specs`, `plans`, `manuals`, `scripts`, `diagrams`, `reports` |
|
|
18
|
+
| Examples | `CHECKPOINT`, `ANALYSIS-FILE`, `CONCLUSIONS`, `SCRIPTS.sql`, `TASKS`, `DECISION`, `NNN-SPEC-<SLUG>.md` | `specs`, `plans`, `manuals`, `scripts`, `diagrams`, `reports` |
|
|
19
19
|
|
|
20
20
|
> An artifact may be **promoted** to a `docs/` document (e.g. `SCRIPTS.sql` → `docs/scripts/`) — but **only via dedicated `export-*` skills**, **never** automatically by the loops. The spec and the plan **are not** artifacts: they are documents.
|
|
21
21
|
|
|
@@ -29,12 +29,14 @@ Sessions are created by the loops as needed — **one session per run**. The ses
|
|
|
29
29
|
|
|
30
30
|
| Session type | Created by | Artifacts | Notes |
|
|
31
31
|
|---|---|---|---|
|
|
32
|
-
| **refine** | `spec-refine-loop` · `plan-new-loop` | `SESSION` · `CHECKPOINT` · `BACKLOG` (on close, if any) | Owns the loop run (spec-refine, plan-new). |
|
|
32
|
+
| **refine** | `spec-refine-loop` · `plan-new-loop` · `plan-refine-loop` | `SESSION` · `CHECKPOINT` · `BACKLOG` (on close, if any) · `NNN-SPEC-<SLUG>.md` (PLAN sessions with UI) | Owns the loop run (spec-refine, plan-new, plan-refine). |
|
|
33
33
|
| **exec** | `plan-exec-loop` | `SESSION` · `CHECKPOINT` · `BACKLOG` (on close, if any) · `DECISION` · `SCRIPTS.sql` | A single per-run exec session (**not** one per phase). No `TECHNICAL-NOTE` or own `TASKS` — detail lives in the plan-doc (living). `TASKS` is optional for internal breakdown. |
|
|
34
34
|
| **quick** | `quick-loop` | `SESSION` · `CHECKPOINT` · `BACKLOG` (on close, if any) · `DECISION` · `SCRIPTS.sql` | Single session, single commit. |
|
|
35
35
|
|
|
36
36
|
> **Inline research (any session):** research is **not** a session type. When any session (`refine`/`exec`/`quick`) needs to investigate, it produces research artifacts **inline**: `ANALYSIS-FILE` (optional scratchpad), `CONCLUSIONS`, and read-only `SCRIPTS.sql` (if DB). These are written into the active session — there is no separate research session.
|
|
37
37
|
|
|
38
|
+
> **Inline design (PLAN sessions):** when the plan **includes UI**, `plan-new-loop`/`plan-refine-loop` compose the **`ui-design`** capability and produce **design SPECs** — `NNN-SPEC-<SLUG>.md`, one **per screen** (`001-SPEC-MODAL-EXPORT.md`, `002-SPEC-ADMIN-DASHBOARD.md`), numbering local to the session — inside their own session. The plan-doc **references** them (UI Tasks) and `plan-exec-loop` reads them as the design reference. They are **not** the requirement-spec (invariant 3): they are process artifacts. See [`artifacts-design/`](artifacts-design/).
|
|
39
|
+
|
|
38
40
|
> **PLAN note (rich plan):** the plan-doc (`docs/plans/PPP-plan.md`) absorbs inline the `TECHNICAL-NOTE` level (Solution/Impacted/AS-IS/TO-BE/Validations…) **and** the `Phases`/`Tasks`. Therefore exec sessions do **not** carry a `TECHNICAL-NOTE` or own `TASKS` artifact: the technical detail and progress live in the plan-doc (living). `TASKS` remains as an optional artifact for sessions that need their own internal breakdown.
|
|
39
41
|
|
|
40
42
|
---
|
|
@@ -51,6 +53,7 @@ Sessions are created by the loops as needed — **one session per run**. The ses
|
|
|
51
53
|
|---|---|---|
|
|
52
54
|
| [`artifacts-core/`](artifacts-core/) | common to any session | `SESSION` · `TASKS` · `CHECKPOINT` · `BACKLOG` · `SCRIPTS.sql` |
|
|
53
55
|
| [`artifacts-research/`](artifacts-research/) | inline research (any session) | `ANALYSIS-FILE` · `CONCLUSIONS` |
|
|
56
|
+
| [`artifacts-design/`](artifacts-design/) | inline design (PLAN sessions with UI) | `NNN-SPEC-<SLUG>.md` (design SPEC, one per screen) |
|
|
54
57
|
| [`artifacts-exec/`](artifacts-exec/) | `exec` / `quick` session | `DECISION` · `TECHNICAL-NOTE` (schema reference; absorbed by the plan-doc) |
|
|
55
58
|
|
|
56
59
|
---
|
|
@@ -59,5 +62,5 @@ Sessions are created by the loops as needed — **one session per run**. The ses
|
|
|
59
62
|
|
|
60
63
|
1. **No auto-export**: loops **never** graduate/export to `docs/`. Only `export-*` does, explicitly.
|
|
61
64
|
2. **Each flow touches only its `docs/` folders**: SPEC→`specs` · PLAN→`plans` · QUICK→none · rest→`export-*`. (`docs/tools` is ambient — `creating-tools`, not a flow.)
|
|
62
|
-
3. **Spec and plan are documents** (`docs/`), not artifacts — they never live inside a session.
|
|
65
|
+
3. **Spec and plan are documents** (`docs/`), not artifacts — they never live inside a session. *(Do not confuse with the **design SPECs** `NNN-SPEC-<SLUG>.md`: per-screen UI design artifacts of PLAN sessions — see [`artifacts-design/`](artifacts-design/) — which are not the requirement-spec.)*
|
|
63
66
|
4. **DB scripts-only**: the AI **never executes DML/DDL**; migrations stay in `SCRIPTS.sql` (type B) and are delivered via `export-scripts`. Only read-only queries (type A) are executed via MCP.
|
|
@@ -14,7 +14,7 @@ Who created it and from where:
|
|
|
14
14
|
|
|
15
15
|
## Type
|
|
16
16
|
Session type, **set by the parent loop** (not the user). Authoritative catalog: `../README.md`.
|
|
17
|
-
- `refine` — owns a spec-refine / plan-new loop run (SESSION + CHECKPOINT; + BACKLOG on close)
|
|
17
|
+
- `refine` — owns a spec-refine / plan-new / plan-refine loop run (SESSION + CHECKPOINT; + BACKLOG on close; + `NNN-SPEC-<SLUG>.md` in PLAN sessions with UI — see [`../artifacts-design/`](../artifacts-design/))
|
|
18
18
|
- `exec` — execute work; a single per-run session (PLAN), not one per phase
|
|
19
19
|
- `quick` — lightweight execution (≈ `exec`: single session, single commit) (QUICK)
|
|
20
20
|
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# NNN-SPEC-<SLUG>.md — design SPEC (UI)
|
|
2
|
+
|
|
3
|
+
> What it is: the **design specification of ONE screen** (modal, dashboard, form, …), produced by composing the **`ui-design`** capability (built-in default [`ui-spec`](../../roles/ui-spec/SKILL.md)) when the **plan includes UI**. It is a **session artifact** of the PLAN loops (`plan-new-loop` · `plan-refine-loop`) — process-facing, internal — and `plan-exec-loop` reads it as the **design reference** when implementing the UI tasks.
|
|
4
|
+
>
|
|
5
|
+
> **It is NOT the spec.** The requirement-spec (`docs/specs/NNN-spec-<slug>.md`) and the plan remain **documents** (invariant 3). The design SPEC is a different thing: the per-screen UI design detail, ephemeral and process-facing, living inside the session. Spelling disambiguates: `SPEC` (UPPERCASE, artifact) vs `spec` (lowercase, document).
|
|
6
|
+
|
|
7
|
+
## Naming
|
|
8
|
+
|
|
9
|
+
`NNN-SPEC-<SLUG>.md`, all UPPERCASE (session-artifact convention):
|
|
10
|
+
|
|
11
|
+
- `NNN` — sequence **local to the session** (001, 002, … in creation order). Numbered by **the loop**; the CLI is not involved (do not confuse with the global session `NNN` from `aw session-create`, nor with `aw next-number` for `docs/`).
|
|
12
|
+
- `SLUG` — short screen name in UPPER-KEBAB (`[A-Z0-9-]`, ≤ ~4 words).
|
|
13
|
+
- **One screen per file.** Several screens = several SPECs.
|
|
14
|
+
|
|
15
|
+
Examples: `001-SPEC-MODAL-EXPORT.md` · `002-SPEC-ADMIN-DASHBOARD.md`.
|
|
16
|
+
|
|
17
|
+
## Schema
|
|
18
|
+
|
|
19
|
+
Trace header (blockquote) + the [`ui-spec`](../../roles/ui-spec/SKILL.md) Markdown render (same structure, vocabulary and exact render rules; **a single screen**):
|
|
20
|
+
|
|
21
|
+
```markdown
|
|
22
|
+
> Design SPEC · generated via the ui-design capability
|
|
23
|
+
> Origin: docs/plans/PPP-plan-<slug>.md (· docs/specs/NNN-spec-<slug>.md § UI spec, if present)
|
|
24
|
+
> Design options: material3 · light · es
|
|
25
|
+
> Tasks: T3.2 · T3.3
|
|
26
|
+
|
|
27
|
+
# Modal Export
|
|
28
|
+
**Tipo**: modal | **Plataforma**: web
|
|
29
|
+
|
|
30
|
+
## Componentes
|
|
31
|
+
- **Formato** (select)
|
|
32
|
+
- **Rango de fechas** (datePicker)
|
|
33
|
+
- **Exportar** (button)
|
|
34
|
+
- **Cancelar** (link)
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
## Rules
|
|
38
|
+
|
|
39
|
+
1. Authored by the **`ui-design`** capability (rebindable via `.workflow/skills.toml`; `off` → the UI gap degrades to human / `Open questions`, like any disabled capability).
|
|
40
|
+
2. The **plan-doc references** the path of the governing SPEC (in its UI Tasks / `Solution`): that reference is the **source of truth** for which SPEC governs each screen. A re-refine that changes a screen produces the updated SPEC **in its own session** (each loop manages the artifacts of ITS session) and re-points the plan reference.
|
|
41
|
+
3. **Derives** from the spec's `## UI spec` section when present: splits it per screen and elevates it to executable detail; a SPEC↔`## UI spec` contradiction is a **gap** (plan↔spec drift). If the spec has no `## UI spec`, it is authored from the `Requirement` via structured-choice (design system, theme, screen ambiguities).
|
|
42
|
+
4. Ephemeral and internal like every artifact: promotion to `docs/` happens **only** via `export-*` (never automatically by the loop).
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
▼
|
|
29
29
|
┌─ LAYER 3 · SESSIONS + ARTIFACTS (.workflow/sessions/) ─────────────────┐
|
|
30
30
|
│ Ephemeral, internal. No one invokes this by hand. Process-only. │
|
|
31
|
-
│ (schema in ../
|
|
31
|
+
│ (schema in ../artifacts/) │
|
|
32
32
|
└────────────────────────────────────────────────────────────────────────┘
|
|
33
33
|
|
|
34
34
|
╔═ docs/ ZONE — PERMANENT documents, user-facing ════════════════════════╗
|
|
@@ -28,6 +28,7 @@ Arranca o retoma `plan-exec-loop` (Layer 2), que ejecuta el trabajo real fase po
|
|
|
28
28
|
- Lee y actualiza `docs/plans/PPP-plan-<slug>.md` (living doc: estado de fases/tareas).
|
|
29
29
|
- Edita código en las fuentes del workspace (una sola sesión de ejecución para el run; la ejecución sigue siendo fase por fase, solo que no hay sesión por fase).
|
|
30
30
|
- Si crea una herramienta/utilidad, la documenta la skill ambiente `creating-tools` en `docs/tools/` (auto-descubierta; el workflow no la bindea).
|
|
31
|
+
- **Gate de revisión de cierre** en cada límite de fase, **antes de proponer los commits**: re-lee el diff (pasada independiente) aplicando las **convenciones ambientes instaladas** y corrige o difiere hallazgos — nada llega a un commit sin revisar (ver `../loops/plan-exec-loop/SKILL.md` § *Delta 5*).
|
|
31
32
|
- Propone commits por fuente (git-safe: verifica rama, propone, nunca push/--amend/--no-verify).
|
|
32
33
|
- Genera artefactos de sesión (`DECISION`, `SCRIPTS.sql`) en `.workflow/sessions/`.
|
|
33
34
|
- **No exporta** a `docs/scripts`, `docs/manuals`, `docs/diagrams`, `docs/reports` — eso lo hacen los `export-*` como paso aparte.
|
|
@@ -37,6 +37,10 @@ El skill evalúa `$ARGUMENTS` (los specs viven in place — `docs/specs/NNN-spec
|
|
|
37
37
|
|
|
38
38
|
El plan se nombra `docs/plans/PPP-plan-<slug>.md`. El CLI solo devuelve el número `PPP`; el loop arma el nombre completo (slug = kebab-case corto del Requirement: `[a-z0-9-]`, ≤ ~5 palabras / ≤ 40 chars). **No hereda el `NNN` del spec**. El vínculo al spec se establece por referencia (`## Origin` / "Derivado de") en el plan, no por número.
|
|
39
39
|
|
|
40
|
+
## UI → design SPECs
|
|
41
|
+
|
|
42
|
+
Si el plan **incluye UI**, el loop compone la capacidad `ui-design` y produce **design SPECs** por pantalla (`NNN-SPEC-<SLUG>.md`) como artefactos de su sesión — las Tasks UI del plan los referencian (ver `../loops/plan-new-loop/SKILL.md` § *Delta 4* y `../artifacts/artifacts-design/SPEC.md`).
|
|
43
|
+
|
|
40
44
|
## Plan mode
|
|
41
45
|
|
|
42
46
|
El skill resuelve el input según las 3 reglas de arriba y describe las acciones del loop que ejecutaría, sin arrancar la iteración.
|
|
@@ -43,6 +43,10 @@ El skill detecta el estado previo antes de arrancar, **keyando off el `CHECKPOIN
|
|
|
43
43
|
3. **Sin avance** (sin CHECKPOINT y el plan **no** tiene `## Refinement decisions`/`## Q&A traceability`) → arranca desde cero leyendo el plan (`PPP-plan-*.md`).
|
|
44
44
|
4. **Ya refinado / re-refine a demanda** (sin CHECKPOINT abierto pero el plan **ya tiene** `## Refinement decisions`/`## Q&A traceability`) → **soportado de primera clase**: mientras el flujo siga en PLAN podés re-correr `/w:plan-refine` sobre el mismo plan **las veces que haga falta** (nuevos requerimientos, cambios de scope, re-lectura). El loop hace `create_or_resume` — localiza la refine session existente (aunque esté cerrada) y la **reabre** en vez de duplicarla — y re-refina leyendo el **plan mismo**; al `Guardar`, edita in place con confirmación.
|
|
45
45
|
|
|
46
|
+
## UI → design SPECs
|
|
47
|
+
|
|
48
|
+
Si el refine **toca UI**, el loop compone `ui-design` y produce/actualiza **design SPECs** (`NNN-SPEC-<SLUG>.md`) en su propia sesión — acotado a las pantallas nuevas/cambiadas — y re-apunta las referencias del plan (ver `../loops/plan-refine-loop/SKILL.md` § *Delta 4*).
|
|
49
|
+
|
|
46
50
|
## Plan mode
|
|
47
51
|
|
|
48
52
|
El skill resuelve el estado y describe las acciones que ejecutaría el loop (gaps que cerraría, preguntas que haría), sin arrancar la iteración.
|
|
@@ -27,6 +27,7 @@ Para tareas acotadas y directas que no justifican pasar por SPEC ni PLAN. Siempr
|
|
|
27
27
|
|
|
28
28
|
- Edita código en las fuentes del workspace.
|
|
29
29
|
- Artefactos mínimos en la sesión (DECISION lazy, commit propuesto).
|
|
30
|
+
- **Gate de revisión de cierre proporcional** antes de proponer el único commit: re-lee el diff aplicando las convenciones ambientes instaladas y corrige o difiere (ver `../loops/quick-loop/SKILL.md` § *Sequence*).
|
|
30
31
|
- **No toca `docs/`** ni exporta nada.
|
|
31
32
|
- **Escala** a SPEC/PLAN si emerge complejidad (muchos archivos, ≥2 fuentes, necesita arquitectura, o el cambio es feature/refactor).
|
|
32
33
|
|
|
@@ -35,5 +35,5 @@ Resuelve las fuentes y describe el scaffolding que crearía, sin escribir archiv
|
|
|
35
35
|
|
|
36
36
|
## Resources
|
|
37
37
|
|
|
38
|
-
- Design reference: `docs/referencias/workflow-commands/workspace-init.md`
|
|
38
|
+
- Design reference: `docs/referencias/workflow-commands/workspace-init.md`
|
|
39
39
|
- Skills config: `docs/referencias/workflow-roles/` (capacidades/roles disponibles y cascada de binding)
|
|
@@ -70,7 +70,7 @@ En plan mode **describe**, no escribe: el motor resuelto, los niveles/secciones
|
|
|
70
70
|
| Flag | Comportamiento |
|
|
71
71
|
|---|---|
|
|
72
72
|
| `--sessions NNN[,NNN]` | Filtro discreto por código (precede a `--since`); afecta el delta AS-IS/TO-BE |
|
|
73
|
-
| `--since sessionNNN` | Solo sesiones posteriores a NNN (
|
|
73
|
+
| `--since sessionNNN` | Solo sesiones posteriores a NNN (exclusivo: la propia NNN no entra; usá `--sessions` para incluirla) |
|
|
74
74
|
| `--source <alias>` | Limita a una fuente (workspace multi-fuente) |
|
|
75
75
|
| `--engine mermaid\|c4` | Default `mermaid` (render en GitHub); `c4` = Structurizr DSL opt-in |
|
|
76
76
|
| `--scope` | Qué secciones aparecen: `c4` (contexto/contenedores/componentes), `integrations`, `data` (solo si MCP), `todo` (default) |
|
|
@@ -70,7 +70,7 @@ En plan mode **describe**, no escribe: el modo resuelto, los temas detectados (c
|
|
|
70
70
|
| Flag | Comportamiento |
|
|
71
71
|
|---|---|
|
|
72
72
|
| `--sessions NNN[,NNN]` | Filtro discreto por código (precede a `--since`) |
|
|
73
|
-
| `--since sessionNNN` | Solo sesiones posteriores a NNN (
|
|
73
|
+
| `--since sessionNNN` | Solo sesiones posteriores a NNN (exclusivo: la propia NNN no entra; usá `--sessions` para incluirla) |
|
|
74
74
|
| `--source <alias>` | Limita a una fuente (workspace multi-fuente) |
|
|
75
75
|
| `--mode complement\|regenerate` | Default `complement` |
|
|
76
76
|
| `--topics slug1,slug2` | Limita a los temas declarados |
|
|
@@ -68,7 +68,7 @@ En plan mode **describe**, no escribe: la audiencia/longitud resuelta, las sesio
|
|
|
68
68
|
| Flag | Comportamiento |
|
|
69
69
|
|---|---|
|
|
70
70
|
| `--sessions NNN[,NNN]` | Filtro discreto por código (precede a `--since`/`--period`) |
|
|
71
|
-
| `--since sessionNNN` | Solo sesiones posteriores a NNN (
|
|
71
|
+
| `--since sessionNNN` | Solo sesiones posteriores a NNN (exclusivo: la propia NNN no entra; usá `--sessions` para incluirla) |
|
|
72
72
|
| `--source <alias>` | Limita a una fuente (workspace multi-fuente) |
|
|
73
73
|
| `--period` | Ventana temporal (`last-month`/`last-quarter`/rango `YYYY-MM..YYYY-MM`) |
|
|
74
74
|
| `--audience gerencia\|tecnica` | Modula longitud/léxico: `gerencia` ≈ corto/ejecutivo; `tecnica` ≈ detallado |
|
|
@@ -68,7 +68,7 @@ En plan mode **describe**, no escribe: el `NNN` resuelto, las fuentes detectadas
|
|
|
68
68
|
| Flag | Comportamiento |
|
|
69
69
|
|---|---|
|
|
70
70
|
| `--sessions NNN[,NNN]` | Filtro discreto por código (precede a `--since`) |
|
|
71
|
-
| `--since sessionNNN` | Solo sesiones posteriores a NNN (
|
|
71
|
+
| `--since sessionNNN` | Solo sesiones posteriores a NNN (exclusivo: la propia NNN no entra; usá `--sessions` para incluirla) |
|
|
72
72
|
| `--source <alias>` | Limita a una fuente (workspace multi-fuente) |
|
|
73
73
|
| `--skip-standalone` | Omite la lectura de `docs/scripts/*.sql` standalone |
|
|
74
74
|
| `--dry-run` | Reporte propositivo sin escribir archivos |
|
package/skills/w/loops/README.md
CHANGED
|
@@ -91,7 +91,8 @@ spec-refine-loop ── CHASIS (patrón de referencia: objetivo persistente + v
|
|
|
91
91
|
├── plan-refine-loop (heir) → deltas: refina el plan in place (aux, opcional);
|
|
92
92
|
│ reusa gap taxonomy + coherence gate de plan-new
|
|
93
93
|
├── plan-exec-loop (heir) → deltas: ejecución real (código/BD/git),
|
|
94
|
-
│ una sola session por run,
|
|
94
|
+
│ una sola session por run, gate de revisión
|
|
95
|
+
│ de cierre pre-commit, sin auto-export
|
|
95
96
|
└── quick-loop (heir) → deltas: ceremonia mínima, 1 session,
|
|
96
97
|
hereda git/BD/no-export de plan-exec
|
|
97
98
|
```
|
|
@@ -104,7 +105,7 @@ Los loops componen **capacidades por su rol**, no skills concretas; la skill que
|
|
|
104
105
|
|
|
105
106
|
| Role | Default built-in | Composed by |
|
|
106
107
|
|---|---|---|
|
|
107
|
-
| `ui-design` | `ui-spec` | `spec-refine-loop` (cuando hay UI) |
|
|
108
|
+
| `ui-design` | `ui-spec` | `spec-refine-loop` (cuando hay UI) · `plan-new-loop` / `plan-refine-loop` (design SPECs `NNN-SPEC-<SLUG>.md`) |
|
|
108
109
|
| `sql` | `sql` | research · `plan-exec-loop` · `quick-loop` |
|
|
109
110
|
| `git` | `git` | `plan-exec-loop` · `quick-loop` |
|
|
110
111
|
| `research` | `research` | todos los loops (research inline) |
|
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: plan-exec-loop
|
|
3
3
|
description: >-
|
|
4
|
-
Ejecuta un plan de implementación (docs/plans/PPP-plan-<slug>.md) como
|
|
5
|
-
doc: lo lee y actualiza fase a fase mientras edita el código real,
|
|
6
|
-
y git. Heir del chasis spec-refine-loop
|
|
7
|
-
inline
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
SIN auto-export (escribe solo docs/plans; el resto queda como artefacto para
|
|
15
|
-
export-*). Compone git y sql. Lo arranca /w:plan-exec, es reanudable. Invocar
|
|
16
|
-
para implementar un plan ya generado.
|
|
4
|
+
Ejecuta un plan de implementación (docs/plans/PPP-plan-<slug>.md) como
|
|
5
|
+
living doc: lo lee y actualiza fase a fase mientras edita el código real,
|
|
6
|
+
gestiona BD y git. Heir del chasis spec-refine-loop (motor gap-driven,
|
|
7
|
+
research inline, structured-choice, artefactos como log vivo); sus deltas
|
|
8
|
+
viven en el cuerpo: session única reanudable, git seguro (rama verificada,
|
|
9
|
+
commits propuestos por fuente, nunca push/--amend/--no-verify), BD solo-
|
|
10
|
+
scripts (la IA nunca ejecuta DML/DDL), validación por fase y final, gate de
|
|
11
|
+
revisión de cierre pre-commit, y sin auto-export (solo escribe docs/plans).
|
|
12
|
+
Compone git y sql. Lo arranca /w:plan-exec. Invocar para implementar un plan
|
|
13
|
+
ya generado.
|
|
17
14
|
---
|
|
18
15
|
|
|
19
16
|
# plan-exec-loop
|
|
@@ -30,7 +27,7 @@ PLAN
|
|
|
30
27
|
`/w:plan-exec` — **reanudable** (mismo mecanismo del chasis; aquí el resume keya off el checkbox del plan-doc + CHECKPOINT, ver Delta 1).
|
|
31
28
|
|
|
32
29
|
## Reads
|
|
33
|
-
`docs/plans/PPP-plan-<slug>.md` (localizar vía glob `docs/plans/PPP-plan-*.md` o la ruta exacta del argumento del comando). Corre **cualquier** plan, haya pasado o no por [`plan-refine-loop`](../plan-refine-loop/SKILL.md) — plan-refine es auxiliar y no obligatorio; no hay gate que lo exija.
|
|
30
|
+
`docs/plans/PPP-plan-<slug>.md` (localizar vía glob `docs/plans/PPP-plan-*.md` o la ruta exacta del argumento del comando). Corre **cualquier** plan, haya pasado o no por [`plan-refine-loop`](../plan-refine-loop/SKILL.md) — plan-refine es auxiliar y no obligatorio; no hay gate que lo exija. Si el plan incluye UI, también los **design SPECs** (`NNN-SPEC-<SLUG>.md`) que sus Tasks referencian — artefactos de la sesión de plan-new/plan-refine, leídos **read-only** como referencia de diseño al implementar (ver [`SPEC.md`](../../artifacts/artifacts-design/SPEC.md)).
|
|
34
31
|
|
|
35
32
|
## Writes
|
|
36
33
|
- `docs/plans/PPP-plan-<slug>.md` (**read/update**, living doc: estado de fases/tareas, `Open questions`).
|
|
@@ -69,13 +66,13 @@ Del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md), sin cambios:
|
|
|
69
66
|
- Recorre las `Phases` del plan en orden (respeta deps) **dentro de la única session del run** (no hay session-por-fase).
|
|
70
67
|
- El **avance por fase vive en el plan-doc** (`- [x]`) y en el `CHECKPOINT` único (Completed/Pending/Next): **artifact-first** — `CHECKPOINT.Next` se fija a la fase inminente **antes** de iniciarla; el checkbox `- [x]` del plan-doc se voltea **después** de completar la tarea.
|
|
71
68
|
- Ejecuta las `Tasks` de la fase; **salta** las ya marcadas `- [x]` en el plan (el plan-doc es la fuente de verdad por tarea). Marca `- [x]` + estado **en el plan** (living doc; no en un `TASKS` aparte).
|
|
72
|
-
- En **cada límite de fase**: actualiza el `CHECKPOINT` (Completed += Phase N, Next = Phase N+1) y propone commits.
|
|
69
|
+
- En **cada límite de fase**: valida, corre el **gate de revisión de cierre** (Delta 5), actualiza el `CHECKPOINT` (Completed += Phase N, Next = Phase N+1) y propone commits.
|
|
73
70
|
- Registra `DECISION` solo lo **no obvio**, **a medida que se toma** (los `DECISION` por fase se acumulan en el ÚNICO `DECISION`, etiquetados por fase/tarea — ej. `Origin: T2 (F1)`).
|
|
74
71
|
|
|
75
72
|
## Delta 2 — Git policy: **rama segura + commits propuestos**
|
|
76
73
|
|
|
77
74
|
- **Antes de editar** archivos de una fuente: verifica rama actual = rama esperada de esa fuente (estilo `branch-check`). Si no coincide → **pausa y resuelve con el humano**; nunca `stash`/`reset --hard`/`checkout -- .`/`clean` sin confirmación por fuente.
|
|
78
|
-
- **Al cerrar una fase** (o al `Cerrar`): **propone commits por fuente** (propose-then-execute, aprobar antes); nunca `push`/`--amend`/`--no-verify`.
|
|
75
|
+
- **Al cerrar una fase** (o al `Cerrar`): **tras pasar el gate de revisión de cierre** (Delta 5), **propone commits por fuente** (propose-then-execute, aprobar antes); nunca `push`/`--amend`/`--no-verify`. Nada llega a un commit propuesto sin revisar.
|
|
79
76
|
- **Commit rechazado**: los cambios **quedan en el working tree** (no se revierten). Se permite reproponer / editar mensaje. Se registra en `CHECKPOINT` + `BACKLOG` que la fase quedó **sin commitear** (reanudable).
|
|
80
77
|
- **Precondición entre fases**: `branch-check` valida *identidad* de rama, **no** *limpieza* del working tree. Antes de iniciar la siguiente fase, el working tree de cada fuente debe estar **limpio** (committeado) o explícitamente **reconocido** como "cambios sin commitear de la fase N" — para no co-mezclar dos fases en un mismo commit.
|
|
81
78
|
|
|
@@ -96,7 +93,18 @@ Distinción por **ejecución**, no por archivo (ver el esquema `SCRIPTS.sql`):
|
|
|
96
93
|
|
|
97
94
|
> La **validación final** es el **convergence gate** de PLAN-exec = **`Success criteria` en verde** (*verification-first*; análogo al *analyze gate* de SPEC y al *coherence gate* de `plan-new`): el plan no se marca *done* hasta que pasa o queda explícitamente diferida (handoff de SQL). Para código son **tests ejecutables** (TDD); para migraciones BD no ejecutables, **rúbrica** (SCRIPTS.sql válido + revisado).
|
|
98
95
|
|
|
99
|
-
## Delta 5 —
|
|
96
|
+
## Delta 5 — Gate de revisión de cierre (convenciones, pre-commit)
|
|
97
|
+
|
|
98
|
+
Tras la validación de la fase y **antes de proponer sus commits** (también en un `Cerrar` anticipado, antes de proponer los commits pendientes), el diff de la fase pasa un **gate de revisión de cierre**:
|
|
99
|
+
|
|
100
|
+
- **Re-lectura independiente** del diff (subagente o re-lectura limpia — la *verificación independiente* del chasis: no asume correcta la implementación; *only command output counts*).
|
|
101
|
+
- **Aplica las convenciones ambientes instaladas** relevantes al stack tocado (estándares de código/stack, seguridad, revisión de diffs, familias propias del workspace) — el host las **auto-descubre por su `description`**. El workflow **no nombra ni bindea** skills concretas: **crea el momento; las skills instaladas lo llenan** (por eso la revisión **no es un rol** — ver [`../../roles/README.md`](../../roles/README.md)). Sin skills de convenciones instaladas → checklist genérico mínimo: SOLID/early-return, nombres claros, DRY, errores no silenciados, sin secrets/PII, SQL parametrizado, sin código muerto, + las `Validations` del plan.
|
|
102
|
+
- **Hallazgos**: se **corrigen** en el working tree y se **re-corre la validación de la fase** (el gate no reemplaza los tests: los re-verifica tras corregir), o se **difieren justificados** (→ `Open questions` del plan + `BACKLOG`); lo no obvio → `DECISION`. Integridad del gate (chasis): nunca se debilita un check ni se baja una convención para pasar.
|
|
103
|
+
- **Artifact-first + verification-first**: `CHECKPOINT.Next = "review fase N"` antes de la pasada; `SESSION.Success criteria` incluye desde el inicio "cada fase pasó el gate de revisión antes de sus commits".
|
|
104
|
+
|
|
105
|
+
Recién con el gate en verde se proponen los commits de la fase (Delta 2).
|
|
106
|
+
|
|
107
|
+
## Delta 6 — Completitud / cierre
|
|
100
108
|
|
|
101
109
|
- Una fase cierra **done** cuando sus tareas están `- [x]` y su validación pasó **o** quedó diferida (handoff de SQL). Estado posible: **"done — SQL pendiente de aplicar"**.
|
|
102
110
|
- Todas las fases done → *structured-choice* final (contenido: `Marcar plan done` / `Preguntar algo más`; flow: `Compactar`/`Cerrar`).
|
|
@@ -126,8 +134,11 @@ plan-exec-loop(PPP-plan-<slug>.md):
|
|
|
126
134
|
validación de la fase:
|
|
127
135
|
la que corre y falla → volver a la tarea
|
|
128
136
|
la dependiente de migración no aplicada → diferir (Open questions + BACKLOG)
|
|
137
|
+
gate de revisión de cierre (pre-commit): # Delta 5: CHECKPOINT.Next = "review fase N"
|
|
138
|
+
re-lectura INDEPENDIENTE del diff de la fase + convenciones ambientes instaladas
|
|
139
|
+
hallazgos → corregir (y re-validar la fase) ó diferir justificado (Open questions + BACKLOG)
|
|
129
140
|
update CHECKPOINT (Completed += Phase N, Next = Phase N+1) # DESPUÉS: Pending→Completed + Next = fase siguiente (ver ciclo artifact-first)
|
|
130
|
-
proponer commit(s) por fuente (aprobar antes) # nunca push/amend/--no-verify
|
|
141
|
+
proponer commit(s) por fuente (aprobar antes) # nunca push/amend/--no-verify; solo tras el gate en verde
|
|
131
142
|
si rechazado → cambios quedan; registrar "fase sin commitear"
|
|
132
143
|
precondición siguiente fase: working tree limpio o reconocido
|
|
133
144
|
validación final (lo que se pueda; lo dependiente de SQL queda como handoff)
|
|
@@ -149,7 +160,8 @@ flowchart TD
|
|
|
149
160
|
DO --> MK["marcar Task - [x] en el PLAN"]
|
|
150
161
|
MK --> T
|
|
151
162
|
T -->|no| VP["validación de fase<br/>(falla→tarea · dep. SQL→diferir)"]
|
|
152
|
-
VP -->
|
|
163
|
+
VP --> RV["gate de revisión de cierre<br/>(diff + convenciones ambientes → corregir/diferir)"]
|
|
164
|
+
RV --> CK["update CHECKPOINT (Completed/Next)"]
|
|
153
165
|
CK --> CM["proponer commits por fuente"]
|
|
154
166
|
CM -->|aprobado| P
|
|
155
167
|
CM -->|rechazado| RJ["cambios quedan · registrar 'sin commitear'"]
|
|
@@ -159,6 +171,6 @@ flowchart TD
|
|
|
159
171
|
|
|
160
172
|
## Convergence / exit
|
|
161
173
|
|
|
162
|
-
- Plan completo + validación OK (o diferida con handoff) → `Marcar plan done`.
|
|
174
|
+
- Plan completo + validación OK (o diferida con handoff) + **cada fase pasó su gate de revisión de cierre** antes de commitear → `Marcar plan done`.
|
|
163
175
|
- `Cerrar` (control `flow`, en cualquier momento) → `finalize` persiste `CHECKPOINT` (y `BACKLOG` solo si quedó algo sin ejecutar / sin commitear / sin aplicar), cierra la session, reporta.
|
|
164
176
|
- La promoción de artefactos a `docs/` (vía `export-*`) es **siempre** un paso posterior y explícito, fuera de este loop.
|