devflow-kit 1.8.3 → 2.0.1
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/CHANGELOG.md +182 -7
- package/LICENSE +1 -1
- package/README.md +139 -219
- package/dist/cli/agents-view/index.js +9 -0
- package/dist/cli/agents-view/render.js +310 -0
- package/dist/cli/agents-view/state.js +423 -0
- package/dist/cli/agents-view/terminal.js +179 -0
- package/dist/cli/commands/agents.js +585 -0
- package/dist/cli/commands/ambient.js +231 -0
- package/dist/cli/commands/capture.js +133 -0
- package/dist/cli/commands/compliance-prompts.js +174 -0
- package/dist/cli/commands/compliance.js +337 -0
- package/dist/cli/commands/context.js +66 -0
- package/dist/cli/commands/debug.js +122 -0
- package/dist/cli/commands/flags.js +119 -0
- package/dist/cli/commands/hud.js +229 -0
- package/dist/cli/commands/init-seed.js +226 -0
- package/dist/cli/commands/init.js +1786 -0
- package/dist/cli/commands/knowledge/index.js +25 -0
- package/dist/cli/commands/knowledge/list.js +115 -0
- package/dist/cli/commands/knowledge/toggle.js +84 -0
- package/dist/cli/commands/learning.js +311 -0
- package/dist/cli/commands/legacy-hooks.js +40 -0
- package/dist/cli/commands/memory.js +349 -0
- package/dist/cli/commands/proxy.js +1435 -0
- package/dist/cli/commands/rules.js +334 -0
- package/dist/cli/commands/safe-delete.js +140 -0
- package/dist/cli/commands/security.js +179 -0
- package/dist/cli/commands/skills.js +140 -0
- package/dist/cli/commands/uninstall.js +1214 -0
- package/dist/cli.js +35 -10
- package/dist/commands/bug-analysis.md +400 -0
- package/dist/commands/code-review.md +403 -0
- package/dist/commands/debug.md +282 -0
- package/dist/commands/dynamic-build.md +972 -0
- package/dist/commands/dynamic-plan.md +383 -0
- package/dist/commands/dynamic-profile.md +206 -0
- package/dist/commands/dynamic-tickets.md +583 -0
- package/dist/commands/explore.md +208 -0
- package/dist/commands/implement.md +590 -0
- package/dist/commands/plan.md +570 -0
- package/dist/commands/release.md +206 -0
- package/dist/commands/research.md +212 -0
- package/dist/commands/resolve.md +731 -0
- package/dist/commands/self-review.md +251 -0
- package/dist/core/agent-frontmatter.js +209 -0
- package/dist/core/agent-models.js +556 -0
- package/dist/core/agent-state.js +44 -0
- package/dist/core/assets.js +39 -0
- package/dist/core/cache.js +205 -0
- package/dist/core/codex-auth-inspect.js +128 -0
- package/dist/core/compliance-compose.js +458 -0
- package/dist/core/compliance.js +165 -0
- package/dist/core/external-models.js +76 -0
- package/dist/core/feature-config.js +125 -0
- package/dist/core/flags.js +309 -0
- package/dist/core/fs-atomic.js +74 -0
- package/dist/core/git.js +61 -0
- package/dist/core/learning-queue-cleanup.js +92 -0
- package/dist/core/learning-tuning-config.js +78 -0
- package/dist/core/manifest.js +171 -0
- package/dist/core/migrations.js +330 -0
- package/dist/core/model-discovery.js +655 -0
- package/dist/core/observation-io.js +50 -0
- package/dist/core/observations.js +109 -0
- package/dist/core/orphan-sweep.js +92 -0
- package/dist/core/paths.js +48 -0
- package/dist/core/plugins.js +525 -0
- package/dist/core/project-paths.js +159 -0
- package/dist/core/proxy-log.js +165 -0
- package/dist/core/proxy-state.js +305 -0
- package/dist/core/safe-delete-install.js +191 -0
- package/dist/core/teammate-mode-cleanup.js +33 -0
- package/dist/hud/colors.js +13 -2
- package/dist/hud/components/config-counts.js +2 -2
- package/dist/hud/components/context-usage.js +2 -2
- package/dist/hud/components/learning-counts.js +92 -0
- package/dist/hud/components/session-cost.js +10 -2
- package/dist/hud/components/usage-quota.js +43 -8
- package/dist/hud/components/version-badge.js +14 -4
- package/dist/hud/config.js +4 -2
- package/dist/hud/cost-history.js +281 -0
- package/dist/hud/git.js +112 -71
- package/dist/hud/index.js +47 -4
- package/dist/hud/render.js +8 -20
- package/dist/hud/transcript.js +5 -6
- package/dist/targets/claude-code/claude-paths.js +106 -0
- package/dist/targets/claude-code/compliance-install.js +305 -0
- package/dist/targets/claude-code/hooks.js +9 -0
- package/dist/targets/claude-code/installer.js +458 -0
- package/dist/targets/claude-code/legacy.js +239 -0
- package/dist/targets/claude-code/post-install.js +971 -0
- package/package.json +23 -17
- package/src/assets/agents/code.md +244 -0
- package/src/assets/agents/design.md +113 -0
- package/src/assets/agents/diagnose.md +210 -0
- package/src/assets/agents/evaluate.md +117 -0
- package/src/assets/agents/git.md +938 -0
- package/src/assets/agents/knowledge.md +89 -0
- package/src/assets/agents/learning.md +203 -0
- package/src/assets/agents/research.md +134 -0
- package/src/assets/agents/review.md +220 -0
- package/src/assets/agents/scrutinize.md +95 -0
- package/src/assets/agents/simplify.md +108 -0
- package/src/assets/agents/skim.md +136 -0
- package/src/assets/agents/synthesize.md +402 -0
- package/src/assets/agents/test.md +155 -0
- package/src/assets/agents/triage.md +141 -0
- package/src/assets/agents/validate.md +103 -0
- package/src/assets/commands/_partials/_compliance.mds +5 -0
- package/src/assets/commands/_partials/_decisions.mds +20 -0
- package/src/assets/commands/_partials/_engine.mds +244 -0
- package/src/assets/commands/_partials/_factory.mds +216 -0
- package/src/assets/commands/_partials/_knowledge.mds +95 -0
- package/src/assets/commands/_partials/_plan_contract.mds +51 -0
- package/src/assets/commands/_partials/_preamble.mds +82 -0
- package/src/assets/commands/_partials/_publication.mds +7 -0
- package/src/assets/commands/_partials/_roster.mds +31 -0
- package/src/assets/commands/_partials/_ticket_template.mds +59 -0
- package/src/assets/commands/_partials/_wave.mds +123 -0
- package/src/assets/commands/bug-analysis.mds +353 -0
- package/src/assets/commands/code-review.mds +355 -0
- package/src/assets/commands/debug.mds +224 -0
- package/src/assets/commands/dynamic-build.mds +534 -0
- package/src/assets/commands/dynamic-plan.mds +244 -0
- package/src/assets/commands/dynamic-profile.mds +132 -0
- package/src/assets/commands/dynamic-tickets.mds +226 -0
- package/src/assets/commands/explore.mds +150 -0
- package/src/assets/commands/implement.mds +496 -0
- package/src/assets/commands/plan.mds +523 -0
- package/src/assets/commands/release.md +206 -0
- package/src/assets/commands/research.mds +164 -0
- package/src/assets/commands/resolve.mds +636 -0
- package/src/assets/commands/self-review.mds +156 -0
- package/src/assets/rules/accessibility.md +11 -0
- package/src/assets/rules/compliance.md +15 -0
- package/src/assets/rules/engineering.md +13 -0
- package/src/assets/rules/go.md +12 -0
- package/src/assets/rules/java.md +12 -0
- package/src/assets/rules/python.md +12 -0
- package/src/assets/rules/quality.md +14 -0
- package/src/assets/rules/react.md +11 -0
- package/src/assets/rules/reliability.md +12 -0
- package/src/assets/rules/rust.md +12 -0
- package/src/assets/rules/security.md +12 -0
- package/src/assets/rules/typescript.md +12 -0
- package/src/assets/rules/ui-design.md +11 -0
- package/src/assets/scripts/hooks/assets/orchestrator-charter.md +21 -0
- package/src/assets/scripts/hooks/background-memory-update +460 -0
- package/src/assets/scripts/hooks/capture-prompt +87 -0
- package/src/assets/scripts/hooks/capture-question +153 -0
- package/src/assets/scripts/hooks/capture-turn +105 -0
- package/src/assets/scripts/hooks/debug-trace +75 -0
- package/src/assets/scripts/hooks/decisions-usage-scan.cjs +131 -0
- package/src/assets/scripts/hooks/ensure-devflow-init +39 -0
- package/src/assets/scripts/hooks/ensure-proxy +294 -0
- package/src/assets/scripts/hooks/ensure-root-gitignore +116 -0
- package/src/assets/scripts/hooks/get-mtime +23 -0
- package/src/assets/scripts/hooks/git-marker +16 -0
- package/src/assets/scripts/hooks/hook-bootstrap +25 -0
- package/src/assets/scripts/hooks/hook-log-init +41 -0
- package/src/assets/scripts/hooks/json-helper.cjs +725 -0
- package/src/assets/scripts/hooks/json-parse +243 -0
- package/src/assets/scripts/hooks/learning-lock +44 -0
- package/src/assets/scripts/hooks/lib/decisions-format.cjs +301 -0
- package/src/assets/scripts/hooks/lib/mkdir-lock.cjs +106 -0
- package/src/assets/scripts/hooks/lib/project-paths.cjs +230 -0
- package/src/assets/scripts/hooks/lib/render-decisions.cjs +398 -0
- package/src/assets/scripts/hooks/lib/safe-path.cjs +29 -0
- package/src/assets/scripts/hooks/log-paths +24 -0
- package/src/assets/scripts/hooks/memory-worker +101 -0
- package/src/assets/scripts/hooks/pre-compact-memory +126 -0
- package/src/assets/scripts/hooks/preamble +77 -0
- package/src/assets/scripts/hooks/queue-append +120 -0
- package/src/assets/scripts/hooks/resolve-project-root +37 -0
- package/src/assets/scripts/hooks/run-hook +31 -0
- package/src/assets/scripts/hooks/session-start-context +180 -0
- package/src/assets/scripts/hooks/session-start-memory +318 -0
- package/src/assets/scripts/hooks/session-start-orchestrator +54 -0
- package/src/assets/scripts/hud.sh +5 -0
- package/src/assets/scripts/redact-secrets.cjs +410 -0
- package/src/assets/skills/accessibility/SKILL.md +145 -0
- package/src/assets/skills/accessibility/references/patterns.md +398 -0
- package/src/assets/skills/accessibility/references/sources.md +26 -0
- package/src/assets/skills/accessibility/references/violations.md +358 -0
- package/src/assets/skills/apply-decisions/SKILL.md +100 -0
- package/src/assets/skills/apply-feature-knowledge/SKILL.md +69 -0
- package/src/assets/skills/architecture/SKILL.md +138 -0
- package/src/assets/skills/architecture/references/patterns.md +378 -0
- package/src/assets/skills/architecture/references/sources.md +41 -0
- package/src/assets/skills/architecture/references/violations.md +314 -0
- package/src/assets/skills/boundary-validation/SKILL.md +119 -0
- package/src/assets/skills/boundary-validation/references/detection.md +283 -0
- package/src/assets/skills/boundary-validation/references/patterns.md +283 -0
- package/src/assets/skills/boundary-validation/references/sources.md +41 -0
- package/src/assets/skills/boundary-validation/references/violations.md +211 -0
- package/src/assets/skills/complexity/SKILL.md +150 -0
- package/src/assets/skills/compliance/SKILL.md +121 -0
- package/src/assets/skills/compliance/frameworks/gdpr/fragment.md +11 -0
- package/src/assets/skills/compliance/frameworks/gdpr/reference.md +50 -0
- package/src/assets/skills/compliance/frameworks/hipaa/fragment.md +11 -0
- package/src/assets/skills/compliance/frameworks/hipaa/reference.md +44 -0
- package/src/assets/skills/compliance/frameworks/iso-27001/fragment.md +10 -0
- package/src/assets/skills/compliance/frameworks/iso-27001/reference.md +45 -0
- package/src/assets/skills/compliance/frameworks/pci-dss/fragment.md +11 -0
- package/src/assets/skills/compliance/frameworks/pci-dss/reference.md +55 -0
- package/src/assets/skills/compliance/frameworks/soc2/fragment.md +10 -0
- package/src/assets/skills/compliance/frameworks/soc2/reference.md +53 -0
- package/src/assets/skills/compliance/frameworks/sox/fragment.md +10 -0
- package/src/assets/skills/compliance/frameworks/sox/reference.md +67 -0
- package/src/assets/skills/compliance/references/detection.md +108 -0
- package/src/assets/skills/compliance/references/sources.md +28 -0
- package/src/assets/skills/consistency/SKILL.md +140 -0
- package/src/assets/skills/database/SKILL.md +134 -0
- package/src/assets/skills/dependencies/SKILL.md +141 -0
- package/src/assets/skills/dependency-research/SKILL.md +133 -0
- package/src/assets/skills/dependency-research/references/evaluation-criteria.md +101 -0
- package/src/assets/skills/design-review/SKILL.md +155 -0
- package/src/assets/skills/design-review/references/anti-patterns.md +207 -0
- package/src/assets/skills/docs-framework/SKILL.md +190 -0
- package/src/assets/skills/docs-framework/references/patterns.md +381 -0
- package/src/assets/skills/docs-framework/references/violations.md +221 -0
- package/src/assets/skills/documentation/SKILL.md +126 -0
- package/src/assets/skills/feature-knowledge/SKILL.md +341 -0
- package/src/assets/skills/gap-analysis/SKILL.md +151 -0
- package/src/assets/skills/gap-analysis/references/check-layers.md +125 -0
- package/src/assets/skills/git/SKILL.md +287 -0
- package/src/assets/skills/git/references/github-api.md +666 -0
- package/src/assets/skills/git/references/patterns.md +324 -0
- package/src/assets/skills/git/references/sources.md +16 -0
- package/src/assets/skills/git/references/violations.md +128 -0
- package/src/assets/skills/go/SKILL.md +147 -0
- package/src/assets/skills/go/references/concurrency.md +335 -0
- package/src/assets/skills/go/references/patterns.md +278 -0
- package/src/assets/skills/go/references/sources.md +41 -0
- package/src/assets/skills/go/references/violations.md +262 -0
- package/src/assets/skills/java/SKILL.md +148 -0
- package/src/assets/skills/java/references/modern-java.md +335 -0
- package/src/assets/skills/java/references/patterns.md +311 -0
- package/src/assets/skills/java/references/sources.md +44 -0
- package/src/assets/skills/java/references/violations.md +257 -0
- package/src/assets/skills/patterns/SKILL.md +162 -0
- package/src/assets/skills/performance/SKILL.md +135 -0
- package/src/assets/skills/performance/references/patterns.md +516 -0
- package/src/assets/skills/performance/references/sources.md +41 -0
- package/src/assets/skills/performance/references/violations.md +417 -0
- package/src/assets/skills/python/SKILL.md +156 -0
- package/src/assets/skills/python/references/async.md +255 -0
- package/src/assets/skills/python/references/patterns.md +280 -0
- package/src/assets/skills/python/references/sources.md +41 -0
- package/src/assets/skills/python/references/violations.md +272 -0
- package/src/assets/skills/qa/SKILL.md +136 -0
- package/src/assets/skills/qa/references/browser-testing.md +97 -0
- package/src/assets/skills/qa/references/patterns.md +118 -0
- package/src/assets/skills/qa/references/scenario-templates.md +102 -0
- package/src/assets/skills/qa/references/sources.md +30 -0
- package/src/assets/skills/qa/references/violations.md +98 -0
- package/src/assets/skills/quality-gates/SKILL.md +152 -0
- package/src/assets/skills/quality-gates/references/stub-detection.md +135 -0
- package/src/assets/skills/react/SKILL.md +143 -0
- package/src/assets/skills/react/references/error-handling.md +179 -0
- package/src/assets/skills/react/references/forms.md +214 -0
- package/src/assets/skills/react/references/hooks.md +193 -0
- package/src/assets/skills/react/references/patterns.md +1336 -0
- package/src/assets/skills/react/references/sources.md +35 -0
- package/src/assets/skills/react/references/violations.md +570 -0
- package/src/assets/skills/regression/SKILL.md +146 -0
- package/src/assets/skills/reliability/SKILL.md +153 -0
- package/src/assets/skills/reliability/references/detection.md +66 -0
- package/src/assets/skills/reliability/references/patterns.md +151 -0
- package/src/assets/skills/reliability/references/sources.md +27 -0
- package/src/assets/skills/reliability/references/violations.md +125 -0
- package/src/assets/skills/research-codebase/SKILL.md +135 -0
- package/src/assets/skills/research-competitor/SKILL.md +145 -0
- package/src/assets/skills/research-external/SKILL.md +141 -0
- package/src/assets/skills/research-market/SKILL.md +145 -0
- package/src/assets/skills/research-technology/SKILL.md +180 -0
- package/src/assets/skills/review-methodology/SKILL.md +121 -0
- package/src/assets/skills/review-methodology/references/patterns.md +186 -0
- package/src/assets/skills/review-methodology/references/report-template.md +142 -0
- package/src/assets/skills/review-methodology/references/violations.md +125 -0
- package/src/assets/skills/rust/SKILL.md +148 -0
- package/src/assets/skills/rust/references/ownership.md +278 -0
- package/src/assets/skills/rust/references/patterns.md +247 -0
- package/src/assets/skills/rust/references/sources.md +46 -0
- package/src/assets/skills/rust/references/violations.md +252 -0
- package/src/assets/skills/security/SKILL.md +121 -0
- package/src/assets/skills/security/references/patterns.md +271 -0
- package/src/assets/skills/security/references/sources.md +41 -0
- package/src/assets/skills/security/references/violations.md +241 -0
- package/src/assets/skills/software-design/SKILL.md +143 -0
- package/src/assets/skills/software-design/references/checklist.md +259 -0
- package/src/assets/skills/software-design/references/code-smell-violations.md +189 -0
- package/src/assets/skills/software-design/references/patterns.md +359 -0
- package/src/assets/skills/software-design/references/sources.md +41 -0
- package/src/assets/skills/software-design/references/violations.md +341 -0
- package/src/assets/skills/test-driven-development/SKILL.md +197 -0
- package/src/assets/skills/testing/SKILL.md +139 -0
- package/src/assets/skills/testing/references/patterns.md +346 -0
- package/src/assets/skills/testing/references/sources.md +53 -0
- package/src/assets/skills/testing/references/violations.md +322 -0
- package/src/assets/skills/typescript/SKILL.md +150 -0
- package/src/assets/skills/typescript/references/async.md +333 -0
- package/src/assets/skills/typescript/references/patterns.md +440 -0
- package/src/assets/skills/typescript/references/sources.md +41 -0
- package/src/assets/skills/typescript/references/type-guards.md +333 -0
- package/src/assets/skills/typescript/references/utility-types.md +255 -0
- package/src/assets/skills/typescript/references/violations.md +285 -0
- package/src/assets/skills/ui-design/SKILL.md +144 -0
- package/src/assets/skills/ui-design/references/patterns.md +341 -0
- package/src/assets/skills/ui-design/references/sources.md +41 -0
- package/src/assets/skills/ui-design/references/violations.md +312 -0
- package/src/assets/skills/worktree-support/SKILL.md +92 -0
- package/src/targets/claude-code/templates/claudeignore.template +188 -0
- package/src/targets/claude-code/templates/settings.json +86 -0
- package/dist/cli.d.ts +0 -3
- package/dist/commands/ambient.d.ts +0 -18
- package/dist/commands/ambient.js +0 -137
- package/dist/commands/hud.d.ts +0 -22
- package/dist/commands/hud.js +0 -180
- package/dist/commands/init.d.ts +0 -16
- package/dist/commands/init.js +0 -738
- package/dist/commands/list.d.ts +0 -24
- package/dist/commands/list.js +0 -89
- package/dist/commands/memory.d.ts +0 -22
- package/dist/commands/memory.js +0 -175
- package/dist/commands/skills.d.ts +0 -11
- package/dist/commands/skills.js +0 -116
- package/dist/commands/uninstall.d.ts +0 -22
- package/dist/commands/uninstall.js +0 -558
- package/dist/hud/cache.d.ts +0 -14
- package/dist/hud/cache.js +0 -54
- package/dist/hud/colors.d.ts +0 -23
- package/dist/hud/components/config-counts.d.ts +0 -8
- package/dist/hud/components/context-usage.d.ts +0 -8
- package/dist/hud/components/diff-stats.d.ts +0 -3
- package/dist/hud/components/directory.d.ts +0 -3
- package/dist/hud/components/git-ahead-behind.d.ts +0 -3
- package/dist/hud/components/git-branch.d.ts +0 -3
- package/dist/hud/components/model.d.ts +0 -3
- package/dist/hud/components/release-info.d.ts +0 -3
- package/dist/hud/components/session-cost.d.ts +0 -3
- package/dist/hud/components/session-duration.d.ts +0 -3
- package/dist/hud/components/todo-progress.d.ts +0 -3
- package/dist/hud/components/usage-quota.d.ts +0 -3
- package/dist/hud/components/version-badge.d.ts +0 -3
- package/dist/hud/components/worktree-count.d.ts +0 -3
- package/dist/hud/config.d.ts +0 -10
- package/dist/hud/credentials.d.ts +0 -17
- package/dist/hud/credentials.js +0 -99
- package/dist/hud/git.d.ts +0 -7
- package/dist/hud/index.d.ts +0 -2
- package/dist/hud/render.d.ts +0 -7
- package/dist/hud/stdin.d.ts +0 -6
- package/dist/hud/transcript.d.ts +0 -7
- package/dist/hud/types.d.ts +0 -116
- package/dist/hud/usage-api.d.ts +0 -7
- package/dist/hud/usage-api.js +0 -84
- package/dist/plugins.d.ts +0 -46
- package/dist/plugins.js +0 -233
- package/dist/utils/cli.d.ts +0 -5
- package/dist/utils/cli.js +0 -14
- package/dist/utils/git.d.ts +0 -11
- package/dist/utils/git.js +0 -36
- package/dist/utils/installer.d.ts +0 -41
- package/dist/utils/installer.js +0 -195
- package/dist/utils/manifest.d.ts +0 -46
- package/dist/utils/manifest.js +0 -100
- package/dist/utils/paths.d.ts +0 -42
- package/dist/utils/paths.js +0 -106
- package/dist/utils/post-install.d.ts +0 -87
- package/dist/utils/post-install.js +0 -546
- package/dist/utils/safe-delete-install.d.ts +0 -29
- package/dist/utils/safe-delete-install.js +0 -191
- package/dist/utils/safe-delete.d.ts +0 -12
- package/plugins/devflow-accessibility/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-accessibility/skills/accessibility/SKILL.md +0 -229
- package/plugins/devflow-accessibility/skills/accessibility/references/patterns.md +0 -670
- package/plugins/devflow-accessibility/skills/accessibility/references/violations.md +0 -419
- package/plugins/devflow-ambient/.claude-plugin/plugin.json +0 -33
- package/plugins/devflow-ambient/README.md +0 -68
- package/plugins/devflow-ambient/agents/coder.md +0 -135
- package/plugins/devflow-ambient/agents/reviewer.md +0 -165
- package/plugins/devflow-ambient/agents/scrutinizer.md +0 -82
- package/plugins/devflow-ambient/agents/shepherd.md +0 -108
- package/plugins/devflow-ambient/agents/simplifier.md +0 -102
- package/plugins/devflow-ambient/agents/skimmer.md +0 -143
- package/plugins/devflow-ambient/agents/validator.md +0 -86
- package/plugins/devflow-ambient/skills/ambient-router/SKILL.md +0 -145
- package/plugins/devflow-ambient/skills/ambient-router/references/skill-catalog.md +0 -74
- package/plugins/devflow-ambient/skills/debug-orchestration/SKILL.md +0 -69
- package/plugins/devflow-ambient/skills/implementation-orchestration/SKILL.md +0 -92
- package/plugins/devflow-ambient/skills/plan-orchestration/SKILL.md +0 -71
- package/plugins/devflow-audit-claude/.claude-plugin/plugin.json +0 -19
- package/plugins/devflow-audit-claude/README.md +0 -46
- package/plugins/devflow-audit-claude/agents/claude-md-auditor.md +0 -134
- package/plugins/devflow-audit-claude/commands/audit-claude.md +0 -89
- package/plugins/devflow-code-review/.claude-plugin/plugin.json +0 -38
- package/plugins/devflow-code-review/README.md +0 -73
- package/plugins/devflow-code-review/agents/git.md +0 -277
- package/plugins/devflow-code-review/agents/reviewer.md +0 -165
- package/plugins/devflow-code-review/agents/synthesizer.md +0 -211
- package/plugins/devflow-code-review/commands/code-review-teams.md +0 -285
- package/plugins/devflow-code-review/commands/code-review.md +0 -163
- package/plugins/devflow-code-review/skills/agent-teams/SKILL.md +0 -124
- package/plugins/devflow-code-review/skills/agent-teams/references/cleanup.md +0 -104
- package/plugins/devflow-code-review/skills/agent-teams/references/communication.md +0 -122
- package/plugins/devflow-code-review/skills/agent-teams/references/team-patterns.md +0 -217
- package/plugins/devflow-code-review/skills/architecture-patterns/SKILL.md +0 -153
- package/plugins/devflow-code-review/skills/architecture-patterns/references/patterns.md +0 -873
- package/plugins/devflow-code-review/skills/architecture-patterns/references/violations.md +0 -575
- package/plugins/devflow-code-review/skills/complexity-patterns/SKILL.md +0 -143
- package/plugins/devflow-code-review/skills/consistency-patterns/SKILL.md +0 -140
- package/plugins/devflow-code-review/skills/database-patterns/SKILL.md +0 -134
- package/plugins/devflow-code-review/skills/dependencies-patterns/SKILL.md +0 -141
- package/plugins/devflow-code-review/skills/documentation-patterns/SKILL.md +0 -125
- package/plugins/devflow-code-review/skills/knowledge-persistence/SKILL.md +0 -128
- package/plugins/devflow-code-review/skills/knowledge-persistence/references/examples.md +0 -44
- package/plugins/devflow-code-review/skills/performance-patterns/SKILL.md +0 -154
- package/plugins/devflow-code-review/skills/performance-patterns/references/patterns.md +0 -503
- package/plugins/devflow-code-review/skills/performance-patterns/references/violations.md +0 -354
- package/plugins/devflow-code-review/skills/regression-patterns/SKILL.md +0 -146
- package/plugins/devflow-code-review/skills/review-methodology/SKILL.md +0 -119
- package/plugins/devflow-code-review/skills/review-methodology/references/patterns.md +0 -186
- package/plugins/devflow-code-review/skills/review-methodology/references/report-template.md +0 -142
- package/plugins/devflow-code-review/skills/review-methodology/references/violations.md +0 -125
- package/plugins/devflow-code-review/skills/security-patterns/SKILL.md +0 -156
- package/plugins/devflow-code-review/skills/security-patterns/references/patterns.md +0 -507
- package/plugins/devflow-code-review/skills/security-patterns/references/violations.md +0 -237
- package/plugins/devflow-code-review/skills/test-patterns/SKILL.md +0 -183
- package/plugins/devflow-code-review/skills/test-patterns/references/patterns.md +0 -220
- package/plugins/devflow-code-review/skills/test-patterns/references/violations.md +0 -221
- package/plugins/devflow-core-skills/.claude-plugin/plugin.json +0 -31
- package/plugins/devflow-core-skills/README.md +0 -50
- package/plugins/devflow-core-skills/skills/core-patterns/SKILL.md +0 -162
- package/plugins/devflow-core-skills/skills/core-patterns/references/checklist.md +0 -276
- package/plugins/devflow-core-skills/skills/core-patterns/references/code-smell-violations.md +0 -144
- package/plugins/devflow-core-skills/skills/core-patterns/references/patterns.md +0 -576
- package/plugins/devflow-core-skills/skills/core-patterns/references/violations.md +0 -369
- package/plugins/devflow-core-skills/skills/docs-framework/SKILL.md +0 -143
- package/plugins/devflow-core-skills/skills/docs-framework/references/patterns.md +0 -346
- package/plugins/devflow-core-skills/skills/docs-framework/references/violations.md +0 -221
- package/plugins/devflow-core-skills/skills/git-safety/SKILL.md +0 -122
- package/plugins/devflow-core-skills/skills/git-safety/references/patterns.md +0 -289
- package/plugins/devflow-core-skills/skills/git-safety/references/violations.md +0 -18
- package/plugins/devflow-core-skills/skills/git-workflow/SKILL.md +0 -158
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-patterns.md +0 -115
- package/plugins/devflow-core-skills/skills/git-workflow/references/commit-violations.md +0 -77
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-patterns.md +0 -127
- package/plugins/devflow-core-skills/skills/git-workflow/references/pr-violations.md +0 -96
- package/plugins/devflow-core-skills/skills/github-patterns/SKILL.md +0 -153
- package/plugins/devflow-core-skills/skills/github-patterns/references/patterns.md +0 -572
- package/plugins/devflow-core-skills/skills/github-patterns/references/violations.md +0 -298
- package/plugins/devflow-core-skills/skills/input-validation/SKILL.md +0 -148
- package/plugins/devflow-core-skills/skills/input-validation/references/detection.md +0 -283
- package/plugins/devflow-core-skills/skills/input-validation/references/patterns.md +0 -361
- package/plugins/devflow-core-skills/skills/input-validation/references/violations.md +0 -224
- package/plugins/devflow-core-skills/skills/search-first/SKILL.md +0 -133
- package/plugins/devflow-core-skills/skills/search-first/references/evaluation-criteria.md +0 -101
- package/plugins/devflow-core-skills/skills/test-driven-development/SKILL.md +0 -137
- package/plugins/devflow-core-skills/skills/test-patterns/SKILL.md +0 -183
- package/plugins/devflow-core-skills/skills/test-patterns/references/detection.md +0 -149
- package/plugins/devflow-core-skills/skills/test-patterns/references/patterns.md +0 -220
- package/plugins/devflow-core-skills/skills/test-patterns/references/report-template.md +0 -108
- package/plugins/devflow-core-skills/skills/test-patterns/references/violations.md +0 -221
- package/plugins/devflow-debug/.claude-plugin/plugin.json +0 -26
- package/plugins/devflow-debug/README.md +0 -65
- package/plugins/devflow-debug/agents/git.md +0 -277
- package/plugins/devflow-debug/agents/synthesizer.md +0 -211
- package/plugins/devflow-debug/commands/debug-teams.md +0 -245
- package/plugins/devflow-debug/commands/debug.md +0 -174
- package/plugins/devflow-debug/skills/agent-teams/SKILL.md +0 -124
- package/plugins/devflow-debug/skills/agent-teams/references/cleanup.md +0 -104
- package/plugins/devflow-debug/skills/agent-teams/references/communication.md +0 -122
- package/plugins/devflow-debug/skills/agent-teams/references/team-patterns.md +0 -217
- package/plugins/devflow-debug/skills/git-safety/SKILL.md +0 -122
- package/plugins/devflow-debug/skills/git-safety/references/detection.md +0 -290
- package/plugins/devflow-debug/skills/git-safety/references/patterns.md +0 -289
- package/plugins/devflow-debug/skills/git-safety/references/violations.md +0 -18
- package/plugins/devflow-debug/skills/knowledge-persistence/SKILL.md +0 -128
- package/plugins/devflow-debug/skills/knowledge-persistence/references/examples.md +0 -44
- package/plugins/devflow-frontend-design/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-frontend-design/skills/frontend-design/SKILL.md +0 -254
- package/plugins/devflow-frontend-design/skills/frontend-design/references/patterns.md +0 -511
- package/plugins/devflow-frontend-design/skills/frontend-design/references/violations.md +0 -453
- package/plugins/devflow-go/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-go/skills/go/SKILL.md +0 -187
- package/plugins/devflow-go/skills/go/references/concurrency.md +0 -312
- package/plugins/devflow-go/skills/go/references/patterns.md +0 -232
- package/plugins/devflow-go/skills/go/references/violations.md +0 -205
- package/plugins/devflow-implement/.claude-plugin/plugin.json +0 -35
- package/plugins/devflow-implement/README.md +0 -71
- package/plugins/devflow-implement/agents/coder.md +0 -135
- package/plugins/devflow-implement/agents/git.md +0 -277
- package/plugins/devflow-implement/agents/scrutinizer.md +0 -82
- package/plugins/devflow-implement/agents/shepherd.md +0 -108
- package/plugins/devflow-implement/agents/simplifier.md +0 -102
- package/plugins/devflow-implement/agents/skimmer.md +0 -143
- package/plugins/devflow-implement/agents/synthesizer.md +0 -211
- package/plugins/devflow-implement/agents/validator.md +0 -86
- package/plugins/devflow-implement/commands/implement-teams.md +0 -620
- package/plugins/devflow-implement/commands/implement.md +0 -430
- package/plugins/devflow-implement/skills/agent-teams/SKILL.md +0 -124
- package/plugins/devflow-implement/skills/agent-teams/references/cleanup.md +0 -104
- package/plugins/devflow-implement/skills/agent-teams/references/communication.md +0 -122
- package/plugins/devflow-implement/skills/agent-teams/references/team-patterns.md +0 -217
- package/plugins/devflow-implement/skills/implementation-patterns/SKILL.md +0 -162
- package/plugins/devflow-implement/skills/knowledge-persistence/SKILL.md +0 -128
- package/plugins/devflow-implement/skills/knowledge-persistence/references/examples.md +0 -44
- package/plugins/devflow-implement/skills/self-review/SKILL.md +0 -149
- package/plugins/devflow-implement/skills/self-review/references/stub-detection.md +0 -135
- package/plugins/devflow-java/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-java/skills/java/SKILL.md +0 -183
- package/plugins/devflow-java/skills/java/references/modern-java.md +0 -270
- package/plugins/devflow-java/skills/java/references/patterns.md +0 -235
- package/plugins/devflow-java/skills/java/references/violations.md +0 -213
- package/plugins/devflow-python/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-python/skills/python/SKILL.md +0 -188
- package/plugins/devflow-python/skills/python/references/async.md +0 -220
- package/plugins/devflow-python/skills/python/references/patterns.md +0 -226
- package/plugins/devflow-python/skills/python/references/violations.md +0 -204
- package/plugins/devflow-react/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-react/skills/react/SKILL.md +0 -276
- package/plugins/devflow-react/skills/react/references/patterns.md +0 -1331
- package/plugins/devflow-react/skills/react/references/violations.md +0 -565
- package/plugins/devflow-resolve/.claude-plugin/plugin.json +0 -29
- package/plugins/devflow-resolve/README.md +0 -65
- package/plugins/devflow-resolve/agents/git.md +0 -277
- package/plugins/devflow-resolve/agents/resolver.md +0 -131
- package/plugins/devflow-resolve/agents/simplifier.md +0 -102
- package/plugins/devflow-resolve/commands/resolve-teams.md +0 -307
- package/plugins/devflow-resolve/commands/resolve.md +0 -246
- package/plugins/devflow-resolve/skills/agent-teams/SKILL.md +0 -124
- package/plugins/devflow-resolve/skills/agent-teams/references/cleanup.md +0 -104
- package/plugins/devflow-resolve/skills/agent-teams/references/communication.md +0 -122
- package/plugins/devflow-resolve/skills/agent-teams/references/team-patterns.md +0 -217
- package/plugins/devflow-resolve/skills/implementation-patterns/SKILL.md +0 -162
- package/plugins/devflow-resolve/skills/implementation-patterns/references/patterns.md +0 -1063
- package/plugins/devflow-resolve/skills/implementation-patterns/references/violations.md +0 -483
- package/plugins/devflow-resolve/skills/knowledge-persistence/SKILL.md +0 -128
- package/plugins/devflow-resolve/skills/knowledge-persistence/references/examples.md +0 -44
- package/plugins/devflow-resolve/skills/security-patterns/SKILL.md +0 -156
- package/plugins/devflow-resolve/skills/security-patterns/references/detection.md +0 -287
- package/plugins/devflow-resolve/skills/security-patterns/references/patterns.md +0 -507
- package/plugins/devflow-resolve/skills/security-patterns/references/violations.md +0 -237
- package/plugins/devflow-rust/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-rust/skills/rust/SKILL.md +0 -193
- package/plugins/devflow-rust/skills/rust/references/ownership.md +0 -242
- package/plugins/devflow-rust/skills/rust/references/patterns.md +0 -210
- package/plugins/devflow-rust/skills/rust/references/violations.md +0 -191
- package/plugins/devflow-self-review/.claude-plugin/plugin.json +0 -26
- package/plugins/devflow-self-review/README.md +0 -38
- package/plugins/devflow-self-review/agents/scrutinizer.md +0 -82
- package/plugins/devflow-self-review/agents/simplifier.md +0 -102
- package/plugins/devflow-self-review/agents/validator.md +0 -86
- package/plugins/devflow-self-review/commands/self-review.md +0 -132
- package/plugins/devflow-self-review/skills/core-patterns/SKILL.md +0 -162
- package/plugins/devflow-self-review/skills/core-patterns/references/checklist.md +0 -276
- package/plugins/devflow-self-review/skills/core-patterns/references/code-smell-violations.md +0 -144
- package/plugins/devflow-self-review/skills/core-patterns/references/detection.md +0 -303
- package/plugins/devflow-self-review/skills/core-patterns/references/patterns.md +0 -576
- package/plugins/devflow-self-review/skills/core-patterns/references/violations.md +0 -369
- package/plugins/devflow-self-review/skills/self-review/SKILL.md +0 -149
- package/plugins/devflow-self-review/skills/self-review/references/patterns.md +0 -405
- package/plugins/devflow-self-review/skills/self-review/references/report-template.md +0 -253
- package/plugins/devflow-self-review/skills/self-review/references/stub-detection.md +0 -135
- package/plugins/devflow-self-review/skills/self-review/references/violations.md +0 -308
- package/plugins/devflow-specify/.claude-plugin/plugin.json +0 -25
- package/plugins/devflow-specify/README.md +0 -46
- package/plugins/devflow-specify/agents/skimmer.md +0 -143
- package/plugins/devflow-specify/agents/synthesizer.md +0 -211
- package/plugins/devflow-specify/commands/specify-teams.md +0 -321
- package/plugins/devflow-specify/commands/specify.md +0 -186
- package/plugins/devflow-specify/skills/agent-teams/SKILL.md +0 -124
- package/plugins/devflow-specify/skills/agent-teams/references/cleanup.md +0 -104
- package/plugins/devflow-specify/skills/agent-teams/references/communication.md +0 -122
- package/plugins/devflow-specify/skills/agent-teams/references/team-patterns.md +0 -217
- package/plugins/devflow-typescript/.claude-plugin/plugin.json +0 -21
- package/plugins/devflow-typescript/skills/typescript/SKILL.md +0 -176
- package/plugins/devflow-typescript/skills/typescript/references/patterns.md +0 -1105
- package/plugins/devflow-typescript/skills/typescript/references/violations.md +0 -433
- package/scripts/hooks/ambient-prompt +0 -50
- package/scripts/hooks/background-memory-update +0 -257
- package/scripts/hooks/ensure-memory-gitignore +0 -17
- package/scripts/hooks/pre-compact-memory +0 -87
- package/scripts/hooks/run-hook +0 -23
- package/scripts/hooks/session-start-memory +0 -165
- package/scripts/hooks/stop-update-memory +0 -85
- package/scripts/hud/cache.d.ts +0 -14
- package/scripts/hud/cache.d.ts.map +0 -1
- package/scripts/hud/cache.js +0 -54
- package/scripts/hud/cache.js.map +0 -1
- package/scripts/hud/colors.d.ts +0 -23
- package/scripts/hud/colors.d.ts.map +0 -1
- package/scripts/hud/colors.js +0 -62
- package/scripts/hud/colors.js.map +0 -1
- package/scripts/hud/components/config-counts.d.ts +0 -8
- package/scripts/hud/components/config-counts.d.ts.map +0 -1
- package/scripts/hud/components/config-counts.js +0 -91
- package/scripts/hud/components/config-counts.js.map +0 -1
- package/scripts/hud/components/context-usage.d.ts +0 -8
- package/scripts/hud/components/context-usage.d.ts.map +0 -1
- package/scripts/hud/components/context-usage.js +0 -49
- package/scripts/hud/components/context-usage.js.map +0 -1
- package/scripts/hud/components/diff-stats.d.ts +0 -3
- package/scripts/hud/components/diff-stats.d.ts.map +0 -1
- package/scripts/hud/components/diff-stats.js +0 -36
- package/scripts/hud/components/diff-stats.js.map +0 -1
- package/scripts/hud/components/directory.d.ts +0 -3
- package/scripts/hud/components/directory.d.ts.map +0 -1
- package/scripts/hud/components/directory.js +0 -10
- package/scripts/hud/components/directory.js.map +0 -1
- package/scripts/hud/components/git-ahead-behind.d.ts +0 -3
- package/scripts/hud/components/git-ahead-behind.d.ts.map +0 -1
- package/scripts/hud/components/git-ahead-behind.js +0 -16
- package/scripts/hud/components/git-ahead-behind.js.map +0 -1
- package/scripts/hud/components/git-branch.d.ts +0 -3
- package/scripts/hud/components/git-branch.d.ts.map +0 -1
- package/scripts/hud/components/git-branch.js +0 -14
- package/scripts/hud/components/git-branch.js.map +0 -1
- package/scripts/hud/components/model.d.ts +0 -3
- package/scripts/hud/components/model.d.ts.map +0 -1
- package/scripts/hud/components/model.js +0 -21
- package/scripts/hud/components/model.js.map +0 -1
- package/scripts/hud/components/release-info.d.ts +0 -3
- package/scripts/hud/components/release-info.d.ts.map +0 -1
- package/scripts/hud/components/release-info.js +0 -9
- package/scripts/hud/components/release-info.js.map +0 -1
- package/scripts/hud/components/session-cost.d.ts +0 -3
- package/scripts/hud/components/session-cost.d.ts.map +0 -1
- package/scripts/hud/components/session-cost.js +0 -9
- package/scripts/hud/components/session-cost.js.map +0 -1
- package/scripts/hud/components/session-duration.d.ts +0 -3
- package/scripts/hud/components/session-duration.d.ts.map +0 -1
- package/scripts/hud/components/session-duration.js +0 -18
- package/scripts/hud/components/session-duration.js.map +0 -1
- package/scripts/hud/components/todo-progress.d.ts +0 -3
- package/scripts/hud/components/todo-progress.d.ts.map +0 -1
- package/scripts/hud/components/todo-progress.js +0 -11
- package/scripts/hud/components/todo-progress.js.map +0 -1
- package/scripts/hud/components/usage-quota.d.ts +0 -3
- package/scripts/hud/components/usage-quota.d.ts.map +0 -1
- package/scripts/hud/components/usage-quota.js +0 -45
- package/scripts/hud/components/usage-quota.js.map +0 -1
- package/scripts/hud/components/version-badge.d.ts +0 -3
- package/scripts/hud/components/version-badge.d.ts.map +0 -1
- package/scripts/hud/components/version-badge.js +0 -80
- package/scripts/hud/components/version-badge.js.map +0 -1
- package/scripts/hud/components/worktree-count.d.ts +0 -3
- package/scripts/hud/components/worktree-count.d.ts.map +0 -1
- package/scripts/hud/components/worktree-count.js +0 -8
- package/scripts/hud/components/worktree-count.js.map +0 -1
- package/scripts/hud/config.d.ts +0 -10
- package/scripts/hud/config.d.ts.map +0 -1
- package/scripts/hud/config.js +0 -55
- package/scripts/hud/config.js.map +0 -1
- package/scripts/hud/credentials.d.ts +0 -17
- package/scripts/hud/credentials.d.ts.map +0 -1
- package/scripts/hud/credentials.js +0 -99
- package/scripts/hud/credentials.js.map +0 -1
- package/scripts/hud/git.d.ts +0 -7
- package/scripts/hud/git.d.ts.map +0 -1
- package/scripts/hud/git.js +0 -153
- package/scripts/hud/git.js.map +0 -1
- package/scripts/hud/index.d.ts +0 -2
- package/scripts/hud/index.d.ts.map +0 -1
- package/scripts/hud/index.js +0 -81
- package/scripts/hud/index.js.map +0 -1
- package/scripts/hud/render.d.ts +0 -7
- package/scripts/hud/render.d.ts.map +0 -1
- package/scripts/hud/render.js +0 -111
- package/scripts/hud/render.js.map +0 -1
- package/scripts/hud/stdin.d.ts +0 -6
- package/scripts/hud/stdin.d.ts.map +0 -1
- package/scripts/hud/stdin.js +0 -25
- package/scripts/hud/stdin.js.map +0 -1
- package/scripts/hud/transcript.d.ts +0 -7
- package/scripts/hud/transcript.d.ts.map +0 -1
- package/scripts/hud/transcript.js +0 -130
- package/scripts/hud/transcript.js.map +0 -1
- package/scripts/hud/types.d.ts +0 -116
- package/scripts/hud/types.d.ts.map +0 -1
- package/scripts/hud/types.js +0 -2
- package/scripts/hud/types.js.map +0 -1
- package/scripts/hud/usage-api.d.ts +0 -7
- package/scripts/hud/usage-api.d.ts.map +0 -1
- package/scripts/hud/usage-api.js +0 -84
- package/scripts/hud/usage-api.js.map +0 -1
- package/scripts/hud.sh +0 -5
- package/shared/agents/coder.md +0 -135
- package/shared/agents/git.md +0 -277
- package/shared/agents/resolver.md +0 -131
- package/shared/agents/reviewer.md +0 -165
- package/shared/agents/scrutinizer.md +0 -82
- package/shared/agents/shepherd.md +0 -108
- package/shared/agents/simplifier.md +0 -102
- package/shared/agents/skimmer.md +0 -143
- package/shared/agents/synthesizer.md +0 -211
- package/shared/agents/validator.md +0 -86
- package/shared/skills/accessibility/SKILL.md +0 -229
- package/shared/skills/accessibility/references/detection.md +0 -171
- package/shared/skills/accessibility/references/patterns.md +0 -670
- package/shared/skills/accessibility/references/violations.md +0 -419
- package/shared/skills/agent-teams/SKILL.md +0 -124
- package/shared/skills/agent-teams/references/cleanup.md +0 -104
- package/shared/skills/agent-teams/references/communication.md +0 -122
- package/shared/skills/agent-teams/references/team-patterns.md +0 -217
- package/shared/skills/ambient-router/SKILL.md +0 -145
- package/shared/skills/ambient-router/references/skill-catalog.md +0 -74
- package/shared/skills/architecture-patterns/SKILL.md +0 -153
- package/shared/skills/architecture-patterns/references/detection.md +0 -337
- package/shared/skills/architecture-patterns/references/patterns.md +0 -873
- package/shared/skills/architecture-patterns/references/violations.md +0 -575
- package/shared/skills/complexity-patterns/SKILL.md +0 -143
- package/shared/skills/complexity-patterns/references/detection.md +0 -264
- package/shared/skills/complexity-patterns/references/patterns.md +0 -487
- package/shared/skills/complexity-patterns/references/violations.md +0 -361
- package/shared/skills/consistency-patterns/SKILL.md +0 -140
- package/shared/skills/consistency-patterns/references/detection.md +0 -207
- package/shared/skills/consistency-patterns/references/patterns.md +0 -202
- package/shared/skills/consistency-patterns/references/violations.md +0 -213
- package/shared/skills/core-patterns/SKILL.md +0 -162
- package/shared/skills/core-patterns/references/checklist.md +0 -276
- package/shared/skills/core-patterns/references/code-smell-violations.md +0 -144
- package/shared/skills/core-patterns/references/detection.md +0 -303
- package/shared/skills/core-patterns/references/patterns.md +0 -576
- package/shared/skills/core-patterns/references/violations.md +0 -369
- package/shared/skills/database-patterns/SKILL.md +0 -134
- package/shared/skills/database-patterns/references/detection.md +0 -208
- package/shared/skills/database-patterns/references/patterns.md +0 -394
- package/shared/skills/database-patterns/references/violations.md +0 -332
- package/shared/skills/debug-orchestration/SKILL.md +0 -69
- package/shared/skills/dependencies-patterns/SKILL.md +0 -141
- package/shared/skills/dependencies-patterns/references/detection.md +0 -181
- package/shared/skills/dependencies-patterns/references/patterns.md +0 -225
- package/shared/skills/dependencies-patterns/references/violations.md +0 -247
- package/shared/skills/docs-framework/SKILL.md +0 -143
- package/shared/skills/docs-framework/references/patterns.md +0 -346
- package/shared/skills/docs-framework/references/violations.md +0 -221
- package/shared/skills/documentation-patterns/SKILL.md +0 -125
- package/shared/skills/documentation-patterns/references/detection.md +0 -190
- package/shared/skills/documentation-patterns/references/patterns.md +0 -189
- package/shared/skills/documentation-patterns/references/violations.md +0 -163
- package/shared/skills/frontend-design/SKILL.md +0 -254
- package/shared/skills/frontend-design/references/detection.md +0 -184
- package/shared/skills/frontend-design/references/patterns.md +0 -511
- package/shared/skills/frontend-design/references/violations.md +0 -453
- package/shared/skills/git-safety/SKILL.md +0 -122
- package/shared/skills/git-safety/references/detection.md +0 -290
- package/shared/skills/git-safety/references/patterns.md +0 -289
- package/shared/skills/git-safety/references/violations.md +0 -18
- package/shared/skills/git-workflow/SKILL.md +0 -158
- package/shared/skills/git-workflow/references/commit-patterns.md +0 -115
- package/shared/skills/git-workflow/references/commit-violations.md +0 -77
- package/shared/skills/git-workflow/references/pr-patterns.md +0 -127
- package/shared/skills/git-workflow/references/pr-violations.md +0 -96
- package/shared/skills/github-patterns/SKILL.md +0 -153
- package/shared/skills/github-patterns/references/patterns.md +0 -572
- package/shared/skills/github-patterns/references/violations.md +0 -298
- package/shared/skills/go/SKILL.md +0 -187
- package/shared/skills/go/references/concurrency.md +0 -312
- package/shared/skills/go/references/detection.md +0 -129
- package/shared/skills/go/references/patterns.md +0 -232
- package/shared/skills/go/references/violations.md +0 -205
- package/shared/skills/implementation-orchestration/SKILL.md +0 -92
- package/shared/skills/implementation-patterns/SKILL.md +0 -162
- package/shared/skills/implementation-patterns/references/patterns.md +0 -1063
- package/shared/skills/implementation-patterns/references/violations.md +0 -483
- package/shared/skills/input-validation/SKILL.md +0 -148
- package/shared/skills/input-validation/references/detection.md +0 -283
- package/shared/skills/input-validation/references/patterns.md +0 -361
- package/shared/skills/input-validation/references/violations.md +0 -224
- package/shared/skills/java/SKILL.md +0 -183
- package/shared/skills/java/references/detection.md +0 -120
- package/shared/skills/java/references/modern-java.md +0 -270
- package/shared/skills/java/references/patterns.md +0 -235
- package/shared/skills/java/references/violations.md +0 -213
- package/shared/skills/knowledge-persistence/SKILL.md +0 -128
- package/shared/skills/knowledge-persistence/references/examples.md +0 -44
- package/shared/skills/performance-patterns/SKILL.md +0 -154
- package/shared/skills/performance-patterns/references/detection.md +0 -351
- package/shared/skills/performance-patterns/references/patterns.md +0 -503
- package/shared/skills/performance-patterns/references/violations.md +0 -354
- package/shared/skills/plan-orchestration/SKILL.md +0 -71
- package/shared/skills/python/SKILL.md +0 -188
- package/shared/skills/python/references/async.md +0 -220
- package/shared/skills/python/references/detection.md +0 -128
- package/shared/skills/python/references/patterns.md +0 -226
- package/shared/skills/python/references/violations.md +0 -204
- package/shared/skills/react/SKILL.md +0 -276
- package/shared/skills/react/references/patterns.md +0 -1331
- package/shared/skills/react/references/violations.md +0 -565
- package/shared/skills/regression-patterns/SKILL.md +0 -146
- package/shared/skills/regression-patterns/references/detection.md +0 -237
- package/shared/skills/regression-patterns/references/patterns.md +0 -226
- package/shared/skills/regression-patterns/references/violations.md +0 -225
- package/shared/skills/review-methodology/SKILL.md +0 -119
- package/shared/skills/review-methodology/references/patterns.md +0 -186
- package/shared/skills/review-methodology/references/report-template.md +0 -142
- package/shared/skills/review-methodology/references/violations.md +0 -125
- package/shared/skills/rust/SKILL.md +0 -193
- package/shared/skills/rust/references/detection.md +0 -131
- package/shared/skills/rust/references/ownership.md +0 -242
- package/shared/skills/rust/references/patterns.md +0 -210
- package/shared/skills/rust/references/violations.md +0 -191
- package/shared/skills/search-first/SKILL.md +0 -133
- package/shared/skills/search-first/references/evaluation-criteria.md +0 -101
- package/shared/skills/security-patterns/SKILL.md +0 -156
- package/shared/skills/security-patterns/references/detection.md +0 -287
- package/shared/skills/security-patterns/references/patterns.md +0 -507
- package/shared/skills/security-patterns/references/violations.md +0 -237
- package/shared/skills/self-review/SKILL.md +0 -149
- package/shared/skills/self-review/references/patterns.md +0 -405
- package/shared/skills/self-review/references/report-template.md +0 -253
- package/shared/skills/self-review/references/stub-detection.md +0 -135
- package/shared/skills/self-review/references/violations.md +0 -308
- package/shared/skills/test-driven-development/SKILL.md +0 -137
- package/shared/skills/test-driven-development/references/rationalization-prevention.md +0 -111
- package/shared/skills/test-patterns/SKILL.md +0 -183
- package/shared/skills/test-patterns/references/detection.md +0 -149
- package/shared/skills/test-patterns/references/patterns.md +0 -220
- package/shared/skills/test-patterns/references/report-template.md +0 -108
- package/shared/skills/test-patterns/references/violations.md +0 -221
- package/shared/skills/typescript/SKILL.md +0 -176
- package/shared/skills/typescript/references/patterns.md +0 -1105
- package/shared/skills/typescript/references/violations.md +0 -433
- package/src/templates/claudeignore.template +0 -188
- package/src/templates/settings.json +0 -59
- /package/dist/{utils → core}/safe-delete.js +0 -0
- /package/{plugins/devflow-accessibility → src/assets}/skills/accessibility/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/architecture-patterns → src/assets/skills/architecture}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/complexity-patterns → src/assets/skills/complexity}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/complexity-patterns → src/assets/skills/complexity}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/complexity-patterns → src/assets/skills/complexity}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/consistency-patterns → src/assets/skills/consistency}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/consistency-patterns → src/assets/skills/consistency}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/consistency-patterns → src/assets/skills/consistency}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/database-patterns → src/assets/skills/database}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/database-patterns → src/assets/skills/database}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/database-patterns → src/assets/skills/database}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/dependencies-patterns → src/assets/skills/dependencies}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/dependencies-patterns → src/assets/skills/dependencies}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/dependencies-patterns → src/assets/skills/dependencies}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/documentation-patterns → src/assets/skills/documentation}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/documentation-patterns → src/assets/skills/documentation}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/documentation-patterns → src/assets/skills/documentation}/references/violations.md +0 -0
- /package/{plugins/devflow-core-skills/skills/git-safety → src/assets/skills/git}/references/detection.md +0 -0
- /package/{plugins/devflow-go → src/assets}/skills/go/references/detection.md +0 -0
- /package/{plugins/devflow-java → src/assets}/skills/java/references/detection.md +0 -0
- /package/{plugins/devflow-implement/skills/implementation-patterns → src/assets/skills/patterns}/references/patterns.md +0 -0
- /package/{plugins/devflow-implement/skills/implementation-patterns → src/assets/skills/patterns}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/performance-patterns → src/assets/skills/performance}/references/detection.md +0 -0
- /package/{plugins/devflow-python → src/assets}/skills/python/references/detection.md +0 -0
- /package/{plugins/devflow-implement/skills/self-review → src/assets/skills/quality-gates}/references/patterns.md +0 -0
- /package/{plugins/devflow-implement/skills/self-review → src/assets/skills/quality-gates}/references/report-template.md +0 -0
- /package/{plugins/devflow-implement/skills/self-review → src/assets/skills/quality-gates}/references/violations.md +0 -0
- /package/{plugins/devflow-code-review/skills/regression-patterns → src/assets/skills/regression}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/regression-patterns → src/assets/skills/regression}/references/patterns.md +0 -0
- /package/{plugins/devflow-code-review/skills/regression-patterns → src/assets/skills/regression}/references/violations.md +0 -0
- /package/{plugins/devflow-rust → src/assets}/skills/rust/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/security-patterns → src/assets/skills/security}/references/detection.md +0 -0
- /package/{plugins/devflow-core-skills/skills/core-patterns → src/assets/skills/software-design}/references/detection.md +0 -0
- /package/{plugins/devflow-core-skills → src/assets}/skills/test-driven-development/references/rationalization-prevention.md +0 -0
- /package/{plugins/devflow-code-review/skills/test-patterns → src/assets/skills/testing}/references/detection.md +0 -0
- /package/{plugins/devflow-code-review/skills/test-patterns → src/assets/skills/testing}/references/report-template.md +0 -0
- /package/{plugins/devflow-frontend-design/skills/frontend-design → src/assets/skills/ui-design}/references/detection.md +0 -0
- /package/src/{templates → targets/claude-code/templates}/managed-settings.json +0 -0
|
@@ -0,0 +1,731 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Process review issues - validate with Triage agent, fix with Code agent, verify with Validate agent
|
|
3
|
+
---
|
|
4
|
+
# Resolve Command
|
|
5
|
+
|
|
6
|
+
Process issues from code review reports: triage every issue through the blast-radius disposition matrix, fix FIX_NOW items with Code agents, verify fixes with a Validate agent gate, and track FIX_SEPARATE/TECH_DEBT items as manage-debt tickets. Defaults to the latest timestamped review directory. Supports multi-worktree auto-discovery.
|
|
7
|
+
|
|
8
|
+
## Usage
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
/resolve (resolve latest review on current branch — or all worktrees)
|
|
12
|
+
/resolve #42 (resolve issues for specific PR)
|
|
13
|
+
/resolve --review 2026-03-28_0900 (resolve a specific review run by timestamp)
|
|
14
|
+
/resolve --path /path/to/worktree (resolve a specific worktree only)
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Phases
|
|
18
|
+
|
|
19
|
+
### Phase 0: Worktree Discovery & Pre-Flight
|
|
20
|
+
|
|
21
|
+
#### Step 0a: Discover Worktrees
|
|
22
|
+
|
|
23
|
+
**Produces:** WORKTREES
|
|
24
|
+
|
|
25
|
+
1. **Discover resolvable worktrees** using the `devflow:worktree-support` skill discovery algorithm:
|
|
26
|
+
- Run `git worktree list --porcelain` → parse, filter (skip protected/detached/mid-rebase), dedup by branch, sort by recent commit
|
|
27
|
+
- See `~/.claude/skills/devflow:worktree-support/SKILL.md` for the full 7-step algorithm and canonical protected branch list
|
|
28
|
+
- Additional filter: must have unresolved reviews (latest review directory has no `resolution-summary.md`)
|
|
29
|
+
2. **If `--path` flag provided:** use only that worktree, skip discovery
|
|
30
|
+
**`--path` validation**: Before proceeding, verify the path exists as a directory and appears in `git worktree list` output. If not: report error and stop.
|
|
31
|
+
3. **If only 1 resolvable worktree** (the common case): proceed as single-worktree flow — zero behavior change
|
|
32
|
+
4. **If multiple resolvable worktrees:** report "Found N worktrees with unresolved reviews: {list}" and proceed with multi-worktree flow
|
|
33
|
+
|
|
34
|
+
#### Step 0b: Per-Worktree Pre-Flight (Git Agent)
|
|
35
|
+
|
|
36
|
+
**Produces:** BRANCH_INFO, PR_DESCRIPTION, DIFF_FILES
|
|
37
|
+
**Requires:** WORKTREES
|
|
38
|
+
|
|
39
|
+
For each resolvable worktree, spawn Git agent:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
Agent(subagent_type="Git", run_in_background=false):
|
|
43
|
+
"OPERATION: validate-branch
|
|
44
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
45
|
+
Check feature branch, clean working directory, reviews exist.
|
|
46
|
+
Return: branch, branch-slug, PR#, review count, DIFF_FILES"
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
In multi-worktree mode, spawn all pre-flight agents **in a single message** (parallel).
|
|
50
|
+
|
|
51
|
+
**If BLOCKED:** In single-worktree mode, stop and report the blocker to user. If no reviews found, suggest `/code-review` or `/bug-analysis` first. In multi-worktree mode, report the failure but continue with other worktrees.
|
|
52
|
+
|
|
53
|
+
**Extract from response:** `branch`, `branch_slug`, `pr_number`, `review_count`, `diff_files` per worktree.
|
|
54
|
+
|
|
55
|
+
**Fetch PR body** (after extracting `pr_number`):
|
|
56
|
+
```bash
|
|
57
|
+
PR_DESCRIPTION=$(gh pr view {pr_number} --json body --jq '.body' 2>/dev/null || echo "(none)")
|
|
58
|
+
```
|
|
59
|
+
If `pr_number` is absent or the command fails, set `PR_DESCRIPTION` to `(none)`.
|
|
60
|
+
|
|
61
|
+
**DIFF_FILES** is extracted from the `### Diff Scope` block in the Git agent validate-branch output. Set to empty string `""` if the block is absent (bug-analysis mode edge case).
|
|
62
|
+
|
|
63
|
+
#### Step 0c: Target Review Directory
|
|
64
|
+
|
|
65
|
+
**Produces:** TARGET_DIR
|
|
66
|
+
**Requires:** BRANCH_INFO
|
|
67
|
+
|
|
68
|
+
For each worktree:
|
|
69
|
+
|
|
70
|
+
1. List directories in `{worktree}/.devflow/docs/reviews/{branch-slug}/`
|
|
71
|
+
2. **If `--review {timestamp}` provided:** use that specific directory (not supported in multi-worktree mode)
|
|
72
|
+
3. **Otherwise:** sort directories by name descending (timestamps are naturally sortable), scan the 10 most recent directories only. Select the first that contains `review-summary.md` (complete review)
|
|
73
|
+
4. **If latest directory already has `resolution-summary.md`:** the review is resolved — check bug-analysis fallback (step 5b).
|
|
74
|
+
5. **Legacy fallback:** if no timestamped subdirectories exist but flat `*.md` files do in `{worktree}/.devflow/docs/reviews/{branch-slug}/`, read them directly (backwards compatible).
|
|
75
|
+
|
|
76
|
+
**5b. Bug analysis fallback** — if no qualifying review directory found (no reviews exist, or all resolved):
|
|
77
|
+
- List directories in `{worktree}/.devflow/docs/bug-analysis/{branch-slug}/`
|
|
78
|
+
- Sort by name descending (timestamps are naturally sortable), scan the 10 most recent directories only. Select the latest that:
|
|
79
|
+
- Contains at least one focus report (`security.md`, `functional.md`, `integration.md`, or `usability.md`)
|
|
80
|
+
- Does NOT contain a `resolution-summary.md`
|
|
81
|
+
- If found: set `TARGET_DIR` to that path. Reviews take priority — bug analysis is only used when no qualifying review exists.
|
|
82
|
+
- If not found within those 10 directories: skip worktree — report "No unresolved review or bug analysis found. Run `/code-review` or `/bug-analysis` first."
|
|
83
|
+
|
|
84
|
+
Set `TARGET_DIR` to the selected review or bug-analysis directory path.
|
|
85
|
+
|
|
86
|
+
#### Step 0d: Load Project Decisions
|
|
87
|
+
|
|
88
|
+
**Produces:** DECISIONS_CONTEXT, FEATURE_KNOWLEDGE, COMPLIANCE_SKILL_INSTALLED, REVIEW_PUBLICATION
|
|
89
|
+
|
|
90
|
+
### Load DECISIONS_CONTEXT
|
|
91
|
+
|
|
92
|
+
Resolve the worktree root using the `devflow:worktree-support` algorithm (use WORKTREE_PATH if provided, otherwise cwd). All paths below are relative to `{worktree}`.
|
|
93
|
+
|
|
94
|
+
**Step 1 — Read the pre-rendered index:**
|
|
95
|
+
|
|
96
|
+
Attempt to read `{worktree}/.devflow/learning/index.md`.
|
|
97
|
+
|
|
98
|
+
- If the file exists and contains non-empty content: use that content as `DECISIONS_CONTEXT`.
|
|
99
|
+
- If the file is absent or empty: set `DECISIONS_CONTEXT` to `(none)`.
|
|
100
|
+
|
|
101
|
+
**No subprocess, no `.cjs` script.** This is a single direct file read — the index is written at render time by `render-decisions.cjs` alongside `decisions.md`/`pitfalls.md`.
|
|
102
|
+
|
|
103
|
+
**Step 2 — Apply decisions using `devflow:apply-decisions`:**
|
|
104
|
+
|
|
105
|
+
When `DECISIONS_CONTEXT` is not `(none)`, follow `devflow:apply-decisions` to scan the index, identify plausibly-relevant entries, Read full entry bodies on demand, and cite verbatim IDs in downstream agent prompts and reasoning.
|
|
106
|
+
|
|
107
|
+
This produces a compact index of active ADR/PF entries written at render time — Deprecated/Superseded entries are already stripped. Pass `DECISIONS_CONTEXT` to the Triage agent in Phase 2 and to Code agents in Phase 4.
|
|
108
|
+
|
|
109
|
+
### Load Feature Knowledge
|
|
110
|
+
|
|
111
|
+
Resolve the worktree root using the `devflow:worktree-support` algorithm (use WORKTREE_PATH if provided, otherwise cwd). All paths below are relative to `{worktree}`.
|
|
112
|
+
|
|
113
|
+
**Step 1 — Read the index cache:**
|
|
114
|
+
|
|
115
|
+
Attempt to read `{worktree}/.devflow/features/index.md`. Each line follows the format:
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
- **{slug}** — {areas} — {Use-when description}
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
If `index.md` exists and contains at least one entry line, use it for relevance matching.
|
|
122
|
+
|
|
123
|
+
**Step 2 — Fallback: glob frontmatter (if `index.md` is absent or empty):**
|
|
124
|
+
|
|
125
|
+
Glob `{worktree}/.devflow/features/*/KNOWLEDGE.md`. For each file found, read only its YAML frontmatter block (between the opening and closing `---` delimiters). The frontmatter fields `name`, `description`, and `directories` are the authoritative relevance surface — `index.md` is only a cache.
|
|
126
|
+
|
|
127
|
+
**Step 3 — Pick relevant KBs:**
|
|
128
|
+
|
|
129
|
+
Match the current task area and description against each index line (or frontmatter `description` + `directories` on fallback). Select entries whose documented area overlaps the current task. This is a relevance judgment — prefer specificity over breadth.
|
|
130
|
+
|
|
131
|
+
**Step 4 — Read selected KBs:**
|
|
132
|
+
|
|
133
|
+
For each selected entry, read `{worktree}/.devflow/features/{slug}/KNOWLEDGE.md` in full. When the KB content contradicts the current code you observe, **trust the code** — the code is the freshness mechanism; the KB may lag behind.
|
|
134
|
+
|
|
135
|
+
**Step 5 — Set FEATURE_KNOWLEDGE:**
|
|
136
|
+
|
|
137
|
+
Concatenate the selected KNOWLEDGE.md files under slug headers:
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
--- Feature knowledge: {slug} ---
|
|
141
|
+
{full KNOWLEDGE.md content}
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
If no KBs exist, no KBs are relevant, or `.devflow/features/` is absent, set `FEATURE_KNOWLEDGE` to `(none)`.
|
|
145
|
+
|
|
146
|
+
**No subprocess, no git calls, no `.cjs` script.** This entire step is direct file reads — 1 index read (or N frontmatter reads on fallback), bounded by KB count.
|
|
147
|
+
|
|
148
|
+
Pass `FEATURE_KNOWLEDGE` to the Triage agent in Phase 2.
|
|
149
|
+
|
|
150
|
+
**Resolve `COMPLIANCE_SKILL_INSTALLED` once per run:** Check whether `~/.claude/skills/devflow:compliance/SKILL.md` exists (one file-existence check, read-only, silent). Set `COMPLIANCE_SKILL_INSTALLED = true` if the file exists, `false` otherwise.
|
|
151
|
+
Reuse this result for every worktree.
|
|
152
|
+
|
|
153
|
+
**Resolve `REVIEW_PUBLICATION` per worktree:** Read the current worktree's `.devflow/config.json` (a single, direct file read — multi-worktree repos may have different publication settings per worktree root). If the file exists and `reviewPublication` is one of `auto`, `full`, or `off`, set `REVIEW_PUBLICATION` to that value; otherwise set `REVIEW_PUBLICATION = "auto"`.
|
|
154
|
+
|
|
155
|
+
Note: `auto` is NOT fail-open — under `auto`, the Git agent probes the repository visibility and treats any error or unrecognised value as PUBLIC (mode STUB).
|
|
156
|
+
Resolve this per worktree — unlike the compliance check above, the config file is per worktree root.
|
|
157
|
+
|
|
158
|
+
### Phase 1: Parse Issues
|
|
159
|
+
|
|
160
|
+
**Produces:** ISSUES
|
|
161
|
+
**Requires:** TARGET_DIR
|
|
162
|
+
|
|
163
|
+
Read review reports from `{TARGET_DIR}/*.md` and extract:
|
|
164
|
+
|
|
165
|
+
**Exclude from issue extraction:**
|
|
166
|
+
- `review-summary.md` (Synthesize agent output, not individual findings)
|
|
167
|
+
- `resolution-summary.md` (if it exists from a previous partial run)
|
|
168
|
+
- `bug-analysis-summary.md` (Synthesize agent output for bug-analysis runs)
|
|
169
|
+
- `static-findings.md` (raw static analysis tool output, not individual findings)
|
|
170
|
+
|
|
171
|
+
**Include:** ALL issues from all categories and severities, including Suggestions.
|
|
172
|
+
|
|
173
|
+
Issues are extracted from `{TARGET_DIR}` only — never cross-reference reviews from other worktrees.
|
|
174
|
+
|
|
175
|
+
**Extract per issue:**
|
|
176
|
+
- `id`: Generated from file:line:type
|
|
177
|
+
- `file`: Full path
|
|
178
|
+
- `line`: Line number
|
|
179
|
+
- `severity`: CRITICAL/HIGH/MEDIUM/LOW
|
|
180
|
+
- `category`: blocking/should-fix/pre-existing
|
|
181
|
+
- `type`: Issue type from review
|
|
182
|
+
- `description`: Problem statement
|
|
183
|
+
- `suggested_fix`: From review report
|
|
184
|
+
- `reviewer_confidence`: Confidence percentage if present in the report (e.g., "85%"), else omit
|
|
185
|
+
|
|
186
|
+
### Phase 1b: Fetch External Review Threads (Compliance-gated)
|
|
187
|
+
|
|
188
|
+
**Produces:** THREAD_MAP
|
|
189
|
+
**Requires:** PR_INFO, COMPLIANCE_SKILL_INSTALLED
|
|
190
|
+
|
|
191
|
+
Skip this phase if `COMPLIANCE_SKILL_INSTALLED` is false.
|
|
192
|
+
|
|
193
|
+
Spawn Git agent to fetch unresolved external (non-devflow-authored) review threads:
|
|
194
|
+
|
|
195
|
+
```
|
|
196
|
+
Agent(subagent_type="Git"):
|
|
197
|
+
"OPERATION: fetch-review-threads
|
|
198
|
+
PR_NUMBER: {pr_number}
|
|
199
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
200
|
+
Return THREAD_MAP for use in Phase 9b."
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Parse `THREAD_MAP` from Git agent output. If Git agent returns `TRACEABILITY: DEGRADED`: record the reason, set `THREAD_MAP = empty`, continue.
|
|
204
|
+
|
|
205
|
+
### Phase 2: Global Triage
|
|
206
|
+
|
|
207
|
+
**Produces:** TRIAGE_RESULTS
|
|
208
|
+
**Requires:** ISSUES, DIFF_FILES, DECISIONS_CONTEXT, FEATURE_KNOWLEDGE, PR_DESCRIPTION, BRANCH_INFO
|
|
209
|
+
|
|
210
|
+
Spawn a single global Triage agent for ALL issues:
|
|
211
|
+
|
|
212
|
+
```
|
|
213
|
+
Agent(subagent_type="Triage"):
|
|
214
|
+
"ISSUES: {all_issues}
|
|
215
|
+
DIFF_FILES: {diff_files}
|
|
216
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
217
|
+
DECISIONS_CONTEXT: {decisions_context}
|
|
218
|
+
FEATURE_KNOWLEDGE: {feature_knowledge}
|
|
219
|
+
PR_DESCRIPTION: <pr-description>{pr_description}</pr-description>
|
|
220
|
+
Triage every issue using the blast-radius disposition matrix. Assign exactly one verdict per issue.
|
|
221
|
+
Follow devflow:apply-decisions to Read full ADR/PF bodies on demand.
|
|
222
|
+
Follow devflow:apply-feature-knowledge for FEATURE_KNOWLEDGE."
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
Wait for Triage agent to complete before proceeding. Parse verdict ledger from Triage agent output:
|
|
226
|
+
- **ESCALATED**: Security issues requiring human escalation
|
|
227
|
+
- **FIX_NOW**: Valid issues assigned to Code agents (with risk tier: Standard | Careful)
|
|
228
|
+
- **FALSE_POSITIVE**: Issues the Review agent got wrong (with cited evidence)
|
|
229
|
+
- **BY_DESIGN**: Intentional code (with ADR or code doc citation)
|
|
230
|
+
- **FIX_SEPARATE**: Valid but out of blast-radius scope (must become manage-debt ticket)
|
|
231
|
+
- **TECH_DEBT**: Architectural overhaul only — LAST RESORT
|
|
232
|
+
|
|
233
|
+
Collect all decisions citations (ADR-NNN / PF-NNN) from Triage agent Reasoning columns.
|
|
234
|
+
|
|
235
|
+
**Triage agent completeness assertion (avoids PF-002):** Verify the parsed ledger against ISSUES before proceeding:
|
|
236
|
+
1. Every issue `id` from ISSUES must appear in exactly one verdict bucket — none may vanish, none may appear in multiple buckets.
|
|
237
|
+
2. If the Triage agent output is empty, contains a skill re-entrancy guard string (e.g., contains `already running`), or is missing any issue IDs from ISSUES: treat as a **Triage agent failure**:
|
|
238
|
+
- Retry the Triage agent once with the same inputs.
|
|
239
|
+
- If the retry also fails the completeness check: abort with a clear error message listing the missing issue IDs and failure reason — never proceed with dropped issues.
|
|
240
|
+
|
|
241
|
+
**If ESCALATED issues exist:** surface them in a `## Escalations` section with a prominent display callout — never route escalations to manage-debt.
|
|
242
|
+
|
|
243
|
+
### Phase 3: Batch FIX_NOW Issues
|
|
244
|
+
|
|
245
|
+
**Produces:** BATCHES
|
|
246
|
+
**Requires:** TRIAGE_RESULTS
|
|
247
|
+
|
|
248
|
+
If FIX_NOW list is empty: skip to Phase 5 — write full summary (Phase 5), run manage-debt (Phase 9) if FIX_SEPARATE/TECH_DEBT exist, run thread resolution + resolution comment (Phase 9b), run merge readiness (Phase 9c), display results (Phase 10).
|
|
249
|
+
|
|
250
|
+
Otherwise, batch FIX_NOW issues for Code agent execution:
|
|
251
|
+
- **Same-file issues** → one batch (one Code agent per file, sequential for same-file pairs)
|
|
252
|
+
- **Distinct-file issues** → parallel Code agents
|
|
253
|
+
- **Max 5 issues per batch** — chunk large sets
|
|
254
|
+
|
|
255
|
+
### Phase 4: Fix (Code agent × N)
|
|
256
|
+
|
|
257
|
+
**Produces:** CODE_AGENT_RESULTS
|
|
258
|
+
**Requires:** BATCHES, DECISIONS_CONTEXT, FEATURE_KNOWLEDGE, BRANCH_INFO
|
|
259
|
+
|
|
260
|
+
For each batch, spawn Code agent with `OPERATION: issue-fix` and `PUSH: false`:
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
Agent(subagent_type="Code"):
|
|
264
|
+
"TASK_ID: resolve-{batch-id}
|
|
265
|
+
OPERATION: issue-fix
|
|
266
|
+
ISSUES: {fix_now_issues_in_batch}
|
|
267
|
+
SCOPE: {risk_tier_per_issue}
|
|
268
|
+
PUSH: false
|
|
269
|
+
CREATE_PR: false
|
|
270
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
271
|
+
DECISIONS_CONTEXT: {decisions_context}
|
|
272
|
+
FEATURE_KNOWLEDGE: {feature_knowledge}
|
|
273
|
+
Fix only the listed pre-classified FIX_NOW issues. Do not re-litigate dispositions.
|
|
274
|
+
Same-file issues → one commit. Include ## Verification block in report.
|
|
275
|
+
Regression fix without failing-then-passing regression test → BLOCKED."
|
|
276
|
+
```
|
|
277
|
+
|
|
278
|
+
Spawn distinct-file batch Code agents **in a single message** (parallel). Sequential Code agents for same-file batches must wait for the prior Code agent to complete before spawning.
|
|
279
|
+
|
|
280
|
+
Collect from each Code agent:
|
|
281
|
+
- `{status, commitShas, unresolved}` per batch
|
|
282
|
+
- `## Verification` block (commands run + results)
|
|
283
|
+
|
|
284
|
+
### Phase 5: Write resolution-summary.md
|
|
285
|
+
|
|
286
|
+
**Produces:** RESOLUTION_FILE (early write for compaction safety)
|
|
287
|
+
**Requires:** TRIAGE_RESULTS, CODE_AGENT_RESULTS
|
|
288
|
+
|
|
289
|
+
**Immediately write `resolution-summary.md`** to `{TARGET_DIR}` using the Write tool. Do this now — not in Phase 9 — while results are fresh in context. This ensures the record is persisted even if later phases (Simplify, Verification Gate, CI gate, Tech Debt) trigger context compaction.
|
|
290
|
+
|
|
291
|
+
Set `Tracked` for FIX_SEPARATE and TECH_DEBT items to `(pending)` — to be backfilled after Phase 9 manage-debt.
|
|
292
|
+
|
|
293
|
+
Use the template from the Output Artifact section below.
|
|
294
|
+
|
|
295
|
+
### Phase 6: Simplify
|
|
296
|
+
|
|
297
|
+
**Produces:** SIMPLIFICATION_RESULT
|
|
298
|
+
**Requires:** CODE_AGENT_RESULTS
|
|
299
|
+
|
|
300
|
+
If any fixes were made, spawn Simplify agent to refine the changed code:
|
|
301
|
+
|
|
302
|
+
```
|
|
303
|
+
Agent(subagent_type="Simplify", run_in_background=false):
|
|
304
|
+
"TASK_DESCRIPTION: Issue resolution fixes
|
|
305
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
306
|
+
FILES_CHANGED: {list of files modified by Code agents}
|
|
307
|
+
Simplify and refine the fixes for clarity and consistency"
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
### Phase 7: Verification Gate
|
|
311
|
+
|
|
312
|
+
**Produces:** VERIFICATION_STATUS
|
|
313
|
+
**Requires:** CODE_AGENT_RESULTS
|
|
314
|
+
|
|
315
|
+
If no fixes were made (CODE_AGENT_RESULTS contains 0 commits) → set VERIFICATION_STATUS = SKIPPED, skip: "No fixes applied — skipping Verification Gate."
|
|
316
|
+
|
|
317
|
+
Otherwise, spawn Validate agent:
|
|
318
|
+
|
|
319
|
+
```
|
|
320
|
+
Agent(subagent_type="Validate", model="haiku"):
|
|
321
|
+
"FILES_CHANGED: {list of files from Code agent output}
|
|
322
|
+
VALIDATION_SCOPE: full
|
|
323
|
+
Run build, typecheck, lint, test. Report pass/fail with failure details."
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
`validation_retry_count = 0`
|
|
327
|
+
|
|
328
|
+
**If FAIL:**
|
|
329
|
+
1. Extract failure details from Validate agent output
|
|
330
|
+
2. Increment `validation_retry_count`
|
|
331
|
+
3. If `validation_retry_count <= 2`:
|
|
332
|
+
- Spawn Code agent with fix context:
|
|
333
|
+
```
|
|
334
|
+
Agent(subagent_type="Code"):
|
|
335
|
+
"TASK_ID: resolve-{batch-id}-valfix-{count}
|
|
336
|
+
OPERATION: validation-fix
|
|
337
|
+
VALIDATION_FAILURES: {parsed failures from Validate agent}
|
|
338
|
+
SCOPE: Fix only the listed failures, no other changes
|
|
339
|
+
PUSH: false
|
|
340
|
+
CREATE_PR: false
|
|
341
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)"
|
|
342
|
+
```
|
|
343
|
+
- Loop back to re-validate
|
|
344
|
+
4. If `validation_retry_count > 2`: set VERIFICATION_STATUS = FAILED and exit the validation loop — record a blocking callout in the `## Verification` section (never a silent pass).
|
|
345
|
+
|
|
346
|
+
**If PASS:** set VERIFICATION_STATUS = PASS and exit the validation loop.
|
|
347
|
+
|
|
348
|
+
Record `## Verification` outcome in resolution-summary.md (runs unconditionally after the validation loop exits):
|
|
349
|
+
- Rewrite the `## Verification` section with | Command | Result | table + `Final gate: PASS | FAILED after N attempts`
|
|
350
|
+
|
|
351
|
+
Push all commits to remote once (Code agents and validation-fix Code agents ran with PUSH: false — runs unconditionally whether the gate PASSED or FAILED, so the branch is always visible before Phase 9 or CI runs):
|
|
352
|
+
```bash
|
|
353
|
+
git -C {worktree} push
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
**Route after push:** VERIFICATION_STATUS = PASS → continue to Phase 8 (CI gate). VERIFICATION_STATUS = FAILED → skip Phase 8; proceed directly to Phase 9 (manage-debt), then Phase 9b (thread resolution + resolution comment), then Phase 9c (merge readiness), then Phase 10 (report). VERIFICATION_STATUS = SKIPPED → skip Phase 8 (no fixes applied); proceed to Phase 9 (manage-debt), then Phase 9b (thread resolution + resolution comment), then Phase 9c (merge readiness, compliance-gated), then Phase 10 (report).
|
|
357
|
+
|
|
358
|
+
### Phase 8: CI Status Gate (Conditional)
|
|
359
|
+
|
|
360
|
+
**Produces:** CI_STATUS
|
|
361
|
+
**Requires:** CODE_AGENT_RESULTS, VERIFICATION_STATUS
|
|
362
|
+
|
|
363
|
+
If no issues were fixed (CODE_AGENT_RESULTS contains 0 fixes) → skip: "No fixes applied — skipping CI validation."
|
|
364
|
+
|
|
365
|
+
If Verification Gate FAILED → skip CI gate (validation failures already reported).
|
|
366
|
+
|
|
367
|
+
Otherwise, for each worktree with fixes:
|
|
368
|
+
|
|
369
|
+
<!-- PATTERN: ci-status-gate — shared polling/classification/budget logic; context-specific preamble lives outside this block -->
|
|
370
|
+
1. Spawn `Agent(subagent_type="Git")` with `OPERATION: check-ci-status` and `WORKTREE_PATH`.
|
|
371
|
+
2. **If PASSING** → proceed to next phase.
|
|
372
|
+
3. **If NO_PR or NO_CI** → skip: "No PR/CI configured, skipping CI validation." Proceed to next phase.
|
|
373
|
+
4. **If PENDING** → poll every 60 seconds (global budget, see step 6). Re-spawn Git agent each poll. If PASSING → proceed. If still PENDING after budget exhausted → report "CI still running — verify manually before merging" and proceed.
|
|
374
|
+
5. **If FAILING** → report failing checks. Spawn `Agent(subagent_type="Code")` to fix CI failures based on check names and failure context. After fix, push and re-check. Max 2 fix attempts. If still failing → report failures and proceed.
|
|
375
|
+
6. **Total budget**: max 10 polls and max 2 fix attempts across all check/fix cycles combined. If the budget is exhausted, report current status and proceed.
|
|
376
|
+
<!-- /PATTERN: ci-status-gate -->
|
|
377
|
+
|
|
378
|
+
### Phase 9: Manage Debt (Sequential)
|
|
379
|
+
|
|
380
|
+
**Produces:** DEBT_RESULT
|
|
381
|
+
**Requires:** TRIAGE_RESULTS, TARGET_DIR
|
|
382
|
+
|
|
383
|
+
**IMPORTANT**: Run sequentially across all worktrees (not in parallel) to avoid GitHub API conflicts.
|
|
384
|
+
|
|
385
|
+
If any issues are FIX_SEPARATE or TECH_DEBT, spawn Git agent:
|
|
386
|
+
|
|
387
|
+
```
|
|
388
|
+
Agent(subagent_type="Git"):
|
|
389
|
+
"OPERATION: manage-debt
|
|
390
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
391
|
+
REVIEW_DIR: {TARGET_DIR}
|
|
392
|
+
TIMESTAMP: {timestamp}
|
|
393
|
+
Note: Deferred issues (FIX_SEPARATE and TECH_DEBT) from triage are in resolution-summary.md
|
|
394
|
+
under ## Fix Separately and ## Deferred to Tech Debt."
|
|
395
|
+
```
|
|
396
|
+
|
|
397
|
+
After manage-debt completes, backfill `Tracked = #{backlog_issue_number}` in resolution-summary.md for each FIX_SEPARATE and TECH_DEBT item.
|
|
398
|
+
|
|
399
|
+
### Phase 9b: Thread Resolution + Resolution Comment
|
|
400
|
+
|
|
401
|
+
**Produces:** THREAD_RESOLUTION_RESULT, PR_COMMENT
|
|
402
|
+
**Requires:** THREAD_MAP (from Phase 1b), VERIFICATION_STATUS, CODE_AGENT_RESULTS, TRIAGE_RESULTS
|
|
403
|
+
|
|
404
|
+
**Step 9b-1: Resolve external threads (Compliance-gated)**
|
|
405
|
+
|
|
406
|
+
Skip this step if `COMPLIANCE_SKILL_INSTALLED` is false or THREAD_MAP is empty.
|
|
407
|
+
|
|
408
|
+
Prepare THREAD_MAP with verdicts from triage/code agent results:
|
|
409
|
+
- For each `ext-{N}`: match to an issue verdict (FIXED, FALSE_POSITIVE, BY_DESIGN, ESCALATED) by `file:line` correlation
|
|
410
|
+
- Include `commit_sha` from Code agent results for FIXED verdicts
|
|
411
|
+
- Unmatched threads: ESCALATED (human review)
|
|
412
|
+
|
|
413
|
+
Spawn Git agent:
|
|
414
|
+
|
|
415
|
+
```
|
|
416
|
+
Agent(subagent_type="Git"):
|
|
417
|
+
"OPERATION: resolve-review-threads
|
|
418
|
+
THREAD_MAP: {thread_map_with_verdicts}
|
|
419
|
+
VERIFICATION_STATUS: {PASS | FAILED | SKIPPED}
|
|
420
|
+
PR_NUMBER: {pr_number}
|
|
421
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
422
|
+
D9: resolve threads only when VERIFICATION_STATUS == PASS and verdict is FIXED/FALSE_POSITIVE/BY_DESIGN with cited evidence."
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
If Git agent returns `TRACEABILITY: DEGRADED`: warn, record in `## Third-Party Threads`, continue to step 9b-2.
|
|
426
|
+
|
|
427
|
+
**Step 9b-2: Post resolution summary (ALWAYS-ON)**
|
|
428
|
+
|
|
429
|
+
Always run this step when a PR is known, regardless of `COMPLIANCE_SKILL_INSTALLED`.
|
|
430
|
+
|
|
431
|
+
Spawn Git agent:
|
|
432
|
+
|
|
433
|
+
```
|
|
434
|
+
Agent(subagent_type="Git"):
|
|
435
|
+
"OPERATION: post-resolution-summary
|
|
436
|
+
PR_NUMBER: {pr_number}
|
|
437
|
+
RESOLUTION_SUMMARY_PATH: {TARGET_DIR}/resolution-summary.md
|
|
438
|
+
REVIEW_PUBLICATION: {REVIEW_PUBLICATION}
|
|
439
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)
|
|
440
|
+
Posts the consolidated resolution-summary comment (marker-deduped by the operation)."
|
|
441
|
+
```
|
|
442
|
+
|
|
443
|
+
If Git agent returns `TRACEABILITY: DEGRADED`: warn, continue.
|
|
444
|
+
|
|
445
|
+
Update `## Third-Party Threads` section in resolution-summary.md with thread resolution results.
|
|
446
|
+
|
|
447
|
+
### Phase 9c: Merge Readiness (Compliance-gated, Report-only)
|
|
448
|
+
|
|
449
|
+
**Produces:** MERGE_READINESS_REPORT
|
|
450
|
+
**Requires:** PR_INFO, COMPLIANCE_SKILL_INSTALLED
|
|
451
|
+
|
|
452
|
+
Skip this phase if `COMPLIANCE_SKILL_INSTALLED` is false.
|
|
453
|
+
|
|
454
|
+
Spawn Git agent:
|
|
455
|
+
|
|
456
|
+
```
|
|
457
|
+
Agent(subagent_type="Git"):
|
|
458
|
+
"OPERATION: check-merge-readiness
|
|
459
|
+
PR_NUMBER: {pr_number}
|
|
460
|
+
WORKTREE_PATH: {worktree_path} (omit if cwd)"
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
Include merge readiness verdict (READY / NOT_READY / DEGRADED) in Phase 10 report. Never block on this result — report-only.
|
|
464
|
+
|
|
465
|
+
If Git agent returns `TRACEABILITY: DEGRADED`: warn, proceed to Phase 10.
|
|
466
|
+
|
|
467
|
+
### Phase 10: Report
|
|
468
|
+
|
|
469
|
+
**Requires:** TARGET_DIR
|
|
470
|
+
|
|
471
|
+
The resolution summary was already written to `{TARGET_DIR}/resolution-summary.md` in Phase 5 (updated by Phase 7 and Phase 9). Display results to the user:
|
|
472
|
+
|
|
473
|
+
```
|
|
474
|
+
## Resolution Summary
|
|
475
|
+
|
|
476
|
+
**Branch**: {branch}
|
|
477
|
+
**Reviews Processed**: {n} reports from {TARGET_DIR}
|
|
478
|
+
**Total Issues**: {n}
|
|
479
|
+
|
|
480
|
+
### Results
|
|
481
|
+
| Outcome | Count |
|
|
482
|
+
|---------|-------|
|
|
483
|
+
| Fixed | {n} |
|
|
484
|
+
| False Positive | {n} |
|
|
485
|
+
| By Design | {n} |
|
|
486
|
+
| Deferred | {n} |
|
|
487
|
+
| Blocked | {n} |
|
|
488
|
+
| Escalated | {n} |
|
|
489
|
+
|
|
490
|
+
### Verification
|
|
491
|
+
Final gate: {PASS | FAILED after N attempts}
|
|
492
|
+
|
|
493
|
+
### Commits Created
|
|
494
|
+
- {sha} {message}
|
|
495
|
+
|
|
496
|
+
### Escalations (if any)
|
|
497
|
+
> ⚠️ Security escalations require human review before merge:
|
|
498
|
+
> {list of escalated issues}
|
|
499
|
+
|
|
500
|
+
### Tech Debt Added
|
|
501
|
+
- {n} items added to backlog
|
|
502
|
+
|
|
503
|
+
### Publication (from Git agent)
|
|
504
|
+
{FULL (private repo) | FULL (config override) | STUB (public repository) | OFF (publication disabled by config)}
|
|
505
|
+
|
|
506
|
+
### Merge Readiness (if compliance enabled)
|
|
507
|
+
{READY | NOT_READY (reason) | DEGRADED (reason) | SKIPPED (compliance not enabled)}
|
|
508
|
+
|
|
509
|
+
### Artifacts
|
|
510
|
+
- Resolution report: {TARGET_DIR}/resolution-summary.md
|
|
511
|
+
```
|
|
512
|
+
|
|
513
|
+
In multi-worktree mode, report results per worktree with aggregate summary.
|
|
514
|
+
|
|
515
|
+
### Feature Knowledge Write-Back (Conditional)
|
|
516
|
+
|
|
517
|
+
Resolve the worktree root using the `devflow:worktree-support` algorithm (use WORKTREE_PATH if provided, otherwise cwd). All paths below are relative to `{worktree}`.
|
|
518
|
+
|
|
519
|
+
**Step 1 — Check the opt-out gate:**
|
|
520
|
+
|
|
521
|
+
Read `{worktree}/.devflow/config.json`. If the `knowledge` field is `false`, skip write-back entirely — the user has disabled it.
|
|
522
|
+
|
|
523
|
+
If `.devflow/config.json` does not exist, proceed (default is enabled).
|
|
524
|
+
|
|
525
|
+
**Step 2 — Evaluate whether write-back is warranted:**
|
|
526
|
+
|
|
527
|
+
Only proceed if **at least one** of these is true:
|
|
528
|
+
- This workflow changed files in a directory that is documented by an existing feature knowledge base (a documented area changed).
|
|
529
|
+
- This workflow surfaced durable, cross-cutting knowledge about a codebase area that would help future agents working in the same area — patterns, anti-patterns, integration points, gotchas not visible from a single file read.
|
|
530
|
+
|
|
531
|
+
**Never spawn unconditionally.** If neither condition is met, skip write-back silently.
|
|
532
|
+
|
|
533
|
+
**Step 3 — Spawn the Knowledge agent:**
|
|
534
|
+
|
|
535
|
+
Spawn `Agent(subagent_type="Knowledge")` with the following context:
|
|
536
|
+
|
|
537
|
+
```
|
|
538
|
+
"WORKTREE_PATH: {worktree root}
|
|
539
|
+
FEATURE_SLUG: {slug derived from primary changed directory, kebab-case}
|
|
540
|
+
FEATURE_NAME: {human-readable name}
|
|
541
|
+
DIRECTORIES: {list of primary directories touched by this workflow}
|
|
542
|
+
FILES_CHANGED: {list of files changed}
|
|
543
|
+
DECISIONS_CONTEXT: {DECISIONS_CONTEXT if available, else (none)}
|
|
544
|
+
|
|
545
|
+
Load the devflow:feature-knowledge skill and follow its authoring process.
|
|
546
|
+
|
|
547
|
+
Write the knowledge base to:
|
|
548
|
+
{worktree}/.devflow/features/{slug}/KNOWLEDGE.md
|
|
549
|
+
|
|
550
|
+
Then update the index cache by performing a read-modify-write on:
|
|
551
|
+
{worktree}/.devflow/features/index.md
|
|
552
|
+
|
|
553
|
+
Index line format: `- **{slug}** — {areas} — {Use-when description}`
|
|
554
|
+
|
|
555
|
+
If the line for this slug already exists in index.md, replace it. If it does not exist, append it. If index.md does not exist, create it with just this line.
|
|
556
|
+
|
|
557
|
+
The frontmatter in KNOWLEDGE.md is the source of truth — index.md is only a cache. Write the two files directly — no intermediate result JSON files, no external scripts.
|
|
558
|
+
|
|
559
|
+
After writing, commit the two files to the current worktree branch yourself by running git via your Bash tool (do not use a script). Stage ONLY .devflow/features/index.md and .devflow/features/{slug}/KNOWLEDGE.md, then commit just those paths with a docs(knowledge): message. Do NOT push, do NOT force, do NOT stage anything else. Follow your Commit Protocol — it is non-blocking, so if any git step fails, report KB_COMMIT and finish normally."
|
|
560
|
+
```
|
|
561
|
+
|
|
562
|
+
**Failure handling**: Non-blocking. If the Knowledge agent fails, log the failure and continue — the workflow outcome is not affected by write-back success.
|
|
563
|
+
|
|
564
|
+
## Architecture
|
|
565
|
+
|
|
566
|
+
```
|
|
567
|
+
/resolve (orchestrator - spawns agents only)
|
|
568
|
+
│
|
|
569
|
+
├─ Phase 0: Worktree Discovery & Pre-flight
|
|
570
|
+
│ ├─ Step 0a: git worktree list → filter resolvable
|
|
571
|
+
│ ├─ Step 0b: Git agent (validate-branch) per worktree [parallel] ← + DIFF_FILES
|
|
572
|
+
│ ├─ Step 0c: Target latest review directory per worktree
|
|
573
|
+
│ └─ Step 0d: Load project decisions → DECISIONS_CONTEXT + COMPLIANCE_SKILL_INSTALLED + REVIEW_PUBLICATION
|
|
574
|
+
│
|
|
575
|
+
├─ Phase 1: Parse issues from TARGET_DIR + extract confidence %
|
|
576
|
+
│
|
|
577
|
+
├─ Phase 1b: Fetch external threads (compliance-gated)
|
|
578
|
+
│ └─ Git agent (fetch-review-threads) → THREAD_MAP
|
|
579
|
+
│
|
|
580
|
+
├─ Phase 2: Global Triage [Triage agent, opus, single agent]
|
|
581
|
+
│ └─ ALL issues → verdict ledger by disposition
|
|
582
|
+
│
|
|
583
|
+
├─ Phase 3: Batch FIX_NOW issues (skip if empty)
|
|
584
|
+
│ └─ same-file sequential, distinct-file parallel, max 5/batch
|
|
585
|
+
│
|
|
586
|
+
├─ Phase 4: Fix [Code agent × N, OPERATION: issue-fix, PUSH: false]
|
|
587
|
+
│ └─ Returns Verification block per batch
|
|
588
|
+
│
|
|
589
|
+
├─ Phase 5: Write resolution-summary.md (compaction safety; Tracked = "(pending)")
|
|
590
|
+
│
|
|
591
|
+
├─ Phase 6: Simplify [Simplify agent]
|
|
592
|
+
│
|
|
593
|
+
├─ Phase 7: Verification Gate [Validate agent, haiku] + push + Code agent validation-fix loop ≤2
|
|
594
|
+
│
|
|
595
|
+
├─ Phase 8: CI Status Gate (conditional — skipped if no fixes or verification FAILED)
|
|
596
|
+
│ └─ Git agent (check-ci-status) → poll/fix loop
|
|
597
|
+
│
|
|
598
|
+
├─ Phase 9: Git agent (manage-debt) — FIX_SEPARATE + TECH_DEBT → backfill Tracked=#
|
|
599
|
+
│ SEQUENTIAL across worktrees
|
|
600
|
+
│
|
|
601
|
+
├─ Phase 9b: Thread resolution + resolution comment
|
|
602
|
+
│ ├─ Step 9b-1: Git agent (resolve-review-threads) — compliance-gated
|
|
603
|
+
│ └─ Step 9b-2: Git agent (post-resolution-summary, REVIEW_PUBLICATION) — always-on
|
|
604
|
+
│
|
|
605
|
+
├─ Phase 9c: Git agent (check-merge-readiness) — compliance-gated, report-only
|
|
606
|
+
│
|
|
607
|
+
└─ Phase 10: Display results (resolution-summary.md written in Phase 5)
|
|
608
|
+
```
|
|
609
|
+
|
|
610
|
+
## Edge Cases
|
|
611
|
+
|
|
612
|
+
| Case | Handling |
|
|
613
|
+
|------|----------|
|
|
614
|
+
| No reviews exist | Check bug-analysis fallback (Step 0c-5b); if also absent, error and suggest `/code-review` or `/bug-analysis` |
|
|
615
|
+
| All false positives | Normal completion, report shows 0 fixes |
|
|
616
|
+
| Fix attempt fails | Revert changes, mark BLOCKED, continue others |
|
|
617
|
+
| Issue dependencies | Sequential chain, skip dependents if predecessor blocked |
|
|
618
|
+
| No actionable issues | Report "No issues to resolve" |
|
|
619
|
+
| Incomplete review directory (no review-summary.md) | Skip — resolve only targets complete reviews |
|
|
620
|
+
| Latest review already resolved | Check bug-analysis fallback (Step 0c-5b); if also absent, skip worktree and suggest `/code-review` or `/bug-analysis` |
|
|
621
|
+
| Legacy flat layout (no subdirectories) | Read flat *.md files directly (backwards compatible) |
|
|
622
|
+
| `--review {timestamp}` in multi-worktree mode | Not supported — use `--path` + `--review` to target specific worktree + review |
|
|
623
|
+
| Worktree pre-flight fails | Report failure, continue with other worktrees |
|
|
624
|
+
| Empty FIX_NOW list | Skip Phases 3-4/6-8; still write full summary + run manage-debt if FIX_SEPARATE/TECH_DEBT exist |
|
|
625
|
+
| ESCALATED security issues | Surfaced in ## Escalations + display callout; never routed to manage-debt |
|
|
626
|
+
| Verification Gate FAILED after 2 attempts | Recorded as FAILED in ## Verification + blocking callout; CI gate skipped; proceed to Phase 9 (manage-debt) then Phase 10 (display) |
|
|
627
|
+
| gh/GitHub absent | manage-debt fails gracefully; Tracked stays "(pending)" + noted — recorded, not dropped |
|
|
628
|
+
| COMPLIANCE_SKILL_INSTALLED false | Phases 1b, 9b-step-1, and 9c are skipped; post-resolution-summary (Phase 9b step 2) still runs if a PR is known |
|
|
629
|
+
| THREAD_MAP empty or DEGRADED | Phase 9b-1 skipped; resolution comment (Phase 9b-2) still posted if PR known |
|
|
630
|
+
| No PR exists for post-resolution-summary | Git agent returns TRACEABILITY: DEGRADED; resolution-summary.md already on disk — not a blocker |
|
|
631
|
+
| Public repo (`auto` mode) | Git agent probes visibility, posts counts-only STUB comment; full resolution report stays local |
|
|
632
|
+
| `reviewPublication: off` | Git agent skips posting the resolution comment (OFF) |
|
|
633
|
+
|
|
634
|
+
## Principles
|
|
635
|
+
|
|
636
|
+
1. **Orchestration only** - Command spawns agents, doesn't do git/resolve work itself
|
|
637
|
+
2. **No agent grades its own homework** - Triage agent validates, Code agents fix, Validate agent verifies
|
|
638
|
+
3. **Global triage first** - Single Triage agent sees all issues for cross-issue consistency; no issue may vanish
|
|
639
|
+
4. **Git agent for git work** - All git operations go through Git agent
|
|
640
|
+
5. **Parallel execution** - Distinct-file Code agent batches run in parallel; same-file batches sequential
|
|
641
|
+
6. **Honest reporting** - Verification failure is recorded and displayed, never silenced
|
|
642
|
+
7. **Complete tracking** - Every issue gets exactly one verdict in the ledger
|
|
643
|
+
8. **Latest review by default** - Only process the most recent complete review
|
|
644
|
+
9. **Auto-discover worktrees** - One command handles all resolvable branches
|
|
645
|
+
10. **Traceability-aware** - Compliance-gated ops (thread fetch/resolve, merge readiness) degrade cleanly when skill absent; resolution comment (Phase 9b-2) is always-on
|
|
646
|
+
|
|
647
|
+
## Output Artifact
|
|
648
|
+
|
|
649
|
+
Written in Phase 5 (Collect Results) to `{TARGET_DIR}/resolution-summary.md`:
|
|
650
|
+
|
|
651
|
+
```markdown
|
|
652
|
+
# Resolution Summary
|
|
653
|
+
|
|
654
|
+
**Branch**: {branch} -> {base}
|
|
655
|
+
**Date**: {timestamp}
|
|
656
|
+
**Review**: {TARGET_DIR}
|
|
657
|
+
**Command**: /resolve
|
|
658
|
+
|
|
659
|
+
## Decisions Citations
|
|
660
|
+
|
|
661
|
+
- applies ADR-{NNN} — {batch-id}, {issue-id}
|
|
662
|
+
- avoids PF-{NNN} — {batch-id}, {issue-id}
|
|
663
|
+
|
|
664
|
+
(Omit section if no citations were made)
|
|
665
|
+
|
|
666
|
+
## Statistics
|
|
667
|
+
| Metric | Value |
|
|
668
|
+
|--------|-------|
|
|
669
|
+
| Total Issues | {n} |
|
|
670
|
+
| Fixed | {n} |
|
|
671
|
+
| False Positive | {n} |
|
|
672
|
+
| By Design | {n} |
|
|
673
|
+
| Deferred | {n} |
|
|
674
|
+
| Blocked | {n} |
|
|
675
|
+
| Escalated | {n} |
|
|
676
|
+
|
|
677
|
+
_(Note: `Deferred` = `## Fix Separately` count + `## Deferred to Tech Debt` count combined — the two sections are distinct by scope, but the Statistics row aggregates both for the convergence parser.)_
|
|
678
|
+
|
|
679
|
+
## Verification
|
|
680
|
+
| Command | Result |
|
|
681
|
+
|---------|--------|
|
|
682
|
+
| {build/typecheck/lint/test} | PASS \| FAIL |
|
|
683
|
+
|
|
684
|
+
Regression tests added: {n}
|
|
685
|
+
|
|
686
|
+
Final gate: PASS | FAILED after {n} attempts
|
|
687
|
+
|
|
688
|
+
## Fixed Issues
|
|
689
|
+
| Issue | File:Line | Commit |
|
|
690
|
+
|-------|-----------|--------|
|
|
691
|
+
| {description} | {file}:{line} | {sha} |
|
|
692
|
+
|
|
693
|
+
## False Positives
|
|
694
|
+
| Issue | File:Line | Reasoning |
|
|
695
|
+
|-------|-----------|-----------|
|
|
696
|
+
| {description} | {file}:{line} | {why} |
|
|
697
|
+
|
|
698
|
+
## By Design
|
|
699
|
+
| Issue | File:Line | Rationale (ADR/doc) |
|
|
700
|
+
|-------|-----------|---------------------|
|
|
701
|
+
| {description} | {file}:{line} | {applies ADR-NNN or code comment} |
|
|
702
|
+
|
|
703
|
+
## Fix Separately
|
|
704
|
+
| Issue | File:Line | Reason | Tracked |
|
|
705
|
+
|-------|-----------|--------|---------|
|
|
706
|
+
| {description} | {file}:{line} | {why out of scope} | #{backlog} |
|
|
707
|
+
|
|
708
|
+
## Deferred to Tech Debt
|
|
709
|
+
| Issue | File:Line | Risk Factor |
|
|
710
|
+
|-------|-----------|-------------|
|
|
711
|
+
| {description} | {file}:{line} | {architectural concern} |
|
|
712
|
+
|
|
713
|
+
## Escalations
|
|
714
|
+
| Issue | File:Line | Security Concern |
|
|
715
|
+
|-------|-----------|-----------------|
|
|
716
|
+
| {description} | {file}:{line} | {why escalated} |
|
|
717
|
+
|
|
718
|
+
## Blocked
|
|
719
|
+
| Issue | File:Line | Blocker |
|
|
720
|
+
|-------|-----------|---------|
|
|
721
|
+
| {description} | {file}:{line} | {why} |
|
|
722
|
+
|
|
723
|
+
## Third-Party Threads
|
|
724
|
+
| Thread | File:Line | Verdict | Status |
|
|
725
|
+
|--------|-----------|---------|--------|
|
|
726
|
+
| ext-{N} | {file}:{line} | {FIXED \| FALSE_POSITIVE \| BY_DESIGN \| ESCALATED} | {RESOLVED \| REPLIED \| DEGRADED} |
|
|
727
|
+
```
|
|
728
|
+
|
|
729
|
+
_(Omit `## Third-Party Threads` if `COMPLIANCE_SKILL_INSTALLED` is false or no external threads were found.)_
|
|
730
|
+
|
|
731
|
+
**Statistics mapping (parser contract)**: the `Deferred` row = FIX_SEPARATE + TECH_DEBT (both deferral dispositions combined); By Design and Escalated are counted separately and excluded from `Deferred`. The `/code-review` convergence parser reads the `Deferred`, `Fixed`, and `False Positive` Statistics rows plus the `## Fixed Issues` / `## False Positives` headings — keep those labels byte-stable.
|