@the-open-engine/zeroshot 6.38.1 → 6.39.1

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 (383) hide show
  1. package/README.md +6 -0
  2. package/cli/event-copy.js +8 -7
  3. package/cli/event-copy.ts +12 -0
  4. package/cli/index.js +67 -48
  5. package/cli/json-export.js +61 -64
  6. package/cli/json-export.ts +112 -0
  7. package/cli/message-formatter-utils.js +68 -56
  8. package/cli/message-formatter-utils.ts +121 -0
  9. package/cli/message-formatters-normal.js +124 -259
  10. package/cli/message-formatters-normal.ts +250 -0
  11. package/cli/message-formatters-watch.js +81 -84
  12. package/cli/message-formatters-watch.ts +189 -0
  13. package/lib/cluster/generated/protocol-schema.cjs +1 -1
  14. package/lib/cluster/generated/protocol-schema.mjs +1 -1
  15. package/lib/cluster/generated/protocol.d.cts +8 -0
  16. package/lib/cluster/generated/protocol.d.mts +8 -0
  17. package/lib/cluster/generated/protocol.d.ts +8 -0
  18. package/lib/clusters-registry.d.ts +23 -0
  19. package/lib/clusters-registry.js +17 -29
  20. package/lib/completion.d.ts +12 -0
  21. package/lib/completion.js +84 -94
  22. package/lib/compose-utils.d.ts +32 -0
  23. package/lib/compose-utils.js +57 -72
  24. package/lib/detached-startup.d.ts +84 -0
  25. package/lib/detached-startup.js +232 -302
  26. package/lib/docker-config.d.ts +43 -0
  27. package/lib/docker-config.js +150 -325
  28. package/lib/docker-env-auth.d.ts +17 -0
  29. package/lib/docker-env-auth.js +75 -0
  30. package/lib/git-remote-utils.d.ts +48 -0
  31. package/lib/git-remote-utils.js +147 -213
  32. package/lib/id-detector.d.ts +15 -0
  33. package/lib/id-detector.js +37 -41
  34. package/lib/path-check.d.ts +30 -0
  35. package/lib/path-check.js +42 -45
  36. package/lib/process-liveness.d.ts +16 -0
  37. package/lib/process-liveness.js +19 -12
  38. package/lib/provider-credential-path.d.ts +16 -0
  39. package/lib/provider-credential-path.js +31 -29
  40. package/lib/provider-defaults.d.ts +30 -0
  41. package/lib/provider-defaults.js +47 -42
  42. package/lib/provider-detection.d.ts +11 -0
  43. package/lib/provider-detection.js +91 -54
  44. package/lib/provider-names.d.ts +38 -0
  45. package/lib/provider-names.js +56 -64
  46. package/lib/repo-settings.d.ts +28 -0
  47. package/lib/repo-settings.js +83 -59
  48. package/lib/run-mode.d.ts +21 -0
  49. package/lib/run-mode.js +21 -20
  50. package/lib/run-plan.d.ts +28 -0
  51. package/lib/run-plan.js +17 -16
  52. package/lib/settings/claude-auth.d.ts +35 -0
  53. package/lib/settings/claude-auth.js +30 -47
  54. package/lib/settings-defaults.d.ts +20 -0
  55. package/lib/settings-defaults.js +149 -0
  56. package/lib/settings-error.d.ts +7 -0
  57. package/lib/settings-error.js +8 -0
  58. package/lib/settings-issue-providers.d.ts +10 -0
  59. package/lib/settings-issue-providers.js +12 -0
  60. package/lib/settings-models.d.ts +22 -0
  61. package/lib/settings-models.js +93 -0
  62. package/lib/settings-storage.d.ts +23 -0
  63. package/lib/settings-storage.js +205 -0
  64. package/lib/settings-validation.d.ts +7 -0
  65. package/lib/settings-validation.js +182 -0
  66. package/lib/settings.d.ts +29 -0
  67. package/lib/settings.js +41 -736
  68. package/lib/setup-apply-types.d.ts +66 -0
  69. package/lib/setup-apply-types.js +2 -0
  70. package/lib/setup-apply.d.ts +39 -0
  71. package/lib/setup-apply.js +267 -264
  72. package/lib/setup-journal.d.ts +41 -0
  73. package/lib/setup-journal.js +119 -76
  74. package/lib/setup-plan-types.d.ts +102 -0
  75. package/lib/setup-plan-types.js +2 -0
  76. package/lib/setup-plan.d.ts +30 -0
  77. package/lib/setup-plan.js +300 -324
  78. package/lib/setup-undo.d.ts +44 -0
  79. package/lib/setup-undo.js +61 -74
  80. package/lib/start-cluster-config.d.ts +26 -0
  81. package/lib/start-cluster-config.js +56 -0
  82. package/lib/start-cluster-environment.d.ts +41 -0
  83. package/lib/start-cluster-environment.js +134 -0
  84. package/lib/start-cluster-run-options.d.ts +54 -0
  85. package/lib/start-cluster-run-options.js +148 -0
  86. package/lib/start-cluster.d.ts +64 -0
  87. package/lib/start-cluster.js +98 -454
  88. package/lib/stream-json-parser.d.ts +17 -0
  89. package/lib/stream-json-parser.js +51 -52
  90. package/npm-shrinkwrap.json +6 -8
  91. package/package.json +14 -8
  92. package/scripts/postinstall.js +27 -0
  93. package/scripts/rust-distribution.js +36 -45
  94. package/src/agent/agent-command-proofs-context.js +35 -45
  95. package/src/agent/agent-command-proofs-context.ts +87 -0
  96. package/src/agent/agent-config-settings.js +19 -0
  97. package/src/agent/agent-config-settings.ts +41 -0
  98. package/src/agent/agent-config.js +122 -231
  99. package/src/agent/agent-config.ts +285 -0
  100. package/src/agent/agent-context-builder.js +38 -273
  101. package/src/agent/agent-context-builder.ts +51 -0
  102. package/src/agent/agent-context-environment-sections.js +105 -0
  103. package/src/agent/agent-context-environment-sections.ts +134 -0
  104. package/src/agent/agent-context-packs.js +165 -0
  105. package/src/agent/agent-context-packs.ts +296 -0
  106. package/src/agent/agent-context-prompt-sections.js +100 -0
  107. package/src/agent/agent-context-prompt-sections.ts +148 -0
  108. package/src/agent/agent-context-sections.js +25 -334
  109. package/src/agent/agent-context-sections.ts +36 -0
  110. package/src/agent/agent-context-sources.js +96 -149
  111. package/src/agent/agent-context-sources.ts +253 -0
  112. package/src/agent/agent-context-types.js +2 -0
  113. package/src/agent/agent-context-types.ts +132 -0
  114. package/src/agent/agent-context-validation-sections.js +73 -0
  115. package/src/agent/agent-context-validation-sections.ts +129 -0
  116. package/src/agent/agent-input-injector.js +99 -118
  117. package/src/agent/agent-input-injector.ts +195 -0
  118. package/src/agent/agent-liveness-poll.js +74 -78
  119. package/src/agent/agent-liveness-poll.ts +163 -0
  120. package/src/agent/agent-quality-gate-schema.js +77 -86
  121. package/src/agent/agent-quality-gate-schema.ts +135 -0
  122. package/src/agent/agent-quality-gates-context.js +44 -50
  123. package/src/agent/agent-quality-gates-context.ts +91 -0
  124. package/src/agent/agent-stuck-detector.js +171 -239
  125. package/src/agent/agent-stuck-detector.ts +288 -0
  126. package/src/agent/agent-trigger-evaluator.js +29 -46
  127. package/src/agent/agent-trigger-evaluator.ts +98 -0
  128. package/src/agent/context-metrics.js +110 -141
  129. package/src/agent/context-metrics.ts +261 -0
  130. package/src/agent/context-pack-builder.js +72 -358
  131. package/src/agent/context-pack-builder.ts +105 -0
  132. package/src/agent/context-pack-core.js +70 -0
  133. package/src/agent/context-pack-core.ts +96 -0
  134. package/src/agent/context-pack-selection.js +119 -0
  135. package/src/agent/context-pack-selection.ts +187 -0
  136. package/src/agent/context-pack-truncation.js +139 -0
  137. package/src/agent/context-pack-truncation.ts +208 -0
  138. package/src/agent/context-pack-types.js +2 -0
  139. package/src/agent/context-pack-types.ts +98 -0
  140. package/src/agent/context-replay-policy.js +30 -39
  141. package/src/agent/context-replay-policy.ts +71 -0
  142. package/src/agent/critical-agent-policy.js +6 -10
  143. package/src/agent/critical-agent-policy.ts +20 -0
  144. package/src/agent/guidance-queue.js +74 -87
  145. package/src/agent/guidance-queue.ts +166 -0
  146. package/src/agent/output-extraction-error-detail.js +45 -0
  147. package/src/agent/output-extraction-error-detail.ts +49 -0
  148. package/src/agent/output-extraction-failures.js +125 -0
  149. package/src/agent/output-extraction-failures.ts +149 -0
  150. package/src/agent/output-extraction-json.js +234 -0
  151. package/src/agent/output-extraction-json.ts +235 -0
  152. package/src/agent/output-extraction-pi.js +124 -0
  153. package/src/agent/output-extraction-pi.ts +137 -0
  154. package/src/agent/output-extraction-types.js +2 -0
  155. package/src/agent/output-extraction-types.ts +49 -0
  156. package/src/agent/output-extraction.js +17 -617
  157. package/src/agent/output-extraction.ts +30 -0
  158. package/src/agent/output-reformatter-errors.js +83 -0
  159. package/src/agent/output-reformatter-errors.ts +106 -0
  160. package/src/agent/output-reformatter-types.js +2 -0
  161. package/src/agent/output-reformatter-types.ts +86 -0
  162. package/src/agent/output-reformatter.js +140 -185
  163. package/src/agent/output-reformatter.ts +238 -0
  164. package/src/agent/pi-terminal-lifecycle-types.js +2 -0
  165. package/src/agent/pi-terminal-lifecycle-types.ts +41 -0
  166. package/src/agent/pi-terminal-lifecycle.js +186 -206
  167. package/src/agent/pi-terminal-lifecycle.ts +297 -0
  168. package/src/agent/provider-control-plane.js +22 -21
  169. package/src/agent/provider-control-plane.ts +52 -0
  170. package/src/agent/provider-terminal-failure-types.js +2 -0
  171. package/src/agent/provider-terminal-failure-types.ts +60 -0
  172. package/src/agent/provider-terminal-failure.js +194 -191
  173. package/src/agent/provider-terminal-failure.ts +262 -0
  174. package/src/agent/rate-limit-backoff.js +31 -74
  175. package/src/agent/rate-limit-backoff.ts +71 -0
  176. package/src/agent/schema-utils.js +85 -125
  177. package/src/agent/schema-utils.ts +148 -0
  178. package/src/agent/structured-output-error.js +34 -33
  179. package/src/agent/structured-output-error.ts +105 -0
  180. package/src/agent/validation-platform.js +27 -27
  181. package/src/agent/validation-platform.ts +49 -0
  182. package/src/agents/git-pusher-template.js +17 -34
  183. package/src/attach/attach-client.js +232 -405
  184. package/src/attach/attach-client.ts +300 -0
  185. package/src/attach/attach-server-cleanup.js +43 -0
  186. package/src/attach/attach-server-cleanup.ts +39 -0
  187. package/src/attach/attach-server-clients.js +117 -0
  188. package/src/attach/attach-server-clients.ts +122 -0
  189. package/src/attach/attach-server-events.js +38 -0
  190. package/src/attach/attach-server-events.ts +36 -0
  191. package/src/attach/attach-server-pty.js +45 -0
  192. package/src/attach/attach-server-pty.ts +64 -0
  193. package/src/attach/attach-server-runtime.js +73 -0
  194. package/src/attach/attach-server-runtime.ts +62 -0
  195. package/src/attach/attach-server-socket.js +28 -0
  196. package/src/attach/attach-server-socket.ts +23 -0
  197. package/src/attach/attach-server-types.js +2 -0
  198. package/src/attach/attach-server-types.ts +82 -0
  199. package/src/attach/attach-server.js +106 -523
  200. package/src/attach/attach-server.ts +158 -0
  201. package/src/attach/index.js +18 -35
  202. package/src/attach/index.ts +18 -0
  203. package/src/attach/protocol.js +95 -184
  204. package/src/attach/protocol.ts +181 -0
  205. package/src/attach/ring-buffer.js +76 -102
  206. package/src/attach/ring-buffer.ts +109 -0
  207. package/src/attach/send-input.js +64 -75
  208. package/src/attach/send-input.ts +94 -0
  209. package/src/attach/socket-discovery.js +164 -218
  210. package/src/attach/socket-discovery.ts +230 -0
  211. package/src/attach/socket-paths.js +42 -61
  212. package/src/attach/socket-paths.ts +81 -0
  213. package/src/claude-credentials.js +51 -54
  214. package/src/claude-credentials.ts +89 -0
  215. package/src/cluster/generated/protocol-schema.ts +1 -1
  216. package/src/cluster/generated/protocol.ts +2 -1
  217. package/src/command-proofs.js +110 -141
  218. package/src/command-proofs.ts +216 -0
  219. package/src/config-router.js +81 -73
  220. package/src/config-router.ts +131 -0
  221. package/src/copy-containment.js +191 -0
  222. package/src/copy-containment.ts +259 -0
  223. package/src/copy-worker.js +53 -30
  224. package/src/copy-worker.ts +88 -0
  225. package/src/darwin-keychain-boundary.js +80 -111
  226. package/src/darwin-keychain-boundary.ts +148 -0
  227. package/src/guidance-topics.js +4 -5
  228. package/src/guidance-topics.ts +10 -0
  229. package/src/input-helpers.js +33 -54
  230. package/src/input-helpers.ts +58 -0
  231. package/src/isolation-manager.js +59 -20
  232. package/src/ledger-sequence.js +45 -48
  233. package/src/ledger-sequence.ts +63 -0
  234. package/src/legacy-lib/clusters-registry.ts +40 -0
  235. package/src/legacy-lib/completion.ts +148 -0
  236. package/src/legacy-lib/compose-utils.ts +102 -0
  237. package/src/legacy-lib/detached-startup.ts +451 -0
  238. package/src/legacy-lib/docker-config.ts +282 -0
  239. package/src/legacy-lib/docker-env-auth.ts +116 -0
  240. package/src/legacy-lib/git-remote-utils.ts +244 -0
  241. package/src/legacy-lib/id-detector.ts +57 -0
  242. package/src/legacy-lib/js-yaml.d.ts +3 -0
  243. package/src/legacy-lib/omelette.d.ts +15 -0
  244. package/src/legacy-lib/path-check.ts +89 -0
  245. package/src/legacy-lib/process-liveness.ts +36 -0
  246. package/src/legacy-lib/provider-credential-path.ts +57 -0
  247. package/src/legacy-lib/provider-defaults.ts +114 -0
  248. package/src/legacy-lib/provider-detection.ts +67 -0
  249. package/src/legacy-lib/provider-names.ts +126 -0
  250. package/src/legacy-lib/repo-settings.ts +88 -0
  251. package/src/legacy-lib/run-mode.ts +58 -0
  252. package/src/legacy-lib/run-plan.ts +49 -0
  253. package/src/legacy-lib/settings/claude-auth.ts +80 -0
  254. package/src/legacy-lib/settings-defaults.ts +212 -0
  255. package/src/legacy-lib/settings-error.ts +8 -0
  256. package/src/legacy-lib/settings-issue-providers.ts +18 -0
  257. package/src/legacy-lib/settings-models.ts +124 -0
  258. package/src/legacy-lib/settings-storage.ts +277 -0
  259. package/src/legacy-lib/settings-validation.ts +220 -0
  260. package/src/legacy-lib/settings.ts +87 -0
  261. package/src/legacy-lib/setup-apply-types.ts +70 -0
  262. package/src/legacy-lib/setup-apply.ts +456 -0
  263. package/src/legacy-lib/setup-journal.ts +185 -0
  264. package/src/legacy-lib/setup-plan-types.ts +96 -0
  265. package/src/legacy-lib/setup-plan.ts +500 -0
  266. package/src/legacy-lib/setup-undo.ts +142 -0
  267. package/src/legacy-lib/start-cluster-config.ts +124 -0
  268. package/src/legacy-lib/start-cluster-environment.ts +166 -0
  269. package/src/legacy-lib/start-cluster-run-options.ts +281 -0
  270. package/src/legacy-lib/start-cluster.ts +237 -0
  271. package/src/legacy-lib/stream-json-parser.ts +88 -0
  272. package/src/message-buffer.js +55 -71
  273. package/src/message-buffer.ts +107 -0
  274. package/src/message-bus-bridge.js +92 -133
  275. package/src/message-bus-bridge.ts +149 -0
  276. package/src/name-generator-shared.js +220 -0
  277. package/src/name-generator-shared.ts +231 -0
  278. package/src/name-generator.js +8 -217
  279. package/src/name-generator.ts +27 -0
  280. package/src/omp-blob-root.js +83 -64
  281. package/src/omp-blob-root.ts +116 -0
  282. package/src/omp-config-overlay.js +65 -38
  283. package/src/omp-config-overlay.ts +110 -0
  284. package/src/omp-execution-fingerprint.js +38 -43
  285. package/src/omp-execution-fingerprint.ts +92 -0
  286. package/src/omp-session-limits.js +10 -15
  287. package/src/omp-session-limits.ts +53 -0
  288. package/src/omp-session-partition.js +2 -2
  289. package/src/omp-session-verifier.js +1 -1
  290. package/src/orchestrator.js +32 -7
  291. package/src/pr-body-template.js +71 -0
  292. package/src/providers/anthropic/index.js +3 -1
  293. package/src/providers/anthropic/index.ts +13 -0
  294. package/src/providers/capabilities.js +19 -27
  295. package/src/providers/capabilities.ts +44 -0
  296. package/src/providers/google/index.js +3 -1
  297. package/src/providers/google/index.ts +13 -0
  298. package/src/providers/openai/index.js +3 -1
  299. package/src/providers/openai/index.ts +13 -0
  300. package/src/providers/opencode/index.js +3 -1
  301. package/src/providers/opencode/index.ts +13 -0
  302. package/src/quality-gates.js +67 -127
  303. package/src/quality-gates.ts +149 -0
  304. package/src/repo-settings-access.js +40 -0
  305. package/src/repo-settings-access.ts +64 -0
  306. package/src/schemas/sub-cluster.js +127 -183
  307. package/src/schemas/sub-cluster.ts +238 -0
  308. package/src/state-snapshot-normalization.js +224 -0
  309. package/src/state-snapshot-normalization.ts +222 -0
  310. package/src/state-snapshot.js +192 -359
  311. package/src/state-snapshot.ts +291 -0
  312. package/src/state-snapshotter.js +118 -130
  313. package/src/state-snapshotter.ts +167 -0
  314. package/src/sub-cluster-wrapper.js +4 -13
  315. package/src/task-run-model-args.js +87 -124
  316. package/src/task-run-model-args.ts +204 -0
  317. package/src/task-runner.js +5 -25
  318. package/src/task-runner.ts +28 -0
  319. package/src/task-startup-error.js +73 -58
  320. package/src/task-startup-error.ts +126 -0
  321. package/src/template-validation/consensus-gate-contracts.js +2 -0
  322. package/src/template-validation/consensus-gate-contracts.ts +70 -0
  323. package/src/template-validation/consensus-gate-scenarios.js +76 -0
  324. package/src/template-validation/consensus-gate-scenarios.ts +130 -0
  325. package/src/template-validation/consensus-gate-stage.js +34 -0
  326. package/src/template-validation/consensus-gate-stage.ts +56 -0
  327. package/src/template-validation/random-topology-contracts.js +2 -0
  328. package/src/template-validation/random-topology-contracts.ts +54 -0
  329. package/src/template-validation/random-topology-dispatch.js +25 -0
  330. package/src/template-validation/random-topology-dispatch.ts +33 -0
  331. package/src/template-validation/random-topology-message-loop.js +53 -0
  332. package/src/template-validation/random-topology-message-loop.ts +73 -0
  333. package/src/template-validation/random-topology-operations.js +79 -0
  334. package/src/template-validation/random-topology-operations.ts +101 -0
  335. package/src/template-validation/random-topology-runtime.js +25 -0
  336. package/src/template-validation/random-topology-runtime.ts +43 -0
  337. package/src/template-validation/random-topology-scenario.js +52 -0
  338. package/src/template-validation/random-topology-scenario.ts +57 -0
  339. package/src/template-validation/random-topology-schema.js +159 -0
  340. package/src/template-validation/random-topology-schema.ts +190 -0
  341. package/src/template-validation/random-topology-state.js +28 -0
  342. package/src/template-validation/random-topology-state.ts +30 -0
  343. package/src/template-validation/random-topology-trigger-evaluation.js +45 -0
  344. package/src/template-validation/random-topology-trigger-evaluation.ts +65 -0
  345. package/src/template-validation/random-topology-trigger.js +75 -0
  346. package/src/template-validation/random-topology-trigger.ts +88 -0
  347. package/src/template-validation/report-formatter.js +40 -46
  348. package/src/template-validation/report-formatter.ts +101 -0
  349. package/src/template-validation/simulate-consensus-gates.js +111 -302
  350. package/src/template-validation/simulate-consensus-gates.ts +196 -0
  351. package/src/template-validation/simulate-random-topology.js +26 -519
  352. package/src/template-validation/simulate-random-topology.ts +57 -0
  353. package/src/template-validation/simulate-two-stage-validation.js +41 -265
  354. package/src/template-validation/simulate-two-stage-validation.ts +55 -0
  355. package/src/template-validation/simulation-agent-runtime.js +25 -0
  356. package/src/template-validation/simulation-agent-runtime.ts +40 -0
  357. package/src/template-validation/simulation-agent.js +29 -0
  358. package/src/template-validation/simulation-agent.ts +73 -0
  359. package/src/template-validation/simulation-runtime.js +34 -0
  360. package/src/template-validation/simulation-runtime.ts +72 -0
  361. package/src/template-validation/two-stage-contracts.js +2 -0
  362. package/src/template-validation/two-stage-contracts.ts +41 -0
  363. package/src/template-validation/two-stage-inputs.js +21 -0
  364. package/src/template-validation/two-stage-inputs.ts +29 -0
  365. package/src/template-validation/two-stage-results.js +30 -0
  366. package/src/template-validation/two-stage-results.ts +40 -0
  367. package/src/template-validation/two-stage-scenario.js +86 -0
  368. package/src/template-validation/two-stage-scenario.ts +120 -0
  369. package/src/worktree-claude-config.js +182 -220
  370. package/src/worktree-claude-config.ts +272 -0
  371. package/src/worktree-tooling-env.js +103 -125
  372. package/src/worktree-tooling-env.ts +142 -0
  373. package/task-lib/completion.js +2 -3
  374. package/task-lib/completion.ts +9 -0
  375. package/task-lib/config.js +1 -4
  376. package/task-lib/config.ts +11 -0
  377. package/task-lib/name-generator.js +4 -226
  378. package/task-lib/name-generator.ts +11 -0
  379. package/task-lib/omp-session-cleanup.js +1 -1
  380. package/task-lib/omp-storage-root.js +8 -12
  381. package/task-lib/omp-storage-root.ts +62 -0
  382. package/task-lib/process-termination.js +143 -166
  383. package/task-lib/process-termination.ts +268 -0
