opencode-swarm 7.188.9 → 7.188.11

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 (77) hide show
  1. package/binaries/win32-arm64/swarm-sandbox-runner.exe +0 -0
  2. package/binaries/win32-x64/swarm-sandbox-runner.exe +0 -0
  3. package/dist/cli/{auto-checkpoint-8hn7sczv.js → auto-checkpoint-kyb5rw8j.js} +5 -5
  4. package/dist/cli/{checkpoint-zagm80g6.js → checkpoint-9e3f8ers.js} +9 -9
  5. package/dist/cli/{coder-settlement-ea9wk0fa.js → coder-settlement-9j4ejab4.js} +3 -3
  6. package/dist/cli/{config-doctor-482f83pc.js → config-doctor-jd5yckkb.js} +7 -7
  7. package/dist/cli/{core-jev9px23.js → core-eyzqvwpk.js} +1 -1
  8. package/dist/cli/{curator-drift-tzr8cq9d.js → curator-drift-wyt8jf7r.js} +5 -5
  9. package/dist/cli/{curator-llm-factory-vwxengt1.js → curator-llm-factory-3b0jvvkd.js} +27 -27
  10. package/dist/cli/{curator-sw5w1yxn.js → curator-q6f0e79e.js} +27 -27
  11. package/dist/cli/{dispatch-h8m1jntz.js → dispatch-1pbmmj8z.js} +5 -7
  12. package/dist/cli/{doctor-knowledge-receipt-phase-id-78hqh9ds.js → doctor-knowledge-receipt-phase-id-19qdy72k.js} +5 -5
  13. package/dist/cli/{evidence-summary-service-dpx7844s.js → evidence-summary-service-k5ztgaca.js} +10 -10
  14. package/dist/cli/{gate-evidence-v5fbpnfe.js → gate-evidence-6gw4w2e8.js} +2 -2
  15. package/dist/cli/{guardrail-explain-020gkz5c.js → guardrail-explain-ewgj1gyw.js} +28 -28
  16. package/dist/cli/{guardrail-log-z14b98cn.js → guardrail-log-vp628cge.js} +3 -3
  17. package/dist/cli/{guardrail-reset-cg6kfk8r.js → guardrail-reset-qycc0pns.js} +27 -27
  18. package/dist/cli/{hive-promoter-bse7dh34.js → hive-promoter-z8r9xc9r.js} +27 -27
  19. package/dist/cli/{index-bzeegaem.js → index-03syhrv4.js} +2 -2
  20. package/dist/cli/{index-7jtxt3qp.js → index-0r1nrgq3.js} +1 -1
  21. package/dist/cli/{index-64e9z08z.js → index-0rd6br4q.js} +2 -2
  22. package/dist/cli/{index-0dp2ak7d.js → index-0tazb5m3.js} +1 -1
  23. package/dist/cli/{index-4xc838p0.js → index-1dhbk164.js} +1 -1
  24. package/dist/cli/{index-ng5n8tp0.js → index-1yx34x6m.js} +3 -3
  25. package/dist/cli/{index-0whh6em0.js → index-2262zz0m.js} +2 -2
  26. package/dist/cli/{index-byfk6w9a.js → index-3jx1yhqk.js} +3 -3
  27. package/dist/cli/{index-qdp9ny78.js → index-4paxe7hp.js} +1 -1
  28. package/dist/cli/{index-akkskstq.js → index-58pk41rj.js} +4 -4
  29. package/dist/cli/{index-peyrzden.js → index-5kcjrkme.js} +29 -29
  30. package/dist/cli/{index-b2g020d7.js → index-5m77ayzt.js} +1 -1
  31. package/dist/cli/{index-d1z2yrwq.js → index-66e6yba5.js} +2 -2
  32. package/dist/cli/{index-g0we5tpv.js → index-6xppxtfc.js} +4 -4
  33. package/dist/cli/{index-ps6fyxfc.js → index-8ndndvcw.js} +5 -5
  34. package/dist/cli/{index-dhkgby53.js → index-axreszvd.js} +2 -2
  35. package/dist/cli/{index-ddgmj923.js → index-bgv93ngx.js} +27 -27
  36. package/dist/cli/{index-gd602ztc.js → index-c562pan0.js} +1 -1
  37. package/dist/cli/{index-c0tjwb5k.js → index-j2vv0h13.js} +12 -12
  38. package/dist/cli/{index-q6y176gs.js → index-m0e1xjee.js} +6 -6
  39. package/dist/cli/{index-hjyakvcq.js → index-m1v2qd3z.js} +1 -1
  40. package/dist/cli/{index-v71w06rr.js → index-mzyvv3hz.js} +2 -2
  41. package/dist/cli/{index-kjb143pz.js → index-n1pntydp.js} +3 -3
  42. package/dist/cli/{index-kbkk7vnh.js → index-pkhbd2t5.js} +2 -1
  43. package/dist/cli/{index-2mmbzyqb.js → index-pqx85rk1.js} +1 -1
  44. package/dist/cli/{index-sndyex1t.js → index-rbgg2q19.js} +69 -77
  45. package/dist/cli/{index-t6tew3pf.js → index-sgawa007.js} +1 -1
  46. package/dist/cli/{index-804rs273.js → index-wh9h5vj1.js} +1 -1
  47. package/dist/cli/{index-b913b1yc.js → index-xr1bfzee.js} +1 -1
  48. package/dist/cli/{index-6nx6qf7v.js → index-yvp5c2e2.js} +1 -1
  49. package/dist/cli/{index-cxybg712.js → index-z55btbf2.js} +2 -2
  50. package/dist/cli/{index-0e49htcs.js → index-zpsc691s.js} +1 -1
  51. package/dist/cli/index.js +28 -28
  52. package/dist/cli/{knowledge-escalator-wah5yybk.js → knowledge-escalator-1hk1sxaj.js} +8 -8
  53. package/dist/cli/{knowledge-events-akz8013r.js → knowledge-events-12jxfydt.js} +6 -6
  54. package/dist/cli/{knowledge-store-hy12373e.js → knowledge-store-xr64wqmj.js} +1 -1
  55. package/dist/cli/{knowledge-validator-yrqkdt1w.js → knowledge-validator-978b1j5n.js} +2 -2
  56. package/dist/cli/{mcp-0srnsd05.js → mcp-qxwxzchp.js} +1 -1
  57. package/dist/cli/{model-preflight-m3v8hn9k.js → model-preflight-b9mbnymf.js} +27 -27
  58. package/dist/cli/{pending-delegations-40txwk2h.js → pending-delegations-0ej13k7z.js} +2 -2
  59. package/dist/cli/{pr-subscriptions-w6n5s9c7.js → pr-subscriptions-c35gt902.js} +1 -1
  60. package/dist/cli/{pr-workflow-gate-mx9t1p5j.js → pr-workflow-gate-a17sdc22.js} +27 -27
  61. package/dist/cli/{scan-cursor-phbwfaya.js → scan-cursor-a9y3qfj0.js} +2 -2
  62. package/dist/cli/{schema-t1xwd728.js → schema-dn0247wt.js} +1 -1
  63. package/dist/cli/{scope-persistence-m6qrwt3d.js → scope-persistence-v62cew31.js} +5 -5
  64. package/dist/cli/{server-7pt2zhnc.js → server-tna0jzhz.js} +27 -27
  65. package/dist/cli/{skill-generator-pnv8efrw.js → skill-generator-yr4dc37y.js} +9 -9
  66. package/dist/cli/{snapshot-coordination-init-514wtctt.js → snapshot-coordination-init-f2dsrgvy.js} +27 -27
  67. package/dist/cli/{speckit-checkoff-beh1nw7v.js → speckit-checkoff-gwjz28vf.js} +3 -3
  68. package/dist/cli/{worktree-collision-ownership-f5wca0gg.js → worktree-collision-ownership-p7g40dpp.js} +2 -2
  69. package/dist/cli/{worktree-isolation-bd6c5x8h.js → worktree-isolation-f76g3j4v.js} +27 -27
  70. package/dist/config/evidence-schema.d.ts +3 -0
  71. package/dist/index.js +8 -8
  72. package/dist/lang/backend.d.ts +7 -0
  73. package/dist/lang/default-backend.d.ts +25 -0
  74. package/dist/tools/build-check.d.ts +13 -0
  75. package/dist/turbo/lean/phase-ready.d.ts +15 -1
  76. package/dist/utils/windows-batch.d.ts +9 -4
  77. package/package.json +1 -1
