@ktpartners/dgs-platform 2.9.0 → 3.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/CHANGELOG.md +197 -0
  2. package/README.md +34 -2
  3. package/agents/dgs-executor.md +124 -3
  4. package/agents/dgs-idea-researcher.md +447 -0
  5. package/agents/dgs-plan-checker.md +61 -3
  6. package/agents/dgs-planner.md +51 -8
  7. package/bin/install.js +44 -0
  8. package/commands/dgs/abandon-quick.md +28 -0
  9. package/commands/dgs/add-tests.md +2 -2
  10. package/commands/dgs/audit-milestone.md +4 -3
  11. package/commands/dgs/capture-principle.md +11 -11
  12. package/commands/dgs/cleanup.md +2 -2
  13. package/commands/dgs/complete-milestone.md +11 -11
  14. package/commands/dgs/complete-quick.md +28 -0
  15. package/commands/dgs/create-milestone-job.md +2 -2
  16. package/commands/dgs/debug.md +3 -3
  17. package/commands/dgs/develop-idea.md +1 -1
  18. package/commands/dgs/diff-report.md +124 -0
  19. package/commands/dgs/fast.md +3 -1
  20. package/commands/dgs/health.md +1 -1
  21. package/commands/dgs/map-codebase.md +6 -6
  22. package/commands/dgs/new-milestone.md +5 -5
  23. package/commands/dgs/new-project.md +8 -21
  24. package/commands/dgs/package-scan.md +43 -0
  25. package/commands/dgs/plan-milestone-gaps.md +1 -1
  26. package/commands/dgs/progress.md +3 -3
  27. package/commands/dgs/quick-abandon.md +8 -0
  28. package/commands/dgs/quick-complete.md +8 -0
  29. package/commands/dgs/quick.md +10 -3
  30. package/commands/dgs/research-idea.md +3 -2
  31. package/commands/dgs/research-phase.md +3 -3
  32. package/commands/dgs/switch-project.md +14 -1
  33. package/commands/dgs/write-spec.md +3 -3
  34. package/deliver-great-systems/bin/dgs-tools.cjs +401 -32
  35. package/deliver-great-systems/bin/lib/audit-tolerance.cjs +77 -0
  36. package/deliver-great-systems/bin/lib/audit-tolerance.test.cjs +101 -0
  37. package/deliver-great-systems/bin/lib/commands.cjs +626 -46
  38. package/deliver-great-systems/bin/lib/commands.test.cjs +451 -0
  39. package/deliver-great-systems/bin/lib/commit-verify.test.cjs +236 -0
  40. package/deliver-great-systems/bin/lib/config.cjs +80 -6
  41. package/deliver-great-systems/bin/lib/config.test.cjs +309 -0
  42. package/deliver-great-systems/bin/lib/context.cjs +120 -0
  43. package/deliver-great-systems/bin/lib/core.cjs +35 -14
  44. package/deliver-great-systems/bin/lib/core.test.cjs +79 -1
  45. package/deliver-great-systems/bin/lib/execution.cjs +49 -17
  46. package/deliver-great-systems/bin/lib/fast-routing.cjs +199 -0
  47. package/deliver-great-systems/bin/lib/fast-routing.test.cjs +108 -0
  48. package/deliver-great-systems/bin/lib/final-commit-precondition.test.cjs +87 -0
  49. package/deliver-great-systems/bin/lib/fixtures/package-scan/bundler-audit-gemfile.json +21 -0
  50. package/deliver-great-systems/bin/lib/fixtures/package-scan/gate-parity-expected.md +186 -0
  51. package/deliver-great-systems/bin/lib/fixtures/package-scan/gate-parity-runresult.json +235 -0
  52. package/deliver-great-systems/bin/lib/fixtures/package-scan/govulncheck-import.json +3 -0
  53. package/deliver-great-systems/bin/lib/fixtures/package-scan/npm-audit-v10.json +37 -0
  54. package/deliver-great-systems/bin/lib/fixtures/package-scan/osv-clean.json +3 -0
  55. package/deliver-great-systems/bin/lib/fixtures/package-scan/osv-vulns.json +77 -0
  56. package/deliver-great-systems/bin/lib/fixtures/package-scan/pip-audit-requirements.json +28 -0
  57. package/deliver-great-systems/bin/lib/fixtures/package-scan/snyk-lodash.json +30 -0
  58. package/deliver-great-systems/bin/lib/fixtures/package-scan/snyk-workspaces.json +55 -0
  59. package/deliver-great-systems/bin/lib/flat-migration.test.cjs +396 -0
  60. package/deliver-great-systems/bin/lib/frontmatter.cjs +1 -1
  61. package/deliver-great-systems/bin/lib/governance.cjs +211 -0
  62. package/deliver-great-systems/bin/lib/governance.test.cjs +339 -0
  63. package/deliver-great-systems/bin/lib/health-untracked-phase.test.cjs +269 -0
  64. package/deliver-great-systems/bin/lib/ideas.cjs +206 -91
  65. package/deliver-great-systems/bin/lib/ideas.test.cjs +244 -1
  66. package/deliver-great-systems/bin/lib/init.cjs +357 -61
  67. package/deliver-great-systems/bin/lib/init.test.cjs +625 -8
  68. package/deliver-great-systems/bin/lib/jobs.cjs +131 -25
  69. package/deliver-great-systems/bin/lib/jobs.test.cjs +193 -74
  70. package/deliver-great-systems/bin/lib/migration.cjs +409 -1
  71. package/deliver-great-systems/bin/lib/migration.test.cjs +158 -1
  72. package/deliver-great-systems/bin/lib/milestone.cjs +154 -31
  73. package/deliver-great-systems/bin/lib/milestone.test.cjs +203 -0
  74. package/deliver-great-systems/bin/lib/package-adapters.cjs +530 -0
  75. package/deliver-great-systems/bin/lib/package-adapters.test.cjs +618 -0
  76. package/deliver-great-systems/bin/lib/package-ecosystems.cjs +350 -0
  77. package/deliver-great-systems/bin/lib/package-ecosystems.test.cjs +348 -0
  78. package/deliver-great-systems/bin/lib/package-runner.cjs +199 -0
  79. package/deliver-great-systems/bin/lib/package-runner.test.cjs +198 -0
  80. package/deliver-great-systems/bin/lib/package-scan-provenance.cjs +56 -0
  81. package/deliver-great-systems/bin/lib/package-scan-provenance.test.cjs +103 -0
  82. package/deliver-great-systems/bin/lib/package-scan-report.cjs +1140 -0
  83. package/deliver-great-systems/bin/lib/package-scan-report.test.cjs +1963 -0
  84. package/deliver-great-systems/bin/lib/package-scan-skill.cjs +96 -0
  85. package/deliver-great-systems/bin/lib/package-scan-skill.test.cjs +136 -0
  86. package/deliver-great-systems/bin/lib/package-scan.cjs +919 -0
  87. package/deliver-great-systems/bin/lib/package-scan.test.cjs +2147 -0
  88. package/deliver-great-systems/bin/lib/phase.cjs +146 -3
  89. package/deliver-great-systems/bin/lib/phase.test.cjs +420 -0
  90. package/deliver-great-systems/bin/lib/plan-number-validity.test.cjs +48 -0
  91. package/deliver-great-systems/bin/lib/projects.cjs +65 -10
  92. package/deliver-great-systems/bin/lib/projects.test.cjs +198 -2
  93. package/deliver-great-systems/bin/lib/quick.cjs +739 -0
  94. package/deliver-great-systems/bin/lib/quick.test.cjs +730 -0
  95. package/deliver-great-systems/bin/lib/repos.cjs +37 -13
  96. package/deliver-great-systems/bin/lib/review.cjs +1821 -0
  97. package/deliver-great-systems/bin/lib/roadmap.cjs +34 -13
  98. package/deliver-great-systems/bin/lib/specs.cjs +3 -81
  99. package/deliver-great-systems/bin/lib/state-transition-gate.test.cjs +160 -0
  100. package/deliver-great-systems/bin/lib/state.cjs +147 -55
  101. package/deliver-great-systems/bin/lib/summary-frontmatter.cjs +54 -0
  102. package/deliver-great-systems/bin/lib/summary-frontmatter.test.cjs +78 -0
  103. package/deliver-great-systems/bin/lib/sweep-scope.test.cjs +263 -0
  104. package/deliver-great-systems/bin/lib/sync.cjs +75 -0
  105. package/deliver-great-systems/bin/lib/verify.cjs +198 -7
  106. package/deliver-great-systems/bin/lib/verify.test.cjs +82 -0
  107. package/deliver-great-systems/bin/lib/wave-0-template-rename.test.cjs +40 -0
  108. package/deliver-great-systems/bin/lib/worktrees.cjs +790 -0
  109. package/deliver-great-systems/bin/lib/worktrees.test.cjs +963 -0
  110. package/deliver-great-systems/references/agent-step-reliability.md +60 -0
  111. package/deliver-great-systems/references/conflict-resolution.md +4 -0
  112. package/deliver-great-systems/references/context-tiers.md +4 -0
  113. package/deliver-great-systems/references/package-scan-config.md +151 -0
  114. package/deliver-great-systems/references/questioning.md +0 -30
  115. package/deliver-great-systems/references/spec-review-loop.md +1 -2
  116. package/deliver-great-systems/references/workflow-conventions.md +29 -0
  117. package/deliver-great-systems/skills/dgs-tests/package-scan.md +44 -0
  118. package/deliver-great-systems/templates/REVIEW.md +35 -0
  119. package/deliver-great-systems/templates/VALIDATION.md +1 -1
  120. package/deliver-great-systems/templates/claude-md.md +27 -0
  121. package/deliver-great-systems/templates/package-scan-report.md +108 -0
  122. package/deliver-great-systems/templates/project.md +6 -170
  123. package/deliver-great-systems/templates/summary.md +3 -1
  124. package/deliver-great-systems/workflows/abandon-quick.md +89 -0
  125. package/deliver-great-systems/workflows/add-idea.md +3 -3
  126. package/deliver-great-systems/workflows/add-phase.md +5 -0
  127. package/deliver-great-systems/workflows/add-tests.md +14 -0
  128. package/deliver-great-systems/workflows/add-todo.md +1 -0
  129. package/deliver-great-systems/workflows/approve-spec.md +25 -4
  130. package/deliver-great-systems/workflows/audit-milestone.md +66 -10
  131. package/deliver-great-systems/workflows/audit-phase.md +15 -5
  132. package/deliver-great-systems/workflows/cancel-job.md +2 -2
  133. package/deliver-great-systems/workflows/check-todos.md +2 -3
  134. package/deliver-great-systems/workflows/codereview.md +103 -9
  135. package/deliver-great-systems/workflows/complete-milestone.md +218 -24
  136. package/deliver-great-systems/workflows/complete-quick.md +106 -0
  137. package/deliver-great-systems/workflows/consolidate-ideas.md +1 -1
  138. package/deliver-great-systems/workflows/create-milestone-job.md +4 -4
  139. package/deliver-great-systems/workflows/develop-idea.md +11 -11
  140. package/deliver-great-systems/workflows/diagnose-issues.md +14 -0
  141. package/deliver-great-systems/workflows/discuss-idea.md +1 -1
  142. package/deliver-great-systems/workflows/discuss-phase.md +3 -2
  143. package/deliver-great-systems/workflows/execute-phase.md +209 -33
  144. package/deliver-great-systems/workflows/execute-plan.md +22 -22
  145. package/deliver-great-systems/workflows/help.md +53 -20
  146. package/deliver-great-systems/workflows/import-spec.md +65 -7
  147. package/deliver-great-systems/workflows/init-product.md +45 -167
  148. package/deliver-great-systems/workflows/new-milestone.md +140 -33
  149. package/deliver-great-systems/workflows/new-project.md +60 -331
  150. package/deliver-great-systems/workflows/package-scan.md +59 -0
  151. package/deliver-great-systems/workflows/plan-phase.md +79 -1
  152. package/deliver-great-systems/workflows/progress-all.md +133 -0
  153. package/deliver-great-systems/workflows/quick-abandon.md +89 -0
  154. package/deliver-great-systems/workflows/quick-complete.md +106 -0
  155. package/deliver-great-systems/workflows/quick.md +328 -26
  156. package/deliver-great-systems/workflows/refine-spec.md +1 -1
  157. package/deliver-great-systems/workflows/research-idea.md +77 -139
  158. package/deliver-great-systems/workflows/resume-project.md +2 -2
  159. package/deliver-great-systems/workflows/run-job.md +29 -43
  160. package/deliver-great-systems/workflows/settings.md +13 -77
  161. package/deliver-great-systems/workflows/validate-phase.md +39 -1
  162. package/deliver-great-systems/workflows/verify-work.md +14 -0
  163. package/deliver-great-systems/workflows/write-spec.md +11 -13
  164. package/hooks/dist/dgs-enforce-discipline.js +196 -0
  165. package/package.json +1 -1
  166. package/scripts/build-hooks.js +1 -0
