@opengsd/gsd-core 1.7.0-rc.2 → 1.7.0-rc.4

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 (184) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/GEMINI.md +25 -23
  4. package/README.ja-JP.md +4 -3
  5. package/README.ko-KR.md +4 -3
  6. package/README.md +7 -6
  7. package/README.pt-BR.md +4 -3
  8. package/README.zh-CN.md +4 -3
  9. package/agents/gsd-advisor-researcher.md +1 -1
  10. package/agents/gsd-ai-researcher.md +1 -1
  11. package/agents/gsd-code-fixer.md +1 -1
  12. package/agents/gsd-debug-session-manager.md +1 -1
  13. package/agents/gsd-debugger.md +1 -1
  14. package/agents/gsd-domain-researcher.md +1 -1
  15. package/agents/gsd-eval-auditor.md +1 -1
  16. package/agents/gsd-executor.md +4 -4
  17. package/agents/gsd-intel-updater.md +1 -1
  18. package/agents/gsd-mempalace-curator.md +1 -1
  19. package/agents/gsd-phase-researcher.md +2 -2
  20. package/agents/gsd-plan-checker.md +1 -1
  21. package/agents/gsd-planner.md +2 -2
  22. package/agents/gsd-project-researcher.md +2 -2
  23. package/agents/gsd-research-synthesizer.md +1 -1
  24. package/agents/gsd-ui-researcher.md +2 -2
  25. package/agents/gsd-verifier.md +2 -2
  26. package/bin/install.js +132 -464
  27. package/commands/gsd/map-codebase.md +4 -4
  28. package/commands/gsd/mempalace-capture.md +1 -1
  29. package/commands/gsd/mempalace-recall.md +9 -5
  30. package/commands/gsd/next.md +29 -0
  31. package/commands/gsd/ns-project.md +2 -1
  32. package/commands/gsd/ns-workflow.md +5 -2
  33. package/commands/gsd/onboard.md +46 -0
  34. package/gsd-core/bin/ensure-runtime-build.cjs +246 -0
  35. package/gsd-core/bin/gsd-tools.cjs +72 -3
  36. package/gsd-core/bin/lib/capability-registry.cjs +684 -264
  37. package/gsd-core/bin/lib/capability-state.cjs +117 -18
  38. package/gsd-core/bin/lib/capability-writer.cjs +11 -1
  39. package/gsd-core/bin/lib/check-command-router.cjs +111 -1
  40. package/gsd-core/bin/lib/claude-orchestration-command-router.cjs +136 -0
  41. package/gsd-core/bin/lib/claude-orchestration.cjs +404 -0
  42. package/gsd-core/bin/lib/clusters.cjs +2 -0
  43. package/gsd-core/bin/lib/command-aliases.cjs +8 -0
  44. package/gsd-core/bin/lib/config.cjs +19 -1
  45. package/gsd-core/bin/lib/core-utils.cjs +41 -0
  46. package/gsd-core/bin/lib/external-job.cjs +287 -0
  47. package/gsd-core/bin/lib/gate-predicate-evaluator.cjs +151 -0
  48. package/gsd-core/bin/lib/graphify.cjs +41 -9
  49. package/gsd-core/bin/lib/init-command-router.cjs +4 -0
  50. package/gsd-core/bin/lib/init.cjs +25 -69
  51. package/gsd-core/bin/lib/install-engine.cjs +8 -5
  52. package/gsd-core/bin/lib/install-profiles.cjs +2 -0
  53. package/gsd-core/bin/lib/loop-resolver.cjs +7 -1
  54. package/gsd-core/bin/lib/milestone.cjs +7 -1
  55. package/gsd-core/bin/lib/model-resolver.cjs +69 -4
  56. package/gsd-core/bin/lib/onboard-projection.cjs +309 -0
  57. package/gsd-core/bin/lib/phase.cjs +14 -2
  58. package/gsd-core/bin/lib/plan-scan.cjs +9 -1
  59. package/gsd-core/bin/lib/profile-output.cjs +1 -1
  60. package/gsd-core/bin/lib/prohibition-enforcement.cjs +21 -19
  61. package/gsd-core/bin/lib/roadmap.cjs +17 -2
  62. package/gsd-core/bin/lib/runtime-hooks-surface.cjs +18 -13
  63. package/gsd-core/bin/lib/runtime-name-policy.cjs +11 -11
  64. package/gsd-core/bin/lib/shell-command-projection.cjs +12 -8
  65. package/gsd-core/bin/lib/smart-entry.cjs +521 -0
  66. package/gsd-core/bin/lib/surface.cjs +63 -33
  67. package/gsd-core/bin/lib/update-context.cjs +0 -5
  68. package/gsd-core/bin/shared/config-schema.manifest.json +1 -0
  69. package/gsd-core/bin/shared/model-catalog.json +5 -5
  70. package/gsd-core/bin/shared/runtime-aliases.manifest.json +0 -5
  71. package/gsd-core/references/gates.md +1 -1
  72. package/gsd-core/references/gsd-run-resolver.md +8 -0
  73. package/gsd-core/references/planning-config.md +1 -1
  74. package/gsd-core/templates/project.md +1 -1
  75. package/gsd-core/workflows/_runtime-launcher.snippet.sh +1 -1
  76. package/gsd-core/workflows/add-backlog.md +1 -1
  77. package/gsd-core/workflows/add-phase.md +1 -1
  78. package/gsd-core/workflows/add-tests.md +1 -1
  79. package/gsd-core/workflows/add-todo.md +1 -1
  80. package/gsd-core/workflows/ai-integration-phase.md +1 -1
  81. package/gsd-core/workflows/audit-fix.md +1 -1
  82. package/gsd-core/workflows/audit-milestone.md +1 -1
  83. package/gsd-core/workflows/audit-uat.md +1 -1
  84. package/gsd-core/workflows/autonomous.md +1 -1
  85. package/gsd-core/workflows/check-todos.md +1 -1
  86. package/gsd-core/workflows/cleanup.md +1 -1
  87. package/gsd-core/workflows/code-review-fix.md +1 -1
  88. package/gsd-core/workflows/code-review.md +1 -1
  89. package/gsd-core/workflows/complete-milestone.md +1 -1
  90. package/gsd-core/workflows/debug.md +1 -1
  91. package/gsd-core/workflows/diagnose-issues.md +1 -1
  92. package/gsd-core/workflows/discuss-phase/modes/advisor.md +1 -1
  93. package/gsd-core/workflows/discuss-phase/modes/auto.md +1 -1
  94. package/gsd-core/workflows/discuss-phase/modes/chain.md +1 -1
  95. package/gsd-core/workflows/discuss-phase-assumptions.md +1 -1
  96. package/gsd-core/workflows/discuss-phase.md +2 -2
  97. package/gsd-core/workflows/do.md +5 -4
  98. package/gsd-core/workflows/docs-update.md +1 -1
  99. package/gsd-core/workflows/edit-phase.md +1 -1
  100. package/gsd-core/workflows/eval-review.md +1 -1
  101. package/gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md +1 -1
  102. package/gsd-core/workflows/execute-phase/steps/post-merge-gate.md +1 -1
  103. package/gsd-core/workflows/execute-phase.md +4 -5
  104. package/gsd-core/workflows/execute-plan.md +1 -1
  105. package/gsd-core/workflows/explore.md +1 -1
  106. package/gsd-core/workflows/extract-learnings.md +1 -1
  107. package/gsd-core/workflows/forensics.md +1 -1
  108. package/gsd-core/workflows/graduation.md +1 -1
  109. package/gsd-core/workflows/health.md +1 -1
  110. package/gsd-core/workflows/help/modes/brief.md +2 -1
  111. package/gsd-core/workflows/help/modes/default.md +2 -1
  112. package/gsd-core/workflows/help/modes/full.md +25 -1
  113. package/gsd-core/workflows/help/modes/topic.md +2 -1
  114. package/gsd-core/workflows/import.md +1 -1
  115. package/gsd-core/workflows/ingest-docs.md +1 -1
  116. package/gsd-core/workflows/insert-phase.md +1 -1
  117. package/gsd-core/workflows/list-seeds.md +1 -1
  118. package/gsd-core/workflows/list-workspaces.md +1 -1
  119. package/gsd-core/workflows/manager.md +1 -1
  120. package/gsd-core/workflows/map-codebase.md +1 -1
  121. package/gsd-core/workflows/milestone-summary.md +1 -1
  122. package/gsd-core/workflows/mvp-phase.md +1 -1
  123. package/gsd-core/workflows/new-milestone.md +1 -1
  124. package/gsd-core/workflows/new-project.md +1 -1
  125. package/gsd-core/workflows/new-workspace.md +1 -1
  126. package/gsd-core/workflows/next.md +1 -1
  127. package/gsd-core/workflows/onboard.md +277 -0
  128. package/gsd-core/workflows/pause-work.md +1 -1
  129. package/gsd-core/workflows/plan-milestone-gaps.md +1 -1
  130. package/gsd-core/workflows/plan-phase/steps/prd-express-path.md +1 -1
  131. package/gsd-core/workflows/plan-phase.md +9 -2
  132. package/gsd-core/workflows/plan-review-convergence.md +1 -1
  133. package/gsd-core/workflows/plant-seed.md +1 -1
  134. package/gsd-core/workflows/pr-branch.md +1 -1
  135. package/gsd-core/workflows/profile-user.md +1 -1
  136. package/gsd-core/workflows/progress.md +1 -1
  137. package/gsd-core/workflows/quick.md +21 -1
  138. package/gsd-core/workflows/reapply-patches.md +1 -1
  139. package/gsd-core/workflows/remove-phase.md +1 -1
  140. package/gsd-core/workflows/remove-workspace.md +1 -1
  141. package/gsd-core/workflows/resume-project.md +1 -1
  142. package/gsd-core/workflows/review.md +43 -7
  143. package/gsd-core/workflows/scan.md +1 -1
  144. package/gsd-core/workflows/secure-phase.md +1 -1
  145. package/gsd-core/workflows/settings-advanced.md +3 -1
  146. package/gsd-core/workflows/settings-integrations.md +1 -1
  147. package/gsd-core/workflows/settings.md +1 -1
  148. package/gsd-core/workflows/ship.md +1 -1
  149. package/gsd-core/workflows/sketch-wrap-up.md +1 -1
  150. package/gsd-core/workflows/sketch.md +1 -1
  151. package/gsd-core/workflows/smart-entry.md +120 -0
  152. package/gsd-core/workflows/spec-phase.md +8 -6
  153. package/gsd-core/workflows/spike-wrap-up.md +1 -1
  154. package/gsd-core/workflows/spike.md +1 -1
  155. package/gsd-core/workflows/stats.md +1 -1
  156. package/gsd-core/workflows/thread.md +1 -1
  157. package/gsd-core/workflows/transition.md +1 -1
  158. package/gsd-core/workflows/ui-phase.md +1 -1
  159. package/gsd-core/workflows/ui-review.md +1 -1
  160. package/gsd-core/workflows/ultraplan-phase.md +1 -1
  161. package/gsd-core/workflows/update.md +3 -6
  162. package/gsd-core/workflows/validate-phase.md +1 -1
  163. package/gsd-core/workflows/verify-phase.md +1 -1
  164. package/gsd-core/workflows/verify-work.md +62 -4
  165. package/package.json +3 -5
  166. package/scripts/ci-test-scope.cjs +19 -1
  167. package/scripts/gen-golden-install-parity-zcode.cjs +77 -0
  168. package/scripts/generate-package-identity.cjs +27 -2
  169. package/scripts/lint-allow-test-rule-refs.allowlist.json +0 -148
  170. package/scripts/lint-regression-test-names.allowlist.json +1 -273
  171. package/scripts/lint-test-file-count.allowlist.json +7 -91
  172. package/scripts/research-profiles.cjs +6 -6
  173. package/scripts/run-tests.cjs +18 -3
  174. package/scripts/slurm-adapter.cjs +269 -0
  175. package/scripts/sync-manifest-versions.cjs +3 -2
  176. package/scripts/sync-runtime-launcher.cjs +20 -2
  177. package/skills/gsd-map-codebase/SKILL.md +3 -3
  178. package/skills/gsd-mempalace-capture/SKILL.md +1 -1
  179. package/skills/gsd-mempalace-recall/SKILL.md +9 -5
  180. package/skills/gsd-next/SKILL.md +30 -0
  181. package/skills/gsd-ns-project/SKILL.md +1 -0
  182. package/skills/gsd-ns-workflow/SKILL.md +4 -1
  183. package/skills/gsd-onboard/SKILL.md +46 -0
  184. package/gemini-extension.json +0 -6
