patchwork-os 0.2.0-beta.2 → 0.2.0-beta.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 (261) hide show
  1. package/README.bridge.md +5 -5
  2. package/README.md +244 -30
  3. package/dist/activityLog.d.ts +6 -0
  4. package/dist/activityLog.js +10 -1
  5. package/dist/activityLog.js.map +1 -1
  6. package/dist/analyticsPrefs.d.ts +35 -2
  7. package/dist/analyticsPrefs.js +120 -21
  8. package/dist/analyticsPrefs.js.map +1 -1
  9. package/dist/analyticsSend.js +5 -1
  10. package/dist/analyticsSend.js.map +1 -1
  11. package/dist/approvalHttp.js +25 -8
  12. package/dist/approvalHttp.js.map +1 -1
  13. package/dist/approvalQueue.d.ts +44 -1
  14. package/dist/approvalQueue.js +117 -0
  15. package/dist/approvalQueue.js.map +1 -1
  16. package/dist/automation.d.ts +3 -3
  17. package/dist/automation.js +12 -5
  18. package/dist/automation.js.map +1 -1
  19. package/dist/bridge.d.ts +2 -0
  20. package/dist/bridge.js +140 -8
  21. package/dist/bridge.js.map +1 -1
  22. package/dist/bridgeLockDiscovery.d.ts +27 -1
  23. package/dist/bridgeLockDiscovery.js +38 -11
  24. package/dist/bridgeLockDiscovery.js.map +1 -1
  25. package/dist/claudeOrchestrator.js +27 -10
  26. package/dist/claudeOrchestrator.js.map +1 -1
  27. package/dist/commands/dashboard.js +8 -1
  28. package/dist/commands/dashboard.js.map +1 -1
  29. package/dist/commands/install.js +3 -0
  30. package/dist/commands/install.js.map +1 -1
  31. package/dist/commands/patchworkInit.d.ts +5 -0
  32. package/dist/commands/patchworkInit.js +89 -7
  33. package/dist/commands/patchworkInit.js.map +1 -1
  34. package/dist/commands/recipe.d.ts +51 -0
  35. package/dist/commands/recipe.js +353 -2
  36. package/dist/commands/recipe.js.map +1 -1
  37. package/dist/commands/recipeInstall.js +6 -3
  38. package/dist/commands/recipeInstall.js.map +1 -1
  39. package/dist/commands/task.js +2 -2
  40. package/dist/commands/task.js.map +1 -1
  41. package/dist/commitIssueLinkLog.d.ts +16 -0
  42. package/dist/commitIssueLinkLog.js +87 -4
  43. package/dist/commitIssueLinkLog.js.map +1 -1
  44. package/dist/config.d.ts +29 -3
  45. package/dist/config.js +77 -21
  46. package/dist/config.js.map +1 -1
  47. package/dist/connectorRoutes.js +1 -1
  48. package/dist/connectorRoutes.js.map +1 -1
  49. package/dist/connectors/asana.js +4 -3
  50. package/dist/connectors/asana.js.map +1 -1
  51. package/dist/connectors/confluence.js +35 -0
  52. package/dist/connectors/confluence.js.map +1 -1
  53. package/dist/connectors/datadog.js +33 -4
  54. package/dist/connectors/datadog.js.map +1 -1
  55. package/dist/connectors/discord.js +5 -4
  56. package/dist/connectors/discord.js.map +1 -1
  57. package/dist/connectors/gitlab.js +7 -1
  58. package/dist/connectors/gitlab.js.map +1 -1
  59. package/dist/connectors/mcpOAuth.js +71 -6
  60. package/dist/connectors/mcpOAuth.js.map +1 -1
  61. package/dist/connectors/slack.d.ts +1 -1
  62. package/dist/connectors/slack.js +56 -4
  63. package/dist/connectors/slack.js.map +1 -1
  64. package/dist/connectors/tokenStorage.js +56 -14
  65. package/dist/connectors/tokenStorage.js.map +1 -1
  66. package/dist/decisionTraceLog.d.ts +28 -0
  67. package/dist/decisionTraceLog.js +115 -7
  68. package/dist/decisionTraceLog.js.map +1 -1
  69. package/dist/drivers/claude/subprocess.js +22 -3
  70. package/dist/drivers/claude/subprocess.js.map +1 -1
  71. package/dist/drivers/gemini/index.js +19 -3
  72. package/dist/drivers/gemini/index.js.map +1 -1
  73. package/dist/extensionClient.d.ts +29 -4
  74. package/dist/extensionClient.js +26 -11
  75. package/dist/extensionClient.js.map +1 -1
  76. package/dist/featureFlags.d.ts +76 -0
  77. package/dist/featureFlags.js +153 -3
  78. package/dist/featureFlags.js.map +1 -1
  79. package/dist/fileLockSync.d.ts +67 -0
  80. package/dist/fileLockSync.js +126 -0
  81. package/dist/fileLockSync.js.map +1 -0
  82. package/dist/fp/automationInterpreter.d.ts +6 -0
  83. package/dist/fp/automationInterpreter.js +15 -2
  84. package/dist/fp/automationInterpreter.js.map +1 -1
  85. package/dist/fp/automationState.d.ts +1 -1
  86. package/dist/fp/automationState.js +10 -0
  87. package/dist/fp/automationState.js.map +1 -1
  88. package/dist/fp/commandDescription.js +7 -1
  89. package/dist/fp/commandDescription.js.map +1 -1
  90. package/dist/fsWatchWithFallback.d.ts +36 -0
  91. package/dist/fsWatchWithFallback.js +127 -0
  92. package/dist/fsWatchWithFallback.js.map +1 -0
  93. package/dist/index.js +797 -75
  94. package/dist/index.js.map +1 -1
  95. package/dist/installGuard.js +6 -2
  96. package/dist/installGuard.js.map +1 -1
  97. package/dist/lockfile.js +31 -4
  98. package/dist/lockfile.js.map +1 -1
  99. package/dist/patchworkConfig.js +13 -3
  100. package/dist/patchworkConfig.js.map +1 -1
  101. package/dist/pluginLoader.js +10 -1
  102. package/dist/pluginLoader.js.map +1 -1
  103. package/dist/pluginWatcher.js +6 -13
  104. package/dist/pluginWatcher.js.map +1 -1
  105. package/dist/preToolUseHook.js +3 -2
  106. package/dist/preToolUseHook.js.map +1 -1
  107. package/dist/processTree.d.ts +34 -0
  108. package/dist/processTree.js +105 -0
  109. package/dist/processTree.js.map +1 -0
  110. package/dist/prompts.js +3 -3
  111. package/dist/prompts.js.map +1 -1
  112. package/dist/recipeOrchestration.js +35 -1
  113. package/dist/recipeOrchestration.js.map +1 -1
  114. package/dist/recipeRoutes.d.ts +37 -0
  115. package/dist/recipeRoutes.js +236 -33
  116. package/dist/recipeRoutes.js.map +1 -1
  117. package/dist/recipes/agentExecutor.d.ts +25 -5
  118. package/dist/recipes/agentExecutor.js.map +1 -1
  119. package/dist/recipes/chainedRunner.js +16 -2
  120. package/dist/recipes/chainedRunner.js.map +1 -1
  121. package/dist/recipes/connectorPreflight.d.ts +53 -0
  122. package/dist/recipes/connectorPreflight.js +143 -0
  123. package/dist/recipes/connectorPreflight.js.map +1 -0
  124. package/dist/recipes/githubInstallSource.d.ts +62 -0
  125. package/dist/recipes/githubInstallSource.js +125 -0
  126. package/dist/recipes/githubInstallSource.js.map +1 -0
  127. package/dist/recipes/haltCategory.d.ts +80 -0
  128. package/dist/recipes/haltCategory.js +125 -0
  129. package/dist/recipes/haltCategory.js.map +1 -0
  130. package/dist/recipes/idempotencyKey.d.ts +126 -0
  131. package/dist/recipes/idempotencyKey.js +297 -0
  132. package/dist/recipes/idempotencyKey.js.map +1 -0
  133. package/dist/recipes/installer.js +48 -2
  134. package/dist/recipes/installer.js.map +1 -1
  135. package/dist/recipes/judgeSummary.d.ts +50 -0
  136. package/dist/recipes/judgeSummary.js +47 -0
  137. package/dist/recipes/judgeSummary.js.map +1 -0
  138. package/dist/recipes/judgeVerdict.d.ts +48 -0
  139. package/dist/recipes/judgeVerdict.js +174 -0
  140. package/dist/recipes/judgeVerdict.js.map +1 -0
  141. package/dist/recipes/migrations/index.d.ts +9 -0
  142. package/dist/recipes/migrations/index.js +133 -0
  143. package/dist/recipes/migrations/index.js.map +1 -1
  144. package/dist/recipes/parser.js +82 -4
  145. package/dist/recipes/parser.js.map +1 -1
  146. package/dist/recipes/runBudget.d.ts +70 -0
  147. package/dist/recipes/runBudget.js +109 -0
  148. package/dist/recipes/runBudget.js.map +1 -0
  149. package/dist/recipes/scheduler.d.ts +17 -0
  150. package/dist/recipes/scheduler.js +34 -2
  151. package/dist/recipes/scheduler.js.map +1 -1
  152. package/dist/recipes/schema.d.ts +30 -0
  153. package/dist/recipes/toolRegistry.js +19 -0
  154. package/dist/recipes/toolRegistry.js.map +1 -1
  155. package/dist/recipes/tools/http.d.ts +10 -0
  156. package/dist/recipes/tools/http.js +176 -0
  157. package/dist/recipes/tools/http.js.map +1 -0
  158. package/dist/recipes/tools/index.d.ts +1 -0
  159. package/dist/recipes/tools/index.js +1 -0
  160. package/dist/recipes/tools/index.js.map +1 -1
  161. package/dist/recipes/validation.js +1 -1
  162. package/dist/recipes/validation.js.map +1 -1
  163. package/dist/recipes/yamlRunner.d.ts +75 -8
  164. package/dist/recipes/yamlRunner.js +174 -28
  165. package/dist/recipes/yamlRunner.js.map +1 -1
  166. package/dist/resources.js +21 -13
  167. package/dist/resources.js.map +1 -1
  168. package/dist/runLog.d.ts +28 -0
  169. package/dist/runLog.js +19 -3
  170. package/dist/runLog.js.map +1 -1
  171. package/dist/sanitizeParsedJson.d.ts +39 -0
  172. package/dist/sanitizeParsedJson.js +55 -0
  173. package/dist/sanitizeParsedJson.js.map +1 -0
  174. package/dist/server.d.ts +79 -0
  175. package/dist/server.js +356 -3
  176. package/dist/server.js.map +1 -1
  177. package/dist/sessionCheckpoint.d.ts +8 -0
  178. package/dist/sessionCheckpoint.js +18 -2
  179. package/dist/sessionCheckpoint.js.map +1 -1
  180. package/dist/streamableHttp.js +17 -6
  181. package/dist/streamableHttp.js.map +1 -1
  182. package/dist/tools/bridgeDoctor.js +6 -2
  183. package/dist/tools/bridgeDoctor.js.map +1 -1
  184. package/dist/tools/detectUnusedCode.js +9 -7
  185. package/dist/tools/detectUnusedCode.js.map +1 -1
  186. package/dist/tools/editText.js +2 -1
  187. package/dist/tools/editText.js.map +1 -1
  188. package/dist/tools/fileOperations.js +2 -1
  189. package/dist/tools/fileOperations.js.map +1 -1
  190. package/dist/tools/fileWatcher.js +8 -2
  191. package/dist/tools/fileWatcher.js.map +1 -1
  192. package/dist/tools/fixAllLintErrors.js +10 -5
  193. package/dist/tools/fixAllLintErrors.js.map +1 -1
  194. package/dist/tools/formatDocument.js +10 -5
  195. package/dist/tools/formatDocument.js.map +1 -1
  196. package/dist/tools/getCodeCoverage.js +7 -3
  197. package/dist/tools/getCodeCoverage.js.map +1 -1
  198. package/dist/tools/handoffNote.js +2 -1
  199. package/dist/tools/handoffNote.js.map +1 -1
  200. package/dist/tools/headless/lspClient.js +3 -0
  201. package/dist/tools/headless/lspClient.js.map +1 -1
  202. package/dist/tools/lsp.js +17 -0
  203. package/dist/tools/lsp.js.map +1 -1
  204. package/dist/tools/openDiff.js +4 -1
  205. package/dist/tools/openDiff.js.map +1 -1
  206. package/dist/tools/openFile.js +4 -1
  207. package/dist/tools/openFile.js.map +1 -1
  208. package/dist/tools/organizeImports.js +5 -3
  209. package/dist/tools/organizeImports.js.map +1 -1
  210. package/dist/tools/previewEdit.js +7 -2
  211. package/dist/tools/previewEdit.js.map +1 -1
  212. package/dist/tools/recentTracesDigest.js +56 -11
  213. package/dist/tools/recentTracesDigest.js.map +1 -1
  214. package/dist/tools/refactorExtractFunction.js +4 -1
  215. package/dist/tools/refactorExtractFunction.js.map +1 -1
  216. package/dist/tools/refactorPreview.js +10 -2
  217. package/dist/tools/refactorPreview.js.map +1 -1
  218. package/dist/tools/replaceBlock.js +2 -1
  219. package/dist/tools/replaceBlock.js.map +1 -1
  220. package/dist/tools/searchAndReplace.js +2 -1
  221. package/dist/tools/searchAndReplace.js.map +1 -1
  222. package/dist/tools/spawnWorkspace.js +15 -7
  223. package/dist/tools/spawnWorkspace.js.map +1 -1
  224. package/dist/tools/testRunners/vitestJest.js +3 -1
  225. package/dist/tools/testRunners/vitestJest.js.map +1 -1
  226. package/dist/tools/transaction.js +4 -1
  227. package/dist/tools/transaction.js.map +1 -1
  228. package/dist/tools/utils.js +68 -8
  229. package/dist/tools/utils.js.map +1 -1
  230. package/dist/transport.d.ts +1 -1
  231. package/dist/transport.js +18 -4
  232. package/dist/transport.js.map +1 -1
  233. package/dist/winShim.d.ts +34 -0
  234. package/dist/winShim.js +94 -0
  235. package/dist/winShim.js.map +1 -0
  236. package/dist/writeFileAtomic.d.ts +23 -0
  237. package/dist/writeFileAtomic.js +94 -0
  238. package/dist/writeFileAtomic.js.map +1 -0
  239. package/package.json +17 -6
  240. package/scripts/postinstall.mjs +42 -2
  241. package/scripts/smoke/run-all.mjs +213 -0
  242. package/scripts/start-all.mjs +572 -0
  243. package/scripts/start-all.ps1 +209 -0
  244. package/scripts/start-all.sh +73 -17
  245. package/scripts/start-orchestrator.ps1 +158 -0
  246. package/scripts/start-remote.mjs +122 -0
  247. package/templates/automation-policies/recipe-authoring.json +1 -1
  248. package/templates/automation-policies/security-first.json +1 -1
  249. package/templates/automation-policies/strict-lint.json +1 -1
  250. package/templates/automation-policies/test-driven.json +1 -1
  251. package/templates/automation-policy.example.json +1 -1
  252. package/templates/co.patchwork-os.bridge.plist +1 -1
  253. package/templates/recipes/approval-queue-ui-test.yaml +1 -1
  254. package/templates/recipes/ctx-loop-test.yaml +1 -1
  255. package/templates/recipes/webhook/apple-watch-health-log.yaml +145 -0
  256. package/dist/commands/marketplace.d.ts +0 -16
  257. package/dist/commands/marketplace.js +0 -32
  258. package/dist/commands/marketplace.js.map +0 -1
  259. package/dist/recipes/legacyRecipeCompat.d.ts +0 -10
  260. package/dist/recipes/legacyRecipeCompat.js +0 -131
  261. package/dist/recipes/legacyRecipeCompat.js.map +0 -1