@@ -23,7 +23,7 @@ One command creates all fix phases — no manual `/dgs:add-phase` per gap.
23
23
 
24
24
  <context>
25
25
  **Audit results:**
26
- Glob: .planning/v*-MILESTONE-AUDIT.md (use most recent)
26
+ Glob: ${project_root}/v*-MILESTONE-AUDIT.md (use most recent)
27
27
 
28
28
  Original intent and current planning state are loaded on demand inside the workflow.
29
29
  </context>
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: dgs:progress
3
- description: Check project progress, show context, and route to next action (execute or plan)
3
+ description: Check project progress, show context, and route to next action (execute or plan). Use --all for product-wide dashboard across all projects
4
4
  allowed-tools:
5
5
  - Read
6
6
  - Bash
@@ -16,9 +16,9 @@ Provides situational awareness before continuing work.
16
16
 
17
17
  <execution_context>
18
18
  @~/.claude/deliver-great-systems/workflows/progress.md
19
+ @~/.claude/deliver-great-systems/workflows/progress-all.md
19
20
  </execution_context>
20
21
 
21
22
  <process>
22
- Execute the progress workflow from @~/.claude/deliver-great-systems/workflows/progress.md end-to-end.
23
- Preserve all routing logic (Routes A through F) and edge case handling.
23
+ Parse $ARGUMENTS. If it contains the `--all` flag, execute the product-level dashboard workflow from @~/.claude/deliver-great-systems/workflows/progress-all.md end-to-end. Otherwise, execute the single-project progress workflow from @~/.claude/deliver-great-systems/workflows/progress.md end-to-end, preserving all routing logic (Routes A through F) and edge case handling.
24
24
  </process>
