@the-open-engine/zeroshot 6.38.0 → 6.39.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 (381) hide show
  1. package/cli/event-copy.js +8 -7
  2. package/cli/event-copy.ts +12 -0
  3. package/cli/index.js +7 -31
  4. package/cli/json-export.js +61 -64
  5. package/cli/json-export.ts +112 -0
  6. package/cli/message-formatter-utils.js +68 -56
  7. package/cli/message-formatter-utils.ts +121 -0
  8. package/cli/message-formatters-normal.js +124 -259
  9. package/cli/message-formatters-normal.ts +250 -0
  10. package/cli/message-formatters-watch.js +81 -84
  11. package/cli/message-formatters-watch.ts +189 -0
  12. package/lib/agent-cli-provider/adapters/codex.d.ts.map +1 -1
  13. package/lib/agent-cli-provider/adapters/codex.js +3 -1
  14. package/lib/agent-cli-provider/adapters/codex.js.map +1 -1
  15. package/lib/cluster/generated/protocol-schema.cjs +1 -1
  16. package/lib/cluster/generated/protocol-schema.mjs +1 -1
  17. package/lib/cluster/generated/protocol.d.cts +8 -0
  18. package/lib/cluster/generated/protocol.d.mts +8 -0
  19. package/lib/cluster/generated/protocol.d.ts +8 -0
  20. package/lib/clusters-registry.d.ts +23 -0
  21. package/lib/clusters-registry.js +17 -29
  22. package/lib/completion.d.ts +12 -0
  23. package/lib/completion.js +84 -94
  24. package/lib/compose-utils.d.ts +32 -0
  25. package/lib/compose-utils.js +57 -72
  26. package/lib/detached-startup.d.ts +83 -0
  27. package/lib/detached-startup.js +231 -302
  28. package/lib/docker-config.d.ts +43 -0
  29. package/lib/docker-config.js +150 -325
  30. package/lib/docker-env-auth.d.ts +17 -0
  31. package/lib/docker-env-auth.js +75 -0
  32. package/lib/git-remote-utils.d.ts +48 -0
  33. package/lib/git-remote-utils.js +147 -213
  34. package/lib/id-detector.d.ts +15 -0
  35. package/lib/id-detector.js +37 -41
  36. package/lib/path-check.d.ts +30 -0
  37. package/lib/path-check.js +42 -45
  38. package/lib/process-liveness.d.ts +16 -0
  39. package/lib/process-liveness.js +19 -12
  40. package/lib/provider-credential-path.d.ts +16 -0
  41. package/lib/provider-credential-path.js +31 -29
  42. package/lib/provider-defaults.d.ts +30 -0
  43. package/lib/provider-defaults.js +47 -42
  44. package/lib/provider-detection.d.ts +11 -0
  45. package/lib/provider-detection.js +91 -54
  46. package/lib/provider-names.d.ts +38 -0
  47. package/lib/provider-names.js +56 -64
  48. package/lib/repo-settings.d.ts +28 -0
  49. package/lib/repo-settings.js +83 -59
  50. package/lib/run-mode.d.ts +21 -0
  51. package/lib/run-mode.js +21 -20
  52. package/lib/run-plan.d.ts +28 -0
  53. package/lib/run-plan.js +17 -16
  54. package/lib/settings/claude-auth.d.ts +35 -0
  55. package/lib/settings/claude-auth.js +30 -47
  56. package/lib/settings-defaults.d.ts +20 -0
  57. package/lib/settings-defaults.js +149 -0
  58. package/lib/settings-error.d.ts +7 -0
  59. package/lib/settings-error.js +8 -0
  60. package/lib/settings-issue-providers.d.ts +10 -0
  61. package/lib/settings-issue-providers.js +12 -0
  62. package/lib/settings-models.d.ts +22 -0
  63. package/lib/settings-models.js +93 -0
  64. package/lib/settings-storage.d.ts +23 -0
  65. package/lib/settings-storage.js +205 -0
  66. package/lib/settings-validation.d.ts +7 -0
  67. package/lib/settings-validation.js +182 -0
  68. package/lib/settings.d.ts +29 -0
  69. package/lib/settings.js +41 -736
  70. package/lib/setup-apply-types.d.ts +66 -0
  71. package/lib/setup-apply-types.js +2 -0
  72. package/lib/setup-apply.d.ts +39 -0
  73. package/lib/setup-apply.js +267 -264
  74. package/lib/setup-journal.d.ts +41 -0
  75. package/lib/setup-journal.js +119 -76
  76. package/lib/setup-plan-types.d.ts +102 -0
  77. package/lib/setup-plan-types.js +2 -0
  78. package/lib/setup-plan.d.ts +30 -0
  79. package/lib/setup-plan.js +300 -324
  80. package/lib/setup-undo.d.ts +44 -0
  81. package/lib/setup-undo.js +61 -74
  82. package/lib/start-cluster-config.d.ts +26 -0
  83. package/lib/start-cluster-config.js +56 -0
  84. package/lib/start-cluster-environment.d.ts +40 -0
  85. package/lib/start-cluster-environment.js +134 -0
  86. package/lib/start-cluster-run-options.d.ts +53 -0
  87. package/lib/start-cluster-run-options.js +147 -0
  88. package/lib/start-cluster.d.ts +64 -0
  89. package/lib/start-cluster.js +98 -454
  90. package/lib/stream-json-parser.d.ts +17 -0
  91. package/lib/stream-json-parser.js +51 -52
  92. package/npm-shrinkwrap.json +2 -2
  93. package/package.json +12 -6
  94. package/scripts/postinstall.js +27 -0
  95. package/scripts/rust-distribution.js +23 -14
  96. package/src/agent/agent-command-proofs-context.js +35 -45
  97. package/src/agent/agent-command-proofs-context.ts +87 -0
  98. package/src/agent/agent-config-settings.js +19 -0
  99. package/src/agent/agent-config-settings.ts +41 -0
  100. package/src/agent/agent-config.js +122 -231
  101. package/src/agent/agent-config.ts +285 -0
  102. package/src/agent/agent-context-builder.js +38 -273
  103. package/src/agent/agent-context-builder.ts +51 -0
  104. package/src/agent/agent-context-environment-sections.js +105 -0
  105. package/src/agent/agent-context-environment-sections.ts +134 -0
  106. package/src/agent/agent-context-packs.js +165 -0
  107. package/src/agent/agent-context-packs.ts +296 -0
  108. package/src/agent/agent-context-prompt-sections.js +100 -0
  109. package/src/agent/agent-context-prompt-sections.ts +148 -0
  110. package/src/agent/agent-context-sections.js +25 -334
  111. package/src/agent/agent-context-sections.ts +36 -0
  112. package/src/agent/agent-context-sources.js +96 -149
  113. package/src/agent/agent-context-sources.ts +253 -0
  114. package/src/agent/agent-context-types.js +2 -0
  115. package/src/agent/agent-context-types.ts +132 -0
  116. package/src/agent/agent-context-validation-sections.js +73 -0
  117. package/src/agent/agent-context-validation-sections.ts +129 -0
  118. package/src/agent/agent-input-injector.js +99 -118
  119. package/src/agent/agent-input-injector.ts +195 -0
  120. package/src/agent/agent-liveness-poll.js +74 -78
  121. package/src/agent/agent-liveness-poll.ts +163 -0
  122. package/src/agent/agent-quality-gate-schema.js +77 -86
  123. package/src/agent/agent-quality-gate-schema.ts +135 -0
  124. package/src/agent/agent-quality-gates-context.js +44 -50
  125. package/src/agent/agent-quality-gates-context.ts +91 -0
  126. package/src/agent/agent-stuck-detector.js +171 -239
  127. package/src/agent/agent-stuck-detector.ts +288 -0
  128. package/src/agent/agent-trigger-evaluator.js +29 -46
  129. package/src/agent/agent-trigger-evaluator.ts +98 -0
  130. package/src/agent/context-metrics.js +110 -141
  131. package/src/agent/context-metrics.ts +261 -0
  132. package/src/agent/context-pack-builder.js +72 -358
  133. package/src/agent/context-pack-builder.ts +105 -0
  134. package/src/agent/context-pack-core.js +70 -0
  135. package/src/agent/context-pack-core.ts +96 -0
  136. package/src/agent/context-pack-selection.js +119 -0
  137. package/src/agent/context-pack-selection.ts +187 -0
  138. package/src/agent/context-pack-truncation.js +139 -0
  139. package/src/agent/context-pack-truncation.ts +208 -0
  140. package/src/agent/context-pack-types.js +2 -0
  141. package/src/agent/context-pack-types.ts +98 -0
  142. package/src/agent/context-replay-policy.js +30 -39
  143. package/src/agent/context-replay-policy.ts +71 -0
  144. package/src/agent/critical-agent-policy.js +6 -10
  145. package/src/agent/critical-agent-policy.ts +20 -0
  146. package/src/agent/guidance-queue.js +74 -87
  147. package/src/agent/guidance-queue.ts +166 -0
  148. package/src/agent/output-extraction-error-detail.js +45 -0
  149. package/src/agent/output-extraction-error-detail.ts +49 -0
  150. package/src/agent/output-extraction-failures.js +125 -0
  151. package/src/agent/output-extraction-failures.ts +149 -0
  152. package/src/agent/output-extraction-json.js +234 -0
  153. package/src/agent/output-extraction-json.ts +235 -0
  154. package/src/agent/output-extraction-pi.js +124 -0
  155. package/src/agent/output-extraction-pi.ts +137 -0
  156. package/src/agent/output-extraction-types.js +2 -0
  157. package/src/agent/output-extraction-types.ts +49 -0
  158. package/src/agent/output-extraction.js +17 -617
  159. package/src/agent/output-extraction.ts +30 -0
  160. package/src/agent/output-reformatter-errors.js +83 -0
  161. package/src/agent/output-reformatter-errors.ts +106 -0
  162. package/src/agent/output-reformatter-types.js +2 -0
  163. package/src/agent/output-reformatter-types.ts +86 -0
  164. package/src/agent/output-reformatter.js +140 -185
  165. package/src/agent/output-reformatter.ts +238 -0
  166. package/src/agent/pi-terminal-lifecycle-types.js +2 -0
  167. package/src/agent/pi-terminal-lifecycle-types.ts +41 -0
  168. package/src/agent/pi-terminal-lifecycle.js +186 -206
  169. package/src/agent/pi-terminal-lifecycle.ts +297 -0
  170. package/src/agent/provider-control-plane.js +22 -21
  171. package/src/agent/provider-control-plane.ts +52 -0
  172. package/src/agent/provider-terminal-failure-types.js +2 -0
  173. package/src/agent/provider-terminal-failure-types.ts +60 -0
  174. package/src/agent/provider-terminal-failure.js +194 -191
  175. package/src/agent/provider-terminal-failure.ts +262 -0
  176. package/src/agent/rate-limit-backoff.js +31 -74
  177. package/src/agent/rate-limit-backoff.ts +71 -0
  178. package/src/agent/schema-utils.js +85 -125
  179. package/src/agent/schema-utils.ts +148 -0
  180. package/src/agent/structured-output-error.js +34 -33
  181. package/src/agent/structured-output-error.ts +105 -0
  182. package/src/agent/validation-platform.js +27 -27
  183. package/src/agent/validation-platform.ts +49 -0
  184. package/src/agent-cli-provider/adapters/codex.ts +3 -1
  185. package/src/attach/attach-client.js +232 -405
  186. package/src/attach/attach-client.ts +300 -0
  187. package/src/attach/attach-server-cleanup.js +43 -0
  188. package/src/attach/attach-server-cleanup.ts +39 -0
  189. package/src/attach/attach-server-clients.js +117 -0
  190. package/src/attach/attach-server-clients.ts +122 -0
  191. package/src/attach/attach-server-events.js +38 -0
  192. package/src/attach/attach-server-events.ts +36 -0
  193. package/src/attach/attach-server-pty.js +45 -0
  194. package/src/attach/attach-server-pty.ts +64 -0
  195. package/src/attach/attach-server-runtime.js +73 -0
  196. package/src/attach/attach-server-runtime.ts +62 -0
  197. package/src/attach/attach-server-socket.js +28 -0
  198. package/src/attach/attach-server-socket.ts +23 -0
  199. package/src/attach/attach-server-types.js +2 -0
  200. package/src/attach/attach-server-types.ts +82 -0
  201. package/src/attach/attach-server.js +106 -523
  202. package/src/attach/attach-server.ts +158 -0
  203. package/src/attach/index.js +18 -35
  204. package/src/attach/index.ts +18 -0
  205. package/src/attach/protocol.js +95 -184
  206. package/src/attach/protocol.ts +181 -0
  207. package/src/attach/ring-buffer.js +76 -102
  208. package/src/attach/ring-buffer.ts +109 -0
  209. package/src/attach/send-input.js +64 -75
  210. package/src/attach/send-input.ts +94 -0
  211. package/src/attach/socket-discovery.js +164 -218
  212. package/src/attach/socket-discovery.ts +230 -0
  213. package/src/attach/socket-paths.js +42 -61
  214. package/src/attach/socket-paths.ts +81 -0
  215. package/src/claude-credentials.js +51 -54
  216. package/src/claude-credentials.ts +89 -0
  217. package/src/cluster/generated/protocol-schema.ts +1 -1
  218. package/src/cluster/generated/protocol.ts +2 -1
  219. package/src/command-proofs.js +110 -141
  220. package/src/command-proofs.ts +216 -0
  221. package/src/config-router.js +81 -73
  222. package/src/config-router.ts +131 -0
  223. package/src/copy-worker.js +53 -29
  224. package/src/copy-worker.ts +75 -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/ledger-sequence.js +45 -48
  232. package/src/ledger-sequence.ts +63 -0
  233. package/src/legacy-lib/clusters-registry.ts +40 -0
  234. package/src/legacy-lib/completion.ts +148 -0
  235. package/src/legacy-lib/compose-utils.ts +102 -0
  236. package/src/legacy-lib/detached-startup.ts +449 -0
  237. package/src/legacy-lib/docker-config.ts +282 -0
  238. package/src/legacy-lib/docker-env-auth.ts +116 -0
  239. package/src/legacy-lib/git-remote-utils.ts +244 -0
  240. package/src/legacy-lib/id-detector.ts +57 -0
  241. package/src/legacy-lib/js-yaml.d.ts +3 -0
  242. package/src/legacy-lib/omelette.d.ts +15 -0
  243. package/src/legacy-lib/path-check.ts +89 -0
  244. package/src/legacy-lib/process-liveness.ts +36 -0
  245. package/src/legacy-lib/provider-credential-path.ts +57 -0
  246. package/src/legacy-lib/provider-defaults.ts +114 -0
  247. package/src/legacy-lib/provider-detection.ts +67 -0
  248. package/src/legacy-lib/provider-names.ts +126 -0
  249. package/src/legacy-lib/repo-settings.ts +88 -0
  250. package/src/legacy-lib/run-mode.ts +58 -0
  251. package/src/legacy-lib/run-plan.ts +49 -0
  252. package/src/legacy-lib/settings/claude-auth.ts +80 -0
  253. package/src/legacy-lib/settings-defaults.ts +212 -0
  254. package/src/legacy-lib/settings-error.ts +8 -0
  255. package/src/legacy-lib/settings-issue-providers.ts +18 -0
  256. package/src/legacy-lib/settings-models.ts +124 -0
  257. package/src/legacy-lib/settings-storage.ts +277 -0
  258. package/src/legacy-lib/settings-validation.ts +220 -0
  259. package/src/legacy-lib/settings.ts +87 -0
  260. package/src/legacy-lib/setup-apply-types.ts +70 -0
  261. package/src/legacy-lib/setup-apply.ts +456 -0
  262. package/src/legacy-lib/setup-journal.ts +185 -0
  263. package/src/legacy-lib/setup-plan-types.ts +96 -0
  264. package/src/legacy-lib/setup-plan.ts +500 -0
  265. package/src/legacy-lib/setup-undo.ts +142 -0
  266. package/src/legacy-lib/start-cluster-config.ts +124 -0
  267. package/src/legacy-lib/start-cluster-environment.ts +165 -0
  268. package/src/legacy-lib/start-cluster-run-options.ts +279 -0
  269. package/src/legacy-lib/start-cluster.ts +237 -0
  270. package/src/legacy-lib/stream-json-parser.ts +88 -0
  271. package/src/message-buffer.js +55 -71
  272. package/src/message-buffer.ts +107 -0
  273. package/src/message-bus-bridge.js +92 -133
  274. package/src/message-bus-bridge.ts +149 -0
  275. package/src/name-generator-shared.js +220 -0
  276. package/src/name-generator-shared.ts +231 -0
  277. package/src/name-generator.js +8 -217
  278. package/src/name-generator.ts +27 -0
  279. package/src/omp-blob-root.js +83 -64
  280. package/src/omp-blob-root.ts +116 -0
  281. package/src/omp-config-overlay.js +65 -38
  282. package/src/omp-config-overlay.ts +110 -0
  283. package/src/omp-execution-fingerprint.js +38 -43
  284. package/src/omp-execution-fingerprint.ts +92 -0
  285. package/src/omp-session-limits.js +10 -15
  286. package/src/omp-session-limits.ts +53 -0
  287. package/src/omp-session-partition.js +2 -2
  288. package/src/omp-session-verifier.js +1 -1
  289. package/src/orchestrator.js +19 -4
  290. package/src/providers/anthropic/index.js +3 -1
  291. package/src/providers/anthropic/index.ts +13 -0
  292. package/src/providers/capabilities.js +19 -27
  293. package/src/providers/capabilities.ts +44 -0
  294. package/src/providers/google/index.js +3 -1
  295. package/src/providers/google/index.ts +13 -0
  296. package/src/providers/openai/index.js +3 -1
  297. package/src/providers/openai/index.ts +13 -0
  298. package/src/providers/opencode/index.js +3 -1
  299. package/src/providers/opencode/index.ts +13 -0
  300. package/src/quality-gates.js +67 -127
  301. package/src/quality-gates.ts +149 -0
  302. package/src/repo-settings-access.js +40 -0
  303. package/src/repo-settings-access.ts +64 -0
  304. package/src/schemas/sub-cluster.js +127 -183
  305. package/src/schemas/sub-cluster.ts +238 -0
  306. package/src/state-snapshot-normalization.js +224 -0
  307. package/src/state-snapshot-normalization.ts +222 -0
  308. package/src/state-snapshot.js +192 -359
  309. package/src/state-snapshot.ts +291 -0
  310. package/src/state-snapshotter.js +118 -130
  311. package/src/state-snapshotter.ts +167 -0
  312. package/src/sub-cluster-wrapper.js +4 -13
  313. package/src/task-run-model-args.js +87 -124
  314. package/src/task-run-model-args.ts +204 -0
  315. package/src/task-runner.js +5 -25
  316. package/src/task-runner.ts +28 -0
  317. package/src/task-startup-error.js +73 -58
  318. package/src/task-startup-error.ts +126 -0
  319. package/src/template-validation/consensus-gate-contracts.js +2 -0
  320. package/src/template-validation/consensus-gate-contracts.ts +70 -0
  321. package/src/template-validation/consensus-gate-scenarios.js +76 -0
  322. package/src/template-validation/consensus-gate-scenarios.ts +130 -0
  323. package/src/template-validation/consensus-gate-stage.js +34 -0
  324. package/src/template-validation/consensus-gate-stage.ts +56 -0
  325. package/src/template-validation/random-topology-contracts.js +2 -0
  326. package/src/template-validation/random-topology-contracts.ts +54 -0
  327. package/src/template-validation/random-topology-dispatch.js +25 -0
  328. package/src/template-validation/random-topology-dispatch.ts +33 -0
  329. package/src/template-validation/random-topology-message-loop.js +53 -0
  330. package/src/template-validation/random-topology-message-loop.ts +73 -0
  331. package/src/template-validation/random-topology-operations.js +79 -0
  332. package/src/template-validation/random-topology-operations.ts +101 -0
  333. package/src/template-validation/random-topology-runtime.js +25 -0
  334. package/src/template-validation/random-topology-runtime.ts +43 -0
  335. package/src/template-validation/random-topology-scenario.js +52 -0
  336. package/src/template-validation/random-topology-scenario.ts +57 -0
  337. package/src/template-validation/random-topology-schema.js +159 -0
  338. package/src/template-validation/random-topology-schema.ts +190 -0
  339. package/src/template-validation/random-topology-state.js +28 -0
  340. package/src/template-validation/random-topology-state.ts +30 -0
  341. package/src/template-validation/random-topology-trigger-evaluation.js +45 -0
  342. package/src/template-validation/random-topology-trigger-evaluation.ts +65 -0
  343. package/src/template-validation/random-topology-trigger.js +75 -0
  344. package/src/template-validation/random-topology-trigger.ts +88 -0
  345. package/src/template-validation/report-formatter.js +40 -46
  346. package/src/template-validation/report-formatter.ts +101 -0
  347. package/src/template-validation/simulate-consensus-gates.js +111 -302
  348. package/src/template-validation/simulate-consensus-gates.ts +196 -0
  349. package/src/template-validation/simulate-random-topology.js +26 -519
  350. package/src/template-validation/simulate-random-topology.ts +57 -0
  351. package/src/template-validation/simulate-two-stage-validation.js +41 -265
  352. package/src/template-validation/simulate-two-stage-validation.ts +55 -0
  353. package/src/template-validation/simulation-agent-runtime.js +25 -0
  354. package/src/template-validation/simulation-agent-runtime.ts +40 -0
  355. package/src/template-validation/simulation-agent.js +29 -0
  356. package/src/template-validation/simulation-agent.ts +73 -0
  357. package/src/template-validation/simulation-runtime.js +34 -0
  358. package/src/template-validation/simulation-runtime.ts +72 -0
  359. package/src/template-validation/two-stage-contracts.js +2 -0
  360. package/src/template-validation/two-stage-contracts.ts +41 -0
  361. package/src/template-validation/two-stage-inputs.js +21 -0
  362. package/src/template-validation/two-stage-inputs.ts +29 -0
  363. package/src/template-validation/two-stage-results.js +30 -0
  364. package/src/template-validation/two-stage-results.ts +40 -0
  365. package/src/template-validation/two-stage-scenario.js +86 -0
  366. package/src/template-validation/two-stage-scenario.ts +120 -0
  367. package/src/worktree-claude-config.js +182 -220
  368. package/src/worktree-claude-config.ts +272 -0
  369. package/src/worktree-tooling-env.js +103 -125
  370. package/src/worktree-tooling-env.ts +142 -0
  371. package/task-lib/completion.js +2 -3
  372. package/task-lib/completion.ts +9 -0
  373. package/task-lib/config.js +1 -4
  374. package/task-lib/config.ts +11 -0
  375. package/task-lib/name-generator.js +4 -226
  376. package/task-lib/name-generator.ts +11 -0
  377. package/task-lib/omp-session-cleanup.js +1 -1
  378. package/task-lib/omp-storage-root.js +8 -12
  379. package/task-lib/omp-storage-root.ts +62 -0
  380. package/task-lib/process-termination.js +143 -166
  381. package/task-lib/process-termination.ts +268 -0
