@cleocode/core 2026.10.4 → 2026.10.5-rc.ci.672

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 (1260) hide show
  1. package/dist/bootstrap.d.ts.map +1 -1
  2. package/dist/bootstrap.js +7 -37
  3. package/dist/bootstrap.js.map +1 -1
  4. package/dist/build-provenance.json +2 -2
  5. package/dist/caamp/adapter.d.ts.map +1 -1
  6. package/dist/caamp/adapter.js +5 -2
  7. package/dist/caamp/adapter.js.map +1 -1
  8. package/dist/changesets/parse-frontmatter.d.ts +1 -1
  9. package/dist/changesets/parse-frontmatter.d.ts.map +1 -1
  10. package/dist/changesets/parse-frontmatter.js +2 -1
  11. package/dist/changesets/parse-frontmatter.js.map +1 -1
  12. package/dist/changesets/parser.d.ts +1 -1
  13. package/dist/changesets/parser.d.ts.map +1 -1
  14. package/dist/changesets/parser.js +2 -1
  15. package/dist/changesets/parser.js.map +1 -1
  16. package/dist/changesets/writer.d.ts +8 -1
  17. package/dist/changesets/writer.d.ts.map +1 -1
  18. package/dist/changesets/writer.js +56 -5
  19. package/dist/changesets/writer.js.map +1 -1
  20. package/dist/cloud/keys.d.ts +9 -0
  21. package/dist/cloud/keys.d.ts.map +1 -1
  22. package/dist/cloud/keys.js +11 -0
  23. package/dist/cloud/keys.js.map +1 -1
  24. package/dist/cloud/nexus-attach.d.ts +17 -0
  25. package/dist/cloud/nexus-attach.d.ts.map +1 -1
  26. package/dist/cloud/nexus-attach.js +30 -9
  27. package/dist/cloud/nexus-attach.js.map +1 -1
  28. package/dist/cloud/nexus-auth.d.ts +7 -1
  29. package/dist/cloud/nexus-auth.d.ts.map +1 -1
  30. package/dist/cloud/nexus-auth.js +7 -1
  31. package/dist/cloud/nexus-auth.js.map +1 -1
  32. package/dist/cloud/nexus-cloud-activity.d.ts.map +1 -1
  33. package/dist/cloud/nexus-cloud-activity.js +2 -1
  34. package/dist/cloud/nexus-cloud-activity.js.map +1 -1
  35. package/dist/cloud/nexus-cloud-conflicts.d.ts +48 -0
  36. package/dist/cloud/nexus-cloud-conflicts.d.ts.map +1 -0
  37. package/dist/cloud/nexus-cloud-conflicts.js +68 -0
  38. package/dist/cloud/nexus-cloud-conflicts.js.map +1 -0
  39. package/dist/cloud/nexus-cloud-status.d.ts +42 -6
  40. package/dist/cloud/nexus-cloud-status.d.ts.map +1 -1
  41. package/dist/cloud/nexus-cloud-status.js +233 -19
  42. package/dist/cloud/nexus-cloud-status.js.map +1 -1
  43. package/dist/cloud/nexus-cloud.d.ts +18 -1
  44. package/dist/cloud/nexus-cloud.d.ts.map +1 -1
  45. package/dist/cloud/nexus-cloud.js +56 -2
  46. package/dist/cloud/nexus-cloud.js.map +1 -1
  47. package/dist/cloud/nexus-credentials.d.ts +1 -1
  48. package/dist/cloud/nexus-credentials.d.ts.map +1 -1
  49. package/dist/cloud/nexus-credentials.js +1 -1
  50. package/dist/cloud/nexus-credentials.js.map +1 -1
  51. package/dist/cloud/nexus-enrol.d.ts +1 -1
  52. package/dist/cloud/nexus-enrol.d.ts.map +1 -1
  53. package/dist/cloud/nexus-enrol.js +2 -1
  54. package/dist/cloud/nexus-enrol.js.map +1 -1
  55. package/dist/cloud/nexus-first-run.d.ts +6 -2
  56. package/dist/cloud/nexus-first-run.d.ts.map +1 -1
  57. package/dist/cloud/nexus-first-run.js +8 -2
  58. package/dist/cloud/nexus-first-run.js.map +1 -1
  59. package/dist/cloud/nexus-link.d.ts +35 -4
  60. package/dist/cloud/nexus-link.d.ts.map +1 -1
  61. package/dist/cloud/nexus-link.js +172 -7
  62. package/dist/cloud/nexus-link.js.map +1 -1
  63. package/dist/cloud/nexus-presence-refresh.d.ts +65 -0
  64. package/dist/cloud/nexus-presence-refresh.d.ts.map +1 -0
  65. package/dist/cloud/nexus-presence-refresh.js +122 -0
  66. package/dist/cloud/nexus-presence-refresh.js.map +1 -0
  67. package/dist/cloud/nexus-project-history.d.ts +54 -0
  68. package/dist/cloud/nexus-project-history.d.ts.map +1 -0
  69. package/dist/cloud/nexus-project-history.js +108 -0
  70. package/dist/cloud/nexus-project-history.js.map +1 -0
  71. package/dist/cloud/nexus-vault-keys.d.ts.map +1 -1
  72. package/dist/cloud/nexus-vault-keys.js +12 -6
  73. package/dist/cloud/nexus-vault-keys.js.map +1 -1
  74. package/dist/cloud/nexus-vault.d.ts +7 -3
  75. package/dist/cloud/nexus-vault.d.ts.map +1 -1
  76. package/dist/cloud/nexus-vault.js +176 -29
  77. package/dist/cloud/nexus-vault.js.map +1 -1
  78. package/dist/cloud/presence.d.ts +1 -1
  79. package/dist/cloud/presence.d.ts.map +1 -1
  80. package/dist/cloud/presence.js +1 -1
  81. package/dist/cloud/presence.js.map +1 -1
  82. package/dist/cloud/projects.d.ts +7 -4
  83. package/dist/cloud/projects.d.ts.map +1 -1
  84. package/dist/cloud/projects.js +10 -1
  85. package/dist/cloud/projects.js.map +1 -1
  86. package/dist/cloud/signing.d.ts +14 -0
  87. package/dist/cloud/signing.d.ts.map +1 -1
  88. package/dist/cloud/signing.js +9 -0
  89. package/dist/cloud/signing.js.map +1 -1
  90. package/dist/conduit/cloud-endpoint.d.ts +96 -0
  91. package/dist/conduit/cloud-endpoint.d.ts.map +1 -0
  92. package/dist/conduit/cloud-endpoint.js +191 -0
  93. package/dist/conduit/cloud-endpoint.js.map +1 -0
  94. package/dist/conduit/conduit-client.d.ts.map +1 -1
  95. package/dist/conduit/conduit-client.js +2 -1
  96. package/dist/conduit/conduit-client.js.map +1 -1
  97. package/dist/conduit/factory.d.ts +4 -0
  98. package/dist/conduit/factory.d.ts.map +1 -1
  99. package/dist/conduit/factory.js +7 -1
  100. package/dist/conduit/factory.js.map +1 -1
  101. package/dist/conduit/http-transport.d.ts +12 -7
  102. package/dist/conduit/http-transport.d.ts.map +1 -1
  103. package/dist/conduit/http-transport.js +18 -11
  104. package/dist/conduit/http-transport.js.map +1 -1
  105. package/dist/conduit/index.d.ts +3 -1
  106. package/dist/conduit/index.d.ts.map +1 -1
  107. package/dist/conduit/index.js +3 -1
  108. package/dist/conduit/index.js.map +1 -1
  109. package/dist/conduit/sse-transport.d.ts +5 -1
  110. package/dist/conduit/sse-transport.d.ts.map +1 -1
  111. package/dist/conduit/sse-transport.js +10 -2
  112. package/dist/conduit/sse-transport.js.map +1 -1
  113. package/dist/config/registry.js +1 -1
  114. package/dist/config/registry.js.map +1 -1
  115. package/dist/core-paths.d.ts +13 -0
  116. package/dist/core-paths.d.ts.map +1 -0
  117. package/dist/core-paths.js +13 -0
  118. package/dist/core-paths.js.map +1 -0
  119. package/dist/decide/bench/source.js +1 -1
  120. package/dist/decide/bench/source.js.map +1 -1
  121. package/dist/decide/client.d.ts +1 -1
  122. package/dist/decide/client.d.ts.map +1 -1
  123. package/dist/decide/client.js +1 -1
  124. package/dist/decide/client.js.map +1 -1
  125. package/dist/decide/credentials.d.ts +1 -1
  126. package/dist/decide/credentials.d.ts.map +1 -1
  127. package/dist/decide/credentials.js +1 -1
  128. package/dist/decide/credentials.js.map +1 -1
  129. package/dist/decide/jev-wire.d.ts +1 -1
  130. package/dist/decide/jev-wire.d.ts.map +1 -1
  131. package/dist/decide/jev-wire.js +1 -1
  132. package/dist/decide/jev-wire.js.map +1 -1
  133. package/dist/decide/operations.d.ts +1 -1
  134. package/dist/decide/operations.d.ts.map +1 -1
  135. package/dist/decide/operations.js +1 -1
  136. package/dist/decide/operations.js.map +1 -1
  137. package/dist/decide/providers.d.ts +1 -1
  138. package/dist/decide/providers.d.ts.map +1 -1
  139. package/dist/decide/providers.js +1 -1
  140. package/dist/decide/providers.js.map +1 -1
  141. package/dist/decide/wizard.d.ts.map +1 -1
  142. package/dist/decide/wizard.js +1 -1
  143. package/dist/decide/wizard.js.map +1 -1
  144. package/dist/dispatch/config-domain-handler.d.ts +1 -1
  145. package/dist/dispatch/config-domain-handler.d.ts.map +1 -1
  146. package/dist/dispatch/config-domain-handler.js +1 -1
  147. package/dist/dispatch/config-domain-handler.js.map +1 -1
  148. package/dist/dispatch/contracts/ensures-schema.d.ts +1 -1
  149. package/dist/dispatch/contracts/ensures-schema.d.ts.map +1 -1
  150. package/dist/dispatch/contracts/ensures-schema.js +1 -1
  151. package/dist/dispatch/contracts/ensures-schema.js.map +1 -1
  152. package/dist/dispatch/contracts/input-contracts.d.ts +1 -1
  153. package/dist/dispatch/contracts/input-contracts.d.ts.map +1 -1
  154. package/dist/dispatch/contracts/input-contracts.js +3 -1
  155. package/dist/dispatch/contracts/input-contracts.js.map +1 -1
  156. package/dist/dispatch/describe-operation.d.ts +1 -1
  157. package/dist/dispatch/describe-operation.d.ts.map +1 -1
  158. package/dist/dispatch/describe-operation.js +1 -1
  159. package/dist/dispatch/describe-operation.js.map +1 -1
  160. package/dist/docs/display-alias.js +1 -1
  161. package/dist/docs/display-alias.js.map +1 -1
  162. package/dist/docs/docs-update.d.ts +1 -1
  163. package/dist/docs/docs-update.d.ts.map +1 -1
  164. package/dist/docs/docs-update.js +2 -1
  165. package/dist/docs/docs-update.js.map +1 -1
  166. package/dist/docs/export-document.js +14 -58300
  167. package/dist/docs/export-document.js.map +3 -3
  168. package/dist/docs/publish-pr.js +1 -1
  169. package/dist/docs/publish-pr.js.map +1 -1
  170. package/dist/docs/supersede.js +1 -1
  171. package/dist/docs/supersede.js.map +1 -1
  172. package/dist/docs/validate-body.d.ts +1 -1
  173. package/dist/docs/validate-body.d.ts.map +1 -1
  174. package/dist/docs/validate-body.js +1 -1
  175. package/dist/docs/validate-body.js.map +1 -1
  176. package/dist/docs/writer-registry.js +1 -1
  177. package/dist/docs/writer-registry.js.map +1 -1
  178. package/dist/doctor/acceptance-drift.js +1 -1
  179. package/dist/doctor/acceptance-drift.js.map +1 -1
  180. package/dist/doctor/db-substrate.d.ts +1 -1
  181. package/dist/doctor/db-substrate.d.ts.map +1 -1
  182. package/dist/doctor/db-substrate.js +1 -1
  183. package/dist/doctor/db-substrate.js.map +1 -1
  184. package/dist/doctor/invariant-audit.js +1 -1
  185. package/dist/doctor/invariant-audit.js.map +1 -1
  186. package/dist/doctor/malformed-task-ids.js +1 -1
  187. package/dist/doctor/malformed-task-ids.js.map +1 -1
  188. package/dist/doctor/row-identity-refill.d.ts +43 -0
  189. package/dist/doctor/row-identity-refill.d.ts.map +1 -0
  190. package/dist/doctor/row-identity-refill.js +186 -0
  191. package/dist/doctor/row-identity-refill.js.map +1 -0
  192. package/dist/doctor/superseded-store.d.ts.map +1 -1
  193. package/dist/doctor/superseded-store.js +51 -2
  194. package/dist/doctor/superseded-store.js.map +1 -1
  195. package/dist/doctor/sync-repair.d.ts +39 -0
  196. package/dist/doctor/sync-repair.d.ts.map +1 -0
  197. package/dist/doctor/sync-repair.js +71 -0
  198. package/dist/doctor/sync-repair.js.map +1 -0
  199. package/dist/doctor/sync-triggers.d.ts +63 -4
  200. package/dist/doctor/sync-triggers.d.ts.map +1 -1
  201. package/dist/doctor/sync-triggers.js +352 -9
  202. package/dist/doctor/sync-triggers.js.map +1 -1
  203. package/dist/doctor/twin-collapse.js +1 -1
  204. package/dist/doctor/twin-collapse.js.map +1 -1
  205. package/dist/engine/engine-ops.d.ts.map +1 -1
  206. package/dist/engine/engine-ops.js +7 -1
  207. package/dist/engine/engine-ops.js.map +1 -1
  208. package/dist/engine-result.d.ts +1 -1
  209. package/dist/engine-result.d.ts.map +1 -1
  210. package/dist/engine-result.js +1 -1
  211. package/dist/engine-result.js.map +1 -1
  212. package/dist/error-registry.d.ts +1 -1
  213. package/dist/error-registry.d.ts.map +1 -1
  214. package/dist/error-registry.js +1 -1
  215. package/dist/error-registry.js.map +1 -1
  216. package/dist/errors-to-engine.d.ts +20 -0
  217. package/dist/errors-to-engine.d.ts.map +1 -1
  218. package/dist/errors-to-engine.js +37 -0
  219. package/dist/errors-to-engine.js.map +1 -1
  220. package/dist/gc/janitor.d.ts +23 -4
  221. package/dist/gc/janitor.d.ts.map +1 -1
  222. package/dist/gc/janitor.js +71 -11
  223. package/dist/gc/janitor.js.map +1 -1
  224. package/dist/goal/continuation.d.ts +1 -1
  225. package/dist/goal/continuation.d.ts.map +1 -1
  226. package/dist/goal/continuation.js +1 -1
  227. package/dist/goal/continuation.js.map +1 -1
  228. package/dist/goal/judge.d.ts.map +1 -1
  229. package/dist/goal/judge.js +2 -1
  230. package/dist/goal/judge.js.map +1 -1
  231. package/dist/hooks/handlers/session-hooks.d.ts.map +1 -1
  232. package/dist/hooks/handlers/session-hooks.js +1 -1
  233. package/dist/hooks/handlers/session-hooks.js.map +1 -1
  234. package/dist/init/engine-ops.js +1 -1
  235. package/dist/init/engine-ops.js.map +1 -1
  236. package/dist/init.d.ts.map +1 -1
  237. package/dist/init.js +10 -41
  238. package/dist/init.js.map +1 -1
  239. package/dist/inject/index.js +1 -1
  240. package/dist/inject/index.js.map +1 -1
  241. package/dist/injection.d.ts.map +1 -1
  242. package/dist/injection.js +13 -0
  243. package/dist/injection.js.map +1 -1
  244. package/dist/internal.d.ts +4 -3
  245. package/dist/internal.d.ts.map +1 -1
  246. package/dist/internal.js +7 -4
  247. package/dist/internal.js.map +1 -1
  248. package/dist/issue/create.js +1 -1
  249. package/dist/issue/create.js.map +1 -1
  250. package/dist/json-schema-validator.js +1 -1
  251. package/dist/json-schema-validator.js.map +1 -1
  252. package/dist/lifecycle/index.d.ts +2 -23
  253. package/dist/lifecycle/index.d.ts.map +1 -1
  254. package/dist/lifecycle/index.js +5 -112
  255. package/dist/lifecycle/index.js.map +1 -1
  256. package/dist/lifecycle/kind-requirements.d.ts +1 -1
  257. package/dist/lifecycle/kind-requirements.d.ts.map +1 -1
  258. package/dist/lifecycle/kind-requirements.js +1 -1
  259. package/dist/lifecycle/kind-requirements.js.map +1 -1
  260. package/dist/lifecycle/pipeline.js +1 -1
  261. package/dist/lifecycle/pipeline.js.map +1 -1
  262. package/dist/lifecycle/resume.js +2 -2
  263. package/dist/lifecycle/resume.js.map +1 -1
  264. package/dist/lifecycle/state-machine.js +1 -1
  265. package/dist/lifecycle/state-machine.js.map +1 -1
  266. package/dist/lifecycle/status.d.ts +46 -0
  267. package/dist/lifecycle/status.d.ts.map +1 -0
  268. package/dist/lifecycle/status.js +147 -0
  269. package/dist/lifecycle/status.js.map +1 -0
  270. package/dist/lifecycle/verification/satisfies-validator.js +1 -1
  271. package/dist/lifecycle/verification/satisfies-validator.js.map +1 -1
  272. package/dist/llm/catalog-seeder.d.ts +1 -1
  273. package/dist/llm/catalog-seeder.d.ts.map +1 -1
  274. package/dist/llm/catalog-seeder.js +1 -1
  275. package/dist/llm/catalog-seeder.js.map +1 -1
  276. package/dist/llm/cli-ops.d.ts +1 -2
  277. package/dist/llm/cli-ops.d.ts.map +1 -1
  278. package/dist/llm/cli-ops.js +2 -1
  279. package/dist/llm/cli-ops.js.map +1 -1
  280. package/dist/llm/credential-seeders/claude-code-seeder.js +1 -1
  281. package/dist/llm/credential-seeders/claude-code-seeder.js.map +1 -1
  282. package/dist/llm/credential-seeders/cleo-pkce-seeder.js +1 -1
  283. package/dist/llm/credential-seeders/cleo-pkce-seeder.js.map +1 -1
  284. package/dist/llm/credential-writeback.js +1 -1
  285. package/dist/llm/credential-writeback.js.map +1 -1
  286. package/dist/llm/entity-ops.d.ts +1 -1
  287. package/dist/llm/entity-ops.d.ts.map +1 -1
  288. package/dist/llm/entity-ops.js +2 -1
  289. package/dist/llm/entity-ops.js.map +1 -1
  290. package/dist/llm/llm-queue-admit.d.ts +1 -1
  291. package/dist/llm/llm-queue-admit.d.ts.map +1 -1
  292. package/dist/llm/llm-queue-admit.js +2 -1
  293. package/dist/llm/llm-queue-admit.js.map +1 -1
  294. package/dist/llm/onboarding/login-engine.js +1 -1
  295. package/dist/llm/onboarding/login-engine.js.map +1 -1
  296. package/dist/llm/pi/pi-errors.d.ts +1 -1
  297. package/dist/llm/pi/pi-errors.d.ts.map +1 -1
  298. package/dist/llm/pi/pi-errors.js +1 -1
  299. package/dist/llm/pi/pi-errors.js.map +1 -1
  300. package/dist/llm/plugin-facade.d.ts.map +1 -1
  301. package/dist/llm/plugin-facade.js +14 -93552
  302. package/dist/llm/plugin-facade.js.map +3 -3
  303. package/dist/llm/system-key.d.ts +1 -1
  304. package/dist/llm/system-key.d.ts.map +1 -1
  305. package/dist/llm/system-key.js +1 -1
  306. package/dist/llm/system-key.js.map +1 -1
  307. package/dist/llm/system-of-use-registry.d.ts +1 -1
  308. package/dist/llm/system-of-use-registry.d.ts.map +1 -1
  309. package/dist/llm/system-of-use-registry.js +1 -1
  310. package/dist/llm/system-of-use-registry.js.map +1 -1
  311. package/dist/llm/system-resolver.js +1 -1
  312. package/dist/llm/system-resolver.js.map +1 -1
  313. package/dist/memory/brain-host.d.ts +71 -0
  314. package/dist/memory/brain-host.d.ts.map +1 -0
  315. package/dist/memory/brain-host.js +84 -0
  316. package/dist/memory/brain-host.js.map +1 -0
  317. package/dist/memory/brain-writer-handlers.d.ts.map +1 -1
  318. package/dist/memory/brain-writer-handlers.js +24 -7
  319. package/dist/memory/brain-writer-handlers.js.map +1 -1
  320. package/dist/memory/brain-writer-thread.d.ts +66 -6
  321. package/dist/memory/brain-writer-thread.d.ts.map +1 -1
  322. package/dist/memory/brain-writer-thread.js +67 -10
  323. package/dist/memory/brain-writer-thread.js.map +1 -1
  324. package/dist/memory/brain-writer-worker.js +7 -0
  325. package/dist/memory/brain-writer-worker.js.map +1 -1
  326. package/dist/memory/decisions.js +2 -1
  327. package/dist/memory/decisions.js.map +1 -1
  328. package/dist/memory/embedding-backfill.d.ts +70 -0
  329. package/dist/memory/embedding-backfill.d.ts.map +1 -0
  330. package/dist/memory/embedding-backfill.js +110 -0
  331. package/dist/memory/embedding-backfill.js.map +1 -0
  332. package/dist/memory/index.js +1 -1
  333. package/dist/memory/index.js.map +1 -1
  334. package/dist/memory/manifest-identity.js +1 -1
  335. package/dist/memory/manifest-identity.js.map +1 -1
  336. package/dist/memory/retrieval/observe.d.ts +23 -0
  337. package/dist/memory/retrieval/observe.d.ts.map +1 -1
  338. package/dist/memory/retrieval/observe.js +82 -36
  339. package/dist/memory/retrieval/observe.js.map +1 -1
  340. package/dist/metrics/model-provider-registry.d.ts.map +1 -1
  341. package/dist/metrics/model-provider-registry.js +6 -0
  342. package/dist/metrics/model-provider-registry.js.map +1 -1
  343. package/dist/metrics/token-service.d.ts +17 -0
  344. package/dist/metrics/token-service.d.ts.map +1 -1
  345. package/dist/metrics/token-service.js +17 -0
  346. package/dist/metrics/token-service.js.map +1 -1
  347. package/dist/migration/index.js +1 -1
  348. package/dist/migration/index.js.map +1 -1
  349. package/dist/migration/manual/T10165-backfill-adr-index.js +1 -1
  350. package/dist/migration/manual/T10165-backfill-adr-index.js.map +1 -1
  351. package/dist/nexus/assessment-projection.d.ts +1 -1
  352. package/dist/nexus/assessment-projection.d.ts.map +1 -1
  353. package/dist/nexus/assessment-projection.js +1 -1
  354. package/dist/nexus/assessment-projection.js.map +1 -1
  355. package/dist/nexus/deps.d.ts +1 -1
  356. package/dist/nexus/deps.d.ts.map +1 -1
  357. package/dist/nexus/deps.js +1 -1
  358. package/dist/nexus/deps.js.map +1 -1
  359. package/dist/nexus/fleet-status.d.ts +1 -1
  360. package/dist/nexus/fleet-status.d.ts.map +1 -1
  361. package/dist/nexus/fleet-status.js +1 -1
  362. package/dist/nexus/fleet-status.js.map +1 -1
  363. package/dist/nexus/identity.js +1 -1
  364. package/dist/nexus/identity.js.map +1 -1
  365. package/dist/nexus/permissions.d.ts +1 -1
  366. package/dist/nexus/permissions.d.ts.map +1 -1
  367. package/dist/nexus/permissions.js +1 -1
  368. package/dist/nexus/permissions.js.map +1 -1
  369. package/dist/nexus/query-dsl.js +1 -1
  370. package/dist/nexus/query-dsl.js.map +1 -1
  371. package/dist/nexus/query.d.ts +1 -2
  372. package/dist/nexus/query.d.ts.map +1 -1
  373. package/dist/nexus/query.js +1 -1
  374. package/dist/nexus/query.js.map +1 -1
  375. package/dist/nexus/registry-errors.js +1 -1
  376. package/dist/nexus/registry-errors.js.map +1 -1
  377. package/dist/nexus/registry.d.ts +1 -1
  378. package/dist/nexus/registry.d.ts.map +1 -1
  379. package/dist/nexus/registry.js +1 -1
  380. package/dist/nexus/registry.js.map +1 -1
  381. package/dist/nexus/workspace.js +1 -1
  382. package/dist/nexus/workspace.js.map +1 -1
  383. package/dist/orchestrate/pivot.d.ts.map +1 -1
  384. package/dist/orchestrate/pivot.js +2 -1
  385. package/dist/orchestrate/pivot.js.map +1 -1
  386. package/dist/orchestrate/query-ops.js +1 -1
  387. package/dist/orchestrate/query-ops.js.map +1 -1
  388. package/dist/orchestrate/spawn-ops.js +1 -1
  389. package/dist/orchestrate/spawn-ops.js.map +1 -1
  390. package/dist/orchestration/atomicity.d.ts +1 -1
  391. package/dist/orchestration/atomicity.d.ts.map +1 -1
  392. package/dist/orchestration/atomicity.js +1 -1
  393. package/dist/orchestration/atomicity.js.map +1 -1
  394. package/dist/orchestration/classify.js +1 -1
  395. package/dist/orchestration/classify.js.map +1 -1
  396. package/dist/orchestration/index.js +1 -1
  397. package/dist/orchestration/index.js.map +1 -1
  398. package/dist/orchestration/parallel.js +1 -1
  399. package/dist/orchestration/parallel.js.map +1 -1
  400. package/dist/orchestration/protocol-validators.d.ts +1 -1
  401. package/dist/orchestration/protocol-validators.d.ts.map +1 -1
  402. package/dist/orchestration/protocol-validators.js +1 -1
  403. package/dist/orchestration/protocol-validators.js.map +1 -1
  404. package/dist/orchestration/skill-ops.js +1 -1
  405. package/dist/orchestration/skill-ops.js.map +1 -1
  406. package/dist/orchestration/spawn-prompt.d.ts +9 -0
  407. package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
  408. package/dist/orchestration/spawn-prompt.js +13 -2
  409. package/dist/orchestration/spawn-prompt.js.map +1 -1
  410. package/dist/orchestration/spawn.js +1 -1
  411. package/dist/orchestration/spawn.js.map +1 -1
  412. package/dist/paths.d.ts +3 -1
  413. package/dist/paths.d.ts.map +1 -1
  414. package/dist/paths.js +3 -1
  415. package/dist/paths.js.map +1 -1
  416. package/dist/phases/deps.js +1 -1
  417. package/dist/phases/deps.js.map +1 -1
  418. package/dist/phases/index.js +1 -1
  419. package/dist/phases/index.js.map +1 -1
  420. package/dist/project-lifecycle.js +3 -3
  421. package/dist/project-lifecycle.js.map +1 -1
  422. package/dist/registrations.d.ts +30 -0
  423. package/dist/registrations.d.ts.map +1 -0
  424. package/dist/registrations.js +30 -0
  425. package/dist/registrations.js.map +1 -0
  426. package/dist/release/changesets-aggregator.js +1 -1
  427. package/dist/release/changesets-aggregator.js.map +1 -1
  428. package/dist/release/ci-evidence.d.ts +68 -2
  429. package/dist/release/ci-evidence.d.ts.map +1 -1
  430. package/dist/release/ci-evidence.js +203 -39
  431. package/dist/release/ci-evidence.js.map +1 -1
  432. package/dist/release/invariants/archive-reason-invariant.d.ts +1 -1
  433. package/dist/release/invariants/archive-reason-invariant.d.ts.map +1 -1
  434. package/dist/release/invariants/archive-reason-invariant.js +1 -1
  435. package/dist/release/invariants/archive-reason-invariant.js.map +1 -1
  436. package/dist/release/invariants/registry.d.ts +1 -1
  437. package/dist/release/invariants/registry.d.ts.map +1 -1
  438. package/dist/release/invariants/registry.js +1 -1
  439. package/dist/release/invariants/registry.js.map +1 -1
  440. package/dist/release/open.d.ts +1 -1
  441. package/dist/release/open.d.ts.map +1 -1
  442. package/dist/release/open.js +3 -1
  443. package/dist/release/open.js.map +1 -1
  444. package/dist/release/plan.d.ts +1 -2
  445. package/dist/release/plan.d.ts.map +1 -1
  446. package/dist/release/plan.js +4 -1
  447. package/dist/release/plan.js.map +1 -1
  448. package/dist/release/pr-evidence.d.ts +1 -1
  449. package/dist/release/pr-evidence.d.ts.map +1 -1
  450. package/dist/release/pr-evidence.js +2 -2
  451. package/dist/release/pr-evidence.js.map +1 -1
  452. package/dist/release/preflight-skip.d.ts +5 -0
  453. package/dist/release/preflight-skip.d.ts.map +1 -1
  454. package/dist/release/preflight-skip.js +60 -1
  455. package/dist/release/preflight-skip.js.map +1 -1
  456. package/dist/release/reconcile.d.ts +1 -1
  457. package/dist/release/reconcile.d.ts.map +1 -1
  458. package/dist/release/reconcile.js +19 -3
  459. package/dist/release/reconcile.js.map +1 -1
  460. package/dist/release/version-bump.d.ts +1 -1
  461. package/dist/release/version-bump.d.ts.map +1 -1
  462. package/dist/release/version-bump.js +1 -1
  463. package/dist/release/version-bump.js.map +1 -1
  464. package/dist/resources/admission-ledger.d.ts +587 -0
  465. package/dist/resources/admission-ledger.d.ts.map +1 -0
  466. package/dist/resources/admission-ledger.js +1401 -0
  467. package/dist/resources/admission-ledger.js.map +1 -0
  468. package/dist/resources/backend.d.ts +37 -1
  469. package/dist/resources/backend.d.ts.map +1 -1
  470. package/dist/resources/backend.js +1 -1
  471. package/dist/resources/darwin-backend.d.ts +152 -26
  472. package/dist/resources/darwin-backend.d.ts.map +1 -1
  473. package/dist/resources/darwin-backend.js +217 -34
  474. package/dist/resources/darwin-backend.js.map +1 -1
  475. package/dist/resources/governor.d.ts +36 -39
  476. package/dist/resources/governor.d.ts.map +1 -1
  477. package/dist/resources/governor.js +140 -49
  478. package/dist/resources/governor.js.map +1 -1
  479. package/dist/resources/pressure-gate.d.ts +148 -0
  480. package/dist/resources/pressure-gate.d.ts.map +1 -0
  481. package/dist/resources/pressure-gate.js +273 -0
  482. package/dist/resources/pressure-gate.js.map +1 -0
  483. package/dist/resources/run-admission.d.ts +33 -45
  484. package/dist/resources/run-admission.d.ts.map +1 -1
  485. package/dist/resources/run-admission.js +50 -118
  486. package/dist/resources/run-admission.js.map +1 -1
  487. package/dist/resources/run-class.d.ts +60 -4
  488. package/dist/resources/run-class.d.ts.map +1 -1
  489. package/dist/resources/run-class.js +473 -6
  490. package/dist/resources/run-class.js.map +1 -1
  491. package/dist/resources/run-governed.d.ts +43 -11
  492. package/dist/resources/run-governed.d.ts.map +1 -1
  493. package/dist/resources/run-governed.js +139 -99
  494. package/dist/resources/run-governed.js.map +1 -1
  495. package/dist/resources/slot-holder.d.ts +12 -4
  496. package/dist/resources/slot-holder.d.ts.map +1 -1
  497. package/dist/resources/slot-holder.js +19 -14
  498. package/dist/resources/slot-holder.js.map +1 -1
  499. package/dist/resources/spawn-wrapper.js +1 -1
  500. package/dist/resources/spawn-wrapper.js.map +1 -1
  501. package/dist/resources/supervisor-admit.d.ts +1 -1
  502. package/dist/resources/supervisor-admit.d.ts.map +1 -1
  503. package/dist/resources/supervisor-admit.js +2 -1
  504. package/dist/resources/supervisor-admit.js.map +1 -1
  505. package/dist/runtime/openapi/generate-openapi.d.ts +1 -1
  506. package/dist/runtime/openapi/generate-openapi.d.ts.map +1 -1
  507. package/dist/runtime/openapi/generate-openapi.js +1 -1
  508. package/dist/runtime/openapi/generate-openapi.js.map +1 -1
  509. package/dist/sagas/index.d.ts +3 -1
  510. package/dist/sagas/index.d.ts.map +1 -1
  511. package/dist/sagas/index.js +2 -5
  512. package/dist/sagas/index.js.map +1 -1
  513. package/dist/scaffold/project-identity.js +1 -1
  514. package/dist/scaffold/project-identity.js.map +1 -1
  515. package/dist/sdk/validator-attest.d.ts +1 -1
  516. package/dist/sdk/validator-attest.d.ts.map +1 -1
  517. package/dist/sdk/validator-attest.js +1 -1
  518. package/dist/sdk/validator-attest.js.map +1 -1
  519. package/dist/sdk/validator-reject.d.ts +1 -1
  520. package/dist/sdk/validator-reject.d.ts.map +1 -1
  521. package/dist/sdk/validator-reject.js +1 -1
  522. package/dist/sdk/validator-reject.js.map +1 -1
  523. package/dist/security/input-sanitization.js +2 -1
  524. package/dist/security/input-sanitization.js.map +1 -1
  525. package/dist/security/override-cap.js +1 -1
  526. package/dist/security/override-cap.js.map +1 -1
  527. package/dist/security/owner-override-auth.js +1 -1
  528. package/dist/security/owner-override-auth.js.map +1 -1
  529. package/dist/security/shared-evidence-tracker.js +1 -1
  530. package/dist/security/shared-evidence-tracker.js.map +1 -1
  531. package/dist/selfimprove/fix-gen.js +35 -93037
  532. package/dist/selfimprove/fix-gen.js.map +3 -3
  533. package/dist/sentient/daemon.d.ts.map +1 -1
  534. package/dist/sentient/daemon.js +3 -0
  535. package/dist/sentient/daemon.js.map +1 -1
  536. package/dist/sentient/tick.d.ts +7 -0
  537. package/dist/sentient/tick.d.ts.map +1 -1
  538. package/dist/sentient/tick.js +11 -0
  539. package/dist/sentient/tick.js.map +1 -1
  540. package/dist/sequence/index.js +1 -1
  541. package/dist/sequence/index.js.map +1 -1
  542. package/dist/session/engine-ops.d.ts +3 -45
  543. package/dist/session/engine-ops.d.ts.map +1 -1
  544. package/dist/session/engine-ops.js +63 -112
  545. package/dist/session/engine-ops.js.map +1 -1
  546. package/dist/session/status-op.d.ts +40 -0
  547. package/dist/session/status-op.d.ts.map +1 -0
  548. package/dist/session/status-op.js +71 -0
  549. package/dist/session/status-op.js.map +1 -0
  550. package/dist/session/task-current.d.ts +31 -0
  551. package/dist/session/task-current.d.ts.map +1 -0
  552. package/dist/session/task-current.js +59 -0
  553. package/dist/session/task-current.js.map +1 -0
  554. package/dist/sessions/assumptions.d.ts +1 -1
  555. package/dist/sessions/assumptions.d.ts.map +1 -1
  556. package/dist/sessions/assumptions.js +1 -1
  557. package/dist/sessions/assumptions.js.map +1 -1
  558. package/dist/sessions/context-inject.js +1 -1
  559. package/dist/sessions/context-inject.js.map +1 -1
  560. package/dist/sessions/decisions.d.ts +1 -1
  561. package/dist/sessions/decisions.d.ts.map +1 -1
  562. package/dist/sessions/decisions.js +1 -1
  563. package/dist/sessions/decisions.js.map +1 -1
  564. package/dist/sessions/focus-state-store.d.ts.map +1 -1
  565. package/dist/sessions/focus-state-store.js +2 -1
  566. package/dist/sessions/focus-state-store.js.map +1 -1
  567. package/dist/sessions/handoff.js +1 -1
  568. package/dist/sessions/handoff.js.map +1 -1
  569. package/dist/sessions/index.d.ts +1 -2
  570. package/dist/sessions/index.d.ts.map +1 -1
  571. package/dist/sessions/index.js +3 -2
  572. package/dist/sessions/index.js.map +1 -1
  573. package/dist/sessions/session-drift.js +1 -1
  574. package/dist/sessions/session-drift.js.map +1 -1
  575. package/dist/sessions/session-end-snapshot-entry.d.ts +4 -0
  576. package/dist/sessions/session-end-snapshot-entry.d.ts.map +1 -1
  577. package/dist/sessions/session-end-snapshot-entry.js +11 -0
  578. package/dist/sessions/session-end-snapshot-entry.js.map +1 -1
  579. package/dist/sessions/session-end-snapshot.d.ts.map +1 -1
  580. package/dist/sessions/session-end-snapshot.js +4 -0
  581. package/dist/sessions/session-end-snapshot.js.map +1 -1
  582. package/dist/sessions/session-enforcement.js +1 -1
  583. package/dist/sessions/session-enforcement.js.map +1 -1
  584. package/dist/sessions/session-show.d.ts +1 -2
  585. package/dist/sessions/session-show.d.ts.map +1 -1
  586. package/dist/sessions/session-show.js +1 -1
  587. package/dist/sessions/session-show.js.map +1 -1
  588. package/dist/sessions/session-stats.js +1 -1
  589. package/dist/sessions/session-stats.js.map +1 -1
  590. package/dist/sessions/session-suspend.d.ts +1 -2
  591. package/dist/sessions/session-suspend.d.ts.map +1 -1
  592. package/dist/sessions/session-suspend.js +1 -1
  593. package/dist/sessions/session-suspend.js.map +1 -1
  594. package/dist/sessions/session-switch.js +1 -1
  595. package/dist/sessions/session-switch.js.map +1 -1
  596. package/dist/sessions/snapshot.js +1 -1
  597. package/dist/sessions/snapshot.js.map +1 -1
  598. package/dist/sessions/terminal-identity.d.ts +1 -1
  599. package/dist/sessions/terminal-identity.d.ts.map +1 -1
  600. package/dist/sessions/terminal-identity.js +1 -1
  601. package/dist/sessions/terminal-identity.js.map +1 -1
  602. package/dist/setup/sections/integrations.d.ts.map +1 -1
  603. package/dist/setup/sections/integrations.js +9 -0
  604. package/dist/setup/sections/integrations.js.map +1 -1
  605. package/dist/setup/sections/models-roles.js +1 -1
  606. package/dist/setup/sections/models-roles.js.map +1 -1
  607. package/dist/setup/sections/verification.d.ts.map +1 -1
  608. package/dist/setup/sections/verification.js +8 -2
  609. package/dist/setup/sections/verification.js.map +1 -1
  610. package/dist/shutdown.d.ts +24 -0
  611. package/dist/shutdown.d.ts.map +1 -1
  612. package/dist/shutdown.js +30 -1
  613. package/dist/shutdown.js.map +1 -1
  614. package/dist/skills/agents/install.d.ts +46 -6
  615. package/dist/skills/agents/install.d.ts.map +1 -1
  616. package/dist/skills/agents/install.js +86 -17
  617. package/dist/skills/agents/install.js.map +1 -1
  618. package/dist/skills/injection/subagent.js +1 -1
  619. package/dist/skills/injection/subagent.js.map +1 -1
  620. package/dist/skills/manifests/research.d.ts.map +1 -1
  621. package/dist/skills/manifests/research.js +2 -1
  622. package/dist/skills/manifests/research.js.map +1 -1
  623. package/dist/skills/orchestrator/spawn.js +1 -1
  624. package/dist/skills/orchestrator/spawn.js.map +1 -1
  625. package/dist/skills/orchestrator/validator.js +1 -1
  626. package/dist/skills/orchestrator/validator.js.map +1 -1
  627. package/dist/snapshot/index.d.ts.map +1 -1
  628. package/dist/snapshot/index.js +13 -0
  629. package/dist/snapshot/index.js.map +1 -1
  630. package/dist/spawn/agent-identity.js +1 -1
  631. package/dist/spawn/agent-identity.js.map +1 -1
  632. package/dist/stats/index.d.ts.map +1 -1
  633. package/dist/stats/index.js +2 -1
  634. package/dist/stats/index.js.map +1 -1
  635. package/dist/store/agent-install.d.ts.map +1 -1
  636. package/dist/store/agent-install.js +2 -1
  637. package/dist/store/agent-install.js.map +1 -1
  638. package/dist/store/agent-registry-accessor.d.ts +1 -0
  639. package/dist/store/agent-registry-accessor.d.ts.map +1 -1
  640. package/dist/store/agent-registry-accessor.js +3 -1
  641. package/dist/store/agent-registry-accessor.js.map +1 -1
  642. package/dist/store/atomic.js +1 -1
  643. package/dist/store/atomic.js.map +1 -1
  644. package/dist/store/attachment-store.js +1 -1
  645. package/dist/store/attachment-store.js.map +1 -1
  646. package/dist/store/audit-log-schema.d.ts +645 -0
  647. package/dist/store/audit-log-schema.d.ts.map +1 -0
  648. package/dist/store/audit-log-schema.js +30 -0
  649. package/dist/store/audit-log-schema.js.map +1 -0
  650. package/dist/store/background-ops.d.ts +26 -0
  651. package/dist/store/background-ops.d.ts.map +1 -1
  652. package/dist/store/background-ops.js +46 -0
  653. package/dist/store/background-ops.js.map +1 -1
  654. package/dist/store/backup-recover.d.ts +36 -1
  655. package/dist/store/backup-recover.d.ts.map +1 -1
  656. package/dist/store/backup-recover.js +99 -1
  657. package/dist/store/backup-recover.js.map +1 -1
  658. package/dist/store/backup-verify.d.ts +1 -1
  659. package/dist/store/backup-verify.d.ts.map +1 -1
  660. package/dist/store/backup-verify.js +6 -1
  661. package/dist/store/backup-verify.js.map +1 -1
  662. package/dist/store/backup.js +1 -1
  663. package/dist/store/backup.js.map +1 -1
  664. package/dist/store/conduit-sqlite.d.ts.map +1 -1
  665. package/dist/store/conduit-sqlite.js +2 -26
  666. package/dist/store/conduit-sqlite.js.map +1 -1
  667. package/dist/store/converters.js +1 -1
  668. package/dist/store/converters.js.map +1 -1
  669. package/dist/store/db-helpers.js +1 -1
  670. package/dist/store/db-helpers.js.map +1 -1
  671. package/dist/store/dependency-cycles.js +1 -1
  672. package/dist/store/dependency-cycles.js.map +1 -1
  673. package/dist/store/display-id-alias.d.ts +2 -2
  674. package/dist/store/display-id-alias.d.ts.map +1 -1
  675. package/dist/store/display-id-alias.js +5 -28
  676. package/dist/store/display-id-alias.js.map +1 -1
  677. package/dist/store/drizzle-node-sqlite.d.ts +56 -0
  678. package/dist/store/drizzle-node-sqlite.d.ts.map +1 -0
  679. package/dist/store/drizzle-node-sqlite.js +87 -0
  680. package/dist/store/drizzle-node-sqlite.js.map +1 -0
  681. package/dist/store/dual-scope-db.d.ts +26 -33
  682. package/dist/store/dual-scope-db.d.ts.map +1 -1
  683. package/dist/store/dual-scope-db.js +416 -127
  684. package/dist/store/dual-scope-db.js.map +1 -1
  685. package/dist/store/exodus/abort-events.d.ts +134 -0
  686. package/dist/store/exodus/abort-events.d.ts.map +1 -1
  687. package/dist/store/exodus/abort-events.js +201 -0
  688. package/dist/store/exodus/abort-events.js.map +1 -1
  689. package/dist/store/exodus/migrate.d.ts +7 -0
  690. package/dist/store/exodus/migrate.d.ts.map +1 -1
  691. package/dist/store/exodus/migrate.js +156 -118
  692. package/dist/store/exodus/migrate.js.map +1 -1
  693. package/dist/store/exodus/on-open.d.ts +36 -0
  694. package/dist/store/exodus/on-open.d.ts.map +1 -1
  695. package/dist/store/exodus/on-open.js +102 -27
  696. package/dist/store/exodus/on-open.js.map +1 -1
  697. package/dist/store/exodus/prior-recoveries.d.ts +75 -0
  698. package/dist/store/exodus/prior-recoveries.d.ts.map +1 -0
  699. package/dist/store/exodus/prior-recoveries.js +122 -0
  700. package/dist/store/exodus/prior-recoveries.js.map +1 -0
  701. package/dist/store/exodus/reconcile.d.ts.map +1 -1
  702. package/dist/store/exodus/reconcile.js +188 -24
  703. package/dist/store/exodus/reconcile.js.map +1 -1
  704. package/dist/store/exodus/runtime-targets.d.ts +3 -3
  705. package/dist/store/exodus/runtime-targets.js +3 -3
  706. package/dist/store/exodus/task-id-collision-sql.d.ts +52 -0
  707. package/dist/store/exodus/task-id-collision-sql.d.ts.map +1 -0
  708. package/dist/store/exodus/task-id-collision-sql.js +97 -0
  709. package/dist/store/exodus/task-id-collision-sql.js.map +1 -0
  710. package/dist/store/exodus/task-id-remap.d.ts +113 -0
  711. package/dist/store/exodus/task-id-remap.d.ts.map +1 -0
  712. package/dist/store/exodus/task-id-remap.js +301 -0
  713. package/dist/store/exodus/task-id-remap.js.map +1 -0
  714. package/dist/store/exodus/verify-migration.js +1 -1
  715. package/dist/store/exodus/verify-migration.js.map +1 -1
  716. package/dist/store/exodus/write-guard.d.ts +136 -0
  717. package/dist/store/exodus/write-guard.d.ts.map +1 -0
  718. package/dist/store/exodus/write-guard.js +289 -0
  719. package/dist/store/exodus/write-guard.js.map +1 -0
  720. package/dist/store/identity-share.d.ts +31 -0
  721. package/dist/store/identity-share.d.ts.map +1 -0
  722. package/dist/store/identity-share.js +54 -0
  723. package/dist/store/identity-share.js.map +1 -0
  724. package/dist/store/import-remap.js +1 -1
  725. package/dist/store/import-remap.js.map +1 -1
  726. package/dist/store/import-sort.js +1 -1
  727. package/dist/store/import-sort.js.map +1 -1
  728. package/dist/store/json.js +1 -1
  729. package/dist/store/json.js.map +1 -1
  730. package/dist/store/legacy-tasks-lineage.js +3 -3
  731. package/dist/store/legacy-tasks-lineage.js.map +1 -1
  732. package/dist/store/lock.d.ts +17 -0
  733. package/dist/store/lock.d.ts.map +1 -1
  734. package/dist/store/lock.js +18 -1
  735. package/dist/store/lock.js.map +1 -1
  736. package/dist/store/memory-sqlite.d.ts.map +1 -1
  737. package/dist/store/memory-sqlite.js +2 -25
  738. package/dist/store/memory-sqlite.js.map +1 -1
  739. package/dist/store/migration-files.d.ts +30 -0
  740. package/dist/store/migration-files.d.ts.map +1 -0
  741. package/dist/store/migration-files.js +59 -0
  742. package/dist/store/migration-files.js.map +1 -0
  743. package/dist/store/migration-manager.d.ts.map +1 -1
  744. package/dist/store/migration-manager.js +14 -14
  745. package/dist/store/migration-manager.js.map +1 -1
  746. package/dist/store/migration-runner.d.ts.map +1 -1
  747. package/dist/store/migration-runner.js +2 -2
  748. package/dist/store/migration-runner.js.map +1 -1
  749. package/dist/store/migration-sqlite.d.ts +1 -1
  750. package/dist/store/migration-sqlite.d.ts.map +1 -1
  751. package/dist/store/migration-sqlite.js +290 -355
  752. package/dist/store/migration-sqlite.js.map +1 -1
  753. package/dist/store/open-cleo-db.d.ts.map +1 -1
  754. package/dist/store/open-cleo-db.js +4 -2
  755. package/dist/store/open-cleo-db.js.map +1 -1
  756. package/dist/store/pid-alive.d.ts +15 -0
  757. package/dist/store/pid-alive.d.ts.map +1 -0
  758. package/dist/store/pid-alive.js +24 -0
  759. package/dist/store/pid-alive.js.map +1 -0
  760. package/dist/store/portable-bundle-scan.d.ts +1 -1
  761. package/dist/store/portable-bundle-scan.d.ts.map +1 -1
  762. package/dist/store/portable-bundle-scan.js +1 -1
  763. package/dist/store/portable-bundle-scan.js.map +1 -1
  764. package/dist/store/portable-bundle.d.ts +10 -1
  765. package/dist/store/portable-bundle.d.ts.map +1 -1
  766. package/dist/store/portable-bundle.js +10 -1
  767. package/dist/store/portable-bundle.js.map +1 -1
  768. package/dist/store/recover-malformed-db.d.ts +1 -1
  769. package/dist/store/recover-malformed-db.d.ts.map +1 -1
  770. package/dist/store/recover-malformed-db.js +1 -1
  771. package/dist/store/recover-malformed-db.js.map +1 -1
  772. package/dist/store/repair-malformed-dbs.d.ts +1 -1
  773. package/dist/store/repair-malformed-dbs.d.ts.map +1 -1
  774. package/dist/store/repair-malformed-dbs.js +1 -1
  775. package/dist/store/repair-malformed-dbs.js.map +1 -1
  776. package/dist/store/restore-marker.d.ts +89 -0
  777. package/dist/store/restore-marker.d.ts.map +1 -0
  778. package/dist/store/restore-marker.js +197 -0
  779. package/dist/store/restore-marker.js.map +1 -0
  780. package/dist/store/restore-store.d.ts +85 -0
  781. package/dist/store/restore-store.d.ts.map +1 -0
  782. package/dist/store/restore-store.js +391 -0
  783. package/dist/store/restore-store.js.map +1 -0
  784. package/dist/store/row-identity.d.ts +123 -1
  785. package/dist/store/row-identity.d.ts.map +1 -1
  786. package/dist/store/row-identity.js +454 -80
  787. package/dist/store/row-identity.js.map +1 -1
  788. package/dist/store/schema/agent-registry-schema.d.ts +1 -1
  789. package/dist/store/schema/agent-registry-schema.d.ts.map +1 -1
  790. package/dist/store/schema/agent-registry-schema.js +5 -1
  791. package/dist/store/schema/agent-registry-schema.js.map +1 -1
  792. package/dist/store/schema/cleo-global/agent-registry.d.ts +1 -1
  793. package/dist/store/schema/cleo-global/agent-registry.d.ts.map +1 -1
  794. package/dist/store/schema/cleo-global/agent-registry.js +9 -5
  795. package/dist/store/schema/cleo-global/agent-registry.js.map +1 -1
  796. package/dist/store/schema/cleo-global/models-catalog.js +1 -1
  797. package/dist/store/schema/cleo-global/models-catalog.js.map +1 -1
  798. package/dist/store/schema/cleo-global/nexus.js +1 -1
  799. package/dist/store/schema/cleo-global/nexus.js.map +1 -1
  800. package/dist/store/schema/cleo-project/provenance-commits.d.ts +1 -1
  801. package/dist/store/schema/cleo-project/provenance-orphans.d.ts +1 -1
  802. package/dist/store/schema/cleo-project/provenance-orphans.d.ts.map +1 -1
  803. package/dist/store/schema/cleo-project/provenance-orphans.js +9 -2
  804. package/dist/store/schema/cleo-project/provenance-orphans.js.map +1 -1
  805. package/dist/store/schema/cleo-project/provenance-rest.d.ts +1 -1
  806. package/dist/store/schema/cleo-project/provenance-rest.js +1 -1
  807. package/dist/store/schema/cleo-project/provenance-rest.js.map +1 -1
  808. package/dist/store/schema/cleo-shared/brain.js +1 -1
  809. package/dist/store/schema/cleo-shared/brain.js.map +1 -1
  810. package/dist/store/schema/memory-schema.d.ts +1 -1
  811. package/dist/store/schema/memory-schema.d.ts.map +1 -1
  812. package/dist/store/schema/memory-schema.js +1 -1
  813. package/dist/store/schema/memory-schema.js.map +1 -1
  814. package/dist/store/schema/nexus-schema.js +1 -1
  815. package/dist/store/schema/nexus-schema.js.map +1 -1
  816. package/dist/store/service-host-matcher.d.ts +1 -1
  817. package/dist/store/service-host-matcher.d.ts.map +1 -1
  818. package/dist/store/service-host-matcher.js +1 -1
  819. package/dist/store/service-host-matcher.js.map +1 -1
  820. package/dist/store/service-oauth.js +1 -1
  821. package/dist/store/service-oauth.js.map +1 -1
  822. package/dist/store/session-store.d.ts.map +1 -1
  823. package/dist/store/session-store.js +7 -1
  824. package/dist/store/session-store.js.map +1 -1
  825. package/dist/store/sqlite-backup.d.ts +1 -1
  826. package/dist/store/sqlite-backup.d.ts.map +1 -1
  827. package/dist/store/sqlite-backup.js +1 -1
  828. package/dist/store/sqlite-backup.js.map +1 -1
  829. package/dist/store/sqlite-data-accessor.d.ts +52 -1
  830. package/dist/store/sqlite-data-accessor.d.ts.map +1 -1
  831. package/dist/store/sqlite-data-accessor.js +95 -22
  832. package/dist/store/sqlite-data-accessor.js.map +1 -1
  833. package/dist/store/sqlite-native.d.ts.map +1 -1
  834. package/dist/store/sqlite-native.js +9 -9
  835. package/dist/store/sqlite-native.js.map +1 -1
  836. package/dist/store/sqlite-pragmas.d.ts +12 -5
  837. package/dist/store/sqlite-pragmas.d.ts.map +1 -1
  838. package/dist/store/sqlite-pragmas.js +13 -2
  839. package/dist/store/sqlite-pragmas.js.map +1 -1
  840. package/dist/store/sqlite.d.ts.map +1 -1
  841. package/dist/store/sqlite.js +7 -32
  842. package/dist/store/sqlite.js.map +1 -1
  843. package/dist/store/status-registry.d.ts +1 -1
  844. package/dist/store/status-registry.d.ts.map +1 -1
  845. package/dist/store/status-registry.js +1 -1
  846. package/dist/store/status-registry.js.map +1 -1
  847. package/dist/store/sync/apply/applier.d.ts +119 -0
  848. package/dist/store/sync/apply/applier.d.ts.map +1 -0
  849. package/dist/store/sync/apply/applier.js +1239 -0
  850. package/dist/store/sync/apply/applier.js.map +1 -0
  851. package/dist/store/sync/apply/fk.d.ts +47 -0
  852. package/dist/store/sync/apply/fk.d.ts.map +1 -0
  853. package/dist/store/sync/apply/fk.js +89 -0
  854. package/dist/store/sync/apply/fk.js.map +1 -0
  855. package/dist/store/sync/apply/footprints.d.ts +60 -0
  856. package/dist/store/sync/apply/footprints.d.ts.map +1 -0
  857. package/dist/store/sync/apply/footprints.js +235 -0
  858. package/dist/store/sync/apply/footprints.js.map +1 -0
  859. package/dist/store/sync/apply/frame.d.ts +80 -0
  860. package/dist/store/sync/apply/frame.d.ts.map +1 -0
  861. package/dist/store/sync/apply/frame.js +127 -0
  862. package/dist/store/sync/apply/frame.js.map +1 -0
  863. package/dist/store/sync/apply/index.d.ts +11 -0
  864. package/dist/store/sync/apply/index.d.ts.map +1 -0
  865. package/dist/store/sync/apply/index.js +11 -0
  866. package/dist/store/sync/apply/index.js.map +1 -0
  867. package/dist/store/sync/apply/parent-delete.d.ts +38 -0
  868. package/dist/store/sync/apply/parent-delete.d.ts.map +1 -0
  869. package/dist/store/sync/apply/parent-delete.js +41 -0
  870. package/dist/store/sync/apply/parent-delete.js.map +1 -0
  871. package/dist/store/sync/apply/post-apply.d.ts +67 -0
  872. package/dist/store/sync/apply/post-apply.d.ts.map +1 -0
  873. package/dist/store/sync/apply/post-apply.js +118 -0
  874. package/dist/store/sync/apply/post-apply.js.map +1 -0
  875. package/dist/store/sync/apply/refs.d.ts +60 -0
  876. package/dist/store/sync/apply/refs.d.ts.map +1 -0
  877. package/dist/store/sync/apply/refs.js +90 -0
  878. package/dist/store/sync/apply/refs.js.map +1 -0
  879. package/dist/store/sync/apply/write-api.d.ts +195 -0
  880. package/dist/store/sync/apply/write-api.d.ts.map +1 -0
  881. package/dist/store/sync/apply/write-api.js +416 -0
  882. package/dist/store/sync/apply/write-api.js.map +1 -0
  883. package/dist/store/sync/apply-intent.d.ts +117 -0
  884. package/dist/store/sync/apply-intent.d.ts.map +1 -0
  885. package/dist/store/sync/apply-intent.js +225 -0
  886. package/dist/store/sync/apply-intent.js.map +1 -0
  887. package/dist/store/sync/capture.d.ts +32 -2
  888. package/dist/store/sync/capture.d.ts.map +1 -1
  889. package/dist/store/sync/capture.js +47 -13
  890. package/dist/store/sync/capture.js.map +1 -1
  891. package/dist/store/sync/conflicts.d.ts +81 -0
  892. package/dist/store/sync/conflicts.d.ts.map +1 -0
  893. package/dist/store/sync/conflicts.js +98 -0
  894. package/dist/store/sync/conflicts.js.map +1 -0
  895. package/dist/store/sync/field-leave.d.ts +146 -0
  896. package/dist/store/sync/field-leave.d.ts.map +1 -0
  897. package/dist/store/sync/field-leave.js +241 -0
  898. package/dist/store/sync/field-leave.js.map +1 -0
  899. package/dist/store/sync/flags.d.ts +119 -0
  900. package/dist/store/sync/flags.d.ts.map +1 -1
  901. package/dist/store/sync/flags.js +360 -0
  902. package/dist/store/sync/flags.js.map +1 -1
  903. package/dist/store/sync/held.d.ts +197 -0
  904. package/dist/store/sync/held.d.ts.map +1 -0
  905. package/dist/store/sync/held.js +314 -0
  906. package/dist/store/sync/held.js.map +1 -0
  907. package/dist/store/sync/identity-fill.d.ts.map +1 -1
  908. package/dist/store/sync/identity-fill.js +10 -2
  909. package/dist/store/sync/identity-fill.js.map +1 -1
  910. package/dist/store/sync/inbox.d.ts +114 -0
  911. package/dist/store/sync/inbox.d.ts.map +1 -0
  912. package/dist/store/sync/inbox.js +222 -0
  913. package/dist/store/sync/inbox.js.map +1 -0
  914. package/dist/store/sync/inherit.d.ts +36 -0
  915. package/dist/store/sync/inherit.d.ts.map +1 -0
  916. package/dist/store/sync/inherit.js +38 -0
  917. package/dist/store/sync/inherit.js.map +1 -0
  918. package/dist/store/sync/merge/engine.d.ts +114 -0
  919. package/dist/store/sync/merge/engine.d.ts.map +1 -0
  920. package/dist/store/sync/merge/engine.js +698 -0
  921. package/dist/store/sync/merge/engine.js.map +1 -0
  922. package/dist/store/sync/merge/index.d.ts +11 -0
  923. package/dist/store/sync/merge/index.d.ts.map +1 -0
  924. package/dist/store/sync/merge/index.js +11 -0
  925. package/dist/store/sync/merge/index.js.map +1 -0
  926. package/dist/store/sync/merge/rules.d.ts +91 -0
  927. package/dist/store/sync/merge/rules.d.ts.map +1 -0
  928. package/dist/store/sync/merge/rules.js +151 -0
  929. package/dist/store/sync/merge/rules.js.map +1 -0
  930. package/dist/store/sync/merge/types.d.ts +206 -0
  931. package/dist/store/sync/merge/types.d.ts.map +1 -0
  932. package/dist/store/sync/merge/types.js +15 -0
  933. package/dist/store/sync/merge/types.js.map +1 -0
  934. package/dist/store/sync/migration-hooks.d.ts +47 -0
  935. package/dist/store/sync/migration-hooks.d.ts.map +1 -0
  936. package/dist/store/sync/migration-hooks.js +74 -0
  937. package/dist/store/sync/migration-hooks.js.map +1 -0
  938. package/dist/store/sync/netting.d.ts +5 -0
  939. package/dist/store/sync/netting.d.ts.map +1 -1
  940. package/dist/store/sync/netting.js +29 -2
  941. package/dist/store/sync/netting.js.map +1 -1
  942. package/dist/store/sync/remap.d.ts +72 -0
  943. package/dist/store/sync/remap.d.ts.map +1 -0
  944. package/dist/store/sync/remap.js +209 -0
  945. package/dist/store/sync/remap.js.map +1 -0
  946. package/dist/store/sync/repair.d.ts +180 -0
  947. package/dist/store/sync/repair.d.ts.map +1 -0
  948. package/dist/store/sync/repair.js +499 -0
  949. package/dist/store/sync/repair.js.map +1 -0
  950. package/dist/store/sync/replica-registry.d.ts +54 -0
  951. package/dist/store/sync/replica-registry.d.ts.map +1 -1
  952. package/dist/store/sync/replica-registry.js +72 -2
  953. package/dist/store/sync/replica-registry.js.map +1 -1
  954. package/dist/store/sync/replica.d.ts +71 -9
  955. package/dist/store/sync/replica.d.ts.map +1 -1
  956. package/dist/store/sync/replica.js +95 -11
  957. package/dist/store/sync/replica.js.map +1 -1
  958. package/dist/store/sync/row-meta.d.ts +148 -0
  959. package/dist/store/sync/row-meta.d.ts.map +1 -0
  960. package/dist/store/sync/row-meta.js +200 -0
  961. package/dist/store/sync/row-meta.js.map +1 -0
  962. package/dist/store/sync/schema.d.ts +13 -5
  963. package/dist/store/sync/schema.d.ts.map +1 -1
  964. package/dist/store/sync/schema.js +34 -7
  965. package/dist/store/sync/schema.js.map +1 -1
  966. package/dist/store/sync/sealer-values.d.ts.map +1 -1
  967. package/dist/store/sync/sealer-values.js +1 -0
  968. package/dist/store/sync/sealer-values.js.map +1 -1
  969. package/dist/store/sync/sealer.d.ts +96 -0
  970. package/dist/store/sync/sealer.d.ts.map +1 -1
  971. package/dist/store/sync/sealer.js +532 -58
  972. package/dist/store/sync/sealer.js.map +1 -1
  973. package/dist/store/sync/sequencing.d.ts +175 -0
  974. package/dist/store/sync/sequencing.d.ts.map +1 -0
  975. package/dist/store/sync/sequencing.js +295 -0
  976. package/dist/store/sync/sequencing.js.map +1 -0
  977. package/dist/store/sync/structural.d.ts +30 -2
  978. package/dist/store/sync/structural.d.ts.map +1 -1
  979. package/dist/store/sync/structural.js +64 -2
  980. package/dist/store/sync/structural.js.map +1 -1
  981. package/dist/store/sync/timestamp-canon.d.ts +44 -0
  982. package/dist/store/sync/timestamp-canon.d.ts.map +1 -0
  983. package/dist/store/sync/timestamp-canon.js +102 -0
  984. package/dist/store/sync/timestamp-canon.js.map +1 -0
  985. package/dist/store/sync/timestamps.d.ts +1 -30
  986. package/dist/store/sync/timestamps.d.ts.map +1 -1
  987. package/dist/store/sync/timestamps.js +2 -89
  988. package/dist/store/sync/timestamps.js.map +1 -1
  989. package/dist/store/sync/trigger-classes.d.ts +8 -0
  990. package/dist/store/sync/trigger-classes.d.ts.map +1 -1
  991. package/dist/store/sync/trigger-classes.js +13 -0
  992. package/dist/store/sync/trigger-classes.js.map +1 -1
  993. package/dist/store/sync/write-actor.d.ts +58 -0
  994. package/dist/store/sync/write-actor.d.ts.map +1 -0
  995. package/dist/store/sync/write-actor.js +67 -0
  996. package/dist/store/sync/write-actor.js.map +1 -0
  997. package/dist/store/table-classification.d.ts.map +1 -1
  998. package/dist/store/table-classification.js +84 -0
  999. package/dist/store/table-classification.js.map +1 -1
  1000. package/dist/store/task-claim.d.ts +1 -1
  1001. package/dist/store/task-claim.d.ts.map +1 -1
  1002. package/dist/store/task-claim.js +1 -1
  1003. package/dist/store/task-claim.js.map +1 -1
  1004. package/dist/store/task-reference-columns.d.ts +27 -0
  1005. package/dist/store/task-reference-columns.d.ts.map +1 -0
  1006. package/dist/store/task-reference-columns.js +65 -0
  1007. package/dist/store/task-reference-columns.js.map +1 -0
  1008. package/dist/store/task-version.d.ts +1 -1
  1009. package/dist/store/task-version.d.ts.map +1 -1
  1010. package/dist/store/task-version.js +1 -1
  1011. package/dist/store/task-version.js.map +1 -1
  1012. package/dist/store/tasks-schema.d.ts +2 -1
  1013. package/dist/store/tasks-schema.d.ts.map +1 -1
  1014. package/dist/store/tasks-schema.js +5 -4
  1015. package/dist/store/tasks-schema.js.map +1 -1
  1016. package/dist/store/tasks-sqlite.d.ts +1 -1
  1017. package/dist/store/tasks-sqlite.d.ts.map +1 -1
  1018. package/dist/store/tasks-sqlite.js +3 -1
  1019. package/dist/store/tasks-sqlite.js.map +1 -1
  1020. package/dist/store/twin-collapse.d.ts +43 -14
  1021. package/dist/store/twin-collapse.d.ts.map +1 -1
  1022. package/dist/store/twin-collapse.js +373 -32
  1023. package/dist/store/twin-collapse.js.map +1 -1
  1024. package/dist/store/validation-schemas.d.ts +44 -674
  1025. package/dist/store/validation-schemas.d.ts.map +1 -1
  1026. package/dist/store/validation-schemas.js +2 -22
  1027. package/dist/store/validation-schemas.js.map +1 -1
  1028. package/dist/store/vault-manifest.d.ts +1 -1
  1029. package/dist/store/vault-manifest.d.ts.map +1 -1
  1030. package/dist/store/vault-manifest.js +1 -1
  1031. package/dist/store/vault-manifest.js.map +1 -1
  1032. package/dist/store/worktree-build-guard.js +1 -1
  1033. package/dist/store/worktree-build-guard.js.map +1 -1
  1034. package/dist/store/worktree-isolation-guard.js +1 -1
  1035. package/dist/store/worktree-isolation-guard.js.map +1 -1
  1036. package/dist/store/writer-lease.d.ts.map +1 -1
  1037. package/dist/store/writer-lease.js +1 -11
  1038. package/dist/store/writer-lease.js.map +1 -1
  1039. package/dist/store/zod-schema-factory.d.ts +16 -0
  1040. package/dist/store/zod-schema-factory.d.ts.map +1 -0
  1041. package/dist/store/zod-schema-factory.js +23 -0
  1042. package/dist/store/zod-schema-factory.js.map +1 -0
  1043. package/dist/system/backup.d.ts +106 -0
  1044. package/dist/system/backup.d.ts.map +1 -1
  1045. package/dist/system/backup.js +295 -19
  1046. package/dist/system/backup.js.map +1 -1
  1047. package/dist/system/cleanup.js +1 -1
  1048. package/dist/system/cleanup.js.map +1 -1
  1049. package/dist/system/labels.js +1 -1
  1050. package/dist/system/labels.js.map +1 -1
  1051. package/dist/system/migrate.js +1 -1
  1052. package/dist/system/migrate.js.map +1 -1
  1053. package/dist/system/safestop.d.ts.map +1 -1
  1054. package/dist/system/safestop.js +1 -1
  1055. package/dist/system/safestop.js.map +1 -1
  1056. package/dist/task-work/current.d.ts +34 -0
  1057. package/dist/task-work/current.d.ts.map +1 -0
  1058. package/dist/task-work/current.js +34 -0
  1059. package/dist/task-work/current.js.map +1 -0
  1060. package/dist/task-work/index.d.ts +2 -19
  1061. package/dist/task-work/index.d.ts.map +1 -1
  1062. package/dist/task-work/index.js +6 -20
  1063. package/dist/task-work/index.js.map +1 -1
  1064. package/dist/tasks/ac-identity.d.ts +28 -0
  1065. package/dist/tasks/ac-identity.d.ts.map +1 -0
  1066. package/dist/tasks/ac-identity.js +43 -0
  1067. package/dist/tasks/ac-identity.js.map +1 -0
  1068. package/dist/tasks/ac-immutability.d.ts +1 -1
  1069. package/dist/tasks/ac-immutability.d.ts.map +1 -1
  1070. package/dist/tasks/ac-immutability.js +1 -1
  1071. package/dist/tasks/ac-immutability.js.map +1 -1
  1072. package/dist/tasks/ac-table.d.ts +2 -14
  1073. package/dist/tasks/ac-table.d.ts.map +1 -1
  1074. package/dist/tasks/ac-table.js +6 -29
  1075. package/dist/tasks/ac-table.js.map +1 -1
  1076. package/dist/tasks/acceptance-input.js +1 -1
  1077. package/dist/tasks/acceptance-input.js.map +1 -1
  1078. package/dist/tasks/add.d.ts.map +1 -1
  1079. package/dist/tasks/add.js +3 -1
  1080. package/dist/tasks/add.js.map +1 -1
  1081. package/dist/tasks/affected-packages.d.ts +80 -12
  1082. package/dist/tasks/affected-packages.d.ts.map +1 -1
  1083. package/dist/tasks/affected-packages.js +130 -19
  1084. package/dist/tasks/affected-packages.js.map +1 -1
  1085. package/dist/tasks/archive.d.ts.map +1 -1
  1086. package/dist/tasks/archive.js +1 -1
  1087. package/dist/tasks/archive.js.map +1 -1
  1088. package/dist/tasks/axis-filters.d.ts.map +1 -1
  1089. package/dist/tasks/axis-filters.js +2 -1
  1090. package/dist/tasks/axis-filters.js.map +1 -1
  1091. package/dist/tasks/child-disposition.js +1 -1
  1092. package/dist/tasks/child-disposition.js.map +1 -1
  1093. package/dist/tasks/collection.js +1 -1
  1094. package/dist/tasks/collection.js.map +1 -1
  1095. package/dist/tasks/complete.d.ts.map +1 -1
  1096. package/dist/tasks/complete.js +2 -1
  1097. package/dist/tasks/complete.js.map +1 -1
  1098. package/dist/tasks/decompose.js +1 -1
  1099. package/dist/tasks/decompose.js.map +1 -1
  1100. package/dist/tasks/delete.js +1 -1
  1101. package/dist/tasks/delete.js.map +1 -1
  1102. package/dist/tasks/done-plan.d.ts +2 -1
  1103. package/dist/tasks/done-plan.d.ts.map +1 -1
  1104. package/dist/tasks/done-plan.js +10 -20
  1105. package/dist/tasks/done-plan.js.map +1 -1
  1106. package/dist/tasks/done-record.d.ts +1 -1
  1107. package/dist/tasks/done-record.d.ts.map +1 -1
  1108. package/dist/tasks/done-record.js +1 -1
  1109. package/dist/tasks/done-record.js.map +1 -1
  1110. package/dist/tasks/enforcement.d.ts +2 -1
  1111. package/dist/tasks/enforcement.d.ts.map +1 -1
  1112. package/dist/tasks/enforcement.js +1 -1
  1113. package/dist/tasks/enforcement.js.map +1 -1
  1114. package/dist/tasks/engine-wrap-ops.js +1 -1
  1115. package/dist/tasks/engine-wrap-ops.js.map +1 -1
  1116. package/dist/tasks/engine-wrap.d.ts.map +1 -1
  1117. package/dist/tasks/engine-wrap.js +7 -3
  1118. package/dist/tasks/engine-wrap.js.map +1 -1
  1119. package/dist/tasks/epic-enforcement.js +1 -1
  1120. package/dist/tasks/epic-enforcement.js.map +1 -1
  1121. package/dist/tasks/evidence.d.ts.map +1 -1
  1122. package/dist/tasks/evidence.js +41 -19
  1123. package/dist/tasks/evidence.js.map +1 -1
  1124. package/dist/tasks/find.js +1 -1
  1125. package/dist/tasks/find.js.map +1 -1
  1126. package/dist/tasks/gate-result-cache.js +1 -1
  1127. package/dist/tasks/gate-result-cache.js.map +1 -1
  1128. package/dist/tasks/gate-runner.d.ts.map +1 -1
  1129. package/dist/tasks/gate-runner.js +1 -1
  1130. package/dist/tasks/gate-runner.js.map +1 -1
  1131. package/dist/tasks/heavy-tool-env.d.ts +79 -11
  1132. package/dist/tasks/heavy-tool-env.d.ts.map +1 -1
  1133. package/dist/tasks/heavy-tool-env.js +111 -14
  1134. package/dist/tasks/heavy-tool-env.js.map +1 -1
  1135. package/dist/tasks/index.d.ts +1 -1
  1136. package/dist/tasks/index.d.ts.map +1 -1
  1137. package/dist/tasks/index.js +2 -2
  1138. package/dist/tasks/index.js.map +1 -1
  1139. package/dist/tasks/labels.js +1 -1
  1140. package/dist/tasks/labels.js.map +1 -1
  1141. package/dist/tasks/nexus-impact-gate.js +1 -1
  1142. package/dist/tasks/nexus-impact-gate.js.map +1 -1
  1143. package/dist/tasks/pipeline-stage.js +1 -1
  1144. package/dist/tasks/pipeline-stage.js.map +1 -1
  1145. package/dist/tasks/population.js +1 -1
  1146. package/dist/tasks/population.js.map +1 -1
  1147. package/dist/tasks/ranking-audit.js +1 -1
  1148. package/dist/tasks/ranking-audit.js.map +1 -1
  1149. package/dist/tasks/reconcile-scope.js +1 -1
  1150. package/dist/tasks/reconcile-scope.js.map +1 -1
  1151. package/dist/tasks/relates.js +1 -1
  1152. package/dist/tasks/relates.js.map +1 -1
  1153. package/dist/tasks/req.d.ts.map +1 -1
  1154. package/dist/tasks/req.js +2 -1
  1155. package/dist/tasks/req.js.map +1 -1
  1156. package/dist/tasks/severity-attestation.d.ts +1 -1
  1157. package/dist/tasks/severity-attestation.d.ts.map +1 -1
  1158. package/dist/tasks/severity-attestation.js +1 -1
  1159. package/dist/tasks/severity-attestation.js.map +1 -1
  1160. package/dist/tasks/show.d.ts.map +1 -1
  1161. package/dist/tasks/show.js +47 -3
  1162. package/dist/tasks/show.js.map +1 -1
  1163. package/dist/tasks/task-import.js +1 -1
  1164. package/dist/tasks/task-import.js.map +1 -1
  1165. package/dist/tasks/task-reparent.d.ts.map +1 -1
  1166. package/dist/tasks/task-reparent.js +2 -1
  1167. package/dist/tasks/task-reparent.js.map +1 -1
  1168. package/dist/tasks/test-run-binding.d.ts.map +1 -1
  1169. package/dist/tasks/test-run-binding.js +9 -2
  1170. package/dist/tasks/test-run-binding.js.map +1 -1
  1171. package/dist/tasks/tool-cache.d.ts +23 -8
  1172. package/dist/tasks/tool-cache.d.ts.map +1 -1
  1173. package/dist/tasks/tool-cache.js +57 -16
  1174. package/dist/tasks/tool-cache.js.map +1 -1
  1175. package/dist/tasks/tool-resolver.d.ts +8 -0
  1176. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  1177. package/dist/tasks/tool-resolver.js +15 -1
  1178. package/dist/tasks/tool-resolver.js.map +1 -1
  1179. package/dist/tasks/tool-runner-guard.d.ts +131 -0
  1180. package/dist/tasks/tool-runner-guard.d.ts.map +1 -0
  1181. package/dist/tasks/tool-runner-guard.js +141 -0
  1182. package/dist/tasks/tool-runner-guard.js.map +1 -0
  1183. package/dist/tasks/tool-semaphore.d.ts +103 -342
  1184. package/dist/tasks/tool-semaphore.d.ts.map +1 -1
  1185. package/dist/tasks/tool-semaphore.js +131 -619
  1186. package/dist/tasks/tool-semaphore.js.map +1 -1
  1187. package/dist/tasks/update.d.ts.map +1 -1
  1188. package/dist/tasks/update.js +2 -1
  1189. package/dist/tasks/update.js.map +1 -1
  1190. package/dist/upgrade.d.ts.map +1 -1
  1191. package/dist/upgrade.js +5 -34
  1192. package/dist/upgrade.js.map +1 -1
  1193. package/dist/validation/doctor/checks.d.ts +24 -0
  1194. package/dist/validation/doctor/checks.d.ts.map +1 -1
  1195. package/dist/validation/doctor/checks.js +168 -0
  1196. package/dist/validation/doctor/checks.js.map +1 -1
  1197. package/dist/validation/doctor/index.d.ts +1 -1
  1198. package/dist/validation/doctor/index.d.ts.map +1 -1
  1199. package/dist/validation/doctor/index.js +1 -1
  1200. package/dist/validation/doctor/index.js.map +1 -1
  1201. package/dist/validation/engine-ops.js +1 -1
  1202. package/dist/validation/engine-ops.js.map +1 -1
  1203. package/dist/validation/engine.d.ts +1 -1
  1204. package/dist/validation/engine.d.ts.map +1 -1
  1205. package/dist/validation/engine.js +2 -1
  1206. package/dist/validation/engine.js.map +1 -1
  1207. package/dist/validation/index.d.ts +1 -1
  1208. package/dist/validation/index.d.ts.map +1 -1
  1209. package/dist/validation/index.js +1 -1
  1210. package/dist/validation/index.js.map +1 -1
  1211. package/dist/validation/operation-gate-validators.js +1 -1
  1212. package/dist/validation/operation-gate-validators.js.map +1 -1
  1213. package/dist/validation/protocol-common.js +1 -1
  1214. package/dist/validation/protocol-common.js.map +1 -1
  1215. package/dist/validation/protocols/_shared.js +1 -1
  1216. package/dist/validation/protocols/_shared.js.map +1 -1
  1217. package/dist/validation/validate-ops.js +1 -1
  1218. package/dist/validation/validate-ops.js.map +1 -1
  1219. package/dist/validation/verification.js +1 -1
  1220. package/dist/validation/verification.js.map +1 -1
  1221. package/dist/workgraph/index.d.ts +1 -1
  1222. package/dist/workgraph/index.d.ts.map +1 -1
  1223. package/dist/workgraph/index.js +1 -1
  1224. package/dist/workgraph/index.js.map +1 -1
  1225. package/dist/workgraph/reparent-preflight.d.ts +1 -2
  1226. package/dist/workgraph/reparent-preflight.d.ts.map +1 -1
  1227. package/dist/workgraph/reparent-preflight.js +1 -1
  1228. package/dist/workgraph/reparent-preflight.js.map +1 -1
  1229. package/dist/workgraph/scaffold-validate.js +1 -1
  1230. package/dist/workgraph/scaffold-validate.js.map +1 -1
  1231. package/dist/worktree/force-unlock.d.ts +1 -1
  1232. package/dist/worktree/force-unlock.d.ts.map +1 -1
  1233. package/dist/worktree/force-unlock.js +1 -1
  1234. package/dist/worktree/force-unlock.js.map +1 -1
  1235. package/dist/worktree/isolation.d.ts +1 -1
  1236. package/dist/worktree/isolation.d.ts.map +1 -1
  1237. package/dist/worktree/isolation.js +1 -1
  1238. package/dist/worktree/isolation.js.map +1 -1
  1239. package/dist/worktree/list.d.ts +1 -1
  1240. package/dist/worktree/list.d.ts.map +1 -1
  1241. package/dist/worktree/list.js +1 -1
  1242. package/dist/worktree/list.js.map +1 -1
  1243. package/dist/worktree/prune.d.ts +1 -1
  1244. package/dist/worktree/prune.d.ts.map +1 -1
  1245. package/dist/worktree/prune.js +1 -1
  1246. package/dist/worktree/prune.js.map +1 -1
  1247. package/dist/worktree/worktree-adopt.d.ts +1 -2
  1248. package/dist/worktree/worktree-adopt.d.ts.map +1 -1
  1249. package/dist/worktree/worktree-adopt.js +1 -1
  1250. package/dist/worktree/worktree-adopt.js.map +1 -1
  1251. package/migrations/sync-journal/20261004120000_t12757-apply-intent/migration.sql +21 -0
  1252. package/migrations/sync-journal/20261005120000_t12344-inbox/migration.sql +67 -0
  1253. package/migrations/sync-journal/20261006120000_t13193-rebase-undo/migration.sql +51 -0
  1254. package/migrations/sync-journal/20261006130000_t13193-rebase-state/migration.sql +17 -0
  1255. package/migrations/sync-journal/20261006140000_t13193-held-rows/migration.sql +24 -0
  1256. package/package.json +13 -13
  1257. package/schemas/project-context.schema.json +14 -0
  1258. package/templates/CLEO-INJECTION.md +11 -11
  1259. package/templates/CLEO-REFERENCE.md +2 -2
  1260. package/templates/workflows/release-prepare.yml.tmpl +10 -10
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Ask Cleo Nexus, read-only, whether it holds ANY history of a project: a
3
+ * checkpoint or a journal segment from any device (T13231). `cleo doctor
4
+ * row-identity --refill` needs this answer before re-deriving the row identity
5
+ * of a Nexus-linked store: a uid in the cloud must never be rewritten locally.
6
+ *
7
+ * Every linked origin is asked with this machine's device credential. Nothing
8
+ * is written, locally or remotely: no lease, no key minting, no replica bind.
9
+ *
10
+ * @task T13231
11
+ * @module cloud/nexus-project-history
12
+ */
13
+ import { ListCheckpointsResult } from '@cleocode/contracts/cloud';
14
+ import { nexusStreamHeadSchema } from '@cleocode/contracts/nexus-vault.js';
15
+ import { NexusError } from './http.js';
16
+ import { readNexusProjectLinks } from './nexus-link.js';
17
+ import { connectNexusVault } from './nexus-vault-keys.js';
18
+ import { projectStream } from './streams.js';
19
+ /**
20
+ * The cleo-nexus answer for a project the caller can see whose stream was
21
+ * never created (`requireStreamAccess`: `notFound('stream')`, after project
22
+ * access passed). A non-member gets `project not found`, and an unknown route
23
+ * a bare 404; neither proves the cloud holds nothing.
24
+ */
25
+ const STREAM_NEVER_CREATED = 'stream not found';
26
+ /** Whether a failure is exactly the server's "this project's stream does not exist". */
27
+ function streamNeverCreated(err) {
28
+ return (err instanceof NexusError &&
29
+ err.status === 404 &&
30
+ err.code === 'E_NOT_FOUND' &&
31
+ err.serverMessage === STREAM_NEVER_CREATED);
32
+ }
33
+ /**
34
+ * What one stream holds: its head and its checkpoint count. Only two answers
35
+ * count as "nothing": a stream that exists with no checkpoint and head 0, and
36
+ * the server's explicit "stream not found" for a project the caller can see.
37
+ * Every other failure, including any other 404, is thrown (the caller treats
38
+ * it as unknown).
39
+ *
40
+ * @param reader - An authenticated reader.
41
+ * @param streamId - The project's stream.
42
+ * @returns Checkpoint count and head sequence.
43
+ * @task T13231
44
+ */
45
+ export async function nexusStreamHistory(reader, streamId) {
46
+ const base = `/v1/streams/${encodeURIComponent(streamId)}`;
47
+ let head;
48
+ try {
49
+ head = await reader.raw('GET', base, nexusStreamHeadSchema);
50
+ }
51
+ catch (err) {
52
+ if (streamNeverCreated(err))
53
+ return { checkpoints: 0, headSeq: 0 };
54
+ throw err;
55
+ }
56
+ const list = await reader.raw('GET', `${base}/checkpoints`, ListCheckpointsResult);
57
+ const checkpoints = Math.max(list.checkpoints.length, head.headCheckpointId ? 1 : 0);
58
+ return { checkpoints, headSeq: head.headSeq };
59
+ }
60
+ /** Ask one origin; any failure is an `error` answer, never "none". */
61
+ async function askOrigin(link, open) {
62
+ const streamId = link.streamId || projectStream(link.remoteProjectId);
63
+ const base = { apiUrl: link.apiUrl, remoteProjectId: link.remoteProjectId, streamId };
64
+ try {
65
+ const history = await nexusStreamHistory(await open(link.apiUrl), streamId);
66
+ const present = history.checkpoints > 0 || history.headSeq > 0;
67
+ return { ...base, answer: present ? 'present' : 'none', ...history };
68
+ }
69
+ catch (err) {
70
+ return {
71
+ ...base,
72
+ answer: 'error',
73
+ checkpoints: 0,
74
+ headSeq: 0,
75
+ error: err instanceof Error ? err.message : String(err),
76
+ };
77
+ }
78
+ }
79
+ /**
80
+ * Ask every origin the project is linked to whether it holds a checkpoint or
81
+ * a journal segment of the project, from any device.
82
+ *
83
+ * @param projectRoot - Project root (its `nexus-link.json` names the origins).
84
+ * @param options - Connection options, or a reader factory (tests).
85
+ * @returns One answer per linked origin; an unreadable link entry is an `error` answer.
86
+ * @task T13231
87
+ */
88
+ export async function askNexusProjectHistory(projectRoot, options = {}) {
89
+ const { readerFor, ...connectOptions } = options;
90
+ const open = readerFor ?? ((apiUrl) => connectNexusVault({ ...connectOptions, apiUrl }));
91
+ const { links, unreadable } = readNexusProjectLinks(projectRoot);
92
+ const answers = [];
93
+ for (const link of links)
94
+ answers.push(await askOrigin(link, open));
95
+ for (const origin of unreadable) {
96
+ answers.push({
97
+ apiUrl: origin,
98
+ remoteProjectId: '',
99
+ streamId: '',
100
+ answer: 'error',
101
+ checkpoints: 0,
102
+ headSeq: 0,
103
+ error: 'this version cannot read the link entry',
104
+ });
105
+ }
106
+ return answers;
107
+ }
108
+ //# sourceMappingURL=nexus-project-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nexus-project-history.js","sourceRoot":"","sources":["../../src/cloud/nexus-project-history.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nexus-vault-keys.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nexus-vault-keys.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault-keys.ts"],"names":[],"mappings":"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"}
@@ -39,13 +39,13 @@
39
39
  * @task T13100
