@claudexor/daemon 3.24.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (467) hide show
  1. package/dist/account-resets.d.ts +39 -0
  2. package/dist/account-resets.d.ts.map +1 -0
  3. package/dist/account-resets.js +174 -0
  4. package/dist/account-resets.js.map +1 -0
  5. package/dist/client.d.ts +25 -6
  6. package/dist/client.d.ts.map +1 -1
  7. package/dist/client.js +55 -51
  8. package/dist/client.js.map +1 -1
  9. package/dist/command-authority.d.ts +11 -8
  10. package/dist/command-authority.d.ts.map +1 -1
  11. package/dist/command-authority.js +5 -6
  12. package/dist/command-authority.js.map +1 -1
  13. package/dist/command-list-projection.d.ts +0 -1
  14. package/dist/command-list-projection.d.ts.map +1 -1
  15. package/dist/command-list-projection.js +0 -6
  16. package/dist/command-list-projection.js.map +1 -1
  17. package/dist/command-list-select.d.ts +0 -4
  18. package/dist/command-list-select.d.ts.map +1 -1
  19. package/dist/command-list-select.js +1 -115
  20. package/dist/command-list-select.js.map +1 -1
  21. package/dist/command-retention.d.ts +7 -19
  22. package/dist/command-retention.d.ts.map +1 -1
  23. package/dist/command-retention.js +1 -117
  24. package/dist/command-retention.js.map +1 -1
  25. package/dist/command-rpc.d.ts +4 -1
  26. package/dist/command-rpc.d.ts.map +1 -1
  27. package/dist/command-rpc.js +12 -1
  28. package/dist/command-rpc.js.map +1 -1
  29. package/dist/command-store.d.ts +15 -52
  30. package/dist/command-store.d.ts.map +1 -1
  31. package/dist/command-store.js +5 -493
  32. package/dist/command-store.js.map +1 -1
  33. package/dist/daemon-health.d.ts +56 -8
  34. package/dist/daemon-health.d.ts.map +1 -1
  35. package/dist/daemon-health.js +44 -9
  36. package/dist/daemon-health.js.map +1 -1
  37. package/dist/daemon-local-client.d.ts +28 -0
  38. package/dist/daemon-local-client.d.ts.map +1 -0
  39. package/dist/daemon-local-client.js +55 -0
  40. package/dist/daemon-local-client.js.map +1 -0
  41. package/dist/delivery-command.d.ts +4 -4
  42. package/dist/delivery-command.d.ts.map +1 -1
  43. package/dist/delivery-command.js.map +1 -1
  44. package/dist/index.d.ts +24 -8
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +26 -8
  47. package/dist/index.js.map +1 -1
  48. package/dist/interactions.d.ts +12 -28
  49. package/dist/interactions.d.ts.map +1 -1
  50. package/dist/interactions.js +22 -123
  51. package/dist/interactions.js.map +1 -1
  52. package/dist/job-admission.d.ts +26 -0
  53. package/dist/job-admission.d.ts.map +1 -0
  54. package/dist/job-admission.js +67 -0
  55. package/dist/job-admission.js.map +1 -0
  56. package/dist/job-record.d.ts.map +1 -1
  57. package/dist/job-record.js +5 -1
  58. package/dist/job-record.js.map +1 -1
  59. package/dist/journal-fold-policy.d.ts +1 -1
  60. package/dist/journal-fold-policy.d.ts.map +1 -1
  61. package/dist/journal-fold-policy.js +26 -2
  62. package/dist/journal-fold-policy.js.map +1 -1
  63. package/dist/journal-recovery-files.d.ts +1 -41
  64. package/dist/journal-recovery-files.d.ts.map +1 -1
  65. package/dist/journal-recovery-files.js +2 -340
  66. package/dist/journal-recovery-files.js.map +1 -1
  67. package/dist/loop-facts.d.ts +28 -0
  68. package/dist/loop-facts.d.ts.map +1 -0
  69. package/dist/loop-facts.js +97 -0
  70. package/dist/loop-facts.js.map +1 -0
  71. package/dist/memory-facts.d.ts +2 -0
  72. package/dist/memory-facts.d.ts.map +1 -1
  73. package/dist/memory-facts.js +5 -0
  74. package/dist/memory-facts.js.map +1 -1
  75. package/dist/model-operations.d.ts +11 -4
  76. package/dist/model-operations.d.ts.map +1 -1
  77. package/dist/model-operations.js +68 -38
  78. package/dist/model-operations.js.map +1 -1
  79. package/dist/operator-decisions.d.ts +15 -25
  80. package/dist/operator-decisions.d.ts.map +1 -1
  81. package/dist/operator-decisions.js +5 -84
  82. package/dist/operator-decisions.js.map +1 -1
  83. package/dist/projects.d.ts +42 -41
  84. package/dist/projects.d.ts.map +1 -1
  85. package/dist/projects.js +46 -184
  86. package/dist/projects.js.map +1 -1
  87. package/dist/quota-poll-lanes.d.ts +5 -3
  88. package/dist/quota-poll-lanes.d.ts.map +1 -1
  89. package/dist/quota-poll-lanes.js +16 -6
  90. package/dist/quota-poll-lanes.js.map +1 -1
  91. package/dist/quota-refresh-batches.d.ts +26 -0
  92. package/dist/quota-refresh-batches.d.ts.map +1 -0
  93. package/dist/quota-refresh-batches.js +83 -0
  94. package/dist/quota-refresh-batches.js.map +1 -0
  95. package/dist/quota-registry-replay.d.ts +19 -0
  96. package/dist/quota-registry-replay.d.ts.map +1 -0
  97. package/dist/quota-registry-replay.js +106 -0
  98. package/dist/quota-registry-replay.js.map +1 -0
  99. package/dist/quota-registry-support.d.ts +4 -1
  100. package/dist/quota-registry-support.d.ts.map +1 -1
  101. package/dist/quota-registry-support.js +15 -2
  102. package/dist/quota-registry-support.js.map +1 -1
  103. package/dist/quota-registry.d.ts +381 -7
  104. package/dist/quota-registry.d.ts.map +1 -1
  105. package/dist/quota-registry.js +111 -149
  106. package/dist/quota-registry.js.map +1 -1
  107. package/dist/quota-resources.d.ts +105 -0
  108. package/dist/quota-resources.d.ts.map +1 -0
  109. package/dist/quota-resources.js +153 -0
  110. package/dist/quota-resources.js.map +1 -0
  111. package/dist/runless-turn-recovery.d.ts +2 -9
  112. package/dist/runless-turn-recovery.d.ts.map +1 -1
  113. package/dist/runless-turn-recovery.js +0 -14
  114. package/dist/runless-turn-recovery.js.map +1 -1
  115. package/dist/server.d.ts +23 -22
  116. package/dist/server.d.ts.map +1 -1
  117. package/dist/server.js +74 -84
  118. package/dist/server.js.map +1 -1
  119. package/dist/store/blob-files.d.ts +71 -0
  120. package/dist/store/blob-files.d.ts.map +1 -0
  121. package/dist/store/blob-files.js +160 -0
  122. package/dist/store/blob-files.js.map +1 -0
  123. package/dist/store/command-prune.d.ts +37 -0
  124. package/dist/store/command-prune.d.ts.map +1 -0
  125. package/dist/store/command-prune.js +123 -0
  126. package/dist/store/command-prune.js.map +1 -0
  127. package/dist/store/command-queries.d.ts +41 -0
  128. package/dist/store/command-queries.d.ts.map +1 -0
  129. package/dist/store/command-queries.js +186 -0
  130. package/dist/store/command-queries.js.map +1 -0
  131. package/dist/store/command-rows.d.ts +66 -0
  132. package/dist/store/command-rows.d.ts.map +1 -0
  133. package/dist/store/command-rows.js +141 -0
  134. package/dist/store/command-rows.js.map +1 -0
  135. package/dist/store/commands.d.ts +49 -0
  136. package/dist/store/commands.d.ts.map +1 -0
  137. package/dist/store/commands.js +247 -0
  138. package/dist/store/commands.js.map +1 -0
  139. package/dist/store/cursors.d.ts +33 -0
  140. package/dist/store/cursors.d.ts.map +1 -0
  141. package/dist/store/cursors.js +82 -0
  142. package/dist/store/cursors.js.map +1 -0
  143. package/dist/store/engine-recovery-files.d.ts +14 -0
  144. package/dist/store/engine-recovery-files.d.ts.map +1 -0
  145. package/dist/store/engine-recovery-files.js +53 -0
  146. package/dist/store/engine-recovery-files.js.map +1 -0
  147. package/dist/store/engine-state-recovery.d.ts +71 -0
  148. package/dist/store/engine-state-recovery.d.ts.map +1 -0
  149. package/dist/store/engine-state-recovery.js +318 -0
  150. package/dist/store/engine-state-recovery.js.map +1 -0
  151. package/dist/store/errors.d.ts +80 -0
  152. package/dist/store/errors.d.ts.map +1 -0
  153. package/dist/store/errors.js +130 -0
  154. package/dist/store/errors.js.map +1 -0
  155. package/dist/store/event-store.d.ts +52 -0
  156. package/dist/store/event-store.d.ts.map +1 -0
  157. package/dist/store/event-store.js +117 -0
  158. package/dist/store/event-store.js.map +1 -0
  159. package/dist/store/external-files.d.ts +40 -0
  160. package/dist/store/external-files.d.ts.map +1 -0
  161. package/dist/store/external-files.js +90 -0
  162. package/dist/store/external-files.js.map +1 -0
  163. package/dist/store/flusher-protocol.d.ts +82 -0
  164. package/dist/store/flusher-protocol.d.ts.map +1 -0
  165. package/dist/store/flusher-protocol.js +23 -0
  166. package/dist/store/flusher-protocol.js.map +1 -0
  167. package/dist/store/flusher-worker.d.ts +24 -0
  168. package/dist/store/flusher-worker.d.ts.map +1 -0
  169. package/dist/store/flusher-worker.js +185 -0
  170. package/dist/store/flusher-worker.js.map +1 -0
  171. package/dist/store/flusher.d.ts +87 -0
  172. package/dist/store/flusher.d.ts.map +1 -0
  173. package/dist/store/flusher.js +264 -0
  174. package/dist/store/flusher.js.map +1 -0
  175. package/dist/store/generations.d.ts +43 -0
  176. package/dist/store/generations.d.ts.map +1 -0
  177. package/dist/store/generations.js +143 -0
  178. package/dist/store/generations.js.map +1 -0
  179. package/dist/store/idempotency.d.ts +25 -0
  180. package/dist/store/idempotency.d.ts.map +1 -0
  181. package/dist/store/idempotency.js +53 -0
  182. package/dist/store/idempotency.js.map +1 -0
  183. package/dist/store/import-context.d.ts +22 -0
  184. package/dist/store/import-context.d.ts.map +1 -0
  185. package/dist/store/import-context.js +87 -0
  186. package/dist/store/import-context.js.map +1 -0
  187. package/dist/store/import-discovery.d.ts +6 -0
  188. package/dist/store/import-discovery.d.ts.map +1 -0
  189. package/dist/store/import-discovery.js +66 -0
  190. package/dist/store/import-discovery.js.map +1 -0
  191. package/dist/store/import-records.d.ts +6 -0
  192. package/dist/store/import-records.d.ts.map +1 -0
  193. package/dist/store/import-records.js +191 -0
  194. package/dist/store/import-records.js.map +1 -0
  195. package/dist/store/import-resources.d.ts +14 -0
  196. package/dist/store/import-resources.d.ts.map +1 -0
  197. package/dist/store/import-resources.js +197 -0
  198. package/dist/store/import-resources.js.map +1 -0
  199. package/dist/store/import-source.d.ts +24 -0
  200. package/dist/store/import-source.d.ts.map +1 -0
  201. package/dist/store/import-source.js +65 -0
  202. package/dist/store/import-source.js.map +1 -0
  203. package/dist/store/import-verify.d.ts +6 -0
  204. package/dist/store/import-verify.d.ts.map +1 -0
  205. package/dist/store/import-verify.js +97 -0
  206. package/dist/store/import-verify.js.map +1 -0
  207. package/dist/store/import-worker.d.ts +18 -0
  208. package/dist/store/import-worker.d.ts.map +1 -0
  209. package/dist/store/import-worker.js +69 -0
  210. package/dist/store/import-worker.js.map +1 -0
  211. package/dist/store/importer.d.ts +42 -0
  212. package/dist/store/importer.d.ts.map +1 -0
  213. package/dist/store/importer.js +239 -0
  214. package/dist/store/importer.js.map +1 -0
  215. package/dist/store/interactions.d.ts +22 -0
  216. package/dist/store/interactions.d.ts.map +1 -0
  217. package/dist/store/interactions.js +82 -0
  218. package/dist/store/interactions.js.map +1 -0
  219. package/dist/store/legacy-journal/frame-codec.d.ts +94 -0
  220. package/dist/store/legacy-journal/frame-codec.d.ts.map +1 -0
  221. package/dist/store/legacy-journal/frame-codec.js +352 -0
  222. package/dist/store/legacy-journal/frame-codec.js.map +1 -0
  223. package/dist/store/legacy-journal/frame-reader.d.ts +30 -0
  224. package/dist/store/legacy-journal/frame-reader.d.ts.map +1 -0
  225. package/dist/store/legacy-journal/frame-reader.js +97 -0
  226. package/dist/store/legacy-journal/frame-reader.js.map +1 -0
  227. package/dist/store/legacy-journal/journal-fold.d.ts +47 -0
  228. package/dist/store/legacy-journal/journal-fold.d.ts.map +1 -0
  229. package/dist/store/legacy-journal/journal-fold.js +81 -0
  230. package/dist/store/legacy-journal/journal-fold.js.map +1 -0
  231. package/dist/store/legacy-journal/journal-partition.d.ts +2 -0
  232. package/dist/store/legacy-journal/journal-partition.d.ts.map +1 -0
  233. package/dist/store/legacy-journal/journal-partition.js +10 -0
  234. package/dist/store/legacy-journal/journal-partition.js.map +1 -0
  235. package/dist/store/legacy-journal/read-only-preparation.d.ts +48 -0
  236. package/dist/store/legacy-journal/read-only-preparation.d.ts.map +1 -0
  237. package/dist/store/legacy-journal/read-only-preparation.js +430 -0
  238. package/dist/store/legacy-journal/read-only-preparation.js.map +1 -0
  239. package/dist/store/maintenance-worker.d.ts +5 -0
  240. package/dist/store/maintenance-worker.d.ts.map +1 -0
  241. package/dist/store/maintenance-worker.js +175 -0
  242. package/dist/store/maintenance-worker.js.map +1 -0
  243. package/dist/store/maintenance.d.ts +124 -0
  244. package/dist/store/maintenance.d.ts.map +1 -0
  245. package/dist/store/maintenance.js +197 -0
  246. package/dist/store/maintenance.js.map +1 -0
  247. package/dist/store/mutation.d.ts +34 -0
  248. package/dist/store/mutation.d.ts.map +1 -0
  249. package/dist/store/mutation.js +85 -0
  250. package/dist/store/mutation.js.map +1 -0
  251. package/dist/store/obligations.d.ts +101 -0
  252. package/dist/store/obligations.d.ts.map +1 -0
  253. package/dist/store/obligations.js +226 -0
  254. package/dist/store/obligations.js.map +1 -0
  255. package/dist/store/operator-decisions.d.ts +23 -0
  256. package/dist/store/operator-decisions.d.ts.map +1 -0
  257. package/dist/store/operator-decisions.js +68 -0
  258. package/dist/store/operator-decisions.js.map +1 -0
  259. package/dist/store/owner-generations.d.ts +33 -0
  260. package/dist/store/owner-generations.d.ts.map +1 -0
  261. package/dist/store/owner-generations.js +63 -0
  262. package/dist/store/owner-generations.js.map +1 -0
  263. package/dist/store/partitions.d.ts +37 -0
  264. package/dist/store/partitions.d.ts.map +1 -0
  265. package/dist/store/partitions.js +68 -0
  266. package/dist/store/partitions.js.map +1 -0
  267. package/dist/store/pragmas.d.ts +32 -0
  268. package/dist/store/pragmas.d.ts.map +1 -0
  269. package/dist/store/pragmas.js +65 -0
  270. package/dist/store/pragmas.js.map +1 -0
  271. package/dist/store/project-router.d.ts +325 -0
  272. package/dist/store/project-router.d.ts.map +1 -0
  273. package/dist/store/project-router.js +298 -0
  274. package/dist/store/project-router.js.map +1 -0
  275. package/dist/store/projects.d.ts +36 -0
  276. package/dist/store/projects.d.ts.map +1 -0
  277. package/dist/store/projects.js +238 -0
  278. package/dist/store/projects.js.map +1 -0
  279. package/dist/store/publish-blob.d.ts +20 -0
  280. package/dist/store/publish-blob.d.ts.map +1 -0
  281. package/dist/store/publish-blob.js +158 -0
  282. package/dist/store/publish-blob.js.map +1 -0
  283. package/dist/store/purge-files.d.ts +30 -0
  284. package/dist/store/purge-files.d.ts.map +1 -0
  285. package/dist/store/purge-files.js +79 -0
  286. package/dist/store/purge-files.js.map +1 -0
  287. package/dist/store/resource-rows.d.ts +40 -0
  288. package/dist/store/resource-rows.d.ts.map +1 -0
  289. package/dist/store/resource-rows.js +103 -0
  290. package/dist/store/resource-rows.js.map +1 -0
  291. package/dist/store/resources.d.ts +67 -0
  292. package/dist/store/resources.d.ts.map +1 -0
  293. package/dist/store/resources.js +147 -0
  294. package/dist/store/resources.js.map +1 -0
  295. package/dist/store/retention.d.ts +91 -0
  296. package/dist/store/retention.d.ts.map +1 -0
  297. package/dist/store/retention.js +169 -0
  298. package/dist/store/retention.js.map +1 -0
  299. package/dist/store/run-events.d.ts +14 -0
  300. package/dist/store/run-events.d.ts.map +1 -0
  301. package/dist/store/run-events.js +35 -0
  302. package/dist/store/run-events.js.map +1 -0
  303. package/dist/store/runtime.d.ts +24 -0
  304. package/dist/store/runtime.d.ts.map +1 -0
  305. package/dist/store/runtime.js +67 -0
  306. package/dist/store/runtime.js.map +1 -0
  307. package/dist/store/schema.d.ts +33 -0
  308. package/dist/store/schema.d.ts.map +1 -0
  309. package/dist/store/schema.js +187 -0
  310. package/dist/store/schema.js.map +1 -0
  311. package/dist/store/setup-bindings.d.ts +20 -0
  312. package/dist/store/setup-bindings.d.ts.map +1 -0
  313. package/dist/store/setup-bindings.js +52 -0
  314. package/dist/store/setup-bindings.js.map +1 -0
  315. package/dist/store/sql-command-router.d.ts +79 -0
  316. package/dist/store/sql-command-router.d.ts.map +1 -0
  317. package/dist/store/sql-command-router.js +92 -0
  318. package/dist/store/sql-command-router.js.map +1 -0
  319. package/dist/store/sql-daemon-services.d.ts +61 -0
  320. package/dist/store/sql-daemon-services.d.ts.map +1 -0
  321. package/dist/store/sql-daemon-services.js +124 -0
  322. package/dist/store/sql-daemon-services.js.map +1 -0
  323. package/dist/store/sql-recovery-export.d.ts +8 -0
  324. package/dist/store/sql-recovery-export.d.ts.map +1 -0
  325. package/dist/store/sql-recovery-export.js +110 -0
  326. package/dist/store/sql-recovery-export.js.map +1 -0
  327. package/dist/store/sql-recovery-inspection.d.ts +22 -0
  328. package/dist/store/sql-recovery-inspection.d.ts.map +1 -0
  329. package/dist/store/sql-recovery-inspection.js +88 -0
  330. package/dist/store/sql-recovery-inspection.js.map +1 -0
  331. package/dist/store/sql-recovery.d.ts +69 -0
  332. package/dist/store/sql-recovery.d.ts.map +1 -0
  333. package/dist/store/sql-recovery.js +169 -0
  334. package/dist/store/sql-recovery.js.map +1 -0
  335. package/dist/store/sql-validation.d.ts +9 -0
  336. package/dist/store/sql-validation.d.ts.map +1 -0
  337. package/dist/store/sql-validation.js +103 -0
  338. package/dist/store/sql-validation.js.map +1 -0
  339. package/dist/store/statement-observer.d.ts +7 -0
  340. package/dist/store/statement-observer.d.ts.map +1 -0
  341. package/dist/store/statement-observer.js +44 -0
  342. package/dist/store/statement-observer.js.map +1 -0
  343. package/dist/store/store.d.ts +110 -0
  344. package/dist/store/store.d.ts.map +1 -0
  345. package/dist/store/store.js +296 -0
  346. package/dist/store/store.js.map +1 -0
  347. package/dist/store/terminal-files.d.ts +21 -0
  348. package/dist/store/terminal-files.d.ts.map +1 -0
  349. package/dist/store/terminal-files.js +115 -0
  350. package/dist/store/terminal-files.js.map +1 -0
  351. package/dist/store/thread-replay.d.ts +12 -0
  352. package/dist/store/thread-replay.d.ts.map +1 -0
  353. package/dist/store/thread-replay.js +49 -0
  354. package/dist/store/thread-replay.js.map +1 -0
  355. package/dist/store/thread-rows.d.ts +25 -0
  356. package/dist/store/thread-rows.d.ts.map +1 -0
  357. package/dist/store/thread-rows.js +141 -0
  358. package/dist/store/thread-rows.js.map +1 -0
  359. package/dist/store/threads.d.ts +105 -0
  360. package/dist/store/threads.d.ts.map +1 -0
  361. package/dist/store/threads.js +423 -0
  362. package/dist/store/threads.js.map +1 -0
  363. package/dist/store/upload-binding-retention.d.ts +26 -0
  364. package/dist/store/upload-binding-retention.d.ts.map +1 -0
  365. package/dist/store/upload-binding-retention.js +142 -0
  366. package/dist/store/upload-binding-retention.js.map +1 -0
  367. package/dist/store/uploads.d.ts +30 -0
  368. package/dist/store/uploads.d.ts.map +1 -0
  369. package/dist/store/uploads.js +238 -0
  370. package/dist/store/uploads.js.map +1 -0
  371. package/dist/store-contracts.d.ts +181 -0
  372. package/dist/store-contracts.d.ts.map +1 -0
  373. package/dist/store-contracts.js +2 -0
  374. package/dist/store-contracts.js.map +1 -0
  375. package/dist/terminal-authority.d.ts +9 -0
  376. package/dist/terminal-authority.d.ts.map +1 -1
  377. package/dist/terminal-authority.js +103 -1
  378. package/dist/terminal-authority.js.map +1 -1
  379. package/dist/thread-lane-checkpoints.d.ts +0 -2
  380. package/dist/thread-lane-checkpoints.d.ts.map +1 -1
  381. package/dist/thread-lane-checkpoints.js +0 -4
  382. package/dist/thread-lane-checkpoints.js.map +1 -1
  383. package/dist/thread-store-support.d.ts +1 -27
  384. package/dist/thread-store-support.d.ts.map +1 -1
  385. package/dist/thread-store-support.js +0 -63
  386. package/dist/thread-store-support.js.map +1 -1
  387. package/dist/threads.d.ts +1 -113
  388. package/dist/threads.d.ts.map +1 -1
  389. package/dist/threads.js +1 -379
  390. package/dist/threads.js.map +1 -1
  391. package/package.json +9 -7
  392. package/dist/command-activity.d.ts +0 -14
  393. package/dist/command-activity.d.ts.map +0 -1
  394. package/dist/command-activity.js +0 -16
  395. package/dist/command-activity.js.map +0 -1
  396. package/dist/journal-events.d.ts +0 -4
  397. package/dist/journal-events.d.ts.map +0 -1
  398. package/dist/journal-events.js +0 -23
  399. package/dist/journal-events.js.map +0 -1
  400. package/dist/journal-maintenance.d.ts +0 -50
  401. package/dist/journal-maintenance.d.ts.map +0 -1
  402. package/dist/journal-maintenance.js +0 -162
  403. package/dist/journal-maintenance.js.map +0 -1
  404. package/dist/journal-manager-journal.d.ts +0 -18
  405. package/dist/journal-manager-journal.d.ts.map +0 -1
  406. package/dist/journal-manager-journal.js +0 -25
  407. package/dist/journal-manager-journal.js.map +0 -1
  408. package/dist/journal-manager-lifecycle.d.ts +0 -11
  409. package/dist/journal-manager-lifecycle.d.ts.map +0 -1
  410. package/dist/journal-manager-lifecycle.js +0 -2
  411. package/dist/journal-manager-lifecycle.js.map +0 -1
  412. package/dist/journal-manager.d.ts +0 -99
  413. package/dist/journal-manager.d.ts.map +0 -1
  414. package/dist/journal-manager.js +0 -559
  415. package/dist/journal-manager.js.map +0 -1
  416. package/dist/journal-prepared-operation.d.ts +0 -53
  417. package/dist/journal-prepared-operation.d.ts.map +0 -1
  418. package/dist/journal-prepared-operation.js +0 -158
  419. package/dist/journal-prepared-operation.js.map +0 -1
  420. package/dist/journal-projection-slot.d.ts +0 -28
  421. package/dist/journal-projection-slot.d.ts.map +0 -1
  422. package/dist/journal-projection-slot.js +0 -71
  423. package/dist/journal-projection-slot.js.map +0 -1
  424. package/dist/journal-projection.d.ts +0 -13
  425. package/dist/journal-projection.d.ts.map +0 -1
  426. package/dist/journal-projection.js +0 -2
  427. package/dist/journal-projection.js.map +0 -1
  428. package/dist/partition-accounts.d.ts +0 -27
  429. package/dist/partition-accounts.d.ts.map +0 -1
  430. package/dist/partition-accounts.js +0 -21
  431. package/dist/partition-accounts.js.map +0 -1
  432. package/dist/project-partition-preparation.d.ts +0 -87
  433. package/dist/project-partition-preparation.d.ts.map +0 -1
  434. package/dist/project-partition-preparation.js +0 -273
  435. package/dist/project-partition-preparation.js.map +0 -1
  436. package/dist/project-partitions.d.ts +0 -214
  437. package/dist/project-partitions.d.ts.map +0 -1
  438. package/dist/project-partitions.js +0 -486
  439. package/dist/project-partitions.js.map +0 -1
  440. package/dist/project-remove.d.ts +0 -11
  441. package/dist/project-remove.d.ts.map +0 -1
  442. package/dist/project-remove.js +0 -65
  443. package/dist/project-remove.js.map +0 -1
  444. package/dist/project-thread-listing.d.ts +0 -14
  445. package/dist/project-thread-listing.d.ts.map +0 -1
  446. package/dist/project-thread-listing.js +0 -37
  447. package/dist/project-thread-listing.js.map +0 -1
  448. package/dist/quota-projection.d.ts +0 -11
  449. package/dist/quota-projection.d.ts.map +0 -1
  450. package/dist/quota-projection.js +0 -10
  451. package/dist/quota-projection.js.map +0 -1
  452. package/dist/resource-store.d.ts +0 -39
  453. package/dist/resource-store.d.ts.map +0 -1
  454. package/dist/resource-store.js +0 -464
  455. package/dist/resource-store.js.map +0 -1
  456. package/dist/run-event-terminal-index.d.ts +0 -13
  457. package/dist/run-event-terminal-index.d.ts.map +0 -1
  458. package/dist/run-event-terminal-index.js +0 -38
  459. package/dist/run-event-terminal-index.js.map +0 -1
  460. package/dist/run-events.d.ts +0 -17
  461. package/dist/run-events.d.ts.map +0 -1
  462. package/dist/run-events.js +0 -31
  463. package/dist/run-events.js.map +0 -1
  464. package/dist/thread-head-ping.d.ts +0 -35
  465. package/dist/thread-head-ping.d.ts.map +0 -1
  466. package/dist/thread-head-ping.js +0 -67
  467. package/dist/thread-head-ping.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { CommandListQuery, continuedRunOf, delegatedParentOf, directDelegatedChildrenFromRecords, selectRunListPage, } from "@claudexor/schema";