@@ -0,0 +1,231 @@
1
+ const ADJECTIVES = [
2
+ // Colors
3
+ 'amber',
4
+ 'azure',
5
+ 'crimson',
6
+ 'emerald',
7
+ 'golden',
8
+ 'indigo',
9
+ 'jade',
10
+ 'ruby',
11
+ 'sapphire',
12
+ 'silver',
13
+ 'violet',
14
+ 'bronze',
15
+ 'coral',
16
+ 'ivory',
17
+ 'pearl',
18
+ 'platinum',
19
+ 'scarlet',
20
+ 'cobalt',
21
+ 'copper',
22
+ 'obsidian',
23
+ 'onyx',
24
+ 'opal',
25
+ 'topaz',
26
+ 'turquoise',
27
+ // Nature
28
+ 'wandering',
29
+ 'bright',
30
+ 'silent',
31
+ 'ancient',
32
+ 'swift',
33
+ 'noble',
34
+ 'bold',
35
+ 'wild',
36
+ 'gentle',
37
+ 'hidden',
38
+ 'fierce',
39
+ 'calm',
40
+ 'frozen',
41
+ 'misty',
42
+ 'stormy',
43
+ 'sunny',
44
+ // Cosmic
45
+ 'cosmic',
46
+ 'crystal',
47
+ 'electric',
48
+ 'lunar',
49
+ 'solar',
50
+ 'stellar',
51
+ 'astral',
52
+ 'orbital',
53
+ 'mystic',
54
+ 'quantum',
55
+ 'radiant',
56
+ 'twilight',
57
+ 'vivid',
58
+ 'zen',
59
+ 'infinite',
60
+ 'eternal',
61
+ // Tech/Abstract
62
+ 'clever',
63
+ 'rapid',
64
+ 'steady',
65
+ 'agile',
66
+ 'nimble',
67
+ 'keen',
68
+ 'sharp',
69
+ 'quick',
70
+ 'prime',
71
+ 'binary',
72
+ 'neural',
73
+ 'atomic',
74
+ 'sonic',
75
+ 'hyper',
76
+ 'mega',
77
+ 'ultra',
78
+ // Descriptive
79
+ 'blazing',
80
+ 'gleaming',
81
+ 'glowing',
82
+ 'shining',
83
+ 'burning',
84
+ 'flaming',
85
+ 'sparkling',
86
+ 'dazzling',
87
+ 'roaring',
88
+ 'rushing',
89
+ 'soaring',
90
+ 'flying',
91
+ 'rising',
92
+ 'falling',
93
+ 'spinning',
94
+ 'dancing',
95
+ ] as const;
96
+
97
+ const NOUNS = [
98
+ // Nature
99
+ 'forest',
100
+ 'river',
101
+ 'mountain',
102
+ 'ocean',
103
+ 'thunder',
104
+ 'canyon',
105
+ 'summit',
106
+ 'valley',
107
+ 'cascade',
108
+ 'glacier',
109
+ 'volcano',
110
+ 'desert',
111
+ 'meadow',
112
+ 'tundra',
113
+ 'jungle',
114
+ 'reef',
115
+ // Space
116
+ 'star',
117
+ 'comet',
118
+ 'nebula',
119
+ 'galaxy',
120
+ 'pulsar',
121
+ 'quasar',
122
+ 'aurora',
123
+ 'eclipse',
124
+ 'meteor',
125
+ 'nova',
126
+ 'cosmos',
127
+ 'orbit',
128
+ 'void',
129
+ 'horizon',
130
+ 'zenith',
131
+ 'equinox',
132
+ // Mythical
133
+ 'phoenix',
134
+ 'dragon',
135
+ 'griffin',
136
+ 'sphinx',
137
+ 'hydra',
138
+ 'kraken',
139
+ 'titan',
140
+ 'atlas',
141
+ 'oracle',
142
+ 'rune',
143
+ 'sigil',
144
+ 'glyph',
145
+ 'totem',
146
+ 'aegis',
147
+ 'aether',
148
+ 'flux',
149
+ // Animals
150
+ 'falcon',
151
+ 'eagle',
152
+ 'wolf',
153
+ 'bear',
154
+ 'tiger',
155
+ 'hawk',
156
+ 'lion',
157
+ 'panther',
158
+ 'raven',
159
+ 'serpent',
160
+ 'shark',
161
+ 'owl',
162
+ 'fox',
163
+ 'lynx',
164
+ 'viper',
165
+ 'condor',
166
+ // Architecture
167
+ 'citadel',
168
+ 'temple',
169
+ 'spire',
170
+ 'tower',
171
+ 'fortress',
172
+ 'bastion',
173
+ 'vault',
174
+ 'sanctum',
175
+ 'beacon',
176
+ 'arch',
177
+ 'bridge',
178
+ 'gate',
179
+ 'hall',
180
+ 'keep',
181
+ 'dome',
182
+ 'obelisk',
183
+ // Abstract
184
+ 'cipher',
185
+ 'echo',
186
+ 'nexus',
187
+ 'prism',
188
+ 'relic',
189
+ 'vertex',
190
+ 'vortex',
191
+ 'pulse',
192
+ 'surge',
193
+ 'spark',
194
+ 'flame',
195
+ 'storm',
196
+ 'wave',
197
+ 'drift',
198
+ 'shift',
199
+ 'core',
200
+ ] as const;
201
+
202
+ interface NameRandomSource {
203
+ (): number;
204
+ }
205
+
206
+ function isNameRandomSource(value: unknown): value is NameRandomSource {
207
+ return typeof value === 'function';
208
+ }
209
+
210
+ function nextNameRandomValue(): number {
211
+ const randomSource: unknown = Reflect.get(Math, 'random');
212
+ if (!isNameRandomSource(randomSource)) {
213
+ throw new TypeError('Math.random must be a function');
214
+ }
215
+ return randomSource.call(Math);
216
+ }
217
+
218
+ function generateReadableName(adjectiveFallback?: string, nounFallback?: string): string {
219
+ const adjective =
220
+ ADJECTIVES[Math.floor(nextNameRandomValue() * ADJECTIVES.length)] ?? adjectiveFallback;
221
+ const noun = NOUNS[Math.floor(nextNameRandomValue() * NOUNS.length)] ?? nounFallback;
222
+ const number = Math.floor(nextNameRandomValue() * 100);
223
+
224
+ return `${adjective}-${noun}-${number}`;
225
+ }
226
+
227
+ function generateNameSuffix(): string {
228
+ return nextNameRandomValue().toString(36).slice(2, 6);
229
+ }
230
+
231
+ export = { generateReadableName, generateNameSuffix };
@@ -1,232 +1,23 @@
1
+ "use strict";
1
2
  /**
2
3
  * Human-readable name generator (like Weights & Biases)
3
4
  * Generates names like "wandering-forest-42" or "bright-star-17"
4
5
  *
5
6
  * No prefix - short forms used everywhere for simplicity
6
7
  */
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
-
8
+ const nameGenerator = require("./name-generator-shared");
9
+ const { generateReadableName, generateNameSuffix } = nameGenerator;
211
10
  /**
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')
11
+ * Generate a human-readable name.
12
+ * The deprecated prefix remains ignored for backwards compatibility.
215
13
  */
