Files
msd-core/eslint-rules/no-unbounded-spawn.allowlist.json
Tom Boucher 1d208e5af6 test(#3144): bound the git/worktree cluster onto the process seam (#3152)
* test(#3144): bound the git/worktree cluster onto the process seam

Migrates 180 unbounded sync spawn sites across 19 files. Every previously
unbounded call now carries an explicit timeout with a comment giving the
number and why.

The migration is not a callee swap. execSync and execFileSync throw on a
non-zero exit and the seam never does, so each site was classified first:
sites that rely on the throw route to gitOrThrow, and sites that already read
.status to detect an EXPECTED non-zero -- an intended cherry-pick conflict, a
rev-parse outside a repo driving a skip -- route to the never-throwing runGit
instead, which would otherwise throw on exactly the exit being probed for.

Two same-named git() helpers in worktree-cleanup.test.cjs have different
return contracts, one trimmed and one raw; both are preserved rather than
unified.

Collapses five hand-rolled throw wrappers onto one throwIfFailed in
git-fixture.cjs, which gitOrThrow now also uses so the shape cannot drift.

Allowlist drops 139 to 120; BASELINE lowered to match.

* test(#3144): fix pre-PR review findings

Documents throwIfFailed in the CONTEXT.md glossary and CONTRIBUTING.md --
it became the shared throw mechanism without either doc naming it.

Routes the sixth and seventh hand-rolled copies of the throw shape through
throwIfFailed (worktree-baseref-install, worktree-safety-reap); the first
consolidation missed both.

Converts ci-rebase-check's 8 fixture-setup calls from unchecked runGit to
gitOrThrow so a failed setup step aborts where it fails rather than
surfacing later as a confusing failure against the wrong subject.

Adds 12 direct unit tests for throwIfFailed, which until now was only
exercised transitively.

Splits verify.test.cjs's non-git grep/sed bound off GIT_TIMEOUT_MS.

---------

Co-authored-by: sim <sim@local>
2026-08-07 10:58:34 -04:00

123 lines
4.9 KiB
JSON

[
"tests/adr-15-progress-converge.test.cjs",
"tests/agent-fragments-emission.install.test.cjs",
"tests/agent-install-validation.test.cjs",
"tests/agent-skills.test.cjs",
"tests/antigravity-upgrades.test.cjs",
"tests/augment-upgrades.test.cjs",
"tests/autonomous-converge.test.cjs",
"tests/bugs-1656-1657.test.cjs",
"tests/capability-cli.test.cjs",
"tests/capability-consent.test.cjs",
"tests/capability-ledger.test.cjs",
"tests/capability-lifecycle.test.cjs",
"tests/capability-loader.test.cjs",
"tests/capability-writer.test.cjs",
"tests/changeset-cli.test.cjs",
"tests/changeset-github-release-notes.test.cjs",
"tests/changeset-lint.test.cjs",
"tests/check-tdd-review-checkpoint-e2e.test.cjs",
"tests/check-ui-safety-gate.test.cjs",
"tests/check-update-config-dir.test.cjs",
"tests/ci-test-scope.test.cjs",
"tests/cli-exit.test.cjs",
"tests/close-phase-todos-padded-resolves.test.cjs",
"tests/code-review-pipeline-regression.test.cjs",
"tests/codex-config.test.cjs",
"tests/commands.test.cjs",
"tests/commonjs-marker.test.cjs",
"tests/config-get-default.test.cjs",
"tests/config-loader.test.cjs",
"tests/config.test.cjs",
"tests/configuration-migrate-config.test.cjs",
"tests/copilot-install.test.cjs",
"tests/declarative-reference-antigravity.test.cjs",
"tests/declarative-reference-augment.test.cjs",
"tests/declarative-reference-codebuddy.test.cjs",
"tests/declarative-reference-copilot.test.cjs",
"tests/declarative-reference-windsurf.test.cjs",
"tests/declarative-reference-zcode.test.cjs",
"tests/drift-detection.test.cjs",
"tests/edge-probe.test.cjs",
"tests/effort-sync-installed-runtime.test.cjs",
"tests/emitted-caps-gate.test.cjs",
"tests/emitted-sizes.test.cjs",
"tests/ensure-runtime-build.test.cjs",
"tests/execute-wave-post-gate-pipeline-e2e.test.cjs",
"tests/fix-2136-clock-local-today.test.cjs",
"tests/fix-2590-workflow-script-contract.test.cjs",
"tests/fix-2650-plan-phase-stall-detection.test.cjs",
"tests/fix-2657-untrack-compiled-artifacts.test.cjs",
"tests/fix-3045-cursor-subagent-isolation.test.cjs",
"tests/fix-3045-dispatch-isolation-resolver.test.cjs",
"tests/fixture-builder.test.cjs",
"tests/fixtures/index.cjs",
"tests/fragment-single-edit-propagation.install.test.cjs",
"tests/frontmatter-cli.test.cjs",
"tests/gemini-runtime-removed.test.cjs",
"tests/gen-registry.test.cjs",
"tests/golden-install-tree.test.cjs",
"tests/graphify-auto-update.slow.test.cjs",
"tests/graphify-visualization.test.cjs",
"tests/gsd-agent-isolation-guard.test.cjs",
"tests/gsd-statusline.test.cjs",
"tests/helpers.cjs",
"tests/helpers/graphify.cjs",
"tests/helpers/install-shared.cjs",
"tests/hooks-opt-in.test.cjs",
"tests/host-integration.test.cjs",
"tests/ingest-docs.test.cjs",
"tests/init.test.cjs",
"tests/install-minimal-hooks.test.cjs",
"tests/install-regressions.test.cjs",
"tests/install-write-confinement.test.cjs",
"tests/install.test.cjs",
"tests/installer-migration-install.integration.test.cjs",
"tests/installer-migrations.test.cjs",
"tests/io.test.cjs",
"tests/issue-2695-codex-hook-set.test.cjs",
"tests/issue-2765-brace-expansion-lockfile.test.cjs",
"tests/issue-498-update-context.test.cjs",
"tests/issue-787-cline-hooks-agents.test.cjs",
"tests/issue-844-manifest-version-sync.test.cjs",
"tests/kilo-upgrades.test.cjs",
"tests/kimi-agent-converter.test.cjs",
"tests/kimi-upgrades.test.cjs",
"tests/lint-docs-command-form.test.cjs",
"tests/lint-legacy-dir-name.test.cjs",
"tests/lint-pr-check-project-dir.test.cjs",
"tests/lint-regression-test-names.test.cjs",
"tests/lint-skill-deps.test.cjs",
"tests/lint-test-file-count.test.cjs",
"tests/loop-render-hooks.test.cjs",
"tests/managed-hooks.test.cjs",
"tests/mcp-catalog-parity.install.test.cjs",
"tests/mutation-matrix-ratchet.test.cjs",
"tests/new-milestone-clear-phases.test.cjs",
"tests/opencode-command-dir-plural.test.cjs",
"tests/opencode-plugin-adapter.test.cjs",
"tests/pause-work-improvements.test.cjs",
"tests/phase.test.cjs",
"tests/precommit-alias-drift-hook.test.cjs",
"tests/prepush-enterprise-email-hook.test.cjs",
"tests/process-seam.test.cjs",
"tests/prohibition-enforcement.test.cjs",
"tests/project-instruction-file-parity.test.cjs",
"tests/repo-layout.test.cjs",
"tests/reviewer-docs-parity.test.cjs",
"tests/roadmap-upgrade.test.cjs",
"tests/run-tests-harness.test.cjs",
"tests/runtime-launcher-parity.test.cjs",
"tests/skill-frontmatter-contract.test.cjs",
"tests/slash-command-namespace.test.cjs",
"tests/smart-entry.unit.test.cjs",
"tests/spec-section.test.cjs",
"tests/state-rebuild-cli.test.cjs",
"tests/state.test.cjs",
"tests/tsconfig-noemit.test.cjs",
"tests/validate-registry.test.cjs",
"tests/windsurf-hooks-bridge.test.cjs",
"tests/workflow-fragments-emission.install.test.cjs",
"tests/workflow-guard.test.cjs"
]