1
+ import { CommandListQuery } from "@claudexor/schema";
2
2
  /** Parse at the RPC boundary before scanning anything, including empty history. */
3
3
  export function parseCommandListQuery(query) {
4
4
  const parsed = CommandListQuery.safeParse(query);
@@ -10,118 +10,4 @@ export function parseCommandListQuery(query) {
10
10
  retryable: false,
11
11
  });
12
12
  }
13
- function param(record, key) {
14
- return record.params && typeof record.params === "object"
15
- ? record.params[key]
16
- : undefined;
17
- }
18
- /** Reference-only graph scan. Preserve original record order for admission's
19
- * first-successor rule, including old aliases, rejected successors and cycles. */
20
- function continuationChain(records, from) {
21
- const predecessor = records.find((record) => record.id === from || record.runId === from);
22
- if (!predecessor)
23
- return [];
24
- const children = new Map();
25
- for (const record of records) {
26
- const parent = continuedRunOf(record.params);
27
- if (parent === null)
28
- continue;
29
- const siblings = children.get(parent) ?? [];
30
- siblings.push(record);
31
- children.set(parent, siblings);
32
- }
33
- const selected = new Set([predecessor]);
34
- const pending = [predecessor];
35
- for (let i = 0; i < pending.length; i++) {
36
- const record = pending[i];
37
- for (const id of [record.id, ...(record.runId ? [record.runId] : [])]) {
38
- for (const child of children.get(id) ?? []) {
39
- if (selected.has(child))
40
- continue;
41
- selected.add(child);
42
- pending.push(child);
43
- }
44
- }
45
- }
46
- return records.filter((record) => selected.has(record));
47
- }
48
- /** Transitive Delegate cancellation remains uncapped and cycle-safe. */
49
- function delegatedDescendants(records, from) {
50
- const children = new Map();
51
- for (const record of records) {
52
- const parent = delegatedParentOf(record.params);
53
- if (parent === null)
54
- continue;
55
- const siblings = children.get(parent) ?? [];
56
- siblings.push(record);
57
- children.set(parent, siblings);
58
- }
59
- const out = [];
60
- const seen = new Set([from]);
61
- const queue = [from];
62
- for (let i = 0; i < queue.length; i++) {
63
- for (const child of children.get(queue[i]) ?? []) {
64
- const id = child.runId ?? child.id;
65
- if (seen.has(id))
66
- continue;
67
- seen.add(id);
68
- out.push(child);
69
- queue.push(id);
70
- }
71
- }
72
- return out;
73
- }
74
- /** Turn cards also disclose direct Delegate children, whose commands need not
75
- * carry their parent's threadId. Select those references without widening the
76
- * read to unrelated history. Active-only fences need only the thread members. */
77
- function threadRecords(records, ids, activeOnly = false) {
78
- const members = records.filter((r) => {
79
- const threadId = param(r, "threadId");
80
- return (typeof threadId === "string" &&
81
- ids.has(threadId) &&
82
- (!activeOnly || r.state === "queued" || r.state === "running"));
83
- });
84
- if (activeOnly)
85
- return members;
86
- const memberSet = new Set(members);
87
- const parents = new Set(members.map((r) => r.runId ?? r.id));
88
- return records.filter((r) => memberSet.has(r) || parents.has(delegatedParentOf(r.params) ?? ""));
89
- }
90
- /** Select BEFORE redaction/copy/serialization. O(N) shallow reference scans
91
- * are intentional; no unrelated prompt or result body is visited. */
92
- export function selectCommandRecords(records, query) {
93
- if ("id" in query) {
94
- const record = records.find((r) => r.id === query.id || r.runId === query.id);
95
- return record ? [record] : [];
96
- }
97
- if ("turnId" in query) {
98
- const last = records
99
- .filter((r) => param(r, "turnId") === query.turnId)
100
- .sort((a, b) => String(a.createdAt ?? "").localeCompare(String(b.createdAt ?? "")))
101
- .at(-1);
102
- return last ? [last] : [];
103
- }
104
- if ("ids" in query) {
105
- const ids = new Set(query.ids);
106
- return records.filter((r) => ids.has(r.id) || (!!r.runId && ids.has(r.runId)));
107
- }
108
- if ("delegatedFromRunId" in query)
109
- return directDelegatedChildrenFromRecords(query.delegatedFromRunId, records);
110
- if ("continuationChainOf" in query)
111
- return continuationChain(records, query.continuationChainOf);
112
- if ("delegatedDescendantsOf" in query)
113
- return delegatedDescendants(records, query.delegatedDescendantsOf);
114
- if ("page" in query)
115
- return selectRunListPage(records, { ...query.page, limit: query.page.limit + 1 }).page;
116
- if ("threadIds" in query) {
117
- const ids = new Set(query.threadIds);
118
- return threadRecords(records, ids);
119
- }
120
- const active = query.activeOnly
121
- ? records.filter((r) => r.state === "queued" || r.state === "running")
122
- : records;
123
- return "threadId" in query
124
- ? threadRecords(records, new Set([query.threadId]), query.activeOnly)
125
- : [...active];
126
- }
127
13
  //# sourceMappingURL=command-list-select.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-list-select.js","sourceRoot":"","sources":["../src/command-list-select.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-list-select.js","sourceRoot":"","sources":["../src/command-list-select.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC;IACvC,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sDAAsD,CAAC,EAAE;QACrF,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,4BAA4B;QAC1E,MAAM,EAAE,GAAG;QACX,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;AACL,CAAC"}