@@ -0,0 +1,8 @@
1
+ ---
2
+ name: dgs:quick-abandon
3
+ description: "Alias for /dgs:abandon-quick"
4
+ allowed-tools: []
5
+ ---
6
+ This command has been renamed. Use `/dgs:abandon-quick` instead.
7
+
8
+ Run `/dgs:abandon-quick $ARGUMENTS` to continue.
@@ -0,0 +1,8 @@
1
+ ---
2
+ name: dgs:quick-complete
3
+ description: "Alias for /dgs:complete-quick"
4
+ allowed-tools: []
5
+ ---
6
+ This command has been renamed. Use `/dgs:complete-quick` instead.
7
+
8
+ Run `/dgs:complete-quick $ARGUMENTS` to continue.
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: dgs:quick
3
3
  description: Execute a quick task with DGS guarantees (atomic commits, state tracking) but skip optional agents
4
- argument-hint: "[--full]"
4
+ argument-hint: "[--full] [--debug] [--main]"
5
5
  allowed-tools:
6
6
  - Read
7
7
  - Write
@@ -17,12 +17,19 @@ Execute small, ad-hoc tasks with DGS guarantees (atomic commits, STATE.md tracki
17
17
 
18
18
  Quick mode is the same system with a shorter path:
19
19
  - Spawns dgs-planner (quick mode) + dgs-executor(s)
20
- - Quick tasks live in `.planning/quick/` separate from planned phases
20
+ - Quick tasks live in `quick/` separate from planned phases
21
21
  - Updates STATE.md "Quick Tasks Completed" table (NOT ROADMAP.md)
22
22
 
23
+ **Two flavors (auto-detected):**
24
+ - **Product-level quick** (no active milestone, or `--main` flag): Creates an ephemeral worktree off main with a `quick/{slug}` branch. Use `/dgs:complete-quick` to rebase, merge, and clean up. Use `/dgs:abandon-quick` to discard.
25
+ - **Milestone-context quick** (active milestone): Works within the existing milestone worktree. No new worktree created. Changes merge with the milestone via `/dgs:complete-milestone`.
26
+
23
27
  **Default:** Skips research, plan-checker, verifier. Use when you know exactly what to do.
24
28
 
25
- **`--full` flag:** Enables plan-checking (max 2 iterations) and post-execution verification. Use when you want quality guarantees without full milestone ceremony.
29
+ **Flags:**
30
+ - **`--full`:** Enables plan-checking (max 2 iterations) and post-execution verification. Use when you want quality guarantees without full milestone ceremony.
31
+ - **`--debug`:** Investigation-focused guidance. Agent investigates root cause before fixing, documents findings. May result in no code change. Same git mechanics.
32
+ - **`--main`:** Forces product-level quick even when a milestone is active. Creates its own worktree instead of working in the milestone worktree.
26
33
  </objective>
27
34
 
28
35
  <execution_context>
@@ -10,6 +10,7 @@ allowed-tools:
10
10
  - Grep
11
11
  - WebSearch
12
12
  - WebFetch
13
+ - Task
13
14
  ---
14
15
 
15
16
  <objective>
@@ -19,7 +20,7 @@ Research an idea's technical landscape and feasibility through a subagent workfl
19
20
  - **With an idea ID** (`/dgs:research-idea 5`): Researches that specific idea directly
20
21
  - **Without an idea ID** (`/dgs:research-idea`): Lists pending ideas for selection
21
22
 
22
- The output is a research document at `.planning/docs/ideas/pending/{slug}-research.md` and a Research Log entry appended to the idea file, both committed together. When prior research exists, the document is overwritten with a "Changes from Prior Research" section highlighting what shifted.
23
+ The output is a research document at `${project_root}/docs/ideas/pending/{slug}-research.md` and a Research Log entry appended to the idea file, both committed together. When prior research exists, the document is overwritten with a "Changes from Prior Research" section highlighting what shifted.
23
24
  </objective>
24
25
 
25
26
  <execution_context>
@@ -37,7 +38,7 @@ The workflow handles all logic including:
37
38
  1. Argument parsing and idea selection (with or without ID)
38
39
  2. Loading idea context and prior research/discussion history
39
40
  3. Five adaptive research dimensions (web search, codebase analysis, landscape survey, approach identification, feasibility assessment)
40
- 4. Research document creation at `.planning/docs/ideas/pending/{slug}-research.md`
41
+ 4. Research document creation at `${project_root}/docs/ideas/pending/{slug}-research.md`
41
42
  5. Research log entry save via `dgs-tools.cjs ideas research-save`
42
43
  6. Git commit of both files and next-step suggestion
43
44
  </process>
@@ -55,7 +55,7 @@ PHASE_INFO=$(node ~/.claude/deliver-great-systems/bin/dgs-tools.cjs roadmap get-
55
55
  ## 2. Check Existing Research
56
56
 
57
57
  ```bash
58
- ls .planning/phases/${PHASE}-*/RESEARCH.md 2>/dev/null
58
+ ls ${project_root}/phases/${PHASE}-*/RESEARCH.md 2>/dev/null
59
59
  ```
60
60
 
61
61
  **If exists:** Offer: 1) Update research, 2) View existing, 3) Skip. Wait for response.
