@owlmeans/server-planning 0.1.18-rc.8 → 0.1.18

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 (438) hide show
  1. package/README.md +92 -19
  2. package/agent-meta/manifest.json +105 -4
  3. package/agent-meta/skills/server-planning/SKILL.md +89 -138
  4. package/agent-meta/skills/server-planning/parts/auxiliary.md +54 -0
  5. package/agent-meta/skills/server-planning/parts/executor.md +82 -0
  6. package/agent-meta/skills/server-planning/parts/schemas.md +26 -0
  7. package/agent-meta/skills/server-planning/parts/serving.md +88 -0
  8. package/agent-meta/skills/server-planning/parts/stores.md +91 -0
  9. package/build/actions/apply-schema-request.d.ts +8 -0
  10. package/build/actions/apply-schema-request.d.ts.map +1 -0
  11. package/build/actions/apply-schema-request.js +33 -0
  12. package/build/actions/apply-schema-request.js.map +1 -0
  13. package/build/actions/commit.d.ts +3 -3
  14. package/build/actions/commit.d.ts.map +1 -1
  15. package/build/actions/commit.js +5 -4
  16. package/build/actions/commit.js.map +1 -1
  17. package/build/actions/define-schemas.d.ts +13 -0
  18. package/build/actions/define-schemas.d.ts.map +1 -0
  19. package/build/actions/define-schemas.js +28 -0
  20. package/build/actions/define-schemas.js.map +1 -0
  21. package/build/actions/execute.d.ts +11 -10
  22. package/build/actions/execute.d.ts.map +1 -1
  23. package/build/actions/execute.js +17 -27
  24. package/build/actions/execute.js.map +1 -1
  25. package/build/actions/execution/types.d.ts +34 -0
  26. package/build/actions/execution/types.d.ts.map +1 -0
  27. package/build/actions/execution/types.js +2 -0
  28. package/build/actions/execution/types.js.map +1 -0
  29. package/build/actions/execution.d.ts +4 -0
  30. package/build/actions/execution.d.ts.map +1 -0
  31. package/build/actions/execution.js +88 -0
  32. package/build/actions/execution.js.map +1 -0
  33. package/build/actions/get-card.d.ts +6 -0
  34. package/build/actions/get-card.d.ts.map +1 -0
  35. package/build/actions/get-card.js +9 -0
  36. package/build/actions/get-card.js.map +1 -0
  37. package/build/actions/get-specification.d.ts +6 -0
  38. package/build/actions/get-specification.d.ts.map +1 -0
  39. package/build/actions/get-specification.js +9 -0
  40. package/build/actions/get-specification.js.map +1 -0
  41. package/build/actions/index.d.ts +12 -3
  42. package/build/actions/index.d.ts.map +1 -1
  43. package/build/actions/index.js +11 -3
  44. package/build/actions/index.js.map +1 -1
  45. package/build/actions/links.d.ts +3 -3
  46. package/build/actions/links.d.ts.map +1 -1
  47. package/build/actions/links.js +6 -5
  48. package/build/actions/links.js.map +1 -1
  49. package/build/actions/list-card-specifications.d.ts +6 -0
  50. package/build/actions/list-card-specifications.d.ts.map +1 -0
  51. package/build/actions/list-card-specifications.js +11 -0
  52. package/build/actions/list-card-specifications.js.map +1 -0
  53. package/build/actions/list-card-transitions.d.ts +6 -0
  54. package/build/actions/list-card-transitions.d.ts.map +1 -0
  55. package/build/actions/list-card-transitions.js +11 -0
  56. package/build/actions/list-card-transitions.js.map +1 -0
  57. package/build/actions/list-cards.d.ts +6 -0
  58. package/build/actions/list-cards.d.ts.map +1 -0
  59. package/build/actions/list-cards.js +10 -0
  60. package/build/actions/list-cards.js.map +1 -0
  61. package/build/actions/list-schemas.d.ts +13 -0
  62. package/build/actions/list-schemas.d.ts.map +1 -0
  63. package/build/actions/list-schemas.js +20 -0
  64. package/build/actions/list-schemas.js.map +1 -0
  65. package/build/actions/list-specification-revisions.d.ts +6 -0
  66. package/build/actions/list-specification-revisions.d.ts.map +1 -0
  67. package/build/actions/list-specification-revisions.js +10 -0
  68. package/build/actions/list-specification-revisions.js.map +1 -0
  69. package/build/actions/resources.d.ts +5 -0
  70. package/build/actions/resources.d.ts.map +1 -0
  71. package/build/actions/resources.js +111 -0
  72. package/build/actions/resources.js.map +1 -0
  73. package/build/actions/summarize-cards.d.ts +6 -0
  74. package/build/actions/summarize-cards.d.ts.map +1 -0
  75. package/build/actions/summarize-cards.js +11 -0
  76. package/build/actions/summarize-cards.js.map +1 -0
  77. package/build/actions/transitions.d.ts +3 -3
  78. package/build/actions/transitions.d.ts.map +1 -1
  79. package/build/actions/transitions.js +4 -3
  80. package/build/actions/transitions.js.map +1 -1
  81. package/build/actions/types.d.ts +6 -0
  82. package/build/actions/types.d.ts.map +1 -0
  83. package/build/actions/types.js +2 -0
  84. package/build/actions/types.js.map +1 -0
  85. package/build/actions/watch.d.ts +2 -2
  86. package/build/actions/watch.d.ts.map +1 -1
  87. package/build/actions/watch.js +8 -6
  88. package/build/actions/watch.js.map +1 -1
  89. package/build/conformance/assert/types.d.ts +19 -0
  90. package/build/conformance/assert/types.d.ts.map +1 -0
  91. package/build/conformance/assert/types.js +2 -0
  92. package/build/conformance/assert/types.js.map +1 -0
  93. package/build/conformance/assert.d.ts +15 -0
  94. package/build/conformance/assert.d.ts.map +1 -0
  95. package/build/conformance/assert.js +52 -0
  96. package/build/conformance/assert.js.map +1 -0
  97. package/build/conformance/cases.d.ts +7 -0
  98. package/build/conformance/cases.d.ts.map +1 -0
  99. package/build/conformance/cases.js +544 -0
  100. package/build/conformance/cases.js.map +1 -0
  101. package/build/conformance/clock.d.ts +6 -0
  102. package/build/conformance/clock.d.ts.map +1 -0
  103. package/build/conformance/clock.js +12 -0
  104. package/build/conformance/clock.js.map +1 -0
  105. package/build/conformance/consts.d.ts +30 -0
  106. package/build/conformance/consts.d.ts.map +1 -0
  107. package/build/conformance/consts.js +159 -0
  108. package/build/conformance/consts.js.map +1 -0
  109. package/build/conformance/errors.d.ts +5 -0
  110. package/build/conformance/errors.d.ts.map +1 -0
  111. package/build/conformance/errors.js +8 -0
  112. package/build/conformance/errors.js.map +1 -0
  113. package/build/conformance/fixtures/types.d.ts +13 -0
  114. package/build/conformance/fixtures/types.d.ts.map +1 -0
  115. package/build/conformance/fixtures/types.js +2 -0
  116. package/build/conformance/fixtures/types.js.map +1 -0
  117. package/build/conformance/fixtures.d.ts +14 -0
  118. package/build/conformance/fixtures.d.ts.map +1 -0
  119. package/build/conformance/fixtures.js +26 -0
  120. package/build/conformance/fixtures.js.map +1 -0
  121. package/build/conformance/index.d.ts +15 -0
  122. package/build/conformance/index.d.ts.map +1 -0
  123. package/build/conformance/index.js +12 -0
  124. package/build/conformance/index.js.map +1 -0
  125. package/build/conformance/resources.d.ts +4 -0
  126. package/build/conformance/resources.d.ts.map +1 -0
  127. package/build/conformance/resources.js +228 -0
  128. package/build/conformance/resources.js.map +1 -0
  129. package/build/conformance/types.d.ts +18 -0
  130. package/build/conformance/types.d.ts.map +1 -0
  131. package/build/conformance/types.js +2 -0
  132. package/build/conformance/types.js.map +1 -0
  133. package/build/consts.d.ts +5 -0
  134. package/build/consts.d.ts.map +1 -1
  135. package/build/consts.js +5 -0
  136. package/build/consts.js.map +1 -1
  137. package/build/definitions.d.ts +18 -0
  138. package/build/definitions.d.ts.map +1 -0
  139. package/build/definitions.js +225 -0
  140. package/build/definitions.js.map +1 -0
  141. package/build/executor/changes/types.d.ts +36 -0
  142. package/build/executor/changes/types.d.ts.map +1 -0
  143. package/build/executor/changes/types.js +2 -0
  144. package/build/executor/changes/types.js.map +1 -0
  145. package/build/executor/changes.d.ts +3 -30
  146. package/build/executor/changes.d.ts.map +1 -1
  147. package/build/executor/changes.js +42 -51
  148. package/build/executor/changes.js.map +1 -1
  149. package/build/executor/code/types.d.ts +17 -0
  150. package/build/executor/code/types.d.ts.map +1 -0
  151. package/build/executor/code/types.js +2 -0
  152. package/build/executor/code/types.js.map +1 -0
  153. package/build/executor/code.d.ts +3 -14
  154. package/build/executor/code.d.ts.map +1 -1
  155. package/build/executor/code.js +50 -54
  156. package/build/executor/code.js.map +1 -1
  157. package/build/executor/consts.local.d.ts +5 -0
  158. package/build/executor/consts.local.d.ts.map +1 -0
  159. package/build/executor/consts.local.js +6 -0
  160. package/build/executor/consts.local.js.map +1 -0
  161. package/build/executor/creator/types.d.ts +33 -0
  162. package/build/executor/creator/types.d.ts.map +1 -0
  163. package/build/executor/creator/types.js +2 -0
  164. package/build/executor/creator/types.js.map +1 -0
  165. package/build/executor/creator.d.ts +11 -0
  166. package/build/executor/creator.d.ts.map +1 -0
  167. package/build/executor/creator.js +32 -0
  168. package/build/executor/creator.js.map +1 -0
  169. package/build/executor/resolve/types.d.ts +30 -0
  170. package/build/executor/resolve/types.d.ts.map +1 -0
  171. package/build/executor/resolve/types.js +2 -0
  172. package/build/executor/resolve/types.js.map +1 -0
  173. package/build/executor/resolve.d.ts +5 -34
  174. package/build/executor/resolve.d.ts.map +1 -1
  175. package/build/executor/resolve.js +169 -110
  176. package/build/executor/resolve.js.map +1 -1
  177. package/build/executor/types.d.ts +23 -0
  178. package/build/executor/types.d.ts.map +1 -0
  179. package/build/executor/types.js +2 -0
  180. package/build/executor/types.js.map +1 -0
  181. package/build/executor/validate.d.ts +6 -5
  182. package/build/executor/validate.d.ts.map +1 -1
  183. package/build/executor/validate.js +38 -27
  184. package/build/executor/validate.js.map +1 -1
  185. package/build/executor.d.ts +11 -7
  186. package/build/executor.d.ts.map +1 -1
  187. package/build/executor.js +27 -21
  188. package/build/executor.js.map +1 -1
  189. package/build/facade.d.ts +20 -2
  190. package/build/facade.d.ts.map +1 -1
  191. package/build/facade.js +144 -22
  192. package/build/facade.js.map +1 -1
  193. package/build/helper.d.ts +5 -9
  194. package/build/helper.d.ts.map +1 -1
  195. package/build/helper.js +12 -11
  196. package/build/helper.js.map +1 -1
  197. package/build/hierarchy/types.d.ts +20 -0
  198. package/build/hierarchy/types.d.ts.map +1 -0
  199. package/build/hierarchy/types.js +2 -0
  200. package/build/hierarchy/types.js.map +1 -0
  201. package/build/hierarchy.d.ts +5 -0
  202. package/build/hierarchy.d.ts.map +1 -0
  203. package/build/hierarchy.js +133 -0
  204. package/build/hierarchy.js.map +1 -0
  205. package/build/index.d.ts +1 -0
  206. package/build/index.d.ts.map +1 -1
  207. package/build/index.js +1 -0
  208. package/build/index.js.map +1 -1
  209. package/build/invariants/types.d.ts +6 -0
  210. package/build/invariants/types.d.ts.map +1 -0
  211. package/build/invariants/types.js +2 -0
  212. package/build/invariants/types.js.map +1 -0
  213. package/build/invariants.d.ts +5 -0
  214. package/build/invariants.d.ts.map +1 -0
  215. package/build/invariants.js +126 -0
  216. package/build/invariants.js.map +1 -0
  217. package/build/projection.d.ts +4 -10
  218. package/build/projection.d.ts.map +1 -1
  219. package/build/projection.js +7 -5
  220. package/build/projection.js.map +1 -1
  221. package/build/queue/consts.d.ts +5 -0
  222. package/build/queue/consts.d.ts.map +1 -0
  223. package/build/queue/consts.js +5 -0
  224. package/build/queue/consts.js.map +1 -0
  225. package/build/queue/declare.d.ts +5 -0
  226. package/build/queue/declare.d.ts.map +1 -0
  227. package/build/queue/declare.js +5 -0
  228. package/build/queue/declare.js.map +1 -0
  229. package/build/queue/index.d.ts +3 -18
  230. package/build/queue/index.d.ts.map +1 -1
  231. package/build/queue/index.js +2 -7
  232. package/build/queue/index.js.map +1 -1
  233. package/build/queue/types.d.ts +13 -0
  234. package/build/queue/types.d.ts.map +1 -0
  235. package/build/queue/types.js +2 -0
  236. package/build/queue/types.js.map +1 -0
  237. package/build/registry.d.ts +5 -22
  238. package/build/registry.d.ts.map +1 -1
  239. package/build/registry.js +16 -10
  240. package/build/registry.js.map +1 -1
  241. package/build/resources.d.ts +5 -0
  242. package/build/resources.d.ts.map +1 -0
  243. package/build/resources.js +287 -0
  244. package/build/resources.js.map +1 -0
  245. package/build/service.d.ts +3 -16
  246. package/build/service.d.ts.map +1 -1
  247. package/build/service.js +12 -0
  248. package/build/service.js.map +1 -1
  249. package/build/store/commits.d.ts.map +1 -1
  250. package/build/store/commits.js +3 -1
  251. package/build/store/commits.js.map +1 -1
  252. package/build/store/composite.d.ts +1 -0
  253. package/build/store/composite.d.ts.map +1 -1
  254. package/build/store/composite.js +7 -2
  255. package/build/store/composite.js.map +1 -1
  256. package/build/store/consts.local.d.ts +2 -0
  257. package/build/store/consts.local.d.ts.map +1 -0
  258. package/build/store/consts.local.js +2 -0
  259. package/build/store/consts.local.js.map +1 -0
  260. package/build/store/fold/types.d.ts +43 -0
  261. package/build/store/fold/types.d.ts.map +1 -0
  262. package/build/store/fold/types.js +2 -0
  263. package/build/store/fold/types.js.map +1 -0
  264. package/build/store/fold.d.ts +8 -30
  265. package/build/store/fold.d.ts.map +1 -1
  266. package/build/store/fold.js +190 -198
  267. package/build/store/fold.js.map +1 -1
  268. package/build/store/index.d.ts +1 -0
  269. package/build/store/index.d.ts.map +1 -1
  270. package/build/store/index.js.map +1 -1
  271. package/build/store/memory.d.ts +12 -0
  272. package/build/store/memory.d.ts.map +1 -1
  273. package/build/store/memory.js +0 -0
  274. package/build/store/memory.js.map +1 -1
  275. package/build/store/types.d.ts +15 -1
  276. package/build/store/types.d.ts.map +1 -1
  277. package/build/store/types.local.d.ts +5 -0
  278. package/build/store/types.local.d.ts.map +1 -0
  279. package/build/store/types.local.js +2 -0
  280. package/build/store/types.local.js.map +1 -0
  281. package/build/types.d.ts +126 -2
  282. package/build/types.d.ts.map +1 -1
  283. package/build/types.local.d.ts +7 -0
  284. package/build/types.local.d.ts.map +1 -0
  285. package/build/types.local.js +2 -0
  286. package/build/types.local.js.map +1 -0
  287. package/build/utils/access/types.d.ts +30 -0
  288. package/build/utils/access/types.d.ts.map +1 -0
  289. package/build/utils/access/types.js +2 -0
  290. package/build/utils/access/types.js.map +1 -0
  291. package/build/utils/access.d.ts +4 -0
  292. package/build/utils/access.d.ts.map +1 -0
  293. package/build/utils/access.js +28 -0
  294. package/build/utils/access.js.map +1 -0
  295. package/build/utils/guard/types.d.ts +23 -0
  296. package/build/utils/guard/types.d.ts.map +1 -0
  297. package/build/utils/guard/types.js +2 -0
  298. package/build/utils/guard/types.js.map +1 -0
  299. package/build/utils/guard.d.ts +7 -10
  300. package/build/utils/guard.d.ts.map +1 -1
  301. package/build/utils/guard.js +36 -32
  302. package/build/utils/guard.js.map +1 -1
  303. package/build/utils/handler/types.d.ts +26 -0
  304. package/build/utils/handler/types.d.ts.map +1 -0
  305. package/build/utils/handler/types.js +2 -0
  306. package/build/utils/handler/types.js.map +1 -0
  307. package/build/utils/handler.d.ts +6 -0
  308. package/build/utils/handler.d.ts.map +1 -0
  309. package/build/utils/handler.js +21 -0
  310. package/build/utils/handler.js.map +1 -0
  311. package/build/utils/index.d.ts +8 -0
  312. package/build/utils/index.d.ts.map +1 -1
  313. package/build/utils/index.js +3 -0
  314. package/build/utils/index.js.map +1 -1
  315. package/build/utils/request/types.d.ts +23 -0
  316. package/build/utils/request/types.d.ts.map +1 -0
  317. package/build/utils/request/types.js +2 -0
  318. package/build/utils/request/types.js.map +1 -0
  319. package/build/utils/request.d.ts +4 -0
  320. package/build/utils/request.d.ts.map +1 -0
  321. package/build/utils/request.js +27 -0
  322. package/build/utils/request.js.map +1 -0
  323. package/build/utils/scope.d.ts +17 -13
  324. package/build/utils/scope.d.ts.map +1 -1
  325. package/build/utils/scope.js +21 -35
  326. package/build/utils/scope.js.map +1 -1
  327. package/build/utils/types.d.ts +8 -0
  328. package/build/utils/types.d.ts.map +1 -0
  329. package/build/utils/types.js +2 -0
  330. package/build/utils/types.js.map +1 -0
  331. package/package.json +30 -22
  332. package/src/actions/apply-schema-request.ts +36 -0
  333. package/src/actions/commit.ts +7 -5
  334. package/src/actions/define-schemas.ts +34 -0
  335. package/src/actions/execute.ts +32 -34
  336. package/src/actions/execution/types.ts +34 -0
  337. package/src/actions/execution.ts +100 -0
  338. package/src/actions/get-card.ts +14 -0
  339. package/src/actions/get-specification.ts +14 -0
  340. package/src/actions/index.ts +13 -3
  341. package/src/actions/links.ts +8 -6
  342. package/src/actions/list-card-specifications.ts +15 -0
  343. package/src/actions/list-card-transitions.ts +15 -0
  344. package/src/actions/list-cards.ts +14 -0
  345. package/src/actions/list-schemas.ts +29 -0
  346. package/src/actions/list-specification-revisions.ts +15 -0
  347. package/src/actions/resources.ts +79 -0
  348. package/src/actions/summarize-cards.ts +15 -0
  349. package/src/actions/transitions.ts +6 -4
  350. package/src/actions/types.ts +5 -0
  351. package/src/actions/watch.ts +11 -7
  352. package/src/conformance/assert/types.ts +16 -0
  353. package/src/conformance/assert.ts +67 -0
  354. package/src/conformance/cases.ts +631 -0
  355. package/src/conformance/clock.ts +11 -0
  356. package/src/conformance/consts.ts +165 -0
  357. package/src/conformance/errors.ts +7 -0
  358. package/src/conformance/fixtures/types.ts +11 -0
  359. package/src/conformance/fixtures.ts +46 -0
  360. package/src/conformance/index.ts +14 -0
  361. package/src/conformance/resources.ts +227 -0
  362. package/src/conformance/types.ts +20 -0
  363. package/src/consts.ts +6 -0
  364. package/src/definitions.ts +264 -0
  365. package/src/executor/changes/types.ts +38 -0
  366. package/src/executor/changes.ts +49 -68
  367. package/src/executor/code/types.ts +23 -0
  368. package/src/executor/code.ts +62 -69
  369. package/src/executor/consts.local.ts +8 -0
  370. package/src/executor/creator/types.ts +33 -0
  371. package/src/executor/creator.ts +43 -0
  372. package/src/executor/resolve/types.ts +30 -0
  373. package/src/executor/resolve.ts +181 -139
  374. package/src/executor/types.ts +23 -0
  375. package/src/executor/validate.ts +40 -38
  376. package/src/executor.ts +33 -27
  377. package/src/facade.ts +132 -29
  378. package/src/helper.ts +12 -11
  379. package/src/hierarchy/types.ts +20 -0
  380. package/src/hierarchy.ts +113 -0
  381. package/src/index.ts +1 -0
  382. package/src/invariants/types.ts +6 -0
  383. package/src/invariants.ts +106 -0
  384. package/src/projection.ts +12 -18
  385. package/src/queue/consts.ts +5 -0
  386. package/src/queue/declare.ts +7 -0
  387. package/src/queue/index.ts +3 -25
  388. package/src/queue/types.ts +14 -0
  389. package/src/registry.ts +18 -36
  390. package/src/resources.ts +256 -0
  391. package/src/service.ts +16 -20
  392. package/src/store/commits.ts +5 -4
  393. package/src/store/composite.ts +7 -2
  394. package/src/store/consts.local.ts +1 -0
  395. package/src/store/fold/types.ts +44 -0
  396. package/src/store/fold.ts +214 -212
  397. package/src/store/index.ts +1 -0
  398. package/src/store/memory.ts +0 -0
  399. package/src/store/types.local.ts +3 -0
  400. package/src/store/types.ts +16 -1
  401. package/src/types.local.ts +7 -0
  402. package/src/types.ts +139 -6
  403. package/src/utils/access/types.ts +30 -0
  404. package/src/utils/access.ts +33 -0
  405. package/src/utils/guard/types.ts +21 -0
  406. package/src/utils/guard.ts +44 -31
  407. package/src/utils/handler/types.ts +28 -0
  408. package/src/utils/handler.ts +35 -0
  409. package/src/utils/index.ts +9 -0
  410. package/src/utils/request/types.ts +23 -0
  411. package/src/utils/request.ts +40 -0
  412. package/src/utils/scope.ts +39 -42
  413. package/src/utils/types.ts +8 -0
  414. package/tests/access.spec.ts +160 -0
  415. package/tests/app.spec.ts +112 -0
  416. package/tests/conformance.spec.ts +47 -0
  417. package/tests/create-example.spec.ts +202 -0
  418. package/tests/creator.spec.ts +257 -0
  419. package/tests/entrypoints.spec.ts +5 -0
  420. package/tests/memory-store.spec.ts +52 -0
  421. package/tests/narrowing.spec.ts +94 -0
  422. package/tests/plugins.spec.ts +4 -3
  423. package/tests/writes.spec.ts +140 -0
  424. package/build/actions/cards.d.ts +0 -16
  425. package/build/actions/cards.d.ts.map +0 -1
  426. package/build/actions/cards.js +0 -32
  427. package/build/actions/cards.js.map +0 -1
  428. package/build/actions/schemas.d.ts +0 -6
  429. package/build/actions/schemas.d.ts.map +0 -1
  430. package/build/actions/schemas.js +0 -9
  431. package/build/actions/schemas.js.map +0 -1
  432. package/build/actions/specs.d.ts +0 -10
  433. package/build/actions/specs.d.ts.map +0 -1
  434. package/build/actions/specs.js +0 -14
  435. package/build/actions/specs.js.map +0 -1
  436. package/src/actions/cards.ts +0 -52
  437. package/src/actions/schemas.ts +0 -15
  438. package/src/actions/specs.ts +0 -23