@@ -1,273 +1 @@
1
- [
2
- "bug-10-semver-policy-consolidation.test.cjs",
3
- "bug-130-finishinstall-opencode-testmode.test.cjs",
4
- "bug-131-release-tarball-smoke-explicit-home.test.cjs",
5
- "bug-1367-claude-local-flat-command-layout.test.cjs",
6
- "bug-14-progress-auto-flag-dropped.test.cjs",
7
- "bug-167-query-meta-command.test.cjs",
8
- "bug-1695-state-patch-clobbers-phase-name.test.cjs",
9
- "bug-17-askuserquestion-option-cap.test.cjs",
10
- "bug-170-workflow-fallback-install-hint.test.cjs",
11
- "bug-1736-local-install-commands.test.cjs",
12
- "bug-1754-js-hook-guard.test.cjs",
13
- "bug-1760-state-prune-noop-template-field.test.cjs",
14
- "bug-1761-state-sync-wrong-progress.test.cjs",
15
- "bug-1817-sh-hook-guard.test.cjs",
16
- "bug-1818-unknown-flags.test.cjs",
17
- "bug-1826-phases-clear-confirm.test.cjs",
18
- "bug-1829-inherit-model-profile.test.cjs",
19
- "bug-1834-sh-hooks-installed.test.cjs",
20
- "bug-1891-file-resolution.test.cjs",
21
- "bug-190-bridge-collapse.test.cjs",
22
- "bug-1906-hook-relative-paths.test.cjs",
23
- "bug-1908-uninstall-manifest.test.cjs",
24
- "bug-1924-preserve-user-artifacts.test.cjs",
25
- "bug-1967-cache-invalidation.test.cjs",
26
- "bug-1974-context-exhaustion-record.test.cjs",
27
- "bug-2002-offer-next-context.test.cjs",
28
- "bug-2004-pr-branch-milestone.test.cjs",
29
- "bug-21-state-md-template-frontmatter.test.cjs",
30
- "bug-211-launcher-home-fallback.test.cjs",
31
- "bug-2136-sh-hook-version.test.cjs",
32
- "bug-214-phase-researcher-write-truncation-contract.test.cjs",
33
- "bug-214-writer-agents-write-truncation-contract.test.cjs",
34
- "bug-222-research-synthesizer-write-contract.test.cjs",
35
- "bug-224-pick-stdout-capture.test.cjs",
36
- "bug-2248-local-install-statusline.test.cjs",
37
- "bug-2256-model-overrides-transport.test.cjs",
38
- "bug-2268-parallel-discuss.test.cjs",
39
- "bug-2344-read-guard-claudecode-env.test.cjs",
40
- "bug-2346-agent-read-loop-guards.test.cjs",
41
- "bug-2351-intel-kilo-layout.test.cjs",
42
- "bug-2376-opencode-windows-home-path.test.cjs",
43
- "bug-2384-post-merge-deletion-audit.test.cjs",
44
- "bug-2388-plan-phase-no-branch-rename.test.cjs",
45
- "bug-2396-makefile-test-priority.test.cjs",
46
- "bug-2399-commit-docs-plan-phase.test.cjs",
47
- "bug-2410-stream-checkpoint-heartbeats.test.cjs",
48
- "bug-2418-antigravity-bare-path.test.cjs",
49
- "bug-2419-project-researcher-agent.test.cjs",
50
- "bug-2421-planner-grep-gate-hygiene.test.cjs",
51
- "bug-2424-reapply-patches-baseline-detection.test.cjs",
52
- "bug-2432-quick-plan-predispatch-commit.test.cjs",
53
- "bug-2451-context-monitor-over-report.test.cjs",
54
- "bug-2470-update-md-claude-path.test.cjs",
55
- "bug-2492-context-coverage-gate.test.cjs",
56
- "bug-2501-resurrection-detection.test.cjs",
57
- "bug-2502-insert-phase-state-update.test.cjs",
58
- "bug-2504-uat-foundation-phases.test.cjs",
59
- "bug-2506-settings-profile-nonclaude-warning.test.cjs",
60
- "bug-2516-inherit-model-execute-phase.test.cjs",
61
- "bug-2520-read-guard-hook-subprocess-env.test.cjs",
62
- "bug-2523-quick-deferred-items.test.cjs",
63
- "bug-2530-valid-config-keys.test.cjs",
64
- "bug-2543-gsd-slash-namespace.test.cjs",
65
- "bug-2545-copilot-unreplaced-paths.test.cjs",
66
- "bug-2549-2550-2552-discuss-phase-context.test.cjs",
67
- "bug-2554-decimal-phase-filter.test.cjs",
68
- "bug-2557-gemini-local-hook-paths.test.cjs",
69
- "bug-2559-stale-search-year.test.cjs",
70
- "bug-260-worktree-path-guard.test.cjs",
71
- "bug-2601-inherit-model-profile.test.cjs",
72
- "bug-261-worktree-force-add-guard.test.cjs",
73
- "bug-2630-state-frontmatter-milestone-switch.test.cjs",
74
- "bug-2638-sub-repos-canonical-location.test.cjs",
75
- "bug-2643-skill-frontmatter-name.test.cjs",
76
- "bug-2659-audit-open-crash.test.cjs",
77
- "bug-2660-one-liner-extraction.test.cjs",
78
- "bug-2661-roadmap-sync-parallel.test.cjs",
79
- "bug-2686-review-fix-worktree.test.cjs",
80
- "bug-2698-crlf-install.test.cjs",
81
- "bug-2760-codex-install-defensive.test.cjs",
82
- "bug-2769-requirements-header-variants.test.cjs",
83
- "bug-2770-annotate-deps-int-coerce.test.cjs",
84
- "bug-2771-user-profile-manifest.test.cjs",
85
- "bug-2772-gitmodules-path-intersection.test.cjs",
86
- "bug-2784-update-cache-clear-path.test.cjs",
87
- "bug-279-codex-agent-mapping.test.cjs",
88
- "bug-2794-opencode-model-profile-overrides.test.cjs",
89
- "bug-2798-context-window-config-key.test.cjs",
90
- "bug-2801-ingest-docs-handler.test.cjs",
91
- "bug-2808-skill-hyphen-name.test.cjs",
92
- "bug-2831-opencode-home-path-prefix.test.cjs",
93
- "bug-2836-audit-open-summary-uat-drift.test.cjs",
94
- "bug-2838-summary-rescue-gitignored-planning.test.cjs",
95
- "bug-2839-review-fix-transactional-cleanup.test.cjs",
96
- "bug-2851-workflow-bare-gsd-tools.test.cjs",
97
- "bug-2866-codex-strip-no-trailing-newline.test.cjs",
98
- "bug-2876-skill-frontmatter-quote.test.cjs",
99
- "bug-2911-audit-open-output-shape.test.cjs",
100
- "bug-2912-progress-context-authority.test.cjs",
101
- "bug-2916-handle-branching-default-base.test.cjs",
102
- "bug-2942-detect-custom-skills.test.cjs",
103
- "bug-2943-config-get-context-window-default.test.cjs",
104
- "bug-2948-spike-wrap-up-dispatch.test.cjs",
105
- "bug-2949-sketch-wrap-up-dispatch.test.cjs",
106
- "bug-2950-stale-command-refs.test.cjs",
107
- "bug-2954-help-md-slash-command-stubs.test.cjs",
108
- "bug-2957-claude-global-postinstall-message.test.cjs",
109
- "bug-2969-verify-reapply-patches.test.cjs",
110
- "bug-2973-profile-user-skills-path.test.cjs",
111
- "bug-2979-hook-absolute-node.test.cjs",
112
- "bug-2986-config-schema-mutation-killers.test.cjs",
113
- "bug-2990-code-fixer-worktree-branch.test.cjs",
114
- "bug-2992-check-latest-version.test.cjs",
115
- "bug-2994-verify-reapply-patches-installed-path.test.cjs",
116
- "bug-2995-post-install-script-paths.test.cjs",
117
- "bug-2998-pristine-dir-populated.test.cjs",
118
- "bug-3017-codex-hook-absolute-node.test.cjs",
119
- "bug-3018-codex-discuss-fallback.test.cjs",
120
- "bug-3019-help-passthrough.test.cjs",
121
- "bug-3037-gemini-duplicate-commands.test.cjs",
122
- "bug-3050-update-backup-eacces-nonfatal.test.cjs",
123
- "bug-3054-stale-gsd-next-references.test.cjs",
124
- "bug-3072-optional-sketch-findings-guard.test.cjs",
125
- "bug-3083-resume-route-clear.test.cjs",
126
- "bug-3086-git-create-tag-config-gate.test.cjs",
127
- "bug-3087-planner-directive-language.test.cjs",
128
- "bug-3096-ai-integration-phase-parallel-race.test.cjs",
129
- "bug-3097-3099-executor-worktree-path-safety.test.cjs",
130
- "bug-3120-secure-phase-empty-register.test.cjs",
131
- "bug-3126-global-skills-base-runtime-path.test.cjs",
132
- "bug-3127-state-begin-phase-idempotent.test.cjs",
133
- "bug-3128-roadmap-plan-count-slug-layout.test.cjs",
134
- "bug-3129-validate-commit-git-bypass.test.cjs",
135
- "bug-3130-update-npx-robust-invocation.test.cjs",
136
- "bug-3135-capture-backlog-workflow.test.cjs",
137
- "bug-3150-stats-json-decimal-phase-gaps.test.cjs",
138
- "bug-3156-plan-phase-opencode-dispatch.test.cjs",
139
- "bug-3163-codex-agents-md.test.cjs",
140
- "bug-3168-task-to-agent-rename.test.cjs",
141
- "bug-3181-node-cellar-path.test.cjs",
142
- "bug-3195-quick-resurrection-guard.test.cjs",
143
- "bug-3197-gsd-tools-config-whitelist.test.cjs",
144
- "bug-321-config-defaults-clone-strategy.test.cjs",
145
- "bug-3212-execute-phase-stall-safe-resume.test.cjs",
146
- "bug-3227-config-set-model-overrides.test.cjs",
147
- "bug-3236-capture-seed-one-shot.test.cjs",
148
- "bug-3242-state-update-progress-trample.test.cjs",
149
- "bug-3243-dotted-command-form.test.cjs",
150
- "bug-3245-codex-toml-floats.test.cjs",
151
- "bug-3257-nested-plans-undercount.test.cjs",
152
- "bug-3258-no-stale-gsd-intel-references.test.cjs",
153
- "bug-3275-fmstr-non-string-scalars.test.cjs",
154
- "bug-3285-codex-hooks-state-allowed.test.cjs",
155
- "bug-3286-state-write-routing.test.cjs",
156
- "bug-3288-model-catalog-install-path.test.cjs",
157
- "bug-3290-intel-updater-layout-block.test.cjs",
158
- "bug-33-settings-model-profile-adaptive.test.cjs",
159
- "bug-3320-planner-deep-work-rules.test.cjs",
160
- "bug-3321-verifier-runs-probes.test.cjs",
161
- "bug-3346-codex-aot-toml-key.test.cjs",
162
- "bug-3357-codex-legacy-hooks-json-migration.test.cjs",
163
- "bug-3360-codex-execute-phase-worktrees.test.cjs",
164
- "bug-338-local-install-settings-local-json.test.cjs",
165
- "bug-3381-verify-work-workstream.test.cjs",
166
- "bug-3384-secondary-defects.test.cjs",
167
- "bug-3407-pristine-stale-content.test.cjs",
168
- "bug-3413-shell-command-projection.test.cjs",
169
- "bug-3418-progress-flag-routing.test.cjs",
170
- "bug-3426-codex-windows-hooks.test.cjs",
171
- "bug-3427-3433-codex-install-shape.test.cjs",
172
- "bug-3430-planner-phase-contract.test.cjs",
173
- "bug-3431-debug-command-yaml.test.cjs",
174
- "bug-3441-path-action-projection.test.cjs",
175
- "bug-3442-codex-legacy-hooks-json-migration.test.cjs",
176
- "bug-3442-shim-projection-drift-guard.test.cjs",
177
- "bug-3446-resume-continue-here-discovery.test.cjs",
178
- "bug-3454-state-dollar-backreference-growth.test.cjs",
179
- "bug-3489-complete-phase-idempotent.test.cjs",
180
- "bug-3491-nested-git-worktree.test.cjs",
181
- "bug-3509-path-spaces.test.cjs",
182
- "bug-3516-reapply-patches-gsd-update-filter.test.cjs",
183
- "bug-3521-quick-cleanup-cwd-pin.test.cjs",
184
- "bug-3523-cjs-loadconfig-branching-strategy-warning.test.cjs",
185
- "bug-3537-padded-id-against-unpadded-roadmap.test.cjs",
186
- "bug-3541-installer-migration-prompt-user-resolution.test.cjs",
187
- "bug-3542-executor-git-stash-prohibition.test.cjs",
188
- "bug-3562-codex-install-skill-surface.test.cjs",
189
- "bug-3566-codex-hooks-feature-canonical-key.test.cjs",
190
- "bug-3571-configuration-manifest-install-path.test.cjs",
191
- "bug-3582-codex-skills-materialized.test.cjs",
192
- "bug-3584-runtime-slash-emitters.test.cjs",
193
- "bug-3584-runtime-slash-formatter.test.cjs",
194
- "bug-3588-npm-audit-clean.test.cjs",
195
- "bug-3599-roadmap-get-phase-project-code-prefix.test.cjs",
196
- "bug-3605-stale-research-insert-phase-agent-refs.test.cjs",
197
- "bug-3608-antigravity-update-runtime-classification.test.cjs",
198
- "bug-3610-installer-migration-bundled-hooks-classification.test.cjs",
199
- "bug-3628-bundled-hook-classifier-whitelist.test.cjs",
200
- "bug-3631-router-raw-flag.test.cjs",
201
- "bug-3657-verify-reapply-patches-pristine-drift.test.cjs",
202
- "bug-3659-applysurface-prune-skill-dirs.test.cjs",
203
- "bug-3668-workflow-runtime-resolution.test.cjs",
204
- "bug-3670-cursor-local-install-migration-lock.test.cjs",
205
- "bug-3677-agent-colon-namespace-leak.test.cjs",
206
- "bug-3678-executor-commit-docs-respect.test.cjs",
207
- "bug-3683-command-colon-namespace-leak.test.cjs",
208
- "bug-3683-command-cross-reference-invariant.test.cjs",
209
- "bug-3683-workflow-colon-namespace-leak.test.cjs",
210
- "bug-3689-resume-glob-nomatch.test.cjs",
211
- "bug-3691-annotate-deps-plans-block-variants.test.cjs",
212
- "bug-3706-ui-safety-gate-false-positives.test.cjs",
213
- "bug-3707-locked-worktree-cleanup.test.cjs",
214
- "bug-3727-code-review-fix-flag-dispatch.test.cjs",
215
- "bug-3735-profiles-core-includes-surface.test.cjs",
216
- "bug-3739-gap-checker-padded-prefix-context.test.cjs",
217
- "bug-376-claude-js-hook-gsd-rewriter.test.cjs",
218
- "bug-378-update-check-scoped-name.test.cjs",
219
- "bug-3784-gsd-settings-model-profile-ui-omits-adaptive.test.cjs",
220
- "bug-3805-fast-md-log-to-state-schema.test.cjs",
221
- "bug-3808-codex-adapter-text-mode-fallback.test.cjs",
222
- "bug-3810-no-gsd-sdk-runtime-refs.test.cjs",
223
- "bug-384-agents-runtime-aware.test.cjs",
224
- "bug-397-state-preserve-executor-authored.test.cjs",
225
- "bug-410-install-defaults-test-mode-guard.test.cjs",
226
- "bug-416-archive-dir-null.test.cjs",
227
- "bug-442-config-dir-equals-in-path.test.cjs",
228
- "bug-444-resolver-local-claude-install.test.cjs",
229
- "bug-447-gap-analysis-phase-req-ids.test.cjs",
230
- "bug-474-clock-seam-date-determinism.test.cjs",
231
- "bug-492-effort-manifest-fallback.test.cjs",
232
- "bug-500-planned-phase-progress-corruption.test.cjs",
233
- "bug-501-flat-phase-details-milestone-leak.test.cjs",
234
- "bug-503-update-agent-antigravity-detection.test.cjs",
235
- "bug-505-remove-dead-sdk-verification.test.cjs",
236
- "bug-549-total-phases-overcounts-with-phase-section-heading.test.cjs",
237
- "bug-557-details-summary-milestone-strip.test.cjs",
238
- "bug-570-codex-leak-scanner.test.cjs",
239
- "bug-571-doc-writer-fix-mode-edit-only.test.cjs",
240
- "bug-580-local-sh-hook-bash-wrapper.test.cjs",
241
- "bug-619-codebase-drift-gate-shim.test.cjs",
242
- "bug-621-plan-phase-gap-analysis-gsd-run.test.cjs",
243
- "bug-622-graphify-optional-graph-html.test.cjs",
244
- "bug-630-wave-cleanup-orchestrator-root.test.cjs",
245
- "bug-637-workflow-no-hardcoded-home-tool.test.cjs",
246
- "bug-641-files-from-suite-token.test.cjs",
247
- "bug-663-redos-roadmap-phase-parsing.test.cjs",
248
- "bug-685-windowshide-spawn.test.cjs",
249
- "bug-687-agy-timeout.test.cjs",
250
- "bug-704-codex-launcher-path-corruption.test.cjs",
251
- "bug-730-milestone-phase-details-scope.test.cjs",
252
- "bug-782-cline-skills-emission.test.cjs",
253
- "bug-783-kilo-global-skills-base.test.cjs",
254
- "bug-851-codex-quick-adapter-agent-type-fallback.test.cjs",
255
- "bug-853-bg-dispatch-runtime-gating.test.cjs",
256
- "bug-866-profile-pipeline-temp-root.test.cjs",
257
- "bug-891-non-claude-runtime-home-fallback.test.cjs",
258
- "bug-892-validate-checklist-roadmap-phases.test.cjs",
259
- "bug-905-state-syncstatefrontmatter-preserve-scalars.test.cjs",
260
- "bug-924-claude-flat-skill-layout.test.cjs",
261
- "bug-925-context-monitor-hook-event-name.test.cjs",
262
- "bug-936-no-nested-spawner-wrap.test.cjs",
263
- "bug-941-managed-hooks-registry-manifest.test.cjs",
264
- "bug-947-hermes-gsd-prefix.test.cjs",
265
- "bug-948-state-noop-write-guard.test.cjs",
266
- "bug-950-quick-summary-status-complete.test.cjs",
267
- "bug-967-verify-key-links-strict-paths.test.cjs",
268
- "bug-969-test-infra-flake-hardening.test.cjs",
269
- "bug-974-graphify-budget-missing-value.test.cjs",
270
- "bug-977-fnm-multishell-path.test.cjs",
271
- "bug-978-milestone-complete-force.test.cjs",
272
- "bug-983-trae-windsurf-claude-path-leak.test.cjs"
273
- ]
1
+ []
@@ -1,56 +1,28 @@
1
1
  {
2
2
  "_doc": "Baseline of modules currently exceeding the 2-test-file limit. Each entry locks in TODAY's exact test filenames as the allowlisted set (identity ratchet). Adding a NEW test file to a capped module fails (novel). Removing one requires pruning this list (stale, ratchet-down). When a cluster drops to ≤ 2, remove its entry entirely. New entries require justification in PR description.",
3
3
  "modules": {
4
- "audit": {
5
- "files": [
6
- "audit-command-cutover.test.cjs",
7
- "audit-fix-command.test.cjs",
8
- "bug-2659-audit-open-crash.test.cjs",
9
- "bug-2836-audit-open-summary-uat-drift.test.cjs",
10
- "bug-2911-audit-open-output-shape.test.cjs"
11
- ],
12
- "issue": "192"
13
- },
14
4
  "config": {
15
5
  "files": [
16
- "bug-2943-config-get-context-window-default.test.cjs",
17
- "bug-321-config-defaults-clone-strategy.test.cjs",
18
- "bug-3227-config-set-model-overrides.test.cjs",
19
- "bug-442-config-dir-equals-in-path.test.cjs",
20
6
  "config-field-docs.test.cjs",
21
7
  "config-get-default.test.cjs",
22
8
  "config-schema.property.test.cjs",
23
- "config.test.cjs",
24
- "enh-1055-config-intent-descriptor-drive.test.cjs",
25
- "fix-1628-config-set-validation.test.cjs"
9
+ "config.test.cjs"
26
10
  ],
27
11
  "issue": "TBD"
28
12
  },
29
13
  "graphify": {
30
14
  "files": [
31
- "bug-622-graphify-optional-graph-html.test.cjs",
32
- "bug-974-graphify-budget-missing-value.test.cjs",
33
15
  "graphify-auto-update.slow.test.cjs",
34
16
  "graphify-command-cutover.test.cjs",
17
+ "graphify-graph-path.test.cjs",
35
18
  "graphify-query.test.cjs",
36
19
  "graphify-visualization.test.cjs",
37
20
  "graphify.test.cjs"
38
21
  ],
39
22
  "issue": "622"
40
23
  },
41
- "intel": {
42
- "files": [
43
- "bug-2351-intel-kilo-layout.test.cjs",
44
- "bug-3290-intel-updater-layout-block.test.cjs",
45
- "intel-command-cutover.test.cjs",
46
- "intel.test.cjs"
47
- ],
48
- "issue": "TBD"
49
- },
50
24
  "milestone": {
51
25
  "files": [
52
- "bug-730-milestone-phase-details-scope.test.cjs",
53
- "bug-978-milestone-complete-force.test.cjs",
54
26
  "milestone-archive.test.cjs",
55
27
  "milestone-helper.test.cjs",
56
28
  "milestone-prefixed-convention.test.cjs",
@@ -59,21 +31,8 @@
59
31
  ],
60
32
  "issue": "TBD"
61
33
  },
62
- "phase": {
63
- "files": [
64
- "fix-1437-phase-list-plans.test.cjs",
65
- "bug-214-phase-researcher-write-truncation-contract.test.cjs",
66
- "phase-dependency-levels.test.cjs",
67
- "phase.test.cjs"
68
- ],
69
- "issue": "597"
70
- },
71
34
  "roadmap": {
72
35
  "files": [
73
- "bug-2661-roadmap-sync-parallel.test.cjs",
74
- "bug-3128-roadmap-plan-count-slug-layout.test.cjs",
75
- "bug-3599-roadmap-get-phase-project-code-prefix.test.cjs",
76
- "enh-2447-roadmap-wave-deps.test.cjs",
77
36
  "roadmap-mode-field.test.cjs",
78
37
  "roadmap-phase-fallback.test.cjs",
79
38
  "roadmap.test.cjs"
@@ -99,33 +58,16 @@
99
58
  },
100
59
  "state": {
101
60
  "files": [
102
- "bug-1695-state-patch-clobbers-phase-name.test.cjs",
103
- "bug-1760-state-prune-noop-template-field.test.cjs",
104
- "bug-1761-state-sync-wrong-progress.test.cjs",
105
- "bug-21-state-md-template-frontmatter.test.cjs",
106
- "bug-2630-state-frontmatter-milestone-switch.test.cjs",
107
- "bug-3127-state-begin-phase-idempotent.test.cjs",
108
- "bug-3242-state-update-progress-trample.test.cjs",
109
- "bug-3286-state-write-routing.test.cjs",
110
- "bug-3454-state-dollar-backreference-growth.test.cjs",
111
- "bug-397-state-preserve-executor-authored.test.cjs",
112
- "bug-905-state-syncstatefrontmatter-preserve-scalars.test.cjs",
113
- "bug-948-state-noop-write-guard.test.cjs",
114
- "state-acquirestatelock-non-eexist.test.cjs",
115
- "state-prune.test.cjs",
116
- "state-rebuild-cli.test.cjs",
117
- "state-rebuild.test.cjs",
118
- "state.test.cjs"
61
+ "state-acquirestatelock-non-eexist.test.cjs",
62
+ "state-prune.test.cjs",
63
+ "state-rebuild-cli.test.cjs",
64
+ "state-rebuild.test.cjs",
65
+ "state.test.cjs"
119
66
  ],
120
67
  "issue": "180"
121
68
  },
122
69
  "verify": {
123
70
  "files": [
124
- "bug-2969-verify-reapply-patches.test.cjs",
125
- "bug-2994-verify-reapply-patches-installed-path.test.cjs",
126
- "bug-3381-verify-work-workstream.test.cjs",
127
- "bug-3657-verify-reapply-patches-pristine-drift.test.cjs",
128
- "bug-967-verify-key-links-strict-paths.test.cjs",
129
71
  "verify-health.test.cjs",
130
72
  "verify-mvp-uat.test.cjs",
131
73
  "verify-npm-publish.test.cjs",
@@ -137,10 +79,6 @@
137
79
  },
138
80
  "install": {
139
81
  "files": [
140
- "bug-410-install-defaults-test-mode-guard.test.cjs",
141
- "enh-1077-install-hook-events-dialect-drive.test.cjs",
142
- "enh-1082-install-plan-capstone.test.cjs",
143
- "enh-776-install-gemini-hook-events.test.cjs",
144
82
  "install-minimal-hooks.test.cjs",
145
83
  "install-nested-layout.test.cjs",
146
84
  "install-path-detection.test.cjs",
@@ -152,14 +90,6 @@
152
90
  ],
153
91
  "issue": "1679"
154
92
  },
155
- "validate": {
156
- "files": [
157
- "bug-3129-validate-commit-git-bypass.test.cjs",
158
- "bug-892-validate-checklist-roadmap-phases.test.cjs",
159
- "validate-context.test.cjs"
160
- ],
161
- "issue": "892"
162
- },
163
93
  "edge-probe": {
164
94
  "files": [
165
95
  "edge-probe-docs-fixtures.test.cjs",
@@ -177,20 +107,6 @@
177
107
  ],
178
108
  "issue": "TBD"
179
109
  },
180
- "external-job": {
181
- "files": [
182
- "external-job-waiting.test.cjs"
183
- ],
184
- "issue": "#1165"
185
- },
186
- "docs": {
187
- "files": [
188
- "docs-parity-live-registry.test.cjs",
189
- "docs-update.test.cjs",
190
- "fix-1464-docs-manifest-validation.test.cjs"
191
- ],
192
- "issue": "1496"
193
- },
194
110
  "host-integration": {
195
111
  "files": [
196
112
  "host-integration.test.cjs",
@@ -24,7 +24,7 @@ const PROFILES = [
24
24
  'Researches domain ecosystem before roadmap creation. Produces files in .planning/research/ consumed during roadmap creation. Spawned by /gsd:new-project or /gsd:new-milestone orchestrators.',
25
25
  color: 'cyan',
26
26
  tools:
27
- 'Read, Write, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*, mcp__perplexity__*',
27
+ 'Read, Write, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__plugin_context7_context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*, mcp__perplexity__*',
28
28
  requiredIncludes: [
29
29
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
30
30
  '@~/.claude/gsd-core/references/research-philosophy.md',
@@ -46,7 +46,7 @@ const PROFILES = [
46
46
  'Researches how to implement a phase before planning. Produces RESEARCH.md consumed by gsd-planner. Spawned by /gsd:plan-phase orchestrator.',
47
47
  color: 'cyan',
48
48
  tools:
49
- 'Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*, mcp__perplexity__*',
49
+ 'Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__plugin_context7_context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*, mcp__perplexity__*',
50
50
  requiredIncludes: [
51
51
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
52
52
  '@~/.claude/gsd-core/references/research-philosophy.md',
@@ -68,7 +68,7 @@ const PROFILES = [
68
68
  description:
69
69
  'Researches a single gray area decision and returns a structured comparison table with rationale. Spawned by discuss-phase advisor mode.',
70
70
  color: 'cyan',
71
- tools: 'Read, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*',
71
+ tools: 'Read, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__plugin_context7_context7__*',
72
72
  requiredIncludes: [
73
73
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
74
74
  ],
@@ -84,7 +84,7 @@ const PROFILES = [
84
84
  'Researches a chosen AI framework\'s official docs to produce implementation-ready guidance — best practices, syntax, core patterns, and pitfalls distilled for the specific use case. Writes the Framework Quick Reference and Implementation Guidance sections of AI-SPEC.md. Spawned by /gsd:ai-integration-phase orchestrator.',
85
85
  color: 'green',
86
86
  tools:
87
- 'Read, Write, Edit, Bash, Grep, Glob, WebFetch, WebSearch, mcp__context7__*',
87
+ 'Read, Write, Edit, Bash, Grep, Glob, WebFetch, WebSearch, mcp__context7__*, mcp__plugin_context7_context7__*',
88
88
  requiredIncludes: [
89
89
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
90
90
  ],
@@ -101,7 +101,7 @@ const PROFILES = [
101
101
  'Researches the business domain and real-world application context of the AI system being built. Surfaces domain expert evaluation criteria, industry-specific failure modes, regulatory context, and what "good" looks like for practitioners in this field — before the eval-planner turns it into measurable rubrics. Spawned by /gsd:ai-integration-phase orchestrator.',
102
102
  color: 'purple',
103
103
  tools:
104
- 'Read, Write, Edit, Bash, Grep, Glob, WebSearch, WebFetch, mcp__context7__*',
104
+ 'Read, Write, Edit, Bash, Grep, Glob, WebSearch, WebFetch, mcp__context7__*, mcp__plugin_context7_context7__*',
105
105
  requiredIncludes: [
106
106
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
107
107
  ],
@@ -117,7 +117,7 @@ const PROFILES = [
117
117
  'Produces UI-SPEC.md design contract for frontend phases. Reads upstream artifacts, detects design system state, asks only unanswered questions. Spawned by /gsd:ui-phase orchestrator.',
118
118
  color: 'purple',
119
119
  tools:
120
- 'Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*',
120
+ 'Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch, WebFetch, mcp__context7__*, mcp__plugin_context7_context7__*, mcp__firecrawl__*, mcp__exa__*, mcp__tavily__*, mcp__ref__*, mcp__jina__*',
121
121
  requiredIncludes: [
122
122
  '@~/.claude/gsd-core/references/research-documentation-lookup.md',
123
123
  ],
@@ -562,9 +562,21 @@ function main() {
562
562
  const MAX_CMDLINE_CHARS = process.env.RUN_TESTS_MAX_CMDLINE_CHARS
563
563
  ? Number(process.env.RUN_TESTS_MAX_CMDLINE_CHARS)
564
564
  : 28000; // headroom below the 32,767 Windows ceiling
565
+ // A full-lane shard (~171 files) fit in ONE chunk at the old cap of 180, so the
566
+ // entire shard's wall-clock ran against a single per-chunk timeout. On the slow
567
+ // Windows runner the install-heavy files in a shard (e.g. install-minimal-hooks
568
+ // .test.cjs alone runs ~250 cases doing dozens of real installs) push that single
569
+ // chunk past the 600s per-chunk backstop — killed mid-run while still making slow
570
+ // progress (verified: no leaked handle / hang; --test-force-exit exits leaks
571
+ // cleanly, so the timeout was pure slowness, NOT the leak the kill message guesses).
572
+ // The per-chunk timeout is sized for a "healthy chunk (~4-5 min)"; keep chunks at
573
+ // roughly a third of a shard so each gets its own fresh 600s budget and a fresh
574
+ // node process (also relieving per-process memory pressure from 170+ files at once).
575
+ // Lowered from 90 to 60 after #1575 — macOS Node 22 shard 2/3 chunk 2 (~80 files
576
+ // including state.test.cjs, perf-*, worktree-cleanup) exceeded 600s with 90.
565
577
  const MAX_FILES_PER_CHUNK = process.env.RUN_TESTS_MAX_FILES_PER_CHUNK
566
578
  ? Number(process.env.RUN_TESTS_MAX_FILES_PER_CHUNK)
567
- : 180;
579
+ : 60;
568
580
 
569
581
  // node:test does not exit until the event loop drains. A unit test that leaks
570
582
  // an open handle (un-terminated Worker, un-killed child_process, ref'd timer)
@@ -630,9 +642,12 @@ function main() {
630
642
  if (timedOut) {
631
643
  console.error(
632
644
  `run-tests: chunk ${i + 1}/${chunks.length} exceeded the per-chunk timeout ` +
633
- `of ${chunkTimeoutMs}ms and was killed — a test in this chunk is likely leaking ` +
645
+ `of ${chunkTimeoutMs}ms and was killed. Two possible causes: (1) a test leaks ` +
634
646
  `an open handle (un-terminated Worker, un-killed child process, or ref'd timer) ` +
635
- `so node --test never exits. Files: ${chunks[i]
647
+ `so node --test never exits — but --test-force-exit already guards that, so if it ` +
648
+ `is enabled suspect (2) the chunk is legitimately too slow for the budget (too ` +
649
+ `many/too-heavy files packed together). Check whether output kept flowing until ` +
650
+ `the kill (slow) vs stopped early (hang) before assuming a leak. Files: ${chunks[i]
636
651
  .map(f => f.split(/[\\/]/).pop())
637
652
  .join(' ')}`,
638
653
  );