@securecode-ai/mcp 0.6.1 → 0.9.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 (75) hide show
  1. package/README.md +32 -3
  2. package/dist/api/types.d.ts +27 -0
  3. package/dist/approval/policy.js +7 -2
  4. package/dist/approval/policy.js.map +1 -1
  5. package/dist/attack/agentCorroboration.d.ts +14 -0
  6. package/dist/attack/agentCorroboration.js +98 -0
  7. package/dist/attack/agentCorroboration.js.map +1 -0
  8. package/dist/attack/agentLoop.js +9 -6
  9. package/dist/attack/agentLoop.js.map +1 -1
  10. package/dist/attack/agentScanBatchProtocol.d.ts +1 -1
  11. package/dist/attack/agentScanBatchProtocol.js.map +1 -1
  12. package/dist/attack/agentScanExecutor.d.ts +6 -2
  13. package/dist/attack/agentScanExecutor.js +62 -21
  14. package/dist/attack/agentScanExecutor.js.map +1 -1
  15. package/dist/attack/agentScanLoop.js +265 -151
  16. package/dist/attack/agentScanLoop.js.map +1 -1
  17. package/dist/attack/agentScanProtocol.d.ts +14 -5
  18. package/dist/attack/agentScanProtocol.js.map +1 -1
  19. package/dist/attack/architectureScoutLoop.js +1 -1
  20. package/dist/attack/architectureScoutLoop.js.map +1 -1
  21. package/dist/attack/investigationState.d.ts +32 -4
  22. package/dist/attack/investigationState.js +98 -10
  23. package/dist/attack/investigationState.js.map +1 -1
  24. package/dist/attack/llmHealth.d.ts +53 -0
  25. package/dist/attack/llmHealth.js +100 -0
  26. package/dist/attack/llmHealth.js.map +1 -0
  27. package/dist/attack/observationLimits.d.ts +12 -0
  28. package/dist/attack/observationLimits.js +16 -0
  29. package/dist/attack/observationLimits.js.map +1 -0
  30. package/dist/attack/policy.d.ts +1 -0
  31. package/dist/attack/policy.js +1 -0
  32. package/dist/attack/policy.js.map +1 -1
  33. package/dist/attack/probeRules.d.ts +51 -0
  34. package/dist/attack/probeRules.js +291 -0
  35. package/dist/attack/probeRules.js.map +1 -0
  36. package/dist/attack/protocol.d.ts +16 -0
  37. package/dist/attack/qualityMetrics.js +3 -0
  38. package/dist/attack/qualityMetrics.js.map +1 -1
  39. package/dist/attack/report.d.ts +3 -1
  40. package/dist/attack/report.js +4 -2
  41. package/dist/attack/report.js.map +1 -1
  42. package/dist/attack/runtimeProbe.d.ts +71 -0
  43. package/dist/attack/runtimeProbe.js +300 -0
  44. package/dist/attack/runtimeProbe.js.map +1 -0
  45. package/dist/attack/scanScheduler.d.ts +7 -0
  46. package/dist/attack/scanScheduler.js +58 -33
  47. package/dist/attack/scanScheduler.js.map +1 -1
  48. package/dist/attack/scanState.d.ts +1 -1
  49. package/dist/attack/scanState.js.map +1 -1
  50. package/dist/audit/findingReviewQueue.d.ts +1 -1
  51. package/dist/audit/findingReviewQueue.js.map +1 -1
  52. package/dist/auth/credentialStore.js +1 -1
  53. package/dist/auth/credentialStore.js.map +1 -1
  54. package/dist/auth/keychain.js +80 -80
  55. package/dist/auth/keychain.js.map +1 -1
  56. package/dist/mcp/server.js +5 -1
  57. package/dist/mcp/server.js.map +1 -1
  58. package/dist/mcp/tools.js +8 -9
  59. package/dist/mcp/tools.js.map +1 -1
  60. package/dist/project-map/architectureContext.d.ts +1 -1
  61. package/dist/project-map/architectureContext.js +1 -1
  62. package/dist/project-map/scanCache.d.ts +6 -1
  63. package/dist/project-map/scanCache.js +6 -1
  64. package/dist/project-map/scanCache.js.map +1 -1
  65. package/dist/tools/agentScan.d.ts +9 -1
  66. package/dist/tools/agentScan.js +160 -7
  67. package/dist/tools/agentScan.js.map +1 -1
  68. package/dist/tools/agentScanBatch.js +7 -1
  69. package/dist/tools/agentScanBatch.js.map +1 -1
  70. package/dist/tools/attack.js +1 -1
  71. package/dist/tools/attack.js.map +1 -1
  72. package/dist/tools/map.js +1 -1
  73. package/dist/utils/verificationSandbox.js +43 -2
  74. package/dist/utils/verificationSandbox.js.map +1 -1
  75. package/package.json +62 -62