@@ -1,20 +1,8 @@
1
- import type { JobRecord } from "./server.js";
2
- /** Agent run commands only: model and harness-maintenance operations are
3
- * commands without a run and have their own typed read surfaces. */
4
- export declare function productCommandRecords(records: readonly JobRecord[]): JobRecord[];
5
- /** Addressed selection is shared by socket reads and in-process consumers. */
6
- export declare function selectProductCommands(records: readonly JobRecord[], query: unknown): JobRecord[];
7
- /** Cap on the serialized `params` bytes retained across terminal product
8
- * commands (journal sprint owner decision D3, release 1). Prompts stay inline
9
- * in the command journal, so once their sum passes this bound the OLDEST
10
- * terminal product commands are pruned regardless of age; the 500/30-day rule
11
- * is unchanged. Model-operation receipts, needs-decision and continuation references are exempt;
12
- * delivery commands (`delivery-*`, which carry a copy of the applied run's
13
- * params) keep their own age/cap policy and neither count nor get pruned here. */
14
- export declare const MAX_RETAINED_COMMAND_PARAMS_BYTES: number;
15
- /** Select only expired terminal records (D8: job state is the lifecycle;
16
- * non-terminal = queued/running). Needs-decision (review-blocked / checks-
17
- * failed) runs are EXEMPT — they keep operator visibility parity with the old
18
- * `blocked` retention and are never pruned by age/cap or by the byte budget. */
19
- export declare function prunableCommandIds(records: readonly JobRecord[], cap: number, retentionMs: number, now: number, maxParamsBytes?: number): string[];
1
+ import type { JobRecord } from "./job-record.js";
2
+ /** A terminal run that still needs a human decision: its lifecycle SUCCEEDED
3
+ * but the arbitrated facts are review-blocked or checks-failed. These carry the
4
+ * same operator obligation the old coarse `blocked` job state did, so they must
5
+ * survive age/cap pruning (otherwise the operator loses the run they need to
6
+ * accept-risk / rerun before its evidence is gone). */
7
+ export declare function isNeedsDecision(record: JobRecord): boolean;
20
8
  //# sourceMappingURL=command-retention.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-retention.d.ts","sourceRoot":"","sources":["../src/command-retention.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C;oEACoE;AACpE,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,SAAS,EAAE,GAAG,SAAS,EAAE,CAOhF;AAED,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,SAAS,SAAS,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,SAAS,EAAE,CAGhG;AAwCD;;;;;;kFAMkF;AAClF,eAAO,MAAM,iCAAiC,QAAoB,CAAC;AAEnE;;;gFAGgF;AAChF,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,SAAS,SAAS,EAAE,EAC7B,GAAG,EAAE,MAAM,EACX,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,cAAc,SAAoC,GACjD,MAAM,EAAE,CA4CV"}