40
40
  * @epic T12322
41
41
  */
42
- import { nexusProjectKeysSchema, nexusUserKeysSchema } from '@cleocode/contracts';
43
42
  import { DeviceTrust as DeviceTrustSchema, KeyEscrowGrant, PutKeyEscrowResult, } from '@cleocode/contracts/cloud';
43
+ import { nexusProjectKeysSchema, nexusUserKeysSchema } from '@cleocode/contracts/nexus-vault.js';
44
44
  import { z } from 'zod';
45
45
  import { openSealed, randomKey } from './crypto.js';
46
46
  import { Http, NexusError } from './http.js';
47
- import { certifiedSigners, createDeviceGrant, homeStreamKey, masterKeyVerifier, newProjectKey, unwrapProjectKey, wrapProjectKey, } from './keys.js';
48
- import { NexusAccountError, resolveNexusApiUrl } from './nexus-auth.js';
47
+ import { certifiedSigners, createDeviceGrant, homeStreamKey, isSendableWrap, masterKeyVerifier, newProjectKey, unwrapProjectKey, wrapProjectKey, } from './keys.js';
48
+ import { NEXUS_PROJECT_KEY_OWNER_REMEDY, NexusAccountError, resolveNexusApiUrl, } from './nexus-auth.js';
49
49
  import { assertNexusCloudDeviceMode, NEXUS_CLOUD_TIMEOUT_MS, nexusCredentialWarnings, } from './nexus-cloud.js';