@@ -66,6 +66,8 @@ const agentScanLoop_1 = require("../attack/agentScanLoop");
66
66
  const agentScanCoordinator_1 = require("../attack/agentScanCoordinator");
67
67
  const verifyLoop_1 = require("../attack/verifyLoop");
68
68
  const fixVerifyLoop_1 = require("../attack/fixVerifyLoop");
69
+ const runtimeProbe_1 = require("../attack/runtimeProbe");
70
+ const runtimeDetect_1 = require("../utils/runtimeDetect");
69
71
  const agentScanProtocol_1 = require("../attack/agentScanProtocol");
70
72
  const localTestRunner_1 = require("../utils/localTestRunner");
71
73
  const broker_1 = require("../approval/broker");
@@ -77,21 +79,24 @@ const findingReviewQueue_1 = require("../audit/findingReviewQueue");
77
79
  function shouldProve(finding) {
78
80
  return finding.severity === 'critical' || finding.severity === 'high' || finding.severity === 'medium';
79
81
  }
82
+ /** Max runtime-probe verifications per scan — each probe plan draws an API credit. */
83
+ const MAX_PROBE_FINDINGS_PER_SCAN = 3;
80
84
  /**
81
85
  * Map a verification verdict to a precision verification level.
82
86
  *
83
87
  * PROVEN via local sandbox → exploit-confirmed (end-to-end test ran)
84
88
  * PROVEN via API sandbox → impact-confirmed (server-side test ran)
89
+ * PROVEN via runtime probe → impact-confirmed (live-server evidence)
85
90
  * UNPROVEN → logic-confirmed (test proved behavior is safe)
86
91
  * INCONCLUSIVE/SKIPPED → logic-confirmed (couldn't determine)
87
92
  *
88
93
  * If the finding already has a verificationLevel from the agent, keep the
89
94
  * higher of the two (agent's level vs verify-mapped level).
90
95
  */