1
+ {"version":3,"file":"command-retention.d.ts","sourceRoot":"","sources":["../src/command-retention.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;uDAIuD;AACvD,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAK1D"}
@@ -1,129 +1,13 @@
1
- import { parseCommandListQuery, selectCommandRecords } from "./command-list-select.js";
2
- import { retainedEnvelopeOfRun } from "@claudexor/workspace";
3
- import { continuedRunOf, isHarnessMaintenanceOperation, isModelOperation } from "@claudexor/schema";
4
- /** Agent run commands only: model and harness-maintenance operations are
5
- * commands without a run and have their own typed read surfaces. */
6
- export function productCommandRecords(records) {
7
- return records.filter((record) => !isDeliveryCommand(record) &&
8
- !isModelOperation(record.params) &&
9
- !isHarnessMaintenanceOperation(record.params));
10
- }
11
- /** Addressed selection is shared by socket reads and in-process consumers. */
12
- export function selectProductCommands(records, query) {
13
- const addressed = parseCommandListQuery(query);
14
- return selectCommandRecords(productCommandRecords(records), addressed);
15
- }
16
- /** Delivery commands persist the full run params of the apply they serve;
17
- * they keep their existing age/cap retention and are outside the byte budget. */
18
- function isDeliveryCommand(record) {
19
- return record.id.startsWith("delivery-");
20
- }
21
1
  /** A terminal run that still needs a human decision: its lifecycle SUCCEEDED
22
2
  * but the arbitrated facts are review-blocked or checks-failed. These carry the
23
3
  * same operator obligation the old coarse `blocked` job state did, so they must
24
4
  * survive age/cap pruning (otherwise the operator loses the run they need to
25
5
  * accept-risk / rerun before its evidence is gone). */
26
- function isNeedsDecision(record) {
6
+ export function isNeedsDecision(record) {
27
7
  const result = record.result;
28
8
  const facts = result && typeof result === "object" ? result.facts : undefined;
29
9
  if (!facts || typeof facts !== "object")
30
10
  return false;
31
11
  return facts.review === "blocked" || facts.checks === "failed";
32
12
  }
33
- /** Pure exemptions: keep custody addressable and claims while their predecessor is retained.
34
- * The input is the current kept set; if a predecessor is removed in this pass,
35
- * its successor becomes eligible on the next pass. No lifetime is invented. */
36
- function continuationExemptions(records) {
37
- const identities = new Set(records.flatMap((record) => [record.id, ...(record.runId ? [record.runId] : [])]));
38
- return new Set(records
39
- .filter((record) => {
40
- const predecessor = continuedRunOf(record.params);
41
- return ((predecessor !== null && identities.has(predecessor)) ||
42
- !!(record.runDir && record.runId && retainedEnvelopeOfRun(record.runDir, record.runId)));
43
- })
44
- .map((record) => record.id));
45
- }
46
- /** Cap on the serialized `params` bytes retained across terminal product
47
- * commands (journal sprint owner decision D3, release 1). Prompts stay inline
48
- * in the command journal, so once their sum passes this bound the OLDEST
49
- * terminal product commands are pruned regardless of age; the 500/30-day rule
50
- * is unchanged. Model-operation receipts, needs-decision and continuation references are exempt;
51
- * delivery commands (`delivery-*`, which carry a copy of the applied run's
52
- * params) keep their own age/cap policy and neither count nor get pruned here. */
53
- export const MAX_RETAINED_COMMAND_PARAMS_BYTES = 256 * 1024 * 1024;
54
- /** Select only expired terminal records (D8: job state is the lifecycle;
55
- * non-terminal = queued/running). Needs-decision (review-blocked / checks-
56
- * failed) runs are EXEMPT — they keep operator visibility parity with the old
57
- * `blocked` retention and are never pruned by age/cap or by the byte budget. */
58
- export function prunableCommandIds(records, cap, retentionMs, now, maxParamsBytes = MAX_RETAINED_COMMAND_PARAMS_BYTES) {
59
- // Model bodies have their own custody lifetime. Their compact receipts and
60
- // idempotency keys survive it, and must not consume Agent history capacity.
61
- // Delivery commands retain their existing age/cap policy.
62
- const terminal = records
63
- .filter((record) => !isModelOperation(record.params) && !["running", "queued"].includes(record.state))
64
- .sort((a, b) => (a.createdAt < b.createdAt ? -1 : 1));
65
- const pruned = new Set();
66
- const continuation = continuationExemptions(records);
67
- const exempt = (record) => isNeedsDecision(record) || continuation.has(record.id);
68
- if (terminal.length > cap) {
69
- for (const record of terminal
70
- .filter((record) => {
71
- if (exempt(record))
72
- return false;
73
- const settledAt = Date.parse(record.finishedAt ?? "");
74
- return Number.isFinite(settledAt) && now - settledAt >= retentionMs;
75
- })
76
- .slice(0, terminal.length - cap)) {
77
- pruned.add(record.id);
78
- }
79
- }
80
- // Byte budget over the PRODUCT commands that survive the age/cap rule,
81
- // oldest first. Only the records the rule can reach are counted: a
82
- // needs-decision run is exempt, a delivery command is outside the rule
83
- // (model receipts never enter `terminal`), so their params must not push
84
- // every reachable command out — the budget bounds exactly what it may prune.
85
- let bytes = 0;
86
- const sizes = new Map();
87
- for (const record of terminal) {
88
- if (pruned.has(record.id) || exempt(record) || isDeliveryCommand(record))
89
- continue;
90
- const size = paramsBytes(record);
91
- sizes.set(record.id, size);
92
- bytes += size;
93
- }
94
- for (const record of terminal) {
95
- if (bytes <= maxParamsBytes)
96
- break;
97
- const size = sizes.get(record.id);
98
- if (size === undefined)
99
- continue; // already pruned, or exempt
100
- pruned.add(record.id);
101
- bytes -= size;
102
- }
103
- return [...pruned];
104
- }
105
- /** Serialized UTF-8 size of a command's params, measured once: params are
106
- * pinned at acceptance (`update()` keeps the same object), so the size keyed by
107
- * that object never goes stale, and a prune pass never re-serializes history. */
108
- const paramsByteCache = new WeakMap();
109
- function paramsBytes(record) {
110
- const params = record.params;
111
- const cacheable = typeof params === "object" && params !== null;
112
- if (cacheable) {
113
- const known = paramsByteCache.get(params);
114
- if (known !== undefined)
115
- return known;
116
- }
117
- let size = 0;
118
- try {
119
- const serialized = JSON.stringify(params);
120
- size = serialized === undefined ? 0 : Buffer.byteLength(serialized, "utf8");
121
- }
122
- catch {
123
- size = 0;
124
- }
125
- if (cacheable)
126
- paramsByteCache.set(params, size);
127
- return size;
128
- }
129
13
  //# sourceMappingURL=command-retention.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-retention.js","sourceRoot":"","sources":["../src/command-retention.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-retention.js","sourceRoot":"","sources":["../src/command-retention.ts"],"names":[],"mappings":"AAEA;;;;uDAIuD;AACvD,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAAmE,CAAC;IAC1F,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9E,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,OAAO,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC;AACjE,CAAC"}
@@ -1,5 +1,8 @@
1
- import { type CommandAuthority } from "./command-authority.js";
1
+ import { type CommandAuthority, type CommandBackend } from "./command-authority.js";
2
2
  import { publicJobRecord, type JobRecord } from "./job-record.js";
3
+ import { type DelegationAdmissionAuthority } from "./delegation-admission.js";
4
+ /** Existing admission rules over their addressed subjects, in the enqueue turn. */
5
+ export declare function admitCommandRequest(commands: CommandBackend, raw: unknown, operation: string | undefined, delegation?: DelegationAdmissionAuthority): unknown;
3
6
  interface CommandLookupEnvelope {
4
7
  request?: unknown;
5
8
  idempotencyKey?: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"command-rpc.d.ts","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAElE,UAAU,qBAAqB;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,uEAAuE;AACvE,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC9C,SAAS,GAAG,IAAI,CAQlB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC9C,UAAU,CAAC,OAAO,eAAe,CAAC,GAAG,IAAI,CAG3C;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO;;;;EAE1E"}
1
+ {"version":3,"file":"command-rpc.d.ts","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAElE,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,2BAA2B,CAAC;AAEnC,mFAAmF;AACnF,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,cAAc,EACxB,GAAG,EAAE,OAAO,EACZ,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,CAAC,EAAE,4BAA4B,GACxC,OAAO,CAST;AAED,UAAU,qBAAqB;IAC7B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAED,uEAAuE;AACvE,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC9C,SAAS,GAAG,IAAI,CAQlB;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,gBAAgB,EAC1B,KAAK,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAC9C,UAAU,CAAC,OAAO,eAAe,CAAC,GAAG,IAAI,CAG3C;AAED,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO;;;;EAE1E"}
@@ -1,5 +1,16 @@
1
- import { commandStoreForRequest } from "./command-authority.js";
1
+ import { continuedRunOf, delegatedParentOf } from "@claudexor/schema";
2
+ import { commandStoreForRequest, } from "./command-authority.js";
2
3
  import { publicJobRecord } from "./job-record.js";
4
+ import { admitContinuationRequest } from "./continuation-admission.js";
5
+ import { admitDelegatedRequest, } from "./delegation-admission.js";
6
+ /** Existing admission rules over their addressed subjects, in the enqueue turn. */
7
+ export function admitCommandRequest(commands, raw, operation, delegation) {
8
+ const from = continuedRunOf(raw);
9
+ const request = admitContinuationRequest(raw, from ? commands.queries.select({ continuationChainOf: from }) : []);
10
+ const parentId = delegatedParentOf(request);
11
+ const parent = parentId ? commands.queries.getByRunId(parentId) : undefined;
12
+ return admitDelegatedRequest(request, operation, parent ? [parent] : [], delegation);
13
+ }
3
14
  /** One parser for enqueue replay and the explicit findAccepted RPC. */
4
15
  export function findAcceptedCommand(commands, input) {
5
16
  return commandStoreForRequest(commands, input?.request).find({
@@ -1 +1 @@
1
- {"version":3,"file":"command-rpc.js","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAyB,MAAM,wBAAwB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAC;AAUlE,uEAAuE;AACvE,MAAM,UAAU,mBAAmB,CACjC,QAA0B,EAC1B,KAA+C;IAE/C,OAAO,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;QAC3D,MAAM,EAAE,KAAK,EAAE,OAAO;QACtB,cAAc,EAAE,MAAM,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC;QACnD,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,eAAe,CAAC;QACpD,SAAS,EAAE,OAAO,KAAK,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC7E,iBAAiB,EAAE,KAAK,EAAE,kBAAkB;KAC7C,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAA0B,EAC1B,KAA+C;IAE/C,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACpD,OAAO,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAe;IACzE,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;AACxD,CAAC"}
1
+ {"version":3,"file":"command-rpc.js","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EACL,sBAAsB,GAGvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAkB,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EACL,qBAAqB,GAEtB,MAAM,2BAA2B,CAAC;AAEnC,mFAAmF;AACnF,MAAM,UAAU,mBAAmB,CACjC,QAAwB,EACxB,GAAY,EACZ,SAA6B,EAC7B,UAAyC;IAEzC,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,OAAO,GAAG,wBAAwB,CACtC,GAAG,EACH,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CACnE,CAAC;IACF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5E,OAAO,qBAAqB,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;AACvF,CAAC;AAUD,uEAAuE;AACvE,MAAM,UAAU,mBAAmB,CACjC,QAA0B,EAC1B,KAA+C;IAE/C,OAAO,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC;QAC3D,MAAM,EAAE,KAAK,EAAE,OAAO;QACtB,cAAc,EAAE,MAAM,CAAC,KAAK,EAAE,cAAc,IAAI,EAAE,CAAC;QACnD,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,IAAI,eAAe,CAAC;QACpD,SAAS,EAAE,OAAO,KAAK,EAAE,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QAC7E,iBAAiB,EAAE,KAAK,EAAE,kBAAkB;KAC7C,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAA0B,EAC1B,KAA+C;IAE/C,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACpD,OAAO,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAiB,EAAE,MAAe;IACzE,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;AACxD,CAAC"}
@@ -1,55 +1,18 @@
1
- import type { DurableJournal } from "@claudexor/journal";
2
- import { type JobRecord } from "./server.js";
3
- /** Journal-backed authority for daemon commands. A returned mutation is fsynced. */
4
- export declare class CommandStore {
5
- private readonly journal;
6
- private readonly now;
7
- private readonly recordsById;
8
- private readonly idByKeyDigest;
9
- private readonly prunedRoots;
10
- constructor(journal: DurableJournal, now?: () => Date);
11
- /** Apply crash terminalization only after bootstrap has proved every required partition. */
12
- recoverAfterStartup(): void;
13
- accept(input: {
14
- id: string;
15
- params: unknown;
16
- idempotencyKey: string;
17
- clientId: string;
18
- operation?: string;
19
- idempotencyParams?: unknown;
20
- }): {
21
- record: JobRecord;
22
- reused: boolean;
23
- };
24
- find(input: {
25
- params: unknown;
26
- idempotencyKey: string;
27
- clientId: string;
28
- operation?: string;
29
- idempotencyParams?: unknown;
30
- }): JobRecord | null;
31
- get(id: string): JobRecord | undefined;
32
- get count(): number;
33
- records(): JobRecord[];
34
- update(id: string, patch: Partial<JobRecord>): JobRecord;
35
- prune(ids: readonly string[]): void;
36
- prunedScopeRoots(): string[];
37
- /** Reconcile after durable terminal acceptance but failed local receipt/tail finalization. */
38
- recoverDurableTerminal(id: string): JobRecord | null;
39
- validateProjection(): void;
40
- private replay;
41
- private interruptUnknownCommands;
42
- private reconcileTerminal;
43
- /** The partition's durable terminals, from the pass shared with the
44
- * RunEventStore projection (parsed once per generation, extended on append). */
45
- private durableTerminalEvents;
46
- private recoverTerminalArtifacts;
47
- private drop;
1
+ import { type JobRecord } from "./job-record.js";
2
+ export interface FindCommand {
3
+ params: unknown;
4
+ idempotencyKey: string;
5
+ clientId: string;
6
+ operation?: string;
7
+ idempotencyParams?: unknown;
48
8
  }
49
- export declare function commandProjection(): {
50
- name: string;
51
- create: (journal: DurableJournal) => CommandStore;
52
- validate: (store: CommandStore) => void;
53
- recover: (store: CommandStore) => void;
9
+ export interface AcceptCommand extends FindCommand {
10
+ id: string;
11
+ }
12
+ export declare function validateCommandRecord(record: Omit<JobRecord, "params">): void;
13
+ export declare function validateCommandKey(key: string): void;
14
+ export declare function commandDigests(partition: string, input: FindCommand): {
15
+ requestDigest: string;
16
+ keyDigest: string;
54
17
  };
55
18
  //# sourceMappingURL=command-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-store.d.ts","sourceRoot":"","sources":["../src/command-store.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAczD,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAyBzD,oFAAoF;AACpF,qBAAa,YAAY;IAMrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IANtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAgC;IAC5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA4D;IAC1F,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IAEjD,YACmB,OAAO,EAAE,cAAc,EACvB,GAAG,GAAE,MAAM,IAAuB,EAGpD;IAED,4FAA4F;IAC5F,mBAAmB,IAAI,IAAI,CAE1B;IAED,MAAM,CAAC,KAAK,EAAE;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG;QAAE,MAAM,EAAE,SAAS,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAwBzC;IAED,IAAI,CAAC,KAAK,EAAE;QACV,MAAM,EAAE,OAAO,CAAC;QAChB,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,GAAG,SAAS,GAAG,IAAI,CAOnB;IAED,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAErC;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,OAAO,IAAI,SAAS,EAAE,CAErB;IAED,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAQvD;IAED,KAAK,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAWlC;IAED,gBAAgB,IAAI,MAAM,EAAE,CAE3B;IAED,8FAA8F;IAC9F,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAKnD;IAED,kBAAkB,IAAI,IAAI,CAKzB;IAED,OAAO,CAAC,MAAM;IA4Cd,OAAO,CAAC,wBAAwB;IAmBhC,OAAO,CAAC,iBAAiB;IAsDzB;oFACgF;IAChF,OAAO,CAAC,qBAAqB;IAI7B,OAAO,CAAC,wBAAwB;IAgKhC,OAAO,CAAC,IAAI;CAOb;AA8ED,wBAAgB,iBAAiB;IAE7B,IAAI;IACJ,MAAM,YAAY,cAAc;IAChC,QAAQ,UAAU,YAAY;IAC9B,OAAO,UAAU,YAAY;EAEhC"}
1
+ {"version":3,"file":"command-store.d.ts","sourceRoot":"","sources":["../src/command-store.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE7D,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AACD,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,IAAI,CAO7E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAOpD;AAED,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,WAAW,GACjB;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAU9C"}