@tacuchi/agent-workflow-cli 11.0.1 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -95
- 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/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 +0 -8
- package/dist/application/parsers/project-block.d.ts.map +1 -1
- package/dist/application/parsers/project-block.js +13 -52
- package/dist/application/parsers/project-block.js.map +1 -1
- package/dist/application/paths-service.d.ts +7 -8
- package/dist/application/paths-service.d.ts.map +1 -1
- package/dist/application/paths-service.js +12 -8
- package/dist/application/paths-service.js.map +1 -1
- package/dist/application/project-md-upsert-service.d.ts +3 -11
- package/dist/application/project-md-upsert-service.d.ts.map +1 -1
- package/dist/application/project-md-upsert-service.js +6 -56
- package/dist/application/project-md-upsert-service.js.map +1 -1
- package/dist/application/project-tab-data.d.ts +14 -42
- package/dist/application/project-tab-data.d.ts.map +1 -1
- package/dist/application/project-tab-data.js +27 -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 +1 -3
- package/dist/application/render/project-block.d.ts.map +1 -1
- package/dist/application/render/project-block.js +4 -27
- 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 +9 -3
- package/dist/application/self/install-skill.d.ts.map +1 -1
- package/dist/application/self/install-skill.js +16 -16
- 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.js +14 -12
- 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 +60 -0
- package/dist/application/workspace-init-service.d.ts.map +1 -0
- package/dist/application/workspace-init-service.js +227 -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/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-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 +69 -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 +8 -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 +29 -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 +1 -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/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 +23 -97
- 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/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
|
@@ -1,471 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: session
|
|
3
|
-
description: Lifecycle universal de sesiones agent-workflow en 4 fases (planning/execution/validation/closure). Crea, retoma, lista o cierra sesiones componiendo skills de especialidad según el flow elegido (dev/design/analyze). Auto-plan antes de editar código. Topic-change detection en execution. Closure propone commits por fuente afectada (propose-then-execute). Invocado solo vía /agent-workflow:session.
|
|
4
|
-
version: 4.4.0
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Session — Lifecycle universal agent-workflow v3.0
|
|
8
|
-
|
|
9
|
-
Skill **único** y **universal** para el ciclo de vida de sesiones de toda la familia agent-workflow. Vive en agent-workflow; los flow plugins son especialistas standalone vía `/agent-workflow:use` y declaran su comportamiento como workflow consumido por este skill.
|
|
10
|
-
|
|
11
|
-
## Cuándo se invoca
|
|
12
|
-
|
|
13
|
-
- `/agent-workflow:session [create|resume|close|list] [args]` — entry point **único** del lifecycle.
|
|
14
|
-
|
|
15
|
-
Los flows (`dev`, `design`, `analyze`) son agrupaciones de skills de especialidad **dentro de `agent-workflow`** — no son repos/plugins separados desde la consolidación de v2.0.0. El único entry point del lifecycle es `/agent-workflow:session`; las especialidades se invocan internamente por composición.
|
|
16
|
-
|
|
17
|
-
## Resolución de intención
|
|
18
|
-
|
|
19
|
-
Evaluar `$ARGUMENTS`:
|
|
20
|
-
|
|
21
|
-
1. `close` → flujo de cierre.
|
|
22
|
-
2. `list` → flujo de listado.
|
|
23
|
-
3. Matchea `sessionXXX` o `XXX` (3 dígitos) → retomar.
|
|
24
|
-
4. Texto descriptivo → crear.
|
|
25
|
-
5. Sin args:
|
|
26
|
-
- Sin sesiones activas → preguntar y crear.
|
|
27
|
-
- Una activa → retomar automático.
|
|
28
|
-
- ≥2 activas → disparar `AskUserQuestion` con spec de S4 (`references/prompts-catalog.md#S4`). Header `resume`, ≤4 opciones (top-3 sesiones por última actividad + "Abrir nueva"). Other auto = nombre de sesión custom. Preview opcional con tabla `code · phase · last-activity · open-tasks`. NO narrar la pregunta en texto plano.
|
|
29
|
-
|
|
30
|
-
Una sesión está **activa** si aparece en `AW-PROJECT.Status.Sesiones activas`.
|
|
31
|
-
|
|
32
|
-
## Crear nueva sesión
|
|
33
|
-
|
|
34
|
-
### 1. Verificar AW-PROJECT
|
|
35
|
-
|
|
36
|
-
```
|
|
37
|
-
agent-workflow project-md-upsert --read
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Si falta → proponer `/agent-workflow:project-init` (single-repo) o `/agent-workflow:hub-init` (multi-repo) y detener.
|
|
41
|
-
|
|
42
|
-
### 2. Detectar flow
|
|
43
|
-
|
|
44
|
-
Resolver el flow desde el texto del comando o del OBJECTIVE.md:
|
|
45
|
-
|
|
46
|
-
1. **Heurística por keywords**:
|
|
47
|
-
- `implementar`/`refactor`/`bugfix`/`SQL`/`endpoint`/`API`/`script` → flow=`dev`.
|
|
48
|
-
- `mockup`/`UI`/`UX`/`pantalla`/`wireframe`/`spec`/`flujo de pantalla` → flow=`design`.
|
|
49
|
-
- `investigar`/`propuesta`/`post-mortem`/`auditar`/`analizar`/`evidencia` → flow=`analyze`.
|
|
50
|
-
2. **Fallback S3** (si la heurística no resuelve o el texto es ambiguo): disparar `AskUserQuestion` con spec de S3 (`references/prompts-catalog.md#S3`). Header `flow`, 4 opciones (dev/design/analyze/no estoy seguro). NO narrar la pregunta en texto plano.
|
|
51
|
-
3. **Override explícito**: si el usuario pasa `--flow <dev|design|analyze>` en `$ARGUMENTS`, usarlo directamente y saltar heurística/S3.
|
|
52
|
-
|
|
53
|
-
### 3. Cargar workflow del flow
|
|
54
|
-
|
|
55
|
-
```
|
|
56
|
-
agent-workflow workflows --flow <flow>
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Output: `session_args` (ej. `--tipo`/`--modalidad`), `artifacts_by_phase`, `skills_by_phase`, `refs_format`, `resume_counters`.
|
|
60
|
-
|
|
61
|
-
### 4. Capturar OBJECTIVE + args + handoff opcional + plan opcional
|
|
62
|
-
|
|
63
|
-
- Slug kebab-case (≤4 palabras), brief, criterios de aceptación, ramas por fuente.
|
|
64
|
-
- Args declarados en `session_args` del workflow.
|
|
65
|
-
- Handoff opcional `--from <flow>:<code>`: precarga `## Origin` en OBJECTIVE + tag `origen:` en HISTORY refs.
|
|
66
|
-
- **Plan opcional `--from-plan <NNN|path>` (F-E.3)**: si el usuario arranca desde un plan generado por `/agent-workflow:export-plan`:
|
|
67
|
-
- Acepta NNN (busca en `<docs>/planes/NNN-*.md`) o path absoluto/relativo.
|
|
68
|
-
- Lee frontmatter YAML + `## Resumen` del plan. Si `--objetivo` está vacío, lo deriva del Resumen.
|
|
69
|
-
- Append a OBJECTIVE.md: `## Origin (plan)` con referencia al plan y `sessions:` del frontmatter.
|
|
70
|
-
- Transición del plan: si `state == draft` → `active` con entry append-only en `state_changes[]` (canon en `agent-workflow/skills/export-plan/references/state-transitions.md`).
|
|
71
|
-
- Idempotente: si `state == active`, no-op silencioso.
|
|
72
|
-
- Errores claros: `PLAN_NOT_FOUND`, `PLAN_ARCHIVED`, `PLAN_INVALID_FRONTMATTER`.
|
|
73
|
-
- Si el plan está en `state: done`: ejecutar igualmente (caller puede querer abrir sesión follow-up); no transitiona automáticamente.
|
|
74
|
-
- **Tasks heredadas**: el AI puede leer manualmente la tabla `## Tasks` del plan y trasladarla a TASKS.md de la sesión nueva como base. Esta extracción NO la hace el CLI; queda al AI siguiendo la doctrina del skill.
|
|
75
|
-
|
|
76
|
-
### 5. Crear
|
|
77
|
-
|
|
78
|
-
```
|
|
79
|
-
agent-workflow session-create --flow <flow> --name <slug> --objetivo "<texto>" --branches alias:rama,…
|
|
80
|
-
# opcionalmente:
|
|
81
|
-
agent-workflow session-create --flow <flow> --name <slug> --from-plan <NNN|path> --branches alias:rama,…
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
Crea `.workflow/sessions/sessionNNN-<flow>-<slug>/`, escribe OBJECTIVE.md (legacy ES: OBJETIVO.md), agrega fila `active` en HISTORY, registra en AW-PROJECT.Status. Si se pasó `--from-plan`, el output incluye `plan_transition: {plan, from, to}` para trazabilidad.
|
|
85
|
-
|
|
86
|
-
### 6. Verificar ramas (proactivo, gate de avance)
|
|
87
|
-
|
|
88
|
-
Aplicar el **bloque común de verificación** descrito abajo en "Verificación interactiva de ramas". El AI **debe** presentar conflictos al usuario y esperar decisión antes de avanzar a fase planning. Sin confirmación explícita, no se ejecuta ningún `git checkout / stash / reset`.
|
|
89
|
-
|
|
90
|
-
### 7. Entrar a fase planning
|
|
91
|
-
|
|
92
|
-
## Las 4 fases
|
|
93
|
-
|
|
94
|
-
```
|
|
95
|
-
planning → execution → validation → closure
|
|
96
|
-
↑ ↓
|
|
97
|
-
└───────────┘
|
|
98
|
-
```
|
|
99
|
-
|
|
100
|
-
| Fase | Qué pasa | Skills típicas | Artefactos |
|
|
101
|
-
|---|---|---|---|
|
|
102
|
-
| **planning** | OBJECTIVE + TASKS. Auto-plan decide skip/lite/full. | `analyze-synthesize`, opcional `design-brief` | OBJECTIVE.md, TASKS.md |
|
|
103
|
-
| **execution** | El trabajo. AI compone especialidades. Topic-change detection. | `implement` + `coding-standards` + `sql-script-organizer` + `analyze-investigate` + `design-deliver` | DECISIONS.md, scripts/, DELIVERY.md, EVIDENCE.md, FINDINGS.md, CONCLUSIONS.md |
|
|
104
|
-
| **validation** | Verifica criterios. Tests si aplica. | `testing-strategy`, `coding-standards` review | logs, marcado en TASKS |
|
|
105
|
-
| **closure** | Graduate (6 kinds) + compact automático. | `compact` (auto-disparado) | docs/decisiones/, docs/manuales/, docs/especificaciones/, docs/scripts/, docs/conclusiones/, docs/release/ + CHECKPOINT.md |
|
|
106
|
-
|
|
107
|
-
### Fase 1 — planning
|
|
108
|
-
|
|
109
|
-
**Regla obligatoria**: no editar código antes de TASKS.md, salvo OBJECTIVE trivialmente atómico.
|
|
110
|
-
|
|
111
|
-
#### Auto-plan trigger
|
|
112
|
-
|
|
113
|
-
```
|
|
114
|
-
agent-workflow auto-plan-decide --objetivo-file .workflow/sessions/<folder>/OBJECTIVE.md
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
Output: `{decision: "skip"|"lite"|"full", reason, signals, metrics}`. El AI puede override con justificación.
|
|
118
|
-
|
|
119
|
-
**Trigger de S6 — scope advisory**: si `decision = "full"` y `metrics.eta_hours > 4`, disparar `AskUserQuestion` con spec de S6 (`references/prompts-catalog.md#S6`). Header `scope`, 3 opciones (Lite primero con 3 tasks core / Full / Split en 2 sesiones). La elección moldea cómo `analyze-synthesize` genera TASKS.md después: Lite → 3 tasks; Full → plan completo; Split → re-crear sessionA + sessionB con dependencia explícita. **Si `tasks_count ≤ 3` ya en el OBJECTIVE**: skip S6 (scope ya es lite). NO narrar la pregunta en texto plano.
|
|
120
|
-
|
|
121
|
-
#### Plan agent + Specialty (suggestion-only)
|
|
122
|
-
|
|
123
|
-
**Gate por harness**: antes de proponer Plan subagent o sub-agente per-flow, ejecutar `agent-workflow harness` y validar `supports_plan_subagent: true`. Si false (Codex/Copilot/unknown), saltar al fallback descrito en `references/lifecycle-deep.md` (redactar TASKS.md directamente o usar `specialty-choose` para sugerencias inline). Aplica también a `Task(subagent_type="<flow>-agent")` opt-in.
|
|
124
|
-
|
|
125
|
-
Para detalles de Plan subagent nativo (CC `Task(subagent_type="Plan")`), prompt completo, trade-offs y persistencia: ver `references/lifecycle-deep.md`.
|
|
126
|
-
|
|
127
|
-
```
|
|
128
|
-
agent-workflow specialty-choose --phase planning --objetivo-file .workflow/sessions/<folder>/OBJECTIVE.md
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
Devuelve `{suggestions, rationale, invoke_explicitly: true}`. **Mostrar** sugerencias al usuario, **esperar confirmación**, **invocar sólo las confirmadas** vía namespace explícito (`Skill(agent-workflow:analyze-synthesize)`; legacy `qtc-analyze:analyze-synthesize` válido durante convivencia Strangler Fig). Nunca auto-invocar.
|
|
132
|
-
|
|
133
|
-
#### Datos estructurados de la sesión (token-optimized v3.4+)
|
|
134
|
-
|
|
135
|
-
```
|
|
136
|
-
agent-workflow objetivo-data --code <CODE> # tipo, modalidad, criterios, fuentes, origen
|
|
137
|
-
agent-workflow tasks-data --code <CODE> [--only-open] # counts + items + next_open
|
|
138
|
-
agent-workflow decisiones-list --code <CODE> # DEC-NNN headers + previews
|
|
139
|
-
agent-workflow session-artifacts --code <CODE> # dump consolidado
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
Usar estos antes de leer archivos completos.
|
|
143
|
-
|
|
144
|
-
#### Cierre de planning (DESIGN.md + S7 + next-step prompt)
|
|
145
|
-
|
|
146
|
-
Al cerrar planning (TASKS.md producido + auto-plan resuelto + ramas verificadas), pipeline canónico **antes** de iniciar el loop de `execution`:
|
|
147
|
-
|
|
148
|
-
1. **DESIGN.md + S7** — sólo si `flow=dev` y `## Type ∈ {feature, refactor}` (resuelto vía Capa 1/2/3 — ver `dev-workflow/SKILL.md` §"Resolución del `## Type`"):
|
|
149
|
-
- Si `DESIGN.md` no existe: el AI produce un draft completo desde OBJECTIVE+TASKS siguiendo `implement/references/design-md-template.md`. Headers EN canon (`## Context`, `## Goals`, etc.), body en idioma del usuario. Sección `## Open questions` obligatoria (escribir `None` si vacía).
|
|
150
|
-
- Disparar **`AskUserQuestion`** con spec de S7 (`references/prompts-catalog.md#S7`). Header `design-review`, 3 opciones (Sí lo reviso / Approve as-is / Refinar antes) + Other auto = feedback puntual con re-disparo. Preview ASCII opcional. NUNCA narrar la pregunta en texto plano.
|
|
151
|
-
- **Confirmación obligatoria**: el gate no avanza a M10 hasta señal explícita. Opción 3 ("Refinar antes") y Other auto iteran el DESIGN.md y re-disparan S7 hasta confirmación 1 o 2.
|
|
152
|
-
- **Skip silencioso** para `## Type: bugfix|chore`: no se produce DESIGN.md, no dispara S7. La doctrina bugfix (3 pasos canónicos en `implement/SKILL.md`) no requiere design artifact upfront.
|
|
153
|
-
|
|
154
|
-
2. **M10 — next-step**: tras DESIGN.md/S7 (o tras planning si tipo bugfix/chore), disparar `AskUserQuestion` con spec de M10 (`references/prompts-catalog.md#M10`). Header `next-step`, 3 opciones (Ejecutar end-to-end / T1+T2 en paralelo / Una task por vez). **Recomendación dinámica**: el AI marca `(Recomendado)` en opción 1 si `tasks_count ≤5 ∧ eta_total ≤4h` (estimas TASKS.md S=0.5h/M=2h/L=4h); caso contrario marca opción 2. NO narrar la pregunta en texto plano.
|
|
155
|
-
|
|
156
|
-
**Si TASKS.md está vacío o ausente** (auto-plan retornó `skip` y el OBJECTIVE es trivialmente atómico): skip M10 y skip DESIGN.md/S7, pasar directo a execution sin loop.
|
|
157
|
-
|
|
158
|
-
### Fase 2 — execution
|
|
159
|
-
|
|
160
|
-
Antes de arrancar, evaluar opt-in del **sub-agente per-flow** (`agent-workflow profiles` → `delegate_to_subagent`). Detalles en `references/lifecycle-deep.md`.
|
|
161
|
-
|
|
162
|
-
#### Verificar rama (obligatorio, gate de avance)
|
|
163
|
-
|
|
164
|
-
Re-aplicar el **bloque común de verificación** descrito en "Verificación interactiva de ramas" antes de tocar código en cada entrada a execution. La rama puede haber drifted desde la creación de la sesión (el usuario puede haber hecho checkout manual). No avanzar al loop de tasks sin que el bloque retorne consistente.
|
|
165
|
-
|
|
166
|
-
#### Composición dinámica + diffs incrementales
|
|
167
|
-
|
|
168
|
-
Tabla de composición + reglas de activación (regla cero) en `references/lifecycle-deep.md`. Loop:
|
|
169
|
-
|
|
170
|
-
1. Tomar tarea (`tasks-data --only-open`).
|
|
171
|
-
2. Verificar rama por archivo.
|
|
172
|
-
3. Cambio mínimo + diff.
|
|
173
|
-
4. Registrar DECISIÓN sólo si no es obvia.
|
|
174
|
-
5. Marcar tarea cerrada.
|
|
175
|
-
6. Repetir.
|
|
176
|
-
|
|
177
|
-
#### Topic-change detection
|
|
178
|
-
|
|
179
|
-
```
|
|
180
|
-
agent-workflow topic-change-check --objetivo-file .workflow/sessions/<folder>/OBJECTIVE.md --request "<resumen>"
|
|
181
|
-
```
|
|
182
|
-
|
|
183
|
-
Si `changed: true`, **dispara `AskUserQuestion`** con spec de S2 (`references/prompts-catalog.md#S2`). Header `topic-change`, 3 opciones (cerrar+abrir nueva / extender OBJECTIVE / ignorar). No bloquea — el Other auto registra el pedido como nota informal. NO narrar la pregunta en texto plano.
|
|
184
|
-
|
|
185
|
-
### Fase 3 — validation
|
|
186
|
-
|
|
187
|
-
No automática. Preguntar si valida desde plugin (`testing-strategy`) o manual. Registrar nota en DECISIONS (legacy: DECISIONES) si aporta.
|
|
188
|
-
|
|
189
|
-
### Fase 4 — closure
|
|
190
|
-
|
|
191
|
-
Ver "Cerrar sesión" abajo.
|
|
192
|
-
|
|
193
|
-
#### Closure sin implementación (F-E.1)
|
|
194
|
-
|
|
195
|
-
Cerrar la sesión sin ejecutar implementación es **válido** cuando el corpus producido representa un análisis terminado o una decisión documentada. El CLI lo permite sin restricciones (`session-close-service.ts` no exige criterios). Doctrina explícita: aceptar el cierre si se cumple:
|
|
196
|
-
|
|
197
|
-
1. **OBJECTIVE.md presente** (siempre — gate básico), Y
|
|
198
|
-
2. **Al menos uno de los siguientes artefactos**:
|
|
199
|
-
- `CONCLUSIONS.md` (flow analyze terminado), O
|
|
200
|
-
- `DELIVERY.md` (flow design entregado), O
|
|
201
|
-
- `DESIGN.md` (decisión de diseño documentada sin código).
|
|
202
|
-
|
|
203
|
-
Casos de uso típicos:
|
|
204
|
-
- Sesión analyze que produjo CONCLUSIONS + roadmap pero el dev se difiere a otra sesión (post-062 es ejemplo canónico).
|
|
205
|
-
- Sesión design que entregó DELIVERY.md (specs UX/UI) sin implementación aún.
|
|
206
|
-
- Sesión exploratoria que rompió en DESIGN.md sin avanzar a code.
|
|
207
|
-
|
|
208
|
-
**Si TASKS.md tiene `[ ]` abiertos al cierre**: sugerir crear `BACKLOG.md` (ver F-F abajo) capturando lo diferido/descartado. Es lazy — solo se crea si hay valor en preservar follow-ups.
|
|
209
|
-
|
|
210
|
-
**Skip silencioso**: si la sesión es dev y no hay CONCLUSIONS/DELIVERY/DESIGN producidos, NO doctrinar el caso. El usuario debe completar la implementación o reconvertir explícitamente la sesión a analyze.
|
|
211
|
-
|
|
212
|
-
#### BACKLOG.md — artefacto opcional lazy (F-F)
|
|
213
|
-
|
|
214
|
-
Artefacto opcional por sesión que captura "lo que queda para otras sesiones": diferido, descartado o followups detectados al cierre.
|
|
215
|
-
|
|
216
|
-
**Cuándo crearlo**:
|
|
217
|
-
- TASKS.md con ≥1 ítem abierto al cierre, **o**
|
|
218
|
-
- El usuario menciona ítems a diferir/descartar, **o**
|
|
219
|
-
- Closure sin implementación (F-E.1) con items derivados que no entran al alcance de la próxima sesión.
|
|
220
|
-
|
|
221
|
-
**Trade-off rechazado**: incrustar `## Backlog` dentro de CHECKPOINT.md. Razón: CHECKPOINT = retomar **esta** sesión; BACKLOG = qué quedó pendiente **para otras**.
|
|
222
|
-
|
|
223
|
-
**Estructura mínima** (ver `references/backlog-template.md` para plantilla completa):
|
|
224
|
-
|
|
225
|
-
```markdown
|
|
226
|
-
# Backlog — session<NNN>-<flow>-<slug>
|
|
227
|
-
|
|
228
|
-
## Deferred
|
|
229
|
-
- Item con razón (out of scope, ETA insuficiente, depende de X).
|
|
230
|
-
|
|
231
|
-
## Discarded
|
|
232
|
-
- Item descartado con razón (no aplica, contraproducente, redundante).
|
|
233
|
-
|
|
234
|
-
## Followups
|
|
235
|
-
- Acción concreta para otra sesión, con sugerencia de slug y dependencia.
|
|
236
|
-
```
|
|
237
|
-
|
|
238
|
-
**Reglas**:
|
|
239
|
-
- Vive en `.workflow/sessions/<folder>/BACKLOG.md`. NO se gradúa.
|
|
240
|
-
- Consumido por `export-plan` como "Tasks abiertas heredadas" al consolidar N sesiones.
|
|
241
|
-
- Append-only en práctica (no borrar entries previas; mover items a `Discarded` con razón).
|
|
242
|
-
- Si el usuario explícitamente dice "no hay backlog para esta sesión", NO crear el archivo.
|
|
243
|
-
|
|
244
|
-
## Modo lite (/patch) — micro-lifecycle
|
|
245
|
-
|
|
246
|
-
Perfil de ceremonia reducida sobre el lifecycle, para tareas pequeñas y directas (fixes, ajustes, chores acotados). Expuesto como `/agent-workflow:patch` (azúcar) y activado por el flag `--lite` de `session-create`. **No es un flow nuevo**: es un modo de `flow=dev`. Origen: `docs/conclusiones/010` (session095).
|
|
247
|
-
|
|
248
|
-
### Cuándo usarlo
|
|
249
|
-
|
|
250
|
-
- Tarea acotada que no justifica la ceremonia completa (1-3 archivos, sin decisión de arquitectura, sin contrato FE-BE nuevo).
|
|
251
|
-
- Pero sí merece trazabilidad mínima (HISTORY + DECISIONS lazy + commit M1), a diferencia del trabajo ad-hoc sin rastro.
|
|
252
|
-
- Si la tarea es feature/refactor → NO usar lite; abrir sesión completa.
|
|
253
|
-
|
|
254
|
-
### Crear (qué cambia vs sesión normal)
|
|
255
|
-
|
|
256
|
-
```
|
|
257
|
-
agent-workflow session-create --lite --flow dev --name <slug> --objetivo "<texto>"
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
- OBJECTIVE condensado: solo `## Type` + `## Requirement` (template `PATCH_TEMPLATE`).
|
|
261
|
-
- `## Type` default `bugfix`; `chore` si la heurística lo detecta. `--lite` rechaza `feature|refactor`.
|
|
262
|
-
- Tag `kind:patch` en la columna `refs` de la fila HISTORY.
|
|
263
|
-
|
|
264
|
-
### Las 4 fases en modo lite
|
|
265
|
-
|
|
266
|
-
- **planning**: SKIP de la ceremonia. Sin auto-plan prompt, sin TASKS.md, sin DESIGN.md/S7, sin M10. El `## Requirement` es la única tarea.
|
|
267
|
-
- **execution**: loop directo. Verificar rama, cambio mínimo, diff, DECISIONS sólo si no es obvio (igual que `implement` flat). La doctrina bugfix (3 pasos) aplica si el cambio lo amerita; para un fix trivial el paso 1 (root-cause) se salta con justificación inline.
|
|
268
|
-
- **validation**: la que aporte el cambio (test puntual si aplica). No formal.
|
|
269
|
-
- **closure**: condensado. Inspección mínima del diff (sin el cleanup-gate elaborado de §1.5). Commit M1 (propose-then-execute) directo. **No gradúa** por default; si surge una decisión que merece persistir → `decision` como en cualquier sesión.
|
|
270
|
-
|
|
271
|
-
### Escalado
|
|
272
|
-
|
|
273
|
-
**Upgrade in-place** (lite → completo) — caso principal. Señales de que la tarea creció:
|
|
274
|
-
- Toca >3 archivos o ≥2 fuentes.
|
|
275
|
-
- Requiere scripts SQL / cambios de BD.
|
|
276
|
-
- El cambio resulta ser feature/refactor (no un fix acotado).
|
|
277
|
-
|
|
278
|
-
Cuando el AI detecta una señal: **proponer** (no auto-escalar) vía `AskUserQuestion` (estilo S2): "Esto creció. ¿Promovemos a sesión dev completa?". Si el usuario acepta, promover **en la misma sesión**:
|
|
279
|
-
1. Quitar el tag `kind:patch` de la fila HISTORY.
|
|
280
|
-
2. Generar TASKS.md (auto-plan).
|
|
281
|
-
3. Si el Type sube a feature/refactor → disparar DESIGN.md + S7 antes de seguir.
|
|
282
|
-
|
|
283
|
-
No fragmenta (a diferencia de `--from`, que queda como alternativa manual si el usuario prefiere separar en dos sesiones).
|
|
284
|
-
|
|
285
|
-
**Downgrade** (completo → lite) — preventivo, no a mitad. El valor está en sugerir `--lite` al inicio (heurística / auto-plan) antes de invertir en TASKS/DESIGN, no en des-escalar una sesión ya armada.
|
|
286
|
-
|
|
287
|
-
### Exports
|
|
288
|
-
|
|
289
|
-
Los exports (`release-data`) colapsan las sesiones `kind:patch`: se agrupan/resumen (no una entrada completa por patch) para no inflar informes.
|
|
290
|
-
|
|
291
|
-
## Cerrar sesión
|
|
292
|
-
|
|
293
|
-
### 0. Detección de items abiertos → sugerir BACKLOG.md (F-F)
|
|
294
|
-
|
|
295
|
-
Antes de graduar, ejecutar:
|
|
296
|
-
|
|
297
|
-
```
|
|
298
|
-
agent-workflow tasks-data --code <CODE> --only-open
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
Si `open > 0` o si el usuario menciona items diferidos/descartados durante el cierre: sugerir crear `BACKLOG.md` siguiendo `references/backlog-template.md`. Lazy — solo crear si hay valor (≥1 item con razón clara). Si el usuario rechaza o no hay items, skip silencioso.
|
|
302
|
-
|
|
303
|
-
Reglas:
|
|
304
|
-
- NO bloquear el cierre por items abiertos (el cierre sin impl/sin tareas completas es válido per F-E.1).
|
|
305
|
-
- NO crear BACKLOG.md vacío ni con placeholders.
|
|
306
|
-
- BACKLOG.md no se gradúa; queda en `.workflow/sessions/<folder>/BACKLOG.md`.
|
|
307
|
-
|
|
308
|
-
### 1. Graduar artefactos (6 kinds — DEC-003)
|
|
309
|
-
|
|
310
|
-
Sólo 6 kinds graduan al cerrar. El resto vive en la sesión y no se gradúa por default.
|
|
311
|
-
|
|
312
|
-
| Kind | Comando | Categoría destino |
|
|
313
|
-
|---|---|---|
|
|
314
|
-
| `decision` | `agent-workflow graduate --kind decision --session <CODE> --id DEC-NNN --slug <kebab>` | `docs/decisiones/NNN-<slug>.md` |
|
|
315
|
-
| `manual` | `agent-workflow graduate --kind manual --session <CODE> --slug <kebab>` | `docs/manuales/NNN-<slug>.md` |
|
|
316
|
-
| `script` | **`/agent-workflow:release` exclusivamente** (no `graduate --kind script` directo) | `docs/scripts/NNN-sessionXXX-<slug>/` |
|
|
317
|
-
| `especificacion` | `agent-workflow graduate --kind especificacion --session <CODE> --slug <kebab>` | `docs/especificaciones/NNN-<slug>/` |
|
|
318
|
-
| `conclusion` | `agent-workflow graduate --kind conclusion --session <CODE> --slug <kebab>` (opt-in; default = no graduar) | `docs/conclusiones/NNN-<slug>.md` |
|
|
319
|
-
| `release` | **`/agent-workflow:release` exclusivamente** | `docs/release/NNN-informe-release.md` |
|
|
320
|
-
|
|
321
|
-
**Eliminados del modelo nuevo**: `plan`, `refactor`, `design`, `design-system`, `propuesta`, `postmortem`, `analysis`. Estos artefactos:
|
|
322
|
-
- Se quedan en `.workflow/sessions/<folder>/` (no se gradúan).
|
|
323
|
-
- O se promueven manualmente a `manual` / `especificacion` si el usuario decide curarlos.
|
|
324
|
-
|
|
325
|
-
**Regla absoluta del destino (DEC-002)**: la graduación respeta `workspace_mode` sin prompt por sesión. Hub mode → hub root (`<hub>/docs/<categoria>/`); project mode → cwd (`<cwd>/docs/<categoria>/`). Eliminado M12. Regla canónica completa: `references/graduacion-routing.md`.
|
|
326
|
-
|
|
327
|
-
### `docs/referencias/` transversal (DEC-004 v2)
|
|
328
|
-
|
|
329
|
-
Material de referencia del usuario (mockups, especificaciones, exports, glosarios, capturas, etc.) vive en una única carpeta transversal al workspace: `<workspace-root>/docs/referencias/`. En hub mode el path es `<hub-root>/docs/referencias/`; en single-repo es `<cwd>/docs/referencias/`. Cualquier sesión activa puede leer las referencias sin tener que subirlas por-sesión.
|
|
330
|
-
|
|
331
|
-
- **Único path canónico**: `docs/referencias/`. La carpeta legacy `.workflow/sessions/<folder>/referencias/` (DEC-004 v1) **no se lee** bajo ningún flow. Si una sesión cerrada la tiene, queda como histórico; el rescate de contenido pasa por `agent-workflow:migrate` opt-in.
|
|
332
|
-
- **Manual del usuario**: cualquier formato (md, pdf, xlsx, png, txt, etc.). El usuario coloca archivos ahí; la sub-estructura interna es libre.
|
|
333
|
-
- **Lectura del AI**: cualquier sesión (flow=dev/design/analyze) lee referencias relevantes al OBJECTIVE on-demand. Sin pre-procesamiento ni índices.
|
|
334
|
-
- **El AI no escribe** salvo solicitud explícita ("guardá esto en referencias", "agregá este wireframe a referencias").
|
|
335
|
-
- **Lazy**: la carpeta no se crea automáticamente; el workspace puede sembrar `docs/referencias/README.md` describiendo el contrato.
|
|
336
|
-
- **No se gradúa**: queda en `docs/referencias/`, fuera del flujo de graduación de las 6 kinds.
|
|
337
|
-
|
|
338
|
-
**Histórico DEC-004**: v1 (sesiones previas): `.workflow/sessions/<folder>/referencias/` por sesión. v2 (session080-dev-referencias-globales): mover a `docs/referencias/` transversal y eliminar lectura legacy.
|
|
339
|
-
|
|
340
|
-
### 1.5. Inspección y limpieza pre-commit (closure cleanup gate)
|
|
341
|
-
|
|
342
|
-
Gate canónico de calidad. Corre entre paso 1 (graduate) y paso 2 (propose commits). Inspecciona el diff working-tree por fuente dirty, categoriza hallazgos y propone correcciones antes de M1. Aplicación del anchor universal `agent-workflow:closure-cleanup` (ver `doctrine/rules/SKILL.md`).
|
|
343
|
-
|
|
344
|
-
**Skip silencioso**:
|
|
345
|
-
- Si todas las fuentes tienen `dirty=false` (nada que limpiar).
|
|
346
|
-
- Si el sumario de hallazgos es 0 tras inspección (working tree ya limpio).
|
|
347
|
-
|
|
348
|
-
**Pasos**:
|
|
349
|
-
|
|
350
|
-
1. Ejecutar `agent-workflow sources --session <CODE>` para refrescar `dirty` por fuente.
|
|
351
|
-
2. Para cada fuente con `dirty=true`:
|
|
352
|
-
- Leer diff: `git -C <path> diff <main_branch>...HEAD` (limitar a archivos cambiados; usar `--stat` primero para tamaño).
|
|
353
|
-
- Componer `agent-workflow:coding-standards` (anchor #5 del bundle `/rules`) para reglas por stack del path.
|
|
354
|
-
- Categorizar hallazgos:
|
|
355
|
-
- **Comentarios redundantes** — qué obvio, código muerto comentado, TODO sin owner/fecha, headers decorativos.
|
|
356
|
-
- **Complejidad cognitiva** — métodos largos (>50 líneas), nesting profundo (>3), early-return ausente, condicionales anidados.
|
|
357
|
-
- **Antipatrones** — `catchError(() => of([]))`, magic numbers, side effects no declarados, god class/method, lógica replicada FE+BE.
|
|
358
|
-
- **Code smells** — DRY violado, naming oscuro, duplicación con `shared/`/`common/`, validación post-uso, mutación de parámetros.
|
|
359
|
-
- **Código muerto** — imports sin usar, branches inalcanzables, variables huérfanas, funciones no llamadas.
|
|
360
|
-
- Producir reporte breve: máximo 1 página por fuente, agrupado por categoría, cada hallazgo con `file:line` + 1 línea de fix sugerido.
|
|
361
|
-
3. Si la suma de hallazgos es 0 en todas las fuentes → skip silencioso al paso 2 (propose commits).
|
|
362
|
-
4. Disparar `AskUserQuestion` con spec de M13 (`references/prompts-catalog.md#M13`). N questions tab-por-fuente, header `<alias>`, opciones: "Aprobar fixes sugeridos (Recomendado)" / "Sólo reportar (no tocar)" / "Saltar esta fuente". Other = nota custom o fix manual del usuario. NO narrar la pregunta en texto plano.
|
|
363
|
-
5. Por cada fuente con opción 1 aprobada: aplicar edits acotados (`Edit`/`MultiEdit` por archivo, mostrar diff antes/después). Sin auto-rewrite masivo; cada edit local y reversible.
|
|
364
|
-
6. Por cada fuente con opción 2: dejar el reporte en `CHECKPOINT.md` como "Hallazgos pendientes" sin modificar working tree.
|
|
365
|
-
7. Re-ejecutar `agent-workflow sources --session <CODE>` para refrescar `dirty` tras edits aprobados.
|
|
366
|
-
|
|
367
|
-
**Sandbox plan-mode**: describir hallazgos por categoría en el plan file (paths + razones agrupadas). NO ejecuta `Edit`/`Write`/`Bash` mutante. M13 no se dispara.
|
|
368
|
-
|
|
369
|
-
**Composición** (SRP — el gate no duplica reglas):
|
|
370
|
-
- `agent-workflow:coding-standards` — fuente de verdad de qué es "bien".
|
|
371
|
-
- `agent-workflow:redaccion-simple` — formato del reporte (frases cortas, listas, sin jerga).
|
|
372
|
-
- `agent-workflow:branch-verification` — implícita; las fuentes ya vienen verificadas desde execution.
|
|
373
|
-
|
|
374
|
-
**No alcances**:
|
|
375
|
-
- NO reemplaza linter/formatter del stack (ESLint, Spotless, Prettier, Checkstyle, etc.) — el gate complementa.
|
|
376
|
-
- NO refactors estructurales mayores. Esos van a sesiones `## Type: refactor` con Strangler Fig.
|
|
377
|
-
- NO ejecuta tests — inspección estática del diff.
|
|
378
|
-
- NO modifica artefactos ya graduados en paso 1 (vivien en `docs/<categoria>/`, fuera del scope del gate).
|
|
379
|
-
|
|
380
|
-
### 2. Proponer commits por fuente afectada (propose-then-execute)
|
|
381
|
-
|
|
382
|
-
Aplicación canónica del patrón **universal** definido en `references/commits-policy.md` (Regla 3) — closure es uno de 3 disparadores del prompt M1 (los otros 2: solicitud explícita con/sin sesión activa). El flujo siguiente describe la variante auto-disparada por closure; el patrón completo (bypass por mensaje literal, fuera de sesión, etc.) vive en el canon.
|
|
383
|
-
|
|
384
|
-
Antes de compactar, ejecutar el **commit prompt** definido en `references/commits-policy.md` (Regla 3) y `references/prompts-catalog.md#M1`:
|
|
385
|
-
|
|
386
|
-
1. `agent-workflow sources --session <CODE>` → leer `sources[]` con `dirty` y `current_branch` por fuente.
|
|
387
|
-
2. Si todas tienen `dirty=false` → **skip silencioso**. Continuar al paso 4.
|
|
388
|
-
3. Si hay 1+ fuentes con `dirty=true`, invocar **una sola** `AskUserQuestion` con N questions tab-por-fuente (N = #fuentes-dirty, máx 4 simultáneas). Spec literal de cada question, headers, opciones y manejo del Other → ver `references/prompts-catalog.md#M1`. Resumen operacional:
|
|
389
|
-
- Header de cada tab: `<alias>` puro (ej. `core`, `dev`).
|
|
390
|
-
- 2 opciones explícitas: "Aprobar sugerido (Recomendado)" con el mensaje canónico (1 línea, ≤72 chars, tag `session<CODE>`, sin co-author, ver `commits-policy.md` regla 2) / "Saltar esta fuente".
|
|
391
|
-
- `Other` auto-inyectado = mensaje de commit custom.
|
|
392
|
-
- Por cada question respondida: si aprueba o el usuario escribió en Other, ejecutar `git commit -m "<msg>"` **solo en esa fuente** (`git -C <path>`), respetando hooks (sin `--no-verify`).
|
|
393
|
-
- Si la fuente tiene `match=false` (rama inesperada), omitirla del prompt — abortar commit ahí, avisar al usuario y dejar que alinee la rama primero.
|
|
394
|
-
- Si N > 4 fuentes dirty (caso excepcional): ejecutar en tandas. Registrar parcial en `CHECKPOINT.md` entre tandas.
|
|
395
|
-
4. Re-ejecutar `agent-workflow sources --session <CODE>` para verificar que las fuentes aprobadas quedaron limpias y registrar en `CHECKPOINT.md`.
|
|
396
|
-
|
|
397
|
-
Reglas absolutas: nunca `--amend`, nunca `git push`, nunca commits en fuentes no aprobadas, nunca `--no-verify`. Si un hook pre-commit falla, mostrar el error y dejar al usuario decidir.
|
|
398
|
-
|
|
399
|
-
### 3. Compact automático
|
|
400
|
-
|
|
401
|
-
1. Invocar skill `compact` → escribe CHECKPOINT.md final + dispara `/compact` host.
|
|
402
|
-
2. Tras `/compact`, contexto liberado. Sesión cerrada en HISTORY pero con CHECKPOINT.md por si retoma.
|
|
403
|
-
|
|
404
|
-
### 4. Cerrar formalmente
|
|
405
|
-
|
|
406
|
-
```
|
|
407
|
-
agent-workflow session-close --code <CODE> \
|
|
408
|
-
--graduated-decisions "001-slug1,002-slug2" \
|
|
409
|
-
--graduated-plan 001-plan-slug \
|
|
410
|
-
--graduated-scripts NNN-sessionXXX-<slug>
|
|
411
|
-
```
|
|
412
|
-
|
|
413
|
-
## Retomar sesión
|
|
414
|
-
|
|
415
|
-
1. `agent-workflow checkpoint-read --code <CODE>` (si existe).
|
|
416
|
-
2. Si no, fallback `agent-workflow session-resume --code <CODE>`.
|
|
417
|
-
3. Aplicar el **bloque común de verificación** descrito en "Verificación interactiva de ramas". El usuario puede haber cambiado de rama o introducido cambios sin commit entre sesiones. Sin consistencia, no avanzar.
|
|
418
|
-
4. Presentar resumen + continuar desde fase actual.
|
|
419
|
-
|
|
420
|
-
## Verificación interactiva de ramas (canon — invocado en pasos 6/retomar/execution)
|
|
421
|
-
|
|
422
|
-
Bloque común que el AI **debe** seguir. Detalles del flujo y mensajes en `references/branch-verification.md`.
|
|
423
|
-
|
|
424
|
-
```
|
|
425
|
-
agent-workflow sources [--session CODE] [--scope alias1,alias2]
|
|
426
|
-
```
|
|
427
|
-
|
|
428
|
-
El payload incluye `sources[]` (per-fuente: `match`, `dirty`, `current_branch`, `expected_work_branch`, `flow`), `cross_source_consistent` y `divergent_sources`. El flow se resuelve automáticamente desde la sesión activa; para sesiones `flow=analyze` la rama esperada cae a `main_branch` (típicamente `certificacion`) cuando no se declaran branches en la sesión.
|
|
429
|
-
|
|
430
|
-
**Decisión por fuente** (orden):
|
|
431
|
-
1. `cross_source_consistent=false` (hub mode con divergencia no declarada) → **hard gate**. Mostrar matriz `alias → current → expected` (de `divergent_sources`) y disparar `AskUserQuestion`:
|
|
432
|
-
- "Alinear todas a una misma rama" (preguntar cuál y aplicar Caso A por fuente).
|
|
433
|
-
- "Declarar la divergencia explícita" (re-crear o `project-md-upsert --update-phase <folder> --branches alias:rama,...` con valores distintos).
|
|
434
|
-
- "Cancelar acción".
|
|
435
|
-
No avanzar hasta resolver.
|
|
436
|
-
2. Para cada fuente con `match=false`:
|
|
437
|
-
- `dirty=false` → **Caso A** (`AskUserQuestion`): "¿Hago `git checkout <expected>` en `<alias>`?" / "Mantener current y actualizar la sesión" / "Cancelar".
|
|
438
|
-
- `dirty=true` → **Caso B**: pausar y esperar resolución manual del usuario. Listar archivos modificados. NO ofrecer checkout. Reintentar el check después de "listo/continúa".
|
|
439
|
-
3. Para fuentes con `flow=analyze` y `match=true` que durante execution el usuario decide editar: **Caso C** (proactivo del AI): preguntar nombre de rama de trabajo, verificar existencia con `git rev-parse --verify`, ofrecer `checkout` o `checkout -b` desde `main_branch`, registrar en sesión vía `project-md-upsert --update-phase`.
|
|
440
|
-
|
|
441
|
-
**Reglas absolutas**:
|
|
442
|
-
- Nunca ejecutar `git stash`, `git reset --hard`, `git checkout -- .`, `git restore .`, `git clean` sin confirmación explícita del usuario para esa fuente.
|
|
443
|
-
- Después de cualquier acción git, re-ejecutar `agent-workflow sources --scope <alias>` para confirmar el nuevo estado.
|
|
444
|
-
- Si el usuario rechaza todas las opciones, abortar la acción que disparó el check (no avanzar).
|
|
445
|
-
|
|
446
|
-
## Listar sesiones
|
|
447
|
-
|
|
448
|
-
```
|
|
449
|
-
agent-workflow sessions [--include-legacy]
|
|
450
|
-
```
|
|
451
|
-
|
|
452
|
-
## Reglas generales
|
|
453
|
-
|
|
454
|
-
- **Sin fallbacks automáticos**: explicar antes de aplicar.
|
|
455
|
-
- **AW-PROJECT obligatorio**: si falta, proponer project-init/hub-init.
|
|
456
|
-
- **Fuentes globales**: el proyecto las declara una vez; las sesiones sólo indican ramas.
|
|
457
|
-
- **BD: scripts versionados, no ejecución directa**. MCP `<mcp-cert>`/`<mcp-prod>` son read-only por contrato (SELECT, EXPLAIN, `\d`). Cualquier mutación (INSERT/UPDATE/DELETE/DDL) se materializa como script en `docs/scripts/` del workspace de la fuente; el AI nunca ejecuta el script — el usuario lo aplica manualmente y confirma post-ejecución antes de cerrar la tarea. Excepción única: el usuario explícitamente delega ejecución por bloque.
|
|
458
|
-
- **Moderación en analyze (anti sobre-análisis)**: en flow=analyze el output escala con el scope que el stakeholder pidió, no con la madurez del hub. No inventar decisiones/riesgos no planteados, asumir la infra existente como disponible, y proponer máx 1 sesión dev derivada por default. Canon: `analyze-workflow` §"Moderación" + `analyze-conclude` (modality=technical).
|
|
459
|
-
- **No tocar sesiones de otro flow** sin pedir cambio de plugin/comando.
|
|
460
|
-
|
|
461
|
-
## Recursos adicionales
|
|
462
|
-
|
|
463
|
-
- **`references/lifecycle-deep.md`** — Plan agent details, sub-agente per-flow, hub mode, plan mode, composición dinámica, compatibilidad legacy.
|
|
464
|
-
- **`references/branch-verification.md`** — flujo cuando rama no coincide.
|
|
465
|
-
- **`references/commits-policy.md`** — política controlada de commits cross-plugin (anchor `agent-workflow:commits-policy`). Define las 5 reglas: prohibición de commits autónomos, formato canónico, propose-then-execute universal (M1) en cualquier solicitud o mención de commit, interacción con release/graduate, y bypass por mensaje literal.
|
|
466
|
-
- **`references/specialty-decision-tree.md`** — árbol completo para choose_specialty.
|
|
467
|
-
- **`references/topic-change-rules.md`** — heurística + ejemplos.
|
|
468
|
-
- **`references/auto-plan-rules.md`** — disparadores skip/lite/full.
|
|
469
|
-
- **`references/sandbox-readonly-rules.md`** — reglas universales de plan mode (canon).
|
|
470
|
-
- **shared-contract.md §14-§19** — contrato del lifecycle universal.
|
|
471
|
-
- **`agent-workflow:redaccion-simple`** — guía transversal de redacción para todos los artefactos agent-workflow (frases cortas, listas, sin jerga). Aplicar al escribir OBJECTIVE/TASKS/DECISIONS/EVIDENCE/FINDINGS/CONCLUSIONS/CHECKPOINT/STATUS/PROBLEM/IDEAS/DELIVERY.
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# Auto-plan rules
|
|
2
|
-
|
|
3
|
-
> Anchor `agent-workflow:auto-plan-rules`. Disparadores que decide `auto-plan` antes de empezar execution: `skip` (no plan), `lite` (plan inline en TASKS.md sin TodoWrite), `full` (TASKS.md detallado + TodoWrite).
|
|
4
|
-
|
|
5
|
-
## CLI runtime
|
|
6
|
-
|
|
7
|
-
```
|
|
8
|
-
agent-workflow auto-plan-decide --code <NNN>
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
Devuelve `{ decision: skip|lite|full, reason: <text> }`.
|
|
12
|
-
|
|
13
|
-
## Heurísticas
|
|
14
|
-
|
|
15
|
-
### `skip` — sin plan
|
|
16
|
-
|
|
17
|
-
Aplica cuando:
|
|
18
|
-
|
|
19
|
-
- Bugfix de 1 línea / cambio trivial de configuración / typo.
|
|
20
|
-
- OBJECTIVE.md `## Type: chore` o `## Type: docs` (alias legacy `## Tipo` legible vía parser bilingüe). Estos tipos NO producen `DESIGN.md` ni disparan S7 (skip silencioso).
|
|
21
|
-
- Sesión flow=analyze (los analyze tienen su propio shape de plan en EVIDENCE/FINDINGS).
|
|
22
|
-
- El usuario declara explícito "vamos directo, sin plan".
|
|
23
|
-
|
|
24
|
-
### `lite` — plan inline en TASKS.md
|
|
25
|
-
|
|
26
|
-
Aplica cuando:
|
|
27
|
-
|
|
28
|
-
- 1-3 archivos a tocar, scope acotado.
|
|
29
|
-
- OBJECTIVE.md tiene 1-2 acceptance criteria.
|
|
30
|
-
- Bugfix con 1 fase (write test → fix → verify).
|
|
31
|
-
- Refactor pequeño que no merece tracking via TodoWrite.
|
|
32
|
-
|
|
33
|
-
### `full` — TASKS.md detallado + TodoWrite tracking
|
|
34
|
-
|
|
35
|
-
Aplica cuando:
|
|
36
|
-
|
|
37
|
-
- ≥4 archivos involucrados.
|
|
38
|
-
- OBJECTIVE.md ≥3 acceptance criteria.
|
|
39
|
-
- `## Type: feature` o `## Type: refactor` en OBJECTIVE.md (canónico v2.8+; alias legacy `## Tipo` aceptado por parser bilingüe). El modelo phased Phase 0-5 implica plan completo + DESIGN.md + S7 gate antes de Phase 0.
|
|
40
|
-
- Multi-phase work (analyze → implement → integrate).
|
|
41
|
-
- Cross-source (toca ≥2 fuentes en hub workspace).
|
|
42
|
-
|
|
43
|
-
## Decisión por flow
|
|
44
|
-
|
|
45
|
-
| Flow | Default | Override |
|
|
46
|
-
|---|---|---|
|
|
47
|
-
| dev | `lite` | `full` si `## Type: feature\|refactor` (alias legacy `## Tipo`) o ≥4 archivos |
|
|
48
|
-
| design | `lite` | `full` si flow=design Type=system (toca design-system completo) |
|
|
49
|
-
| analyze | `skip` | `lite` si modalidad=incident (post-mortem requiere ordering) |
|
|
50
|
-
|
|
51
|
-
## Override manual
|
|
52
|
-
|
|
53
|
-
Usuario puede declarar `--plan-mode skip|lite|full` en `aw session-create` o `aw auto-plan-decide`.
|
|
54
|
-
|
|
55
|
-
## Composición con superpowers
|
|
56
|
-
|
|
57
|
-
`auto-plan-decide` returning `full` → la skill `agent-workflow:session` invoca también `superpowers:writing-plans` para que el plan de execution tenga la estructura recomendada (review checkpoints, success criteria explícitos).
|
|
58
|
-
|
|
59
|
-
## Refs
|
|
60
|
-
|
|
61
|
-
- `references/lifecycle-deep.md` §Composición dinámica de especialidades.
|
|
62
|
-
- CLI: `agent-workflow auto-plan-decide --help`.
|
|
63
|
-
- `superpowers:writing-plans` — composición al disparar `full`.
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
# Template — `BACKLOG.md` (artefacto opcional lazy de sesión)
|
|
2
|
-
|
|
3
|
-
Plantilla canónica del archivo en `.workflow/sessions/<folder>/BACKLOG.md`. Lazy: solo se crea si hay valor en preservar items pendientes al cierre.
|
|
4
|
-
|
|
5
|
-
## Cuándo crear
|
|
6
|
-
|
|
7
|
-
- ≥1 ítem abierto en TASKS.md al cierre.
|
|
8
|
-
- Usuario menciona items diferidos/descartados durante la sesión.
|
|
9
|
-
- Closure sin implementación (F-E.1) con followups derivados que no entran a la próxima sesión inmediata.
|
|
10
|
-
|
|
11
|
-
## Cuándo NO crear
|
|
12
|
-
|
|
13
|
-
- Sesión cerrada con TASKS.md 100% completas y sin followups explícitos.
|
|
14
|
-
- Usuario indica explícitamente "no hay backlog para esta sesión".
|
|
15
|
-
- BACKLOG vacío sería peor que su ausencia (no escribir secciones placeholder).
|
|
16
|
-
|
|
17
|
-
## Estructura
|
|
18
|
-
|
|
19
|
-
````markdown
|
|
20
|
-
# Backlog — session<NNN>-<flow>-<slug>
|
|
21
|
-
|
|
22
|
-
## Deferred
|
|
23
|
-
|
|
24
|
-
Items con valor pero fuera del alcance temporal de esta sesión.
|
|
25
|
-
|
|
26
|
-
- **D1**: <descripción accionable>. Razón: <out-of-scope/ETA-insuficiente/dependencia-X>. Sugerencia: <abrir sessionNNN-flow-slug>.
|
|
27
|
-
- **D2**: <descripción>. Razón: <...>.
|
|
28
|
-
|
|
29
|
-
## Discarded
|
|
30
|
-
|
|
31
|
-
Items evaluados y descartados, con razón explícita.
|
|
32
|
-
|
|
33
|
-
- **X1**: <descripción>. Razón: <no-aplica/contraproducente/redundante-con-Y>.
|
|
34
|
-
- **X2**: <descripción>. Razón: <...>.
|
|
35
|
-
|
|
36
|
-
## Followups
|
|
37
|
-
|
|
38
|
-
Acciones concretas para otras sesiones, con sugerencia de slug y dependencia.
|
|
39
|
-
|
|
40
|
-
- **F1**: <acción>. Sesión sugerida: `sessionNNN-<flow>-<slug>`. Dependencia: <ninguna|sessionYYY ok>. ETA: ≈<N>h.
|
|
41
|
-
- **F2**: <acción>. Sesión sugerida: ...
|
|
42
|
-
|
|
43
|
-
## Notas
|
|
44
|
-
|
|
45
|
-
- Append-only en práctica. No borrar entries; mover a `Discarded` con razón si cambia el contexto.
|
|
46
|
-
- Consumido por `/agent-workflow:export-plan` como "Tasks abiertas heredadas" del corpus.
|
|
47
|
-
- NO se gradúa al canon. Vive solo en `.workflow/sessions/<folder>/BACKLOG.md`.
|
|
48
|
-
````
|
|
49
|
-
|
|
50
|
-
## Ejemplo real (smoke)
|
|
51
|
-
|
|
52
|
-
````markdown
|
|
53
|
-
# Backlog — session055-analyze-docs-from-sessions
|
|
54
|
-
|
|
55
|
-
## Deferred
|
|
56
|
-
|
|
57
|
-
- **D1**: Implementar export-conclusions skill. Razón: scope inicial de session055 cerró en propuesta + 4 comandos (no 6). Sugerencia: abrir sessionNNN-dev-export-conclusions post-062.
|
|
58
|
-
- **D2**: Plan de deprecación Fase 2 (remover `/agent-workflow:release` legacy). Razón: requiere ≥1 mes de uso de la familia export-* nueva. Sugerencia: revisar Q3 2026.
|
|
59
|
-
|
|
60
|
-
## Discarded
|
|
61
|
-
|
|
62
|
-
- **X1**: Modelo "1 skill genérico de docs" (`docs-generator`). Razón: feedback explícito del usuario — prefiere responsabilidades separadas con naming `export-*`.
|
|
63
|
-
|
|
64
|
-
## Followups
|
|
65
|
-
|
|
66
|
-
- **F1**: Decisión meta sobre nuevos `kind`s (arquitectura, funcional, documentation) en modelo de graduación. Sesión sugerida: `sessionNNN-analyze-graduation-kinds-fase-2`. Dependencia: ≥1 mes de uso. ETA: ≈2h.
|
|
67
|
-
- **F2**: Validar contratos cross-host (Claude Code + Codex) para los 4 commands export-* nuevos. Sesión sugerida: `sessionNNN-dev-validacion-cross-host-export`. Dependencia: ninguna. ETA: ≈1h.
|
|
68
|
-
````
|
|
69
|
-
|
|
70
|
-
## Reglas de uso
|
|
71
|
-
|
|
72
|
-
- **Frontmatter**: NO usar. BACKLOG.md no requiere YAML; los IDs (`D1`, `X1`, `F1`) ya proveen estructura.
|
|
73
|
-
- **IDs**: prefijos `D` (Deferred), `X` (Discarded), `F` (Followups). Numerados secuencialmente por sección. Reutilizables si se mueve item entre secciones (mantener el prefijo del estado actual).
|
|
74
|
-
- **Idioma**: ES default (igual que otros artefactos del workspace).
|
|
75
|
-
- **Concisión**: 1-2 líneas por item; sin prosa extensa.
|
|
76
|
-
- **Razón obligatoria**: cada `D` y `X` debe declarar razón explícita. Sin razón → mejor no incluir.
|
|
77
|
-
- **Sesión sugerida en `F`**: best-effort. Si no hay slug claro, omitir y dejar solo la acción.
|
|
78
|
-
|
|
79
|
-
## Integración con otros artefactos
|
|
80
|
-
|
|
81
|
-
| Artefacto | Relación con BACKLOG.md |
|
|
82
|
-
|---|---|
|
|
83
|
-
| `TASKS.md` | Items `[ ]` no cerrados → candidatos a `Deferred` o `Followups`. |
|
|
84
|
-
| `CHECKPOINT.md` | NO duplicar. CHECKPOINT = estado para retomar; BACKLOG = pendiente para otras sesiones. |
|
|
85
|
-
| `CONCLUSIONS.md` | Si analyze produjo recomendations no incluidas en alcance → registrar como `Followups`. |
|
|
86
|
-
| `export-plan` | Lee BACKLOG.md de las N sesiones consolidadas como input adicional al plan derivado. |
|
|
87
|
-
| `export-conclusions` | NO consume BACKLOG (su input son CONCLUSIONS.md). |
|
|
88
|
-
|
|
89
|
-
## Reglas absolutas
|
|
90
|
-
|
|
91
|
-
- Lazy: no crear archivo vacío.
|
|
92
|
-
- Append-only: no borrar entries históricas.
|
|
93
|
-
- No graduar: BACKLOG queda en sesión.
|
|
94
|
-
- Mover entre secciones con `(antes: D1 en sessionXXX)` como nota para trazabilidad si aplica.
|
|
95
|
-
- Si una sesión retoma items de un BACKLOG previo → mencionarlo en `OBJECTIVE.md ## Origin` (no en BACKLOG).
|