91
- function mapVerificationLevel(proven, viaApiSandbox, agentLevel) {
96
+ function mapVerificationLevel(proven, viaApiSandbox, agentLevel, viaRuntimeProbe) {
92
97
  let mapped;
93
98
  if (proven === 'PROVEN') {
94
- mapped = viaApiSandbox ? 'impact-confirmed' : 'exploit-confirmed';
99
+ mapped = viaApiSandbox || viaRuntimeProbe ? 'impact-confirmed' : 'exploit-confirmed';
95
100
  }
96
101
  else if (proven === 'UNPROVEN') {
97
102
  mapped = 'logic-confirmed';
@@ -112,6 +117,8 @@ function mapVerificationLevel(proven, viaApiSandbox, agentLevel) {
112
117
  * Falls back to 'inconclusive-verification' when no specific reason is known.
113
118
  */
114
119
  function mapToReviewReason(finding) {
120
+ if (finding.probePending)
121
+ return 'runtime-probe-pending';
115
122
  const sv = finding.verifySubVerdict;
116
123
  switch (sv) {
117
124
  case 'sandbox-unavailable': return 'sandbox-unavailable';
@@ -363,7 +370,7 @@ async function toolAgentScanInner(ctx, args) {
363
370
  // so the vulnerability investigator starts with project-wide context
364
371
  // instead of having to discover "where is auth?", "what's the data
365
372
  // layer?" from scratch. The architecture context is produced by
366
- // `securecode.map action:architecture` and cached in
373
+ // `securecode.architecture` and cached in
367
374
  // .securecode/architecture-context.json. If it's stale or absent, the
368
375
  // agent proceeds without it (no extra cost).
369
376
  let architectureContextStr;
@@ -426,6 +433,8 @@ async function toolAgentScanInner(ctx, args) {
426
433
  // at the top of the result, rather than buried in finding.reason.
427
434
  let sandboxUnavailableCount = 0;
428
435
  let budgetExhaustedCount = 0;
436
+ const runtimeProbeDisabled = process.env.SECURECODE_DISABLE_RUNTIME_PROBE === '1';
437
+ const probeCandidates = [];
429
438
  const proveable = agentResult.findings.filter(shouldProve);
430
439
  if (proveable.length > 0 && progress) {
431
440
  progress(0, proveable.length, `Verifying ${proveable.length} finding(s)...`);
@@ -537,6 +546,30 @@ async function toolAgentScanInner(ctx, args) {
537
546
  }
538
547
  continue;
539
548
  }
549
+ // Runtime-probe candidate: an INCONCLUSIVE verify whose shape
550
+ // (HTTP-routable vuln type + timeout/full-runtime reason) means
551
+ // the live dev server could exercise what the sandbox could not.
552
+ // Collected here, resolved after the loop so the whole scan gets
553
+ // one approval and one severity-ordered probe budget.
554
+ if (!runtimeProbeDisabled &&
555
+ result.verdict === 'INCONCLUSIVE' &&
556
+ (0, runtimeProbe_1.isProbeEligible)(finding, result.reason ?? '', endpointContext)) {
557
+ const probeEndpoint = (0, runtimeProbe_1.matchEndpointForFinding)(finding, endpointContext);
558
+ if (probeEndpoint) {
559
+ const probeFinding = {
560
+ ...finding,
561
+ proven: 'INCONCLUSIVE',
562
+ provenReason: result.reason,
563
+ verifySubVerdict: result.subVerdict,
564
+ verificationLevel: mapVerificationLevel('INCONCLUSIVE', false, finding.verificationLevel),
565
+ proofEvidence: result.proofEvidence,
566
+ proofGateResult: result.proofGateResult,
567
+ };
568
+ provenFindings.push(probeFinding);
569
+ probeCandidates.push({ finding: probeFinding, endpoint: probeEndpoint });
570
+ continue;
571
+ }
572
+ }
540
573
  provenFindings.push({
541
574
  ...finding,
542
575
  proven: result.verdict,
@@ -578,6 +611,116 @@ async function toolAgentScanInner(ctx, args) {
578
611
  }
579
612
  }
580
613
  }
614
+ // 4-pre. Runtime probe — live-server verification for HTTP-shaped findings
615
+ // the sandbox could not exercise (timeout / full-runtime shapes). One
616
+ // approval covers the whole scan; at most MAX_PROBE_FINDINGS_PER_SCAN
617
+ // findings are probed, severity-first; the rest stay INCONCLUSIVE and are
618
+ // queued for review with the dev-server hint.
619
+ let probeBlockedCount = 0;
620
+ if (probeCandidates.length > 0 && !runtimeProbeDisabled) {
621
+ const markAllProbeBlocked = (suffix) => {
622
+ for (const candidate of probeCandidates) {
623
+ candidate.finding.provenReason = `${candidate.finding.provenReason ?? ''}${suffix}`;
624
+ candidate.finding.probePending = true;
625
+ }
626
+ probeBlockedCount += probeCandidates.length;
627
+ };
628
+ let devServer = null;
629
+ try {
630
+ devServer = await (0, runtimeProbe_1.detectDevServer)(ctx.workspaceRoot);
631
+ }
632
+ catch {
633
+ devServer = null;
634
+ }
635
+ if (!devServer) {
636
+ markAllProbeBlocked(' Live-server probe available — start your dev server and re-scan to attempt runtime proof.');
637
+ }
638
+ else {
639
+ const probeBroker = new broker_1.ApprovalBroker();
640
+ await probeBroker.start();
641
+ try {
642
+ const probeSummary = `Runtime probe verification: ${probeCandidates.length} finding(s) need live-server confirmation against ${devServer.host}:${devServer.port}. ` +
643
+ 'Planned: short HTTP probe plans (baseline + attack requests, read-only payloads).';
644
+ const probeApproval = await probeBroker.requestApproval('securecode.runtime-probe', probeSummary, [
645
+ devServer.host,
646
+ devServer.port,
647
+ ...probeCandidates.map(c => `${c.endpoint.method} ${String(c.endpoint.mountedPath ?? '') || c.endpoint.path}`),
648
+ ], 60_000, 'paid-generation', ctx.workspaceRoot);
649
+ if (!probeApproval.approved) {
650
+ markAllProbeBlocked(' Live-server probe available — start your dev server and re-scan to attempt runtime proof.');
651
+ }
652
+ else {
653
+ const severityRank = ['critical', 'high', 'medium', 'low'];
654
+ const orderedCandidates = [...probeCandidates].sort((a, b) => severityRank.indexOf(a.finding.severity) - severityRank.indexOf(b.finding.severity));
655
+ let probedCount = 0;
656
+ const runtimeInfo = filePath ? (0, runtimeDetect_1.detectRuntime)(ctx.workspaceRoot, filePath) : null;
657
+ for (const candidate of orderedCandidates) {
658
+ if (probedCount >= MAX_PROBE_FINDINGS_PER_SCAN) {
659
+ probeBlockedCount++;
660
+ candidate.finding.provenReason = `${candidate.finding.provenReason ?? ''} Live-server probe budget reached (${MAX_PROBE_FINDINGS_PER_SCAN} per scan) — re-scan to attempt runtime proof of this finding.`;
661
+ candidate.finding.probePending = true;
662
+ continue;
663
+ }
664
+ try {
665
+ const planResp = await client.postJson('/verify/probe-plan', {
666
+ finding: {
667
+ type: candidate.finding.type,
668
+ line: candidate.finding.line,
669
+ lineEnd: candidate.finding.lineEnd,
670
+ evidence: candidate.finding.evidence,
671
+ why: candidate.finding.why,
672
+ severity: candidate.finding.severity,
673
+ },
674
+ endpoint: {
675
+ method: candidate.endpoint.method,
676
+ path: candidate.endpoint.mountedPath || candidate.endpoint.path,
677
+ mountedPath: candidate.endpoint.mountedPath,
678
+ params: candidate.endpoint.params,
679
+ authScheme: candidate.endpoint.authScheme,
680
+ middleware: candidate.endpoint.middleware,
681
+ },
682
+ framework: runtimeInfo?.framework ?? undefined,
683
+ devServerPort: devServer.port,
684
+ });
685
+ if (!planResp.canProbe || !planResp.plan) {
686
+ probeBlockedCount++;
687
+ candidate.finding.provenReason = `${candidate.finding.provenReason ?? ''} Runtime probe skipped: ${planResp.skipReason || 'API declined to build a probe plan.'}`;
688
+ candidate.finding.probePending = true;
689
+ continue;
690
+ }
691
+ const probeResult = await (0, runtimeProbe_1.executeProbePlan)(planResp.plan, { signal: abortSignal });
692
+ probedCount++;
693
+ candidate.finding.probeEvidence = probeResult.evidence;
694
+ candidate.finding.probeRule = probeResult.rule;
695
+ const liveEvidence = probeResult.evidence.length > 300
696
+ ? probeResult.evidence.slice(0, 300) + '…'
697
+ : probeResult.evidence;
698
+ if (probeResult.verdict === 'PROVEN') {
699
+ candidate.finding.proven = 'PROVEN';
700
+ candidate.finding.provenReason = `Runtime probe confirmed (${probeResult.rule}): ${probeResult.reason} — live evidence: ${liveEvidence}`;
701
+ candidate.finding.verificationLevel = mapVerificationLevel('PROVEN', false, candidate.finding.verificationLevel, true);
702
+ }
703
+ else if (probeResult.verdict === 'UNPROVEN') {
704
+ candidate.finding.proven = 'UNPROVEN';
705
+ candidate.finding.provenReason = `Runtime probe refuted (${probeResult.rule}): ${probeResult.reason} — live evidence: ${liveEvidence}`;
706
+ candidate.finding.verificationLevel = mapVerificationLevel('UNPROVEN', false, candidate.finding.verificationLevel, true);
707
+ }
708
+ else {
709
+ candidate.finding.provenReason = `${candidate.finding.provenReason ?? ''} Runtime probe inconclusive: ${probeResult.reason}`;
710
+ }
711
+ }
712
+ catch (probeErr) {
713
+ candidate.finding.provenReason = `${candidate.finding.provenReason ?? ''} Runtime probe failed: ${probeErr?.message || probeErr}`;
714
+ candidate.finding.probePending = true;
715
+ }
716
+ }
717
+ }
718
+ }
719
+ finally {
720
+ await probeBroker.stop();
721
+ }
722
+ }
723
+ }
581
724
  // 4a. Capability-based confidence clamping
582
725
  // Confidence must reflect what was actually proven, not what the LLM believes.
583
726
  // A finding with no structural evidence (no taint trace, no guard check, no
@@ -762,8 +905,10 @@ async function toolAgentScanInner(ctx, args) {
762
905
  await fixBroker.stop();
763
906
  }
764
907
  } // end else (skipFix)
765
- // 5. Write to cache before returning
766
- if (useCache) {
908
+ // 5. Write to cache before returning — but never cache llm_degraded
909
+ // runs: they reflect a bad model-server window, not the file's true
910
+ // state, and must not be served for 7 days.
911
+ if (useCache && agentResult.terminationReason !== 'llm_degraded') {
767
912
  try {
768
913
  (0, scanCache_1.writeCachedScan)(ctx.workspaceRoot, filePath, code, {
769
914
  findings: provenFindings,
@@ -797,6 +942,10 @@ async function toolAgentScanInner(ctx, args) {
797
942
  else if (budgetExhaustedCount > 0) {
798
943
  verifyHint = `Exploit verification was skipped for ${budgetExhaustedCount} finding(s) because the per-scan verification budget (${verifyBudget.maxFindings} findings, ${verifyBudget.maxLlmCalls} LLM calls, ${Math.round(verifyBudget.maxWallClockMs / 1000)}s) was exhausted. Re-run the scan to verify the remaining findings, or raise the budget via the VerifyBudget config.`;
799
944
  }
945
+ if (probeBlockedCount > 0) {
946
+ const probeHint = `${probeBlockedCount} finding(s) could be runtime-probe verified — start your dev server (detected port hints: 3000/5173/8080) and re-scan, or set SECURECODE_DEV_SERVER_PORT.`;
947
+ verifyHint = verifyHint ? `${verifyHint}\n${probeHint}` : probeHint;
948
+ }
800
949
  // 6a. Record metadata-only audit sample (no source code, no evidence strings)
801
950
  try {
802
951
  const fileHash = require('crypto').createHash('sha256').update(code).digest('hex').substring(0, 16);
@@ -910,7 +1059,7 @@ function clampConfidenceByCapability(findings, transcript, language) {
910
1059
  evidenceTools++;
911
1060
  for (const f of findings) {
912
1061
  const original = f.confidence;
913
- const ceiling = confidenceCeilingForFinding(f.proven, cap.tier, evidenceTools);
1062
+ const ceiling = confidenceCeilingForFinding(f.proven, cap.tier, evidenceTools, f.proven === 'PROVEN' && !!f.probeRule);
914
1063
  // The ceiling is the maximum allowed confidence for this verdict +
915
1064
  // capability combination. PROVEN findings have no ceiling (undefined)
916
1065
  // — they're already proven, let the LLM's confidence stand (but still
@@ -949,6 +1098,8 @@ function clampConfidenceByCapability(findings, transcript, language) {
949
1098
  * Verdict semantics:
950
1099
  * - PROVEN: exploit test ran and reproduced the vulnerability. Strong
951
1100
  * evidence. No ceiling; floor at 80.
1101
+ * - PROVEN via runtime probe: live HTTP evidence only (no sandbox exploit
1102
+ * run) — cap at 90, above every unverified tier.
952
1103
  * - UNPROVEN: exploit test ran and did NOT reproduce. The finding is
953
1104
  * likely a false positive. Hard cap at 25.
954
1105
  * - NOT_REPRODUCIBLE: exploit test ran, but the test setup couldn't
@@ -963,9 +1114,11 @@ function clampConfidenceByCapability(findings, transcript, language) {
963
1114
  * → ≤75). Fallback-tier languages get ≤55 across the board.
964
1115
  * - SKIPPED: low severity, we didn't even try. Same as INCONCLUSIVE.
965
1116
  */
966
- function confidenceCeilingForFinding(verdict, capabilityTier, evidenceTools) {
1117
+ function confidenceCeilingForFinding(verdict, capabilityTier, evidenceTools, viaRuntimeProbe) {
967
1118
  switch (verdict) {
968
1119
  case 'PROVEN':
1120
+ if (viaRuntimeProbe)
1121
+ return 90;
969
1122
  return undefined;
970
1123
  case 'UNPROVEN':
971
1124
  return 25;
@@ -1 +1 @@
1
- {"version":3,"file":"agentScan.js","sourceRoot":"","sources":["../../src/tools/agentScan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentScan.js","sourceRoot":"","sources":["../../src/tools/agentScan.ts"],"names":[],"mappings":"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"}
@@ -140,7 +140,13 @@ async function toolAgentScanBatchInner(ctx, args) {
140
140
  error: scanResult.error,
141
141
  }, scanResult.cached);
142
142
  fileResults.push(batchFile);
143
- if (batchFile.status === 'incomplete' && stopOnIncomplete) {
143
+ // Degraded-model window: stop the whole batch — retrying
144
+ // against a bad model just burns credits.
145
+ if (scanResult.terminationReason === 'llm_degraded') {
146
+ stopReason = 'llm-degraded';
147
+ shouldStop = true;
148
+ }
149
+ else if (batchFile.status === 'incomplete' && stopOnIncomplete) {
144
150
  stopReason = 'scan-incomplete';
145
151
  shouldStop = true;
146
152
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agentScanBatch.js","sourceRoot":"","sources":["../../src/tools/agentScanBatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentScanBatch.js","sourceRoot":"","sources":["../../src/tools/agentScanBatch.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ async function toolAttack(ctx, args) {
30
30
  if (!map || !map.endpoints || map.endpoints.length === 0) {
31
31
  return {
32
32
  applied: false,
33
- note: 'No Project Map found or no endpoints mapped. Run securecode.map with action "build" first.',
33
+ note: 'No mapped endpoints found for this workspace. The attack tool needs a deterministically-detected endpoint (Express/Fastify style routes). If the project uses another framework, attack targets are not supported yet.',
34
34
  };
35
35
  }
36
36
  let endpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"attack.js","sourceRoot":"","sources":["../../src/tools/attack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attack.js","sourceRoot":"","sources":["../../src/tools/attack.ts"],"names":[],"mappings":"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"}
package/dist/tools/map.js CHANGED
@@ -230,7 +230,7 @@ async function toolMap(ctx, args) {
230
230
  };
231
231
  }
232
232
  /**
233
- * `securecode.map action:architecture` — runs the architecture scout
233
+ * `securecode.architecture` — runs the architecture scout
234
234
  * subagent to survey the project and produce an ArchitectureContext.
235
235
  *
236
236
  * Flow:
@@ -136,13 +136,47 @@ function pickImageForCommand(executable) {
136
136
  }
137
137
  // ── Probe caching ───────────────────────────────────────────────────────────
138
138
  const probeCache = new Map();
139
+ /**
140
+ * On Windows, `deno`/`docker` are often `.cmd` shims (npm installs) that
141
+ * `spawn(bin, { shell: false })` cannot execute (ENOENT). Resolve the real
142
+ * path via `where.exe`: `.exe` files spawn directly; `.cmd`/`.bat` shims are
143
+ * invoked as `cmd.exe /c <resolved>` — argv-quoted, never a shell string.
144
+ * Returns null on non-Windows or when the binary cannot be resolved.
145
+ */
146
+ function resolveWindowsBin(bin) {
147
+ if (process.platform !== 'win32')
148
+ return null;
149
+ try {
150
+ const r = (0, child_process_1.spawnSync)('where.exe', [bin], { stdio: ['ignore', 'pipe', 'ignore'], timeout: 4000 });
151
+ if (r.status !== 0 || !r.stdout)
152
+ return null;
153
+ const lines = r.stdout.toString('utf8').split(/\r?\n/).map(l => l.trim()).filter(Boolean);
154
+ const exe = lines.find(l => /\.exe$/i.test(l));
155
+ if (exe)
156
+ return { cmd: exe, preArgs: [] };
157
+ const shim = lines.find(l => /\.(cmd|bat)$/i.test(l));
158
+ if (shim)
159
+ return { cmd: 'cmd.exe', preArgs: ['/c', shim] };
160
+ return null;
161
+ }
162
+ catch {
163
+ return null;
164
+ }
165
+ }
139
166
  function probe(bin, args = ['--version']) {
140
167
  const key = `${bin} ${args.join(' ')}`;
141
168
  if (probeCache.has(key))
142
169
  return probeCache.get(key);
143
170
  let ok = false;
144
171
  try {
145
- const r = (0, child_process_1.spawnSync)(bin, args, {
172
+ let cmd = bin;
173
+ let cmdArgs = args;
174
+ const resolved = resolveWindowsBin(bin);
175
+ if (resolved) {
176
+ cmd = resolved.cmd;
177
+ cmdArgs = [...resolved.preArgs, ...args];
178
+ }
179
+ const r = (0, child_process_1.spawnSync)(cmd, cmdArgs, {
146
180
  stdio: 'ignore',
147
181
  shell: false,
148
182
  timeout: 4000,
@@ -490,7 +524,14 @@ function runSandboxedProcess(bin, args, opts, backendLabel) {
490
524
  let timedOut = false;
491
525
  let cancelled = false;
492
526
  let settled = false;
493
- const proc = (0, child_process_1.spawn)(bin, args, {
527
+ let spawnBin = bin;
528
+ let spawnArgs = args;
529
+ const resolved = resolveWindowsBin(bin);
530
+ if (resolved) {
531
+ spawnBin = resolved.cmd;
532
+ spawnArgs = [...resolved.preArgs, ...args];
533
+ }
534
+ const proc = (0, child_process_1.spawn)(spawnBin, spawnArgs, {
494
535
  cwd: opts.workspaceRoot,
495
536
  stdio: ['pipe', 'pipe', 'pipe'],
496
537
  shell: false,