@@ -1,9 +1,6 @@
1
1
  import { join } from 'path';
2
2
  import { homedir } from 'os';
3
-
4
- const HOME_DIR =
5
- process.env.ZEROSHOT_HOME || process.env.HOME || process.env.USERPROFILE || homedir();
6
-
3
+ const HOME_DIR = process.env.ZEROSHOT_HOME || process.env.HOME || process.env.USERPROFILE || homedir();
7
4
  export const TASKS_DIR = join(HOME_DIR, '.claude-zeroshot');
8
5
  export const LOGS_DIR = join(TASKS_DIR, 'logs');
9
6
  export const SCHEDULER_PID_FILE = join(TASKS_DIR, 'scheduler.pid');
@@ -0,0 +1,11 @@
1
+ import { join } from 'path';
2
+ import { homedir } from 'os';
3
+
4
+ const HOME_DIR: string =
5
+ process.env.ZEROSHOT_HOME || process.env.HOME || process.env.USERPROFILE || homedir();
6
+
7
+ export const TASKS_DIR = join(HOME_DIR, '.claude-zeroshot');
8
+ export const LOGS_DIR = join(TASKS_DIR, 'logs');
9
+ export const SCHEDULER_PID_FILE = join(TASKS_DIR, 'scheduler.pid');
10
+ export const SCHEDULER_LOG = join(TASKS_DIR, 'scheduler.log');
11
+ export const DEFAULT_MODEL = 'sonnet';
@@ -1,230 +1,8 @@
1
- /**
2
- * Human-readable name generator (like Weights & Biases)
3
- * Generates names like "wandering-forest-42" or "bright-star-17"
4
- *
5
- * No prefix - short forms used everywhere for simplicity
6
- */
7
-
8
- const ADJECTIVES = [
9
- // Colors
10
- 'amber',
11
- 'azure',
12
- 'crimson',
13
- 'emerald',
14
- 'golden',
15
- 'indigo',
16
- 'jade',
17
- 'ruby',
18
- 'sapphire',
19
- 'silver',
20
- 'violet',
21
- 'bronze',
22
- 'coral',
23
- 'ivory',
24
- 'pearl',
25
- 'platinum',
26
- 'scarlet',
27
- 'cobalt',
28
- 'copper',
29
- 'obsidian',
30
- 'onyx',
31
- 'opal',
32
- 'topaz',
33
- 'turquoise',
34
- // Nature
35
- 'wandering',
36
- 'bright',
37
- 'silent',
38
- 'ancient',
39
- 'swift',
40
- 'noble',
41
- 'bold',
42
- 'wild',
43
- 'gentle',
44
- 'hidden',
45
- 'fierce',
46
- 'calm',
47
- 'frozen',
48
- 'misty',
49
- 'stormy',
50
- 'sunny',
51
- // Cosmic
52
- 'cosmic',
53
- 'crystal',
54
- 'electric',
55
- 'lunar',
56
- 'solar',
57
- 'stellar',
58
- 'astral',
59
- 'orbital',
60
- 'mystic',
61
- 'quantum',
62
- 'radiant',
63
- 'twilight',
64
- 'vivid',
65
- 'zen',
66
- 'infinite',
67
- 'eternal',
68
- // Tech/Abstract
69
- 'clever',
70
- 'rapid',
71
- 'steady',
72
- 'agile',
73
- 'nimble',
74
- 'keen',
75
- 'sharp',
76
- 'quick',
77
- 'prime',
78
- 'binary',
79
- 'neural',
80
- 'atomic',
81
- 'sonic',
82
- 'hyper',
83
- 'mega',
84
- 'ultra',
85
- // Descriptive
86
- 'blazing',
87
- 'gleaming',
88
- 'glowing',
89
- 'shining',
90
- 'burning',
91
- 'flaming',
92
- 'sparkling',
93
- 'dazzling',
94
- 'roaring',
95
- 'rushing',
96
- 'soaring',
97
- 'flying',
98
- 'rising',
99
- 'falling',
100
- 'spinning',
101
- 'dancing',
102
- ];
103
-
104
- const NOUNS = [
105
- // Nature
106
- 'forest',
107
- 'river',
108
- 'mountain',
109
- 'ocean',
110
- 'thunder',
111
- 'canyon',
112
- 'summit',
113
- 'valley',
114
- 'cascade',
115
- 'glacier',
116
- 'volcano',
117
- 'desert',
118
- 'meadow',
119
- 'tundra',
120
- 'jungle',
121
- 'reef',
122
- // Space
123
- 'star',
124
- 'comet',
125
- 'nebula',
126
- 'galaxy',
127
- 'pulsar',
128
- 'quasar',
129
- 'aurora',
130
- 'eclipse',
131
- 'meteor',
132
- 'nova',
133
- 'cosmos',
134
- 'orbit',
135
- 'void',
136
- 'horizon',
137
- 'zenith',
138
- 'equinox',
139
- // Mythical
140
- 'phoenix',
141
- 'dragon',
142
- 'griffin',
143
- 'sphinx',
144
- 'hydra',
145
- 'kraken',
146
- 'titan',
147
- 'atlas',
148
- 'oracle',
149
- 'rune',
150
- 'sigil',
151
- 'glyph',
152
- 'totem',
153
- 'aegis',
154
- 'aether',
155
- 'flux',
156
- // Animals
157
- 'falcon',
158
- 'eagle',
159
- 'wolf',
160
- 'bear',
161
- 'tiger',
162
- 'hawk',
163
- 'lion',
164
- 'panther',
165
- 'raven',
166
- 'serpent',
167
- 'shark',
168
- 'owl',
169
- 'fox',
170
- 'lynx',
171
- 'viper',
172
- 'condor',
173
- // Architecture
174
- 'citadel',
175
- 'temple',
176
- 'spire',
177
- 'tower',
178
- 'fortress',
179
- 'bastion',
180
- 'vault',
181
- 'sanctum',
182
- 'beacon',
183
- 'arch',
184
- 'bridge',
185
- 'gate',
186
- 'hall',
187
- 'keep',
188
- 'dome',
189
- 'obelisk',
190
- // Abstract
191
- 'cipher',
192
- 'echo',
193
- 'nexus',
194
- 'prism',
195
- 'relic',
196
- 'vertex',
197
- 'vortex',
198
- 'pulse',
199
- 'surge',
200
- 'spark',
201
- 'flame',
202
- 'storm',
203
- 'wave',
204
- 'drift',
205
- 'shift',
206
- 'core',
207
- ];
208
-
209
- // 96 adjectives × 96 nouns × 100 numbers = 921,600 combinations
210
-
211
- /**
212
- * Generate a human-readable name
213
- * @param {string} _prefix - DEPRECATED: Ignored for backwards compat, short form always used
214
- * @returns {string} Human-readable name (e.g., 'wandering-forest-42')
215
- */
1
+ import nameGenerator from '../src/name-generator-shared.js';
2
+ const { generateReadableName, generateNameSuffix } = nameGenerator;
216
3
  export function generateName(_prefix = '') {
217
- const adjective = ADJECTIVES[Math.floor(Math.random() * ADJECTIVES.length)];
218
- const noun = NOUNS[Math.floor(Math.random() * NOUNS.length)];
219
- const number = Math.floor(Math.random() * 100);
220
-
221
- return `${adjective}-${noun}-${number}`;
4
+ return generateReadableName('amber', 'forest');
222
5
  }
