@cleocode/core 2026.9.19 → 2026.9.21

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 (863) hide show
  1. package/dist/adapters/discovery.d.ts.map +1 -1
  2. package/dist/adapters/discovery.js +3 -10
  3. package/dist/adapters/discovery.js.map +1 -1
  4. package/dist/adrs/link-pipeline.js +2 -2
  5. package/dist/adrs/link-pipeline.js.map +1 -1
  6. package/dist/adrs/parse.js +3 -3
  7. package/dist/adrs/parse.js.map +1 -1
  8. package/dist/agents/invoke-meta-agent.d.ts.map +1 -1
  9. package/dist/agents/invoke-meta-agent.js +8 -4
  10. package/dist/agents/invoke-meta-agent.js.map +1 -1
  11. package/dist/bootstrap.d.ts +5 -1
  12. package/dist/bootstrap.d.ts.map +1 -1
  13. package/dist/bootstrap.js +41 -21
  14. package/dist/bootstrap.js.map +1 -1
  15. package/dist/cloud/crypto.d.ts +47 -0
  16. package/dist/cloud/crypto.d.ts.map +1 -0
  17. package/dist/cloud/crypto.js +223 -0
  18. package/dist/cloud/crypto.js.map +1 -0
  19. package/dist/cloud/http.d.ts +52 -0
  20. package/dist/cloud/http.d.ts.map +1 -0
  21. package/dist/cloud/http.js +98 -0
  22. package/dist/cloud/http.js.map +1 -0
  23. package/dist/cloud/index.d.ts +19 -0
  24. package/dist/cloud/index.d.ts.map +1 -0
  25. package/dist/cloud/index.js +19 -0
  26. package/dist/cloud/index.js.map +1 -0
  27. package/dist/cloud/journal.d.ts +169 -0
  28. package/dist/cloud/journal.d.ts.map +1 -0
  29. package/dist/cloud/journal.js +428 -0
  30. package/dist/cloud/journal.js.map +1 -0
  31. package/dist/cloud/keys.d.ts +213 -0
  32. package/dist/cloud/keys.d.ts.map +1 -0
  33. package/dist/cloud/keys.js +362 -0
  34. package/dist/cloud/keys.js.map +1 -0
  35. package/dist/cloud/manifest-check.d.ts +36 -0
  36. package/dist/cloud/manifest-check.d.ts.map +1 -0
  37. package/dist/cloud/manifest-check.js +70 -0
  38. package/dist/cloud/manifest-check.js.map +1 -0
  39. package/dist/cloud/projects.d.ts +13 -0
  40. package/dist/cloud/projects.d.ts.map +1 -0
  41. package/dist/cloud/projects.js +11 -0
  42. package/dist/cloud/projects.js.map +1 -0
  43. package/dist/cloud/signing.d.ts +105 -0
  44. package/dist/cloud/signing.d.ts.map +1 -0
  45. package/dist/cloud/signing.js +117 -0
  46. package/dist/cloud/signing.js.map +1 -0
  47. package/dist/cloud/streams.d.ts +6 -0
  48. package/dist/cloud/streams.d.ts.map +1 -0
  49. package/dist/cloud/streams.js +5 -0
  50. package/dist/cloud/streams.js.map +1 -0
  51. package/dist/decide/audit.d.ts +131 -0
  52. package/dist/decide/audit.d.ts.map +1 -0
  53. package/dist/decide/audit.js +98 -0
  54. package/dist/decide/audit.js.map +1 -0
  55. package/dist/decide/budget.d.ts +91 -0
  56. package/dist/decide/budget.d.ts.map +1 -0
  57. package/dist/decide/budget.js +194 -0
  58. package/dist/decide/budget.js.map +1 -0
  59. package/dist/decide/cache.d.ts +49 -0
  60. package/dist/decide/cache.d.ts.map +1 -0
  61. package/dist/decide/cache.js +87 -0
  62. package/dist/decide/cache.js.map +1 -0
  63. package/dist/decide/client.d.ts +103 -0
  64. package/dist/decide/client.d.ts.map +1 -0
  65. package/dist/decide/client.js +262 -0
  66. package/dist/decide/client.js.map +1 -0
  67. package/dist/decide/credentials.d.ts +159 -0
  68. package/dist/decide/credentials.d.ts.map +1 -0
  69. package/dist/decide/credentials.js +383 -0
  70. package/dist/decide/credentials.js.map +1 -0
  71. package/dist/decide/index.d.ts +18 -0
  72. package/dist/decide/index.d.ts.map +1 -0
  73. package/dist/decide/index.js +18 -0
  74. package/dist/decide/index.js.map +1 -0
  75. package/dist/decide/jev-wire.d.ts +155 -0
  76. package/dist/decide/jev-wire.d.ts.map +1 -0
  77. package/dist/decide/jev-wire.js +420 -0
  78. package/dist/decide/jev-wire.js.map +1 -0
  79. package/dist/decide/operations.d.ts +152 -0
  80. package/dist/decide/operations.d.ts.map +1 -0
  81. package/dist/decide/operations.js +199 -0
  82. package/dist/decide/operations.js.map +1 -0
  83. package/dist/decide/provider.d.ts +90 -0
  84. package/dist/decide/provider.d.ts.map +1 -0
  85. package/dist/decide/provider.js +43 -0
  86. package/dist/decide/provider.js.map +1 -0
  87. package/dist/decide/site.d.ts +148 -0
  88. package/dist/decide/site.d.ts.map +1 -0
  89. package/dist/decide/site.js +181 -0
  90. package/dist/decide/site.js.map +1 -0
  91. package/dist/decide/transport.d.ts +67 -0
  92. package/dist/decide/transport.d.ts.map +1 -0
  93. package/dist/decide/transport.js +350 -0
  94. package/dist/decide/transport.js.map +1 -0
  95. package/dist/docs/export-document.js +5908 -2436
  96. package/dist/docs/export-document.js.map +3 -3
  97. package/dist/docs/index.d.ts +2 -2
  98. package/dist/docs/index.d.ts.map +1 -1
  99. package/dist/docs/index.js +1 -1
  100. package/dist/docs/index.js.map +1 -1
  101. package/dist/docs/projection.d.ts.map +1 -1
  102. package/dist/docs/projection.js +2 -3
  103. package/dist/docs/projection.js.map +1 -1
  104. package/dist/docs/publish-pr.d.ts +69 -1
  105. package/dist/docs/publish-pr.d.ts.map +1 -1
  106. package/dist/docs/publish-pr.js +112 -10
  107. package/dist/docs/publish-pr.js.map +1 -1
  108. package/dist/doctor/db-substrate.d.ts +13 -8
  109. package/dist/doctor/db-substrate.d.ts.map +1 -1
  110. package/dist/doctor/db-substrate.js +39 -26
  111. package/dist/doctor/db-substrate.js.map +1 -1
  112. package/dist/doctor/index.d.ts +2 -0
  113. package/dist/doctor/index.d.ts.map +1 -1
  114. package/dist/doctor/index.js +1 -0
  115. package/dist/doctor/index.js.map +1 -1
  116. package/dist/doctor/knowledge.d.ts.map +1 -1
  117. package/dist/doctor/knowledge.js +5 -15
  118. package/dist/doctor/knowledge.js.map +1 -1
  119. package/dist/doctor/nexus-schema-residency.d.ts +1 -1
  120. package/dist/doctor/nexus-schema-residency.d.ts.map +1 -1
  121. package/dist/doctor/nexus-schema-residency.js +3 -0
  122. package/dist/doctor/nexus-schema-residency.js.map +1 -1
  123. package/dist/doctor/project-identity.d.ts +44 -1
  124. package/dist/doctor/project-identity.d.ts.map +1 -1
  125. package/dist/doctor/project-identity.js +237 -10
  126. package/dist/doctor/project-identity.js.map +1 -1
  127. package/dist/doctor/projects.d.ts +170 -0
  128. package/dist/doctor/projects.d.ts.map +1 -0
  129. package/dist/doctor/projects.js +1075 -0
  130. package/dist/doctor/projects.js.map +1 -0
  131. package/dist/doctor/twin-collapse.d.ts +97 -0
  132. package/dist/doctor/twin-collapse.d.ts.map +1 -0
  133. package/dist/doctor/twin-collapse.js +168 -0
  134. package/dist/doctor/twin-collapse.js.map +1 -0
  135. package/dist/doctor/worktree-orphans.d.ts.map +1 -1
  136. package/dist/doctor/worktree-orphans.js +13 -29
  137. package/dist/doctor/worktree-orphans.js.map +1 -1
  138. package/dist/doctor/worktree-stores.d.ts +128 -0
  139. package/dist/doctor/worktree-stores.d.ts.map +1 -0
  140. package/dist/doctor/worktree-stores.js +374 -0
  141. package/dist/doctor/worktree-stores.js.map +1 -0
  142. package/dist/engine/engine-ops.d.ts.map +1 -1
  143. package/dist/engine/engine-ops.js +59 -23
  144. package/dist/engine/engine-ops.js.map +1 -1
  145. package/dist/error-catalog.d.ts.map +1 -1
  146. package/dist/error-catalog.js +21 -0
  147. package/dist/error-catalog.js.map +1 -1
  148. package/dist/error-registry.d.ts.map +1 -1
  149. package/dist/error-registry.js +40 -0
  150. package/dist/error-registry.js.map +1 -1
  151. package/dist/gc/cleanup.d.ts.map +1 -1
  152. package/dist/gc/cleanup.js +32 -19
  153. package/dist/gc/cleanup.js.map +1 -1
  154. package/dist/git/bounded-git.d.ts +170 -0
  155. package/dist/git/bounded-git.d.ts.map +1 -0
  156. package/dist/git/bounded-git.js +371 -0
  157. package/dist/git/bounded-git.js.map +1 -0
  158. package/dist/git/work-tree.d.ts +20 -0
  159. package/dist/git/work-tree.d.ts.map +1 -1
  160. package/dist/git/work-tree.js +20 -2
  161. package/dist/git/work-tree.js.map +1 -1
  162. package/dist/hooks/handlers/session-hooks.d.ts +11 -26
  163. package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
  164. package/dist/hooks/handlers/session-hooks.js +18 -47
  165. package/dist/hooks/handlers/session-hooks.js.map +1 -1
  166. package/dist/hooks/payload-schemas.d.ts +2 -2
  167. package/dist/index.d.ts +6 -5
  168. package/dist/index.d.ts.map +1 -1
  169. package/dist/index.js +5 -3
  170. package/dist/index.js.map +1 -1
  171. package/dist/init/engine-ops.d.ts.map +1 -1
  172. package/dist/init/engine-ops.js +23 -1
  173. package/dist/init/engine-ops.js.map +1 -1
  174. package/dist/init.d.ts +158 -1
  175. package/dist/init.d.ts.map +1 -1
  176. package/dist/init.js +535 -44
  177. package/dist/init.js.map +1 -1
  178. package/dist/injection.d.ts +55 -0
  179. package/dist/injection.d.ts.map +1 -1
  180. package/dist/injection.js +102 -6
  181. package/dist/injection.js.map +1 -1
  182. package/dist/internal.d.ts +9 -5
  183. package/dist/internal.d.ts.map +1 -1
  184. package/dist/internal.js +8 -4
  185. package/dist/internal.js.map +1 -1
  186. package/dist/issue/diagnostics.d.ts.map +1 -1
  187. package/dist/issue/diagnostics.js +2 -1
  188. package/dist/issue/diagnostics.js.map +1 -1
  189. package/dist/lib/concurrency.d.ts +25 -0
  190. package/dist/lib/concurrency.d.ts.map +1 -0
  191. package/dist/lib/concurrency.js +43 -0
  192. package/dist/lib/concurrency.js.map +1 -0
  193. package/dist/lib/index.d.ts +1 -0
  194. package/dist/lib/index.d.ts.map +1 -1
  195. package/dist/lib/index.js +1 -0
  196. package/dist/lib/index.js.map +1 -1
  197. package/dist/lifecycle/engine-ops.d.ts.map +1 -1
  198. package/dist/lifecycle/engine-ops.js +4 -2
  199. package/dist/lifecycle/engine-ops.js.map +1 -1
  200. package/dist/lifecycle/stage-guidance.d.ts +5 -0
  201. package/dist/lifecycle/stage-guidance.d.ts.map +1 -1
  202. package/dist/lifecycle/stage-guidance.js +14 -4
  203. package/dist/lifecycle/stage-guidance.js.map +1 -1
  204. package/dist/llm/catalog-cache.d.ts +3 -2
  205. package/dist/llm/catalog-cache.d.ts.map +1 -1
  206. package/dist/llm/catalog-cache.js +5 -5
  207. package/dist/llm/catalog-cache.js.map +1 -1
  208. package/dist/llm/credentials.d.ts +4 -4
  209. package/dist/llm/credentials.js +6 -6
  210. package/dist/llm/credentials.js.map +1 -1
  211. package/dist/llm/plugin-facade.js +4312 -1798
  212. package/dist/llm/plugin-facade.js.map +3 -3
  213. package/dist/llm/stable-device-id.d.ts.map +1 -1
  214. package/dist/llm/stable-device-id.js +3 -5
  215. package/dist/llm/stable-device-id.js.map +1 -1
  216. package/dist/memory/attention.d.ts.map +1 -1
  217. package/dist/memory/attention.js +30 -30
  218. package/dist/memory/attention.js.map +1 -1
  219. package/dist/memory/decision-contradiction.d.ts +152 -0
  220. package/dist/memory/decision-contradiction.d.ts.map +1 -0
  221. package/dist/memory/decision-contradiction.js +273 -0
  222. package/dist/memory/decision-contradiction.js.map +1 -0
  223. package/dist/memory/decisions.d.ts +42 -11
  224. package/dist/memory/decisions.d.ts.map +1 -1
  225. package/dist/memory/decisions.js +153 -56
  226. package/dist/memory/decisions.js.map +1 -1
  227. package/dist/memory/dialectic-evaluator.d.ts +7 -0
  228. package/dist/memory/dialectic-evaluator.d.ts.map +1 -1
  229. package/dist/memory/dialectic-evaluator.js +23 -8
  230. package/dist/memory/dialectic-evaluator.js.map +1 -1
  231. package/dist/memory/dispatch-trace-format.d.ts +39 -0
  232. package/dist/memory/dispatch-trace-format.d.ts.map +1 -0
  233. package/dist/memory/dispatch-trace-format.js +54 -0
  234. package/dist/memory/dispatch-trace-format.js.map +1 -0
  235. package/dist/memory/dispatch-trace.d.ts.map +1 -1
  236. package/dist/memory/dispatch-trace.js +1 -27
  237. package/dist/memory/dispatch-trace.js.map +1 -1
  238. package/dist/memory/engine-compat.d.ts +2 -0
  239. package/dist/memory/engine-compat.d.ts.map +1 -1
  240. package/dist/memory/engine-compat.js +1 -0
  241. package/dist/memory/engine-compat.js.map +1 -1
  242. package/dist/memory/import-from-provider.js +3 -3
  243. package/dist/memory/import-from-provider.js.map +1 -1
  244. package/dist/memory/learnings.d.ts +2 -2
  245. package/dist/memory/observation-type-decision.d.ts +96 -0
  246. package/dist/memory/observation-type-decision.d.ts.map +1 -0
  247. package/dist/memory/observation-type-decision.js +218 -0
  248. package/dist/memory/observation-type-decision.js.map +1 -0
  249. package/dist/memory/redaction.js +2 -0
  250. package/dist/memory/redaction.js.map +1 -1
  251. package/dist/memory/retrieval/build-retrieval-bundle.d.ts +9 -2
  252. package/dist/memory/retrieval/build-retrieval-bundle.d.ts.map +1 -1
  253. package/dist/memory/retrieval/build-retrieval-bundle.js +42 -11
  254. package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
  255. package/dist/memory/retrieval/get-current-session-id.d.ts +5 -0
  256. package/dist/memory/retrieval/get-current-session-id.d.ts.map +1 -1
  257. package/dist/memory/retrieval/get-current-session-id.js +7 -2
  258. package/dist/memory/retrieval/get-current-session-id.js.map +1 -1
  259. package/dist/memory/retrieval/observe.d.ts.map +1 -1
  260. package/dist/memory/retrieval/observe.js +30 -29
  261. package/dist/memory/retrieval/observe.js.map +1 -1
  262. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  263. package/dist/nexus/analyze-orchestrator.js +42 -29
  264. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  265. package/dist/nexus/assessment-projection.d.ts +76 -0
  266. package/dist/nexus/assessment-projection.d.ts.map +1 -0
  267. package/dist/nexus/assessment-projection.js +143 -0
  268. package/dist/nexus/assessment-projection.js.map +1 -0
  269. package/dist/nexus/assessment-store.d.ts +14 -2
  270. package/dist/nexus/assessment-store.d.ts.map +1 -1
  271. package/dist/nexus/assessment-store.js +21 -3
  272. package/dist/nexus/assessment-store.js.map +1 -1
  273. package/dist/nexus/checkout-nonce.d.ts +48 -0
  274. package/dist/nexus/checkout-nonce.d.ts.map +1 -0
  275. package/dist/nexus/checkout-nonce.js +84 -0
  276. package/dist/nexus/checkout-nonce.js.map +1 -0
  277. package/dist/nexus/devices.d.ts +93 -0
  278. package/dist/nexus/devices.d.ts.map +1 -0
  279. package/dist/nexus/devices.js +141 -0
  280. package/dist/nexus/devices.js.map +1 -0
  281. package/dist/nexus/freshness.d.ts.map +1 -1
  282. package/dist/nexus/freshness.js +25 -6
  283. package/dist/nexus/freshness.js.map +1 -1
  284. package/dist/nexus/git-state.d.ts +225 -0
  285. package/dist/nexus/git-state.d.ts.map +1 -0
  286. package/dist/nexus/git-state.js +677 -0
  287. package/dist/nexus/git-state.js.map +1 -0
  288. package/dist/nexus/graph-manifest.d.ts +20 -4
  289. package/dist/nexus/graph-manifest.d.ts.map +1 -1
  290. package/dist/nexus/graph-manifest.js +40 -5
  291. package/dist/nexus/graph-manifest.js.map +1 -1
  292. package/dist/nexus/identity.d.ts +68 -23
  293. package/dist/nexus/identity.d.ts.map +1 -1
  294. package/dist/nexus/identity.js +99 -22
  295. package/dist/nexus/identity.js.map +1 -1
  296. package/dist/nexus/index.d.ts +5 -2
  297. package/dist/nexus/index.d.ts.map +1 -1
  298. package/dist/nexus/index.js +10 -4
  299. package/dist/nexus/index.js.map +1 -1
  300. package/dist/nexus/knowledge.d.ts +5 -0
  301. package/dist/nexus/knowledge.d.ts.map +1 -1
  302. package/dist/nexus/knowledge.js +26 -2
  303. package/dist/nexus/knowledge.js.map +1 -1
  304. package/dist/nexus/legacy-alias.d.ts +60 -0
  305. package/dist/nexus/legacy-alias.d.ts.map +1 -0
  306. package/dist/nexus/legacy-alias.js +68 -0
  307. package/dist/nexus/legacy-alias.js.map +1 -0
  308. package/dist/nexus/migrate-json-to-sqlite.js +2 -2
  309. package/dist/nexus/migrate-json-to-sqlite.js.map +1 -1
  310. package/dist/nexus/ops.d.ts +1 -0
  311. package/dist/nexus/ops.d.ts.map +1 -1
  312. package/dist/nexus/path-map.d.ts +264 -20
  313. package/dist/nexus/path-map.d.ts.map +1 -1
  314. package/dist/nexus/path-map.js +580 -44
  315. package/dist/nexus/path-map.js.map +1 -1
  316. package/dist/nexus/projects-clean.d.ts +9 -1
  317. package/dist/nexus/projects-clean.d.ts.map +1 -1
  318. package/dist/nexus/projects-clean.js +126 -14
  319. package/dist/nexus/projects-clean.js.map +1 -1
  320. package/dist/nexus/projects-scan.d.ts +56 -1
  321. package/dist/nexus/projects-scan.d.ts.map +1 -1
  322. package/dist/nexus/projects-scan.js +144 -3
  323. package/dist/nexus/projects-scan.js.map +1 -1
  324. package/dist/nexus/registry-hygiene.d.ts +18 -2
  325. package/dist/nexus/registry-hygiene.d.ts.map +1 -1
  326. package/dist/nexus/registry-hygiene.js +37 -11
  327. package/dist/nexus/registry-hygiene.js.map +1 -1
  328. package/dist/nexus/registry-roots.d.ts +47 -0
  329. package/dist/nexus/registry-roots.d.ts.map +1 -0
  330. package/dist/nexus/registry-roots.js +79 -0
  331. package/dist/nexus/registry-roots.js.map +1 -0
  332. package/dist/nexus/registry.d.ts +50 -9
  333. package/dist/nexus/registry.d.ts.map +1 -1
  334. package/dist/nexus/registry.js +311 -156
  335. package/dist/nexus/registry.js.map +1 -1
  336. package/dist/nexus/stored-roots.d.ts +106 -0
  337. package/dist/nexus/stored-roots.d.ts.map +1 -0
  338. package/dist/nexus/stored-roots.js +180 -0
  339. package/dist/nexus/stored-roots.js.map +1 -0
  340. package/dist/nexus/transfer.d.ts.map +1 -1
  341. package/dist/nexus/transfer.js +3 -0
  342. package/dist/nexus/transfer.js.map +1 -1
  343. package/dist/nexus/user-profile-hygiene.d.ts +168 -0
  344. package/dist/nexus/user-profile-hygiene.d.ts.map +1 -0
  345. package/dist/nexus/user-profile-hygiene.js +305 -0
  346. package/dist/nexus/user-profile-hygiene.js.map +1 -0
  347. package/dist/nexus/user-profile.d.ts +53 -2
  348. package/dist/nexus/user-profile.d.ts.map +1 -1
  349. package/dist/nexus/user-profile.js +106 -4
  350. package/dist/nexus/user-profile.js.map +1 -1
  351. package/dist/orchestrate/pivot.d.ts.map +1 -1
  352. package/dist/orchestrate/pivot.js +5 -1
  353. package/dist/orchestrate/pivot.js.map +1 -1
  354. package/dist/orchestrate/spawn-ops.d.ts +12 -0
  355. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  356. package/dist/orchestrate/spawn-ops.js +152 -57
  357. package/dist/orchestrate/spawn-ops.js.map +1 -1
  358. package/dist/orchestration/classify-readiness.d.ts +37 -1
  359. package/dist/orchestration/classify-readiness.d.ts.map +1 -1
  360. package/dist/orchestration/classify-readiness.js +48 -19
  361. package/dist/orchestration/classify-readiness.js.map +1 -1
  362. package/dist/orchestration/index.d.ts +3 -2
  363. package/dist/orchestration/index.d.ts.map +1 -1
  364. package/dist/orchestration/index.js +2 -1
  365. package/dist/orchestration/index.js.map +1 -1
  366. package/dist/orchestration/owner-decision-readiness.d.ts +88 -0
  367. package/dist/orchestration/owner-decision-readiness.d.ts.map +1 -0
  368. package/dist/orchestration/owner-decision-readiness.js +152 -0
  369. package/dist/orchestration/owner-decision-readiness.js.map +1 -0
  370. package/dist/orchestration/psyche-memory-budget.d.ts +105 -0
  371. package/dist/orchestration/psyche-memory-budget.d.ts.map +1 -0
  372. package/dist/orchestration/psyche-memory-budget.js +383 -0
  373. package/dist/orchestration/psyche-memory-budget.js.map +1 -0
  374. package/dist/orchestration/spawn-prompt.d.ts +12 -1
  375. package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
  376. package/dist/orchestration/spawn-prompt.js +141 -179
  377. package/dist/orchestration/spawn-prompt.js.map +1 -1
  378. package/dist/orchestration/spawn.d.ts +7 -0
  379. package/dist/orchestration/spawn.d.ts.map +1 -1
  380. package/dist/orchestration/spawn.js +1 -0
  381. package/dist/orchestration/spawn.js.map +1 -1
  382. package/dist/paths.d.ts +24 -8
  383. package/dist/paths.d.ts.map +1 -1
  384. package/dist/paths.js +135 -71
  385. package/dist/paths.js.map +1 -1
  386. package/dist/platform.d.ts +6 -1
  387. package/dist/platform.d.ts.map +1 -1
  388. package/dist/platform.js +8 -19
  389. package/dist/platform.js.map +1 -1
  390. package/dist/project-info.d.ts +18 -0
  391. package/dist/project-info.d.ts.map +1 -1
  392. package/dist/project-info.js +29 -1
  393. package/dist/project-info.js.map +1 -1
  394. package/dist/project-lifecycle.d.ts +91 -32
  395. package/dist/project-lifecycle.d.ts.map +1 -1
  396. package/dist/project-lifecycle.js +639 -75
  397. package/dist/project-lifecycle.js.map +1 -1
  398. package/dist/project-scope.d.ts +86 -4
  399. package/dist/project-scope.d.ts.map +1 -1
  400. package/dist/project-scope.js +226 -13
  401. package/dist/project-scope.js.map +1 -1
  402. package/dist/project-tombstone.d.ts +111 -0
  403. package/dist/project-tombstone.d.ts.map +1 -0
  404. package/dist/project-tombstone.js +220 -0
  405. package/dist/project-tombstone.js.map +1 -0
  406. package/dist/release/artifacts.d.ts.map +1 -1
  407. package/dist/release/artifacts.js +14 -9
  408. package/dist/release/artifacts.js.map +1 -1
  409. package/dist/release/ci-evidence.d.ts +223 -0
  410. package/dist/release/ci-evidence.d.ts.map +1 -0
  411. package/dist/release/ci-evidence.js +652 -0
  412. package/dist/release/ci-evidence.js.map +1 -0
  413. package/dist/release/engine-ops.d.ts.map +1 -1
  414. package/dist/release/engine-ops.js +3 -3
  415. package/dist/release/engine-ops.js.map +1 -1
  416. package/dist/release/plan.d.ts.map +1 -1
  417. package/dist/release/plan.js +7 -6
  418. package/dist/release/plan.js.map +1 -1
  419. package/dist/release/pr-evidence.d.ts +38 -0
  420. package/dist/release/pr-evidence.d.ts.map +1 -1
  421. package/dist/release/pr-evidence.js +67 -11
  422. package/dist/release/pr-evidence.js.map +1 -1
  423. package/dist/release/reconcile.d.ts.map +1 -1
  424. package/dist/release/reconcile.js +3 -2
  425. package/dist/release/reconcile.js.map +1 -1
  426. package/dist/release/release-manifest.d.ts +2 -1
  427. package/dist/release/release-manifest.d.ts.map +1 -1
  428. package/dist/release/release-manifest.js +6 -5
  429. package/dist/release/release-manifest.js.map +1 -1
  430. package/dist/render/nexus/graph/index.d.ts +4 -0
  431. package/dist/render/nexus/graph/index.d.ts.map +1 -1
  432. package/dist/render/nexus/graph/index.js +57 -0
  433. package/dist/render/nexus/graph/index.js.map +1 -1
  434. package/dist/resources/spawn-wrapper.d.ts +8 -1
  435. package/dist/resources/spawn-wrapper.d.ts.map +1 -1
  436. package/dist/resources/spawn-wrapper.js +42 -5
  437. package/dist/resources/spawn-wrapper.js.map +1 -1
  438. package/dist/routing/build-command-groups.d.ts.map +1 -1
  439. package/dist/routing/build-command-groups.js +1 -0
  440. package/dist/routing/build-command-groups.js.map +1 -1
  441. package/dist/sagas/index.d.ts +1 -1
  442. package/dist/sagas/index.d.ts.map +1 -1
  443. package/dist/sagas/index.js +1 -1
  444. package/dist/sagas/index.js.map +1 -1
  445. package/dist/sagas/reconcile.d.ts +24 -4
  446. package/dist/sagas/reconcile.d.ts.map +1 -1
  447. package/dist/sagas/reconcile.js +226 -100
  448. package/dist/sagas/reconcile.js.map +1 -1
  449. package/dist/scaffold/ensure-config.d.ts.map +1 -1
  450. package/dist/scaffold/ensure-config.js +31 -1
  451. package/dist/scaffold/ensure-config.js.map +1 -1
  452. package/dist/scaffold/project-identity.d.ts +2 -8
  453. package/dist/scaffold/project-identity.d.ts.map +1 -1
  454. package/dist/scaffold/project-identity.js +5 -21
  455. package/dist/scaffold/project-identity.js.map +1 -1
  456. package/dist/security/input-sanitization.d.ts +9 -1
  457. package/dist/security/input-sanitization.d.ts.map +1 -1
  458. package/dist/security/input-sanitization.js +12 -2
  459. package/dist/security/input-sanitization.js.map +1 -1
  460. package/dist/selfimprove/fix-gen.js +4321 -1807
  461. package/dist/selfimprove/fix-gen.js.map +3 -3
  462. package/dist/sentient/propose-tick.d.ts.map +1 -1
  463. package/dist/sentient/propose-tick.js +4 -2
  464. package/dist/sentient/propose-tick.js.map +1 -1
  465. package/dist/sequence/index.d.ts.map +1 -1
  466. package/dist/sequence/index.js +6 -23
  467. package/dist/sequence/index.js.map +1 -1
  468. package/dist/session/engine-ops.d.ts +9 -0
  469. package/dist/session/engine-ops.d.ts.map +1 -1
  470. package/dist/session/engine-ops.js +110 -18
  471. package/dist/session/engine-ops.js.map +1 -1
  472. package/dist/sessions/assumptions.d.ts.map +1 -1
  473. package/dist/sessions/assumptions.js +7 -4
  474. package/dist/sessions/assumptions.js.map +1 -1
  475. package/dist/sessions/briefing.d.ts +6 -0
  476. package/dist/sessions/briefing.d.ts.map +1 -1
  477. package/dist/sessions/briefing.js +12 -1
  478. package/dist/sessions/briefing.js.map +1 -1
  479. package/dist/sessions/decisions.d.ts +38 -3
  480. package/dist/sessions/decisions.d.ts.map +1 -1
  481. package/dist/sessions/decisions.js +235 -21
  482. package/dist/sessions/decisions.js.map +1 -1
  483. package/dist/sessions/drift-watchdog.d.ts.map +1 -1
  484. package/dist/sessions/drift-watchdog.js +4 -2
  485. package/dist/sessions/drift-watchdog.js.map +1 -1
  486. package/dist/sessions/index.d.ts.map +1 -1
  487. package/dist/sessions/index.js +33 -4
  488. package/dist/sessions/index.js.map +1 -1
  489. package/dist/sessions/session-end-snapshot-entry.d.ts +26 -0
  490. package/dist/sessions/session-end-snapshot-entry.d.ts.map +1 -0
  491. package/dist/sessions/session-end-snapshot-entry.js +59 -0
  492. package/dist/sessions/session-end-snapshot-entry.js.map +1 -0
  493. package/dist/sessions/session-end-snapshot.d.ts +114 -0
  494. package/dist/sessions/session-end-snapshot.d.ts.map +1 -0
  495. package/dist/sessions/session-end-snapshot.js +446 -0
  496. package/dist/sessions/session-end-snapshot.js.map +1 -0
  497. package/dist/sessions/session-manifest-mirror.d.ts.map +1 -1
  498. package/dist/sessions/session-manifest-mirror.js +10 -17
  499. package/dist/sessions/session-manifest-mirror.js.map +1 -1
  500. package/dist/sessions/session-switch.d.ts.map +1 -1
  501. package/dist/sessions/session-switch.js +5 -3
  502. package/dist/sessions/session-switch.js.map +1 -1
  503. package/dist/sessions/snapshot.d.ts.map +1 -1
  504. package/dist/sessions/snapshot.js +5 -4
  505. package/dist/sessions/snapshot.js.map +1 -1
  506. package/dist/sessions/terminal-identity.d.ts +169 -0
  507. package/dist/sessions/terminal-identity.d.ts.map +1 -0
  508. package/dist/sessions/terminal-identity.js +273 -0
  509. package/dist/sessions/terminal-identity.js.map +1 -0
  510. package/dist/setup/sections/verification.d.ts +1 -1
  511. package/dist/setup/sections/verification.d.ts.map +1 -1
  512. package/dist/setup/sections/verification.js +11 -15
  513. package/dist/setup/sections/verification.js.map +1 -1
  514. package/dist/skills/discovery.d.ts +8 -2
  515. package/dist/skills/discovery.d.ts.map +1 -1
  516. package/dist/skills/discovery.js +15 -3
  517. package/dist/skills/discovery.js.map +1 -1
  518. package/dist/skills/dispatch.d.ts +5 -2
  519. package/dist/skills/dispatch.d.ts.map +1 -1
  520. package/dist/skills/dispatch.js +5 -2
  521. package/dist/skills/dispatch.js.map +1 -1
  522. package/dist/skills/doctor.d.ts.map +1 -1
  523. package/dist/skills/doctor.js +5 -1
  524. package/dist/skills/doctor.js.map +1 -1
  525. package/dist/skills/federated-search.js +2 -2
  526. package/dist/skills/federated-search.js.map +1 -1
  527. package/dist/skills/index.d.ts +3 -3
  528. package/dist/skills/index.d.ts.map +1 -1
  529. package/dist/skills/index.js +1 -1
  530. package/dist/skills/index.js.map +1 -1
  531. package/dist/skills/install.d.ts +15 -2
  532. package/dist/skills/install.d.ts.map +1 -1
  533. package/dist/skills/install.js +21 -5
  534. package/dist/skills/install.js.map +1 -1
  535. package/dist/skills/migration.d.ts +5 -5
  536. package/dist/skills/migration.d.ts.map +1 -1
  537. package/dist/skills/migration.js +7 -9
  538. package/dist/skills/migration.js.map +1 -1
  539. package/dist/skills/orchestrator/startup.d.ts.map +1 -1
  540. package/dist/skills/orchestrator/startup.js +4 -2
  541. package/dist/skills/orchestrator/startup.js.map +1 -1
  542. package/dist/skills/skill-paths.d.ts +30 -3
  543. package/dist/skills/skill-paths.d.ts.map +1 -1
  544. package/dist/skills/skill-paths.js +28 -9
  545. package/dist/skills/skill-paths.js.map +1 -1
  546. package/dist/skills/skill-root.d.ts +60 -11
  547. package/dist/skills/skill-root.d.ts.map +1 -1
  548. package/dist/skills/skill-root.js +100 -14
  549. package/dist/skills/skill-root.js.map +1 -1
  550. package/dist/skills/skills-guard.js +5 -5
  551. package/dist/skills/skills-guard.js.map +1 -1
  552. package/dist/skills/types.d.ts +23 -0
  553. package/dist/skills/types.d.ts.map +1 -1
  554. package/dist/skills/types.js.map +1 -1
  555. package/dist/spawn/agent-identity.d.ts +51 -2
  556. package/dist/spawn/agent-identity.d.ts.map +1 -1
  557. package/dist/spawn/agent-identity.js +89 -26
  558. package/dist/spawn/agent-identity.js.map +1 -1
  559. package/dist/spawn/branch-lock.d.ts.map +1 -1
  560. package/dist/spawn/branch-lock.js +56 -79
  561. package/dist/spawn/branch-lock.js.map +1 -1
  562. package/dist/spawn/index.d.ts +2 -2
  563. package/dist/spawn/index.d.ts.map +1 -1
  564. package/dist/spawn/index.js +1 -1
  565. package/dist/spawn/index.js.map +1 -1
  566. package/dist/spawn/worktree-lock-holder.d.ts +37 -0
  567. package/dist/spawn/worktree-lock-holder.d.ts.map +1 -0
  568. package/dist/spawn/worktree-lock-holder.js +41 -0
  569. package/dist/spawn/worktree-lock-holder.js.map +1 -0
  570. package/dist/sticky/convert.d.ts.map +1 -1
  571. package/dist/sticky/convert.js +16 -4
  572. package/dist/sticky/convert.js.map +1 -1
  573. package/dist/store/attachment-store.d.ts +14 -0
  574. package/dist/store/attachment-store.d.ts.map +1 -1
  575. package/dist/store/attachment-store.js +11 -1
  576. package/dist/store/attachment-store.js.map +1 -1
  577. package/dist/store/backup-inspect.d.ts +7 -3
  578. package/dist/store/backup-inspect.d.ts.map +1 -1
  579. package/dist/store/backup-inspect.js +18 -7
  580. package/dist/store/backup-inspect.js.map +1 -1
  581. package/dist/store/backup-sidecar.d.ts +60 -0
  582. package/dist/store/backup-sidecar.d.ts.map +1 -0
  583. package/dist/store/backup-sidecar.js +96 -0
  584. package/dist/store/backup-sidecar.js.map +1 -0
  585. package/dist/store/data-accessor.d.ts +1 -1
  586. package/dist/store/data-accessor.d.ts.map +1 -1
  587. package/dist/store/data-accessor.js +6 -6
  588. package/dist/store/data-accessor.js.map +1 -1
  589. package/dist/store/data-safety-central.d.ts +13 -4
  590. package/dist/store/data-safety-central.d.ts.map +1 -1
  591. package/dist/store/data-safety-central.js +31 -4
  592. package/dist/store/data-safety-central.js.map +1 -1
  593. package/dist/store/dual-scope-db.d.ts.map +1 -1
  594. package/dist/store/dual-scope-db.js +10 -0
  595. package/dist/store/dual-scope-db.js.map +1 -1
  596. package/dist/store/exodus/__fixtures__/representative-fixture.d.ts.map +1 -1
  597. package/dist/store/exodus/__fixtures__/representative-fixture.js +4 -0
  598. package/dist/store/exodus/__fixtures__/representative-fixture.js.map +1 -1
  599. package/dist/store/exodus/migrate.js +1 -1
  600. package/dist/store/exodus/migrate.js.map +1 -1
  601. package/dist/store/exodus/reconcile.js +1 -1
  602. package/dist/store/exodus/reconcile.js.map +1 -1
  603. package/dist/store/exodus/runtime-targets.d.ts +4 -3
  604. package/dist/store/exodus/runtime-targets.d.ts.map +1 -1
  605. package/dist/store/exodus/runtime-targets.js +4 -3
  606. package/dist/store/exodus/runtime-targets.js.map +1 -1
  607. package/dist/store/import-logging.d.ts.map +1 -1
  608. package/dist/store/import-logging.js +5 -4
  609. package/dist/store/import-logging.js.map +1 -1
  610. package/dist/store/legacy-tasks-lineage.d.ts.map +1 -1
  611. package/dist/store/legacy-tasks-lineage.js +2 -7
  612. package/dist/store/legacy-tasks-lineage.js.map +1 -1
  613. package/dist/store/lock.d.ts +1 -0
  614. package/dist/store/lock.d.ts.map +1 -1
  615. package/dist/store/lock.js +1 -0
  616. package/dist/store/lock.js.map +1 -1
  617. package/dist/store/memory-accessor.d.ts +8 -3
  618. package/dist/store/memory-accessor.d.ts.map +1 -1
  619. package/dist/store/memory-accessor.js +29 -13
  620. package/dist/store/memory-accessor.js.map +1 -1
  621. package/dist/store/memory-sqlite.d.ts.map +1 -1
  622. package/dist/store/memory-sqlite.js +5 -0
  623. package/dist/store/memory-sqlite.js.map +1 -1
  624. package/dist/store/open-cleo-db.d.ts.map +1 -1
  625. package/dist/store/open-cleo-db.js +11 -6
  626. package/dist/store/open-cleo-db.js.map +1 -1
  627. package/dist/store/portable-bundle-relocate.d.ts +13 -8
  628. package/dist/store/portable-bundle-relocate.d.ts.map +1 -1
  629. package/dist/store/portable-bundle-relocate.js +75 -31
  630. package/dist/store/portable-bundle-relocate.js.map +1 -1
  631. package/dist/store/portable-bundle-scan.d.ts.map +1 -1
  632. package/dist/store/portable-bundle-scan.js +2 -1
  633. package/dist/store/portable-bundle-scan.js.map +1 -1
  634. package/dist/store/portable-bundle.d.ts.map +1 -1
  635. package/dist/store/portable-bundle.js +7 -3
  636. package/dist/store/portable-bundle.js.map +1 -1
  637. package/dist/store/pre-repair-snapshot.d.ts +77 -0
  638. package/dist/store/pre-repair-snapshot.d.ts.map +1 -0
  639. package/dist/store/pre-repair-snapshot.js +122 -0
  640. package/dist/store/pre-repair-snapshot.js.map +1 -0
  641. package/dist/store/regenerators.d.ts +2 -1
  642. package/dist/store/regenerators.d.ts.map +1 -1
  643. package/dist/store/regenerators.js +17 -3
  644. package/dist/store/regenerators.js.map +1 -1
  645. package/dist/store/relocated-store-guard.d.ts +71 -0
  646. package/dist/store/relocated-store-guard.d.ts.map +1 -0
  647. package/dist/store/relocated-store-guard.js +138 -0
  648. package/dist/store/relocated-store-guard.js.map +1 -0
  649. package/dist/store/safety-data-accessor.d.ts +2 -2
  650. package/dist/store/safety-data-accessor.d.ts.map +1 -1
  651. package/dist/store/safety-data-accessor.js +2 -2
  652. package/dist/store/safety-data-accessor.js.map +1 -1
  653. package/dist/store/schema/attachments.d.ts +2 -2
  654. package/dist/store/schema/audit.d.ts +5 -5
  655. package/dist/store/schema/background-jobs.d.ts +1 -1
  656. package/dist/store/schema/cleo-global/models-catalog.d.ts +1 -1
  657. package/dist/store/schema/cleo-global/nexus.d.ts +686 -0
  658. package/dist/store/schema/cleo-global/nexus.d.ts.map +1 -1
  659. package/dist/store/schema/cleo-global/nexus.js +175 -7
  660. package/dist/store/schema/cleo-global/nexus.js.map +1 -1
  661. package/dist/store/schema/cleo-global/skills.d.ts +2 -2
  662. package/dist/store/schema/cleo-project/audit.d.ts +5 -5
  663. package/dist/store/schema/cleo-project/docs.d.ts +3 -3
  664. package/dist/store/schema/cleo-project/lifecycle.d.ts +3 -3
  665. package/dist/store/schema/cleo-project/provenance-commits.d.ts +2 -2
  666. package/dist/store/schema/cleo-project/provenance-rest.d.ts +3 -3
  667. package/dist/store/schema/cleo-project/tasks-core-batch2.d.ts +1 -1
  668. package/dist/store/schema/cleo-project/tasks-core.d.ts +6 -6
  669. package/dist/store/schema/cleo-shared/brain.d.ts +26 -26
  670. package/dist/store/schema/lifecycle.d.ts +3 -3
  671. package/dist/store/schema/manifest.d.ts +1 -1
  672. package/dist/store/schema/memory-schema.d.ts +26 -26
  673. package/dist/store/schema/nexus-schema.d.ts +696 -2
  674. package/dist/store/schema/nexus-schema.d.ts.map +1 -1
  675. package/dist/store/schema/nexus-schema.js +175 -19
  676. package/dist/store/schema/nexus-schema.js.map +1 -1
  677. package/dist/store/schema/provenance/releases.d.ts +1 -1
  678. package/dist/store/schema/skills-schema.d.ts +2 -2
  679. package/dist/store/schema/tasks.d.ts +5 -5
  680. package/dist/store/session-binding-schema.d.ts +132 -0
  681. package/dist/store/session-binding-schema.d.ts.map +1 -0
  682. package/dist/store/session-binding-schema.js +53 -0
  683. package/dist/store/session-binding-schema.js.map +1 -0
  684. package/dist/store/session-store.d.ts +262 -4
  685. package/dist/store/session-store.d.ts.map +1 -1
  686. package/dist/store/session-store.js +486 -26
  687. package/dist/store/session-store.js.map +1 -1
  688. package/dist/store/snapshot-gate.d.ts +239 -0
  689. package/dist/store/snapshot-gate.d.ts.map +1 -0
  690. package/dist/store/snapshot-gate.js +398 -0
  691. package/dist/store/snapshot-gate.js.map +1 -0
  692. package/dist/store/split-brain-import.js +2 -2
  693. package/dist/store/split-brain-import.js.map +1 -1
  694. package/dist/store/sqlite-backup.d.ts +55 -13
  695. package/dist/store/sqlite-backup.d.ts.map +1 -1
  696. package/dist/store/sqlite-backup.js +414 -106
  697. package/dist/store/sqlite-backup.js.map +1 -1
  698. package/dist/store/sqlite-data-accessor.d.ts +15 -0
  699. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  700. package/dist/store/sqlite-data-accessor.js +63 -4
  701. package/dist/store/sqlite-data-accessor.js.map +1 -1
  702. package/dist/store/sqlite.d.ts +1 -1
  703. package/dist/store/sqlite.d.ts.map +1 -1
  704. package/dist/store/sqlite.js +53 -5
  705. package/dist/store/sqlite.js.map +1 -1
  706. package/dist/store/store-write-guard.d.ts +28 -0
  707. package/dist/store/store-write-guard.d.ts.map +1 -0
  708. package/dist/store/store-write-guard.js +50 -0
  709. package/dist/store/store-write-guard.js.map +1 -0
  710. package/dist/store/table-classification.d.ts +143 -0
  711. package/dist/store/table-classification.d.ts.map +1 -0
  712. package/dist/store/table-classification.js +1866 -0
  713. package/dist/store/table-classification.js.map +1 -0
  714. package/dist/store/task-version.d.ts +72 -0
  715. package/dist/store/task-version.d.ts.map +1 -0
  716. package/dist/store/task-version.js +93 -0
  717. package/dist/store/task-version.js.map +1 -0
  718. package/dist/store/tasks-schema.d.ts +1 -0
  719. package/dist/store/tasks-schema.d.ts.map +1 -1
  720. package/dist/store/tasks-schema.js +13 -0
  721. package/dist/store/tasks-schema.js.map +1 -1
  722. package/dist/store/tasks-sqlite.d.ts +10 -3
  723. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  724. package/dist/store/tasks-sqlite.js +12 -3
  725. package/dist/store/tasks-sqlite.js.map +1 -1
  726. package/dist/store/twin-collapse.d.ts +275 -0
  727. package/dist/store/twin-collapse.d.ts.map +1 -0
  728. package/dist/store/twin-collapse.js +805 -0
  729. package/dist/store/twin-collapse.js.map +1 -0
  730. package/dist/store/umbrella-data-accessor.d.ts +2 -2
  731. package/dist/store/umbrella-data-accessor.d.ts.map +1 -1
  732. package/dist/store/umbrella-data-accessor.js +2 -2
  733. package/dist/store/umbrella-data-accessor.js.map +1 -1
  734. package/dist/store/validation-schemas.d.ts +63 -63
  735. package/dist/store/worktree-isolation-guard.d.ts +46 -24
  736. package/dist/store/worktree-isolation-guard.d.ts.map +1 -1
  737. package/dist/store/worktree-isolation-guard.js +69 -50
  738. package/dist/store/worktree-isolation-guard.js.map +1 -1
  739. package/dist/system/backup.d.ts.map +1 -1
  740. package/dist/system/backup.js +3 -67
  741. package/dist/system/backup.js.map +1 -1
  742. package/dist/system/cleo-link.d.ts +163 -0
  743. package/dist/system/cleo-link.d.ts.map +1 -0
  744. package/dist/system/cleo-link.js +246 -0
  745. package/dist/system/cleo-link.js.map +1 -0
  746. package/dist/system/dependencies.d.ts.map +1 -1
  747. package/dist/system/dependencies.js +26 -41
  748. package/dist/system/dependencies.js.map +1 -1
  749. package/dist/system/global-delivery.d.ts +205 -0
  750. package/dist/system/global-delivery.d.ts.map +1 -0
  751. package/dist/system/global-delivery.js +320 -0
  752. package/dist/system/global-delivery.js.map +1 -0
  753. package/dist/system/health.d.ts.map +1 -1
  754. package/dist/system/health.js +29 -6
  755. package/dist/system/health.js.map +1 -1
  756. package/dist/system/project-health.d.ts.map +1 -1
  757. package/dist/system/project-health.js +1 -20
  758. package/dist/system/project-health.js.map +1 -1
  759. package/dist/system/runtime.d.ts.map +1 -1
  760. package/dist/system/runtime.js +2 -12
  761. package/dist/system/runtime.js.map +1 -1
  762. package/dist/system/safestop.d.ts.map +1 -1
  763. package/dist/system/safestop.js +5 -2
  764. package/dist/system/safestop.js.map +1 -1
  765. package/dist/system/skill-fixtures.d.ts +200 -0
  766. package/dist/system/skill-fixtures.d.ts.map +1 -0
  767. package/dist/system/skill-fixtures.js +331 -0
  768. package/dist/system/skill-fixtures.js.map +1 -0
  769. package/dist/tasks/add.d.ts.map +1 -1
  770. package/dist/tasks/add.js +4 -2
  771. package/dist/tasks/add.js.map +1 -1
  772. package/dist/tasks/affected-packages.d.ts +173 -0
  773. package/dist/tasks/affected-packages.d.ts.map +1 -0
  774. package/dist/tasks/affected-packages.js +389 -0
  775. package/dist/tasks/affected-packages.js.map +1 -0
  776. package/dist/tasks/change-set.d.ts +151 -0
  777. package/dist/tasks/change-set.d.ts.map +1 -0
  778. package/dist/tasks/change-set.js +634 -0
  779. package/dist/tasks/change-set.js.map +1 -0
  780. package/dist/tasks/complete.d.ts.map +1 -1
  781. package/dist/tasks/complete.js +10 -5
  782. package/dist/tasks/complete.js.map +1 -1
  783. package/dist/tasks/done-plan.d.ts +103 -0
  784. package/dist/tasks/done-plan.d.ts.map +1 -0
  785. package/dist/tasks/done-plan.js +541 -0
  786. package/dist/tasks/done-plan.js.map +1 -0
  787. package/dist/tasks/done-record.d.ts +127 -0
  788. package/dist/tasks/done-record.d.ts.map +1 -0
  789. package/dist/tasks/done-record.js +373 -0
  790. package/dist/tasks/done-record.js.map +1 -0
  791. package/dist/tasks/duplicate-detector.d.ts +68 -11
  792. package/dist/tasks/duplicate-detector.d.ts.map +1 -1
  793. package/dist/tasks/duplicate-detector.js +314 -58
  794. package/dist/tasks/duplicate-detector.js.map +1 -1
  795. package/dist/tasks/evidence-paths.d.ts +78 -0
  796. package/dist/tasks/evidence-paths.d.ts.map +1 -0
  797. package/dist/tasks/evidence-paths.js +150 -0
  798. package/dist/tasks/evidence-paths.js.map +1 -0
  799. package/dist/tasks/evidence.d.ts +55 -0
  800. package/dist/tasks/evidence.d.ts.map +1 -1
  801. package/dist/tasks/evidence.js +223 -26
  802. package/dist/tasks/evidence.js.map +1 -1
  803. package/dist/tasks/gate-preview.d.ts +5 -0
  804. package/dist/tasks/gate-preview.d.ts.map +1 -1
  805. package/dist/tasks/gate-preview.js +25 -21
  806. package/dist/tasks/gate-preview.js.map +1 -1
  807. package/dist/tasks/gate-result-cache.d.ts +205 -0
  808. package/dist/tasks/gate-result-cache.d.ts.map +1 -0
  809. package/dist/tasks/gate-result-cache.js +285 -0
  810. package/dist/tasks/gate-result-cache.js.map +1 -0
  811. package/dist/tasks/gate-runner.d.ts +126 -3
  812. package/dist/tasks/gate-runner.d.ts.map +1 -1
  813. package/dist/tasks/gate-runner.js +483 -28
  814. package/dist/tasks/gate-runner.js.map +1 -1
  815. package/dist/tasks/session-scope.d.ts +3 -1
  816. package/dist/tasks/session-scope.d.ts.map +1 -1
  817. package/dist/tasks/session-scope.js +18 -3
  818. package/dist/tasks/session-scope.js.map +1 -1
  819. package/dist/tasks/tool-resolver.d.ts +23 -6
  820. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  821. package/dist/tasks/tool-resolver.js +146 -8
  822. package/dist/tasks/tool-resolver.js.map +1 -1
  823. package/dist/tasks/tool-vacuity.d.ts +71 -0
  824. package/dist/tasks/tool-vacuity.d.ts.map +1 -0
  825. package/dist/tasks/tool-vacuity.js +334 -0
  826. package/dist/tasks/tool-vacuity.js.map +1 -0
  827. package/dist/tasks/update.d.ts +8 -0
  828. package/dist/tasks/update.d.ts.map +1 -1
  829. package/dist/tasks/update.js +159 -78
  830. package/dist/tasks/update.js.map +1 -1
  831. package/dist/upgrade.d.ts.map +1 -1
  832. package/dist/upgrade.js +18 -2
  833. package/dist/upgrade.js.map +1 -1
  834. package/dist/validation/doctor/checks.d.ts +20 -2
  835. package/dist/validation/doctor/checks.d.ts.map +1 -1
  836. package/dist/validation/doctor/checks.js +64 -4
  837. package/dist/validation/doctor/checks.js.map +1 -1
  838. package/dist/validation/doctor/index.d.ts +1 -1
  839. package/dist/validation/doctor/index.d.ts.map +1 -1
  840. package/dist/validation/doctor/index.js +1 -1
  841. package/dist/validation/doctor/index.js.map +1 -1
  842. package/dist/validation/doctor/utils.d.ts.map +1 -1
  843. package/dist/validation/doctor/utils.js +7 -2
  844. package/dist/validation/doctor/utils.js.map +1 -1
  845. package/dist/validation/engine-ops.d.ts +15 -0
  846. package/dist/validation/engine-ops.d.ts.map +1 -1
  847. package/dist/validation/engine-ops.js +249 -98
  848. package/dist/validation/engine-ops.js.map +1 -1
  849. package/migrations/drizzle-cleo-global/20260927000000_t12469-project-locations/migration.sql +121 -0
  850. package/migrations/drizzle-cleo-global/20260927010000_t12543-user-profile-project-scope/migration.sql +23 -0
  851. package/migrations/drizzle-cleo-global/20260928010000_t12470-location-candidates/migration.sql +72 -0
  852. package/migrations/drizzle-cleo-global/20260928020000_t12510-nexus-devices/migration.sql +34 -0
  853. package/migrations/drizzle-cleo-global/20260928030000_t12511-project-git-state/migration.sql +62 -0
  854. package/migrations/drizzle-cleo-project/20260927000000_t12499-session-terminal-bindings/migration.sql +34 -0
  855. package/migrations/drizzle-cleo-project/20260928000000_t12500-binding-provider-flag/migration.sql +15 -0
  856. package/package.json +23 -13
  857. package/schemas/config.schema.json +54 -0
  858. package/schemas/project-context.schema.json +51 -3
  859. package/schemas/project-info.schema.json +28 -1
  860. package/templates/CLEO-INJECTION.md +40 -332
  861. package/templates/CLEO-REFERENCE.md +303 -0
  862. package/templates/workflows/README.md +36 -14
  863. package/templates/workflows/release-prepare.yml.tmpl +7 -0
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Operator-facing decision operations behind `cleo decide config|status|ask`.
3
+ *
4
+ * All logic lives here (the CLI handlers are thin, arch gate 6). Every value
5
+ * these functions return is secret-free: the API key appears only as a masked
6
+ * last-4 preview.
7
+ *
8
+ * @task T12491
9
+ * @epic T12486
10
+ */
11
+ import { getProjectRoot } from '../paths.js';
12
+ import { createJsonlDecisionAudit, } from './audit.js';
13
+ import { decide } from './client.js';
14
+ import { clearDecideCredentials, DecideCredentialsError, describeDecideCredentials, loadDecideConnection, sameDecideHost, saveDecideCredentials, } from './credentials.js';
15
+ import { listJevModels } from './jev-wire.js';
16
+ import { DecisionProviderError } from './provider.js';
17
+ /** Default deadline for the `GET /v1/models` probe, ms. */
18
+ export const DEFAULT_DECIDE_PROBE_TIMEOUT_MS = 3_000;
19
+ /** Default deadline for `cleo decide ask`, ms (generous: it is a debug tool). */
20
+ export const DEFAULT_DECIDE_ASK_TIMEOUT_MS = 10_000;
21
+ const NO_MODEL_WARNING = 'No default model is configured. The Jev /v1/systemone endpoint requires a model; set one with `cleo decide config --model <name>` (see `models`).';
22
+ function stateForError(err) {
23
+ if (err instanceof DecisionProviderError) {
24
+ if (err.kind === 'unauthorized')
25
+ return { state: 'unauthorized', httpStatus: err.status };
26
+ if (err.kind === 'invalid_response')
27
+ return { state: 'reachable', httpStatus: err.status };
28
+ return {
29
+ state: 'unreachable',
30
+ ...(err.status !== undefined ? { httpStatus: err.status } : {}),
31
+ };
32
+ }
33
+ return { state: 'unreachable' };
34
+ }
35
+ /**
36
+ * Probe the provider with `GET {baseUrl}/v1/models` under a short deadline.
37
+ * Never throws.
38
+ *
39
+ * @param opts - Connection, `fetch` and deadline.
40
+ * @returns The reachability verdict and, when listed, the available models.
41
+ */
42
+ export async function probeDecideProvider(opts = {}) {
43
+ const sealed = opts.connection === undefined ? loadDecideConnection() : opts.connection;
44
+ if (!sealed) {
45
+ return {
46
+ state: 'unconfigured',
47
+ modelsEndpoint: 'skipped',
48
+ detail: 'Run `cleo decide config`.',
49
+ };
50
+ }
51
+ const base = {
52
+ baseUrl: sealed.baseUrl,
53
+ keyPreview: sealed.keyPreview,
54
+ ...(sealed.model ? { model: sealed.model } : {}),
55
+ };
56
+ const started = performance.now();
57
+ const signal = AbortSignal.timeout(opts.timeoutMs ?? DEFAULT_DECIDE_PROBE_TIMEOUT_MS);
58
+ try {
59
+ const models = await listJevModels(sealed.connection(), signal, { fetch: opts.fetch });
60
+ return {
61
+ ...base,
62
+ state: 'reachable',
63
+ modelsEndpoint: 'ok',
64
+ models,
65
+ httpStatus: 200,
66
+ latencyMs: Math.round(performance.now() - started),
67
+ ...(sealed.model ? {} : { detail: NO_MODEL_WARNING }),
68
+ };
69
+ }
70
+ catch (err) {
71
+ const verdict = stateForError(err);
72
+ return {
73
+ ...base,
74
+ ...verdict,
75
+ modelsEndpoint: 'failed',
76
+ latencyMs: Math.round(performance.now() - started),
77
+ detail: err instanceof Error ? err.message : 'probe failed',
78
+ };
79
+ }
80
+ }
81
+ /**
82
+ * Store the provider settings, merging omitted values with the stored ones.
83
+ *
84
+ * The Jev `/v1/systemone` endpoint requires a `model`, and no model literal
85
+ * may be hard-coded in core (arch gate 13). So when no model is given (and
86
+ * none is stored for the same URL), this asks the provider (`GET /v1/models`)
87
+ * and stores the FIRST model it lists — the provider's own ordering; layahost
88
+ * lists its routing default first. When that lookup fails the settings are
89
+ * still stored, without a model, and a warning says how to set one.
90
+ *
91
+ * @param input - URL, key, optional model.
92
+ * @returns Secret-free summary plus the model's provenance.
93
+ * A URL whose host differs from the stored one must come with a fresh key:
94
+ * the stored key is never re-used (or sent in the model probe) for a new host.
95
+ *
96
+ * @throws {DecideCredentialsError} On an invalid URL, blank key, invalid model
97
+ * name, or a host change without a fresh key.
98
+ */
99
+ export async function configureDecide(input) {
100
+ const stored = loadDecideConnection();
101
+ const baseUrl = input.baseUrl?.trim() || stored?.baseUrl || '';
102
+ const freshKey = input.apiKey?.trim();
103
+ if (!freshKey && stored && !sameDecideHost(stored.baseUrl, baseUrl)) {
104
+ throw new DecideCredentialsError('changing the provider host requires a fresh key; pass --key-stdin (the stored key is never sent to a new host)');
105
+ }
106
+ const apiKey = freshKey || stored?.connection().apiKey || '';
107
+ const explicit = input.model?.trim();
108
+ if (explicit) {
109
+ return {
110
+ ...(await saveDecideCredentials({ baseUrl, apiKey, model: explicit })),
111
+ modelSource: 'flag',
112
+ };
113
+ }
114
+ if (stored?.model && stored.baseUrl === baseUrl) {
115
+ const kept = await saveDecideCredentials({ baseUrl, apiKey, model: stored.model });
116
+ return { ...kept, modelSource: 'stored' };
117
+ }
118
+ const saved = await saveDecideCredentials({ baseUrl, apiKey });
119
+ const probe = await probeDecideProvider({
120
+ connection: loadDecideConnection(),
121
+ fetch: input.fetch,
122
+ timeoutMs: input.timeoutMs,
123
+ });
124
+ const first = probe.models?.[0];
125
+ if (!first) {
126
+ const why = probe.state === 'reachable' ? 'the provider listed no models' : `probe ${probe.state}`;
127
+ return {
128
+ ...saved,
129
+ modelSource: 'none',
130
+ warning: `No model stored (${why}). ${NO_MODEL_WARNING}`,
131
+ };
132
+ }
133
+ const withModel = await saveDecideCredentials({ baseUrl, apiKey, model: first });
134
+ return { ...withModel, modelSource: 'provider-listing' };
135
+ }
136
+ /**
137
+ * Remove the stored settings (and rotated backups of them).
138
+ *
139
+ * @returns Whether anything was stored, plus the (now empty) summary.
140
+ */
141
+ export async function clearDecideConfig() {
142
+ const cleared = await clearDecideCredentials();
143
+ return { ...describeDecideCredentials(), cleared };
144
+ }
145
+ /** Neutral heuristic for the debug question: 50/50 with zero confidence. */
146
+ const NEUTRAL_NOUL = {
147
+ type: 'noul',
148
+ value: false,
149
+ probability: 0.5,
150
+ confidence: 0,
151
+ };
152
+ function teeAudit(projectRoot) {
153
+ let last;
154
+ let file = null;
155
+ try {
156
+ file = createJsonlDecisionAudit(projectRoot ?? getProjectRoot());
157
+ }
158
+ catch {
159
+ file = null;
160
+ }
161
+ return {
162
+ sink: {
163
+ write: (e) => {
164
+ last = e;
165
+ file?.write(e);
166
+ },
167
+ },
168
+ last: () => last,
169
+ };
170
+ }
171
+ /**
172
+ * Ask one yes/no question through the configured provider (debug surface).
173
+ * Uses no cache, so a repeat is a real round trip. Never throws.
174
+ *
175
+ * @param input - State, question and deadline.
176
+ * @returns The typed answer with source, fallback reason, latency and cost.
177
+ */
178
+ export async function askDecideDebug(input) {
179
+ const sealed = loadDecideConnection();
180
+ const audit = teeAudit(input.projectRoot);
181
+ const outcome = await decide('cli.decide-ask', { state: input.state, questions: { answer: { type: 'noul', criteria: input.question } } }, () => ({ answer: NEUTRAL_NOUL }), {
182
+ connection: sealed?.connection() ?? null,
183
+ cache: null,
184
+ audit: audit.sink,
185
+ timeoutMs: input.timeoutMs ?? DEFAULT_DECIDE_ASK_TIMEOUT_MS,
186
+ });
187
+ const reason = audit.last()?.fallbackReason;
188
+ return {
189
+ answer: outcome.answers['answer'] ?? NEUTRAL_NOUL,
190
+ source: outcome.source,
191
+ ...(reason ? { fallbackReason: reason } : {}),
192
+ latencyMs: Math.round(outcome.latencyMs),
193
+ ...(outcome.costUsd !== undefined ? { costUsd: outcome.costUsd } : {}),
194
+ ...(outcome.requestId ? { requestId: outcome.requestId } : {}),
195
+ ...(sealed?.model ? { model: sealed.model } : {}),
196
+ ...(sealed ? { keyPreview: sealed.keyPreview } : {}),
197
+ };
198
+ }
199
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/decide/operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Decision-provider port — the swap point for "System One" typed decisions.
3
+ *
4
+ * A {@link DecisionProvider} executes one {@link DecisionRequest} and returns a
5
+ * {@link DecisionOutcome} with `source: 'provider'`. It knows nothing about
6
+ * caching, budgets, fallbacks or audit — those belong to the client
7
+ * (`./client.ts`). A provider SIGNALS failure by throwing a
8
+ * {@link DecisionProviderError}; the client converts every failure into a
9
+ * heuristic fallback, so callers of the client never see these errors.
10
+ *
11
+ * Swapping vendors means writing a new provider; the client, cache, budget and
12
+ * audit layers stay unchanged.
13
+ *
14
+ * @task T12490
15
+ * @epic T12486
16
+ */
17
+ import type { DecisionOutcome, DecisionProviderConfig, DecisionRequest } from '@cleocode/contracts';
18
+ /**
19
+ * Connection settings for a key-authenticated decision provider: the base URL
20
+ * from the contract plus the API key. The key is sent as a bearer token and is
21
+ * never logged, cached or audited.
22
+ */
23
+ export interface DecisionProviderConnection extends DecisionProviderConfig {
24
+ /** API key, sent as `Authorization: Bearer <apiKey>`. */
25
+ readonly apiKey: string;
26
+ /**
27
+ * Default model for requests that do not name one. Absent → the request is
28
+ * sent without a model and the provider's own default (if any) applies.
29
+ */
30
+ readonly model?: string;
31
+ }
32
+ /**
33
+ * A typed-decision backend.
34
+ *
35
+ * Implementations MUST honour `signal` (abort the in-flight request when it
36
+ * fires) and MUST throw a {@link DecisionProviderError} — never return a
37
+ * partial outcome — when they cannot answer every question in the request.
38
+ */
39
+ export interface DecisionProvider {
40
+ /**
41
+ * Execute one decision request.
42
+ *
43
+ * @param req - The (already redacted and validated) request.
44
+ * @param signal - Aborts the call; fired by the client's per-site timeout.
45
+ * @returns An outcome whose `answers` cover every question in `req`.
46
+ */
47
+ decide(req: DecisionRequest, signal: AbortSignal): Promise<DecisionOutcome>;
48
+ }
49
+ /**
50
+ * Why a provider call failed. Drives the client's fallback reason and, for
51
+ * `rate_limited`, the shared budget cool-down.
52
+ *
53
+ * - `unauthorized` — 401: bad or missing key.
54
+ * - `insufficient_credits` — 402: the account is out of credit.
55
+ * - `rate_limited` — 429: slow down; see `retryAfterMs`.
56
+ * - `invalid_request` — 422 or another 4xx: the provider rejected the request.
57
+ * - `server_error` — 5xx.
58
+ * - `network` — the request never produced an HTTP response.
59
+ * - `aborted` — the caller's signal fired (timeout).
60
+ * - `invalid_response` — a 2xx whose body did not match the expected shape.
61
+ */
62
+ export type DecisionProviderErrorKind = 'unauthorized' | 'insufficient_credits' | 'rate_limited' | 'invalid_request' | 'server_error' | 'network' | 'aborted' | 'invalid_response';
63
+ /** Construction options for {@link DecisionProviderError}. */
64
+ export interface DecisionProviderErrorOptions {
65
+ /** HTTP status, when the failure came from an HTTP response. */
66
+ readonly status?: number;
67
+ /** Server-requested back-off in milliseconds (429 `retry-after`). */
68
+ readonly retryAfterMs?: number;
69
+ /** Underlying cause, for diagnostics. */
70
+ readonly cause?: Error;
71
+ }
72
+ /**
73
+ * The single error type a {@link DecisionProvider} throws. The message never
74
+ * contains the API key or the request state.
75
+ */
76
+ export declare class DecisionProviderError extends Error {
77
+ /** Failure classification. */
78
+ readonly kind: DecisionProviderErrorKind;
79
+ /** HTTP status, when known. */
80
+ readonly status?: number;
81
+ /** Server-requested back-off in milliseconds, when known. */
82
+ readonly retryAfterMs?: number;
83
+ /**
84
+ * @param kind - Failure classification.
85
+ * @param message - Human-readable, secret-free description.
86
+ * @param opts - Status, retry-after and cause.
87
+ */
88
+ constructor(kind: DecisionProviderErrorKind, message: string, opts?: DecisionProviderErrorOptions);
89
+ }
90
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/decide/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEpG;;;;GAIG;AACH,MAAM,WAAW,0BAA2B,SAAQ,sBAAsB;IACxE,yDAAyD;IACzD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,MAAM,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC7E;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,yBAAyB,GACjC,cAAc,GACd,sBAAsB,GACtB,cAAc,GACd,iBAAiB,GACjB,cAAc,GACd,SAAS,GACT,SAAS,GACT,kBAAkB,CAAC;AAEvB,8DAA8D;AAC9D,MAAM,WAAW,4BAA4B;IAC3C,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,yCAAyC;IACzC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,8BAA8B;IAC9B,QAAQ,CAAC,IAAI,EAAE,yBAAyB,CAAC;IACzC,+BAA+B;IAC/B,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAE/B;;;;OAIG;gBAED,IAAI,EAAE,yBAAyB,EAC/B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,4BAAiC;CAQ1C"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Decision-provider port — the swap point for "System One" typed decisions.
3
+ *
4
+ * A {@link DecisionProvider} executes one {@link DecisionRequest} and returns a
5
+ * {@link DecisionOutcome} with `source: 'provider'`. It knows nothing about
6
+ * caching, budgets, fallbacks or audit — those belong to the client
7
+ * (`./client.ts`). A provider SIGNALS failure by throwing a
8
+ * {@link DecisionProviderError}; the client converts every failure into a
9
+ * heuristic fallback, so callers of the client never see these errors.
10
+ *
11
+ * Swapping vendors means writing a new provider; the client, cache, budget and
12
+ * audit layers stay unchanged.
13
+ *
14
+ * @task T12490
15
+ * @epic T12486
16
+ */
17
+ /**
18
+ * The single error type a {@link DecisionProvider} throws. The message never
19
+ * contains the API key or the request state.
20
+ */
21
+ export class DecisionProviderError extends Error {
22
+ /** Failure classification. */
23
+ kind;
24
+ /** HTTP status, when known. */
25
+ status;
26
+ /** Server-requested back-off in milliseconds, when known. */
27
+ retryAfterMs;
28
+ /**
29
+ * @param kind - Failure classification.
30
+ * @param message - Human-readable, secret-free description.
31
+ * @param opts - Status, retry-after and cause.
32
+ */
33
+ constructor(kind, message, opts = {}) {
34
+ super(message, opts.cause ? { cause: opts.cause } : undefined);
35
+ this.name = 'DecisionProviderError';
36
+ this.kind = kind;
37
+ if (opts.status !== undefined)
38
+ this.status = opts.status;
39
+ if (opts.retryAfterMs !== undefined)
40
+ this.retryAfterMs = opts.retryAfterMs;
41
+ }
42
+ }
43
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/decide/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAsEH;;;GAGG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAC9C,8BAA8B;IACrB,IAAI,CAA4B;IACzC,+BAA+B;IACtB,MAAM,CAAU;IACzB,6DAA6D;IACpD,YAAY,CAAU;IAE/B;;;;OAIG;IACH,YACE,IAA+B,EAC/B,OAAe,EACf,OAAqC,EAAE;QAEvC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACzD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;YAAE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;IAC7E,CAAC;CACF"}
@@ -0,0 +1,148 @@
1
+ /**
2
+ * Shared plumbing for System One call sites: the `off | shadow | on` mode,
3
+ * the generative-fallback opt-in, and redact-then-clip for state text.
4
+ *
5
+ * Every site resolves its settings the same way, so the rule that an
6
+ * unconfigured provider means `off` (and therefore zero network) lives here
7
+ * once. Heavy modules (credentials, config registry) load lazily: importing
8
+ * this file costs nothing on a path that never asks a decision.
9
+ *
10
+ * @task T12493
11
+ * @epic T12486
12
+ */
13
+ import type { DecisionAnswer, DecisionOutcomeSource, DecisionRequest } from '@cleocode/contracts';
14
+ import type { DecisionAuditAnswer, DecisionShadowRecord } from './audit.js';
15
+ import type { DecideOptions } from './client.js';
16
+ /**
17
+ * How a call site uses System One.
18
+ *
19
+ * - `off` — never ask; the heuristic acts.
20
+ * - `shadow` — ask, audit both answers, act on the heuristic.
21
+ * - `on` — ask and act on the decision when it is confident enough.
22
+ */
23
+ export type DecisionSiteMode = 'off' | 'shadow' | 'on';
24
+ /** Resolved settings for one call-site invocation. */
25
+ export interface DecisionSiteSettings {
26
+ /** Effective mode; always `off` when no provider is configured. */
27
+ readonly mode: DecisionSiteMode;
28
+ /** Whether the site's older generative-LLM path runs. */
29
+ readonly llmTier: boolean;
30
+ }
31
+ /** Inputs to {@link resolveDecisionSiteSettings}. */
32
+ export interface ResolveDecisionSiteSettingsInput {
33
+ /** Config key holding the site mode, e.g. `decide.sites.duplicateDetection`. */
34
+ readonly modeKey: string;
35
+ /**
36
+ * Config key holding the generative opt-in, e.g. `decide.generativeFallback.duplicateDetection`.
37
+ * Absent for a site with no generative path: `llmTier` then comes from the
38
+ * explicit input or {@link ResolveDecisionSiteSettingsInput.llmTierDefault}.
39
+ */
40
+ readonly llmTierKey?: string;
41
+ /** Explicit mode; wins over config when a provider is configured. */
42
+ readonly mode?: DecisionSiteMode;
43
+ /** Explicit generative opt-in; wins over config. */
44
+ readonly llmTier?: boolean;
45
+ /**
46
+ * Generative default when the config key is absent, given the effective
47
+ * mode (`off` whenever System One is unconfigured). Sites whose generative
48
+ * path ran unconditionally before System One use it to stay
49
+ * behaviour-neutral outside `on`. Default: always `false`.
50
+ */
51
+ readonly llmTierDefault?: (mode: DecisionSiteMode) => boolean;
52
+ /** The `decide()` wiring the site will use; an explicit provider or connection decides "configured". */
53
+ readonly wiring?: DecideOptions;
54
+ /** Project root for config lookup. Default: the resolved CLEO project root. */
55
+ readonly projectRoot?: string;
56
+ }
57
+ /**
58
+ * Type guard for {@link DecisionSiteMode}.
59
+ *
60
+ * @param value - Any config value.
61
+ * @returns Whether `value` is `off`, `shadow` or `on`.
62
+ */
63
+ export declare function isDecisionSiteMode(value: unknown): value is DecisionSiteMode;
64
+ /**
65
+ * Redact secrets, THEN clip to `max` characters, marking the cut.
66
+ *
67
+ * The order matters: clipping first can cut a secret in half, and a partial
68
+ * secret no longer matches the redaction patterns — `decide()`'s own redaction
69
+ * would then let the prefix through.
70
+ *
71
+ * @param text - Raw text.
72
+ * @param max - Maximum length of the result, in UTF-16 characters.
73
+ * @param redact - The redaction function (the memory redaction patterns).
74
+ * @returns Redacted text of at most `max` characters.
75
+ */
76
+ export declare function redactThenClip(text: string, max: number, redact: (s: string) => string): string;
77
+ /**
78
+ * Resolve a site's mode and generative opt-in.
79
+ *
80
+ * Unconfigured (no explicit provider/connection and nothing stored by
81
+ * `cleo decide config`) always resolves to `off`, whatever the config says,
82
+ * so an unconfigured site never opens a socket. Never throws: unreadable
83
+ * credentials or config fall back to the defaults.
84
+ *
85
+ * @param input - Config keys, explicit overrides and wiring.
86
+ * @returns The effective settings.
87
+ */
88
+ export declare function resolveDecisionSiteSettings(input: ResolveDecisionSiteSettingsInput): Promise<DecisionSiteSettings>;
89
+ /** Inputs to {@link askSiteDecision}. */
90
+ export interface AskSiteDecisionInput {
91
+ /** Call-site id; keys the audit line. */
92
+ readonly siteId: string;
93
+ /**
94
+ * Budget in ms for WAITING on the decision: request building, redaction, the
95
+ * shared request budget and the provider round trip. It starts once the
96
+ * decision modules are loaded — module loading is a cold-start cost, not
97
+ * provider wait, and charging it would starve every fresh CLI process.
98
+ */
99
+ readonly budgetMs: number;
100
+ /** Minimum confidence EVERY answer needs before `on` mode may act on the decision. */
101
+ readonly minConfidence: number;
102
+ /** Effective mode (`off` never reaches a decision). */
103
+ readonly mode: Exclude<DecisionSiteMode, 'off'>;
104
+ /** The heuristic's overall verdict, in the site's vocabulary. */
105
+ readonly heuristicVerdict: string;
106
+ /** Build the request; `redact` is the memory redaction, to apply BEFORE clipping. */
107
+ readonly buildRequest: (redact: (s: string) => string) => DecisionRequest;
108
+ /** The heuristic's answer to every question; also the fallback. */
109
+ readonly heuristicAnswers: Readonly<Record<string, DecisionAnswer>>;
110
+ /**
111
+ * Site-level validity beyond the client's type check (e.g. a `choice` value
112
+ * among the offered options). An answered but invalid outcome is audited as
113
+ * `rejected: "invalid_choice"` and the heuristic acts. Default: valid.
114
+ */
115
+ readonly isValid?: (answers: Readonly<Record<string, DecisionAuditAnswer>>) => boolean;
116
+ /** Whether valid decided answers agree with the heuristic, on the axis the site acts on. */
117
+ readonly agree: (answers: Readonly<Record<string, DecisionAuditAnswer>>) => boolean;
118
+ /** Per-question extras for the shadow record. */
119
+ readonly shadowExtras?: Pick<DecisionShadowRecord, 'heuristicVerdicts' | 'heuristicScores' | 'subjects'>;
120
+ /** Provider, connection, budget, cache and audit wiring forwarded to `decide()`. */
121
+ readonly wiring?: DecideOptions;
122
+ /** Project root for the default audit sink. */
123
+ readonly projectRoot?: string;
124
+ }
125
+ /** A provider (or cached) answer that passed the site's validity check. */
126
+ export interface SiteDecision {
127
+ /** The decided answers. */
128
+ readonly answers: Readonly<Record<string, DecisionAnswer>>;
129
+ /** `provider` or `cache`. */
130
+ readonly source: Exclude<DecisionOutcomeSource, 'fallback'>;
131
+ /** Whether every answer met `minConfidence`; only then may `on` act. */
132
+ readonly confident: boolean;
133
+ }
134
+ /**
135
+ * Ask one budgeted System One decision for a call site, auditing the
136
+ * heuristic's answers beside the decision's in the same `decisions.jsonl` line.
137
+ *
138
+ * Never throws. Heavy modules load lazily FIRST; then the deadline starts, and
139
+ * the provider is never waited on longer than `budgetMs` (request building,
140
+ * redaction, the audit sink and the client's own setup are inside it). Module
141
+ * load is excluded on purpose: in a cold process it alone can exceed the
142
+ * budget, and a budget that includes it means a fast provider never answers.
143
+ *
144
+ * @param input - Site id, budget, mode, request builder, heuristic and wiring.
145
+ * @returns The decision, or `null` when the heuristic answered (fallback) or the answer was invalid.
146
+ */
147
+ export declare function askSiteDecision(input: AskSiteDecisionInput): Promise<SiteDecision | null>;
148
+ //# sourceMappingURL=site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"site.d.ts","sourceRoot":"","sources":["../../src/decide/site.ts"],"names":[],"mappings":"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"}