@tacuchi/agent-workflow-cli 11.0.1 → 12.2.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 +52 -95
- package/dist/adapters/git-cli.d.ts +7 -1
- package/dist/adapters/git-cli.d.ts.map +1 -1
- package/dist/adapters/git-cli.js +47 -0
- package/dist/adapters/git-cli.js.map +1 -1
- package/dist/application/artifacts-service.d.ts +3 -12
- package/dist/application/artifacts-service.d.ts.map +1 -1
- package/dist/application/artifacts-service.js +18 -19
- package/dist/application/artifacts-service.js.map +1 -1
- package/dist/application/branch-resolver.d.ts +16 -0
- package/dist/application/branch-resolver.d.ts.map +1 -0
- package/dist/application/branch-resolver.js +24 -0
- package/dist/application/branch-resolver.js.map +1 -0
- package/dist/application/check-branch-service.d.ts +0 -2
- package/dist/application/check-branch-service.d.ts.map +1 -1
- package/dist/application/check-branch-service.js +5 -40
- package/dist/application/check-branch-service.js.map +1 -1
- package/dist/application/checkpoint/markdown.d.ts.map +1 -1
- package/dist/application/checkpoint/markdown.js +1 -16
- package/dist/application/checkpoint/markdown.js.map +1 -1
- package/dist/application/checkpoint/state-reader.d.ts +1 -3
- package/dist/application/checkpoint/state-reader.d.ts.map +1 -1
- package/dist/application/checkpoint/state-reader.js +10 -31
- package/dist/application/checkpoint/state-reader.js.map +1 -1
- package/dist/application/checkpoint-service.d.ts +12 -14
- package/dist/application/checkpoint-service.d.ts.map +1 -1
- package/dist/application/checkpoint-service.js +36 -61
- package/dist/application/checkpoint-service.js.map +1 -1
- package/dist/application/checkpoint-write-service.d.ts +0 -2
- package/dist/application/checkpoint-write-service.d.ts.map +1 -1
- package/dist/application/checkpoint-write-service.js +5 -6
- package/dist/application/checkpoint-write-service.js.map +1 -1
- package/dist/application/git-flow-service.d.ts +44 -0
- package/dist/application/git-flow-service.d.ts.map +1 -0
- package/dist/application/git-flow-service.js +220 -0
- package/dist/application/git-flow-service.js.map +1 -0
- package/dist/application/history-update-service.js +3 -1
- package/dist/application/history-update-service.js.map +1 -1
- package/dist/application/hook-branch-check.d.ts.map +1 -1
- package/dist/application/hook-branch-check.js +5 -34
- package/dist/application/hook-branch-check.js.map +1 -1
- package/dist/application/hook-git-commit-advisor.d.ts.map +1 -1
- package/dist/application/hook-git-commit-advisor.js +18 -23
- package/dist/application/hook-git-commit-advisor.js.map +1 -1
- package/dist/application/markdown.d.ts.map +1 -1
- package/dist/application/markdown.js +0 -4
- package/dist/application/markdown.js.map +1 -1
- package/dist/application/parsers/project-block.d.ts +1 -8
- package/dist/application/parsers/project-block.d.ts.map +1 -1
- package/dist/application/parsers/project-block.js +19 -51
- package/dist/application/parsers/project-block.js.map +1 -1
- package/dist/application/paths-service.d.ts +9 -8
- package/dist/application/paths-service.d.ts.map +1 -1
- package/dist/application/paths-service.js +16 -8
- package/dist/application/paths-service.js.map +1 -1
- package/dist/application/project-md-upsert-service.d.ts +5 -11
- package/dist/application/project-md-upsert-service.d.ts.map +1 -1
- package/dist/application/project-md-upsert-service.js +11 -56
- package/dist/application/project-md-upsert-service.js.map +1 -1
- package/dist/application/project-tab-data.d.ts +16 -42
- package/dist/application/project-tab-data.d.ts.map +1 -1
- package/dist/application/project-tab-data.js +28 -113
- package/dist/application/project-tab-data.js.map +1 -1
- package/dist/application/release-data/artifacts.d.ts +0 -2
- package/dist/application/release-data/artifacts.d.ts.map +1 -1
- package/dist/application/release-data/artifacts.js +22 -12
- package/dist/application/release-data/artifacts.js.map +1 -1
- package/dist/application/release-data/sessions.d.ts +0 -2
- package/dist/application/release-data/sessions.d.ts.map +1 -1
- package/dist/application/release-data/sessions.js +36 -27
- package/dist/application/release-data/sessions.js.map +1 -1
- package/dist/application/release-data-service.d.ts +0 -3
- package/dist/application/release-data-service.d.ts.map +1 -1
- package/dist/application/release-data-service.js +3 -21
- package/dist/application/release-data-service.js.map +1 -1
- package/dist/application/render/history-row.d.ts +1 -9
- package/dist/application/render/history-row.d.ts.map +1 -1
- package/dist/application/render/history-row.js +3 -20
- package/dist/application/render/history-row.js.map +1 -1
- package/dist/application/render/project-block.d.ts +2 -3
- package/dist/application/render/project-block.d.ts.map +1 -1
- package/dist/application/render/project-block.js +16 -26
- package/dist/application/render/project-block.js.map +1 -1
- package/dist/application/self/doctor-self.d.ts.map +1 -1
- package/dist/application/self/doctor-self.js +15 -8
- package/dist/application/self/doctor-self.js.map +1 -1
- package/dist/application/self/install-hooks.d.ts +1 -1
- package/dist/application/self/install-hooks.d.ts.map +1 -1
- package/dist/application/self/install-hooks.js +3 -2
- package/dist/application/self/install-hooks.js.map +1 -1
- package/dist/application/self/install-skill.d.ts +11 -3
- package/dist/application/self/install-skill.d.ts.map +1 -1
- package/dist/application/self/install-skill.js +65 -14
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/self/uninstall-skill.js +14 -12
- package/dist/application/self/uninstall-skill.js.map +1 -1
- package/dist/application/self/uninstall.d.ts +1 -1
- package/dist/application/self/uninstall.d.ts.map +1 -1
- package/dist/application/self/uninstall.js +39 -29
- package/dist/application/self/uninstall.js.map +1 -1
- package/dist/application/session-artifacts.d.ts +7 -6
- package/dist/application/session-artifacts.d.ts.map +1 -1
- package/dist/application/session-artifacts.js +10 -15
- package/dist/application/session-artifacts.js.map +1 -1
- package/dist/application/session-close-service.d.ts +5 -22
- package/dist/application/session-close-service.d.ts.map +1 -1
- package/dist/application/session-close-service.js +20 -143
- package/dist/application/session-close-service.js.map +1 -1
- package/dist/application/session-create-service.d.ts +9 -29
- package/dist/application/session-create-service.d.ts.map +1 -1
- package/dist/application/session-create-service.js +44 -288
- package/dist/application/session-create-service.js.map +1 -1
- package/dist/application/session-resolver.d.ts +4 -25
- package/dist/application/session-resolver.d.ts.map +1 -1
- package/dist/application/session-resolver.js +33 -149
- package/dist/application/session-resolver.js.map +1 -1
- package/dist/application/session-resume-service.d.ts +3 -4
- package/dist/application/session-resume-service.d.ts.map +1 -1
- package/dist/application/session-resume-service.js +8 -26
- package/dist/application/session-resume-service.js.map +1 -1
- package/dist/application/sessions-service.d.ts +2 -3
- package/dist/application/sessions-service.d.ts.map +1 -1
- package/dist/application/sessions-service.js +9 -26
- package/dist/application/sessions-service.js.map +1 -1
- package/dist/application/skill-index-service.d.ts +0 -2
- package/dist/application/skill-index-service.d.ts.map +1 -1
- package/dist/application/skill-index-service.js +0 -1
- package/dist/application/skill-index-service.js.map +1 -1
- package/dist/application/skills-resolver-service.d.ts +22 -0
- package/dist/application/skills-resolver-service.d.ts.map +1 -0
- package/dist/application/skills-resolver-service.js +71 -0
- package/dist/application/skills-resolver-service.js.map +1 -0
- package/dist/application/sources-service.d.ts +0 -5
- package/dist/application/sources-service.d.ts.map +1 -1
- package/dist/application/sources-service.js +5 -44
- package/dist/application/sources-service.js.map +1 -1
- package/dist/application/templates/session.d.ts +24 -0
- package/dist/application/templates/session.d.ts.map +1 -0
- package/dist/application/templates/session.js +46 -0
- package/dist/application/templates/session.js.map +1 -0
- package/dist/application/upgrade-hub-mode-service.d.ts.map +1 -1
- package/dist/application/upgrade-hub-mode-service.js +0 -1
- package/dist/application/upgrade-hub-mode-service.js.map +1 -1
- package/dist/application/workspace-init-service.d.ts +62 -0
- package/dist/application/workspace-init-service.d.ts.map +1 -0
- package/dist/application/workspace-init-service.js +228 -0
- package/dist/application/workspace-init-service.js.map +1 -0
- package/dist/cli/commands/check-branch.d.ts.map +1 -1
- package/dist/cli/commands/check-branch.js +0 -3
- package/dist/cli/commands/check-branch.js.map +1 -1
- package/dist/cli/commands/git-flow.d.ts +3 -0
- package/dist/cli/commands/git-flow.d.ts.map +1 -0
- package/dist/cli/commands/git-flow.js +50 -0
- package/dist/cli/commands/git-flow.js.map +1 -0
- package/dist/cli/commands/plugin-doctor.d.ts.map +1 -1
- package/dist/cli/commands/plugin-doctor.js +0 -3
- package/dist/cli/commands/plugin-doctor.js.map +1 -1
- package/dist/cli/commands/project-md-upsert.d.ts.map +1 -1
- package/dist/cli/commands/project-md-upsert.js +5 -31
- package/dist/cli/commands/project-md-upsert.js.map +1 -1
- package/dist/cli/commands/session-close.d.ts.map +1 -1
- package/dist/cli/commands/session-close.js +1 -33
- package/dist/cli/commands/session-close.js.map +1 -1
- package/dist/cli/commands/session-create.d.ts.map +1 -1
- package/dist/cli/commands/session-create.js +5 -21
- package/dist/cli/commands/session-create.js.map +1 -1
- package/dist/cli/commands/session-resume.js +1 -1
- package/dist/cli/commands/session-resume.js.map +1 -1
- package/dist/cli/commands/set-qa-branch.d.ts +3 -0
- package/dist/cli/commands/set-qa-branch.d.ts.map +1 -0
- package/dist/cli/commands/set-qa-branch.js +34 -0
- package/dist/cli/commands/set-qa-branch.js.map +1 -0
- package/dist/cli/commands/set-working-branch.d.ts +3 -0
- package/dist/cli/commands/set-working-branch.d.ts.map +1 -0
- package/dist/cli/commands/set-working-branch.js +34 -0
- package/dist/cli/commands/set-working-branch.js.map +1 -0
- package/dist/cli/commands/skill-index.d.ts.map +1 -1
- package/dist/cli/commands/skill-index.js +0 -3
- package/dist/cli/commands/skill-index.js.map +1 -1
- package/dist/cli/commands/skills.d.ts +3 -0
- package/dist/cli/commands/skills.d.ts.map +1 -0
- package/dist/cli/commands/skills.js +10 -0
- package/dist/cli/commands/skills.js.map +1 -0
- package/dist/cli/commands/sources.d.ts.map +1 -1
- package/dist/cli/commands/sources.js +0 -3
- package/dist/cli/commands/sources.js.map +1 -1
- package/dist/cli/commands/workspace-init.d.ts +3 -0
- package/dist/cli/commands/workspace-init.d.ts.map +1 -0
- package/dist/cli/commands/workspace-init.js +71 -0
- package/dist/cli/commands/workspace-init.js.map +1 -0
- package/dist/cli/help-groups.d.ts.map +1 -1
- package/dist/cli/help-groups.js +10 -19
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/interactive-menu.d.ts +1 -1
- package/dist/cli/interactive-menu.d.ts.map +1 -1
- package/dist/cli/main.js +33 -37
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/parser.d.ts +0 -2
- package/dist/cli/parser.d.ts.map +1 -1
- package/dist/cli/parser.js +6 -13
- package/dist/cli/parser.js.map +1 -1
- package/dist/cli/tui/app.js +3 -38
- package/dist/cli/tui/app.js.map +1 -1
- package/dist/cli/tui/components/git-flow-actions.d.ts +22 -0
- package/dist/cli/tui/components/git-flow-actions.d.ts.map +1 -0
- package/dist/cli/tui/components/git-flow-actions.js +0 -0
- package/dist/cli/tui/components/git-flow-actions.js.map +1 -0
- package/dist/cli/tui/components/hub-init-alias.js +1 -1
- package/dist/cli/tui/components/hub-init-alias.js.map +1 -1
- package/dist/cli/tui/components/hub-init-form.d.ts.map +1 -1
- package/dist/cli/tui/components/hub-init-form.js +13 -12
- package/dist/cli/tui/components/hub-init-form.js.map +1 -1
- package/dist/cli/tui/components/workspace-init-alias.d.ts +5 -0
- package/dist/cli/tui/components/workspace-init-alias.d.ts.map +1 -0
- package/dist/cli/tui/components/workspace-init-alias.js +19 -0
- package/dist/cli/tui/components/workspace-init-alias.js.map +1 -0
- package/dist/cli/tui/components/workspace-init-form.d.ts +13 -0
- package/dist/cli/tui/components/workspace-init-form.d.ts.map +1 -0
- package/dist/cli/tui/components/workspace-init-form.js +87 -0
- package/dist/cli/tui/components/workspace-init-form.js.map +1 -0
- package/dist/cli/tui/data/activity.d.ts +1 -1
- package/dist/cli/tui/data/activity.d.ts.map +1 -1
- package/dist/cli/tui/data/activity.js +2 -2
- package/dist/cli/tui/data/activity.js.map +1 -1
- package/dist/cli/tui/data/workflow-content.d.ts.map +1 -1
- package/dist/cli/tui/data/workflow-content.js +67 -87
- package/dist/cli/tui/data/workflow-content.js.map +1 -1
- package/dist/cli/tui/tabs/project-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/project-tab.js +49 -105
- package/dist/cli/tui/tabs/project-tab.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 -7
- package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
- package/dist/cli/tui/tabs/workflow-tab.d.ts +1 -3
- package/dist/cli/tui/tabs/workflow-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/workflow-tab.js +2 -2
- package/dist/cli/tui/tabs/workflow-tab.js.map +1 -1
- package/dist/cli/types.d.ts +3 -0
- package/dist/cli/types.d.ts.map +1 -1
- package/dist/domain/plugin.d.ts +2 -12
- package/dist/domain/plugin.d.ts.map +1 -1
- package/dist/domain/project.d.ts +0 -9
- package/dist/domain/project.d.ts.map +1 -1
- package/dist/domain/session.d.ts +7 -24
- package/dist/domain/session.d.ts.map +1 -1
- package/dist/domain/skills.d.ts +22 -0
- package/dist/domain/skills.d.ts.map +1 -0
- package/dist/domain/skills.js +37 -0
- package/dist/domain/skills.js.map +1 -0
- package/dist/domain/types.d.ts +6 -2
- package/dist/domain/types.d.ts.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ports/git.d.ts +17 -0
- package/dist/ports/git.d.ts.map +1 -1
- package/dist/runtime/config-service.js +1 -1
- package/dist/runtime/config-service.js.map +1 -1
- package/dist/runtime/types.d.ts +0 -1
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/types.js.map +1 -1
- package/package.json +12 -3
- package/skills/w/README.md +65 -0
- package/skills/w/SKILL.md +153 -0
- package/skills/w/artifacts/README.md +60 -0
- package/skills/w/artifacts/artifacts-core/BACKLOG.md +12 -0
- package/skills/w/artifacts/artifacts-core/CHECKPOINT.md +22 -0
- package/skills/w/artifacts/artifacts-core/SCRIPTS.sql +39 -0
- package/skills/w/artifacts/artifacts-core/SESSION.md +27 -0
- package/skills/w/artifacts/artifacts-core/TASKS.md +18 -0
- package/skills/w/artifacts/artifacts-dev/DECISION.md +11 -0
- package/skills/w/artifacts/artifacts-dev/TECHNICAL-NOTE.md +81 -0
- package/skills/w/artifacts/artifacts-research/ANALYSIS-FILE.md +48 -0
- package/skills/w/artifacts/artifacts-research/CONCLUSIONS.md +20 -0
- package/skills/w/commands/README.md +116 -0
- package/skills/w/commands/export-diagrams.md +35 -0
- package/skills/w/commands/export-manuals.md +35 -0
- package/skills/w/commands/export-reports.md +35 -0
- package/skills/w/commands/export-scripts.md +35 -0
- package/skills/w/commands/plan-exec.md +46 -0
- package/skills/w/commands/plan-new.md +44 -0
- package/skills/w/commands/quick.md +39 -0
- package/skills/w/commands/spec-new.md +63 -0
- package/skills/w/commands/spec-refine.md +41 -0
- package/skills/w/commands/workspace-init.md +39 -0
- package/skills/w/exports/README.md +88 -0
- package/skills/w/exports/export-diagrams/SKILL.md +125 -0
- package/skills/w/exports/export-manuals/SKILL.md +127 -0
- package/skills/w/exports/export-reports/SKILL.md +115 -0
- package/skills/w/exports/export-scripts/SKILL.md +135 -0
- package/skills/w/hooks/README.md +15 -0
- package/skills/{agent-workflow → w}/hooks/hooks.template.json +2 -2
- package/skills/w/loops/README.md +118 -0
- package/skills/w/loops/plan-exec-loop/SKILL.md +161 -0
- package/skills/w/loops/plan-new-loop/SKILL.md +97 -0
- package/skills/w/loops/quick-loop/SKILL.md +102 -0
- package/skills/w/loops/spec-refine-loop/SKILL.md +222 -0
- package/skills/w/roles/README.md +154 -0
- package/skills/w/roles/coding-standards/SKILL.md +82 -0
- package/skills/w/roles/diagrams/SKILL.md +248 -0
- package/skills/w/roles/git/SKILL.md +98 -0
- package/skills/w/roles/research/SKILL.md +181 -0
- package/skills/w/roles/sql/SKILL.md +137 -0
- package/skills/w/roles/testing/SKILL.md +180 -0
- package/skills/w/roles/tools/SKILL.md +148 -0
- package/skills/w/roles/ui-spec/SKILL.md +136 -0
- package/skills/w/roles/writing/SKILL.md +90 -0
- package/skills/agent-workflow/LICENSE +0 -661
- package/skills/agent-workflow/MANUAL-FUNCIONAL.md +0 -298
- package/skills/agent-workflow/MANUAL-TECNICO.md +0 -271
- package/skills/agent-workflow/README.md +0 -74
- package/skills/agent-workflow/SKILL.md +0 -112
- package/skills/agent-workflow/commands/README.md +0 -26
- package/skills/agent-workflow/commands/compact.md +0 -24
- package/skills/agent-workflow/commands/doctor.md +0 -100
- package/skills/agent-workflow/commands/export-arq.md +0 -77
- package/skills/agent-workflow/commands/export-conclusions.md +0 -78
- package/skills/agent-workflow/commands/export-plan.md +0 -74
- package/skills/agent-workflow/commands/export-qa-note.md +0 -30
- package/skills/agent-workflow/commands/export-report.md +0 -78
- package/skills/agent-workflow/commands/export-requirement.md +0 -30
- package/skills/agent-workflow/commands/export-scripts.md +0 -82
- package/skills/agent-workflow/commands/export-tech-manuals.md +0 -75
- package/skills/agent-workflow/commands/export-tech-note.md +0 -30
- package/skills/agent-workflow/commands/hub-init.md +0 -58
- package/skills/agent-workflow/commands/migrate.md +0 -56
- package/skills/agent-workflow/commands/patch.md +0 -49
- package/skills/agent-workflow/commands/project-init.md +0 -60
- package/skills/agent-workflow/commands/resume.md +0 -22
- package/skills/agent-workflow/commands/rules.md +0 -41
- package/skills/agent-workflow/commands/session.md +0 -35
- package/skills/agent-workflow/docs/TEST-PLAN.md +0 -163
- package/skills/agent-workflow/doctrine/README.md +0 -15
- package/skills/agent-workflow/doctrine/compact/SKILL.md +0 -145
- package/skills/agent-workflow/doctrine/doctor/SKILL.md +0 -86
- package/skills/agent-workflow/doctrine/hub-init/SKILL.md +0 -77
- package/skills/agent-workflow/doctrine/hub-init/references/multiroot-manual.md +0 -51
- package/skills/agent-workflow/doctrine/implement/SKILL.md +0 -290
- package/skills/agent-workflow/doctrine/implement/references/branch-verification.md +0 -16
- package/skills/agent-workflow/doctrine/implement/references/design-md-template.md +0 -108
- package/skills/agent-workflow/doctrine/implement/references/rollback-guide.md +0 -83
- package/skills/agent-workflow/doctrine/migrate/SKILL.md +0 -281
- package/skills/agent-workflow/doctrine/project-init/SKILL.md +0 -100
- package/skills/agent-workflow/doctrine/refactor/SKILL.md +0 -208
- package/skills/agent-workflow/doctrine/refactor/references/refactor-md-template.md +0 -108
- package/skills/agent-workflow/doctrine/refactor/references/strangler-checklist.md +0 -116
- package/skills/agent-workflow/doctrine/resume/SKILL.md +0 -199
- package/skills/agent-workflow/doctrine/rules/SKILL.md +0 -250
- package/skills/agent-workflow/doctrine/session/SKILL.md +0 -471
- package/skills/agent-workflow/doctrine/session/references/auto-plan-rules.md +0 -63
- package/skills/agent-workflow/doctrine/session/references/backlog-template.md +0 -95
- package/skills/agent-workflow/doctrine/session/references/branch-verification.md +0 -198
- package/skills/agent-workflow/doctrine/session/references/commits-policy.md +0 -111
- package/skills/agent-workflow/doctrine/session/references/communication-style.md +0 -50
- package/skills/agent-workflow/doctrine/session/references/graduacion-routing.md +0 -88
- package/skills/agent-workflow/doctrine/session/references/lifecycle-deep.md +0 -160
- package/skills/agent-workflow/doctrine/session/references/prompts/C1-specialty-selection.md +0 -11
- package/skills/agent-workflow/doctrine/session/references/prompts/C2-cost-guard.md +0 -14
- package/skills/agent-workflow/doctrine/session/references/prompts/M1-closure-commit-prompt.md +0 -104
- package/skills/agent-workflow/doctrine/session/references/prompts/M10-next-step.md +0 -17
- package/skills/agent-workflow/doctrine/session/references/prompts/M11-context.md +0 -16
- package/skills/agent-workflow/doctrine/session/references/prompts/M13-closure-cleanup.md +0 -61
- package/skills/agent-workflow/doctrine/session/references/prompts/M2-branch-caso-A.md +0 -14
- package/skills/agent-workflow/doctrine/session/references/prompts/M3-branch-caso-C.md +0 -33
- package/skills/agent-workflow/doctrine/session/references/prompts/M4-cross-source-hard-gate.md +0 -33
- package/skills/agent-workflow/doctrine/session/references/prompts/M5-modality-analyze.md +0 -15
- package/skills/agent-workflow/doctrine/session/references/prompts/M6-phase-gate.md +0 -31
- package/skills/agent-workflow/doctrine/session/references/prompts/M7-refactor-legacy-detected.md +0 -28
- package/skills/agent-workflow/doctrine/session/references/prompts/M8-refactor-cleanup.md +0 -16
- package/skills/agent-workflow/doctrine/session/references/prompts/M9-contract-review.md +0 -39
- package/skills/agent-workflow/doctrine/session/references/prompts/S1-type-design.md +0 -15
- package/skills/agent-workflow/doctrine/session/references/prompts/S2-topic-change-detection.md +0 -14
- package/skills/agent-workflow/doctrine/session/references/prompts/S3-flow-detection.md +0 -28
- package/skills/agent-workflow/doctrine/session/references/prompts/S4-resume.md +0 -27
- package/skills/agent-workflow/doctrine/session/references/prompts/S5-post-compact.md +0 -17
- package/skills/agent-workflow/doctrine/session/references/prompts/S6-scope.md +0 -16
- package/skills/agent-workflow/doctrine/session/references/prompts/S7-design-review.md +0 -37
- package/skills/agent-workflow/doctrine/session/references/prompts-catalog.md +0 -213
- package/skills/agent-workflow/doctrine/session/references/sandbox-readonly-rules.md +0 -82
- package/skills/agent-workflow/doctrine/session/references/specialty-decision-tree.md +0 -56
- package/skills/agent-workflow/doctrine/session/references/topic-change-rules.md +0 -67
- package/skills/agent-workflow/exports/README.md +0 -15
- package/skills/agent-workflow/exports/export-arq/SKILL.md +0 -229
- package/skills/agent-workflow/exports/export-arq/references/lexico-tecnico.md +0 -94
- package/skills/agent-workflow/exports/export-arq/references/template-c4.md +0 -293
- package/skills/agent-workflow/exports/export-arq/references/template-plantuml.puml +0 -77
- package/skills/agent-workflow/exports/export-arq/references/template-structurizr.dsl +0 -72
- package/skills/agent-workflow/exports/export-arq/references/validations.md +0 -231
- package/skills/agent-workflow/exports/export-conclusions/SKILL.md +0 -169
- package/skills/agent-workflow/exports/export-conclusions/references/dedup-rules.md +0 -154
- package/skills/agent-workflow/exports/export-conclusions/references/template-conclusions.md +0 -158
- package/skills/agent-workflow/exports/export-plan/SKILL.md +0 -225
- package/skills/agent-workflow/exports/export-plan/references/state-transitions.md +0 -141
- package/skills/agent-workflow/exports/export-plan/references/template-plan.md +0 -132
- package/skills/agent-workflow/exports/export-qa-note/SKILL.md +0 -31
- package/skills/agent-workflow/exports/export-report/SKILL.md +0 -262
- package/skills/agent-workflow/exports/export-report/references/lexico.md +0 -174
- package/skills/agent-workflow/exports/export-report/references/template-a.md +0 -95
- package/skills/agent-workflow/exports/export-report/references/template-b.md +0 -221
- package/skills/agent-workflow/exports/export-report/references/template-c.md +0 -180
- package/skills/agent-workflow/exports/export-report/references/validations.md +0 -255
- package/skills/agent-workflow/exports/export-requirement/SKILL.md +0 -31
- package/skills/agent-workflow/exports/export-scripts/SKILL.md +0 -211
- package/skills/agent-workflow/exports/export-scripts/references/code-scan-recommendations.md +0 -83
- package/skills/agent-workflow/exports/export-scripts/references/deprecation-plan.md +0 -80
- package/skills/agent-workflow/exports/export-scripts/references/lexico-tecnico.md +0 -47
- package/skills/agent-workflow/exports/export-scripts/references/manifest-template.md +0 -265
- package/skills/agent-workflow/exports/export-scripts/references/readme-template.md +0 -49
- package/skills/agent-workflow/exports/export-scripts/references/theme-handling.md +0 -141
- package/skills/agent-workflow/exports/export-scripts/references/validations.md +0 -69
- package/skills/agent-workflow/exports/export-tech-manuals/SKILL.md +0 -214
- package/skills/agent-workflow/exports/export-tech-manuals/references/lexico-tecnico.md +0 -97
- package/skills/agent-workflow/exports/export-tech-manuals/references/template-index.md +0 -123
- package/skills/agent-workflow/exports/export-tech-manuals/references/template-manual.md +0 -143
- package/skills/agent-workflow/exports/export-tech-manuals/references/validations.md +0 -211
- package/skills/agent-workflow/exports/export-tech-note/SKILL.md +0 -31
- package/skills/agent-workflow/hooks/README.md +0 -15
- package/skills/agent-workflow/references/README.md +0 -12
- package/skills/agent-workflow/references/checkpoint.md +0 -59
- package/skills/agent-workflow/references/dev-only.md +0 -50
- package/skills/agent-workflow/references/doctor.md +0 -61
- package/skills/agent-workflow/references/history.md +0 -40
- package/skills/agent-workflow/references/hooks.md +0 -35
- package/skills/agent-workflow/references/legacy-anchors.md +0 -50
- package/skills/agent-workflow/references/mcp.md +0 -34
- package/skills/agent-workflow/references/objetivo-tasks.md +0 -64
- package/skills/agent-workflow/references/orchestration.md +0 -86
- package/skills/agent-workflow/references/profile-parametrization.md +0 -88
- package/skills/agent-workflow/references/self.md +0 -68
- package/skills/agent-workflow/references/session-mgmt.md +0 -109
- package/skills/agent-workflow/references/sources.md +0 -102
- package/skills/agent-workflow/specialties/README.md +0 -14
- package/skills/agent-workflow/specialties/analyze-conclude/SKILL.md +0 -181
- package/skills/agent-workflow/specialties/analyze-conclude/references/incident-classification.md +0 -61
- package/skills/agent-workflow/specialties/analyze-investigate/SKILL.md +0 -148
- package/skills/agent-workflow/specialties/analyze-investigate/references/cost-guard.md +0 -85
- package/skills/agent-workflow/specialties/analyze-synthesize/SKILL.md +0 -127
- package/skills/agent-workflow/specialties/design-brief/SKILL.md +0 -90
- package/skills/agent-workflow/specialties/design-deliver/SKILL.md +0 -121
- package/skills/agent-workflow/specialties/design-develop/SKILL.md +0 -115
- package/skills/agent-workflow/specialties/design-discover/SKILL.md +0 -103
- package/skills/agent-workflow/standards/README.md +0 -12
- package/skills/agent-workflow/standards/coding-standards/SKILL.md +0 -102
- package/skills/agent-workflow/standards/coding-standards/references/angular-typescript.md +0 -266
- package/skills/agent-workflow/standards/coding-standards/references/database-conventions.md +0 -170
- package/skills/agent-workflow/standards/coding-standards/references/fe-be-integration.md +0 -300
- package/skills/agent-workflow/standards/coding-standards/references/frontend-structure.md +0 -182
- package/skills/agent-workflow/standards/coding-standards/references/java-spring.md +0 -244
- package/skills/agent-workflow/standards/coding-standards/references/project-structure.md +0 -197
- package/skills/agent-workflow/standards/frontend-design/SKILL.md +0 -62
- package/skills/agent-workflow/standards/frontend-design/references/feedback-toasts-patterns.md +0 -249
- package/skills/agent-workflow/standards/frontend-design/references/form-patterns.md +0 -278
- package/skills/agent-workflow/standards/frontend-design/references/list-patterns.md +0 -256
- package/skills/agent-workflow/standards/frontend-design/references/modal-patterns.md +0 -220
- package/skills/agent-workflow/standards/frontend-design/references/navigation-patterns.md +0 -224
- package/skills/agent-workflow/standards/redaccion-simple/SKILL.md +0 -128
- package/skills/agent-workflow/standards/sql-rollback-generator/SKILL.md +0 -158
- package/skills/agent-workflow/standards/sql-rollback-generator/references/irreversible-checklist.md +0 -161
- package/skills/agent-workflow/standards/sql-rollback-generator/references/release-rollback.md +0 -133
- package/skills/agent-workflow/standards/sql-rollback-generator/references/rollback-patterns.md +0 -257
- package/skills/agent-workflow/standards/sql-script-organizer/SKILL.md +0 -243
- package/skills/agent-workflow/standards/sql-script-organizer/references/bundle-readme-template.md +0 -82
- package/skills/agent-workflow/standards/sql-script-organizer/references/categorization-rules.md +0 -122
- package/skills/agent-workflow/standards/sql-script-organizer/references/consolidation-cross-session.md +0 -125
- package/skills/agent-workflow/standards/sql-script-organizer/references/scripts-sql-format.md +0 -140
- package/skills/agent-workflow/standards/testing-strategy/SKILL.md +0 -113
- package/skills/agent-workflow/standards/testing-strategy/references/test-levels.md +0 -255
- package/skills/agent-workflow/workflows/README.md +0 -12
- package/skills/agent-workflow/workflows/analyze-workflow/SKILL.md +0 -94
- package/skills/agent-workflow/workflows/design-workflow/SKILL.md +0 -79
- package/skills/agent-workflow/workflows/dev-workflow/SKILL.md +0 -172
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: export-scripts
|
|
3
|
+
description: "Consolida los SQL pendientes del workspace en un único bundle `docs/scripts/NNN-export-scripts-YYYY-MM-DD/` con numeración continua tras `00-ROLLBACK.sql`. Lee migraciones tipo-B (DDL/DML) desde dos fuentes: `.workflow/sessions/<folder>/SCRIPTS.sql` de N sesiones Y `docs/scripts/*.sql` standalone (excluyendo bundles previos). Ignora el tipo-A read-only (consultas de diagnóstico, no entregables). Headers SQL mínimos + README simple (3 secciones: Archivos / Aplicar / Revertir). El rollback se deriva de los forwards. Read-only/reporte: NUNCA ejecuta SQL ni commitea — el bundle es para que un humano/DBA lo aplique. Compone la capacidad `sql`. Úsalo para 'bundle SQL del release', 'preparar paso a prod', 'consolidar SQLs pendientes'. Invocado por el usuario vía `/w:export-scripts`."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# export-scripts — Bundle SQL consolidado, simple y directo
|
|
7
|
+
|
|
8
|
+
Consolida las migraciones SQL pendientes de N sesiones + archivos standalone en un único bundle bajo `docs/scripts/NNN-export-scripts-YYYY-MM-DD/`, con numeración continua tras `00-ROLLBACK.sql`. **Read-only / reporte** — la IA **nunca ejecuta** el SQL; el usuario/DBA aplica el bundle manualmente.
|
|
9
|
+
|
|
10
|
+
> Familia `export-*` (la única vía artefacto→`docs/`). Recicla el espíritu del viejo `export-scripts` v5.0.0 (numeración continua, headers SQL minimal, README de 3 secciones, rollback derivado de forwards), modernizado al modelo nuevo (sin modos project/hub; `docs/scripts` en inglés). Diseño: `docs/referencias/workflow-exports/export-scripts.md`.
|
|
11
|
+
|
|
12
|
+
## Category
|
|
13
|
+
|
|
14
|
+
`docs/scripts` — **única** carpeta `docs/` que este export escribe.
|
|
15
|
+
|
|
16
|
+
## Composes
|
|
17
|
+
|
|
18
|
+
Capacidad **`sql`** (built-in default `sql`), resuelta vía `.workflow/skills.toml`. Aporta el vocabulario de categorías DDL/DML, el orden de aplicación y la derivación de rollback. Este export **no** posee esa lógica: la compone. Rebindeable u `off` por config.
|
|
19
|
+
|
|
20
|
+
## When to use
|
|
21
|
+
|
|
22
|
+
- "Bundle SQL del release", "preparar paso a prod", "consolidar SQLs pendientes".
|
|
23
|
+
- Antes de promover una rama a certificación / `main`.
|
|
24
|
+
- Tras varias sesiones `exec`/`quick` que dejaron `SCRIPTS.sql` con migraciones.
|
|
25
|
+
|
|
26
|
+
## What it does
|
|
27
|
+
|
|
28
|
+
1. Recolecta SQL del workspace desde **dos fuentes**: `SCRIPTS.sql` tipo-B de cada sesión del corpus + `docs/scripts/*.sql` standalone (excluyendo bundles previos).
|
|
29
|
+
2. Clasifica las sentencias por categoría canónica (DDL-TABLES / DDL-FUNCTIONS / DML / INSERTS).
|
|
30
|
+
3. Consolida cross-source por categoría con **numeración continua** tras `00-ROLLBACK.sql`.
|
|
31
|
+
4. Escribe los forwards consolidados (cada sentencia con su origen, 1 línea).
|
|
32
|
+
5. Deriva `00-ROLLBACK.sql` **al final**, leyendo los forwards ya escritos.
|
|
33
|
+
6. Escribe un `README.md` minimal (Archivos / Aplicar / Revertir).
|
|
34
|
+
|
|
35
|
+
## What it does NOT do
|
|
36
|
+
|
|
37
|
+
- **Ejecutar SQL** (invariante BD scripts-only). El bundle es entregable; lo aplica un humano/DBA.
|
|
38
|
+
- Commitear, mergear, push.
|
|
39
|
+
- Tocar `.workflow/sessions/` ni los `docs/scripts/*.sql` standalone (solo lectura).
|
|
40
|
+
- Escribir cualquier carpeta `docs/` que no sea `docs/scripts/` (invariante: una categoría).
|
|
41
|
+
- Migrar bundles previos (`docs/scripts/NNN-export-scripts-*/` quedan como histórico).
|
|
42
|
+
- Incluir el tipo-A read-only (consultas de diagnóstico) ni inventar SQL.
|
|
43
|
+
- Generar plantillas de correo, checklists de producción, listados de commits/sesiones, ni resúmenes ejecutivos en el README.
|
|
44
|
+
|
|
45
|
+
## Read-only sandbox
|
|
46
|
+
|
|
47
|
+
En plan mode **describe**, no escribe: el `NNN` resuelto, las fuentes detectadas (sesiones + standalone), las categorías con contenido, los archivos que aparecerían al root del bundle y el contenido aproximado del README. **No** ejecuta `Write`, ni `aw next-number` con efecto, ni mutaciones.
|
|
48
|
+
|
|
49
|
+
## Inputs
|
|
50
|
+
|
|
51
|
+
**CLI `agent-workflow` (alias `aw`)** — no leer paths hardcodeados:
|
|
52
|
+
|
|
53
|
+
- `aw sessions` / `aw release-data [--since sessionNNN] [--source <alias>]` — enumera el corpus de sesiones.
|
|
54
|
+
- `aw session-artifacts --code <NNN>` — lee `SCRIPTS.sql` de cada sesión (lazy). Si no existe → skip silencioso.
|
|
55
|
+
- `aw next-number docs/scripts` — numeración determinística del directorio del bundle (la resolución de la carpeta destino la maneja el CLI).
|
|
56
|
+
|
|
57
|
+
**Filesystem**:
|
|
58
|
+
|
|
59
|
+
- `docs/scripts/*.sql` standalone (solo top-level), **excluyendo** cualquier `docs/scripts/NNN-export-scripts-*/` (outputs previos de este export).
|
|
60
|
+
|
|
61
|
+
**Args** (sin lifecycle `AskUserQuestion`):
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
/w:export-scripts [--sessions NNN[,NNN]] [--since sessionNNN] [--source <alias>]
|
|
65
|
+
[--skip-standalone] [--dry-run]
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
| Flag | Comportamiento |
|
|
69
|
+
|---|---|
|
|
70
|
+
| `--sessions NNN[,NNN]` | Filtro discreto por código (precede a `--since`) |
|
|
71
|
+
| `--since sessionNNN` | Solo sesiones posteriores a NNN (inclusive) |
|
|
72
|
+
| `--source <alias>` | Limita a una fuente (workspace multi-fuente) |
|
|
73
|
+
| `--skip-standalone` | Omite la lectura de `docs/scripts/*.sql` standalone |
|
|
74
|
+
| `--dry-run` | Reporte propositivo sin escribir archivos |
|
|
75
|
+
|
|
76
|
+
Sin args: todas las sesiones del corpus + todos los `.sql` standalone (excluyendo bundles previos). *(Si algún flag exacto difiere en el CLI runtime, ajustar al contrato real de `aw`.)*
|
|
77
|
+
|
|
78
|
+
## Flow
|
|
79
|
+
|
|
80
|
+
### Paso 1 — Recolección de fuentes SQL
|
|
81
|
+
|
|
82
|
+
**Fuente A — sesiones**: por cada sesión del corpus (`aw sessions` / `release-data` + `session-artifacts --code <NNN>`), leer `.workflow/sessions/<folder>/SCRIPTS.sql` si existe. Tomar **solo** las sentencias tipo-B (migraciones DDL/DML entregables); ignorar el tipo-A read-only (consultas de diagnóstico). Markers esperados por sentencia: `-- @category: <01-04>` + `-- @stmt: NNN-verbo-objetivo` (formato definido por la capacidad `sql`).
|
|
83
|
+
|
|
84
|
+
**Fuente B — standalone** (salvo `--skip-standalone`): listar `docs/scripts/*.sql` top-level, **excluyendo** `docs/scripts/NNN-export-scripts-*/`. Por archivo: respetar markers `@category` si los hay; si no, inferir categoría del contenido (`CREATE/ALTER TABLE`, `CREATE INDEX` → `01`; `CREATE OR REPLACE FUNCTION`/`PROCEDURE` → `02`; `UPDATE`/`DELETE` → `03`; `INSERT INTO … VALUES` → `04`). Si el filename contiene `rollback` → skip (no entra en forward).
|
|
85
|
+
|
|
86
|
+
Si la unión A + B está vacía → **abortar**: "No hay SQL pendientes en el workspace".
|
|
87
|
+
|
|
88
|
+
### Paso 2 — Numeración del bundle
|
|
89
|
+
|
|
90
|
+
`aw next-number docs/scripts` → `docs/scripts/NNN-export-scripts-YYYY-MM-DD/`.
|
|
91
|
+
|
|
92
|
+
### Paso 3 — Clasificación y orden interno
|
|
93
|
+
|
|
94
|
+
Agrupar por categoría canónica: `01 DDL-TABLES` · `02 DDL-FUNCTIONS` · `03 DML` · `04 INSERTS`. Orden interno cronológico por origen (sesión ascendente → stmt ascendente; standalone intercalado por orden léxico del filename).
|
|
95
|
+
|
|
96
|
+
### Paso 4 — Numeración continua (sin gaps)
|
|
97
|
+
|
|
98
|
+
Asignar números secuenciales **solo a las categorías con contenido**, en el orden canónico. El primer forward siempre es `01-…`. Ej.: solo DML → `00-ROLLBACK.sql`, `01-DML.sql`; las 4 categorías → `00-ROLLBACK.sql`, `01-DDL-TABLES.sql`, `02-DDL-FUNCTIONS.sql`, `03-DML.sql`, `04-INSERTS.sql`.
|
|
99
|
+
|
|
100
|
+
### Paso 5 — Escribir forwards
|
|
101
|
+
|
|
102
|
+
Por categoría con contenido, un archivo con header de 1-2 líneas (`-- 0N-<CATEGORIA>.sql — bundle NNN-export-scripts-YYYY-MM-DD`) y, por sentencia, **un comentario de una línea** con el origen (`-- sessionXXX / stmt-id` o `-- docs/scripts/001-filename.sql`) seguido del SQL tal cual lo escribió el developer (envuelto en `BEGIN; … COMMIT;` si aplica). No replicar motivación/impacto/idempotencia ya presentes en el origen; no agregar índice de sentencias ni SELECTs de verificación inventados.
|
|
103
|
+
|
|
104
|
+
### Paso 6 — Derivar `00-ROLLBACK.sql` (al final)
|
|
105
|
+
|
|
106
|
+
Vía la capacidad `sql`, **leyendo los forwards ya escritos** (no el `SCRIPTS.sql` original): sentencias inversas en orden inverso (último→primero), bloque transaccional único, y un bloque "Cleanup irreversible" al final fuera de transacción solo si hay operaciones sin reversa automática.
|
|
107
|
+
|
|
108
|
+
### Paso 7 — Escribir `README.md` (3 secciones)
|
|
109
|
+
|
|
110
|
+
`## Archivos` (tabla: 1 fila por archivo presente) · `## Aplicar` (un `psql -f` por archivo en orden ascendente; el export no ejecuta nada) · `## Revertir` (`psql -f 00-ROLLBACK.sql` + nota si hay bloque irreversible). **Vetado**: resumen ejecutivo, tabla de sesiones, plantillas de correo, listado de commits, checklist de producción.
|
|
111
|
+
|
|
112
|
+
### Paso 8 — Escribir o reportar
|
|
113
|
+
|
|
114
|
+
Si `--dry-run`: imprimir el reporte; no escribir. Si no: `Write` del bundle. **NUNCA commitear**. Resumen al usuario: una línea por archivo escrito + ruta del bundle (sin replicar el README).
|
|
115
|
+
|
|
116
|
+
## Output location
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
docs/scripts/NNN-export-scripts-YYYY-MM-DD/
|
|
120
|
+
├── 00-ROLLBACK.sql # reversa derivada de los forwards
|
|
121
|
+
├── 01-<CATEGORIA>.sql # primer forward (numeración continua)
|
|
122
|
+
├── 02-<CATEGORIA>.sql # …según categorías con contenido
|
|
123
|
+
└── README.md # Archivos · Aplicar · Revertir
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Re-run
|
|
127
|
+
|
|
128
|
+
Idempotente funcional: cada invocación toma el siguiente `NNN` y **no sobrescribe** bundles previos. Para regenerar: borrar el directorio manualmente y re-invocar.
|
|
129
|
+
|
|
130
|
+
## Resources
|
|
131
|
+
|
|
132
|
+
- Design: `docs/referencias/workflow-exports/export-scripts.md` · familia: [`../README.md`](../README.md).
|
|
133
|
+
- Capacidad compuesta: `sql` (built-in default; ver `docs/referencias/workflow-skills/`).
|
|
134
|
+
- Artefacto fuente: `SCRIPTS.sql` (ver `docs/referencias/workflow-artifacts/artifacts-core/`).
|
|
135
|
+
- Siblings: [`../export-manuals/SKILL.md`](../export-manuals/SKILL.md) · [`../export-diagrams/SKILL.md`](../export-diagrams/SKILL.md) · [`../export-reports/SKILL.md`](../export-reports/SKILL.md).
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# hooks — host hook template
|
|
2
|
+
|
|
3
|
+
`hooks.template.json` wires the host (Claude Code) to the `agent-workflow` runtime hooks. Merge it into your host's user-level hook config (e.g. `~/.claude/settings.json`); the installer does this automatically for Claude.
|
|
4
|
+
|
|
5
|
+
| Event | Hook | Purpose |
|
|
6
|
+
|---|---|---|
|
|
7
|
+
| `SessionStart` | namespace pin | Pins the workspace namespace to `workflow` (so `.workflow/` resolves). |
|
|
8
|
+
| `PreToolUse` (Edit/Write) | `hook branch-check` | Verifies the expected work branch before any file edit (git-safe invariant). |
|
|
9
|
+
| `PreToolUse` (`execute_sql`) | `hook sql-mutation-guard` | Blocks DML/DDL over MCP — reads only (DB scripts-only invariant). |
|
|
10
|
+
| `PreToolUse` (Bash) | `hook git-commit-advisor` | Advises on commit policy (propose-then-execute, no `push`/`--amend`/`--no-verify`). |
|
|
11
|
+
| `SessionEnd` | `auto-compact-on-close` | Persists pending state on close. |
|
|
12
|
+
| `PreCompact` | `checkpoint-write` | Writes `CHECKPOINT.md` before the host compacts. |
|
|
13
|
+
| `PostCompact` | `resume-summary` | Recovers the active loop state after a compact. |
|
|
14
|
+
|
|
15
|
+
> These hooks enforce invariants 4 (DB scripts-only) and 5 (git-safe) at the host level, independent of the loop logic. The hook commands are runtime CLI subcommands (`agent-workflow hook …`), unchanged across the bundle namespace.
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
{
|
|
64
64
|
"type": "command",
|
|
65
65
|
"command": "agent-workflow checkpoint-write",
|
|
66
|
-
"statusMessage": "Escribiendo CHECKPOINT.md antes de compactar...
|
|
66
|
+
"statusMessage": "Escribiendo CHECKPOINT.md antes de compactar...",
|
|
67
67
|
"timeout": 10
|
|
68
68
|
}
|
|
69
69
|
]
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
{
|
|
83
83
|
"type": "prompt",
|
|
84
|
-
"prompt": "Contexto compactado. El JSON anterior es output de `agent-workflow resume-summary`. Si hay `active_sessions`,
|
|
84
|
+
"prompt": "Contexto compactado. El JSON anterior es output de `agent-workflow resume-summary`. Si hay `active_sessions`, reanudá el loop activo desde su CHECKPOINT.md y presentá un resumen. Si está vacío, terminá."
|
|
85
85
|
}
|
|
86
86
|
]
|
|
87
87
|
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# w/loops — Loop map (Layer 2)
|
|
2
|
+
|
|
3
|
+
> Los **loops** son las piezas que la **IA corre enteras** para producir entregables y orquestar el trabajo. Los arranca un comando `/w:…` (Capa 1) y, a partir de ahí, **los conduce la IA**, no el usuario.
|
|
4
|
+
>
|
|
5
|
+
> Hermanos: `../commands/` (Capa 1, comandos `/w:…`) · `.workflow/sessions/` (Capa 3, sessions + artefactos internos) · la familia `export-*` (única vía artefacto→`docs/`) · las **capacidades** componibles (roles bindeados en `.workflow/skills.toml`).
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## What a loop is
|
|
10
|
+
|
|
11
|
+
Un loop es una **skill** que le enseña a la IA *cómo iterar* hasta producir un entregable. Se invoca por su `name:` con el tool `Skill`. La IA lo ejecuta de punta a punta: detecta huecos, los resuelve (preguntando al humano o investigando), integra y repite hasta converger.
|
|
12
|
+
|
|
13
|
+
Propiedades comunes a **los 4 loops**:
|
|
14
|
+
|
|
15
|
+
1. **Gap-driven convergente** — cada ciclo: `detect_gaps` → resolver (humano o research) → integrar → repetir hasta que no queden gaps materiales. Los gaps "agotados" (límite `MAX` de intentos) no se re-disparan → garantiza convergencia.
|
|
16
|
+
2. **Puede crear sessions internas** — si refinar/planificar/ejecutar requiere trabajo profundo (ej. investigar el código), el loop crea una session en `.workflow/sessions/` que maneja **sus** artefactos, la cierra y reporta de vuelta. **El usuario nunca crea esas sessions.**
|
|
17
|
+
3. **AskUserQuestion con dos tipos de tab** (límite host: 4 preguntas/llamada):
|
|
18
|
+
- **tab(s) de contenido** (≤3) — la(s) pregunta(s) real(es) del momento (resolver una duda, elegir MCP, o en convergencia: `Guardar` / `Preguntar algo más`).
|
|
19
|
+
- **tab `flow`** (1, SIEMPRE presente) — control de ciclo de vida por un canal lateral. Así el contenido lo maneja la IA y el ciclo de vida lo dirige el humano.
|
|
20
|
+
4. **Escribe solo en su propia carpeta `docs/`** — y **nunca** gradúa/exporta otros artefactos a `docs/`. Esa promoción la hacen las skills `export-*`, aparte y explícita.
|
|
21
|
+
|
|
22
|
+
## flow tab — options
|
|
23
|
+
|
|
24
|
+
El tab `flow` es **fijo**: `Compactar` / `Cerrar`, presente en los 4 loops. Responder el tab de contenido **sin tocar `flow`** = seguir iterando ("continuar" es el comportamiento por defecto del loop, no una opción del canal de control).
|
|
25
|
+
|
|
26
|
+
| Option | What it does |
|
|
27
|
+
|---|---|
|
|
28
|
+
| `Compactar` | Escribe `CHECKPOINT` (session dueña del run) + dispara `/compact` del host y reanuda sin perder el hilo. |
|
|
29
|
+
| `Cerrar` | `finalize`: persiste lo pendiente (`CHECKPOINT` + `BACKLOG`), cierra sessions internas y termina el loop. |
|
|
30
|
+
|
|
31
|
+
## Loops and their flow
|
|
32
|
+
|
|
33
|
+
| Loop (`name:`) | Flow | Started by | Reads | Writes |
|
|
34
|
+
|---|---|---|---|---|
|
|
35
|
+
| [`spec-refine-loop`](spec-refine-loop/SKILL.md) | SPEC | `/w:spec-refine` | `docs/specs/NNN-spec.md` (o `…-spec-refined.md` si ya existe) | `docs/specs/NNN-spec-refined.md` |
|
|
36
|
+
| [`plan-new-loop`](plan-new-loop/SKILL.md) | PLANIFICATION | `/w:plan-new` | `docs/specs/NNN-spec-refined.md` | `docs/plans/PPP-plan.md` |
|
|
37
|
+
| [`plan-exec-loop`](plan-exec-loop/SKILL.md) | PLANIFICATION | `/w:plan-exec` | `docs/plans/PPP-plan.md` | `docs/plans/PPP-plan.md` (update) + `docs/tools`; resto vía `export-*` |
|
|
38
|
+
| [`quick-loop`](quick-loop/SKILL.md) | QUICK | `/w:quick` | — (prompt) | edita código + session ligera; **no** `docs/` |
|
|
39
|
+
|
|
40
|
+
> `/w:spec-new` no tiene loop (es single-pass). Por eso hay **5 comandos / 4 loops**.
|
|
41
|
+
|
|
42
|
+
### `docs/` boundary (regla dura)
|
|
43
|
+
|
|
44
|
+
Los loops **nunca** graduan/exportan artefactos a `docs/` automáticamente. Cada loop escribe **solo** su(s) carpeta(s):
|
|
45
|
+
|
|
46
|
+
| Flow | Carpetas `docs/` que escribe |
|
|
47
|
+
|---|---|
|
|
48
|
+
| SPEC | `docs/specs` |
|
|
49
|
+
| PLANIFICATION | `docs/plans` (living) + `docs/tools` (herramientas creadas — salida directa) |
|
|
50
|
+
| QUICK | ninguna |
|
|
51
|
+
|
|
52
|
+
Todo lo demás (migraciones → `docs/scripts`, manuales → `docs/manuals`, diagramas → `docs/diagrams`, informes → `docs/reports`) queda como **artefacto de session** hasta que un `export-*` lo promueva, como paso aparte y explícito.
|
|
53
|
+
|
|
54
|
+
## Loops × flow tab
|
|
55
|
+
|
|
56
|
+
| Loop | tab(s) de contenido típicos | tab `flow` |
|
|
57
|
+
|---|---|---|
|
|
58
|
+
| `spec-refine-loop` | dudas-de-humano · elección de MCP · convergencia (`Guardar especificación refinada` / `Preguntar algo más`) | `Compactar` / `Cerrar` |
|
|
59
|
+
| `plan-new-loop` | dudas · elección de MCP · convergencia (`Guardar plan` / `Preguntar algo más`) | `Compactar` / `Cerrar` |
|
|
60
|
+
| `plan-exec-loop` | decisiones/dudas no obvias · elección de MCP · cierre (`Marcar plan done` / `Preguntar algo más`) | `Compactar` / `Cerrar` |
|
|
61
|
+
| `quick-loop` | dudas no obvias · escalar a SPEC/PLAN · cierre (`Cerrar tarea` / `Preguntar algo más`) | `Compactar` / `Cerrar` |
|
|
62
|
+
|
|
63
|
+
## Schema of each loop file
|
|
64
|
+
|
|
65
|
+
| Field | Description |
|
|
66
|
+
|---|---|
|
|
67
|
+
| `## Flow` | A qué flujo pertenece (SPEC · PLANIFICATION · QUICK) |
|
|
68
|
+
| `## Layer` | Siempre 2 (la IA lo corre entero) |
|
|
69
|
+
| `## Started by` | Comando `/w:…` que lo arranca (reanudable) |
|
|
70
|
+
| `## Reads` | Documento(s) de entrada |
|
|
71
|
+
| `## Writes` | Documento(s) de salida (`generate` / `read-update`) |
|
|
72
|
+
| `## Internal sessions` | Sessions que crea y sus artefactos |
|
|
73
|
+
| `## Sequence` | Pseudocódigo + mermaid del loop |
|
|
74
|
+
| `## Convergence / exit` | Cuándo para |
|
|
75
|
+
|
|
76
|
+
El **chasis** (`spec-refine-loop`) además detalla `## Composes` (capacidades que compone), `## Deliverable schema`, `## Gap taxonomy`, `## Ask-vs-research rule`, `## Research: autonomy, scope & failure`, `## AskUserQuestion`, `## Compact / resume`, `## Integration`.
|
|
77
|
+
|
|
78
|
+
Los **heirs** (`plan-new-loop`, `plan-exec-loop`, `quick-loop`) usan `## Inherits` (lo que reusan del chasis, sin repetirlo) + `## Delta N` (sus diferencias).
|
|
79
|
+
|
|
80
|
+
## Chassis / heirs
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
spec-refine-loop ── CHASIS (patrón de referencia: motor gap-driven, sessions,
|
|
84
|
+
│ AskUserQuestion + tab flow, research autónomo + regla BD,
|
|
85
|
+
│ compact/resume, Cerrar persiste CHECKPOINT+BACKLOG)
|
|
86
|
+
├── plan-new-loop (heir) → deltas: plan rico, gap taxonomy de plan
|
|
87
|
+
├── plan-exec-loop (heir) → deltas: ejecución real (código/BD/git),
|
|
88
|
+
│ session por fase, sin auto-export
|
|
89
|
+
└── quick-loop (heir) → deltas: ceremonia mínima, 1 session,
|
|
90
|
+
hereda git/BD/no-export de plan-exec
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
El chasis **no es una capacidad bindeable**: *es* `spec-refine-loop` y los demás loops lo heredan. Lo enchufable son las **capacidades** que un loop compone (ej. `ui-design`, `sql`, `git`, `testing`), resueltas por `.workflow/skills.toml`.
|
|
94
|
+
|
|
95
|
+
## Composed capabilities (roles)
|
|
96
|
+
|
|
97
|
+
Los loops componen **capacidades por su rol**, no skills concretas; la skill que cumple el rol la resuelve `.workflow/skills.toml` (`built-in default → ~/.workflow/skills.toml → .workflow/skills.toml`).
|
|
98
|
+
|
|
99
|
+
| Role | Default built-in | Composed by |
|
|
100
|
+
|---|---|---|
|
|
101
|
+
| `ui-design` | `ui-spec` | `spec-refine-loop` (cuando hay UI) |
|
|
102
|
+
| `sql` | `sql` | research · `plan-exec-loop` · `quick-loop` |
|
|
103
|
+
| `git` | `git` | `plan-exec-loop` · `quick-loop` |
|
|
104
|
+
| `coding-standards` | `coding-standards` | `plan-exec-loop` · `quick-loop` |
|
|
105
|
+
| `writing` | `writing` | todos los loops |
|
|
106
|
+
| `research` | `research` | todos los loops (research on-demand) |
|
|
107
|
+
| `testing` | `testing` | `plan-exec-loop` · `quick-loop` |
|
|
108
|
+
| `tools` | `tools` | `plan-exec-loop` |
|
|
109
|
+
| `overview` | `workflow` | cualquiera (orientación) |
|
|
110
|
+
|
|
111
|
+
`off` en config → capacidad desactivada: el loop sigue sin ella; si era necesaria, lo dice o pregunta al humano.
|
|
112
|
+
|
|
113
|
+
## Index
|
|
114
|
+
|
|
115
|
+
- [`spec-refine-loop/SKILL.md`](spec-refine-loop/SKILL.md) — el chasis
|
|
116
|
+
- [`plan-new-loop/SKILL.md`](plan-new-loop/SKILL.md)
|
|
117
|
+
- [`plan-exec-loop/SKILL.md`](plan-exec-loop/SKILL.md)
|
|
118
|
+
- [`quick-loop/SKILL.md`](quick-loop/SKILL.md)
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-exec-loop
|
|
3
|
+
description: >-
|
|
4
|
+
Ejecuta un plan de implementación (docs/plans/PPP-plan.md) como living doc: lo
|
|
5
|
+
lee y actualiza fase a fase mientras edita el código real, gestiona BD y git.
|
|
6
|
+
Heir del chasis spec-refine-loop: reusa su motor gap-driven (aplicado dentro
|
|
7
|
+
de una tarea ante decisiones/dudas no obvias), research on-demand con regla BD
|
|
8
|
+
read-only, AskUserQuestion con ≤3 tabs de contenido + 1 tab flow
|
|
9
|
+
(Compactar/Cerrar) siempre, y compact/resume con Cerrar que persiste CHECKPOINT
|
|
10
|
+
+ BACKLOG. Sus deltas: una exec session por fase (resume intra-fase); git
|
|
11
|
+
seguro (verifica rama esperada antes de editar, propone commits por fuente,
|
|
12
|
+
nunca push/--amend/--no-verify); la IA NUNCA ejecuta DML/DDL (migraciones se
|
|
13
|
+
redactan en SCRIPTS.sql, solo read-only se ejecuta); validación por fase y
|
|
14
|
+
final (lo dependiente de migración no aplicada se difiere como handoff a DBA);
|
|
15
|
+
y SIN auto-export (escribe solo docs/plans + docs/tools; el resto queda como
|
|
16
|
+
artefacto de session para export-*). Compone git, coding-standards, testing,
|
|
17
|
+
tools y sql. Lo arranca /w:plan-exec y es reanudable. Invocar para implementar
|
|
18
|
+
un plan ya generado.
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
# plan-exec-loop
|
|
22
|
+
|
|
23
|
+
> **Heir** del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md). Aquí los **deltas de ejecución** — el trabajo real: código, BD, git. El motor (gap-driven, research on-demand, AskUserQuestion + tab `flow`, compact/resume, `Cerrar` persiste) vive en el chasis.
|
|
24
|
+
|
|
25
|
+
## Flow
|
|
26
|
+
PLANIFICATION
|
|
27
|
+
|
|
28
|
+
## Layer
|
|
29
|
+
2 — la IA lo corre entero.
|
|
30
|
+
|
|
31
|
+
## Started by
|
|
32
|
+
`/w:plan-exec` — **reanudable** (mismo mecanismo de 4 casos del chasis; aquí con resume intra-fase, ver Delta 1).
|
|
33
|
+
|
|
34
|
+
## Reads
|
|
35
|
+
`docs/plans/PPP-plan.md`
|
|
36
|
+
|
|
37
|
+
## Writes
|
|
38
|
+
- `docs/plans/PPP-plan.md` (**read/update**, living doc: estado de fases/tareas, `Open questions`).
|
|
39
|
+
- `docs/tools/`: herramientas/utilidades reusables que la IA **crea** durante la ejecución (salida directa, no export).
|
|
40
|
+
- Artefactos de exec session en `.workflow/sessions/` (`SCRIPTS.sql`, `DECISION`, …).
|
|
41
|
+
- **NO** escribe en otras carpetas `docs/` ni **gradúa/exporta** otros artefactos automáticamente (ver *Boundary*).
|
|
42
|
+
|
|
43
|
+
## Boundary — sin auto-export (hard rule)
|
|
44
|
+
|
|
45
|
+
Este loop **nunca gradúa/promueve artefactos** a `docs/`. Las únicas carpetas `docs/` que escribe son **`docs/plans`** (el plan, living) y **`docs/tools`** (las herramientas que crea — salida directa, no un export). Todo lo demás (migraciones → `docs/scripts`, manuales → `docs/manuals`, diagramas → `docs/diagrams`, etc.) lo hacen skills **`export-*`** aparte, como paso explícito posterior. Los artefactos quedan en sus sessions hasta entonces.
|
|
46
|
+
|
|
47
|
+
## Inherits
|
|
48
|
+
|
|
49
|
+
Del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md), sin cambios:
|
|
50
|
+
|
|
51
|
+
- Motor **gap-driven** (aplica *dentro de una tarea* ante una decisión/duda no obvia: research session ó AskUserQuestion).
|
|
52
|
+
- **AskUserQuestion**: ≤3 contenido + 1 `flow` (`Compactar`/`Cerrar`) siempre.
|
|
53
|
+
- **research session** on-demand + **regla BD** read-only (pregunta MCP si >1 sin default → `SCRIPTS.sql` → ejecuta read-only) + research **inconclusa** (degrada/difiere, límite `MAX`).
|
|
54
|
+
- **Compact/resume**; **`Cerrar` persiste** `CHECKPOINT` + `BACKLOG`.
|
|
55
|
+
|
|
56
|
+
## Composes
|
|
57
|
+
|
|
58
|
+
`git` (rama segura + commits propuestos) · `coding-standards` (cambio mínimo, estilo de la fuente) · `testing` (validación) · `tools` (herramientas reusables → `docs/tools`) · `sql` (regla BD) · `writing`. Todas resueltas por `.workflow/skills.toml`; `off` → el loop sigue sin la capacidad y, si era necesaria, lo dice o pregunta.
|
|
59
|
+
|
|
60
|
+
## Internal sessions (managed)
|
|
61
|
+
|
|
62
|
+
- **control session** `<plan>-plan-exec`: dueña del run (`SESSION` + `CHECKPOINT` + `BACKLOG` al cerrar; Type = `control`).
|
|
63
|
+
- **exec session por fase** `<plan>-exec-phase-<N>`: `SESSION` · `DECISION` · `SCRIPTS.sql` · `CHECKPOINT` (Type = `exec`).
|
|
64
|
+
- **research session** `<plan>-research-*`: on-demand (run-and-close), igual que el chasis.
|
|
65
|
+
|
|
66
|
+
## Delta 1 — **One exec session per phase** (+ resume intra-fase)
|
|
67
|
+
|
|
68
|
+
- Recorre las `Phases` del plan en orden (respeta deps).
|
|
69
|
+
- Por cada Phase no completada → `create_or_resume(<plan>-exec-phase-<N>)` (**reusa** la session si la fase quedó a medias; no crea una segunda).
|
|
70
|
+
- 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).
|
|
71
|
+
- Registra `DECISION` solo lo **no obvio**.
|
|
72
|
+
|
|
73
|
+
## Delta 2 — Git policy: **rama segura + commits propuestos**
|
|
74
|
+
|
|
75
|
+
- **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.
|
|
76
|
+
- **Al cerrar una fase** (o al `Cerrar`): **propone commits por fuente** (propose-then-execute, aprobar antes); nunca `push`/`--amend`/`--no-verify`.
|
|
77
|
+
- **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).
|
|
78
|
+
- **Precondición entre fases**: `branch-check` valida *identidad* de rama, **no** *limpieza* del working tree. Antes de iniciar la exec session de 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.
|
|
79
|
+
|
|
80
|
+
## Delta 3 — DB policy: **la IA nunca ejecuta DML**
|
|
81
|
+
|
|
82
|
+
Distinción por **ejecución**, no por archivo (ver el esquema `SCRIPTS.sql`):
|
|
83
|
+
|
|
84
|
+
- **Consultas read-only** (diagnóstico/validación) → `SCRIPTS.sql` (artefacto de la session); la IA **sí** las ejecuta read-only vía MCP (`sql-mutation-guard`).
|
|
85
|
+
- **Migraciones DDL/DML** (cambios de esquema/datos) → la IA las **redacta en `SCRIPTS.sql`** (artefacto de la session) pero **NUNCA las ejecuta**.
|
|
86
|
+
|
|
87
|
+
> El SQL mutante **queda en la session**, no se mueve a `docs/`. Su promoción a `docs/scripts/` (forward + rollback) la hace un `export-*` **aparte**, no este loop.
|
|
88
|
+
|
|
89
|
+
## Delta 4 — Validation
|
|
90
|
+
|
|
91
|
+
- Tras ejecutar (por fase y al final): corre tests/checks contra `Validations` + `Final behavior` + acceptance/success criteria del spec.
|
|
92
|
+
- Validación que **corre y falla** → vuelve a la tarea (gap); no avanza.
|
|
93
|
+
- **Validación dependiente de una migración no aplicada**: como la IA no ejecuta el DML, **no puede correr read-only** → se **difiere** (handoff a DBA), **no bloquea el avance**. Se registra en `Open questions` del plan + `BACKLOG`, marcando "verificación pendiente tras aplicar SQL". (Reusa el patrón degradar/diferir + límite `MAX` del chasis → evita el bucle "vuelve a la tarea".)
|
|
94
|
+
|
|
95
|
+
## Delta 5 — Completitud / cierre
|
|
96
|
+
|
|
97
|
+
- 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"**.
|
|
98
|
+
- Todas las fases done → `AskUserQuestion` final (contenido: `Marcar plan done` / `Preguntar algo más`; flow: `Compactar`/`Cerrar`).
|
|
99
|
+
- **Sin export automático**: los artefactos (`SCRIPTS.sql`, `DECISION`, …) quedan en sus sessions. Promoverlos a `docs/` (scripts, manuals, …) es un paso aparte vía `export-*`.
|
|
100
|
+
|
|
101
|
+
## Sequence
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
plan-exec-loop(PPP-plan.md):
|
|
105
|
+
control = create_or_resume(<plan>-plan-exec) # CHECKPOINT, resume
|
|
106
|
+
plan = read(PPP-plan.md)
|
|
107
|
+
para cada Phase en plan (en orden, respeta deps):
|
|
108
|
+
si Phase done: skip
|
|
109
|
+
es = create_or_resume(<plan>-exec-phase-<N>) # reusa si quedó a medias
|
|
110
|
+
para cada Task de la Phase:
|
|
111
|
+
si Task - [x] en el plan: skip # resume intra-fase
|
|
112
|
+
verificar rama esperada por fuente (branch-check)
|
|
113
|
+
si no coincide → pausar + resolver con humano
|
|
114
|
+
ejecutar Task:
|
|
115
|
+
editar código en las fuentes (cambio mínimo)
|
|
116
|
+
si crea herramienta/utilidad reusable → docs/tools (salida directa)
|
|
117
|
+
si consulta BD read-only → SCRIPTS.sql + ejecutar read-only
|
|
118
|
+
si cambio BD (DDL/DML) → redactar en SCRIPTS.sql (artefacto session, NO ejecutar)
|
|
119
|
+
si decisión no obvia → DECISION
|
|
120
|
+
si duda/gap → research session ó AskUserQuestion # chasis
|
|
121
|
+
marcar Task - [x] + estado EN EL PLAN
|
|
122
|
+
validación de la fase:
|
|
123
|
+
la que corre y falla → volver a la tarea
|
|
124
|
+
la dependiente de migración no aplicada → diferir (Open questions + BACKLOG)
|
|
125
|
+
proponer commit(s) por fuente (aprobar antes) # nunca push/amend/--no-verify
|
|
126
|
+
si rechazado → cambios quedan; registrar "fase sin commitear"
|
|
127
|
+
precondición siguiente fase: working tree limpio o reconocido
|
|
128
|
+
es.close_and_report()
|
|
129
|
+
validación final (lo que se pueda; lo dependiente de SQL queda como handoff)
|
|
130
|
+
AskUserQuestion(contenido: [Marcar plan done, Preguntar algo más], flow: [Compactar, Cerrar])
|
|
131
|
+
marcar plan done (o "done — SQL pendiente de aplicar")
|
|
132
|
+
# NO export: los artefactos quedan en sessions; un export-* los promueve aparte
|
|
133
|
+
finalize: CHECKPOINT + BACKLOG + cerrar sessions + reportar
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
```mermaid
|
|
137
|
+
flowchart TD
|
|
138
|
+
S["create_or_resume control session<br/>read PPP-plan.md"] --> P{"¿más Phases<br/>(no done)?"}
|
|
139
|
+
P -->|no| V2["validación final<br/>(dep. de SQL → handoff)"]
|
|
140
|
+
P -->|sí| ES["create_or_resume exec session (Phase N)"]
|
|
141
|
+
ES --> T{"¿Task pendiente<br/>(no - [x])?"}
|
|
142
|
+
T -->|sí| G["branch-check por fuente"]
|
|
143
|
+
G -->|rama ok| DO["editar código · read-only→SCRIPTS.sql<br/>migración DDL/DML→SCRIPTS.sql (no ejecuta) · DECISION"]
|
|
144
|
+
G -->|rama ≠| PA["pausar + resolver con humano"]
|
|
145
|
+
PA --> G
|
|
146
|
+
DO --> MK["marcar Task - [x] en el PLAN"]
|
|
147
|
+
MK --> T
|
|
148
|
+
T -->|no| VP["validación de fase<br/>(falla→tarea · dep. SQL→diferir)"]
|
|
149
|
+
VP --> CM["proponer commits por fuente"]
|
|
150
|
+
CM -->|aprobado| CL["cerrar exec session + reportar"]
|
|
151
|
+
CM -->|rechazado| RJ["cambios quedan · registrar 'sin commitear'"]
|
|
152
|
+
RJ --> CL
|
|
153
|
+
CL --> P
|
|
154
|
+
V2 --> FIN["AskUserQuestion[Marcar plan done · Preguntar más]<br/>plan done (sin auto-export)"]
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Convergence / exit
|
|
158
|
+
|
|
159
|
+
- Plan completo + validación OK (o diferida con handoff) → `Marcar plan done`.
|
|
160
|
+
- `Cerrar` (tab flow, en cualquier momento) → `finalize` persiste `CHECKPOINT` + `BACKLOG` (qué quedó sin ejecutar / sin commitear / sin aplicar), cierra sessions, reporta.
|
|
161
|
+
- La promoción de artefactos a `docs/` (vía `export-*`) es **siempre** un paso posterior y explícito, fuera de este loop.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: plan-new-loop
|
|
3
|
+
description: >-
|
|
4
|
+
Genera un plan de implementación rico (docs/plans/PPP-plan.md) a partir de un
|
|
5
|
+
spec refinado (docs/specs/NNN-spec-refined.md). Heir del chasis
|
|
6
|
+
spec-refine-loop: reusa íntegro su motor gap-driven convergente, sus sessions
|
|
7
|
+
internas (control + research on-demand), AskUserQuestion con ≤3 tabs de
|
|
8
|
+
contenido + 1 tab flow (Compactar/Cerrar) siempre presente, research autónomo
|
|
9
|
+
con regla BD read-only, y compact/resume con Cerrar que persiste CHECKPOINT +
|
|
10
|
+
BACKLOG. Sus deltas: el plan absorbe inline el nivel TECHNICAL-NOTE
|
|
11
|
+
(Solution/Impacted/AS-IS/TO-BE/Validations…) + Phases/Tasks con estado vivo;
|
|
12
|
+
el research aquí mapea código/impacto (componentes FE/BE/BD, wiring AS-IS,
|
|
13
|
+
dependencias); y una gap taxonomy propia de planificación. Lo arranca el
|
|
14
|
+
comando /w:plan-new y es reanudable. Invocar cuando un spec ya refinado deba
|
|
15
|
+
convertirse en un plan ejecutable antes de implementar.
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
# plan-new-loop
|
|
19
|
+
|
|
20
|
+
> **Heir** del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md). Aquí **solo** los deltas. El motor (gap-driven, sessions, AskUserQuestion + tab `flow`, research autónomo + regla BD, compact/resume, `Cerrar` persiste) vive en el chasis — no se repite.
|
|
21
|
+
|
|
22
|
+
## Flow
|
|
23
|
+
PLANIFICATION
|
|
24
|
+
|
|
25
|
+
## Layer
|
|
26
|
+
2 — la IA lo corre entero.
|
|
27
|
+
|
|
28
|
+
## Started by
|
|
29
|
+
`/w:plan-new` — **reanudable** (mismo mecanismo de 4 casos que el chasis).
|
|
30
|
+
|
|
31
|
+
## Reads
|
|
32
|
+
`docs/specs/NNN-spec-refined.md`
|
|
33
|
+
|
|
34
|
+
## Writes
|
|
35
|
+
`docs/plans/PPP-plan.md` (`generate`; **sobrescribe con confirmación** si existe). Solo escribe `docs/plans` — nunca otras carpetas `docs/` ni auto-export.
|
|
36
|
+
|
|
37
|
+
## Inherits
|
|
38
|
+
|
|
39
|
+
Del chasis [`spec-refine-loop`](../spec-refine-loop/SKILL.md), sin cambios:
|
|
40
|
+
|
|
41
|
+
- Motor **gap-driven convergente** (`detect_gaps` → resolver → integrar → repetir; gaps agotados con límite `MAX` no se re-disparan).
|
|
42
|
+
- **Sessions internas**: `control` (`<plan>-plan-new`: `SESSION` + `CHECKPOINT`, + `BACKLOG` al cerrar; Type = `refine`/`control`) + `research` on-demand (run-and-close, puede cerrar inconclusa).
|
|
43
|
+
- **AskUserQuestion**: ≤3 tabs de contenido + 1 tab `flow` (`Compactar`/`Cerrar`) siempre.
|
|
44
|
+
- **Ask-vs-research rule** + **research autónomo** + **regla BD** (pregunta MCP si >1 sin default → queries a `SCRIPTS.sql` → ejecuta read-only, `sql-mutation-guard`) + manejo de research **inconclusa** (degrada a humano / difiere a `Open questions` + límite `MAX`).
|
|
45
|
+
- **Compact / resume** (4 casos) y **`Cerrar` persiste** `CHECKPOINT` + `BACKLOG`.
|
|
46
|
+
- **Naming** `<run>` para sessions hijas: `<plan>-plan-new` → `<plan>-research-*`.
|
|
47
|
+
|
|
48
|
+
## Delta 1 — Deliverable: PLAN RICO (`PPP-plan.md`)
|
|
49
|
+
|
|
50
|
+
El plan absorbe el nivel `TECHNICAL-NOTE` **inline** (decisión del usuario) + roadmap:
|
|
51
|
+
|
|
52
|
+
```markdown
|
|
53
|
+
# Plan PPP — <slug>
|
|
54
|
+
|
|
55
|
+
> Derivado de docs/specs/NNN-spec-refined.md · generado por plan-new-loop
|
|
56
|
+
|
|
57
|
+
## Origin spec fuente (o prompt, si se bootstrapeó vía spec-new)
|
|
58
|
+
## Summary el cómo, en 1–2 frases
|
|
59
|
+
## Solution explicación técnica/funcional de cómo se implementará
|
|
60
|
+
## Impacted FE · BE · BD (esquemas/tablas/funciones) · APIs · integraciones
|
|
61
|
+
## Dependencies docs / fuentes / bases / sesiones
|
|
62
|
+
## Current state (AS-IS) wiring actual (interfaces y métodos), resumido
|
|
63
|
+
## Target state (TO-BE) wiring objetivo
|
|
64
|
+
## Final behavior cómo se comporta el flujo al final (alineado con criterios del spec)
|
|
65
|
+
## Phases fases agrupadoras (complejidad XS–S)
|
|
66
|
+
## Tasks tareas por fase (≤XS), con deps y estado vivo (- [ ])
|
|
67
|
+
## Validations validaciones / restricciones / lógica de negocio
|
|
68
|
+
## Risks / impact riesgos e impactos técnicos
|
|
69
|
+
## Assumptions supuestos
|
|
70
|
+
## Estimated time sizing XS–XL (desarrollo + pruebas internas)
|
|
71
|
+
## Open questions pendientes
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
> **Implicación de catálogo:** `TECHNICAL-NOTE` deja de ser artefacto de exec session y se vuelve **secciones del plan-doc**. Reconciliado en [`plan-exec-loop`](../plan-exec-loop/SKILL.md): la exec session por fase **no** lleva `TECHNICAL-NOTE` ni `TASKS` propios; el detalle técnico y el progreso viven inline en el plan-doc (living).
|
|
75
|
+
|
|
76
|
+
## Delta 2 — Gap taxonomy (de "plan")
|
|
77
|
+
|
|
78
|
+
Reemplaza la gap taxonomy de spec por una orientada a planificación:
|
|
79
|
+
|
|
80
|
+
| Gap | Signal | Resolved by |
|
|
81
|
+
|---|---|---|
|
|
82
|
+
| Approach/Solution sin definir | el cómo es vago | research / humano |
|
|
83
|
+
| Componentes sin identificar | impacto FE/BE/BD desconocido | **research** (mapea el código) |
|
|
84
|
+
| Wiring AS-IS desconocido | no se sabe el estado actual | **research** |
|
|
85
|
+
| Fase muy grande | complejidad > S | humano (re-partir) |
|
|
86
|
+
| Tarea no atómica | complejidad > XS | la IA re-parte |
|
|
87
|
+
| Deps faltantes | orden no claro | research / humano |
|
|
88
|
+
| Criterios del spec sin cubrir | tareas no trazan a acceptance criteria | la IA deriva + humano confirma |
|
|
89
|
+
| Riesgos sin atender | — | humano |
|
|
90
|
+
|
|
91
|
+
## Delta 3 — What research investigates here
|
|
92
|
+
|
|
93
|
+
El research del chasis se especializa: mapear **código/impacto** — componentes FE/BE/BD afectados, wiring AS-IS, dependencias. Alimenta las secciones `Solution`, `Impacted`, `Current state (AS-IS)`. La regla BD del chasis aplica igual (queries read-only a `SCRIPTS.sql`, MCP elegido vía tab de contenido si >1 sin default).
|
|
94
|
+
|
|
95
|
+
## Convergence / exit
|
|
96
|
+
|
|
97
|
+
Sin gaps materiales → `AskUserQuestion` (contenido: `Guardar plan` / `Preguntar algo más`; flow: `Compactar`/`Cerrar`) → al `Guardar`, escribe `docs/plans/PPP-plan.md` (con confirmación si existe) → `finalize` (persiste `CHECKPOINT` + `BACKLOG`, cierra sessions, reporta). `Cerrar` en cualquier momento → `finalize` igual.
|