package/dist/transport.js CHANGED
@@ -892,7 +892,14 @@ export class McpTransport {
892
892
  safeSend(this.activeWs, JSON.stringify(dynErrResponse), this.logger);
893
893
  }
894
894
  finally {
895
- this.activeToolCalls--;
895
+ // Generation guard: detach() resets activeToolCalls to 0 on
896
+ // disconnect, so decrementing on the new generation would
897
+ // skew the admission counter negative and silently raise the
898
+ // effective MAX_CONCURRENT_TOOLS cap. Mirror the clamp used
899
+ // by the non-dynamic path at line 1478.
900
+ if (dynGen === this.generation) {
901
+ this.activeToolCalls = Math.max(0, this.activeToolCalls - 1);
902
+ }
896
903
  }
897
904
  });
898
905
  break;
@@ -1056,8 +1063,13 @@ export class McpTransport {
1056
1063
  params: toolArgs,
1057
1064
  sessionId: this.sessionId,
1058
1065
  });
1059
- if (decision === "rejected" || decision === "expired") {
1060
- this.activeToolCalls--;
1066
+ if (decision === "rejected" ||
1067
+ decision === "expired" ||
1068
+ decision === "cancelled") {
1069
+ // Clamp: detach() may have reset activeToolCalls to 0 if
1070
+ // the WS dropped mid-approval. See line 1478 for the
1071
+ // matching pattern on the resolved-tool path.
1072
+ this.activeToolCalls = Math.max(0, this.activeToolCalls - 1);
1061
1073
  this.inFlightToolNames.delete(msg.id);
1062
1074
  this.inFlightControllers.delete(msg.id);
1063
1075
  // Approval rejections/expiries are NOT tool failures — track
@@ -1078,7 +1090,9 @@ export class McpTransport {
1078
1090
  type: "text",
1079
1091
  text: decision === "rejected"
1080
1092
  ? `Tool call "${params.name}" rejected by human reviewer via Patchwork dashboard.`
1081
- : `Tool call "${params.name}" expired without human decision (no action taken).`,
1093
+ : decision === "cancelled"
1094
+ ? `Tool call "${params.name}" cancelled before a human decision was made (originating client abandoned the request).`
1095
+ : `Tool call "${params.name}" expired without human decision (no action taken).`,
1082
1096
  },
1083
1097
  ],
1084
1098
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Resolve a binary name to its `.cmd` shim on Windows when needed.
3
+ *
4
+ * npm-installed binaries on Windows are `.cmd` files in `node_modules/.bin/`
5
+ * (or under `%APPDATA%\npm` for `-g` installs). Node's `child_process.spawn`
6
+ * with `shell:false` does NOT auto-resolve `.cmd` shims — only `.exe` via
7
+ * `PATHEXT`. Calling `spawn("claude", …)` on Windows therefore ENOENTs even
8
+ * though `claude --version` works fine in any terminal.
9
+ *
10
+ * This helper appends `.cmd` to bare binary names on win32, leaving:
11
+ * - absolute / relative paths (anything with a separator) alone
12
+ * - names that already have an extension alone
13
+ * - non-Windows platforms untouched
14
+ *
15
+ * This was the fix pattern established in PR #525 for the Claude subprocess
16
+ * driver; centralising it here keeps the four other spawn sites consistent.
17
+ *
18
+ * Also used when *writing* an MCP stdio config that another process will
19
+ * spawn — that spawning process inherits the same shell:false limitation,
20
+ * so the config must record the `.cmd` form on Windows.
21
+ */
22
+ export declare function ensureCmdShim(binary: string): string;
23
+ /**
24
+ * Conservative variant of `ensureCmdShim`: only appends `.cmd` when the
25
+ * binary is in {@link KNOWN_CMD_SHIMS}. Use this from generic helpers like
26
+ * `execSafe` that receive arbitrary binary names from many call sites —
27
+ * blindly wrapping every bare name would turn working `spawn("git")` into
28
+ * broken `spawn("git.cmd")`.
29
+ *
30
+ * Same boilerplate as `ensureCmdShim` (no-op on non-Win, leaves explicit
31
+ * paths and pre-extended names alone). Differs only in the final wrap
32
+ * decision.
33
+ */
34
+ export declare function ensureCmdShimIfKnown(binary: string): string;
@@ -0,0 +1,94 @@
1
+ import path from "node:path";
2
+ /**
3
+ * Resolve a binary name to its `.cmd` shim on Windows when needed.
4
+ *
5
+ * npm-installed binaries on Windows are `.cmd` files in `node_modules/.bin/`
6
+ * (or under `%APPDATA%\npm` for `-g` installs). Node's `child_process.spawn`
7
+ * with `shell:false` does NOT auto-resolve `.cmd` shims — only `.exe` via
8
+ * `PATHEXT`. Calling `spawn("claude", …)` on Windows therefore ENOENTs even
9
+ * though `claude --version` works fine in any terminal.
10
+ *
11
+ * This helper appends `.cmd` to bare binary names on win32, leaving:
12
+ * - absolute / relative paths (anything with a separator) alone
13
+ * - names that already have an extension alone
14
+ * - non-Windows platforms untouched
15
+ *
16
+ * This was the fix pattern established in PR #525 for the Claude subprocess
17
+ * driver; centralising it here keeps the four other spawn sites consistent.
18
+ *
19
+ * Also used when *writing* an MCP stdio config that another process will
20
+ * spawn — that spawning process inherits the same shell:false limitation,
21
+ * so the config must record the `.cmd` form on Windows.
22
+ */
23
+ export function ensureCmdShim(binary) {
24
+ if (process.platform !== "win32")
25
+ return binary;
26
+ // Use path.win32 explicitly so the check behaves identically when tests
27
+ // mock process.platform on a POSIX host (where path.sep would still be '/').
28
+ if (path.win32.extname(binary))
29
+ return binary;
30
+ if (binary.includes("\\") || binary.includes("/"))
31
+ return binary;
32
+ return `${binary}.cmd`;
33
+ }
34
+ /**
35
+ * Binaries that ship as `.cmd` shims on Windows when npm-installed (or via
36
+ * the standard VS Code / Cursor / Windsurf installers for the editor CLIs).
37
+ *
38
+ * Conservative by design — only names that are dependably `.cmd` on Windows
39
+ * across the common install paths. Anything ambiguous (`rg`, `fd`, `jq`,
40
+ * `python`, `node`) is omitted so we don't break `spawn("git")` style
41
+ * callers — Windows' PATHEXT auto-resolves `.exe` for those.
42
+ *
43
+ * Add to this set only after confirming the binary really is a `.cmd` shim
44
+ * in every realistic install path; a wrong inclusion turns working `.exe`
45
+ * spawns into ENOENT.
46
+ */
47
+ const KNOWN_CMD_SHIMS = new Set([
48
+ // Package managers — always `.cmd` from any install path
49
+ "npm",
50
+ "npx",
51
+ "yarn",
52
+ "pnpm",
53
+ // npm-installed dev tools — bin entries land as `.cmd` shims
54
+ "tsc",
55
+ "eslint",
56
+ "biome",
57
+ "prettier",
58
+ "ruff",
59
+ "black",
60
+ "ts-prune",
61
+ // Patchwork OS / Claude orchestration — npm-installed
62
+ "claude",
63
+ "claude-ide-bridge",
64
+ "gemini",
65
+ "code-server",
66
+ // VS Code-family editor CLIs — `.cmd` shims from the official installers
67
+ "code",
68
+ "code-insiders",
69
+ "cursor",
70
+ "windsurf",
71
+ ]);
72
+ /**
73
+ * Conservative variant of `ensureCmdShim`: only appends `.cmd` when the
74
+ * binary is in {@link KNOWN_CMD_SHIMS}. Use this from generic helpers like
75
+ * `execSafe` that receive arbitrary binary names from many call sites —
76
+ * blindly wrapping every bare name would turn working `spawn("git")` into
77
+ * broken `spawn("git.cmd")`.
78
+ *
79
+ * Same boilerplate as `ensureCmdShim` (no-op on non-Win, leaves explicit
80
+ * paths and pre-extended names alone). Differs only in the final wrap
81
+ * decision.
82
+ */
83
+ export function ensureCmdShimIfKnown(binary) {
84
+ if (process.platform !== "win32")
85
+ return binary;
86
+ if (path.win32.extname(binary))
87
+ return binary;
88
+ if (binary.includes("\\") || binary.includes("/"))
89
+ return binary;
90
+ if (!KNOWN_CMD_SHIMS.has(binary))
91
+ return binary;
92
+ return `${binary}.cmd`;
93
+ }
94
+ //# sourceMappingURL=winShim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"winShim.js","sourceRoot":"","sources":["../src/winShim.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IAC1C,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAChD,wEAAwE;IACxE,6EAA6E;IAC7E,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACjE,OAAO,GAAG,MAAM,MAAM,CAAC;AACzB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,eAAe,GAAwB,IAAI,GAAG,CAAC;IACnD,yDAAyD;IACzD,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,6DAA6D;IAC7D,KAAK;IACL,QAAQ;IACR,OAAO;IACP,UAAU;IACV,MAAM;IACN,OAAO;IACP,UAAU;IACV,sDAAsD;IACtD,QAAQ;IACR,mBAAmB;IACnB,QAAQ;IACR,aAAa;IACb,yEAAyE;IACzE,MAAM;IACN,eAAe;IACf,QAAQ;IACR,UAAU;CACX,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC;IAChD,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACjE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAChD,OAAO,GAAG,MAAM,MAAM,CAAC;AACzB,CAAC"}
@@ -0,0 +1,23 @@
1
+ export type WriteFileAtomicData = string | NodeJS.ArrayBufferView;
2
+ export interface WriteFileAtomicOptions {
3
+ /** Mode for the final file. Default: 0o644. */
4
+ mode?: number;
5
+ /** Encoding when `data` is a string. Default: utf-8. */
6
+ encoding?: BufferEncoding;
7
+ /**
8
+ * Optional cancellation signal — async variant only. Aborts the
9
+ * underlying `fs.promises.writeFile`; if abort fires after the
10
+ * write completes but before the rename, the target is left
11
+ * unchanged and the temp file is cleaned up.
12
+ */
13
+ signal?: AbortSignal;
14
+ }
15
+ /**
16
+ * Synchronous atomic write. Throws on failure. Best-effort temp cleanup.
17
+ */
18
+ export declare function writeFileAtomicSync(target: string, data: WriteFileAtomicData, opts?: WriteFileAtomicOptions): void;
19
+ /**
20
+ * Async atomic write. Returns a Promise; rejects on failure. Best-effort
21
+ * temp cleanup. Uses `fs.promises` end-to-end.
22
+ */
23
+ export declare function writeFileAtomic(target: string, data: WriteFileAtomicData, opts?: WriteFileAtomicOptions): Promise<void>;
@@ -0,0 +1,94 @@
1
+ import crypto from "node:crypto";
2
+ import fs from "node:fs";
3
+ /**
4
+ * Atomic file-write helpers — write to a sibling temp file, then `rename`
5
+ * into the target path. A crash mid-write leaves only the orphan temp
6
+ * file; the target is either the old content or the new content, never
7
+ * truncated.
8
+ *
9
+ * Why a shared helper?
10
+ * The recipe-runner / approval / token-storage paths already use this
11
+ * shape ad-hoc (see runLog.ts, decisionTraceLog.ts, activationMetrics.ts,
12
+ * connectors/tokenStorage.ts). The user-source-file edit tools
13
+ * (`editText`, `replaceBlock`, `searchAndReplace`, `transaction`,
14
+ * `refactorExtractFunction`, `fileOperations` overwrite) were doing
15
+ * direct `writeFile`/`writeFileSync` — a crash mid-write corrupts the
16
+ * user's code. Audit 2026-05-17.
17
+ *
18
+ * Temp-name shape: `${target}.tmp.${pid}.${rand}` — pid + 12 random hex
19
+ * chars so concurrent writes to the same target don't collide on their
20
+ * temp files (the rename is single-threaded at the kernel level; the
21
+ * collision risk is the temp file, not the final state).
22
+ *
23
+ * Cleanup on failure: if `writeFile` succeeds but `rename` fails, we
24
+ * best-effort `unlink` the temp file before re-throwing. If `writeFile`
25
+ * itself fails the temp file may not exist; we ignore unlink errors in
26
+ * both cases.
27
+ *
28
+ * NOT a `fsync` guarantee: Node's `writeFile`/`writeFileSync` does not
29
+ * fsync the file before close, and `rename`/`renameSync` does not fsync
30
+ * the parent dir. On `ext4` data=ordered and `apfs` this is fine in
31
+ * practice — the rename can't make the new contents visible until the
32
+ * data write hits the journal. On power-loss this guarantee weakens;
33
+ * accept that as a separate hardening pass.
34
+ */
35
+ function tempPathFor(target) {
36
+ const rand = crypto.randomBytes(6).toString("hex");
37
+ return `${target}.tmp.${process.pid}.${rand}`;
38
+ }
39
+ /**
40
+ * Synchronous atomic write. Throws on failure. Best-effort temp cleanup.
41
+ */
42
+ export function writeFileAtomicSync(target, data, opts = {}) {
43
+ const tmp = tempPathFor(target);
44
+ const mode = opts.mode ?? 0o644;
45
+ try {
46
+ if (typeof data === "string") {
47
+ fs.writeFileSync(tmp, data, { mode, encoding: opts.encoding ?? "utf-8" });
48
+ }
49
+ else {
50
+ fs.writeFileSync(tmp, data, { mode });
51
+ }
52
+ fs.renameSync(tmp, target);
53
+ }
54
+ catch (err) {
55
+ try {
56
+ fs.unlinkSync(tmp);
57
+ }
58
+ catch {
59
+ // already gone or never created
60
+ }
61
+ throw err;
62
+ }
63
+ }
64
+ /**
65
+ * Async atomic write. Returns a Promise; rejects on failure. Best-effort
66
+ * temp cleanup. Uses `fs.promises` end-to-end.
67
+ */
68
+ export async function writeFileAtomic(target, data, opts = {}) {
69
+ const tmp = tempPathFor(target);
70
+ const mode = opts.mode ?? 0o644;
71
+ try {
72
+ if (typeof data === "string") {
73
+ await fs.promises.writeFile(tmp, data, {
74
+ mode,
75
+ encoding: opts.encoding ?? "utf-8",
76
+ signal: opts.signal,
77
+ });
78
+ }
79
+ else {
80
+ await fs.promises.writeFile(tmp, data, { mode, signal: opts.signal });
81
+ }
82
+ await fs.promises.rename(tmp, target);
83
+ }
84
+ catch (err) {
85
+ try {
86
+ await fs.promises.unlink(tmp);
87
+ }
88
+ catch {
89
+ // already gone or never created
90
+ }
91
+ throw err;
92
+ }
93
+ }
94
+ //# sourceMappingURL=writeFileAtomic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"writeFileAtomic.js","sourceRoot":"","sources":["../src/writeFileAtomic.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,SAAS,WAAW,CAAC,MAAc;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,OAAO,GAAG,MAAM,QAAQ,OAAO,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;AAChD,CAAC;AAkBD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,IAAyB,EACzB,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;IAChC,IAAI,CAAC;QACH,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAE,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,CAAC;QACD,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC7B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,IAAyB,EACzB,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC;IAChC,IAAI,CAAC;QACH,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE;gBACrC,IAAI;gBACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO;gBAClC,MAAM,EAAE,IAAI,CAAC,MAAM;aACpB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "patchwork-os",
3
- "version": "0.2.0-beta.2",
4
- "description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory \u2014 all on your machine, all under your policy.",
3
+ "version": "0.2.0-beta.4",
4
+ "description": "Your personal AI runtime, local-first. Patchwork OS gives any AI model a consistent set of tools, YAML recipes, a delegation policy with approval queue, and a durable trace memory all on your machine, all under your policy.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",
@@ -62,14 +62,19 @@
62
62
  "!dist/__tests__",
63
63
  "!dist/**/__tests__",
64
64
  "scripts/start-all.sh",
65
+ "scripts/start-all.mjs",
66
+ "scripts/start-all.ps1",
65
67
  "scripts/start-orchestrator.sh",
68
+ "scripts/start-orchestrator.ps1",
66
69
  "scripts/start-remote.sh",
70
+ "scripts/start-remote.mjs",
67
71
  "scripts/install-extension.sh",
68
72
  "scripts/gen-mcp-config.sh",
69
73
  "scripts/mcp-stdio-shim.cjs",
70
74
  "scripts/postinstall.mjs",
71
75
  "scripts/start-vps.sh",
72
76
  "scripts/gen-claude-desktop-config.sh",
77
+ "scripts/smoke/run-all.mjs",
73
78
  "templates",
74
79
  "deploy",
75
80
  "LICENSE",
@@ -83,7 +88,8 @@
83
88
  "dev": "tsx src/index.ts",
84
89
  "start": "node dist/index.js",
85
90
  "test": "vitest run",
86
- "test:smoke": "bash scripts/smoke/run-all.sh",
91
+ "test:smoke": "node scripts/smoke/run-all.mjs",
92
+ "test:smoke:bash": "bash scripts/smoke/run-all.sh",
87
93
  "test:smoke:dashboard": "node scripts/smoke/dashboard-walk.mjs",
88
94
  "schema:generate": "node scripts/generate-schemas.mjs",
89
95
  "schema:check": "node scripts/audit-schema-changes.mjs",
@@ -97,20 +103,25 @@
97
103
  "typecheck:tests": "tsc --noEmit -p tsconfig.tests.json",
98
104
  "typecheck:tests:core": "tsc --noEmit -p tsconfig.tests.core.json",
99
105
  "postinstall": "node scripts/postinstall.mjs || true",
100
- "prepublishOnly": "npm run build && node dist/index.js --help | grep -q issuer-url && node scripts/publish-schemas.mjs",
106
+ "prepublishOnly": "npm run build && node -e \"const h=require('child_process').execFileSync('node',['dist/index.js','--workspace','.','--help'],{encoding:'utf8'});if(!h.includes('issuer-url'))process.exit(1)\" && node scripts/publish-schemas.mjs",
101
107
  "smoke": "node smoke-test-v2.mjs",
102
108
  "remote": "bash scripts/start-remote.sh",
109
+ "remote:node": "node scripts/start-remote.mjs",
103
110
  "vps": "bash scripts/start-vps.sh",
104
111
  "vps:stop": "bash scripts/start-vps.sh --stop",
105
112
  "start-all": "bash scripts/start-all.sh",
113
+ "start-all:node": "node scripts/start-all.mjs",
114
+ "start-all:win": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/start-all.ps1",
106
115
  "start-orchestrator": "bash scripts/start-orchestrator.sh",
107
- "start:automation": "claude-ide-bridge --workspace . --automation --automation-policy automation-policy.json --claude-driver subprocess --full",
116
+ "start-orchestrator:win": "powershell -NoProfile -ExecutionPolicy Bypass -File scripts/start-orchestrator.ps1",
117
+ "start:bridge": "node dist/index.js --workspace .",
118
+ "start:automation": "claude-ide-bridge --workspace . --automation --automation-policy automation-policy.json --driver subprocess --full",
108
119
  "prepare": "husky"
109
120
  },