216
14
  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}`;
15
+ return generateReadableName();
222
16
  }
223
-
224
17
  /**
225
- * Generate a short unique suffix (for collision prevention)
226
- * @returns {string} Short random suffix (e.g., 'a3f9')
18
+ * Generate a short unique suffix for collision prevention.
227
19
  */
228
20
  function generateSuffix() {
229
- return Math.random().toString(36).slice(2, 6);
21
+ return generateNameSuffix();
230
22
  }
231
-
232
23
  module.exports = { generateName, generateSuffix };
@@ -0,0 +1,27 @@
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
+ import nameGenerator = require('./name-generator-shared');
9
+
10
+ const { generateReadableName, generateNameSuffix } = nameGenerator;
11
+
12
+ /**
13
+ * Generate a human-readable name.
14
+ * The deprecated prefix remains ignored for backwards compatibility.
15
+ */
16
+ function generateName(_prefix = ''): string {
17
+ return generateReadableName();
18
+ }
19
+
20
+ /**
21
+ * Generate a short unique suffix for collision prevention.
22
+ */
23
+ function generateSuffix(): string {
24
+ return generateNameSuffix();
25
+ }
26
+
27
+ export = { generateName, generateSuffix };
@@ -1,3 +1,37 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
1
35
  // Resolution of OMP's *shared* content-addressed blob store root, mirrored from the tagged
2
36
  // v17.2.1 source (`packages/utils/src/dirs.ts`: `getBlobsDir()` / `DirResolver`) rather than
3
37
  // invented by Zeroshot.
@@ -18,93 +52,78 @@
18
52
  // dataBase = (linux|darwin) && agentDir === defaultAgent && $XDG_DATA_HOME/omp[/profiles/<p>]
19
53
  // exists ? that : agentDir // XDG flattens the agent/ prefix
20
54
  // blobsDir = <dataBase>/blobs
21
- const fs = require('fs');
22
- const os = require('os');
23
- const path = require('path');
24
-
55
+ const fs = __importStar(require("fs"));
56
+ const os = __importStar(require("os"));
57
+ const path = __importStar(require("path"));
25
58
  const APP_NAME = 'omp';
26
59
  const CONFIG_DIR_NAME = '.omp';
27
60
  // dirs.ts PROFILE_NAME_RE / WINDOWS_RESERVED_BASENAME_RE.
28
61
  const PROFILE_NAME_PATTERN = /^[a-z0-9][a-z0-9._-]{0,63}$/u;
29
62
  const WINDOWS_RESERVED_BASENAME_PATTERN = /^(?:CON|PRN|AUX|NUL|COM[0-9]|LPT[0-9])(?:\..*)?$/iu;
30
-
31
63
  /** dirs.ts normalizeProfileName, but total: an invalid name resolves to the default profile here
32
64
  * instead of throwing. A resume against a profile OMP itself would reject cannot succeed anyway —
33
65
  * the verifier will simply not find the referenced blobs and fail the continuation closed. */
34
66
  function normalizeProfileName(profile) {
35
- const normalized = typeof profile === 'string' ? profile.trim() : '';
36
- if (!normalized || normalized === 'default') return undefined;
37
- if (
38
- normalized === '.' ||
39
- normalized === '..' ||
40
- normalized.endsWith('.') ||
41
- !PROFILE_NAME_PATTERN.test(normalized) ||
42
- WINDOWS_RESERVED_BASENAME_PATTERN.test(normalized)
43
- ) {
44
- return undefined;
45
- }
46
- return normalized;
67
+ const normalized = typeof profile === 'string' ? profile.trim() : '';
68
+ if (!normalized || normalized === 'default')
69
+ return undefined;
70
+ if (normalized === '.' ||
71
+ normalized === '..' ||
72
+ normalized.endsWith('.') ||
73
+ !PROFILE_NAME_PATTERN.test(normalized) ||
74
+ WINDOWS_RESERVED_BASENAME_PATTERN.test(normalized)) {
75
+ return undefined;
76
+ }
77
+ return normalized;
47
78
  }
48
-
49
79
  function activeProfile(env) {
50
- return normalizeProfileName(
51
- env.OMP_PROFILE !== undefined ? env.OMP_PROFILE : env.PI_PROFILE
52
- );
80
+ return normalizeProfileName(env.OMP_PROFILE !== undefined ? env.OMP_PROFILE : env.PI_PROFILE);
53
81
  }
54
-
55
82
  function directoryExists(candidate) {
56
- try {
57
- return fs.statSync(candidate).isDirectory();
58
- } catch {
59
- return false;
60
- }
83
+ try {
84
+ return fs.statSync(candidate).isDirectory();
85
+ }
86
+ catch {
87
+ return false;
88
+ }
61
89
  }
62
-
63
90
  /**
64
91
  * Absolute path of the shared OMP blob store for the current environment.
65
92
  * `env`/`homedir`/`platform` are injectable for tests only; production callers pass nothing.
66
93
  */
67
- function resolveOmpBlobsDir({
68
- env = process.env,
69
- homedir = os.homedir(),
70
- platform = process.platform,
71
- } = {}) {
72
- const profile = activeProfile(env);
73
- const configDirName = env.PI_CONFIG_DIR || CONFIG_DIR_NAME;
74
- const baseConfigRoot = path.join(homedir, configDirName);
75
- const configRoot = profile ? path.join(baseConfigRoot, 'profiles', profile) : baseConfigRoot;
76
-
77
- const defaultAgentDir = path.join(configRoot, 'agent');
78
- // A named profile pins the agent dir to the profile root; PI_CODING_AGENT_DIR applies only in
79
- // default mode (dirs.ts: `const agentDirOverride = profile ? undefined : options.agentDirOverride`).
80
- const agentDirOverride = profile ? undefined : env.PI_CODING_AGENT_DIR;
81
- const agentDir = agentDirOverride ? path.resolve(agentDirOverride) : defaultAgentDir;
82
-
83
- let dataBase = agentDir;
84
- if ((platform === 'linux' || platform === 'darwin') && agentDir === defaultAgentDir) {
85
- const xdgDataHome = env.XDG_DATA_HOME;
86
- if (xdgDataHome) {
87
- const appRoot = path.join(xdgDataHome, APP_NAME);
88
- const candidate = profile ? path.join(appRoot, 'profiles', profile) : appRoot;
89
- if (directoryExists(candidate)) dataBase = candidate;
94
+ function resolveOmpBlobsDir({ env = process.env, homedir = os.homedir(), platform = process.platform, } = {}) {
95
+ const profile = activeProfile(env);
96
+ const configDirName = env.PI_CONFIG_DIR || CONFIG_DIR_NAME;
97
+ const baseConfigRoot = path.join(homedir, configDirName);
98
+ const configRoot = profile ? path.join(baseConfigRoot, 'profiles', profile) : baseConfigRoot;
99
+ const defaultAgentDir = path.join(configRoot, 'agent');
100
+ // A named profile pins the agent dir to the profile root; PI_CODING_AGENT_DIR applies only in
101
+ // default mode (dirs.ts: `const agentDirOverride = profile ? undefined : options.agentDirOverride`).
102
+ const agentDirOverride = profile ? undefined : env.PI_CODING_AGENT_DIR;
103
+ const agentDir = agentDirOverride ? path.resolve(agentDirOverride) : defaultAgentDir;
104
+ let dataBase = agentDir;
105
+ if ((platform === 'linux' || platform === 'darwin') && agentDir === defaultAgentDir) {
106
+ const xdgDataHome = env.XDG_DATA_HOME;
107
+ if (xdgDataHome) {
108
+ const appRoot = path.join(xdgDataHome, APP_NAME);
109
+ const candidate = profile ? path.join(appRoot, 'profiles', profile) : appRoot;
110
+ if (directoryExists(candidate))
111
+ dataBase = candidate;
112
+ }
90
113
  }
91
- }
92
-
93
- return path.join(dataBase, 'blobs');
114
+ return path.join(dataBase, 'blobs');
94
115
  }
95
-
96
116
  /** True when `candidate` is the shared blob root or anything inside it. Cleanup uses this as a
97
117
  * hard stop: a Zeroshot partition must never resolve into OMP's shared, cross-session CAS. */
98
118
  function isInsideOmpBlobsDir(candidate, options = {}) {
99
- const blobsDir = resolveOmpBlobsDir(options);
100
- const resolved = path.resolve(candidate);
101
- return resolved === blobsDir || resolved.startsWith(blobsDir + path.sep);
119
+ const blobsDir = resolveOmpBlobsDir(options);
120
+ const resolved = path.resolve(candidate);
121
+ return resolved === blobsDir || resolved.startsWith(blobsDir + path.sep);
102
122
  }
103
-
104
123
  module.exports = {
105
- APP_NAME,
106
- CONFIG_DIR_NAME,
107
- isInsideOmpBlobsDir,
108
- normalizeProfileName,
109
- resolveOmpBlobsDir,
124
+ APP_NAME,
125
+ CONFIG_DIR_NAME,
126
+ isInsideOmpBlobsDir,
127
+ normalizeProfileName,
128
+ resolveOmpBlobsDir,
110
129
  };