223
-
224
- /**
225
- * Generate a short unique suffix (for collision prevention)
226
- * @returns {string} Short random suffix (e.g., 'a3f9')
227
- */
228
6
  export function generateSuffix() {
229
- return Math.random().toString(36).slice(2, 6);
7
+ return generateNameSuffix();
230
8
  }
@@ -0,0 +1,11 @@
1
+ import nameGenerator from '../src/name-generator-shared.js';
2
+
3
+ const { generateReadableName, generateNameSuffix } = nameGenerator;
4
+
5
+ export function generateName(_prefix = ''): string {
6
+ return generateReadableName('amber', 'forest');
7
+ }
8
+
9
+ export function generateSuffix(): string {
10
+ return generateNameSuffix();
11
+ }
@@ -12,7 +12,7 @@
12
12
  // fence is therefore over every authoritative row (provisional or committed), never over the
13
13
  // committed rows alone — after a transfer the live owner is `provisional` and no row is
14
14
  // committed at all.
15
- // * The shared, machine-wide OMP CAS blob root (src/omp-blob-root.js) is never touched. Blobs
15
+ // * The shared, machine-wide OMP CAS blob root (src/omp-blob-root.ts) is never touched. Blobs
16
16
  // are addressed from *other* sessions' JSONL too, so deleting one is data loss for unrelated