110
121
  "dependencies": {
111
122
  "@opentelemetry/api": "^1.9.0",
112
123
  "@opentelemetry/exporter-trace-otlp-http": "^0.213.0",
113
- "@opentelemetry/sdk-node": "^0.213.0",
124
+ "@opentelemetry/sdk-node": "^0.218.0",
114
125
  "@opentelemetry/semantic-conventions": "^1.40.0",
115
126
  "ajv": "^8.18.0",
116
127
  "ipaddr.js": "^2.3.0",
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env node
2
+
2
3
  /**
3
4
  * postinstall.mjs — wire up optional local binaries into node_modules/.bin
4
5
  * so that probeAll() can discover them via the standard local-bin lookup.
@@ -7,8 +8,10 @@
7
8
  * @vscode/ripgrep → node_modules/.bin/rg
8
9
  */
9
10
 
11
+ import { execFileSync } from "node:child_process";
10
12
  import {
11
13
  chmodSync,
14
+ copyFileSync,
12
15
  existsSync,
13
16
  mkdirSync,
14
17
  symlinkSync,
@@ -49,8 +52,19 @@ function linkBin(pkgName, binaryName, linkName = binaryName) {
49
52
  if (existsSync(dest)) {
50
53
  unlinkSync(dest);
51
54
  }
52
- symlinkSync(src, dest);
53
- console.log(` linked ${linkName} → ${path.relative(root, src)}`);
55
+ try {
56
+ symlinkSync(src, dest);
57
+ console.log(` linked ${linkName} → ${path.relative(root, src)}`);
58
+ } catch (err) {
59
+ // Windows non-admin users can't create symlinks without Developer Mode.
60
+ // Fall back to a copy so the binary is still discoverable.
61
+ if (process.platform === "win32") {
62
+ copyFileSync(src, dest);
63
+ console.log(` copied ${linkName} → ${path.relative(root, src)}`);
64
+ } else {
65
+ throw err;
66
+ }
67
+ }
54
68
  } catch {
55
69
  // Package not installed — silently skip
56
70
  }
@@ -65,4 +79,30 @@ try {
65
79
 
66
80
  console.log("[postinstall] Linking optional local binaries...");
67
81
  linkBin("@vscode/ripgrep", "rg");
82
+
83
+ // Auto-install dashboard dependencies on first global install
84
+ const dashboardDir = fileURLToPath(new URL("../dashboard", import.meta.url));
85
+ if (
86
+ existsSync(dashboardDir) &&
87
+ !existsSync(path.join(dashboardDir, "node_modules"))
88
+ ) {
89
+ console.log(
90
+ "[postinstall] Installing dashboard dependencies (first-time setup)...",
91
+ );
92
+ try {
93
+ // Use execFileSync instead of execSync to avoid shell invocation
94
+ const npmCmd = process.platform === "win32" ? "npm.cmd" : "npm";
95
+ execFileSync(npmCmd, ["install", "--prefer-offline"], {
96
+ cwd: dashboardDir,
97
+ stdio: "inherit",
98
+ });
99
+ console.log("[postinstall] Dashboard dependencies installed.");
100
+ } catch {
101
+ console.warn(
102
+ "[postinstall] Warning: could not install dashboard dependencies automatically.",
103
+ );
104
+ console.warn(` Run manually: cd ${dashboardDir} && npm install`);
105
+ }
106
+ }
107
+
68
108
  console.log("[postinstall] Done.");