@@ -1,220 +1,212 @@
1
- import { applyRelationship, applyTransition, CommitState, isProject, PlanningUnsupported, TransitionAction, } from '@owlmeans/planning';
1
+ import { logger } from '@owlmeans/log';
2
+ import { applyHelper, cardHelper, CommitState, PlanningUnsupported, TransitionAction } from '@owlmeans/planning';
3
+ import { CONTENT_KEYS } from './consts.local.js';
4
+ const log = logger('planning:store');
2
5
  const isoNow = () => new Date().toISOString();
3
6
  const clean = (record) => Object.fromEntries(Object.entries(record).filter(([, value]) => value !== undefined));
4
7
  const errorText = (error) => error instanceof Error ? error.message : `${error}`;
5
- const safely = async (label, run) => {
6
- try {
7
- await run();
8
- }
9
- catch (error) {
10
- console.error(`planning: ${label} failed:`, error);
11
- }
12
- };
13
- /** The event a settled transition publishes. `record` is in-process only — strip it before a bus. */
14
- export const commitEventOf = (transition, state, at, extra) => clean({
15
- transition: transition.id,
16
- card: transition.card,
17
- entityId: transition.entityId,
18
- project: transition.project,
19
- kind: transition.kind,
20
- type: transition.type,
21
- seq: transition.seq,
22
- action: transition.action,
23
- state,
24
- at,
25
- error: extra?.error,
26
- record: extra?.record,
27
- });
28
- const bearsRelationships = (transition) => transition.action === TransitionAction.Link
29
- || transition.action === TransitionAction.Unlink
30
- || transition.action === TransitionAction.Delete
31
- || (transition.action === TransitionAction.Create && (transition.links?.length ?? 0) > 0);
32
- const foldRelationships = async (store, transition) => {
33
- const links = store.links;
34
- if (links == null || !bearsRelationships(transition)) {
35
- return;
36
- }
37
- const where = { entityId: transition.entityId };
38
- const [outgoing, incoming] = await Promise.all([
39
- links.list({ ...where, from: transition.card }, { size: 0 }),
40
- links.list({ ...where, to: transition.card }, { size: 0 }),
41
- ]);
42
- const before = [...new Map([...outgoing.items, ...incoming.items].map(link => [link.id, link])).values()];
43
- const after = applyRelationship(before, transition);
44
- const kept = new Set(after.filter(link => link.id != null).map(link => link.id));
45
- for (const link of before) {
46
- if (link.id != null && !kept.has(link.id)) {
47
- await links.drop({ entityId: transition.entityId, id: link.id });
8
+ export const createFoldHelper = () => {
9
+ const safely = async (label, run) => {
10
+ try {
11
+ await run();
48
12
  }
49
- }
50
- for (const link of after) {
51
- if (link.id == null) {
52
- await links.put(link);
13
+ catch (error) {
14
+ log.error('Planning store step failed', { step: label, error });
53
15
  }
54
- }
55
- };
56
- const writeFold = async (store, before, after, transition) => {
57
- if (transition.action === TransitionAction.Delete) {
58
- if (before != null && isProject(before)) {
59
- // A project takes everything under it, its own log included — the hub remembers the commit.
60
- await store.cards.purge(transition.card, transition.entityId);
16
+ };
17
+ const commitEventOf = (transition, state, at, extra) => clean({
18
+ transition: transition.id,
19
+ card: transition.card,
20
+ entityId: transition.entityId,
21
+ project: transition.project,
22
+ kind: transition.kind,
23
+ type: transition.type,
24
+ seq: transition.seq,
25
+ action: transition.action,
26
+ state,
27
+ at,
28
+ error: extra?.error,
29
+ record: extra?.record,
30
+ });
31
+ const bearsRelationships = (transition) => transition.action === TransitionAction.Link
32
+ || transition.action === TransitionAction.Unlink
33
+ || transition.action === TransitionAction.Delete
34
+ || (transition.action === TransitionAction.Create && (transition.links?.length ?? 0) > 0);
35
+ const foldRelationships = async (store, transition) => {
36
+ const links = store.links;
37
+ if (links == null || !bearsRelationships(transition)) {
61
38
  return;
62
39
  }
40
+ const where = { entityId: transition.entityId };
41
+ const [outgoing, incoming] = await Promise.all([
42
+ links.list({ ...where, from: transition.card }, { size: 0 }),
43
+ links.list({ ...where, to: transition.card }, { size: 0 }),
44
+ ]);
45
+ const before = [...new Map([...outgoing.items, ...incoming.items].map(link => [link.id, link])).values()];
46
+ const after = applyHelper.applyRelationship(before, transition);
47
+ const kept = new Set(after.filter(link => link.id != null).map(link => link.id));
48
+ for (const link of before) {
49
+ if (link.id != null && !kept.has(link.id)) {
50
+ await links.drop({ entityId: transition.entityId, id: link.id });
51
+ }
52
+ }
53
+ for (const link of after) {
54
+ if (link.id == null) {
55
+ await links.put(link);
56
+ }
57
+ }
58
+ };
59
+ const writeFold = async (store, before, after, transition) => {
60
+ await store.validateProjection?.(before, after, transition);
61
+ if (transition.action === TransitionAction.Delete) {
62
+ if (before != null && cardHelper.isProject(before)) {
63
+ // A project takes everything under it, its own log included — the hub remembers the commit.
64
+ await store.cards.purge(transition.card, transition.entityId);
65
+ return;
66
+ }
67
+ await foldRelationships(store, transition);
68
+ await store.cards.drop(transition.card, transition.entityId);
69
+ return;
70
+ }
71
+ if (after != null) {
72
+ await store.cards.put(after);
73
+ await store.projectReferences?.(after, transition);
74
+ }
63
75
  await foldRelationships(store, transition);
64
- await store.cards.drop(transition.card, transition.entityId);
65
- return;
66
- }
67
- if (after != null) {
68
- await store.cards.put(after);
69
- }
70
- await foldRelationships(store, transition);
71
- };
72
- /**
73
- * Fold every pending transition of one card — the projection body every store reuses.
74
- *
75
- * Transitions are read in `seq` order past the card's own `seq`, and only `pending` ones are
76
- * applied, each with `applyTransition` and nothing else. Per transition: write the record (a
77
- * `delete` drops it, a project `delete` purges everything under it), fold its relationships, mark
78
- * it `committed`, `publish` the event, then run `onCommitted` — so the `after` chain runs in THIS
79
- * process, exactly once per committed transition. A transition that cannot be folded is marked
80
- * `failed` with the reason and a failed event is published, and the fold goes PAST it: the card's
81
- * `seq` advances to the failed transition with every other value as it was, so the next
82
- * transition applies normally. Nothing is removed from the log. A create that fails leaves no card
83
- * to advance, so what follows it fails too; a store that refuses the advancing write itself stops
84
- * the fold there and reports `followUp`, leaving the rest pending for a retry.
85
- *
86
- * The caller owns single flight: two folds of one card running at once would both publish.
87
- *
88
- * @throws {PlanningUnsupported} for a store without a transition log
89
- */
90
- export const foldPending = async (store, cardId, entityId, opts = {}) => {
91
- const transitions = store.transitions;
92
- if (transitions == null) {
93
- throw new PlanningUnsupported(`fold:${store.alias ?? 'store'}`);
94
- }
95
- const now = opts.now ?? isoNow;
96
- let card = await store.cards.get(cardId, entityId);
97
- const listed = await transitions.list({ entityId, card: cardId, sinceSeq: card?.seq ?? 0, state: CommitState.Pending }, { sort: ['seq'], size: opts.limit ?? 0 });
98
- let folded = 0;
99
- let failed = 0;
100
- for (const transition of listed.items) {
101
- if (transition.commit.state !== CommitState.Pending || transition.id == null) {
102
- continue;
76
+ };
77
+ const foldPending = async (store, cardId, entityId, opts = {}) => {
78
+ const transitions = store.transitions;
79
+ if (transitions == null) {
80
+ throw new PlanningUnsupported(`fold:${store.alias ?? 'store'}`);
103
81
  }
104
- await opts.touch?.();
105
- const at = now();
106
- let next;
107
- try {
108
- next = applyTransition(card, transition);
109
- if (card != null && next === card) {
110
- // Already applied by another folder, which owns its commit and its event.
82
+ const now = opts.now ?? isoNow;
83
+ let card = await store.cards.get(cardId, entityId);
84
+ const listed = await transitions.list({ entityId, card: cardId, sinceSeq: card?.seq ?? 0, state: CommitState.Pending }, { sort: ['seq'], size: opts.limit ?? 0 });
85
+ let folded = 0;
86
+ let failed = 0;
87
+ for (const transition of listed.items) {
88
+ if (transition.commit.state !== CommitState.Pending || transition.id == null) {
111
89
  continue;
112
90
  }
113
- await writeFold(store, card, next, transition);
114
- }
115
- catch (error) {
116
- failed++;
117
- const message = errorText(error);
118
- if (card != null && transition.seq > card.seq) {
119
- // Fold PAST it: the record keeps its previous values and only its cursor moves, so the
120
- // next transition still applies. The card is re-written whole, which also undoes a write
121
- // that got half way before it threw.
122
- const skipped = { ...card, seq: transition.seq, head: Math.max(card.head ?? card.seq, transition.seq) };
123
- try {
124
- await store.cards.put(skipped);
125
- card = skipped;
91
+ await opts.touch?.();
92
+ const at = now();
93
+ let next;
94
+ try {
95
+ next = applyHelper.applyTransition(card, transition);
96
+ if (card != null && next === card) {
97
+ // Already applied by another folder, which owns its commit and its event.
98
+ continue;
126
99
  }
127
- catch (advance) {
128
- // The store itself refuses writes: leave the rest pending for a retry rather than
129
- // failing every later transition as out of order.
130
- console.error(`planning: cannot advance ${cardId} past failed seq ${transition.seq}:`, advance);
131
- await safely('commit failure', () => transitions.commit(transition.id, { state: CommitState.Failed, at, error: message }));
132
- await safely('publish', () => opts.publish?.(commitEventOf(transition, CommitState.Failed, at, { error: message })));
133
- return { card, folded, failed, followUp: true };
100
+ const before = card;
101
+ const after = next;
102
+ await (opts.unit != null
103
+ ? opts.unit(async () => { await writeFold(store, before, after, transition); })
104
+ : writeFold(store, before, after, transition));
105
+ }
106
+ catch (error) {
107
+ failed++;
108
+ const message = errorText(error);
109
+ if (card != null && transition.seq > card.seq) {
110
+ // Fold PAST it: the record keeps its previous values and only its cursor moves, so the
111
+ // next transition still applies. The card is re-written whole, which also undoes a write
112
+ // that got half way before it threw.
113
+ const skipped = { ...card, seq: transition.seq, head: Math.max(card.head ?? card.seq, transition.seq) };
114
+ try {
115
+ await store.cards.put(skipped);
116
+ card = skipped;
117
+ }
118
+ catch (advance) {
119
+ // The store itself refuses writes: leave the rest pending for a retry rather than
120
+ // failing every later transition as out of order.
121
+ log.error('Planning cannot advance a card past a failed transition', { cardId, seq: transition.seq, error: advance });
122
+ await safely('commit failure', () => transitions.commit(transition.id, { state: CommitState.Failed, at, error: message }));
123
+ await safely('publish', () => opts.publish?.(commitEventOf(transition, CommitState.Failed, at, { error: message })));
124
+ return { card, folded, failed, followUp: true };
125
+ }
134
126
  }
127
+ await safely('commit failure', () => transitions.commit(transition.id, { state: CommitState.Failed, at, error: message }));
128
+ const event = commitEventOf(transition, CommitState.Failed, at, { error: message });
129
+ await safely('publish', () => opts.publish?.(event));
130
+ continue;
135
131
  }
136
- await safely('commit failure', () => transitions.commit(transition.id, { state: CommitState.Failed, at, error: message }));
137
- const event = commitEventOf(transition, CommitState.Failed, at, { error: message });
132
+ card = next;
133
+ folded++;
134
+ await safely('commit', () => transitions.commit(transition.id, { state: CommitState.Committed, at }));
135
+ const event = commitEventOf(transition, CommitState.Committed, at, { record: next });
138
136
  await safely('publish', () => opts.publish?.(event));
139
- continue;
137
+ await safely('onCommitted', () => opts.onCommitted?.(event));
140
138
  }
141
- card = next;
142
- folded++;
143
- await safely('commit', () => transitions.commit(transition.id, { state: CommitState.Committed, at }));
144
- const event = commitEventOf(transition, CommitState.Committed, at, { record: next });
145
- await safely('publish', () => opts.publish?.(event));
146
- await safely('onCommitted', () => opts.onCommitted?.(event));
147
- }
148
- return { card, folded, failed, followUp: listed.total > listed.items.length };
149
- };
150
- /**
151
- * Mark every pending transition of a card `failed` and publish a failed event for each — what a
152
- * queued store does when its projection job is dead, or waiters hang until their timeout.
153
- */
154
- export const failPending = async (store, cardId, entityId, reason, opts = {}) => {
155
- const transitions = store.transitions;
156
- if (transitions == null) {
157
- return 0;
158
- }
159
- const at = (opts.now ?? isoNow)();
160
- const pending = await transitions.list({ entityId, card: cardId, state: CommitState.Pending }, { sort: ['seq'], size: 0 });
161
- for (const transition of pending.items) {
162
- if (transition.id == null) {
163
- continue;
139
+ return { card, folded, failed, followUp: listed.total > listed.items.length };
140
+ };
141
+ const failPending = async (store, cardId, entityId, reason, opts = {}) => {
142
+ const transitions = store.transitions;
143
+ if (transitions == null) {
144
+ return 0;
164
145
  }
165
- await transitions.commit(transition.id, { state: CommitState.Failed, at, error: reason });
166
- const event = commitEventOf(transition, CommitState.Failed, at, { error: reason });
167
- await safely('publish', () => opts.publish?.(event));
168
- }
169
- return pending.items.length;
170
- };
171
- const CONTENT_KEYS = ['body', 'ref', 'format', 'version'];
172
- /**
173
- * A specification's history, replayed from its log: one entry per create and per committed
174
- * content change, newest first. The fold is `applyTransition` itself, so an entry's `body` is the
175
- * body AT that revision even when the transition changed only `ref`.
176
- */
177
- export const revisionsFromLog = (log, limit) => {
178
- const ordered = log.filter(transition => transition.commit.state !== CommitState.Pending)
179
- .sort((left, right) => left.seq - right.seq);
180
- const entries = [];
181
- let state = null;
182
- for (const transition of ordered) {
183
- if (transition.commit.state === CommitState.Failed) {
184
- // The fold went past it; so does the replay.
185
- if (state != null && transition.seq > state.seq) {
186
- state = { ...state, seq: transition.seq };
146
+ const at = (opts.now ?? isoNow)();
147
+ const pending = await transitions.list({ entityId, card: cardId, state: CommitState.Pending }, { sort: ['seq'], size: 0 });
148
+ for (const transition of pending.items) {
149
+ if (transition.id == null) {
150
+ continue;
187
151
  }
188
- continue;
189
- }
190
- try {
191
- state = applyTransition(state, transition);
192
- }
193
- catch {
194
- break;
195
- }
196
- if (state == null) {
197
- break;
152
+ await transitions.commit(transition.id, { state: CommitState.Failed, at, error: reason });
153
+ const event = commitEventOf(transition, CommitState.Failed, at, { error: reason });
154
+ await safely('publish', () => opts.publish?.(event));
198
155
  }
199
- const changed = transition.action === TransitionAction.Create
200
- || CONTENT_KEYS.some(key => transition.changes[key] !== undefined
201
- || transition.unset?.includes(key) === true);
202
- if (!changed) {
203
- continue;
156
+ return pending.items.length;
157
+ };
158
+ const revisionsFromLog = (log, limit) => {
159
+ const ordered = log.filter(transition => transition.commit.state !== CommitState.Pending)
160
+ .sort((left, right) => left.seq - right.seq);
161
+ const entries = [];
162
+ let state = null;
163
+ for (const transition of ordered) {
164
+ if (transition.commit.state === CommitState.Failed) {
165
+ // The fold went past it; so does the replay.
166
+ if (state != null && transition.seq > state.seq) {
167
+ state = { ...state, seq: transition.seq };
168
+ }
169
+ continue;
170
+ }
171
+ try {
172
+ state = applyHelper.applyTransition(state, transition);
173
+ }
174
+ catch {
175
+ break;
176
+ }
177
+ if (state == null) {
178
+ break;
179
+ }
180
+ const changed = transition.action === TransitionAction.Create
181
+ || CONTENT_KEYS.some(key => transition.changes[key] !== undefined
182
+ || transition.unset?.includes(key) === true);
183
+ if (!changed) {
184
+ continue;
185
+ }
186
+ const spec = state;
187
+ entries.push(clean({
188
+ revision: spec.revision ?? entries.length + 1,
189
+ body: spec.body,
190
+ ref: spec.ref,
191
+ bodyChars: spec.bodyChars,
192
+ version: spec.version,
193
+ at: transition.at,
194
+ by: transition.actor,
195
+ transition: transition.id,
196
+ }));
204
197
  }
205
- const spec = state;
206
- entries.push(clean({
207
- revision: spec.revision ?? entries.length + 1,
208
- body: spec.body,
209
- ref: spec.ref,
210
- bodyChars: spec.bodyChars,
211
- version: spec.version,
212
- at: transition.at,
213
- by: transition.actor,
214
- transition: transition.id,
215
- }));
216
- }
217
- const newest = entries.reverse();
218
- return limit != null && limit > 0 ? newest.slice(0, limit) : newest;
198
+ const newest = entries.reverse();
199
+ return limit != null && limit > 0 ? newest.slice(0, limit) : newest;
200
+ };
201
+ return { commitEventOf, foldPending, failPending, revisionsFromLog };
219
202
  };
203
+ export const foldHelper = createFoldHelper();
204
+ /** @deprecated compat:factory-refactor — use `foldHelper.commitEventOf(…)` */
205
+ export const commitEventOf = (transition, state, at, extra) => foldHelper.commitEventOf(transition, state, at, extra);
206
+ /** @deprecated compat:factory-refactor — use `foldHelper.foldPending(…)` */
207
+ export const foldPending = async (store, cardId, entityId, opts = {}) => await foldHelper.foldPending(store, cardId, entityId, opts);
208
+ /** @deprecated compat:factory-refactor — use `foldHelper.failPending(…)` */
209
+ export const failPending = async (store, cardId, entityId, reason, opts = {}) => await foldHelper.failPending(store, cardId, entityId, reason, opts);
210
+ /** @deprecated compat:factory-refactor — use `foldHelper.revisionsFromLog(…)` */
211
+ export const revisionsFromLog = (log, limit) => foldHelper.revisionsFromLog(log, limit);
220
212
  //# sourceMappingURL=fold.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fold.js","sourceRoot":"","sources":["../../src/store/fold.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fold.js","sourceRoot":"","sources":["../../src/store/fold.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export type * from './types.js';
2
+ export type * from './fold/types.js';
2
3
  export * from './commits.js';
3
4
  export * from './composite.js';
4
5
  export * from './fold.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAE/B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,YAAY,CAAA;AAC/B,mBAAmB,iBAAiB,CAAA;AAEpC,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAEA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/store/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,WAAW,CAAA;AACzB,cAAc,aAAa,CAAA"}
@@ -1,4 +1,12 @@
1
+ import type { Workcard } from '@owlmeans/planning';
2
+ import type { Criteria } from '@owlmeans/resource';
1
3
  import type { MemoryPlanningStore, MemoryPlanningStoreOptions } from './types.js';
4
+ /**
5
+ * Does a card criteria ask for specifications? A card list leaves them out unless the criteria
6
+ * names `kind: specification` (alone, in a list, or under `$in`/`$eq`) or a `category` — the rule
7
+ * every store routes a list by, whether specifications live apart or in the cards' own table.
8
+ */
9
+ export declare const wantsSpecifications: (where?: Criteria<Workcard>) => boolean;
2
10
  /**
3
11
  * The reference `PlanningStore`, entirely in process memory.
4
12
  *
@@ -12,6 +20,10 @@ import type { MemoryPlanningStore, MemoryPlanningStoreOptions } from './types.js
12
20
  * The service binds `committed` through `bind`, which REPLACES `onCommitted`: one listener per
13
21
  * store, so a commit runs the `after` chain once.
14
22
  *
23
+ * `schemas: true` adds the data-defined schema port: records keyed by layer, a revision per
24
+ * organization bumped on every write, and `watch` listeners called synchronously. A purged project
25
+ * takes its schema layer with it. A dropped card takes its own documents with it.
26
+ *
15
27
  * It is wrong for anything with more than one process or a restart: the log, the cards and the
16
28
  * commit feed are all this process's heap.
17
29
  */
@@ -1 +1 @@
1
- {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAkB,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AA0BjG;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,uBAAuB,UAAU,0BAA0B,KAAQ,mBA8X/E,CAAA"}
1
+ {"version":3,"file":"memory.d.ts","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAIoB,QAAQ,EACvC,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAIlD,OAAO,KAAK,EAAkB,mBAAmB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAA;AAWjG;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,WAAY,QAAQ,CAAC,QAAQ,CAAC,KAAG,OAgBhE,CAAA;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,uBAAuB,UAAU,0BAA0B,KAAQ,mBA8hB/E,CAAA"}
Binary file
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/store/memory.ts"],"names":[],"mappings":"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"}