17
17
  // work; stageOmpSessionPartitionForDeletion refuses any path that resolves inside it.
18
18
  //
@@ -2,7 +2,6 @@
2
2
  // tasks (passed down via env since agent-task-executor.js spawns this CLI as a child process), or
3
3
  // the standalone TASKS_DIR otherwise. Never derived from prompt text or cwd.
4
4
  import { TASKS_DIR } from './config.js';
5
-
6
5
  export const OMP_STORAGE_ROOT_ENV = 'ZEROSHOT_OMP_STORAGE_ROOT';
7
6
  export const OMP_OWNER_CLUSTER_ID_ENV = 'ZEROSHOT_CLUSTER_ID';
8
7
  export const OMP_OWNER_AGENT_ID_ENV = 'ZEROSHOT_AGENT_ID';
@@ -14,22 +13,19 @@ export const OMP_OWNER_AGENT_ID_ENV = 'ZEROSHOT_AGENT_ID';
14
13
  * ownership row — the adapter launches `--no-session`.
15
14
  */
16
15
  export const OMP_SESSIONLESS_ENV = 'ZEROSHOT_OMP_SESSIONLESS';
17
-
18
16
  /** True when this task must run without any session partition at all. */
19
17
  export function isOmpSessionlessRun(options = {}) {
20
- return options.sessionless === true || process.env[OMP_SESSIONLESS_ENV] === '1';
18
+ return options.sessionless === true || process.env[OMP_SESSIONLESS_ENV] === '1';
21
19
  }