@@ -36,6 +36,13 @@ export interface TestFrameworkSelection {
36
36
  * cannot avoid a shell-mediated invocation (e.g. PowerShell `-EncodedCommand`)
37
37
  * still produce an array; the array's first element is the binary and the
38
38
  * rest are individual arguments.
39
+ *
40
+ * On win32 an array whose `argv[0]` is a `cmd.exe` contained-launcher tuple
41
+ * (from `resolveContainedWindowsBatchCommand`) additionally requires the
42
+ * spawner to pass `windowsVerbatimArguments: true`, so the pre-quoted tail
43
+ * reaches cmd.exe unmodified. A caller spawning a Windows wrapper this way
44
+ * must gate on `isWindowsCommandInterpreterLaunch(cmd)`;
45
+ * `src/tools/test-runner.ts` is the reference implementation.
39
46
  */
40
47
  cmd: string[];
41
48
  /** Explicit cwd for the spawn (invariant 3). */
@@ -49,6 +49,31 @@ export declare function defaultSelectTestFramework(profile: LanguageProfile, dir
49
49
  * (`SWARM_LANG_BACKEND=legacy`) switch so both routes emit identical argv.
50
50
  */
51
51
  export declare function buildGradleTestCommand(dir: string, targets?: string[]): string[];
52
+ /**
53
+ * Build the argv for a Composer `vendor/bin` tool (`phpunit`, `pest`) for `dir`
54
+ * (issue #3050).
55
+ *
56
+ * On win32 a Composer `.bat` shim must never become a raw spawn target: Node's
57
+ * `child_process.spawn` rejects a batch file outright (EINVAL), and although
58
+ * Bun tolerates one, that tolerance is a runtime accident rather than a
59
+ * contract, so behaviour must not depend on which runtime is hosting the
60
+ * plugin. Route the wrapper through the contained cmd.exe launcher
61
+ * (`resolveContainedWindowsBatchCommand`), the same path the Maven (#3021) and
62
+ * Gradle (#3040) wrappers already take.
63
+ *
64
+ * When the launcher declines — no shim present, a symlink escaping `dir`, an
65
+ * unresolvable `ComSpec`, or an argument carrying a cmd.exe metacharacter — the
66
+ * fallback runs the PHP interpreter against the extensionless Composer proxy
67
+ * rather than re-emitting the batch file. Composer writes both, the proxy is
68
+ * what the `.bat` itself invokes, and the `php-artisan` arm of the very same
69
+ * switch already hardcodes `php`.
70
+ *
71
+ * Non-win32 is unchanged: the historical cwd-relative extensionless proxy.
72
+ * Shared by `defaultBuildTestCommand`, the test-runner's legacy
73
+ * (`SWARM_LANG_BACKEND=legacy`) switch, and the PHP backend's
74
+ * `selectTestFramework`, so all three routes emit identical argv.
75
+ */
76
+ export declare function buildPhpVendorCommand(dir: string, name: string, args?: string[]): string[];
52
77
  export declare function defaultBuildTestCommand(profile: LanguageProfile, framework: string, files: string[], dir?: string, opts?: BuildTestCommandOpts): string[] | null;
53
78
  export declare function buildNativeTargetCommand(target: NativeTestTarget): string[];
54
79
  /**
@@ -37,6 +37,19 @@ export interface BuildRun {
37
37
  duration_ms: number;
38
38
  stdout_tail: string;
39
39
  stderr_tail: string;
40
+ /**
41
+ * Set only when the process could not be created at all — the `bunSpawn`
42
+ * `spawnError` value contract (`src/utils/bun-compat.ts`), which is how
43
+ * process-creation failures surface on every runtime.
44
+ *
45
+ * Without it a launch failure is indistinguishable from a build that ran and
46
+ * exited non-zero: `spawnError` and `exitCode` are mutually exclusive, so a
47
+ * failed spawn resolves `exited` to the sentinel 1 and this record would read
48
+ * "exit 1" either way (issue #3050). Absent — not null — when the process did
49
+ * start, so "no launch failure" stays distinguishable from "field present but
50
+ * empty".
51
+ */
52
+ spawn_error?: string;
40
53
  }
41
54
  export interface BuildCheckResult {
42
55
  verdict: EvidenceVerdict;
@@ -18,6 +18,16 @@ export interface LeanTurboPhaseReadyConfig {
18
18
  phase_critic?: boolean;
19
19
  integrated_diff_required?: boolean;
20
20
  }
21
+ /**
22
+ * Default configuration for phase readiness checks.
23
+ *
24
+ * Defaults are projected from DEFAULT_LEAN_TURBO_CONFIG (src/config/constants.ts)
25
+ * — the single source of truth for Lean Turbo defaults (v7.4.x config-drift
26
+ * directive). Exported (frozen) so the defaults pin test can assert
27
+ * schema == constants == local
28
+ * (tests/unit/turbo/lean/phase-ready-defaults.test.ts).
29
+ */
30
+ export declare const DEFAULT_CONFIG: Readonly<Required<LeanTurboPhaseReadyConfig>>;
21
31
  /**
22
32
  * Result of the Lean Turbo phase readiness check.
23
33
  */
@@ -96,10 +106,14 @@ export declare const _internals: {
96
106
  * - New: verifyLeanTurboPhaseReady(dir, phase, sessionID?, config?)
97
107
  * - Legacy: verifyLeanTurboPhaseReady(dir, phase, config?) — config was previously the 3rd param
98
108
  *
109
+ * The two conventions are mutually exclusive: when sessionIDOrConfig is a
110
+ * config object, any fourth-argument config is ignored.
111
+ *
99
112
  * @param directory - Project root directory
100
113
  * @param phase - Phase number to verify readiness for
101
114
  * @param sessionIDOrConfig - Optional session ID (string) OR config object (legacy 3rd-param style)
102
- * @param config - Optional config; defaults to { phase_reviewer: true, phase_critic: true, integrated_diff_required: true }
115
+ * @param config - Optional config; defaults are projected from DEFAULT_LEAN_TURBO_CONFIG
116
+ * (src/config/constants.ts); an omitted or undefined field falls back to the projected default.
103
117
  */
104
118
  export declare function verifyLeanTurboPhaseReady(directory: string, phase: number, sessionIDOrConfig?: string | LeanTurboPhaseReadyConfig, config?: LeanTurboPhaseReadyConfig): LeanTurboPhaseReadyResult;
105
119
  export {};
@@ -2,10 +2,15 @@
2
2
  * Safe launch of a Windows batch wrapper (`.cmd` / `.bat`) through a
3
3
  * validated `cmd.exe`.
4
4
  *
5
- * Node and Bun cannot spawn a batch file directly (EINVAL since the
6
- * CVE-2024-27980 hardening), and a bare wrapper name such as `mvnw.cmd` is
7
- * resolved against PATH only — never against the spawn `cwd`. The supported
8
- * shape is `[<cmd.exe>, '/d', '/s', '/v:off', '/c', 'call "<abs>" "<arg>" ...']`
5
+ * Node cannot spawn a batch file directly at all: since the CVE-2024-27980
6
+ * hardening `child_process.spawn` rejects a `.cmd`/`.bat` target with EINVAL
7
+ * (measured on Node v24.16.0 for the absolute, cwd-relative and bare-name
8
+ * forms alike). Bun is more permissive — it routes batch files through cmd.exe
9
+ * itself — but that tolerance is a runtime accident rather than a contract, so
10
+ * a launcher must not depend on which runtime hosts the plugin. For the same
11
+ * reason a bare wrapper name such as `mvnw.cmd` is resolved against PATH only,
12
+ * never against the spawn `cwd`. The supported shape is
13
+ * `[<cmd.exe>, '/d', '/s', '/v:off', '/c', 'call "<abs>" "<arg>" ...']`
9
14
  * spawned with `windowsVerbatimArguments: true`, so the pre-quoted tail reaches
10
15
  * cmd.exe unmodified (the same pattern `src/tools/lint.ts` and
11
16
  * `src/tools/pkg-audit.ts` use).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-swarm",
3
- "version": "7.188.9",
3
+ "version": "7.188.11",
4
4
  "description": "Architect-centric agentic swarm plugin for OpenCode - hub-and-spoke orchestration with SME consultation, code generation, and QA review",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",