@opengsd/gsd-core 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/agents/gsd-advisor-researcher.compact.md +85 -0
- package/agents/gsd-ai-researcher.compact.md +96 -0
- package/agents/gsd-assumptions-analyzer.compact.md +81 -0
- package/agents/gsd-code-fixer.compact.md +458 -0
- package/agents/gsd-code-fixer.md +5 -5
- package/agents/gsd-code-reviewer.compact.md +269 -0
- package/agents/gsd-code-reviewer.md +15 -3
- package/agents/gsd-codebase-mapper.compact.md +760 -0
- package/agents/gsd-debug-session-manager.compact.md +345 -0
- package/agents/gsd-doc-classifier.compact.md +192 -0
- package/agents/gsd-doc-synthesizer.compact.md +200 -0
- package/agents/gsd-doc-verifier.compact.md +143 -0
- package/agents/gsd-doc-writer.compact.md +440 -0
- package/agents/gsd-dom-verifier.compact.md +138 -0
- package/agents/gsd-domain-researcher.compact.md +141 -0
- package/agents/gsd-eval-auditor.compact.md +160 -0
- package/agents/gsd-eval-planner.compact.md +137 -0
- package/agents/gsd-framework-selector.compact.md +82 -0
- package/agents/gsd-integration-checker.compact.md +245 -0
- package/agents/gsd-intel-updater.compact.md +226 -0
- package/agents/gsd-mempalace-curator.compact.md +45 -0
- package/agents/gsd-nyquist-auditor.compact.md +179 -0
- package/agents/gsd-pattern-mapper.compact.md +275 -0
- package/agents/gsd-project-researcher.compact.md +587 -0
- package/agents/gsd-research-synthesizer.compact.md +212 -0
- package/agents/gsd-roadmapper.compact.md +454 -0
- package/agents/gsd-roadmapper.md +13 -0
- package/agents/gsd-security-auditor.compact.md +162 -0
- package/agents/gsd-ui-auditor.compact.md +404 -0
- package/agents/gsd-ui-checker.compact.md +277 -0
- package/agents/gsd-ui-researcher.compact.md +282 -0
- package/agents/gsd-user-profiler.compact.md +108 -0
- package/bin/install.js +206 -68
- package/commands/gsd/cleanup.md +1 -0
- package/commands/gsd/code-review.md +2 -1
- package/commands/gsd/complete-milestone.md +1 -0
- package/commands/gsd/config.md +1 -0
- package/commands/gsd/debug.md +1 -0
- package/commands/gsd/graphify.md +1 -0
- package/commands/gsd/health.md +1 -0
- package/commands/gsd/mempalace-capture.md +1 -0
- package/commands/gsd/mempalace-recall.md +1 -0
- package/commands/gsd/new-milestone.md +1 -0
- package/commands/gsd/new-project.md +1 -0
- package/commands/gsd/next.md +1 -0
- package/commands/gsd/pause-work.md +1 -0
- package/commands/gsd/phase.md +1 -0
- package/commands/gsd/pr-branch.md +1 -0
- package/commands/gsd/resume-work.md +1 -0
- package/commands/gsd/review-backlog.md +1 -0
- package/commands/gsd/settings.md +2 -1
- package/commands/gsd/stats.md +1 -0
- package/commands/gsd/thread.md +1 -0
- package/commands/gsd/workspace.md +1 -0
- package/commands/gsd/workstreams.md +1 -0
- package/gsd-core/bin/check-latest-version.cjs +8 -3
- package/gsd-core/bin/gsd-tools.cjs +338 -125
- package/gsd-core/bin/lib/adr-parser.cjs +1 -1
- package/gsd-core/bin/lib/artifacts.cjs +2 -1
- package/gsd-core/bin/lib/audit.cjs +39 -22
- package/gsd-core/bin/lib/broken-windows.cjs +168 -49
- package/gsd-core/bin/lib/capability-lifecycle.cjs +10 -6
- package/gsd-core/bin/lib/capability-loader.cjs +135 -1
- package/gsd-core/bin/lib/capability-registry.cjs +79 -67
- package/gsd-core/bin/lib/capability-source.cjs +19 -2
- package/gsd-core/bin/lib/capability-validator.cjs +14 -1
- package/gsd-core/bin/lib/check-command-router.cjs +113 -36
- package/gsd-core/bin/lib/code-review-depth.cjs +2 -2
- package/gsd-core/bin/lib/commands.cjs +650 -72
- package/gsd-core/bin/lib/config-loader.cjs +1 -0
- package/gsd-core/bin/lib/config.cjs +153 -38
- package/gsd-core/bin/lib/coverage.cjs +1 -1
- package/gsd-core/bin/lib/decisions.cjs +137 -34
- package/gsd-core/bin/lib/external-descriptor-trust.cjs +29 -14
- package/gsd-core/bin/lib/gsd2-import.cjs +1 -2
- package/gsd-core/bin/lib/health-diagnostic-rules/state-consistency.cjs +12 -1
- package/gsd-core/bin/lib/health-diagnostic-rules/worktree-health.cjs +1 -1
- package/gsd-core/bin/lib/init.cjs +409 -47
- package/gsd-core/bin/lib/install-engine.cjs +16 -3
- package/gsd-core/bin/lib/install-profiles.cjs +14 -0
- package/gsd-core/bin/lib/installer-migrations.cjs +33 -4
- package/gsd-core/bin/lib/loop-resolver.cjs +50 -31
- package/gsd-core/bin/lib/mcp-catalog.cjs +2 -2
- package/gsd-core/bin/lib/milestone.cjs +19 -8
- package/gsd-core/bin/lib/model-resolver.cjs +101 -10
- package/gsd-core/bin/lib/phase-command-router.cjs +7 -1
- package/gsd-core/bin/lib/phase-id.cjs +161 -22
- package/gsd-core/bin/lib/phase-lifecycle.cjs +61 -0
- package/gsd-core/bin/lib/phase.cjs +167 -63
- package/gsd-core/bin/lib/planning-inspect.cjs +34 -18
- package/gsd-core/bin/lib/planning-snapshot.cjs +61 -12
- package/gsd-core/bin/lib/planning-workspace.cjs +50 -1
- package/gsd-core/bin/lib/pristine-baseline.cjs +182 -0
- package/gsd-core/bin/lib/prohibition-enforcement.cjs +91 -4
- package/gsd-core/bin/lib/quick-batch.cjs +1 -1
- package/gsd-core/bin/lib/refactor-trigger-command-router.cjs +61 -2
- package/gsd-core/bin/lib/research-store.cjs +11 -12
- package/gsd-core/bin/lib/review-lane-invocation.cjs +23 -0
- package/gsd-core/bin/lib/reviewer-step-dispatch.cjs +337 -0
- package/gsd-core/bin/lib/roadmap-parser.cjs +56 -15
- package/gsd-core/bin/lib/roadmap.cjs +108 -14
- package/gsd-core/bin/lib/runtime-artifact-conversion.cjs +27 -10
- package/gsd-core/bin/lib/runtime-artifact-install-plan.cjs +12 -3
- package/gsd-core/bin/lib/runtime-artifact-layout.cjs +13 -5
- package/gsd-core/bin/lib/runtime-hooks-surface.cjs +193 -4
- package/gsd-core/bin/lib/security.cjs +126 -7
- package/gsd-core/bin/lib/state-document.cjs +130 -28
- package/gsd-core/bin/lib/state-md-schema.cjs +21 -14
- package/gsd-core/bin/lib/state-transition.cjs +142 -28
- package/gsd-core/bin/lib/state.cjs +223 -27
- package/gsd-core/bin/lib/surface.cjs +60 -2
- package/gsd-core/bin/lib/task-command-router.cjs +12 -6
- package/gsd-core/bin/lib/uat.cjs +1 -1
- package/gsd-core/bin/lib/update-context.cjs +30 -24
- package/gsd-core/bin/lib/vendor/js-yaml.cjs +11 -3
- package/gsd-core/bin/lib/verification.cjs +47 -15
- package/gsd-core/bin/lib/verify-command-grounding.cjs +1 -1
- package/gsd-core/bin/lib/verify.cjs +188 -23
- package/gsd-core/bin/lib/workstream-inventory.cjs +1 -0
- package/gsd-core/bin/lib/worktree-safety.cjs +13 -7
- package/gsd-core/bin/shared/config-defaults.manifest.json +1 -0
- package/gsd-core/bin/shared/config-schema.manifest.json +5 -0
- package/gsd-core/bin/verify-reapply-patches.cjs +439 -80
- package/gsd-core/references/compact-content-gate.md +66 -0
- package/gsd-core/references/loop-hook-dispatch.md +18 -0
- package/gsd-core/references/model-profiles.md +12 -3
- package/gsd-core/references/planning-config.md +3 -0
- package/gsd-core/references/tdd.md +5 -2
- package/gsd-core/references/thinking-models-planning.md +18 -2
- package/gsd-core/references/verification-patterns.md +17 -4
- package/gsd-core/references/worktree-path-safety.md +112 -2
- package/gsd-core/templates/README.md +7 -1
- package/gsd-core/templates/state.md +6 -3
- package/gsd-core/templates/summary.compact.md +212 -0
- package/gsd-core/templates/user-setup.compact.md +199 -0
- package/gsd-core/templates/user-setup.md +0 -9
- package/gsd-core/workflows/add-todo.md +3 -2
- package/gsd-core/workflows/autonomous.md +13 -10
- package/gsd-core/workflows/check-todos.md +4 -2
- package/gsd-core/workflows/cleanup.md +3 -1
- package/gsd-core/workflows/code-review/steps/structural-pre-pass.md +7 -0
- package/gsd-core/workflows/code-review-fix.md +3 -3
- package/gsd-core/workflows/code-review.md +156 -30
- package/gsd-core/workflows/complete-milestone/detail/elaboration.md +274 -0
- package/gsd-core/workflows/complete-milestone.md +39 -262
- package/gsd-core/workflows/docs-update/detail/elaboration.md +179 -0
- package/gsd-core/workflows/docs-update.md +14 -155
- package/gsd-core/workflows/execute-phase/detail/elaboration.md +124 -0
- package/gsd-core/workflows/execute-phase/steps/codebase-drift-gate.md +18 -3
- package/gsd-core/workflows/execute-phase/steps/completion-reconciliation.md +56 -0
- package/gsd-core/workflows/execute-phase/steps/executor-isolation-dispatch.md +7 -2
- package/gsd-core/workflows/execute-phase/steps/executor-progress-policy.md +43 -0
- package/gsd-core/workflows/execute-phase/steps/sequential-root-pin.md +35 -0
- package/gsd-core/workflows/execute-phase.md +53 -152
- package/gsd-core/workflows/execute-plan.md +20 -7
- package/gsd-core/workflows/help/modes/full.compact.md +398 -0
- package/gsd-core/workflows/help.md +1 -1
- package/gsd-core/workflows/map-codebase.md +50 -3
- package/gsd-core/workflows/new-milestone.md +54 -12
- package/gsd-core/workflows/new-project/detail/elaboration.md +216 -0
- package/gsd-core/workflows/new-project.md +32 -202
- package/gsd-core/workflows/plan-phase/detail/elaboration.md +209 -0
- package/gsd-core/workflows/plan-phase.md +22 -181
- package/gsd-core/workflows/pr-branch.md +19 -7
- package/gsd-core/workflows/quick.md +8 -1
- package/gsd-core/workflows/reapply-patches.md +77 -3
- package/gsd-core/workflows/settings.md +18 -5
- package/gsd-core/workflows/update.md +7 -5
- package/gsd-core/workflows/verify-work/detail/elaboration.md +230 -0
- package/gsd-core/workflows/verify-work.md +20 -180
- package/hooks/dist/gsd-agent-isolation-guard.js +42 -16
- package/hooks/dist/gsd-context-monitor.js +88 -15
- package/hooks/dist/gsd-cursor-subagent-start.js +34 -14
- package/hooks/dist/gsd-secret-read-guard.js +44 -18
- package/hooks/dist/gsd-statusline.js +11 -7
- package/hooks/dist/gsd-validate-commit.sh +34 -4
- package/hooks/dist/gsd-worktree-path-guard.js +25 -14
- package/hooks/dist/gsd-write-guard.js +46 -1
- package/hooks/dist/lib/dispatch-identity.js +187 -0
- package/hooks/dist/lib/filename-classification.js +64 -0
- package/hooks/dist/lib/isolation-deny-reason.js +53 -1
- package/hooks/dist/lib/isolation-sentinel.js +58 -19
- package/hooks/gsd-agent-isolation-guard.js +42 -16
- package/hooks/gsd-context-monitor.js +88 -15
- package/hooks/gsd-cursor-subagent-start.js +34 -14
- package/hooks/gsd-secret-read-guard.js +44 -18
- package/hooks/gsd-statusline.js +11 -7
- package/hooks/gsd-validate-commit.sh +34 -4
- package/hooks/gsd-worktree-path-guard.js +25 -14
- package/hooks/gsd-write-guard.js +46 -1
- package/hooks/lib/dispatch-identity.js +187 -0
- package/hooks/lib/filename-classification.js +64 -0
- package/hooks/lib/isolation-deny-reason.js +53 -1
- package/hooks/lib/isolation-sentinel.js +58 -19
- package/package.json +10 -6
- package/scripts/benchmark-compact-content-variants.cjs +298 -0
- package/scripts/benchmark-compact-content.cjs +368 -0
- package/scripts/check-contract-drift.cjs +4 -1
- package/scripts/check-env.cjs +36 -8
- package/scripts/check-glossary-refs.cjs +25 -21
- package/scripts/ci-next-health.cjs +271 -0
- package/scripts/ci-prepare-test-scope.cjs +7 -7
- package/scripts/ci-test-scope.cjs +126 -20
- package/scripts/ci-timeout-report.cjs +1 -1
- package/scripts/diff-touches-shipped-paths.cjs +1 -1
- package/scripts/docs-guard-registry.cjs +7 -2
- package/scripts/gen-adr-index.cjs +8 -2
- package/scripts/gen-inventory-manifest.cjs +12 -0
- package/scripts/gen-platform-conformance-tier.cjs +557 -0
- package/scripts/lib/drift-scan.cjs +1 -1
- package/scripts/lib/macos-conformance-tier.generated.cjs +210 -0
- package/scripts/lib/npm-version-check-diagnosis.cjs +59 -0
- package/scripts/lib/platform-conformance-tier.generated.cjs +276 -0
- package/scripts/lib/suite-detection.cjs +32 -0
- package/scripts/lint-allowed-tools-parity.cjs +221 -0
- package/scripts/lint-docs-guard-registration.exempt-baseline.cjs +19 -2
- package/scripts/lint-phase-id-drift.cjs +338 -13
- package/scripts/lint-response-language-coverage.cjs +9 -3
- package/scripts/lint-source-test-name-collision.cjs +1 -1
- package/scripts/lint-test-file-count.allowlist.json +1 -0
- package/scripts/lint-vendored-deps.cjs +128 -17
- package/scripts/lint-workflow-shellcheck-baseline.json +85 -0
- package/scripts/prompt-injection-scan.sh +14 -0
- package/scripts/workflow-size.cjs +139 -0
- package/skills/gsd-cleanup/SKILL.md +1 -0
- package/skills/gsd-code-review/SKILL.md +2 -1
- package/skills/gsd-complete-milestone/SKILL.md +1 -0
- package/skills/gsd-config/SKILL.md +1 -0
- package/skills/gsd-debug/SKILL.md +1 -0
- package/skills/gsd-graphify/SKILL.md +1 -0
- package/skills/gsd-health/SKILL.md +1 -0
- package/skills/gsd-mempalace-capture/SKILL.md +1 -0
- package/skills/gsd-mempalace-recall/SKILL.md +1 -0
- package/skills/gsd-new-milestone/SKILL.md +1 -0
- package/skills/gsd-new-project/SKILL.md +1 -0
- package/skills/gsd-next/SKILL.md +1 -0
- package/skills/gsd-pause-work/SKILL.md +1 -0
- package/skills/gsd-phase/SKILL.md +1 -0
- package/skills/gsd-pr-branch/SKILL.md +1 -0
- package/skills/gsd-resume-work/SKILL.md +1 -0
- package/skills/gsd-review-backlog/SKILL.md +1 -0
- package/skills/gsd-settings/SKILL.md +2 -1
- package/skills/gsd-stats/SKILL.md +1 -0
- package/skills/gsd-thread/SKILL.md +1 -0
- package/skills/gsd-workspace/SKILL.md +1 -0
- package/skills/gsd-workstreams/SKILL.md +1 -0
- package/vscode/package.json +1 -1
- package/gsd-core/templates/claude-md.md +0 -145
- package/gsd-core/templates/codebase/concerns.md +0 -310
- package/gsd-core/templates/codebase/conventions.md +0 -307
- package/gsd-core/templates/codebase/integrations.md +0 -280
- package/gsd-core/templates/codebase/structure.md +0 -285
- package/gsd-core/templates/codebase/testing.md +0 -480
- package/gsd-core/templates/debug-subagent-prompt.md +0 -91
- package/gsd-core/templates/discovery.md +0 -146
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
// GENERATED FILE — do not hand-edit. Run `node scripts/gen-platform-conformance-tier.cjs --target macos --write` to regenerate.
|
|
2
|
+
// macOS-specific conformance tier (#4593), separate from and narrower than the general/
|
|
3
|
+
// Windows-oriented tier in platform-conformance-tier.generated.cjs — see
|
|
4
|
+
// docs/adr/4593-macos-conformance-tier-architecture.md for the full rationale.
|
|
5
|
+
'use strict';
|
|
6
|
+
|
|
7
|
+
module.exports = {
|
|
8
|
+
MACOS_CONFORMANCE_TIER_FILES: [
|
|
9
|
+
"tests/adr-612-bracket-phase-counting.test.cjs",
|
|
10
|
+
"tests/adr-index-gate.test.cjs",
|
|
11
|
+
"tests/adr-parser.property.test.cjs",
|
|
12
|
+
"tests/adr-parser.unit.test.cjs",
|
|
13
|
+
"tests/agent-classification-parity.test.cjs",
|
|
14
|
+
"tests/agent-install-check.test.cjs",
|
|
15
|
+
"tests/agent-skills.test.cjs",
|
|
16
|
+
"tests/api-coverage-gate-e2e.test.cjs",
|
|
17
|
+
"tests/api-coverage.test.cjs",
|
|
18
|
+
"tests/ask-user-questions-fallback.test.cjs",
|
|
19
|
+
"tests/audit-command-cutover.test.cjs",
|
|
20
|
+
"tests/broken-windows.test.cjs",
|
|
21
|
+
"tests/capability-cli.test.cjs",
|
|
22
|
+
"tests/capability-command-dispatch.test.cjs",
|
|
23
|
+
"tests/capability-consent.test.cjs",
|
|
24
|
+
"tests/capability-ledger.test.cjs",
|
|
25
|
+
"tests/capability-lifecycle.test.cjs",
|
|
26
|
+
"tests/capability-loader.test.cjs",
|
|
27
|
+
"tests/capability-lock-mkdir-failure-3987.test.cjs",
|
|
28
|
+
"tests/capability-registry.test.cjs",
|
|
29
|
+
"tests/capability-source.test.cjs",
|
|
30
|
+
"tests/capability-state.test.cjs",
|
|
31
|
+
"tests/capability-trust.test.cjs",
|
|
32
|
+
"tests/changeset-parse.test.cjs",
|
|
33
|
+
"tests/check-contract-drift.test.cjs",
|
|
34
|
+
"tests/check-predicate.test.cjs",
|
|
35
|
+
"tests/check-ui-safety-gate.test.cjs",
|
|
36
|
+
"tests/check-update-config-dir.test.cjs",
|
|
37
|
+
"tests/chunked-planning-parallel.test.cjs",
|
|
38
|
+
"tests/ci-docs-guard-registry.test.cjs",
|
|
39
|
+
"tests/ci-test-scope.test.cjs",
|
|
40
|
+
"tests/cline-install.test.cjs",
|
|
41
|
+
"tests/code-review-pipeline-regression.test.cjs",
|
|
42
|
+
"tests/codex-config-agents.test.cjs",
|
|
43
|
+
"tests/codex-config-hooks.test.cjs",
|
|
44
|
+
"tests/codex-config-install.test.cjs",
|
|
45
|
+
"tests/codex-config.test.cjs",
|
|
46
|
+
"tests/commands.test.cjs",
|
|
47
|
+
"tests/commit-docs-bypass.test.cjs",
|
|
48
|
+
"tests/commit-files-deletion.test.cjs",
|
|
49
|
+
"tests/commit-files-pathspec.test.cjs",
|
|
50
|
+
"tests/commonjs-marker.test.cjs",
|
|
51
|
+
"tests/completion-ratio-scope-withholding.test.cjs",
|
|
52
|
+
"tests/config-loader.test.cjs",
|
|
53
|
+
"tests/config-schema.property.test.cjs",
|
|
54
|
+
"tests/config.test.cjs",
|
|
55
|
+
"tests/contributor-standards.test.cjs",
|
|
56
|
+
"tests/core-utils.test.cjs",
|
|
57
|
+
"tests/cursor-subagent-isolation.test.cjs",
|
|
58
|
+
"tests/debugger-semantic-recall.test.cjs",
|
|
59
|
+
"tests/default-flip-documentation-lint.test.cjs",
|
|
60
|
+
"tests/discuss-phase-power.test.cjs",
|
|
61
|
+
"tests/docs-parity-live-registry.test.cjs",
|
|
62
|
+
"tests/effort-surface-axis.test.cjs",
|
|
63
|
+
"tests/effort-sync-installed-runtime.test.cjs",
|
|
64
|
+
"tests/emitted-attribution.test.cjs",
|
|
65
|
+
"tests/ensure-runtime-build.test.cjs",
|
|
66
|
+
"tests/execute-phase-decimal-arithmetic.test.cjs",
|
|
67
|
+
"tests/executed-plan.test.cjs",
|
|
68
|
+
"tests/executor-mvp-tdd-section.test.cjs",
|
|
69
|
+
"tests/external-job.test.cjs",
|
|
70
|
+
"tests/failing-direction.test.cjs",
|
|
71
|
+
"tests/fallow-runner.test.cjs",
|
|
72
|
+
"tests/feat-2483-review-claude-mds-guard.test.cjs",
|
|
73
|
+
"tests/features-index-gate.test.cjs",
|
|
74
|
+
"tests/frontmatter.unit.test.cjs",
|
|
75
|
+
"tests/gap-checker.property.test.cjs",
|
|
76
|
+
"tests/gen-context-index.test.cjs",
|
|
77
|
+
"tests/gen-section-manifest.test.cjs",
|
|
78
|
+
"tests/git-base-branch.test.cjs",
|
|
79
|
+
"tests/graphify-query.test.cjs",
|
|
80
|
+
"tests/graphify-visualization.test.cjs",
|
|
81
|
+
"tests/gsd-secret-read-guard.test.cjs",
|
|
82
|
+
"tests/gsd-settings-advanced.test.cjs",
|
|
83
|
+
"tests/gsd-statusline.test.cjs",
|
|
84
|
+
"tests/gsd-tools-path-refs.test.cjs",
|
|
85
|
+
"tests/gsd-validate-commit-crash-policy.test.cjs",
|
|
86
|
+
"tests/gsd-write-guard.test.cjs",
|
|
87
|
+
"tests/health-diagnostic-rules/worktree-health.test.cjs",
|
|
88
|
+
"tests/health-diagnostic.test.cjs",
|
|
89
|
+
"tests/helpers-cleanup.test.cjs",
|
|
90
|
+
"tests/helpers-process-isolation.test.cjs",
|
|
91
|
+
"tests/hooks-crash-policy.test.cjs",
|
|
92
|
+
"tests/hooks-opt-in.test.cjs",
|
|
93
|
+
"tests/host-integration.test.cjs",
|
|
94
|
+
"tests/init-manager.test.cjs",
|
|
95
|
+
"tests/init.test.cjs",
|
|
96
|
+
"tests/install-minimal-hooks.test.cjs",
|
|
97
|
+
"tests/install-path-detection.test.cjs",
|
|
98
|
+
"tests/install-regressions.test.cjs",
|
|
99
|
+
"tests/install-runtime-artifacts.test.cjs",
|
|
100
|
+
"tests/install-write-confinement.test.cjs",
|
|
101
|
+
"tests/install.test.cjs",
|
|
102
|
+
"tests/installer-migration-antigravity-retire-confighome-artifacts.test.cjs",
|
|
103
|
+
"tests/installer-migration-config-root-marker.test.cjs",
|
|
104
|
+
"tests/installer-migration-pi-retire-hooks-dir.test.cjs",
|
|
105
|
+
"tests/installer-migration-prune-stale-pristine.test.cjs",
|
|
106
|
+
"tests/installer-migration-rename-gsd-core.test.cjs",
|
|
107
|
+
"tests/installer-migrations.test.cjs",
|
|
108
|
+
"tests/intel.test.cjs",
|
|
109
|
+
"tests/inventory-nested-families.test.cjs",
|
|
110
|
+
"tests/isolation-sentinel.test.cjs",
|
|
111
|
+
"tests/issue-version-gate.test.cjs",
|
|
112
|
+
"tests/kimi-upgrades.test.cjs",
|
|
113
|
+
"tests/lint-docs-command-form.test.cjs",
|
|
114
|
+
"tests/lint-workflow-shellcheck-fetch.test.cjs",
|
|
115
|
+
"tests/list-seeds.test.cjs",
|
|
116
|
+
"tests/markdown-sectionizer.test.cjs",
|
|
117
|
+
"tests/mcp-catalog.test.cjs",
|
|
118
|
+
"tests/milestone-archive.test.cjs",
|
|
119
|
+
"tests/milestone-window-single-owner.test.cjs",
|
|
120
|
+
"tests/model-catalog.unit.test.cjs",
|
|
121
|
+
"tests/model-resolver.test.cjs",
|
|
122
|
+
"tests/no-exact-case-env-access.rule.test.cjs",
|
|
123
|
+
"tests/no-pending-3212-markers.test.cjs",
|
|
124
|
+
"tests/no-phantom-issue-refs.test.cjs",
|
|
125
|
+
"tests/no-posix-mode-bit-assert.rule.test.cjs",
|
|
126
|
+
"tests/no-private-binary-resolution.rule.test.cjs",
|
|
127
|
+
"tests/no-unguarded-nonportable-exec.rule.test.cjs",
|
|
128
|
+
"tests/observability/event.test.cjs",
|
|
129
|
+
"tests/onboard-command.test.cjs",
|
|
130
|
+
"tests/opencode-plugin-adapter.test.cjs",
|
|
131
|
+
"tests/pause-work-context-detection.test.cjs",
|
|
132
|
+
"tests/pause-work-improvements.test.cjs",
|
|
133
|
+
"tests/perf-317-context-monitor-fs.test.cjs",
|
|
134
|
+
"tests/phase-completion-single-owner.test.cjs",
|
|
135
|
+
"tests/phase-estimation.test.cjs",
|
|
136
|
+
"tests/phase-id-drift-guard.test.cjs",
|
|
137
|
+
"tests/phase-id.test.cjs",
|
|
138
|
+
"tests/phase-locator.test.cjs",
|
|
139
|
+
"tests/phase.test.cjs",
|
|
140
|
+
"tests/plan-count-single-owner.test.cjs",
|
|
141
|
+
"tests/plan-phase-stall-detection.test.cjs",
|
|
142
|
+
"tests/plan-review-convergence.test.cjs",
|
|
143
|
+
"tests/planning-inspect.test.cjs",
|
|
144
|
+
"tests/planning-inspect.unit.test.cjs",
|
|
145
|
+
"tests/planning-lock-mkdir-failure-1884.test.cjs",
|
|
146
|
+
"tests/planning-snapshot.test.cjs",
|
|
147
|
+
"tests/planning-workspace.test.cjs",
|
|
148
|
+
"tests/platform-conformance-tier.test.cjs",
|
|
149
|
+
"tests/plugin-manifest.test.cjs",
|
|
150
|
+
"tests/policy-shell-pinning.test.cjs",
|
|
151
|
+
"tests/portability-rule-disable-ban.test.cjs",
|
|
152
|
+
"tests/precommit-alias-drift-hook.test.cjs",
|
|
153
|
+
"tests/prepush-enterprise-email-hook.test.cjs",
|
|
154
|
+
"tests/process-seam.test.cjs",
|
|
155
|
+
"tests/profile-output.test.cjs",
|
|
156
|
+
"tests/profile-pipeline.test.cjs",
|
|
157
|
+
"tests/quick-batch.test.cjs",
|
|
158
|
+
"tests/quick-branching.test.cjs",
|
|
159
|
+
"tests/quick-research.test.cjs",
|
|
160
|
+
"tests/reapply-verify-hunks.test.cjs",
|
|
161
|
+
"tests/refactor-1390-t3-characterization.test.cjs",
|
|
162
|
+
"tests/require-issue-link-policy.test.cjs",
|
|
163
|
+
"tests/response-language-coverage.test.cjs",
|
|
164
|
+
"tests/retired-artifact-cleanup.test.cjs",
|
|
165
|
+
"tests/review-build-prompt-optional-sections.test.cjs",
|
|
166
|
+
"tests/review-lane-runner.test.cjs",
|
|
167
|
+
"tests/review-lane-windows-spawn-resolution.test.cjs",
|
|
168
|
+
"tests/review-parallel-lanes.test.cjs",
|
|
169
|
+
"tests/review-plan-coverage-manifest.test.cjs",
|
|
170
|
+
"tests/review-reviewer-selection.test.cjs",
|
|
171
|
+
"tests/reviewer-manifest-body.test.cjs",
|
|
172
|
+
"tests/reviewer-step-dispatch.test.cjs",
|
|
173
|
+
"tests/roadmap-mode-field.test.cjs",
|
|
174
|
+
"tests/roadmap-parser.test.cjs",
|
|
175
|
+
"tests/roadmap-phase-fallback.test.cjs",
|
|
176
|
+
"tests/roadmap.test.cjs",
|
|
177
|
+
"tests/runtime-artifact-layout.test.cjs",
|
|
178
|
+
"tests/runtime-identity.test.cjs",
|
|
179
|
+
"tests/runtime-launcher-parity.test.cjs",
|
|
180
|
+
"tests/security.test.cjs",
|
|
181
|
+
"tests/settings-jsonc.test.cjs",
|
|
182
|
+
"tests/shared-hooks-dir-resolution.test.cjs",
|
|
183
|
+
"tests/shell-command-projection-dispatch.test.cjs",
|
|
184
|
+
"tests/spawn-liveness-banner.test.cjs",
|
|
185
|
+
"tests/state-document.test.cjs",
|
|
186
|
+
"tests/state-transition.test.cjs",
|
|
187
|
+
"tests/state.test.cjs",
|
|
188
|
+
"tests/todos-workstream-scope.test.cjs",
|
|
189
|
+
"tests/tracer-bullet.test.cjs",
|
|
190
|
+
"tests/uat.test.cjs",
|
|
191
|
+
"tests/ui-safety-gate.test.cjs",
|
|
192
|
+
"tests/ui-spec-inventory-provenance.test.cjs",
|
|
193
|
+
"tests/unreachable-guard-drift.test.cjs",
|
|
194
|
+
"tests/unreachable-shell-guard.test.cjs",
|
|
195
|
+
"tests/unusable-input.test.cjs",
|
|
196
|
+
"tests/update-custom-backup.test.cjs",
|
|
197
|
+
"tests/user-artifact-staging.test.cjs",
|
|
198
|
+
"tests/verification-overrides.test.cjs",
|
|
199
|
+
"tests/verification-status.test.cjs",
|
|
200
|
+
"tests/verify-archive-dirs-live-path.test.cjs",
|
|
201
|
+
"tests/verify-command-grounding.test.cjs",
|
|
202
|
+
"tests/verify.test.cjs",
|
|
203
|
+
"tests/workflow-fragments.test.cjs",
|
|
204
|
+
"tests/workflow-shell-pinning.test.cjs",
|
|
205
|
+
"tests/workstream-inventory.test.cjs",
|
|
206
|
+
"tests/workstream.test.cjs",
|
|
207
|
+
"tests/worktree-safety.test.cjs",
|
|
208
|
+
"tests/worktree.test.cjs",
|
|
209
|
+
],
|
|
210
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* #4460: distinguishes WHY scripts/check-env.cjs's npm-version check's
|
|
5
|
+
* spawnSync(npmCmd, ['--version'], ...) produced no usable output, instead
|
|
6
|
+
* of collapsing every case into "npm binary not found on PATH" -- a
|
|
7
|
+
* message that used to fire identically for a genuinely-missing binary AND
|
|
8
|
+
* for a spawnSync TIMEOUT under CI load (exitCode stays non-zero, stdout
|
|
9
|
+
* stays empty, either way). Root-caused live: an unrelated PR's Windows CI
|
|
10
|
+
* shard failed this check twice in a row while running ~51 concurrent test
|
|
11
|
+
* files; npm.cmd's own cold-start plausibly exceeded the check's original
|
|
12
|
+
* 10s window under that contention, and the misleading message made a real
|
|
13
|
+
* timeout indistinguishable from npm actually being absent.
|
|
14
|
+
*
|
|
15
|
+
* Expects `result.timedOut` to already be computed the same way this
|
|
16
|
+
* repo's canonical OS-shell-projection seam (execNpm / isSpawnTimeout,
|
|
17
|
+
* src/shell-command-projection.cts) computes it: `error.code ===
|
|
18
|
+
* 'ETIMEDOUT'`, which Node's spawnSync guarantees when its own `timeout`
|
|
19
|
+
* option fires. NOT imported directly here -- check-env.cjs deliberately
|
|
20
|
+
* cannot depend on that seam's compiled output (gsd-core/bin/lib/*.cjs), a
|
|
21
|
+
* tsc build artifact that does not exist yet when check-env.cjs runs as its
|
|
22
|
+
* own standalone pre-`npm ci` CI step (confirmed live: an earlier version
|
|
23
|
+
* of this fix routed through execNpm directly and crashed every real CI
|
|
24
|
+
* job with MODULE_NOT_FOUND) -- so the same ETIMEDOUT check is computed
|
|
25
|
+
* inline in check-env.cjs instead. Checking `result.signal === 'SIGTERM'`
|
|
26
|
+
* directly (what an earlier version of this fix did) is platform-fragile
|
|
27
|
+
* per that seam's own documented reasoning, with a specifically-called-out
|
|
28
|
+
* risk of a false NEGATIVE on Windows -- the exact platform this failure
|
|
29
|
+
* was discovered on.
|
|
30
|
+
*
|
|
31
|
+
* Kept out of scripts/check-env.cjs itself (which runs its CLI unconditionally
|
|
32
|
+
* on require, with no `require.main === module` guard) so this pure logic
|
|
33
|
+
* can be required directly by tests without triggering a real environment
|
|
34
|
+
* check.
|
|
35
|
+
*
|
|
36
|
+
* @param {{exitCode: number, stdout: string, signal: string|null, error: (Error & {code?: string})|null, timedOut: boolean}} result
|
|
37
|
+
* @returns {string}
|
|
38
|
+
*/
|
|
39
|
+
function describeNpmVersionCheckFailure(result) {
|
|
40
|
+
if (result.error && result.error.code === 'ENOENT') {
|
|
41
|
+
return 'npm binary not found on PATH';
|
|
42
|
+
}
|
|
43
|
+
if (result.timedOut) {
|
|
44
|
+
return `npm --version timed out under CI load -- not a missing binary`;
|
|
45
|
+
}
|
|
46
|
+
if (result.exitCode !== 0) {
|
|
47
|
+
return `npm --version exited ${result.exitCode} with no usable output`;
|
|
48
|
+
}
|
|
49
|
+
if (result.exitCode === 0) {
|
|
50
|
+
// npm ran and exited cleanly but printed nothing -- distinct from every
|
|
51
|
+
// case above (which all involve a failed/absent spawn), so it gets its
|
|
52
|
+
// own message rather than falling through to "not found on PATH", which
|
|
53
|
+
// would misdescribe a real npm binary that simply produced no output.
|
|
54
|
+
return 'npm --version exited 0 but produced no output';
|
|
55
|
+
}
|
|
56
|
+
return 'npm binary not found on PATH';
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
module.exports = { describeNpmVersionCheckFailure };
|
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
// GENERATED FILE — do not hand-edit. Run `node scripts/gen-platform-conformance-tier.cjs --write` to regenerate.
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
module.exports = {
|
|
5
|
+
CONFORMANCE_TIER_FILES: [
|
|
6
|
+
"tests/adr-index-gate.test.cjs",
|
|
7
|
+
"tests/adr857-core-without-capabilities.test.cjs",
|
|
8
|
+
"tests/agent-install-check.test.cjs",
|
|
9
|
+
"tests/agent-install-validation.test.cjs",
|
|
10
|
+
"tests/agent-skills.test.cjs",
|
|
11
|
+
"tests/antigravity-upgrades.test.cjs",
|
|
12
|
+
"tests/api-coverage-gate-e2e.test.cjs",
|
|
13
|
+
"tests/api-coverage.test.cjs",
|
|
14
|
+
"tests/assumption-delta-checkpoint-e2e.test.cjs",
|
|
15
|
+
"tests/assumption-delta.test.cjs",
|
|
16
|
+
"tests/audit-command-cutover.test.cjs",
|
|
17
|
+
"tests/augment-upgrades.test.cjs",
|
|
18
|
+
"tests/broken-windows.test.cjs",
|
|
19
|
+
"tests/capability-cli.test.cjs",
|
|
20
|
+
"tests/capability-command-dispatch.test.cjs",
|
|
21
|
+
"tests/capability-consent.test.cjs",
|
|
22
|
+
"tests/capability-ledger.test.cjs",
|
|
23
|
+
"tests/capability-lifecycle.test.cjs",
|
|
24
|
+
"tests/capability-loader.test.cjs",
|
|
25
|
+
"tests/capability-lock-mkdir-failure-3987.test.cjs",
|
|
26
|
+
"tests/capability-probe-fallback.test.cjs",
|
|
27
|
+
"tests/capability-source.test.cjs",
|
|
28
|
+
"tests/capability-state.test.cjs",
|
|
29
|
+
"tests/changeset-new.test.cjs",
|
|
30
|
+
"tests/check-env.test.cjs",
|
|
31
|
+
"tests/check-gap-analysis-plan-post-e2e.test.cjs",
|
|
32
|
+
"tests/check-glossary-refs.test.cjs",
|
|
33
|
+
"tests/check-predicate.test.cjs",
|
|
34
|
+
"tests/check-tdd-review-checkpoint-e2e.test.cjs",
|
|
35
|
+
"tests/check-ui-safety-gate.test.cjs",
|
|
36
|
+
"tests/check-update-config-dir.test.cjs",
|
|
37
|
+
"tests/chunked-planning-parallel.test.cjs",
|
|
38
|
+
"tests/ci-docs-guard-registry.test.cjs",
|
|
39
|
+
"tests/ci-rebase-check.test.cjs",
|
|
40
|
+
"tests/ci-test-scope.test.cjs",
|
|
41
|
+
"tests/cjs-command-router-adapter.test.cjs",
|
|
42
|
+
"tests/claude-md.test.cjs",
|
|
43
|
+
"tests/cline-install.test.cjs",
|
|
44
|
+
"tests/close-phase-todos-padded-resolves.test.cjs",
|
|
45
|
+
"tests/code-review-pipeline-regression.test.cjs",
|
|
46
|
+
"tests/code-review-tier3-files-override-scoping.test.cjs",
|
|
47
|
+
"tests/code-review.test.cjs",
|
|
48
|
+
"tests/codex-config-agents.test.cjs",
|
|
49
|
+
"tests/codex-config-hooks.test.cjs",
|
|
50
|
+
"tests/codex-config-install.test.cjs",
|
|
51
|
+
"tests/codex-config.test.cjs",
|
|
52
|
+
"tests/codex-inherit-smoke.test.cjs",
|
|
53
|
+
"tests/command-routing-hub.test.cjs",
|
|
54
|
+
"tests/commands.test.cjs",
|
|
55
|
+
"tests/commit-files-deletion.test.cjs",
|
|
56
|
+
"tests/commit-files-pathspec.test.cjs",
|
|
57
|
+
"tests/commonjs-marker.test.cjs",
|
|
58
|
+
"tests/compact-content-4139.test.cjs",
|
|
59
|
+
"tests/completion-ratio-scope-withholding.test.cjs",
|
|
60
|
+
"tests/config-defaults-runtime-exclusion.test.cjs",
|
|
61
|
+
"tests/config-get-default.test.cjs",
|
|
62
|
+
"tests/config-loader.test.cjs",
|
|
63
|
+
"tests/config-schema.property.test.cjs",
|
|
64
|
+
"tests/config.test.cjs",
|
|
65
|
+
"tests/copilot-install.test.cjs",
|
|
66
|
+
"tests/copilot-upgrades.test.cjs",
|
|
67
|
+
"tests/core-utils.test.cjs",
|
|
68
|
+
"tests/cursor-hook-workspace-roots.test.cjs",
|
|
69
|
+
"tests/cursor-hooks.test.cjs",
|
|
70
|
+
"tests/cursor-subagent-isolation.test.cjs",
|
|
71
|
+
"tests/dispatch-identity.test.cjs",
|
|
72
|
+
"tests/dispatcher.test.cjs",
|
|
73
|
+
"tests/drift-detection.test.cjs",
|
|
74
|
+
"tests/effort-surface-axis.test.cjs",
|
|
75
|
+
"tests/effort-sync-installed-runtime.test.cjs",
|
|
76
|
+
"tests/emitted-ack-trailer.test.cjs",
|
|
77
|
+
"tests/emitted-attribution.test.cjs",
|
|
78
|
+
"tests/emitted-provenance.test.cjs",
|
|
79
|
+
"tests/ensure-runtime-build.test.cjs",
|
|
80
|
+
"tests/eslint-rules.test.cjs",
|
|
81
|
+
"tests/execute-phase-decimal-arithmetic.test.cjs",
|
|
82
|
+
"tests/execute-phase-worktree-guard.test.cjs",
|
|
83
|
+
"tests/execute-plan-update-codebase-map-diff-base.test.cjs",
|
|
84
|
+
"tests/execute-wave-post-gate-pipeline-e2e.test.cjs",
|
|
85
|
+
"tests/executed-plan.test.cjs",
|
|
86
|
+
"tests/executor-mvp-tdd-section.test.cjs",
|
|
87
|
+
"tests/external-descriptor-confinement.test.cjs",
|
|
88
|
+
"tests/failing-direction.test.cjs",
|
|
89
|
+
"tests/fallow-runner.test.cjs",
|
|
90
|
+
"tests/faulty-deps.test.cjs",
|
|
91
|
+
"tests/feat-2483-review-claude-mds-guard.test.cjs",
|
|
92
|
+
"tests/features-index-gate.test.cjs",
|
|
93
|
+
"tests/frontmatter.test.cjs",
|
|
94
|
+
"tests/gap-checker.property.test.cjs",
|
|
95
|
+
"tests/gemini-runtime-removed.test.cjs",
|
|
96
|
+
"tests/gen-context-index.test.cjs",
|
|
97
|
+
"tests/gen-health-docs.test.cjs",
|
|
98
|
+
"tests/gen-section-manifest.test.cjs",
|
|
99
|
+
"tests/git-base-branch.test.cjs",
|
|
100
|
+
"tests/golden-install-tree.test.cjs",
|
|
101
|
+
"tests/graphify-graph-path.test.cjs",
|
|
102
|
+
"tests/graphify-visualization.test.cjs",
|
|
103
|
+
"tests/graphify.test.cjs",
|
|
104
|
+
"tests/gsd-agent-isolation-guard.test.cjs",
|
|
105
|
+
"tests/gsd-check-update-worker-atomic-cache.test.cjs",
|
|
106
|
+
"tests/gsd-check-update-worker-platform-gate.test.cjs",
|
|
107
|
+
"tests/gsd-mcp-server-bin.test.cjs",
|
|
108
|
+
"tests/gsd-statusline.test.cjs",
|
|
109
|
+
"tests/gsd-validate-commit-crash-policy.test.cjs",
|
|
110
|
+
"tests/gsd-write-guard.test.cjs",
|
|
111
|
+
"tests/health-diagnostic-rules/config-validation.test.cjs",
|
|
112
|
+
"tests/health-diagnostic-rules/worktree-health.test.cjs",
|
|
113
|
+
"tests/health-diagnostic.test.cjs",
|
|
114
|
+
"tests/helpers-cleanup.test.cjs",
|
|
115
|
+
"tests/helpers-process-isolation.test.cjs",
|
|
116
|
+
"tests/hermes-skills-migration.test.cjs",
|
|
117
|
+
"tests/hooks-commonjs-marker.test.cjs",
|
|
118
|
+
"tests/hooks-crash-policy.test.cjs",
|
|
119
|
+
"tests/hooks-opt-in.test.cjs",
|
|
120
|
+
"tests/host-integration.test.cjs",
|
|
121
|
+
"tests/init-manager.test.cjs",
|
|
122
|
+
"tests/init.test.cjs",
|
|
123
|
+
"tests/install-minimal-hooks.test.cjs",
|
|
124
|
+
"tests/install-nested-layout.test.cjs",
|
|
125
|
+
"tests/install-path-detection.test.cjs",
|
|
126
|
+
"tests/install-regressions.test.cjs",
|
|
127
|
+
"tests/install-runtime-artifacts.test.cjs",
|
|
128
|
+
"tests/install-write-confinement.test.cjs",
|
|
129
|
+
"tests/install.test.cjs",
|
|
130
|
+
"tests/installer-migration-antigravity-retire-confighome-artifacts.test.cjs",
|
|
131
|
+
"tests/installer-migration-config-root-marker.test.cjs",
|
|
132
|
+
"tests/installer-migration-pi-retire-hooks-dir.test.cjs",
|
|
133
|
+
"tests/installer-migration-prune-stale-pristine.test.cjs",
|
|
134
|
+
"tests/installer-migration-rename-gsd-core.test.cjs",
|
|
135
|
+
"tests/installer-migrations.test.cjs",
|
|
136
|
+
"tests/intel.test.cjs",
|
|
137
|
+
"tests/inventory-nested-families.test.cjs",
|
|
138
|
+
"tests/io.test.cjs",
|
|
139
|
+
"tests/isolation-sentinel.test.cjs",
|
|
140
|
+
"tests/kilo-upgrades.test.cjs",
|
|
141
|
+
"tests/kimi-agent-converter.test.cjs",
|
|
142
|
+
"tests/kimi-upgrades.test.cjs",
|
|
143
|
+
"tests/kimi-variant-disambiguation.test.cjs",
|
|
144
|
+
"tests/lint-workflow-shellcheck-fetch.test.cjs",
|
|
145
|
+
"tests/live-config-guard.test.cjs",
|
|
146
|
+
"tests/lockfile-cve-audit.test.cjs",
|
|
147
|
+
"tests/locking-bugs-1909-1916-1925-1927.test.cjs",
|
|
148
|
+
"tests/loop-hooks-empty-points-e2e.test.cjs",
|
|
149
|
+
"tests/loop-hooks-ship-pre-e2e.test.cjs",
|
|
150
|
+
"tests/loop-hooks-verify-post-e2e.test.cjs",
|
|
151
|
+
"tests/mcp-catalog.property.test.cjs",
|
|
152
|
+
"tests/mcp-catalog.test.cjs",
|
|
153
|
+
"tests/milestone-archive.test.cjs",
|
|
154
|
+
"tests/milestone-window-single-owner.test.cjs",
|
|
155
|
+
"tests/model-resolver.test.cjs",
|
|
156
|
+
"tests/mutation-workflow-base-ref.test.cjs",
|
|
157
|
+
"tests/new-milestone-clear-phases.test.cjs",
|
|
158
|
+
"tests/no-bare-npm-exec.rule.test.cjs",
|
|
159
|
+
"tests/no-exact-case-env-access.rule.test.cjs",
|
|
160
|
+
"tests/no-path-literal-in-assert.rule.test.cjs",
|
|
161
|
+
"tests/no-pending-3212-markers.test.cjs",
|
|
162
|
+
"tests/no-phantom-issue-refs.test.cjs",
|
|
163
|
+
"tests/no-posix-mode-bit-assert.rule.test.cjs",
|
|
164
|
+
"tests/no-private-binary-resolution.rule.test.cjs",
|
|
165
|
+
"tests/no-unbounded-dirname-walk.rule.test.cjs",
|
|
166
|
+
"tests/no-unbounded-spawn.test.cjs",
|
|
167
|
+
"tests/no-unguarded-nonportable-exec.rule.test.cjs",
|
|
168
|
+
"tests/npm-audit-baseline.test.cjs",
|
|
169
|
+
"tests/npm-integrity-gate.test.cjs",
|
|
170
|
+
"tests/nsegment-phase-grammar.test.cjs",
|
|
171
|
+
"tests/onboard-command.test.cjs",
|
|
172
|
+
"tests/opencode-command-dir-plural.test.cjs",
|
|
173
|
+
"tests/opencode-plugin-adapter.test.cjs",
|
|
174
|
+
"tests/overlay-repo-helpers.test.cjs",
|
|
175
|
+
"tests/packaging-shipped-scripts-require-only-shipped.test.cjs",
|
|
176
|
+
"tests/path-replacement.test.cjs",
|
|
177
|
+
"tests/pause-work-context-detection.test.cjs",
|
|
178
|
+
"tests/pause-work-improvements.test.cjs",
|
|
179
|
+
"tests/perf-317-context-monitor-fs.test.cjs",
|
|
180
|
+
"tests/phase-completion-single-owner.test.cjs",
|
|
181
|
+
"tests/phase-estimation.test.cjs",
|
|
182
|
+
"tests/phase-locator.test.cjs",
|
|
183
|
+
"tests/phase.test.cjs",
|
|
184
|
+
"tests/phase6-capstone-conformance.test.cjs",
|
|
185
|
+
"tests/pi-config-dir-env-override.test.cjs",
|
|
186
|
+
"tests/plan-count-single-owner.test.cjs",
|
|
187
|
+
"tests/plan-phase-stall-detection.test.cjs",
|
|
188
|
+
"tests/plan-pre-hook-e2e.test.cjs",
|
|
189
|
+
"tests/plan-review-convergence.test.cjs",
|
|
190
|
+
"tests/planning-inspect.test.cjs",
|
|
191
|
+
"tests/planning-inspect.unit.test.cjs",
|
|
192
|
+
"tests/planning-lock-mkdir-failure-1884.test.cjs",
|
|
193
|
+
"tests/planning-prompt-drift.test.cjs",
|
|
194
|
+
"tests/planning-snapshot.test.cjs",
|
|
195
|
+
"tests/planning-workspace.test.cjs",
|
|
196
|
+
"tests/platform-conformance-tier.test.cjs",
|
|
197
|
+
"tests/platform-guard.unit.test.cjs",
|
|
198
|
+
"tests/plugin-manifest.test.cjs",
|
|
199
|
+
"tests/policy-160-route0-resume.test.cjs",
|
|
200
|
+
"tests/policy-shell-pinning.test.cjs",
|
|
201
|
+
"tests/portability-rule-disable-ban.test.cjs",
|
|
202
|
+
"tests/pr-branch-planning-filter.test.cjs",
|
|
203
|
+
"tests/precommit-alias-drift-hook.test.cjs",
|
|
204
|
+
"tests/prepush-enterprise-email-hook.test.cjs",
|
|
205
|
+
"tests/process-seam.test.cjs",
|
|
206
|
+
"tests/profile-output.test.cjs",
|
|
207
|
+
"tests/profile-pipeline.test.cjs",
|
|
208
|
+
"tests/prohibition-enforcement.test.cjs",
|
|
209
|
+
"tests/project-root.test.cjs",
|
|
210
|
+
"tests/quick-batch.test.cjs",
|
|
211
|
+
"tests/quick-branching.test.cjs",
|
|
212
|
+
"tests/quick-research.test.cjs",
|
|
213
|
+
"tests/quick-review-scope-tip-bound.test.cjs",
|
|
214
|
+
"tests/read-guard.test.cjs",
|
|
215
|
+
"tests/reapply-verify-hunks.test.cjs",
|
|
216
|
+
"tests/repo-layout.test.cjs",
|
|
217
|
+
"tests/representative-corpus.test.cjs",
|
|
218
|
+
"tests/require-fs-op-fallback.rule.test.cjs",
|
|
219
|
+
"tests/require-full-tmpdir-triad.rule.test.cjs",
|
|
220
|
+
"tests/require-userprofile-with-home.rule.test.cjs",
|
|
221
|
+
"tests/response-language-coverage.test.cjs",
|
|
222
|
+
"tests/retired-artifact-cleanup.test.cjs",
|
|
223
|
+
"tests/review-build-prompt-optional-sections.test.cjs",
|
|
224
|
+
"tests/review-default-reviewers-config.test.cjs",
|
|
225
|
+
"tests/review-lane-runner.test.cjs",
|
|
226
|
+
"tests/review-lane-windows-spawn-resolution.test.cjs",
|
|
227
|
+
"tests/review-model-config.test.cjs",
|
|
228
|
+
"tests/review-parallel-lanes.test.cjs",
|
|
229
|
+
"tests/review-plan-coverage-manifest.test.cjs",
|
|
230
|
+
"tests/reviewer-manifest-body.test.cjs",
|
|
231
|
+
"tests/reviewer-step-dispatch.test.cjs",
|
|
232
|
+
"tests/revision-remediation-binding.test.cjs",
|
|
233
|
+
"tests/roadmap-parser.test.cjs",
|
|
234
|
+
"tests/roadmap.test.cjs",
|
|
235
|
+
"tests/run-tests-harness.test.cjs",
|
|
236
|
+
"tests/run-tests-temp-root.test.cjs",
|
|
237
|
+
"tests/run-with-timeout.test.cjs",
|
|
238
|
+
"tests/runtime-artifact-layout-surface.test.cjs",
|
|
239
|
+
"tests/runtime-artifact-layout.test.cjs",
|
|
240
|
+
"tests/runtime-converters.test.cjs",
|
|
241
|
+
"tests/runtime-homes-descriptor-drive.test.cjs",
|
|
242
|
+
"tests/runtime-identity.test.cjs",
|
|
243
|
+
"tests/runtime-launcher-parity.test.cjs",
|
|
244
|
+
"tests/security.test.cjs",
|
|
245
|
+
"tests/settings-jsonc.test.cjs",
|
|
246
|
+
"tests/sh-hook-paths.test.cjs",
|
|
247
|
+
"tests/shared-hooks-dir-resolution.test.cjs",
|
|
248
|
+
"tests/shell-command-projection-dispatch.test.cjs",
|
|
249
|
+
"tests/shell-command-projection-path-sep.test.cjs",
|
|
250
|
+
"tests/ship-notes-wedged-pr.test.cjs",
|
|
251
|
+
"tests/skill-manifest.test.cjs",
|
|
252
|
+
"tests/slug-derivation-drift-guard.test.cjs",
|
|
253
|
+
"tests/state-todos-render.test.cjs",
|
|
254
|
+
"tests/state.test.cjs",
|
|
255
|
+
"tests/teams-status.test.cjs",
|
|
256
|
+
"tests/todos-workstream-scope.test.cjs",
|
|
257
|
+
"tests/unreachable-guard-drift.test.cjs",
|
|
258
|
+
"tests/unreachable-shell-guard.test.cjs",
|
|
259
|
+
"tests/unusable-input.test.cjs",
|
|
260
|
+
"tests/update-custom-backup.test.cjs",
|
|
261
|
+
"tests/user-artifact-staging.test.cjs",
|
|
262
|
+
"tests/verification-status.test.cjs",
|
|
263
|
+
"tests/verify-archive-dirs-live-path.test.cjs",
|
|
264
|
+
"tests/verify-command-grounding.test.cjs",
|
|
265
|
+
"tests/verify.test.cjs",
|
|
266
|
+
"tests/windsurf-hooks-bridge.test.cjs",
|
|
267
|
+
"tests/workflow-guard.test.cjs",
|
|
268
|
+
"tests/workflow-shell-pinning.test.cjs",
|
|
269
|
+
"tests/workstream-inventory.test.cjs",
|
|
270
|
+
"tests/workstream-scoped-paths.test.cjs",
|
|
271
|
+
"tests/workstream.test.cjs",
|
|
272
|
+
"tests/worktree-cleanup.test.cjs",
|
|
273
|
+
"tests/worktree-safety.test.cjs",
|
|
274
|
+
"tests/worktree.test.cjs",
|
|
275
|
+
],
|
|
276
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Suite classification by filename suffix (#4591 packaging fix — extracted
|
|
5
|
+
* from scripts/run-tests.cjs so a SHIPPED script, e.g.
|
|
6
|
+
* scripts/gen-platform-conformance-tier.cjs, can depend on it: run-tests.cjs
|
|
7
|
+
* itself does not ship (it is a repo-development-only tool), so a shipped
|
|
8
|
+
* file requiring it directly is MODULE_NOT_FOUND in a published install
|
|
9
|
+
* (tests/packaging-shipped-scripts-require-only-shipped.test.cjs, #2858).
|
|
10
|
+
* run-tests.cjs re-exports suiteOf from here unchanged for full backward
|
|
11
|
+
* compatibility — this is a pure relocation, not a behavior change.
|
|
12
|
+
*
|
|
13
|
+
* A file with no suite suffix (plain `foo.test.cjs`) belongs to the `unit`
|
|
14
|
+
* suite and returns `null` here; a suite-tagged file (`foo.install.test.cjs`)
|
|
15
|
+
* returns its marker string.
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
const { basename } = require('node:path');
|
|
19
|
+
|
|
20
|
+
const MARKED_SUITES = ['integration', 'install', 'security', 'slow', 'qa'];
|
|
21
|
+
|
|
22
|
+
function suiteOf(filename) {
|
|
23
|
+
const name = basename(filename);
|
|
24
|
+
if (!name.endsWith('.test.cjs')) return null;
|
|
25
|
+
const base = name.slice(0, -'.test.cjs'.length);
|
|
26
|
+
const lastDot = base.lastIndexOf('.');
|
|
27
|
+
if (lastDot === -1) return null;
|
|
28
|
+
const marker = base.slice(lastDot + 1);
|
|
29
|
+
return MARKED_SUITES.includes(marker) ? marker : null;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
module.exports = { MARKED_SUITES, suiteOf };
|