22
-
23
20
  export function resolveOmpStorageRoot(options = {}) {
24
- return options.storageRoot || process.env[OMP_STORAGE_ROOT_ENV] || TASKS_DIR;
21
+ return options.storageRoot || process.env[OMP_STORAGE_ROOT_ENV] || TASKS_DIR;
25
22
  }
26
-
27
23
  /** cluster-agent when both a cluster and agent id are known, standalone otherwise. */
28
24
  export function resolveOmpOwnerKind(options = {}) {
29
- const clusterId = options.clusterId || process.env[OMP_OWNER_CLUSTER_ID_ENV] || null;
30
- const agentId = options.agentId || process.env[OMP_OWNER_AGENT_ID_ENV] || null;
31
- if (clusterId && agentId) {
32
- return { kind: 'cluster-agent', clusterId, agentId };
33
- }
34
- return { kind: 'standalone', clusterId: null, agentId: null };
25
+ const clusterId = options.clusterId || process.env[OMP_OWNER_CLUSTER_ID_ENV] || null;
26
+ const agentId = options.agentId || process.env[OMP_OWNER_AGENT_ID_ENV] || null;
27
+ if (clusterId && agentId) {
28
+ return { kind: 'cluster-agent', clusterId, agentId };
29
+ }
30
+ return { kind: 'standalone', clusterId: null, agentId: null };
35
31
  }