@@ -129,7 +129,7 @@ Before declaring complete, verify:
129
129
  </quality_gate>
130
130
 
131
131
  <output>
132
- Write to: .planning/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md
132
+ Write to: ${project_root}/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md
133
133
  </output>
134
134
  ```
135
135
 
@@ -159,7 +159,7 @@ Continue research for Phase {phase_number}: {phase_name}
159
159
 
160
160
  <prior_state>
161
161
  <files_to_read>
162
- - .planning/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md (Existing research)
162
+ - ${project_root}/phases/${PHASE}-{slug}/${PHASE}-RESEARCH.md (Existing research)
163
163
  </files_to_read>
164
164
  </prior_state>
165
165
 
@@ -10,7 +10,7 @@ allowed-tools:
10
10
  <objective>
11
11
  Switch the active project context. If a project name is provided, switches immediately. If no name is given, shows a picker with all active projects.
12
12
 
13
- After switching, all DGS commands operate in the new project's context (its .planning/ directory, repos, and state).
13
+ After switching, all DGS commands operate in the new project's context (its project directory, repos, and state).
14
14
  </objective>
15
15
 
16
16
  <process>
@@ -55,4 +55,17 @@ Progress: {status.progress}%
55
55
  **If error:**
56
56
  Display the error message from the response. Suggest `/dgs:list-projects` to see available projects.
57
57
 
58
+ ## 4. Commit PROJECTS.md if modified
59
+
60
+ The `projects list` call in step 2 regenerates PROJECTS.md. Commit it if changed:
61
+
62
+ ```bash
63
+ git -C "$(node -e "const{getPlanningRoot}=require('$HOME/.claude/deliver-great-systems/bin/lib/core.cjs');process.stdout.write(getPlanningRoot(process.cwd()))")" diff --quiet PROJECTS.md 2>/dev/null
64
+ ```
65
+
66
+ If the above exits non-zero (file has changes):
67
+ ```bash
68
+ node "$HOME/.claude/deliver-great-systems/bin/dgs-tools.cjs" commit "chore(project): regenerate PROJECTS.md on switch" --push
69
+ ```
70
+
58
71
  </process>
@@ -28,9 +28,9 @@ The spec covers the full lifecycle: idea selection, PRD generation with all requ
28
28
  Arguments: $ARGUMENTS (optional idea IDs and `--auto` flag)
29
29
 
30
30
  Codebase context for Technical Considerations:
31
- @.planning/codebase/ARCHITECTURE.md
32
- @.planning/codebase/STACK.md
33
- @.planning/codebase/STRUCTURE.md
31
+ @codebase/ARCHITECTURE.md
32
+ @codebase/STACK.md
33
+ @codebase/STRUCTURE.md
34
34
  </context>
35
35
 
36
36
  <process>