50
50
  import { redactNexusDeviceSecrets } from './nexus-device.js';
51
51
  import { ensureNexusDeviceCredential, nexusApiErrorToAccountError } from './nexus-enrol.js';
@@ -387,8 +387,9 @@ function refusedFirstKey(err, projectId) {
387
387
  return keyUnavailable(`project ${projectId} already has a key, but it has not been shared with this account`, 'ask the project owner to share the project key with this account');
388
388
  case 'project-role':
389
389
  // Checked before the server knows whether the project has a key, so an owner may already
390
- // have created one and not shared it with this account.
391
- return keyUnavailable(`this account holds no key for project ${projectId}, and only a project owner can create one`, 'ask a project owner to share the project key with this account, or, if the project has no key yet, to run the first `cleo cloud push`');
390
+ // have created one and not shared it with this account. A device cannot create it for a
391
+ // project its account does not own (cleo-nexus #35), so the remedy names a session (T13101).
392
+ return keyUnavailable(`this account holds no key for project ${projectId}, and only a project owner can create one`, `${NEXUS_PROJECT_KEY_OWNER_REMEDY}, or, if the project already has a key, share it with this account`);
392
393
  default:
393
394
  return null;
394
395
  }
@@ -421,9 +422,14 @@ export async function nexusProjectDataKey(conn, mk, projectId, mint) {
421
422
  if (have !== null || !mint)
422
423
  return have;
423
424
  const pdk = newProjectKey();
425
+ const wrappedProjectKey = wrapProjectKey(mk, pdk, projectId, 1);
426
+ // Never send an empty or padding-only wrap: cleo-nexus #35 refuses it with 400 (T13101).
427
+ if (!isSendableWrap(wrappedProjectKey)) {
428
+ throw keyUnavailable(`the new key of project ${projectId} wrapped to nothing; nothing was sent`);
429
+ }
424
430
  try {
425
431
  await conn.raw('PUT', `${path}/${encodeURIComponent(conn.userId)}`, z.looseObject({}), {
426
- wrappedProjectKey: wrapProjectKey(mk, pdk, projectId, 1),
432
+ wrappedProjectKey,
427
433
  keyVersion: 1,
428
434
  // Cleo Nexus accepts a new key version, the first one included, only as a rotation naming
429
435
  // the current highest version (cleo-nexus T12856). The two fields stay out of the shared
@@ -1 +1 @@
1
- {"version":3,"file":"nexus-vault-keys.js","sourceRoot":"","sources":["../../src/cloud/nexus-vault-keys.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nexus-vault-keys.js","sourceRoot":"","sources":["../../src/cloud/nexus-vault-keys.ts"],"names":[],"mappings":"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"}
@@ -145,11 +145,15 @@ export declare function restoreNexusVault(opts: NexusVaultRestoreOptions): Promi
145
145
  export declare function nexusVaultStatus(opts?: NexusVaultCommandOptions): Promise<CloudVaultStatusResult>;
146
146
  /**
147
147
  * `cleo cloud verify`: compare this store with the cloud and every device's newest snapshot.
148
+ * Local backups are checked by `cleo backup verify`.
148
149
  *
149
- * @param opts - Scope and overrides.
150
- * @returns The verdict and per-table comparison.
150
+ * @param opts - Scope and overrides; `deep` downloads the snapshots again and
151
+ * re-checks their bytes and the journal segments after the head (T13291).
152
+ * @returns The verdict and per-table comparison, with the deep check when asked.
151
153
  */
152
- export declare function verifyNexusVault(opts?: NexusVaultCommandOptions): Promise<CloudVerifyResult>;
154
+ export declare function verifyNexusVault(opts?: NexusVaultCommandOptions & {
155
+ deep?: boolean;
156
+ }): Promise<CloudVerifyResult>;
153
157
  /**
154
158
  * `cleo cloud lease release`: hand the write lease back.
155
159
  *
@@ -1 +1 @@
1
- {"version":3,"file":"nexus-vault.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAMH,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAElB,eAAe,EAEf,sBAAsB,EAEtB,iBAAiB,EAGlB,MAAM,qBAAqB,CAAC;AA+D7B,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,uBAAuB,CAAC;AAI/B,gGAAgG;AAChG,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAMjD;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B1B,CAAC;AAkCX,4CAA4C;AAC5C,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,0FAA0F;IAC1F,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AA6kCD,4CAA4C;AAC5C,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,uHAAuH;IACvH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8FAA8F;IAC9F,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrD;AAyDD,4FAA4F;AAC5F,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAitBlD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,IAAI,GAAE,wBAAwB,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GACxE,OAAO,CAAC,eAAe,CAAC,CAE1B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAE7F;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,wBAA6B,GAClC,OAAO,CAAC,sBAAsB,CAAC,CAEjC;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,wBAA6B,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEhG;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,GAAE,wBAA6B,GAClC,OAAO,CAAC,uBAAuB,CAAC,CAElC"}
1
+ {"version":3,"file":"nexus-vault.d.ts","sourceRoot":"","sources":["../../src/cloud/nexus-vault.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AAMH,OAAO,KAAK,EACV,uBAAuB,EACvB,eAAe,EACf,kBAAkB,EAElB,eAAe,EAEf,sBAAsB,EAGtB,iBAAiB,EAGlB,MAAM,qBAAqB,CAAC;AAoE7B,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,uBAAuB,CAAC;AAI/B,gGAAgG;AAChG,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAMjD;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;CA6B1B,CAAC;AAkCX,4CAA4C;AAC5C,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IACjE,0FAA0F;IAC1F,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AA+kCD,4CAA4C;AAC5C,MAAM,WAAW,wBAAyB,SAAQ,wBAAwB;IACxE,uHAAuH;IACvH,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,0CAA0C;IAC1C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,mEAAmE;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8FAA8F;IAC9F,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACrD;AAyDD,4FAA4F;AAC5F,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAw1BlD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,IAAI,GAAE,wBAAwB,GAAG;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GACxE,OAAO,CAAC,eAAe,CAAC,CAE1B;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAE7F;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,wBAA6B,GAClC,OAAO,CAAC,sBAAsB,CAAC,CAEjC;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,GAAE,wBAAwB,GAAG;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GACvD,OAAO,CAAC,iBAAiB,CAAC,CAE5B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,GAAE,wBAA6B,GAClC,OAAO,CAAC,uBAAuB,CAAC,CAElC"}
@@ -55,8 +55,10 @@ import { execFileSync } from 'node:child_process';
55
55
  import fs from 'node:fs';
56
56
  import os from 'node:os';
57
57
  import path from 'node:path';
58
- import { NEXUS_VAULT_LEASE_ROLE, nexusCloudDevicePageSchema, nexusLeaseAcquireSchema, nexusStreamHeadSchema, SYNC_SCHEMA_VERSION, } from '@cleocode/contracts';
59
58
  import { ListCheckpointsResult, ListLeasesResult, } from '@cleocode/contracts/cloud';
59
+ import { nexusCloudDevicePageSchema } from '@cleocode/contracts/nexus-cloud.js';
60
+ import { NEXUS_VAULT_LEASE_ROLE, nexusLeaseAcquireSchema, nexusStreamHeadSchema, } from '@cleocode/contracts/nexus-vault.js';
61
+ import { SYNC_SCHEMA_VERSION } from '@cleocode/contracts/sync-schema.js';
60
62
  import { readDeclaredProjectIdentity } from '@cleocode/paths';
61
63
  import { extract as tarExtract } from 'tar';
62
64
  import { z } from 'zod';
@@ -65,8 +67,9 @@ import { withLock } from '../store/lock.js';
65
67
  import { exportPortableBundle, globalHomeRules } from '../store/portable-bundle.js';
66
68
  import { importPortableBundle } from '../store/portable-bundle-import.js';
67
69
  import { integrityCheck, PROJECT_SECTION_RULES, scanSection, sha256File, } from '../store/portable-bundle-scan.js';
70
+ import { writeRestoreMarker } from '../store/restore-marker.js';
68
71
  import { FIRST_OPEN_LOCK_SUFFIX } from '../store/sqlite.js';
69
- import { readActiveReplicaId } from '../store/sync/replica.js';
72
+ import { fileIdentity, readActiveReplicaId, rebindAfterVaultRestore, } from '../store/sync/replica.js';
70
73
  import { buildVaultManifest, carryMachineState, compareVaultManifests, emptyVaultTableHash, isVaultAnnotationKey, isVaultForkManifest, sameVaultManifest, VAULT_FILES_KEY, VAULT_FORK_KEY, VAULT_FORMAT_KEY, VAULT_GLOBAL_CONFIG_LOCAL_KEYS, VAULT_MANIFEST_FORMAT_VERSION, vaultDatabaseEntry, vaultDatabaseKey, vaultFileDigest, vaultFilesEntry, vaultForkEntry, vaultFormatEntry, vaultManifestFormat, vaultStripColumns, } from '../store/vault-manifest.js';
71
74
  import { foreignWriterLeases, storeOpenElsewhere } from '../store/writer-lease.js';
72
75
  import { deriveKey } from './crypto.js';
@@ -546,14 +549,16 @@ function compareWithSynced(local, snapshot, git, changes) {
546
549
  }
547
550
  /**
548
551
  * This device's local-only change journal, emptied in every vault snapshot
549
- * (T13042): capture, undo and quarantined images hold values the snapshot
550
- * strips, and a restore takes these tables from the live store anyway.
552
+ * (T13042): capture, undo and quarantined images, and apply intents (T12757),
553
+ * hold values the snapshot strips, and a restore takes these tables from the
554
+ * live store anyway.
551
555
  */
552
556
  const VAULT_CLEARED_JOURNAL_TABLES = [
553
557
  '_sync_capture',
554
558
  '_sync_undo',
555
559
  '_sync_frame',
556
560
  '_sync_quarantine',
561
+ '_sync_apply_intent',
557
562
  ];
558
563
  /**
559
564
  * Export the store the way the vault snapshots it: no secrets, no `strip`
@@ -1237,6 +1242,7 @@ async function restoreNexusVaultImpl(opts) {
1237
1242
  verified: false,
1238
1243
  tables: 0,
1239
1244
  safetyBackup: null,
1245
+ replica: null,
1240
1246
  warnings,
1241
1247
  };
1242
1248
  }
@@ -1302,6 +1308,8 @@ async function restoreNexusVaultImpl(opts) {
1302
1308
  ...(t.scope === 'project' ? { projectRoot: t.storeRoot } : {}),
1303
1309
  outputPath: safetyBackup,
1304
1310
  label: 'cloud-vault-pre-restore',
1311
+ // A local safety copy: it shares nothing (T13250).
1312
+ sharesIdentity: false,
1305
1313
  });
1306
1314
  safety = await safetyInventory(safetyBackup, t);
1307
1315
  rotateSafetyBundles(dir);
@@ -1329,6 +1337,9 @@ async function restoreNexusVaultImpl(opts) {
1329
1337
  : new Map();
1330
1338
  if (t.scope === 'project')
1331
1339
  fs.mkdirSync(t.storeRoot, { recursive: true });
1340
+ // T13258: the restore-in-progress marker, held from the final liveness
1341
+ // check until the placement is done; every store open refuses meanwhile.
1342
+ let releaseMarker = null;
1332
1343
  const place = () => importPortableBundle({
1333
1344
  bundlePath,
1334
1345
  ...(t.scope === 'project' ? { target: t.storeRoot } : {}),
@@ -1389,7 +1400,9 @@ async function restoreNexusVaultImpl(opts) {
1389
1400
  keptUnsynced.push(f.relPath);
1390
1401
  }
1391
1402
  }
1392
- // Checked again under the lock.
1403
+ // Checked again under the lock, with the marker held.
1404
+ fs.mkdirSync(path.dirname(t.dbPath), { recursive: true });
1405
+ releaseMarker = writeRestoreMarker(t.dbPath, 'vault');
1393
1406
  if (hasLocal)
1394
1407
  await assertStoreQuiescent(t);
1395
1408
  // Keep this machine's own state: local-only tables and columns,
@@ -1401,11 +1414,54 @@ async function restoreNexusVaultImpl(opts) {
1401
1414
  })));
1402
1415
  },
1403
1416
  });
1417
+ let replica = null;
1404
1418
  const placeAndPrune = async () => {
1405
- await place();
1406
- // The snapshot's install id never becomes this machine's (T13022).
1407
- if (globalConfig !== null && fs.existsSync(globalConfig)) {
1408
- keepGlobalConfigLocalKeys(globalConfig, ownConfigKeys);
1419
+ // Which file the snapshot replaces: its replica is retired as a vault
1420
+ // restore only if it was bound to that file (T13109 review MED-1).
1421
+ const before = fs.existsSync(t.dbPath) ? fileIdentity(t.dbPath) : null;
1422
+ // T13258: the marker (written in onStaged) is held through the rebind,
1423
+ // so no open can bind the placed file first (T13262).
1424
+ try {
1425
+ await place();
1426
+ // The snapshot's install id never becomes this machine's (T13022).
1427
+ if (globalConfig !== null && fs.existsSync(globalConfig)) {
1428
+ keepGlobalConfigLocalKeys(globalConfig, ownConfigKeys);
1429
+ }
1430
+ // The placed file is a new store instance: its replica is retired and a
1431
+ // new one bound (§1.5; T13109).
1432
+ const placedReplica = await readActiveReplicaId(t.dbPath, t.scope).catch(() => null);
1433
+ try {
1434
+ const rebound = await rebindAfterVaultRestore(t.dbPath, t.scope, before);
1435
+ if (rebound) {
1436
+ replica = {
1437
+ retired: rebound.previousReplicaId,
1438
+ current: rebound.replicaId,
1439
+ reason: rebound.reason,
1440
+ };
1441
+ }
1442
+ }
1443
+ catch (err) {
1444
+ const why = err instanceof Error ? err.message : String(err);
1445
+ // The store's transaction may have committed before the registry write failed.
1446
+ const now = await readActiveReplicaId(t.dbPath, t.scope).catch(() => null);
1447
+ if (placedReplica !== null && now !== null && now !== placedReplica) {
1448
+ replica = { retired: placedReplica, current: now, reason: null };
1449
+ warnings.push({
1450
+ code: 'W_NEXUS_VAULT_REBIND',
1451
+ message: `this store's replica ${placedReplica} was retired and ${now} bound, but recording it in this device's replica registry failed (${why}), so it may not be a retire candidate`,
1452
+ });
1453
+ }
1454
+ else {
1455
+ warnings.push({
1456
+ code: 'W_NEXUS_VAULT_REBIND',
1457
+ message: `restored, but this store's replica was not rebound (${why}); ${t.scope === 'global' ? 'the next global push' : 'the next `cleo project link`'} rebinds it as a copied file`,
1458
+ });
1459
+ }
1460
+ }
1461
+ }
1462
+ finally {
1463
+ releaseMarker?.();
1464
+ releaseMarker = null;
1409
1465
  }
1410
1466
  // Deletions propagate: what the snapshot no longer lists goes (T13004);
1411
1467
  // without a synced snapshot, only --force removes anything (T13020).
@@ -1461,6 +1517,7 @@ async function restoreNexusVaultImpl(opts) {
1461
1517
  verified: true,
1462
1518
  tables,
1463
1519
  safetyBackup,
1520
+ replica,
1464
1521
  warnings,
1465
1522
  };
1466
1523
  }
@@ -1544,6 +1601,72 @@ function unsyncedForks(trusted, headCheckpointId, syncedCheckpointId, deviceId)
1544
1601
  }
1545
1602
  return out;
1546
1603
  }
1604
+ /**
1605
+ * What the client refused in bytes the server sent (T13291): every client-side
1606
+ * refusal carries `details.reason`. A network or HTTP failure is no finding
1607
+ * about the cloud copy, so it returns `null` and the caller rethrows it.
1608
+ */
1609
+ function refusalOf(err) {
1610
+ return err instanceof NexusError && typeof err.details?.['reason'] === 'string'
1611
+ ? err.serverMessage
1612
+ : null;
1613
+ }
1614
+ /**
1615
+ * `cleo cloud verify --deep` (T13291): download the head snapshot and each
1616
+ * device's newest snapshot again, checking size, sha256 and decryption, then
1617
+ * re-hash, signature-check and decrypt every journal segment after the head.
1618
+ * The segments a snapshot covers are what its bundle captured, so the tail
1619
+ * after the head is what a pull would still replay.
1620
+ */
1621
+ async function deepVerify(journal, signers, headCp, snapshots) {
1622
+ const picked = new Map();
1623
+ if (headCp)
1624
+ picked.set(headCp.checkpointId, headCp);
1625
+ for (const cp of snapshots)
1626
+ if (!picked.has(cp.checkpointId))
1627
+ picked.set(cp.checkpointId, cp);
1628
+ const checked = [];
1629
+ for (const cp of picked.values()) {
1630
+ let problem = null;
1631
+ try {
1632
+ await journal.restoreCheckpoint(cp.checkpointId, signers);
1633
+ }
1634
+ catch (err) {
1635
+ problem = refusalOf(err);
1636
+ if (problem === null)
1637
+ throw err;
1638
+ }
1639
+ checked.push({
1640
+ checkpointId: cp.checkpointId,
1641
+ deviceId: cp.deviceId,
1642
+ sizeBytes: cp.sizeBytes,
1643
+ ok: problem === null,
1644
+ problem,
1645
+ });
1646
+ }
1647
+ let cursor = headCp ? cursorFromCheckpoint(headCp) : initialPullCursor();
1648
+ const from = cursor.after;
1649
+ let count = 0;
1650
+ let problem = null;
1651
+ try {
1652
+ for (;;) {
1653
+ const page = await journal.pull(cursor, signers);
1654
+ count += page.segments.length;
1655
+ cursor = page.cursor;
1656
+ if (page.segments.length === 0 || cursor.after >= page.head)
1657
+ break;
1658
+ }
1659
+ }
1660
+ catch (err) {
1661
+ problem = refusalOf(err);
1662
+ if (problem === null)
1663
+ throw err;
1664
+ }
1665
+ return {
1666
+ snapshots: checked,
1667
+ segments: { from, checked: count, ok: problem === null, problem },
1668
+ };
1669
+ }
1547
1670
  /** `cleo cloud verify`: local integrity, local vs head per table, and every device's newest snapshot vs the head. */
1548
1671
  async function verifyNexusVaultImpl(opts = {}) {
1549
1672
  const conn = await connectNexusVault(opts);
@@ -1589,6 +1712,25 @@ async function verifyNexusVaultImpl(opts = {}) {
1589
1712
  for (const cp of trusted)
1590
1713
  if (!newest.has(cp.deviceId))
1591
1714
  newest.set(cp.deviceId, cp);
1715
+ const deep = opts.deep
1716
+ ? await deepVerify(journal, key.signers, headCp, [...newest.values()])
1717
+ : undefined;
1718
+ // The head's bundle or the tail after it failing the byte check decides the
1719
+ // verdict; another device's older snapshot failing it is reported (T13291).
1720
+ const deepFailure = deep
1721
+ ? (deep.snapshots.find((x) => x.checkpointId === headCp?.checkpointId && !x.ok)?.problem ??
1722
+ deep.segments.problem)
1723
+ : null;
1724
+ if (deepFailure !== null)
1725
+ verdict = 'untrusted';
1726
+ for (const x of deep?.snapshots ?? []) {
1727
+ if (!x.ok && x.checkpointId !== headCp?.checkpointId) {
1728
+ warnings.push({
1729
+ code: 'W_NEXUS_VAULT_BLOB_INTEGRITY',
1730
+ message: `snapshot ${x.checkpointId} by ${names.get(x.deviceId) ?? x.deviceId} failed the deep check: ${x.problem}`,
1731
+ });
1732
+ }
1733
+ }
1592
1734
  // Only a fork this machine has not synced past is news to it (T12976). The
1593
1735
  // label is on the checkpoint, so it outlives the lease (T13007); a forced
1594
1736
  // lease whose push has not landed yet is reported from the lease.
@@ -1618,25 +1760,27 @@ async function verifyNexusVaultImpl(opts = {}) {
1618
1760
  if (headFormat)
1619
1761
  warnings.push(headFormat);
1620
1762
  const journalHead = isJournalSnapshot(headCp);
1621
- const remedy = verdict === 'untrusted'
1622
- ? `the newest snapshot ${head.headCheckpointId} is not signed by a device this account trusts: do not pull it; see which device pushed it with \`cleo cloud vault\` and \`cleo cloud activity\`, and revoke that device if you do not recognise it`
1623
- : headCp && vaultManifestFormat(headCp.manifest, hashKeyOf(t.dataKey)) === 'unknown'
1624
- ? `the newest snapshot records a vault manifest format this CLEO does not recognise (this CLEO hashes format ${VAULT_MANIFEST_FORMAT_VERSION}): if a newer CLEO pushed it, upgrade CLEO on this machine, then verify again`
1625
- : verdict === 'behind'
1626
- ? 'run `cleo cloud pull` to bring this machine to the newest snapshot'
1627
- : verdict === 'ahead'
1628
- ? journalHead
1629
- ? `this machine changed since the newest snapshot, which is checkpoint/v3 (the change journal writes this stream): ${JOURNAL_STREAM_REMEDY}`
1630
- : 'run `cleo cloud push` to back up the local changes'
1631
- : verdict === 'diverged'
1763
+ const remedy = deepFailure !== null
1764
+ ? `the cloud copy failed the deep check (${deepFailure}): do not pull it; see which device pushed the newest snapshot with \`cleo cloud vault\` and \`cleo cloud activity\`, then push a fresh snapshot from a machine whose store passes \`cleo cloud verify\``
1765
+ : verdict === 'untrusted'
1766
+ ? `the newest snapshot ${head.headCheckpointId} is not signed by a device this account trusts: do not pull it; see which device pushed it with \`cleo cloud vault\` and \`cleo cloud activity\`, and revoke that device if you do not recognise it`
1767
+ : headCp && vaultManifestFormat(headCp.manifest, hashKeyOf(t.dataKey)) === 'unknown'
1768
+ ? `the newest snapshot records a vault manifest format this CLEO does not recognise (this CLEO hashes format ${VAULT_MANIFEST_FORMAT_VERSION}): if a newer CLEO pushed it, upgrade CLEO on this machine, then verify again`
1769
+ : verdict === 'behind'
1770
+ ? 'run `cleo cloud pull` to bring this machine to the newest snapshot'
1771
+ : verdict === 'ahead'
1632
1772
  ? journalHead
1633
- ? `both sides changed, and the newest snapshot is checkpoint/v3 (the change journal writes this stream): ${JOURNAL_STREAM_REMEDY}; or \`cleo cloud pull --force\` to take the cloud (a safety backup is taken first)`
1634
- : 'both sides changed: run `cleo cloud push --force` to keep this machine (a labelled fork), or `cleo cloud pull --force` to take the cloud (a safety backup is taken first)'
1635
- : verdict === 'empty'
1636
- ? 'run `cleo cloud push` to make the first snapshot'
1637
- : !localIntegrity
1638
- ? 'the local store failed its integrity check: run `cleo doctor` and `cleo cloud restore`'
1639
- : null;
1773
+ ? `this machine changed since the newest snapshot, which is checkpoint/v3 (the change journal writes this stream): ${JOURNAL_STREAM_REMEDY}`
1774
+ : 'run `cleo cloud push` to back up the local changes'
1775
+ : verdict === 'diverged'
1776
+ ? journalHead
1777
+ ? `both sides changed, and the newest snapshot is checkpoint/v3 (the change journal writes this stream): ${JOURNAL_STREAM_REMEDY}; or \`cleo cloud pull --force\` to take the cloud (a safety backup is taken first)`
1778
+ : 'both sides changed: run `cleo cloud push --force` to keep this machine (a labelled fork), or `cleo cloud pull --force` to take the cloud (a safety backup is taken first)'
1779
+ : verdict === 'empty'
1780
+ ? 'run `cleo cloud push` to make the first snapshot'
1781
+ : !localIntegrity
1782
+ ? 'the local store failed its integrity check: run `cleo doctor` and `cleo cloud restore`'
1783
+ : null;
1640
1784
  return {
1641
1785
  apiUrl: conn.apiUrl,
1642
1786
  scope: t.scope,
@@ -1654,6 +1798,7 @@ async function verifyNexusVaultImpl(opts = {}) {
1654
1798
  createdAt: cp.createdAt ?? null,
1655
1799
  matchesHead: headCp ? sameVaultManifest(cp.manifest, headCp.manifest) : false,
1656
1800
  })),
1801
+ ...(deep ? { deep } : {}),
1657
1802
  warnings: [...warnings, ...conn.state.drainWarnings()],
1658
1803
  };
1659
1804
  }
@@ -1726,9 +1871,11 @@ export function nexusVaultStatus(opts = {}) {
1726
1871
  }
1727
1872
  /**
1728
1873
  * `cleo cloud verify`: compare this store with the cloud and every device's newest snapshot.
1874
+ * Local backups are checked by `cleo backup verify`.
1729
1875
  *
1730
- * @param opts - Scope and overrides.
1731
- * @returns The verdict and per-table comparison.
1876
+ * @param opts - Scope and overrides; `deep` downloads the snapshots again and
1877
+ * re-checks their bytes and the journal segments after the head (T13291).
1878
+ * @returns The verdict and per-table comparison, with the deep check when asked.
1732
1879
  */
1733
1880
  export function verifyNexusVault(opts = {}) {
1734
1881
  return mapped(() => verifyNexusVaultImpl(opts));