@jokerized/getresearchdone 0.4.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/.claude-plugin/plugin.json +103 -0
- package/README.md +211 -0
- package/agents/grd-baseline-assessor.md +684 -0
- package/agents/grd-code-reviewer.md +300 -0
- package/agents/grd-codebase-mapper.md +355 -0
- package/agents/grd-critique-agent.md +119 -0
- package/agents/grd-debugger.md +519 -0
- package/agents/grd-deep-diver.md +737 -0
- package/agents/grd-eval-planner.md +913 -0
- package/agents/grd-eval-reporter.md +717 -0
- package/agents/grd-executor.md +683 -0
- package/agents/grd-feasibility-analyst.md +624 -0
- package/agents/grd-integration-checker.md +367 -0
- package/agents/grd-knowledge-miner.md +81 -0
- package/agents/grd-migrator.md +88 -0
- package/agents/grd-phase-researcher.md +697 -0
- package/agents/grd-plan-checker.md +443 -0
- package/agents/grd-planner.md +1532 -0
- package/agents/grd-product-owner.md +562 -0
- package/agents/grd-project-researcher.md +513 -0
- package/agents/grd-research-synthesizer.md +273 -0
- package/agents/grd-roadmapper.md +798 -0
- package/agents/grd-surveyor.md +566 -0
- package/agents/grd-verifier.md +893 -0
- package/bin/gd.js +4 -0
- package/bin/gd.ts +227 -0
- package/bin/grd-manifest.js +4 -0
- package/bin/grd-manifest.ts +286 -0
- package/bin/grd-mcp-server.js +4 -0
- package/bin/grd-mcp-server.ts +124 -0
- package/bin/grd-tools.js +4 -0
- package/bin/grd-tools.ts +2471 -0
- package/bin/postinstall.js +4 -0
- package/bin/postinstall.ts +80 -0
- package/commands/add-phase.md +123 -0
- package/commands/add-todo.md +87 -0
- package/commands/assess-baseline.md +289 -0
- package/commands/autopilot.md +100 -0
- package/commands/autoplan.md +55 -0
- package/commands/check-todos.md +87 -0
- package/commands/compare-methods.md +262 -0
- package/commands/complete-milestone.md +225 -0
- package/commands/debug.md +372 -0
- package/commands/deep-dive.md +288 -0
- package/commands/discover.md +281 -0
- package/commands/discuss-phase.md +188 -0
- package/commands/discuss.md +55 -0
- package/commands/eval-report.md +310 -0
- package/commands/evolve.md +79 -0
- package/commands/execute-phase.md +1017 -0
- package/commands/feasibility.md +292 -0
- package/commands/help.md +407 -0
- package/commands/init.md +1508 -0
- package/commands/insert-phase.md +113 -0
- package/commands/iterate.md +327 -0
- package/commands/list-phase-assumptions.md +217 -0
- package/commands/long-term-roadmap.md +202 -0
- package/commands/map-codebase.md +111 -0
- package/commands/migrate.md +159 -0
- package/commands/new-milestone.md +169 -0
- package/commands/pause-work.md +83 -0
- package/commands/plan-milestone-gaps.md +373 -0
- package/commands/plan-phase.md +655 -0
- package/commands/principles.md +328 -0
- package/commands/product-plan.md +319 -0
- package/commands/progress.md +481 -0
- package/commands/quick.md +167 -0
- package/commands/reapply-patches.md +154 -0
- package/commands/remove-phase.md +97 -0
- package/commands/requirement.md +96 -0
- package/commands/resume-project.md +113 -0
- package/commands/settings.md +1144 -0
- package/commands/survey.md +242 -0
- package/commands/sync.md +246 -0
- package/commands/tracker-setup.md +322 -0
- package/commands/update.md +202 -0
- package/commands/verify-phase.md +335 -0
- package/commands/verify-work.md +701 -0
- package/commands/wireup.md +29 -0
- package/dist/bin/gd.d.ts +3 -0
- package/dist/bin/gd.d.ts.map +1 -0
- package/dist/bin/gd.js +178 -0
- package/dist/bin/gd.js.map +1 -0
- package/dist/bin/grd-manifest.d.ts +3 -0
- package/dist/bin/grd-manifest.d.ts.map +1 -0
- package/dist/bin/grd-manifest.js +202 -0
- package/dist/bin/grd-manifest.js.map +1 -0
- package/dist/bin/grd-mcp-server.d.ts +3 -0
- package/dist/bin/grd-mcp-server.d.ts.map +1 -0
- package/dist/bin/grd-mcp-server.js +71 -0
- package/dist/bin/grd-mcp-server.js.map +1 -0
- package/dist/bin/grd-tools.d.ts +3 -0
- package/dist/bin/grd-tools.d.ts.map +1 -0
- package/dist/bin/grd-tools.js +1680 -0
- package/dist/bin/grd-tools.js.map +1 -0
- package/dist/bin/postinstall.d.ts +3 -0
- package/dist/bin/postinstall.d.ts.map +1 -0
- package/dist/bin/postinstall.js +61 -0
- package/dist/bin/postinstall.js.map +1 -0
- package/dist/lib/autopilot-milestone.d.ts +2 -0
- package/dist/lib/autopilot-milestone.d.ts.map +1 -0
- package/dist/lib/autopilot-milestone.js +94 -0
- package/dist/lib/autopilot-milestone.js.map +1 -0
- package/dist/lib/autopilot-pipeline.d.ts +2 -0
- package/dist/lib/autopilot-pipeline.d.ts.map +1 -0
- package/dist/lib/autopilot-pipeline.js +830 -0
- package/dist/lib/autopilot-pipeline.js.map +1 -0
- package/dist/lib/autopilot-waves.d.ts +2 -0
- package/dist/lib/autopilot-waves.d.ts.map +1 -0
- package/dist/lib/autopilot-waves.js +266 -0
- package/dist/lib/autopilot-waves.js.map +1 -0
- package/dist/lib/autopilot.d.ts +2 -0
- package/dist/lib/autopilot.d.ts.map +1 -0
- package/dist/lib/autopilot.js +1314 -0
- package/dist/lib/autopilot.js.map +1 -0
- package/dist/lib/autoplan.d.ts +2 -0
- package/dist/lib/autoplan.d.ts.map +1 -0
- package/dist/lib/autoplan.js +198 -0
- package/dist/lib/autoplan.js.map +1 -0
- package/dist/lib/autoresearch.d.ts +2 -0
- package/dist/lib/autoresearch.d.ts.map +1 -0
- package/dist/lib/autoresearch.js +626 -0
- package/dist/lib/autoresearch.js.map +1 -0
- package/dist/lib/backend.d.ts +2 -0
- package/dist/lib/backend.d.ts.map +1 -0
- package/dist/lib/backend.js +1036 -0
- package/dist/lib/backend.js.map +1 -0
- package/dist/lib/benchmark.d.ts +99 -0
- package/dist/lib/benchmark.d.ts.map +1 -0
- package/dist/lib/benchmark.js +278 -0
- package/dist/lib/benchmark.js.map +1 -0
- package/dist/lib/citations.d.ts +2 -0
- package/dist/lib/citations.d.ts.map +1 -0
- package/dist/lib/citations.js +642 -0
- package/dist/lib/citations.js.map +1 -0
- package/dist/lib/cleanup.d.ts +2 -0
- package/dist/lib/cleanup.d.ts.map +1 -0
- package/dist/lib/cleanup.js +1222 -0
- package/dist/lib/cleanup.js.map +1 -0
- package/dist/lib/cli/adapters.d.ts +10 -0
- package/dist/lib/cli/adapters.d.ts.map +1 -0
- package/dist/lib/cli/adapters.js +27 -0
- package/dist/lib/cli/adapters.js.map +1 -0
- package/dist/lib/cli/agent.d.ts +17 -0
- package/dist/lib/cli/agent.d.ts.map +1 -0
- package/dist/lib/cli/agent.js +53 -0
- package/dist/lib/cli/agent.js.map +1 -0
- package/dist/lib/cli/index.d.ts +21 -0
- package/dist/lib/cli/index.d.ts.map +1 -0
- package/dist/lib/cli/index.js +264 -0
- package/dist/lib/cli/index.js.map +1 -0
- package/dist/lib/cli/output.d.ts +20 -0
- package/dist/lib/cli/output.d.ts.map +1 -0
- package/dist/lib/cli/output.js +22 -0
- package/dist/lib/cli/output.js.map +1 -0
- package/dist/lib/cli/scan-dispatch.d.ts +9 -0
- package/dist/lib/cli/scan-dispatch.d.ts.map +1 -0
- package/dist/lib/cli/scan-dispatch.js +107 -0
- package/dist/lib/cli/scan-dispatch.js.map +1 -0
- package/dist/lib/cli/tools.d.ts +16 -0
- package/dist/lib/cli/tools.d.ts.map +1 -0
- package/dist/lib/cli/tools.js +168 -0
- package/dist/lib/cli/tools.js.map +1 -0
- package/dist/lib/commands/_dashboard-parsers.d.ts +2 -0
- package/dist/lib/commands/_dashboard-parsers.d.ts.map +1 -0
- package/dist/lib/commands/_dashboard-parsers.js +192 -0
- package/dist/lib/commands/_dashboard-parsers.js.map +1 -0
- package/dist/lib/commands/analysis.d.ts +2 -0
- package/dist/lib/commands/analysis.d.ts.map +1 -0
- package/dist/lib/commands/analysis.js +1418 -0
- package/dist/lib/commands/analysis.js.map +1 -0
- package/dist/lib/commands/assumptions.d.ts +2 -0
- package/dist/lib/commands/assumptions.d.ts.map +1 -0
- package/dist/lib/commands/assumptions.js +166 -0
- package/dist/lib/commands/assumptions.js.map +1 -0
- package/dist/lib/commands/blame.d.ts +2 -0
- package/dist/lib/commands/blame.d.ts.map +1 -0
- package/dist/lib/commands/blame.js +133 -0
- package/dist/lib/commands/blame.js.map +1 -0
- package/dist/lib/commands/budget.d.ts +2 -0
- package/dist/lib/commands/budget.d.ts.map +1 -0
- package/dist/lib/commands/budget.js +100 -0
- package/dist/lib/commands/budget.js.map +1 -0
- package/dist/lib/commands/check-plans.d.ts +2 -0
- package/dist/lib/commands/check-plans.d.ts.map +1 -0
- package/dist/lib/commands/check-plans.js +190 -0
- package/dist/lib/commands/check-plans.js.map +1 -0
- package/dist/lib/commands/config.d.ts +2 -0
- package/dist/lib/commands/config.d.ts.map +1 -0
- package/dist/lib/commands/config.js +188 -0
- package/dist/lib/commands/config.js.map +1 -0
- package/dist/lib/commands/dashboard.d.ts +2 -0
- package/dist/lib/commands/dashboard.d.ts.map +1 -0
- package/dist/lib/commands/dashboard.js +466 -0
- package/dist/lib/commands/dashboard.js.map +1 -0
- package/dist/lib/commands/estimate.d.ts +2 -0
- package/dist/lib/commands/estimate.d.ts.map +1 -0
- package/dist/lib/commands/estimate.js +148 -0
- package/dist/lib/commands/estimate.js.map +1 -0
- package/dist/lib/commands/eval-diff.d.ts +2 -0
- package/dist/lib/commands/eval-diff.d.ts.map +1 -0
- package/dist/lib/commands/eval-diff.js +213 -0
- package/dist/lib/commands/eval-diff.js.map +1 -0
- package/dist/lib/commands/freshness.d.ts +2 -0
- package/dist/lib/commands/freshness.d.ts.map +1 -0
- package/dist/lib/commands/freshness.js +163 -0
- package/dist/lib/commands/freshness.js.map +1 -0
- package/dist/lib/commands/health.d.ts +2 -0
- package/dist/lib/commands/health.d.ts.map +1 -0
- package/dist/lib/commands/health.js +435 -0
- package/dist/lib/commands/health.js.map +1 -0
- package/dist/lib/commands/index.d.ts +2 -0
- package/dist/lib/commands/index.d.ts.map +1 -0
- package/dist/lib/commands/index.js +128 -0
- package/dist/lib/commands/index.js.map +1 -0
- package/dist/lib/commands/install.d.ts +56 -0
- package/dist/lib/commands/install.d.ts.map +1 -0
- package/dist/lib/commands/install.js +214 -0
- package/dist/lib/commands/install.js.map +1 -0
- package/dist/lib/commands/knowhow-aggregator.d.ts +2 -0
- package/dist/lib/commands/knowhow-aggregator.d.ts.map +1 -0
- package/dist/lib/commands/knowhow-aggregator.js +279 -0
- package/dist/lib/commands/knowhow-aggregator.js.map +1 -0
- package/dist/lib/commands/knowledge-search.d.ts +2 -0
- package/dist/lib/commands/knowledge-search.d.ts.map +1 -0
- package/dist/lib/commands/knowledge-search.js +113 -0
- package/dist/lib/commands/knowledge-search.js.map +1 -0
- package/dist/lib/commands/long-term-roadmap.d.ts +2 -0
- package/dist/lib/commands/long-term-roadmap.d.ts.map +1 -0
- package/dist/lib/commands/long-term-roadmap.js +272 -0
- package/dist/lib/commands/long-term-roadmap.js.map +1 -0
- package/dist/lib/commands/patterns.d.ts +91 -0
- package/dist/lib/commands/patterns.d.ts.map +1 -0
- package/dist/lib/commands/patterns.js +391 -0
- package/dist/lib/commands/patterns.js.map +1 -0
- package/dist/lib/commands/phase-info.d.ts +2 -0
- package/dist/lib/commands/phase-info.d.ts.map +1 -0
- package/dist/lib/commands/phase-info.js +509 -0
- package/dist/lib/commands/phase-info.js.map +1 -0
- package/dist/lib/commands/plan-lint.d.ts +56 -0
- package/dist/lib/commands/plan-lint.d.ts.map +1 -0
- package/dist/lib/commands/plan-lint.js +481 -0
- package/dist/lib/commands/plan-lint.js.map +1 -0
- package/dist/lib/commands/plan-phase.d.ts +53 -0
- package/dist/lib/commands/plan-phase.d.ts.map +1 -0
- package/dist/lib/commands/plan-phase.js +288 -0
- package/dist/lib/commands/plan-phase.js.map +1 -0
- package/dist/lib/commands/progress.d.ts +2 -0
- package/dist/lib/commands/progress.d.ts.map +1 -0
- package/dist/lib/commands/progress.js +266 -0
- package/dist/lib/commands/progress.js.map +1 -0
- package/dist/lib/commands/quality.d.ts +2 -0
- package/dist/lib/commands/quality.d.ts.map +1 -0
- package/dist/lib/commands/quality.js +80 -0
- package/dist/lib/commands/quality.js.map +1 -0
- package/dist/lib/commands/rollback.d.ts +2 -0
- package/dist/lib/commands/rollback.d.ts.map +1 -0
- package/dist/lib/commands/rollback.js +145 -0
- package/dist/lib/commands/rollback.js.map +1 -0
- package/dist/lib/commands/scan.d.ts +25 -0
- package/dist/lib/commands/scan.d.ts.map +1 -0
- package/dist/lib/commands/scan.js +28 -0
- package/dist/lib/commands/scan.js.map +1 -0
- package/dist/lib/commands/search.d.ts +2 -0
- package/dist/lib/commands/search.d.ts.map +1 -0
- package/dist/lib/commands/search.js +212 -0
- package/dist/lib/commands/search.js.map +1 -0
- package/dist/lib/commands/select-candidate.d.ts +128 -0
- package/dist/lib/commands/select-candidate.d.ts.map +1 -0
- package/dist/lib/commands/select-candidate.js +518 -0
- package/dist/lib/commands/select-candidate.js.map +1 -0
- package/dist/lib/commands/singularity.d.ts +2 -0
- package/dist/lib/commands/singularity.d.ts.map +1 -0
- package/dist/lib/commands/singularity.js +185 -0
- package/dist/lib/commands/singularity.js.map +1 -0
- package/dist/lib/commands/slug-timestamp.d.ts +2 -0
- package/dist/lib/commands/slug-timestamp.d.ts.map +1 -0
- package/dist/lib/commands/slug-timestamp.js +54 -0
- package/dist/lib/commands/slug-timestamp.js.map +1 -0
- package/dist/lib/commands/tail.d.ts +2 -0
- package/dist/lib/commands/tail.d.ts.map +1 -0
- package/dist/lib/commands/tail.js +100 -0
- package/dist/lib/commands/tail.js.map +1 -0
- package/dist/lib/commands/todo.d.ts +2 -0
- package/dist/lib/commands/todo.d.ts.map +1 -0
- package/dist/lib/commands/todo.js +200 -0
- package/dist/lib/commands/todo.js.map +1 -0
- package/dist/lib/commands/watch.d.ts +2 -0
- package/dist/lib/commands/watch.d.ts.map +1 -0
- package/dist/lib/commands/watch.js +72 -0
- package/dist/lib/commands/watch.js.map +1 -0
- package/dist/lib/complexity.d.ts +55 -0
- package/dist/lib/complexity.d.ts.map +1 -0
- package/dist/lib/complexity.js +80 -0
- package/dist/lib/complexity.js.map +1 -0
- package/dist/lib/context/agents.d.ts +2 -0
- package/dist/lib/context/agents.d.ts.map +1 -0
- package/dist/lib/context/agents.js +344 -0
- package/dist/lib/context/agents.js.map +1 -0
- package/dist/lib/context/base.d.ts +2 -0
- package/dist/lib/context/base.d.ts.map +1 -0
- package/dist/lib/context/base.js +81 -0
- package/dist/lib/context/base.js.map +1 -0
- package/dist/lib/context/execute.d.ts +2 -0
- package/dist/lib/context/execute.d.ts.map +1 -0
- package/dist/lib/context/execute.js +753 -0
- package/dist/lib/context/execute.js.map +1 -0
- package/dist/lib/context/index.d.ts +2 -0
- package/dist/lib/context/index.d.ts.map +1 -0
- package/dist/lib/context/index.js +88 -0
- package/dist/lib/context/index.js.map +1 -0
- package/dist/lib/context/progress.d.ts +2 -0
- package/dist/lib/context/progress.d.ts.map +1 -0
- package/dist/lib/context/progress.js +178 -0
- package/dist/lib/context/progress.js.map +1 -0
- package/dist/lib/context/project.d.ts +2 -0
- package/dist/lib/context/project.d.ts.map +1 -0
- package/dist/lib/context/project.js +413 -0
- package/dist/lib/context/project.js.map +1 -0
- package/dist/lib/context/research.d.ts +2 -0
- package/dist/lib/context/research.d.ts.map +1 -0
- package/dist/lib/context/research.js +466 -0
- package/dist/lib/context/research.js.map +1 -0
- package/dist/lib/dead-ends.d.ts +28 -0
- package/dist/lib/dead-ends.d.ts.map +1 -0
- package/dist/lib/dead-ends.js +451 -0
- package/dist/lib/dead-ends.js.map +1 -0
- package/dist/lib/deps.d.ts +2 -0
- package/dist/lib/deps.d.ts.map +1 -0
- package/dist/lib/deps.js +630 -0
- package/dist/lib/deps.js.map +1 -0
- package/dist/lib/discussion.d.ts +2 -0
- package/dist/lib/discussion.d.ts.map +1 -0
- package/dist/lib/discussion.js +1041 -0
- package/dist/lib/discussion.js.map +1 -0
- package/dist/lib/drift.d.ts +36 -0
- package/dist/lib/drift.d.ts.map +1 -0
- package/dist/lib/drift.js +481 -0
- package/dist/lib/drift.js.map +1 -0
- package/dist/lib/evolve/_dimensions-features.d.ts +2 -0
- package/dist/lib/evolve/_dimensions-features.d.ts.map +1 -0
- package/dist/lib/evolve/_dimensions-features.js +369 -0
- package/dist/lib/evolve/_dimensions-features.js.map +1 -0
- package/dist/lib/evolve/_dimensions.d.ts +2 -0
- package/dist/lib/evolve/_dimensions.d.ts.map +1 -0
- package/dist/lib/evolve/_dimensions.js +358 -0
- package/dist/lib/evolve/_dimensions.js.map +1 -0
- package/dist/lib/evolve/_product-ideation.d.ts +2 -0
- package/dist/lib/evolve/_product-ideation.d.ts.map +1 -0
- package/dist/lib/evolve/_product-ideation.js +281 -0
- package/dist/lib/evolve/_product-ideation.js.map +1 -0
- package/dist/lib/evolve/_prompts.d.ts +2 -0
- package/dist/lib/evolve/_prompts.d.ts.map +1 -0
- package/dist/lib/evolve/_prompts.js +153 -0
- package/dist/lib/evolve/_prompts.js.map +1 -0
- package/dist/lib/evolve/cli.d.ts +2 -0
- package/dist/lib/evolve/cli.d.ts.map +1 -0
- package/dist/lib/evolve/cli.js +224 -0
- package/dist/lib/evolve/cli.js.map +1 -0
- package/dist/lib/evolve/discovery.d.ts +2 -0
- package/dist/lib/evolve/discovery.d.ts.map +1 -0
- package/dist/lib/evolve/discovery.js +391 -0
- package/dist/lib/evolve/discovery.js.map +1 -0
- package/dist/lib/evolve/index.d.ts +2 -0
- package/dist/lib/evolve/index.d.ts.map +1 -0
- package/dist/lib/evolve/index.js +88 -0
- package/dist/lib/evolve/index.js.map +1 -0
- package/dist/lib/evolve/orchestrator.d.ts +2 -0
- package/dist/lib/evolve/orchestrator.d.ts.map +1 -0
- package/dist/lib/evolve/orchestrator.js +851 -0
- package/dist/lib/evolve/orchestrator.js.map +1 -0
- package/dist/lib/evolve/scoring.d.ts +2 -0
- package/dist/lib/evolve/scoring.d.ts.map +1 -0
- package/dist/lib/evolve/scoring.js +118 -0
- package/dist/lib/evolve/scoring.js.map +1 -0
- package/dist/lib/evolve/state.d.ts +2 -0
- package/dist/lib/evolve/state.d.ts.map +1 -0
- package/dist/lib/evolve/state.js +264 -0
- package/dist/lib/evolve/state.js.map +1 -0
- package/dist/lib/evolve/types.d.ts +249 -0
- package/dist/lib/evolve/types.d.ts.map +1 -0
- package/dist/lib/evolve/types.js +3 -0
- package/dist/lib/evolve/types.js.map +1 -0
- package/dist/lib/frontmatter.d.ts +2 -0
- package/dist/lib/frontmatter.d.ts.map +1 -0
- package/dist/lib/frontmatter.js +513 -0
- package/dist/lib/frontmatter.js.map +1 -0
- package/dist/lib/gates.d.ts +2 -0
- package/dist/lib/gates.d.ts.map +1 -0
- package/dist/lib/gates.js +578 -0
- package/dist/lib/gates.js.map +1 -0
- package/dist/lib/genome.d.ts +10 -0
- package/dist/lib/genome.d.ts.map +1 -0
- package/dist/lib/genome.js +368 -0
- package/dist/lib/genome.js.map +1 -0
- package/dist/lib/got.d.ts +2 -0
- package/dist/lib/got.d.ts.map +1 -0
- package/dist/lib/got.js +280 -0
- package/dist/lib/got.js.map +1 -0
- package/dist/lib/invariants.d.ts +2 -0
- package/dist/lib/invariants.d.ts.map +1 -0
- package/dist/lib/invariants.js +298 -0
- package/dist/lib/invariants.js.map +1 -0
- package/dist/lib/knowledge.d.ts +2 -0
- package/dist/lib/knowledge.d.ts.map +1 -0
- package/dist/lib/knowledge.js +658 -0
- package/dist/lib/knowledge.js.map +1 -0
- package/dist/lib/long-term-roadmap.d.ts +2 -0
- package/dist/lib/long-term-roadmap.d.ts.map +1 -0
- package/dist/lib/long-term-roadmap.js +602 -0
- package/dist/lib/long-term-roadmap.js.map +1 -0
- package/dist/lib/markdown-split.d.ts +2 -0
- package/dist/lib/markdown-split.d.ts.map +1 -0
- package/dist/lib/markdown-split.js +199 -0
- package/dist/lib/markdown-split.js.map +1 -0
- package/dist/lib/mcp-server.d.ts +2 -0
- package/dist/lib/mcp-server.d.ts.map +1 -0
- package/dist/lib/mcp-server.js +2424 -0
- package/dist/lib/mcp-server.js.map +1 -0
- package/dist/lib/metrics.d.ts +16 -0
- package/dist/lib/metrics.d.ts.map +1 -0
- package/dist/lib/metrics.js +48 -0
- package/dist/lib/metrics.js.map +1 -0
- package/dist/lib/overstory.d.ts +2 -0
- package/dist/lib/overstory.d.ts.map +1 -0
- package/dist/lib/overstory.js +211 -0
- package/dist/lib/overstory.js.map +1 -0
- package/dist/lib/parallel.d.ts +2 -0
- package/dist/lib/parallel.d.ts.map +1 -0
- package/dist/lib/parallel.js +349 -0
- package/dist/lib/parallel.js.map +1 -0
- package/dist/lib/paths.d.ts +2 -0
- package/dist/lib/paths.d.ts.map +1 -0
- package/dist/lib/paths.js +254 -0
- package/dist/lib/paths.js.map +1 -0
- package/dist/lib/phase-complete-llm.d.ts +22 -0
- package/dist/lib/phase-complete-llm.d.ts.map +1 -0
- package/dist/lib/phase-complete-llm.js +331 -0
- package/dist/lib/phase-complete-llm.js.map +1 -0
- package/dist/lib/phase-complete.d.ts +46 -0
- package/dist/lib/phase-complete.d.ts.map +1 -0
- package/dist/lib/phase-complete.js +278 -0
- package/dist/lib/phase-complete.js.map +1 -0
- package/dist/lib/phase-io.d.ts +2 -0
- package/dist/lib/phase-io.d.ts.map +1 -0
- package/dist/lib/phase-io.js +126 -0
- package/dist/lib/phase-io.js.map +1 -0
- package/dist/lib/phase.d.ts +2 -0
- package/dist/lib/phase.d.ts.map +1 -0
- package/dist/lib/phase.js +1344 -0
- package/dist/lib/phase.js.map +1 -0
- package/dist/lib/plan-tournament.d.ts +63 -0
- package/dist/lib/plan-tournament.d.ts.map +1 -0
- package/dist/lib/plan-tournament.js +353 -0
- package/dist/lib/plan-tournament.js.map +1 -0
- package/dist/lib/refinement.d.ts +74 -0
- package/dist/lib/refinement.d.ts.map +1 -0
- package/dist/lib/refinement.js +283 -0
- package/dist/lib/refinement.js.map +1 -0
- package/dist/lib/requirements.d.ts +2 -0
- package/dist/lib/requirements.d.ts.map +1 -0
- package/dist/lib/requirements.js +355 -0
- package/dist/lib/requirements.js.map +1 -0
- package/dist/lib/research-bundle.d.ts +2 -0
- package/dist/lib/research-bundle.d.ts.map +1 -0
- package/dist/lib/research-bundle.js +246 -0
- package/dist/lib/research-bundle.js.map +1 -0
- package/dist/lib/roadmap.d.ts +2 -0
- package/dist/lib/roadmap.d.ts.map +1 -0
- package/dist/lib/roadmap.js +541 -0
- package/dist/lib/roadmap.js.map +1 -0
- package/dist/lib/sample.d.ts +16 -0
- package/dist/lib/sample.d.ts.map +1 -0
- package/dist/lib/sample.js +20 -0
- package/dist/lib/sample.js.map +1 -0
- package/dist/lib/scaffold.d.ts +2 -0
- package/dist/lib/scaffold.d.ts.map +1 -0
- package/dist/lib/scaffold.js +355 -0
- package/dist/lib/scaffold.js.map +1 -0
- package/dist/lib/scan/_utils.d.ts +11 -0
- package/dist/lib/scan/_utils.d.ts.map +1 -0
- package/dist/lib/scan/_utils.js +36 -0
- package/dist/lib/scan/_utils.js.map +1 -0
- package/dist/lib/scan/base64.d.ts +15 -0
- package/dist/lib/scan/base64.d.ts.map +1 -0
- package/dist/lib/scan/base64.js +66 -0
- package/dist/lib/scan/base64.js.map +1 -0
- package/dist/lib/scan/ignorefile.d.ts +30 -0
- package/dist/lib/scan/ignorefile.d.ts.map +1 -0
- package/dist/lib/scan/ignorefile.js +101 -0
- package/dist/lib/scan/ignorefile.js.map +1 -0
- package/dist/lib/scan/injection.d.ts +14 -0
- package/dist/lib/scan/injection.d.ts.map +1 -0
- package/dist/lib/scan/injection.js +39 -0
- package/dist/lib/scan/injection.js.map +1 -0
- package/dist/lib/scan/patterns.d.ts +17 -0
- package/dist/lib/scan/patterns.d.ts.map +1 -0
- package/dist/lib/scan/patterns.js +123 -0
- package/dist/lib/scan/patterns.js.map +1 -0
- package/dist/lib/scan/strip-markdown.d.ts +7 -0
- package/dist/lib/scan/strip-markdown.d.ts.map +1 -0
- package/dist/lib/scan/strip-markdown.js +38 -0
- package/dist/lib/scan/strip-markdown.js.map +1 -0
- package/dist/lib/scan/types.d.ts +23 -0
- package/dist/lib/scan/types.d.ts.map +1 -0
- package/dist/lib/scan/types.js +3 -0
- package/dist/lib/scan/types.js.map +1 -0
- package/dist/lib/scheduler-wait.d.ts +2 -0
- package/dist/lib/scheduler-wait.d.ts.map +1 -0
- package/dist/lib/scheduler-wait.js +59 -0
- package/dist/lib/scheduler-wait.js.map +1 -0
- package/dist/lib/scheduler.d.ts +254 -0
- package/dist/lib/scheduler.d.ts.map +1 -0
- package/dist/lib/scheduler.js +1147 -0
- package/dist/lib/scheduler.js.map +1 -0
- package/dist/lib/state.d.ts +2 -0
- package/dist/lib/state.d.ts.map +1 -0
- package/dist/lib/state.js +744 -0
- package/dist/lib/state.js.map +1 -0
- package/dist/lib/think.d.ts +18 -0
- package/dist/lib/think.d.ts.map +1 -0
- package/dist/lib/think.js +317 -0
- package/dist/lib/think.js.map +1 -0
- package/dist/lib/tracker.d.ts +2 -0
- package/dist/lib/tracker.d.ts.map +1 -0
- package/dist/lib/tracker.js +1121 -0
- package/dist/lib/tracker.js.map +1 -0
- package/dist/lib/types.d.ts +1514 -0
- package/dist/lib/types.d.ts.map +1 -0
- package/dist/lib/types.js +4 -0
- package/dist/lib/types.js.map +1 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +1363 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/lib/verify.d.ts +2 -0
- package/dist/lib/verify.d.ts.map +1 -0
- package/dist/lib/verify.js +1153 -0
- package/dist/lib/verify.js.map +1 -0
- package/dist/lib/wireup/autofix.d.ts +2 -0
- package/dist/lib/wireup/autofix.d.ts.map +1 -0
- package/dist/lib/wireup/autofix.js +188 -0
- package/dist/lib/wireup/autofix.js.map +1 -0
- package/dist/lib/wireup/cli.d.ts +2 -0
- package/dist/lib/wireup/cli.d.ts.map +1 -0
- package/dist/lib/wireup/cli.js +194 -0
- package/dist/lib/wireup/cli.js.map +1 -0
- package/dist/lib/wireup/detection.d.ts +47 -0
- package/dist/lib/wireup/detection.d.ts.map +1 -0
- package/dist/lib/wireup/detection.js +410 -0
- package/dist/lib/wireup/detection.js.map +1 -0
- package/dist/lib/wireup/discovery.d.ts +2 -0
- package/dist/lib/wireup/discovery.d.ts.map +1 -0
- package/dist/lib/wireup/discovery.js +934 -0
- package/dist/lib/wireup/discovery.js.map +1 -0
- package/dist/lib/wireup/execution.d.ts +2 -0
- package/dist/lib/wireup/execution.d.ts.map +1 -0
- package/dist/lib/wireup/execution.js +573 -0
- package/dist/lib/wireup/execution.js.map +1 -0
- package/dist/lib/wireup/index.d.ts +2 -0
- package/dist/lib/wireup/index.d.ts.map +1 -0
- package/dist/lib/wireup/index.js +85 -0
- package/dist/lib/wireup/index.js.map +1 -0
- package/dist/lib/wireup/orchestrator.d.ts +2 -0
- package/dist/lib/wireup/orchestrator.d.ts.map +1 -0
- package/dist/lib/wireup/orchestrator.js +366 -0
- package/dist/lib/wireup/orchestrator.js.map +1 -0
- package/dist/lib/wireup/report.d.ts +47 -0
- package/dist/lib/wireup/report.d.ts.map +1 -0
- package/dist/lib/wireup/report.js +201 -0
- package/dist/lib/wireup/report.js.map +1 -0
- package/dist/lib/wireup/scenarios.d.ts +2 -0
- package/dist/lib/wireup/scenarios.d.ts.map +1 -0
- package/dist/lib/wireup/scenarios.js +516 -0
- package/dist/lib/wireup/scenarios.js.map +1 -0
- package/dist/lib/wireup/state.d.ts +2 -0
- package/dist/lib/wireup/state.d.ts.map +1 -0
- package/dist/lib/wireup/state.js +102 -0
- package/dist/lib/wireup/state.js.map +1 -0
- package/dist/lib/wireup/types.d.ts +376 -0
- package/dist/lib/wireup/types.d.ts.map +1 -0
- package/dist/lib/wireup/types.js +3 -0
- package/dist/lib/wireup/types.js.map +1 -0
- package/dist/lib/worktree.d.ts +2 -0
- package/dist/lib/worktree.d.ts.map +1 -0
- package/dist/lib/worktree.js +999 -0
- package/dist/lib/worktree.js.map +1 -0
- package/lib/autopilot-milestone.ts +136 -0
- package/lib/autopilot-pipeline.ts +1179 -0
- package/lib/autopilot-waves.ts +361 -0
- package/lib/autopilot.ts +1874 -0
- package/lib/autoplan.ts +280 -0
- package/lib/autoresearch.js +4 -0
- package/lib/autoresearch.ts +886 -0
- package/lib/backend.ts +1252 -0
- package/lib/benchmark.ts +341 -0
- package/lib/citations.ts +760 -0
- package/lib/cleanup.ts +1588 -0
- package/lib/cli/adapters.ts +41 -0
- package/lib/cli/agent.ts +83 -0
- package/lib/cli/index.ts +273 -0
- package/lib/cli/output.ts +33 -0
- package/lib/cli/scan-dispatch.ts +130 -0
- package/lib/cli/tools.ts +198 -0
- package/lib/commands/_dashboard-parsers.ts +275 -0
- package/lib/commands/analysis.ts +1851 -0
- package/lib/commands/assumptions.ts +232 -0
- package/lib/commands/blame.ts +174 -0
- package/lib/commands/budget.ts +148 -0
- package/lib/commands/check-plans.ts +233 -0
- package/lib/commands/config.ts +287 -0
- package/lib/commands/dashboard.ts +680 -0
- package/lib/commands/estimate.ts +204 -0
- package/lib/commands/eval-diff.ts +252 -0
- package/lib/commands/freshness.ts +213 -0
- package/lib/commands/health.ts +607 -0
- package/lib/commands/index.ts +266 -0
- package/lib/commands/install.ts +307 -0
- package/lib/commands/knowhow-aggregator.ts +345 -0
- package/lib/commands/knowledge-search.ts +153 -0
- package/lib/commands/long-term-roadmap.ts +390 -0
- package/lib/commands/patterns.ts +465 -0
- package/lib/commands/phase-info.ts +698 -0
- package/lib/commands/plan-lint.ts +546 -0
- package/lib/commands/plan-phase.ts +375 -0
- package/lib/commands/progress.ts +319 -0
- package/lib/commands/quality.ts +138 -0
- package/lib/commands/rollback.ts +195 -0
- package/lib/commands/scan.ts +72 -0
- package/lib/commands/search.ts +300 -0
- package/lib/commands/select-candidate.ts +687 -0
- package/lib/commands/singularity.ts +222 -0
- package/lib/commands/slug-timestamp.ts +74 -0
- package/lib/commands/tail.ts +129 -0
- package/lib/commands/todo.ts +273 -0
- package/lib/commands/watch.ts +80 -0
- package/lib/complexity.ts +117 -0
- package/lib/context/agents.ts +505 -0
- package/lib/context/base.ts +123 -0
- package/lib/context/execute.ts +977 -0
- package/lib/context/index.ts +110 -0
- package/lib/context/progress.ts +278 -0
- package/lib/context/project.ts +531 -0
- package/lib/context/research.ts +646 -0
- package/lib/dead-ends.ts +506 -0
- package/lib/deps.ts +773 -0
- package/lib/discussion.ts +1275 -0
- package/lib/drift.ts +519 -0
- package/lib/evolve/_dimensions-features.ts +525 -0
- package/lib/evolve/_dimensions.ts +511 -0
- package/lib/evolve/_product-ideation.ts +405 -0
- package/lib/evolve/_prompts.ts +178 -0
- package/lib/evolve/cli.ts +330 -0
- package/lib/evolve/discovery.ts +571 -0
- package/lib/evolve/index.ts +105 -0
- package/lib/evolve/orchestrator.ts +1139 -0
- package/lib/evolve/scoring.ts +167 -0
- package/lib/evolve/state.ts +330 -0
- package/lib/evolve/types.ts +290 -0
- package/lib/frontmatter.ts +615 -0
- package/lib/gates.ts +695 -0
- package/lib/genome.ts +402 -0
- package/lib/got.js +4 -0
- package/lib/got.ts +361 -0
- package/lib/invariants.ts +378 -0
- package/lib/knowledge.ts +768 -0
- package/lib/long-term-roadmap.ts +806 -0
- package/lib/markdown-split.ts +273 -0
- package/lib/mcp-server.ts +3292 -0
- package/lib/metrics.ts +49 -0
- package/lib/overstory.ts +270 -0
- package/lib/parallel.ts +570 -0
- package/lib/paths.ts +293 -0
- package/lib/phase-complete-llm.ts +376 -0
- package/lib/phase-complete.ts +366 -0
- package/lib/phase-io.ts +101 -0
- package/lib/phase.ts +1981 -0
- package/lib/plan-tournament.ts +426 -0
- package/lib/refinement.ts +349 -0
- package/lib/requirements.ts +469 -0
- package/lib/research-bundle.ts +300 -0
- package/lib/roadmap.ts +775 -0
- package/lib/scaffold.ts +480 -0
- package/lib/scan/_utils.ts +37 -0
- package/lib/scan/base64.ts +90 -0
- package/lib/scan/ignorefile.ts +109 -0
- package/lib/scan/injection.ts +67 -0
- package/lib/scan/patterns.ts +139 -0
- package/lib/scan/strip-markdown.ts +39 -0
- package/lib/scan/types.ts +28 -0
- package/lib/scheduler-wait.ts +58 -0
- package/lib/scheduler.ts +1370 -0
- package/lib/state.ts +1000 -0
- package/lib/think.ts +365 -0
- package/lib/tracker.ts +1591 -0
- package/lib/types.ts +1663 -0
- package/lib/utils.ts +1479 -0
- package/lib/verify.ts +1434 -0
- package/lib/wireup/autofix.ts +241 -0
- package/lib/wireup/cli.ts +278 -0
- package/lib/wireup/detection.ts +542 -0
- package/lib/wireup/discovery.ts +1063 -0
- package/lib/wireup/execution.ts +686 -0
- package/lib/wireup/index.ts +117 -0
- package/lib/wireup/orchestrator.ts +519 -0
- package/lib/wireup/report.ts +286 -0
- package/lib/wireup/scenarios.ts +616 -0
- package/lib/wireup/state.ts +139 -0
- package/lib/wireup/types.ts +436 -0
- package/lib/worktree.ts +1309 -0
- package/package.json +67 -0
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Automatically generate milestones from evolve discoveries or fresh codebase analysis
|
|
3
|
+
argument-hint: "[--dry-run] [--pick-pct N] [--name <name>] [--timeout N]"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
Run the autoplan command to automatically generate a new milestone from evolve discovery results:
|
|
7
|
+
|
|
8
|
+
```bash
|
|
9
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js autoplan $ARGUMENTS
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
Autoplan bridges the gap between evolve's discovery and autopilot's execution. It takes discovered improvement groups (from evolve's discovery engine or from the current evolve state) and creates a structured milestone complete with phases, requirements, and a roadmap -- entirely autonomously.
|
|
13
|
+
|
|
14
|
+
The autoplan workflow:
|
|
15
|
+
1. Loads evolve state (or runs fresh discovery if no state exists)
|
|
16
|
+
2. Selects priority groups based on --pick-pct
|
|
17
|
+
3. Builds a prompt that instructs claude -p to create a milestone using /grd:new-milestone
|
|
18
|
+
4. Spawns the subprocess which creates the milestone artifacts
|
|
19
|
+
5. Returns the result with status and prompt used
|
|
20
|
+
|
|
21
|
+
### Flags
|
|
22
|
+
|
|
23
|
+
| Flag | Description | Default |
|
|
24
|
+
|------|-------------|---------|
|
|
25
|
+
| `--dry-run` | Preview the prompt without spawning subprocess | false |
|
|
26
|
+
| `--pick-pct N` | Percentage of groups to use (only if running fresh discovery) | 50 |
|
|
27
|
+
| `--name <name>` | Override the derived milestone name | auto |
|
|
28
|
+
| `--timeout N` | Subprocess timeout in minutes | 120 |
|
|
29
|
+
| `--max-turns N` | Max turns for claude -p subprocess | -- |
|
|
30
|
+
| `--model <model>` | Model override for subprocess | -- |
|
|
31
|
+
|
|
32
|
+
### Pre-flight Context
|
|
33
|
+
|
|
34
|
+
To get pre-flight context for autoplan (evolve state, current milestone):
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init autoplan
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### Examples
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# Preview what autoplan would create
|
|
44
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js autoplan --dry-run
|
|
45
|
+
|
|
46
|
+
# Run autoplan with custom milestone name
|
|
47
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js autoplan --name "Performance Improvements"
|
|
48
|
+
|
|
49
|
+
# Run autoplan with fresh discovery at 30% pick rate
|
|
50
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js autoplan --pick-pct 30
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
IMPORTANT: This command spawns a Claude subprocess. You MUST run it in the background using `run_in_background: true` on the Bash tool to avoid hitting the Bash tool's default timeout.
|
|
54
|
+
|
|
55
|
+
Report the JSON results. If autoplan created a milestone, suggest running `/grd:autopilot` to execute it.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: List pending todos, view details, and route to appropriate action
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
<purpose>
|
|
6
|
+
List all pending todos, allow selection, load full context for the selected todo, and route to appropriate action.
|
|
7
|
+
</purpose>
|
|
8
|
+
|
|
9
|
+
<required_reading>
|
|
10
|
+
Read all files referenced by the invoking prompt's execution_context before starting.
|
|
11
|
+
</required_reading>
|
|
12
|
+
|
|
13
|
+
<process>
|
|
14
|
+
|
|
15
|
+
<step name="init_context">
|
|
16
|
+
```bash
|
|
17
|
+
INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init todos)
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Extract from init JSON: `todo_count`, `todos`, `pending_dir`, `todos_dir`.
|
|
21
|
+
|
|
22
|
+
If `todo_count` is 0:
|
|
23
|
+
```
|
|
24
|
+
No pending todos.
|
|
25
|
+
|
|
26
|
+
Todos are captured during work sessions with /grd:add-todo.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
Would you like to:
|
|
31
|
+
|
|
32
|
+
1. Continue with current phase (/grd:progress)
|
|
33
|
+
2. Add a todo now (/grd:add-todo)
|
|
34
|
+
```
|
|
35
|
+
Exit.
|
|
36
|
+
</step>
|
|
37
|
+
|
|
38
|
+
<step name="list_todos">
|
|
39
|
+
Display as numbered list with title, area, and relative age.
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
Pending Todos:
|
|
43
|
+
|
|
44
|
+
1. Add auth token refresh (api, 2d ago)
|
|
45
|
+
2. Fix modal z-index issue (ui, 1d ago)
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
Reply with a number to view details, or `q` to exit.
|
|
50
|
+
```
|
|
51
|
+
</step>
|
|
52
|
+
|
|
53
|
+
<step name="handle_selection">
|
|
54
|
+
Wait for user to reply with a number. Load selected todo, display full context.
|
|
55
|
+
</step>
|
|
56
|
+
|
|
57
|
+
<step name="offer_actions">
|
|
58
|
+
**If todo maps to a roadmap phase:** Offer Work on it now / Add to phase plan / Brainstorm / Put it back.
|
|
59
|
+
|
|
60
|
+
**If no roadmap match:** Offer Work on it now / Create a phase / Brainstorm / Put it back.
|
|
61
|
+
</step>
|
|
62
|
+
|
|
63
|
+
<step name="execute_action">
|
|
64
|
+
**Work on it now:** Move to done/, update STATE.md, begin work.
|
|
65
|
+
**Add to phase plan:** Note reference, keep in pending.
|
|
66
|
+
**Create a phase:** Display `/grd:add-phase [description]`.
|
|
67
|
+
**Brainstorm approach:** Start discussion.
|
|
68
|
+
**Put it back:** Return to list.
|
|
69
|
+
</step>
|
|
70
|
+
|
|
71
|
+
<step name="git_commit">
|
|
72
|
+
If todo was moved to done/:
|
|
73
|
+
```bash
|
|
74
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js commit "docs: start work on todo - [title]" --files ${todos_dir}/done/[filename] .planning/STATE.md
|
|
75
|
+
```
|
|
76
|
+
</step>
|
|
77
|
+
|
|
78
|
+
</process>
|
|
79
|
+
|
|
80
|
+
<success_criteria>
|
|
81
|
+
- [ ] All pending todos listed with title, area, age
|
|
82
|
+
- [ ] Selected todo's full context loaded
|
|
83
|
+
- [ ] Appropriate actions offered
|
|
84
|
+
- [ ] Selected action executed
|
|
85
|
+
- [ ] STATE.md updated if todo count changed
|
|
86
|
+
- [ ] Changes committed to git (if todo moved to done/)
|
|
87
|
+
</success_criteria>
|
|
@@ -0,0 +1,262 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Compare research methods/approaches from LANDSCAPE.md with performance/complexity matrix
|
|
3
|
+
argument-hint: [method1, method2, ...] or "all"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<purpose>
|
|
7
|
+
Orchestrate comparison of methods from LANDSCAPE.md. Build a structured comparison matrix
|
|
8
|
+
covering performance, complexity, production readiness, and trade-offs. Helps decide which
|
|
9
|
+
approach to pursue before committing to feasibility analysis or implementation.
|
|
10
|
+
</purpose>
|
|
11
|
+
|
|
12
|
+
<context>
|
|
13
|
+
CLAUDE.md rules: @CLAUDE.md
|
|
14
|
+
|
|
15
|
+
**Research directory structure** (paths resolved via init):
|
|
16
|
+
- `${research_dir}/LANDSCAPE.md` — source of methods to compare
|
|
17
|
+
- `${research_dir}/deep-dives/` — detailed analyses (if available)
|
|
18
|
+
- `${research_dir}/COMPARISON-{topic}.md` — output comparison matrix
|
|
19
|
+
- `${research_dir}/PAPERS.md` — paper index with verdicts
|
|
20
|
+
- `.planning/config.json` — GRD configuration
|
|
21
|
+
|
|
22
|
+
**This workflow does NOT spawn a dedicated agent.** It synthesizes existing research
|
|
23
|
+
artifacts (LANDSCAPE.md, deep-dives) into a comparison matrix. The orchestrator itself
|
|
24
|
+
performs the analysis using structured reasoning.
|
|
25
|
+
</context>
|
|
26
|
+
|
|
27
|
+
<process>
|
|
28
|
+
|
|
29
|
+
## Step 0: INITIALIZE — Load Research Context
|
|
30
|
+
|
|
31
|
+
0. **Run initialization**:
|
|
32
|
+
```bash
|
|
33
|
+
INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init survey "compare-methods")
|
|
34
|
+
```
|
|
35
|
+
Parse JSON for: `research_dir`, `landscape_exists`, `deep_dives`, `autonomous_mode`, `research_gates`.
|
|
36
|
+
|
|
37
|
+
1. **Check LANDSCAPE.md exists**:
|
|
38
|
+
- Path: `${research_dir}/LANDSCAPE.md`
|
|
39
|
+
- If missing: STOP and suggest `/grd:survey {topic}` first
|
|
40
|
+
- If present: parse methods table
|
|
41
|
+
|
|
42
|
+
2. **Extract available methods** from LANDSCAPE.md:
|
|
43
|
+
- Parse the `## Methods` section
|
|
44
|
+
- Build list: `METHOD_NAME | paper | year | approach_type | key_metric`
|
|
45
|
+
- Count total methods available
|
|
46
|
+
|
|
47
|
+
3. **Load deep-dives** (if any exist):
|
|
48
|
+
- Scan `${research_dir}/deep-dives/` for completed analyses
|
|
49
|
+
- Map deep-dive verdicts to method names
|
|
50
|
+
- Note which methods have deep-dives and which do not
|
|
51
|
+
|
|
52
|
+
4. **Parse arguments**:
|
|
53
|
+
- If specific methods listed: validate they exist in LANDSCAPE.md
|
|
54
|
+
- If "all" or empty: prepare to compare all methods
|
|
55
|
+
- If methods not in landscape: WARN and suggest survey first
|
|
56
|
+
|
|
57
|
+
**STEP_0_CHECKPOINT:**
|
|
58
|
+
- [ ] LANDSCAPE.md loaded and parsed
|
|
59
|
+
- [ ] Methods list extracted
|
|
60
|
+
- [ ] Deep-dives mapped to methods
|
|
61
|
+
- [ ] Comparison set determined
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Step 1: SELECT METHODS TO COMPARE
|
|
66
|
+
|
|
67
|
+
**If not specified in arguments, present selection to user:**
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
Available methods from LANDSCAPE.md:
|
|
71
|
+
|
|
72
|
+
1. {method_1} ({year}) — {approach_type} [deep-dive: yes/no]
|
|
73
|
+
2. {method_2} ({year}) — {approach_type} [deep-dive: yes/no]
|
|
74
|
+
3. {method_3} ({year}) — {approach_type} [deep-dive: yes/no]
|
|
75
|
+
...
|
|
76
|
+
|
|
77
|
+
Options:
|
|
78
|
+
a) Compare ALL methods
|
|
79
|
+
b) Enter numbers to compare (e.g., "1,2,4")
|
|
80
|
+
c) Compare by category (e.g., "all supervised methods")
|
|
81
|
+
|
|
82
|
+
Which methods to compare?
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
**In autonomous mode** (`autonomous_mode: true`): Compare all methods automatically.
|
|
86
|
+
|
|
87
|
+
**GATE**: If `research_gates.comparison_approval` is true, confirm selection with user.
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
## Step 2: DISPLAY BANNER
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
95
|
+
║ GRD >>> COMPARE METHODS ║
|
|
96
|
+
║ ║
|
|
97
|
+
║ Comparing: {N} methods ║
|
|
98
|
+
║ Methods: {method_1}, {method_2}, ... ║
|
|
99
|
+
║ Deep-dives available: {M}/{N} ║
|
|
100
|
+
║ Source: LANDSCAPE.md ({survey_date}) ║
|
|
101
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## Step 3: BUILD COMPARISON DIMENSIONS
|
|
107
|
+
|
|
108
|
+
For each selected method, evaluate across these axes:
|
|
109
|
+
|
|
110
|
+
### 3a. Performance Matrix
|
|
111
|
+
|
|
112
|
+
| Method | Benchmark_1 | Benchmark_2 | ... | Best_Reported |
|
|
113
|
+
|--------|-------------|-------------|-----|---------------|
|
|
114
|
+
| {m1} | {score} | {score} | | {metric} |
|
|
115
|
+
| {m2} | {score} | {score} | | {metric} |
|
|
116
|
+
|
|
117
|
+
- Source: LANDSCAPE.md metrics + deep-dive reported results
|
|
118
|
+
- Mark cells with `*` if from deep-dive, `~` if from survey only
|
|
119
|
+
- Mark `?` if metric not available
|
|
120
|
+
|
|
121
|
+
### 3b. Complexity Matrix
|
|
122
|
+
|
|
123
|
+
| Method | Training_Cost | Inference_Latency | Memory | Data_Required | Impl_Complexity |
|
|
124
|
+
|--------|---------------|-------------------|--------|---------------|-----------------|
|
|
125
|
+
| {m1} | {est} | {est} | {est} | {est} | {1-5} |
|
|
126
|
+
|
|
127
|
+
- Use relative scale: LOW / MEDIUM / HIGH / VERY_HIGH
|
|
128
|
+
- Note: estimates from papers, may not reflect production reality
|
|
129
|
+
|
|
130
|
+
### 3c. Production Readiness
|
|
131
|
+
|
|
132
|
+
| Method | Code_Available | License | Dependencies | Maintenance | Docs |
|
|
133
|
+
|--------|----------------|---------|--------------|-------------|------|
|
|
134
|
+
| {m1} | {yes/partial/no} | {license} | {framework} | {active/stale} | {good/minimal/none} |
|
|
135
|
+
|
|
136
|
+
### 3d. Trade-off Analysis
|
|
137
|
+
|
|
138
|
+
For each pair of methods, identify key trade-offs:
|
|
139
|
+
|
|
140
|
+
```
|
|
141
|
+
{method_1} vs {method_2}:
|
|
142
|
+
Performance: {m1} wins by {margin} on {benchmark}
|
|
143
|
+
Complexity: {m2} is simpler — {reason}
|
|
144
|
+
Production: {m1} has code, {m2} is paper-only
|
|
145
|
+
Trade-off: {summary of key decision factor}
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### 3e. Risk Assessment
|
|
149
|
+
|
|
150
|
+
| Method | Technical_Risk | Data_Risk | Scale_Risk | Overall |
|
|
151
|
+
|--------|---------------|-----------|------------|---------|
|
|
152
|
+
| {m1} | {L/M/H} | {L/M/H} | {L/M/H} | {L/M/H} |
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Step 4: SYNTHESIZE RECOMMENDATION
|
|
157
|
+
|
|
158
|
+
Using extended thinking, synthesize all dimensions:
|
|
159
|
+
|
|
160
|
+
```
|
|
161
|
+
RECOMMENDATION MATRIX:
|
|
162
|
+
|
|
163
|
+
Best performance: {method} — {reason}
|
|
164
|
+
Best simplicity: {method} — {reason}
|
|
165
|
+
Best production-ready: {method} — {reason}
|
|
166
|
+
Best risk profile: {method} — {reason}
|
|
167
|
+
|
|
168
|
+
OVERALL RECOMMENDATION: {method}
|
|
169
|
+
Rationale: {2-3 sentences explaining the recommendation}
|
|
170
|
+
|
|
171
|
+
RUNNER-UP: {method}
|
|
172
|
+
When to prefer runner-up: {condition}
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Step 5: DISPLAY COMPARISON SUMMARY
|
|
178
|
+
|
|
179
|
+
```
|
|
180
|
+
╔══════════════════════════════════════════════════════════════╗
|
|
181
|
+
║ COMPARISON RESULTS ║
|
|
182
|
+
╠══════════════════════════════════════════════════════════════╣
|
|
183
|
+
║ ║
|
|
184
|
+
║ Methods compared: {N} ║
|
|
185
|
+
║ ║
|
|
186
|
+
║ WINNER: {method_name} ║
|
|
187
|
+
║ Performance: {score_summary} ║
|
|
188
|
+
║ Complexity: {complexity_summary} ║
|
|
189
|
+
║ Production: {readiness_summary} ║
|
|
190
|
+
║ Risk: {risk_summary} ║
|
|
191
|
+
║ ║
|
|
192
|
+
║ RUNNER-UP: {method_name} ║
|
|
193
|
+
║ Prefer when: {condition} ║
|
|
194
|
+
║ ║
|
|
195
|
+
║ GAPS: {methods_without_deep_dives} methods need deep-dives ║
|
|
196
|
+
║ ║
|
|
197
|
+
╚══════════════════════════════════════════════════════════════╝
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Step 6: WRITE COMPARISON FILE
|
|
203
|
+
|
|
204
|
+
1. **Determine topic slug** from LANDSCAPE.md header or user topic
|
|
205
|
+
2. **Write comparison matrix**:
|
|
206
|
+
- Path: `${research_dir}/COMPARISON-{topic-slug}.md`
|
|
207
|
+
- Include all matrices from Step 3
|
|
208
|
+
- Include recommendation from Step 4
|
|
209
|
+
- Include metadata: date, methods compared, data sources
|
|
210
|
+
|
|
211
|
+
3. **Also display full comparison to console** for immediate review
|
|
212
|
+
|
|
213
|
+
---
|
|
214
|
+
|
|
215
|
+
## Step 7: COMMIT (optional)
|
|
216
|
+
|
|
217
|
+
**Ask user** if they want to commit the comparison file:
|
|
218
|
+
- In autonomous mode: commit automatically
|
|
219
|
+
|
|
220
|
+
```bash
|
|
221
|
+
git add ${research_dir}/COMPARISON-{topic-slug}.md
|
|
222
|
+
git commit -m "research: compare {N} methods for {topic} — recommend {winner}"
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Step 8: ROUTE NEXT ACTION
|
|
228
|
+
|
|
229
|
+
| Condition | Suggestion |
|
|
230
|
+
|-----------|------------|
|
|
231
|
+
| Winner lacks deep-dive | `/grd:deep-dive {winner_paper}` |
|
|
232
|
+
| Winner needs feasibility check | `/grd:feasibility {winner}` |
|
|
233
|
+
| Methods too close to call | `/grd:deep-dive` both, then re-compare |
|
|
234
|
+
| Gaps in deep-dives | `/grd:deep-dive {method_without_dive}` |
|
|
235
|
+
| Ready to proceed | `/grd:product-plan` or `/grd:plan-phase` |
|
|
236
|
+
|
|
237
|
+
</process>
|
|
238
|
+
|
|
239
|
+
<output>
|
|
240
|
+
**FILES_WRITTEN:**
|
|
241
|
+
- `${research_dir}/COMPARISON-{topic}.md` — full comparison matrix
|
|
242
|
+
|
|
243
|
+
**DISPLAY**: Comparison summary to console with winner, runner-up, and gaps
|
|
244
|
+
|
|
245
|
+
**GIT**: Optional commit: `research: compare {N} methods for {topic} — recommend {winner}`
|
|
246
|
+
</output>
|
|
247
|
+
|
|
248
|
+
<error_handling>
|
|
249
|
+
- **LANDSCAPE.md missing**: STOP, direct to `/grd:survey` first
|
|
250
|
+
- **No methods in landscape**: STOP, landscape may be malformed, suggest re-survey
|
|
251
|
+
- **Selected method not in landscape**: WARN, offer to add or survey for it
|
|
252
|
+
- **Insufficient data for comparison**: Mark cells as `?`, note data gaps prominently
|
|
253
|
+
- **All methods score equally**: Report tie, suggest deep-dives for differentiators
|
|
254
|
+
</error_handling>
|
|
255
|
+
|
|
256
|
+
<success_criteria>
|
|
257
|
+
- Comparison covers all 5 dimensions (performance, complexity, production, trade-offs, risk)
|
|
258
|
+
- Recommendation is specific with rationale
|
|
259
|
+
- Data gaps are clearly marked, not silently filled
|
|
260
|
+
- Comparison is traceable to LANDSCAPE.md and deep-dive sources
|
|
261
|
+
- Output is immediately actionable (clear winner or clear next step)
|
|
262
|
+
</success_criteria>
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Mark a milestone version as complete and archive it
|
|
3
|
+
argument-hint: [--name milestone-name]
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<purpose>
|
|
7
|
+
Mark a shipped version as complete. First runs an automated milestone audit (cross-phase integration checks, requirements coverage, tech debt aggregation), then creates historical record in MILESTONES.md, performs full PROJECT.md evolution review, reorganizes ROADMAP.md with milestone groupings, and tags the release in git.
|
|
8
|
+
</purpose>
|
|
9
|
+
|
|
10
|
+
<required_reading>
|
|
11
|
+
1. templates/milestone.md
|
|
12
|
+
2. templates/milestone-archive.md
|
|
13
|
+
3. `.planning/ROADMAP.md`
|
|
14
|
+
4. `.planning/REQUIREMENTS.md`
|
|
15
|
+
5. `.planning/PROJECT.md`
|
|
16
|
+
</required_reading>
|
|
17
|
+
|
|
18
|
+
<process>
|
|
19
|
+
|
|
20
|
+
<step name="init_context" priority="first">
|
|
21
|
+
```bash
|
|
22
|
+
INIT=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js init milestone-op)
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Parse JSON for: `phases_dir`, `commit_docs`, `milestone_version`, `milestone_name`.
|
|
26
|
+
</step>
|
|
27
|
+
|
|
28
|
+
<step name="audit_milestone">
|
|
29
|
+
**Run milestone audit as first step of completion.**
|
|
30
|
+
|
|
31
|
+
This step replaces the standalone `/grd:audit-milestone` command by integrating it directly.
|
|
32
|
+
|
|
33
|
+
1. Determine milestone scope from init context
|
|
34
|
+
2. Read all phase VERIFICATION.md files
|
|
35
|
+
3. Spawn integration checker for cross-phase wiring:
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
Task(
|
|
39
|
+
prompt="Check cross-phase integration and E2E flows.
|
|
40
|
+
Phases: {phase_dirs}
|
|
41
|
+
Phase exports: {from SUMMARYs}
|
|
42
|
+
API routes: {routes created}
|
|
43
|
+
Verify cross-phase wiring and E2E user flows.",
|
|
44
|
+
subagent_type="grd:grd-integration-checker",
|
|
45
|
+
model="{integration_checker_model}"
|
|
46
|
+
)
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
4. Aggregate results: phase-level gaps/tech debt + integration checker report
|
|
50
|
+
5. Check requirements coverage: satisfied | partial | unsatisfied
|
|
51
|
+
|
|
52
|
+
**Route by audit result:**
|
|
53
|
+
|
|
54
|
+
- **If passed:** Continue to `verify_readiness` step
|
|
55
|
+
- **If gaps_found:**
|
|
56
|
+
Present gap summary. Offer:
|
|
57
|
+
- "Continue anyway" — proceed to verify_readiness
|
|
58
|
+
- "Fix first" — offer `/grd:plan-milestone-gaps`, stop completion
|
|
59
|
+
- **If tech_debt:**
|
|
60
|
+
Present tech debt summary. Offer:
|
|
61
|
+
- "Accept debt" — proceed to verify_readiness
|
|
62
|
+
- "Plan cleanup" — offer cleanup phase, stop completion
|
|
63
|
+
|
|
64
|
+
<if mode="yolo">
|
|
65
|
+
Auto-approve: if passed or tech_debt_only, proceed. If gaps_found, still proceed but log gaps.
|
|
66
|
+
</if>
|
|
67
|
+
</step>
|
|
68
|
+
|
|
69
|
+
<step name="verify_readiness">
|
|
70
|
+
```bash
|
|
71
|
+
ROADMAP=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js roadmap analyze)
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Verify all phases complete (`disk_status === 'complete'`), `progress_percent` should be 100%.
|
|
75
|
+
|
|
76
|
+
Present milestone summary with phase/plan breakdown.
|
|
77
|
+
|
|
78
|
+
<if mode="yolo">
|
|
79
|
+
Auto-approve: proceed to gather_stats.
|
|
80
|
+
</if>
|
|
81
|
+
|
|
82
|
+
<if mode="interactive">
|
|
83
|
+
Confirm: "Ready to mark this milestone as shipped? (yes / wait / adjust scope)"
|
|
84
|
+
</if>
|
|
85
|
+
</step>
|
|
86
|
+
|
|
87
|
+
<step name="gather_stats">
|
|
88
|
+
Calculate milestone statistics: phases, plans, tasks, files modified, LOC, timeline, git range.
|
|
89
|
+
</step>
|
|
90
|
+
|
|
91
|
+
<step name="extract_accomplishments">
|
|
92
|
+
```bash
|
|
93
|
+
for summary in ${phases_dir}/*-*/*-SUMMARY.md; do
|
|
94
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js summary-extract "$summary" --fields one_liner | jq -r '.one_liner'
|
|
95
|
+
done
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
Extract 4-6 key accomplishments.
|
|
99
|
+
</step>
|
|
100
|
+
|
|
101
|
+
<step name="evolve_project_full_review">
|
|
102
|
+
Full PROJECT.md evolution review: "What This Is" accuracy, Core Value check, Requirements audit (move shipped to Validated, add new to Active), Context update, Key Decisions audit, Constraints check.
|
|
103
|
+
</step>
|
|
104
|
+
|
|
105
|
+
<step name="archive_milestone">
|
|
106
|
+
```bash
|
|
107
|
+
ARCHIVE=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js milestone complete "v[X.Y]" --name "[Milestone Name]")
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
The CLI handles: creating milestones directory, archiving ROADMAP.md and REQUIREMENTS.md, **archiving all phase directories** to `.planning/milestones/v[X.Y]-phases/`, creating/appending MILESTONES.md entry, updating STATE.md.
|
|
111
|
+
|
|
112
|
+
After archival, handle: reorganize ROADMAP.md, full PROJECT.md evolution, delete originals.
|
|
113
|
+
</step>
|
|
114
|
+
|
|
115
|
+
<step name="handle_branches">
|
|
116
|
+
The `milestone complete` CLI command automatically merges the milestone branch into the base branch (e.g., main) when `branching_strategy` is not `"none"`.
|
|
117
|
+
|
|
118
|
+
Check the `git_merge` field from the `ARCHIVE` result:
|
|
119
|
+
|
|
120
|
+
**If `git_merge.merged: true`:**
|
|
121
|
+
```
|
|
122
|
+
Milestone branch `${git_merge.milestone_branch}` merged into `${git_merge.base_branch}` and deleted.
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
**If `git_merge.error`:**
|
|
126
|
+
```
|
|
127
|
+
## Merge Conflict
|
|
128
|
+
|
|
129
|
+
The milestone branch could not be automatically merged into ${git_merge.base_branch}.
|
|
130
|
+
Resolve manually:
|
|
131
|
+
1. `git checkout ${git_merge.base_branch}`
|
|
132
|
+
2. `git merge ${git_merge.milestone_branch}`
|
|
133
|
+
3. Resolve conflicts, then `git commit`
|
|
134
|
+
4. `git branch -d ${git_merge.milestone_branch}`
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
**If `git_merge.skipped`:**
|
|
138
|
+
```
|
|
139
|
+
Milestone branch merge skipped: ${git_merge.reason}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
**If no `git_merge` field:** Branching strategy is `"none"`, no branch handling needed.
|
|
143
|
+
</step>
|
|
144
|
+
|
|
145
|
+
<step name="bump_versions">
|
|
146
|
+
```bash
|
|
147
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js version bump v[X.Y]
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Bump VERSION, package.json, and .claude-plugin/plugin.json to match the milestone version.
|
|
151
|
+
</step>
|
|
152
|
+
|
|
153
|
+
<step name="git_tag">
|
|
154
|
+
```bash
|
|
155
|
+
git tag -a v[X.Y] -m "v[X.Y] [Name] ..."
|
|
156
|
+
```
|
|
157
|
+
Ask: "Push tag to remote? (y/n)"
|
|
158
|
+
</step>
|
|
159
|
+
|
|
160
|
+
<step name="git_commit_milestone">
|
|
161
|
+
```bash
|
|
162
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js commit "chore: complete v[X.Y] milestone" --files .planning/milestones/v[X.Y]-ROADMAP.md .planning/milestones/v[X.Y]-REQUIREMENTS.md .planning/MILESTONES.md .planning/PROJECT.md .planning/STATE.md VERSION package.json .claude-plugin/plugin.json
|
|
163
|
+
```
|
|
164
|
+
</step>
|
|
165
|
+
|
|
166
|
+
<step name="update_lt_roadmap">
|
|
167
|
+
Check if LONG-TERM-ROADMAP.md exists and update LT milestone status:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
LT_LIST=$(node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js long-term-roadmap list --raw 2>/dev/null || true)
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**If LT roadmap exists:**
|
|
174
|
+
1. Check if v[X.Y] is linked to any LT milestone
|
|
175
|
+
2. If linked, check if all normal milestones in that LT milestone are now shipped
|
|
176
|
+
3. If all shipped, update LT milestone status to `completed`:
|
|
177
|
+
```bash
|
|
178
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js long-term-roadmap update --id [LT-N] --status completed
|
|
179
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js long-term-roadmap history --action "Completed LT-N" --details "All normal milestones shipped"
|
|
180
|
+
```
|
|
181
|
+
4. If the next LT milestone exists and is `planned`, update to `active`:
|
|
182
|
+
```bash
|
|
183
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js long-term-roadmap update --id [LT-N+1] --status active
|
|
184
|
+
```
|
|
185
|
+
5. Commit changes:
|
|
186
|
+
```bash
|
|
187
|
+
node ${CLAUDE_PLUGIN_ROOT}/bin/grd-tools.js commit "docs: update LT roadmap after v[X.Y] completion" --files .planning/LONG-TERM-ROADMAP.md
|
|
188
|
+
```
|
|
189
|
+
</step>
|
|
190
|
+
|
|
191
|
+
<step name="offer_next">
|
|
192
|
+
```
|
|
193
|
+
Milestone v[X.Y] [Name] complete
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## Next Up
|
|
198
|
+
|
|
199
|
+
**Start Next Milestone** — questioning -> research -> requirements -> roadmap
|
|
200
|
+
|
|
201
|
+
`/grd:new-milestone`
|
|
202
|
+
|
|
203
|
+
<sub>`/clear` first -> fresh context window</sub>
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
```
|
|
207
|
+
</step>
|
|
208
|
+
|
|
209
|
+
</process>
|
|
210
|
+
|
|
211
|
+
<success_criteria>
|
|
212
|
+
- [ ] Milestone audit completed (integration checks, requirements coverage)
|
|
213
|
+
- [ ] MILESTONES.md entry created
|
|
214
|
+
- [ ] PROJECT.md full evolution review completed
|
|
215
|
+
- [ ] ROADMAP.md reorganized with milestone grouping
|
|
216
|
+
- [ ] Archives created
|
|
217
|
+
- [ ] Phase directories archived to .planning/milestones/v[X.Y]-phases/
|
|
218
|
+
- [ ] ${phases_dir}/ directory is empty
|
|
219
|
+
- [ ] REQUIREMENTS.md deleted (fresh for next milestone)
|
|
220
|
+
- [ ] STATE.md updated
|
|
221
|
+
- [ ] Git tag created
|
|
222
|
+
- [ ] Milestone commit made
|
|
223
|
+
- [ ] LT roadmap status updated (if applicable)
|
|
224
|
+
- [ ] User knows next step (/grd:new-milestone)
|
|
225
|
+
</success_criteria>
|