@@ -0,0 +1,62 @@
1
+ // Where OMP session partitions live on disk: the owning cluster's storageDir for cluster-agent
2
+ // tasks (passed down via env since agent-task-executor.js spawns this CLI as a child process), or
3
+ // the standalone TASKS_DIR otherwise. Never derived from prompt text or cwd.
4
+ import { TASKS_DIR } from './config.js';
5
+
6
+ interface OmpSessionlessOptions {
7
+ readonly sessionless?: boolean;
8
+ }
9
+
10
+ interface OmpStorageRootOptions {
11
+ readonly storageRoot?: string;
12
+ }
13
+
14
+ interface OmpOwnerOptions {
15
+ readonly clusterId?: string;
16
+ readonly agentId?: string;
17
+ }
18
+
19
+ interface ClusterAgentOwner {
20
+ readonly kind: 'cluster-agent';
21
+ readonly clusterId: string;
22
+ readonly agentId: string;
23
+ }
24
+
25
+ interface StandaloneOwner {
26
+ readonly kind: 'standalone';
27
+ readonly clusterId: null;
28
+ readonly agentId: null;
29
+ }
30
+
31
+ export const OMP_STORAGE_ROOT_ENV = 'ZEROSHOT_OMP_STORAGE_ROOT';
32
+ export const OMP_OWNER_CLUSTER_ID_ENV = 'ZEROSHOT_CLUSTER_ID';
33
+ export const OMP_OWNER_AGENT_ID_ENV = 'ZEROSHOT_AGENT_ID';
34
+ /**
35
+ * Set by the agent for a Docker-isolated OMP run. Issue #866 keeps Docker fresh-only, and the
36
+ * container is the reason: its filesystem is ephemeral, so a partition allocated inside it could
37
+ * never be resumed and an ownership row pointing at it would be unreclaimable the moment the
38
+ * container is removed. A task carrying this marker allocates no partition and persists no
39
+ * ownership row — the adapter launches `--no-session`.
40
+ */
41
+ export const OMP_SESSIONLESS_ENV = 'ZEROSHOT_OMP_SESSIONLESS';
42
+
43
+ /** True when this task must run without any session partition at all. */
44
+ export function isOmpSessionlessRun(options: OmpSessionlessOptions = {}): boolean {
45
+ return options.sessionless === true || process.env[OMP_SESSIONLESS_ENV] === '1';
46
+ }
47
+
48
+ export function resolveOmpStorageRoot(options: OmpStorageRootOptions = {}): string {
49
+ return options.storageRoot || process.env[OMP_STORAGE_ROOT_ENV] || TASKS_DIR;
50
+ }
51
+
52
+ /** cluster-agent when both a cluster and agent id are known, standalone otherwise. */
53
+ export function resolveOmpOwnerKind(
54
+ options: OmpOwnerOptions = {}
55
+ ): ClusterAgentOwner | StandaloneOwner {
56
+ const clusterId = options.clusterId || process.env[OMP_OWNER_CLUSTER_ID_ENV] || null;
57
+ const agentId = options.agentId || process.env[OMP_OWNER_AGENT_ID_ENV] || null;
58
+ if (clusterId && agentId) {
59
+ return { kind: 'cluster-agent', clusterId, agentId };
60
+ }
61
+ return { kind: 'standalone', clusterId: null, agentId: null };
62
+ }