@superbee/core 0.2.0-pre.2 → 0.2.0-pre.20

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 (517) hide show
  1. package/README.md +1000 -0
  2. package/dist/artifact-contract.d.ts +90 -0
  3. package/dist/artifact-contract.d.ts.map +1 -0
  4. package/dist/artifact-contract.js +205 -0
  5. package/dist/artifact-contract.js.map +1 -0
  6. package/dist/backend.d.ts +19 -1
  7. package/dist/backend.d.ts.map +1 -1
  8. package/dist/backend.js +83 -36
  9. package/dist/backend.js.map +1 -1
  10. package/dist/blob-contract.d.ts +80 -0
  11. package/dist/blob-contract.d.ts.map +1 -0
  12. package/dist/blob-contract.js +131 -0
  13. package/dist/blob-contract.js.map +1 -0
  14. package/dist/blob-journal.d.ts +302 -0
  15. package/dist/blob-journal.d.ts.map +1 -0
  16. package/dist/blob-journal.js +540 -0
  17. package/dist/blob-journal.js.map +1 -0
  18. package/dist/body-replace-guards.d.ts +50 -0
  19. package/dist/body-replace-guards.d.ts.map +1 -0
  20. package/dist/body-replace-guards.js +158 -0
  21. package/dist/body-replace-guards.js.map +1 -0
  22. package/dist/builtin-recipes/content.d.ts +93 -0
  23. package/dist/builtin-recipes/content.d.ts.map +1 -0
  24. package/dist/builtin-recipes/content.js +288 -0
  25. package/dist/builtin-recipes/content.js.map +1 -0
  26. package/dist/builtin-recipes.d.ts +10 -0
  27. package/dist/builtin-recipes.d.ts.map +1 -0
  28. package/dist/builtin-recipes.js +97 -0
  29. package/dist/builtin-recipes.js.map +1 -0
  30. package/dist/bundle-health/index.d.ts +14 -0
  31. package/dist/bundle-health/index.d.ts.map +1 -0
  32. package/dist/bundle-health/index.js +12 -0
  33. package/dist/bundle-health/index.js.map +1 -0
  34. package/dist/bundle-health/kind-findings.d.ts +44 -0
  35. package/dist/bundle-health/kind-findings.d.ts.map +1 -0
  36. package/dist/bundle-health/kind-findings.js +68 -0
  37. package/dist/bundle-health/kind-findings.js.map +1 -0
  38. package/dist/bundle-health/legacy-page.d.ts +39 -0
  39. package/dist/bundle-health/legacy-page.d.ts.map +1 -0
  40. package/dist/bundle-health/legacy-page.js +50 -0
  41. package/dist/bundle-health/legacy-page.js.map +1 -0
  42. package/dist/bundle-health/report.d.ts +202 -0
  43. package/dist/bundle-health/report.d.ts.map +1 -0
  44. package/dist/bundle-health/report.js +438 -0
  45. package/dist/bundle-health/report.js.map +1 -0
  46. package/dist/bundle-ops.d.ts +1 -1
  47. package/dist/bundle-ops.d.ts.map +1 -1
  48. package/dist/bundle-ops.js +2 -2
  49. package/dist/bundle-ops.js.map +1 -1
  50. package/dist/bundle.d.ts +2 -1
  51. package/dist/bundle.d.ts.map +1 -1
  52. package/dist/bundle.js +3 -3
  53. package/dist/bundle.js.map +1 -1
  54. package/dist/code-point-order.d.ts +8 -0
  55. package/dist/code-point-order.d.ts.map +1 -0
  56. package/dist/code-point-order.js +20 -0
  57. package/dist/code-point-order.js.map +1 -0
  58. package/dist/connectors.d.ts +230 -0
  59. package/dist/connectors.d.ts.map +1 -0
  60. package/dist/connectors.js +1150 -0
  61. package/dist/connectors.js.map +1 -0
  62. package/dist/cross-bundle.d.ts +135 -0
  63. package/dist/cross-bundle.d.ts.map +1 -0
  64. package/dist/cross-bundle.js +186 -0
  65. package/dist/cross-bundle.js.map +1 -0
  66. package/dist/dependencies.d.ts +94 -0
  67. package/dist/dependencies.d.ts.map +1 -0
  68. package/dist/dependencies.js +180 -0
  69. package/dist/dependencies.js.map +1 -0
  70. package/dist/document-codec.d.ts +6 -1
  71. package/dist/document-codec.d.ts.map +1 -1
  72. package/dist/document-codec.js +8 -4
  73. package/dist/document-codec.js.map +1 -1
  74. package/dist/document-field-actions.d.ts +31 -1
  75. package/dist/document-field-actions.d.ts.map +1 -1
  76. package/dist/document-field-actions.js +137 -34
  77. package/dist/document-field-actions.js.map +1 -1
  78. package/dist/document-mutation.d.ts +22 -10
  79. package/dist/document-mutation.d.ts.map +1 -1
  80. package/dist/document-mutation.js +58 -27
  81. package/dist/document-mutation.js.map +1 -1
  82. package/dist/document-write-policy.d.ts.map +1 -1
  83. package/dist/document-write-policy.js +4 -2
  84. package/dist/document-write-policy.js.map +1 -1
  85. package/dist/engine.d.ts +9 -2
  86. package/dist/engine.d.ts.map +1 -1
  87. package/dist/engine.js +11 -4
  88. package/dist/engine.js.map +1 -1
  89. package/dist/file-journaled-backend-internal.d.ts +21 -0
  90. package/dist/file-journaled-backend-internal.d.ts.map +1 -0
  91. package/dist/file-journaled-backend-internal.js +12 -0
  92. package/dist/file-journaled-backend-internal.js.map +1 -0
  93. package/dist/file-journaled-backend.d.ts +200 -0
  94. package/dist/file-journaled-backend.d.ts.map +1 -0
  95. package/dist/file-journaled-backend.js +1334 -0
  96. package/dist/file-journaled-backend.js.map +1 -0
  97. package/dist/filesystem-host.d.ts +15 -0
  98. package/dist/filesystem-host.d.ts.map +1 -0
  99. package/dist/filesystem-host.js +20 -0
  100. package/dist/filesystem-host.js.map +1 -0
  101. package/dist/filesystem-identity.d.ts +86 -4
  102. package/dist/filesystem-identity.d.ts.map +1 -1
  103. package/dist/filesystem-identity.js +338 -102
  104. package/dist/filesystem-identity.js.map +1 -1
  105. package/dist/filesystem-lock.d.ts +16 -3
  106. package/dist/filesystem-lock.d.ts.map +1 -1
  107. package/dist/filesystem-lock.js +323 -77
  108. package/dist/filesystem-lock.js.map +1 -1
  109. package/dist/filesystem-push-role.d.ts +77 -0
  110. package/dist/filesystem-push-role.d.ts.map +1 -0
  111. package/dist/filesystem-push-role.js +165 -0
  112. package/dist/filesystem-push-role.js.map +1 -0
  113. package/dist/filesystem.d.ts +17 -0
  114. package/dist/filesystem.d.ts.map +1 -0
  115. package/dist/filesystem.js +18 -0
  116. package/dist/filesystem.js.map +1 -0
  117. package/dist/frontmatter.d.ts +8 -0
  118. package/dist/frontmatter.d.ts.map +1 -1
  119. package/dist/frontmatter.js +14 -4
  120. package/dist/frontmatter.js.map +1 -1
  121. package/dist/governed-body-write.d.ts +106 -0
  122. package/dist/governed-body-write.d.ts.map +1 -0
  123. package/dist/governed-body-write.js +251 -0
  124. package/dist/governed-body-write.js.map +1 -0
  125. package/dist/host-policy-snapshot.d.ts +9 -0
  126. package/dist/host-policy-snapshot.d.ts.map +1 -0
  127. package/dist/host-policy-snapshot.js +33 -0
  128. package/dist/host-policy-snapshot.js.map +1 -0
  129. package/dist/host-text.d.ts +31 -0
  130. package/dist/host-text.d.ts.map +1 -0
  131. package/dist/host-text.js +77 -0
  132. package/dist/host-text.js.map +1 -0
  133. package/dist/hosted-client/binding.d.ts +7 -0
  134. package/dist/hosted-client/binding.d.ts.map +1 -0
  135. package/dist/hosted-client/binding.js +10 -0
  136. package/dist/hosted-client/binding.js.map +1 -0
  137. package/dist/hosted-client/blob-delivery.d.ts +67 -0
  138. package/dist/hosted-client/blob-delivery.d.ts.map +1 -0
  139. package/dist/hosted-client/blob-delivery.js +169 -0
  140. package/dist/hosted-client/blob-delivery.js.map +1 -0
  141. package/dist/hosted-client/blob-write.d.ts +386 -0
  142. package/dist/hosted-client/blob-write.d.ts.map +1 -0
  143. package/dist/hosted-client/blob-write.js +770 -0
  144. package/dist/hosted-client/blob-write.js.map +1 -0
  145. package/dist/hosted-client/bundle-listing.d.ts +46 -0
  146. package/dist/hosted-client/bundle-listing.d.ts.map +1 -0
  147. package/dist/hosted-client/bundle-listing.js +36 -0
  148. package/dist/hosted-client/bundle-listing.js.map +1 -0
  149. package/dist/hosted-client/client.d.ts +219 -0
  150. package/dist/hosted-client/client.d.ts.map +1 -0
  151. package/dist/hosted-client/client.js +309 -0
  152. package/dist/hosted-client/client.js.map +1 -0
  153. package/dist/hosted-client/directory.d.ts +46 -0
  154. package/dist/hosted-client/directory.d.ts.map +1 -0
  155. package/dist/hosted-client/directory.js +74 -0
  156. package/dist/hosted-client/directory.js.map +1 -0
  157. package/dist/hosted-client/errors.d.ts +26 -0
  158. package/dist/hosted-client/errors.d.ts.map +1 -0
  159. package/dist/hosted-client/errors.js +35 -0
  160. package/dist/hosted-client/errors.js.map +1 -0
  161. package/dist/hosted-client/inbox.d.ts +320 -0
  162. package/dist/hosted-client/inbox.d.ts.map +1 -0
  163. package/dist/hosted-client/inbox.js +379 -0
  164. package/dist/hosted-client/inbox.js.map +1 -0
  165. package/dist/hosted-client/index.d.ts +30 -0
  166. package/dist/hosted-client/index.d.ts.map +1 -0
  167. package/dist/hosted-client/index.js +32 -0
  168. package/dist/hosted-client/index.js.map +1 -0
  169. package/dist/hosted-client/journal.d.ts +103 -0
  170. package/dist/hosted-client/journal.d.ts.map +1 -0
  171. package/dist/hosted-client/journal.js +464 -0
  172. package/dist/hosted-client/journal.js.map +1 -0
  173. package/dist/hosted-client/node.d.ts +74 -0
  174. package/dist/hosted-client/node.d.ts.map +1 -0
  175. package/dist/hosted-client/node.js +219 -0
  176. package/dist/hosted-client/node.js.map +1 -0
  177. package/dist/hosted-client/reference.d.ts +12 -0
  178. package/dist/hosted-client/reference.d.ts.map +1 -0
  179. package/dist/hosted-client/reference.js +29 -0
  180. package/dist/hosted-client/reference.js.map +1 -0
  181. package/dist/hosted-client/write.d.ts +217 -0
  182. package/dist/hosted-client/write.d.ts.map +1 -0
  183. package/dist/hosted-client/write.js +418 -0
  184. package/dist/hosted-client/write.js.map +1 -0
  185. package/dist/hosted-transport/answer-rows.d.ts +243 -0
  186. package/dist/hosted-transport/answer-rows.d.ts.map +1 -0
  187. package/dist/hosted-transport/answer-rows.js +454 -0
  188. package/dist/hosted-transport/answer-rows.js.map +1 -0
  189. package/dist/hosted-transport/blob-reads.d.ts +35 -0
  190. package/dist/hosted-transport/blob-reads.d.ts.map +1 -0
  191. package/dist/hosted-transport/blob-reads.js +179 -0
  192. package/dist/hosted-transport/blob-reads.js.map +1 -0
  193. package/dist/hosted-transport/blob-write.d.ts +34 -0
  194. package/dist/hosted-transport/blob-write.d.ts.map +1 -0
  195. package/dist/hosted-transport/blob-write.js +115 -0
  196. package/dist/hosted-transport/blob-write.js.map +1 -0
  197. package/dist/hosted-transport/carrier.d.ts +151 -0
  198. package/dist/hosted-transport/carrier.d.ts.map +1 -0
  199. package/dist/hosted-transport/carrier.js +260 -0
  200. package/dist/hosted-transport/carrier.js.map +1 -0
  201. package/dist/hosted-transport/history-pages.d.ts +55 -0
  202. package/dist/hosted-transport/history-pages.d.ts.map +1 -0
  203. package/dist/hosted-transport/history-pages.js +69 -0
  204. package/dist/hosted-transport/history-pages.js.map +1 -0
  205. package/dist/hosted-transport/index.d.ts +18 -0
  206. package/dist/hosted-transport/index.d.ts.map +1 -0
  207. package/dist/hosted-transport/index.js +18 -0
  208. package/dist/hosted-transport/index.js.map +1 -0
  209. package/dist/hosted-transport/operations.d.ts +85 -0
  210. package/dist/hosted-transport/operations.d.ts.map +1 -0
  211. package/dist/hosted-transport/operations.js +128 -0
  212. package/dist/hosted-transport/operations.js.map +1 -0
  213. package/dist/hosted-transport/paged-reads.d.ts +87 -0
  214. package/dist/hosted-transport/paged-reads.d.ts.map +1 -0
  215. package/dist/hosted-transport/paged-reads.js +238 -0
  216. package/dist/hosted-transport/paged-reads.js.map +1 -0
  217. package/dist/hosted-transport/read-adapter.d.ts +256 -0
  218. package/dist/hosted-transport/read-adapter.d.ts.map +1 -0
  219. package/dist/hosted-transport/read-adapter.js +568 -0
  220. package/dist/hosted-transport/read-adapter.js.map +1 -0
  221. package/dist/hosted-transport/root-write.d.ts +114 -0
  222. package/dist/hosted-transport/root-write.d.ts.map +1 -0
  223. package/dist/hosted-transport/root-write.js +171 -0
  224. package/dist/hosted-transport/root-write.js.map +1 -0
  225. package/dist/hosted-transport/whole-document-transport.d.ts +204 -0
  226. package/dist/hosted-transport/whole-document-transport.d.ts.map +1 -0
  227. package/dist/hosted-transport/whole-document-transport.js +447 -0
  228. package/dist/hosted-transport/whole-document-transport.js.map +1 -0
  229. package/dist/index.d.ts +34 -10
  230. package/dist/index.d.ts.map +1 -1
  231. package/dist/index.js +26 -8
  232. package/dist/index.js.map +1 -1
  233. package/dist/indexeddb-backend.d.ts +28 -6
  234. package/dist/indexeddb-backend.d.ts.map +1 -1
  235. package/dist/indexeddb-backend.js +471 -92
  236. package/dist/indexeddb-backend.js.map +1 -1
  237. package/dist/journaled-backend.d.ts +247 -10
  238. package/dist/journaled-backend.d.ts.map +1 -1
  239. package/dist/journaled-backend.js +302 -1
  240. package/dist/journaled-backend.js.map +1 -1
  241. package/dist/kind-authoring.d.ts +170 -0
  242. package/dist/kind-authoring.d.ts.map +1 -0
  243. package/dist/kind-authoring.js +451 -0
  244. package/dist/kind-authoring.js.map +1 -0
  245. package/dist/kind-conformance-error.d.ts +15 -0
  246. package/dist/kind-conformance-error.d.ts.map +1 -0
  247. package/dist/kind-conformance-error.js +20 -0
  248. package/dist/kind-conformance-error.js.map +1 -0
  249. package/dist/kind-coverage.d.ts +99 -0
  250. package/dist/kind-coverage.d.ts.map +1 -0
  251. package/dist/kind-coverage.js +186 -0
  252. package/dist/kind-coverage.js.map +1 -0
  253. package/dist/kind-field-mutation.d.ts +4 -0
  254. package/dist/kind-field-mutation.d.ts.map +1 -1
  255. package/dist/kind-field-mutation.js +28 -3
  256. package/dist/kind-field-mutation.js.map +1 -1
  257. package/dist/kinds-load.js +4 -4
  258. package/dist/kinds-load.js.map +1 -1
  259. package/dist/kinds.d.ts +65 -2
  260. package/dist/kinds.d.ts.map +1 -1
  261. package/dist/kinds.js +341 -21
  262. package/dist/kinds.js.map +1 -1
  263. package/dist/link-types.d.ts +26 -0
  264. package/dist/link-types.d.ts.map +1 -0
  265. package/dist/link-types.js +57 -0
  266. package/dist/link-types.js.map +1 -0
  267. package/dist/links.d.ts +21 -3
  268. package/dist/links.d.ts.map +1 -1
  269. package/dist/links.js +213 -14
  270. package/dist/links.js.map +1 -1
  271. package/dist/managed-document-metadata.d.ts +2 -0
  272. package/dist/managed-document-metadata.d.ts.map +1 -0
  273. package/dist/managed-document-metadata.js +9 -0
  274. package/dist/managed-document-metadata.js.map +1 -0
  275. package/dist/memory-backend.d.ts +2 -2
  276. package/dist/memory-backend.d.ts.map +1 -1
  277. package/dist/memory-backend.js +26 -11
  278. package/dist/memory-backend.js.map +1 -1
  279. package/dist/paths.d.ts +16 -0
  280. package/dist/paths.d.ts.map +1 -1
  281. package/dist/paths.js +25 -0
  282. package/dist/paths.js.map +1 -1
  283. package/dist/platform.d.ts +13 -2
  284. package/dist/platform.d.ts.map +1 -1
  285. package/dist/platform.js +16 -0
  286. package/dist/platform.js.map +1 -1
  287. package/dist/portable-export.d.ts +119 -0
  288. package/dist/portable-export.d.ts.map +1 -0
  289. package/dist/portable-export.js +501 -0
  290. package/dist/portable-export.js.map +1 -0
  291. package/dist/publication-filesystem.d.ts +1 -1
  292. package/dist/publication-filesystem.d.ts.map +1 -1
  293. package/dist/publication-filesystem.js +1 -1
  294. package/dist/publication-filesystem.js.map +1 -1
  295. package/dist/qualified-links.d.ts +67 -0
  296. package/dist/qualified-links.d.ts.map +1 -0
  297. package/dist/qualified-links.js +117 -0
  298. package/dist/qualified-links.js.map +1 -0
  299. package/dist/query-filter.d.ts +16 -2
  300. package/dist/query-filter.d.ts.map +1 -1
  301. package/dist/query-filter.js +40 -1
  302. package/dist/query-filter.js.map +1 -1
  303. package/dist/query-order.d.ts +22 -0
  304. package/dist/query-order.d.ts.map +1 -0
  305. package/dist/query-order.js +42 -0
  306. package/dist/query-order.js.map +1 -0
  307. package/dist/recipe-lifecycle/errors.d.ts +94 -0
  308. package/dist/recipe-lifecycle/errors.d.ts.map +1 -0
  309. package/dist/recipe-lifecycle/errors.js +122 -0
  310. package/dist/recipe-lifecycle/errors.js.map +1 -0
  311. package/dist/recipe-lifecycle/evolution.d.ts +75 -0
  312. package/dist/recipe-lifecycle/evolution.d.ts.map +1 -0
  313. package/dist/recipe-lifecycle/evolution.js +789 -0
  314. package/dist/recipe-lifecycle/evolution.js.map +1 -0
  315. package/dist/recipe-lifecycle/index.d.ts +24 -0
  316. package/dist/recipe-lifecycle/index.d.ts.map +1 -0
  317. package/dist/recipe-lifecycle/index.js +20 -0
  318. package/dist/recipe-lifecycle/index.js.map +1 -0
  319. package/dist/recipe-lifecycle/install.d.ts +126 -0
  320. package/dist/recipe-lifecycle/install.d.ts.map +1 -0
  321. package/dist/recipe-lifecycle/install.js +511 -0
  322. package/dist/recipe-lifecycle/install.js.map +1 -0
  323. package/dist/recipe-lifecycle/legacy-aliases.d.ts +16 -0
  324. package/dist/recipe-lifecycle/legacy-aliases.d.ts.map +1 -0
  325. package/dist/recipe-lifecycle/legacy-aliases.js +51 -0
  326. package/dist/recipe-lifecycle/legacy-aliases.js.map +1 -0
  327. package/dist/recipe-lifecycle/stamp.d.ts +136 -0
  328. package/dist/recipe-lifecycle/stamp.d.ts.map +1 -0
  329. package/dist/recipe-lifecycle/stamp.js +326 -0
  330. package/dist/recipe-lifecycle/stamp.js.map +1 -0
  331. package/dist/recipes.d.ts +29 -1
  332. package/dist/recipes.d.ts.map +1 -1
  333. package/dist/recipes.js +137 -1
  334. package/dist/recipes.js.map +1 -1
  335. package/dist/record-overlay/apply.d.ts +43 -0
  336. package/dist/record-overlay/apply.d.ts.map +1 -0
  337. package/dist/record-overlay/apply.js +527 -0
  338. package/dist/record-overlay/apply.js.map +1 -0
  339. package/dist/record-overlay/canonical.d.ts +22 -0
  340. package/dist/record-overlay/canonical.d.ts.map +1 -0
  341. package/dist/record-overlay/canonical.js +47 -0
  342. package/dist/record-overlay/canonical.js.map +1 -0
  343. package/dist/record-overlay/digest.d.ts +4 -0
  344. package/dist/record-overlay/digest.d.ts.map +1 -0
  345. package/dist/record-overlay/digest.js +11 -0
  346. package/dist/record-overlay/digest.js.map +1 -0
  347. package/dist/record-overlay/errors.d.ts +44 -0
  348. package/dist/record-overlay/errors.d.ts.map +1 -0
  349. package/dist/record-overlay/errors.js +55 -0
  350. package/dist/record-overlay/errors.js.map +1 -0
  351. package/dist/record-overlay/findings.d.ts +5 -0
  352. package/dist/record-overlay/findings.d.ts.map +1 -0
  353. package/dist/record-overlay/findings.js +83 -0
  354. package/dist/record-overlay/findings.js.map +1 -0
  355. package/dist/record-overlay/index.d.ts +23 -0
  356. package/dist/record-overlay/index.d.ts.map +1 -0
  357. package/dist/record-overlay/index.js +21 -0
  358. package/dist/record-overlay/index.js.map +1 -0
  359. package/dist/record-overlay/plan.d.ts +12 -0
  360. package/dist/record-overlay/plan.d.ts.map +1 -0
  361. package/dist/record-overlay/plan.js +285 -0
  362. package/dist/record-overlay/plan.js.map +1 -0
  363. package/dist/record-overlay/policy.d.ts +69 -0
  364. package/dist/record-overlay/policy.d.ts.map +1 -0
  365. package/dist/record-overlay/policy.js +228 -0
  366. package/dist/record-overlay/policy.js.map +1 -0
  367. package/dist/record-overlay/redact.d.ts +3 -0
  368. package/dist/record-overlay/redact.d.ts.map +1 -0
  369. package/dist/record-overlay/redact.js +27 -0
  370. package/dist/record-overlay/redact.js.map +1 -0
  371. package/dist/record-overlay/signal-kind.d.ts +30 -0
  372. package/dist/record-overlay/signal-kind.d.ts.map +1 -0
  373. package/dist/record-overlay/signal-kind.js +38 -0
  374. package/dist/record-overlay/signal-kind.js.map +1 -0
  375. package/dist/record-overlay/signal-text.d.ts +45 -0
  376. package/dist/record-overlay/signal-text.d.ts.map +1 -0
  377. package/dist/record-overlay/signal-text.js +116 -0
  378. package/dist/record-overlay/signal-text.js.map +1 -0
  379. package/dist/record-overlay/source-index.d.ts +19 -0
  380. package/dist/record-overlay/source-index.d.ts.map +1 -0
  381. package/dist/record-overlay/source-index.js +102 -0
  382. package/dist/record-overlay/source-index.js.map +1 -0
  383. package/dist/record-overlay/types.d.ts +291 -0
  384. package/dist/record-overlay/types.d.ts.map +1 -0
  385. package/dist/record-overlay/types.js +2 -0
  386. package/dist/record-overlay/types.js.map +1 -0
  387. package/dist/remote-backend.d.ts +67 -67
  388. package/dist/remote-backend.d.ts.map +1 -1
  389. package/dist/remote-backend.js +169 -201
  390. package/dist/remote-backend.js.map +1 -1
  391. package/dist/remote-document-codec.d.ts +15 -0
  392. package/dist/remote-document-codec.d.ts.map +1 -0
  393. package/dist/remote-document-codec.js +103 -0
  394. package/dist/remote-document-codec.js.map +1 -0
  395. package/dist/remote-error.d.ts +38 -0
  396. package/dist/remote-error.d.ts.map +1 -0
  397. package/dist/remote-error.js +59 -0
  398. package/dist/remote-error.js.map +1 -0
  399. package/dist/remote-operations.d.ts +6 -3
  400. package/dist/remote-operations.d.ts.map +1 -1
  401. package/dist/remote-operations.js +23 -5
  402. package/dist/remote-operations.js.map +1 -1
  403. package/dist/remote-parsers.d.ts +86 -0
  404. package/dist/remote-parsers.d.ts.map +1 -0
  405. package/dist/remote-parsers.js +181 -0
  406. package/dist/remote-parsers.js.map +1 -0
  407. package/dist/remote.d.ts +5 -2
  408. package/dist/remote.d.ts.map +1 -1
  409. package/dist/remote.js +5 -1
  410. package/dist/remote.js.map +1 -1
  411. package/dist/search/backend-source.d.ts +6 -0
  412. package/dist/search/backend-source.d.ts.map +1 -0
  413. package/dist/search/backend-source.js +33 -0
  414. package/dist/search/backend-source.js.map +1 -0
  415. package/dist/search/contract.d.ts +151 -0
  416. package/dist/search/contract.d.ts.map +1 -0
  417. package/dist/search/contract.js +78 -0
  418. package/dist/search/contract.js.map +1 -0
  419. package/dist/search/errors.d.ts +30 -0
  420. package/dist/search/errors.d.ts.map +1 -0
  421. package/dist/search/errors.js +50 -0
  422. package/dist/search/errors.js.map +1 -0
  423. package/dist/search/identity.d.ts +12 -0
  424. package/dist/search/identity.d.ts.map +1 -0
  425. package/dist/search/identity.js +90 -0
  426. package/dist/search/identity.js.map +1 -0
  427. package/dist/search/index.d.ts +16 -0
  428. package/dist/search/index.d.ts.map +1 -0
  429. package/dist/search/index.js +15 -0
  430. package/dist/search/index.js.map +1 -0
  431. package/dist/search/memory-source.d.ts +36 -0
  432. package/dist/search/memory-source.d.ts.map +1 -0
  433. package/dist/search/memory-source.js +235 -0
  434. package/dist/search/memory-source.js.map +1 -0
  435. package/dist/search/rank.d.ts +34 -0
  436. package/dist/search/rank.d.ts.map +1 -0
  437. package/dist/search/rank.js +129 -0
  438. package/dist/search/rank.js.map +1 -0
  439. package/dist/search/row-text.d.ts +38 -0
  440. package/dist/search/row-text.d.ts.map +1 -0
  441. package/dist/search/row-text.js +88 -0
  442. package/dist/search/row-text.js.map +1 -0
  443. package/dist/search/search.d.ts +28 -0
  444. package/dist/search/search.d.ts.map +1 -0
  445. package/dist/search/search.js +257 -0
  446. package/dist/search/search.js.map +1 -0
  447. package/dist/search/source.d.ts +67 -0
  448. package/dist/search/source.d.ts.map +1 -0
  449. package/dist/search/source.js +2 -0
  450. package/dist/search/source.js.map +1 -0
  451. package/dist/search/text.d.ts +47 -0
  452. package/dist/search/text.d.ts.map +1 -0
  453. package/dist/search/text.js +148 -0
  454. package/dist/search/text.js.map +1 -0
  455. package/dist/site-capabilities.d.ts +339 -0
  456. package/dist/site-capabilities.d.ts.map +1 -0
  457. package/dist/site-capabilities.js +717 -0
  458. package/dist/site-capabilities.js.map +1 -0
  459. package/dist/source-engine/guard.d.ts +82 -0
  460. package/dist/source-engine/guard.d.ts.map +1 -0
  461. package/dist/source-engine/guard.js +396 -0
  462. package/dist/source-engine/guard.js.map +1 -0
  463. package/dist/source-engine/index.d.ts +24 -0
  464. package/dist/source-engine/index.d.ts.map +1 -0
  465. package/dist/source-engine/index.js +20 -0
  466. package/dist/source-engine/index.js.map +1 -0
  467. package/dist/source-engine/machine-state.d.ts +74 -0
  468. package/dist/source-engine/machine-state.d.ts.map +1 -0
  469. package/dist/source-engine/machine-state.js +48 -0
  470. package/dist/source-engine/machine-state.js.map +1 -0
  471. package/dist/source-engine/observe.d.ts +18 -0
  472. package/dist/source-engine/observe.d.ts.map +1 -0
  473. package/dist/source-engine/observe.js +598 -0
  474. package/dist/source-engine/observe.js.map +1 -0
  475. package/dist/source-engine/robots.d.ts +53 -0
  476. package/dist/source-engine/robots.d.ts.map +1 -0
  477. package/dist/source-engine/robots.js +158 -0
  478. package/dist/source-engine/robots.js.map +1 -0
  479. package/dist/source-engine/types.d.ts +285 -0
  480. package/dist/source-engine/types.d.ts.map +1 -0
  481. package/dist/source-engine/types.js +2 -0
  482. package/dist/source-engine/types.js.map +1 -0
  483. package/dist/source-harness/conformance.d.ts +16 -0
  484. package/dist/source-harness/conformance.d.ts.map +1 -0
  485. package/dist/source-harness/conformance.js +265 -0
  486. package/dist/source-harness/conformance.js.map +1 -0
  487. package/dist/source-harness/fixture.d.ts +95 -0
  488. package/dist/source-harness/fixture.d.ts.map +1 -0
  489. package/dist/source-harness/fixture.js +261 -0
  490. package/dist/source-harness/fixture.js.map +1 -0
  491. package/dist/source-harness/index.d.ts +22 -0
  492. package/dist/source-harness/index.d.ts.map +1 -0
  493. package/dist/source-harness/index.js +19 -0
  494. package/dist/source-harness/index.js.map +1 -0
  495. package/dist/source-harness/peer.d.ts +74 -0
  496. package/dist/source-harness/peer.d.ts.map +1 -0
  497. package/dist/source-harness/peer.js +106 -0
  498. package/dist/source-harness/peer.js.map +1 -0
  499. package/dist/storage.d.ts +6 -2
  500. package/dist/storage.d.ts.map +1 -1
  501. package/dist/storage.js +4 -1
  502. package/dist/storage.js.map +1 -1
  503. package/dist/types.d.ts +33 -5
  504. package/dist/types.d.ts.map +1 -1
  505. package/dist/uncertain-write.d.ts +156 -19
  506. package/dist/uncertain-write.d.ts.map +1 -1
  507. package/dist/uncertain-write.js +90 -31
  508. package/dist/uncertain-write.js.map +1 -1
  509. package/dist/versioning.d.ts +9 -4
  510. package/dist/versioning.d.ts.map +1 -1
  511. package/dist/versioning.js +9 -4
  512. package/dist/versioning.js.map +1 -1
  513. package/dist/write-identity.d.ts +5 -0
  514. package/dist/write-identity.d.ts.map +1 -0
  515. package/dist/write-identity.js +9 -0
  516. package/dist/write-identity.js.map +1 -0
  517. package/package.json +94 -2
@@ -1 +1 @@
1
- {"version":3,"file":"indexeddb-backend.js","sourceRoot":"","sources":["../src/indexeddb-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"indexeddb-backend.js","sourceRoot":"","sources":["../src/indexeddb-backend.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,9 @@
21
21
  * that commits.
22
22
  * - {@link JournaledBackend.deleteJournaled} is the deletion counterpart: ONE transaction that
23
23
  * removes the document record under the same compare-and-swap, puts and removes meta rows
24
- * with it, and honours `requireSettled` the same way, so a document the authority deleted
24
+ * with it, optionally supersedes an intent and records a deletion intent
25
+ * ({@link DOCUMENT_DELETE_KIND}) exactly as `writeJournaled` does for a write, and honours
26
+ * `requireSettled` the same way, so a document the authority deleted
25
27
  * leaves the working copy together with its shared base and never while a local edit holds
26
28
  * it. An absent target is not a conflict: the meta changes still apply and the result says
27
29
  * `absent`, as the plain `delete` answers absence with `false`. With `onHeld`, a hold is not a
@@ -30,10 +32,33 @@
30
32
  * says `held` and names the holder. A caller that must rewrite a held document's shared base
31
33
  * (a pull reconciling a remote deletion) does it there, so no other realm can settle the
32
34
  * holding intent between the refusal and the rewrite.
35
+ * - `resolveIntents` on either journaled mutation requires document CAS and the exact complete
36
+ * unsettled target journal. It retires those records atomically with the document, meta, and
37
+ * optional replacement intent, leaving acknowledged history untouched. Recovery may retire a
38
+ * chain whose head is a recorded conflict or refusal, with conflicted, refused, and
39
+ * never-attempted pending successors behind it, never uncertain delivery. The caller
40
+ * preserves recovery evidence in meta; retirement does not assert remote acceptance.
41
+ * - {@link JournaledBackend.retireAcknowledged}, when an adapter offers it, is ONE transaction
42
+ * that removes named acknowledged intents of one target, and named meta rows, under the full
43
+ * guard of that target. Every named intent must be acknowledged in the guard, and the guard is
44
+ * compared in the same transaction, so an intent another realm moved since the caller's read is
45
+ * never removed. Unsettled work is never retired this way. What a retained successor may
46
+ * still need from a retired row is the caller's rule; the adapter only enforces the premise.
33
47
  * - {@link JournaledBackend.readWithJournal} is ONE snapshot: the document, every intent
34
48
  * targeting it, and the named meta rows, read in one readonly transaction, so a write in
35
49
  * another realm between separate reads can never show a caller a document of one moment
36
50
  * beside a journal of another. Intents come back in local commit order (by `sequence`).
51
+ * - {@link JournaledBackend.readHeads} is that snapshot over every document at once: each
52
+ * record's head (id, version, writer, time), its leading frontmatter parsed as `read` parses
53
+ * it, its exact bytes, every intent targeting it, and the meta rows the caller names for it,
54
+ * all from ONE readonly transaction, so every row describes the same moment. Bodies are
55
+ * never parsed. A record whose leading block does not parse is a row with `frontmatter`
56
+ * null and the parser's error, never a dropped row and never a failed listing. A caller that
57
+ * keeps less than the row (a version and a provenance, say) passes `project`, which maps
58
+ * each row as it is read so the listing over a large store never holds every document's
59
+ * stored bytes at once; the journal is read whole before the walk, so intents and the
60
+ * content they carry are held for its duration, as a single read holds them. Keys every row
61
+ * needs go in `shared`, read once. Rows come back in the order `list` orders ids.
37
62
  * - {@link JournaledBackend.updateIntent} is a compare-and-swap on the intent's `state`: the
38
63
  * patch applies only while the record is in `expectedState`, together with any meta rows, in
39
64
  * one transaction. A different state or a missing record rejects with
@@ -48,8 +73,106 @@
48
73
  * the shipping implementation; a test-only in-memory adapter proves the seam is not a
49
74
  * description of that one class.
50
75
  */
76
+ import type { MalformedDocumentError } from "./frontmatter-contract.js";
51
77
  import type { OperationIntent, OperationState } from "./uncertain-write.js";
52
- import type { ConceptId, DeleteOptions, OkfDocument, ReadResult, StorageBackend, Version, WriteOptions } from "./types.js";
78
+ import type { ConceptId, DeleteOptions, Frontmatter, OkfDocument, ReadResult, StorageBackend, Version, WriteOptions } from "./types.js";
79
+ /**
80
+ * The intent kind of a journaled local deletion: the document leaves at exactly the intent's
81
+ * base. A deletion carries no bytes, so its `content` is {@link DELETION_CONTENT} and its `local`
82
+ * is {@link DELETION_VERSION}, the version of empty bytes, which no document can have (every
83
+ * document has frontmatter). A conflict can therefore never name a deletion's own `local` and
84
+ * read as its commit.
85
+ */
86
+ export declare const DOCUMENT_DELETE_KIND = "document.delete";
87
+ export declare const DELETION_CONTENT = "";
88
+ export declare const DELETION_VERSION: Version;
89
+ /** Presence is independent of value: a stored undefined is not an absent row. */
90
+ export type MetaExpectation = {
91
+ present: false;
92
+ } | {
93
+ present: true;
94
+ value: unknown;
95
+ };
96
+ /** A complete target snapshot and the explicitly named metadata premises for a mutation. */
97
+ export interface JournalGuard {
98
+ target: ConceptId;
99
+ document: {
100
+ version: Version;
101
+ raw: string;
102
+ } | null;
103
+ intents: IntentRecord[];
104
+ meta: {
105
+ key: string;
106
+ expected: MetaExpectation;
107
+ }[];
108
+ }
109
+ /** A full snapshot or metadata admission premise changed; nothing was written. */
110
+ export declare class JournalGuardConflict extends Error {
111
+ readonly name = "JournalGuardConflict";
112
+ readonly target: string;
113
+ constructor(target: string);
114
+ }
115
+ /**
116
+ * Guard values are acyclic plain records, arrays, and primitive values (including undefined).
117
+ * Symbols, accessors, functions, and objects with other prototypes are refused. This restriction
118
+ * applies only to guarded operations; the unguarded metadata store remains opaque.
119
+ */
120
+ export declare function captureJournalValue<T>(value: T): T;
121
+ export declare function equalJournalValue(a: unknown, b: unknown): boolean;
122
+ export declare function assertMetaExpectation(value: MetaExpectation): void;
123
+ export declare function captureJournalGuard(value: JournalGuard, target?: ConceptId): JournalGuard;
124
+ /** Only omission or undefined selects the unguarded compatibility path. */
125
+ export declare function captureJournalGuardOption(options: {
126
+ guard?: JournalGuard;
127
+ }, target?: ConceptId): JournalGuard | undefined;
128
+ /** Compare all target records, including acknowledged history, and exact named row presence. */
129
+ export declare function assertJournalGuard(expected: JournalGuard, current: JournalGuard): void;
130
+ export interface IntentUpdateOptions {
131
+ meta?: MetaRecord[];
132
+ guard?: JournalGuard;
133
+ /** Replaces persisted content without authoring metadata changes; requires a full guard. */
134
+ document?: OkfDocument;
135
+ }
136
+ export interface MetaWriteOptions {
137
+ expected?: MetaExpectation;
138
+ /** Admission succeeds only when the entire journal is empty, in the same transaction. */
139
+ requireEmptyJournal?: boolean;
140
+ }
141
+ /** Capture guarded updates before any asynchronous adapter work and protect original history. */
142
+ export declare function captureIntentUpdate(patch: IntentPatch, options: IntentUpdateOptions): {
143
+ patch: IntentPatch;
144
+ options: IntentUpdateOptions;
145
+ };
146
+ export declare function captureMetaWrite(options: MetaWriteOptions): MetaWriteOptions;
147
+ export declare function assertMetaWrite(key: string, options: MetaWriteOptions, actual: MetaExpectation, intents: readonly {
148
+ requestId: string;
149
+ }[]): void;
150
+ /** Metadata removal is admitted only with an explicit full-snapshot premise. */
151
+ export declare function assertJournalMetaChanges(guard: JournalGuard | undefined, puts: readonly MetaRecord[], removals: readonly string[] | undefined): void;
152
+ /** A guarded write owns one target and creates a globally fresh journal identity. */
153
+ export declare function assertJournalIntentChanges(guard: JournalGuard | undefined, existingIdentity: {
154
+ target: string;
155
+ } | undefined, superseded: {
156
+ target: string;
157
+ } | undefined): void;
158
+ /** Options for {@link JournaledBackend.retireAcknowledged}. */
159
+ export interface RetireAcknowledgedOptions {
160
+ /** The full target snapshot the retirement was composed against, compared in its transaction. */
161
+ guard: JournalGuard;
162
+ /** Acknowledged intents of the guard's target to remove; at least one, each named once. */
163
+ requestIds: readonly string[];
164
+ /** Meta rows the guard names, removed in the same transaction. */
165
+ removeMeta?: readonly string[];
166
+ }
167
+ /**
168
+ * Capture a retirement before any adapter work: the guard is required and complete, every
169
+ * named intent is in it and acknowledged, and every removed meta row is one the guard names.
170
+ */
171
+ export declare function captureRetireAcknowledged(target: ConceptId, options: RetireAcknowledgedOptions): RetireAcknowledgedOptions;
172
+ /** Capture write options while retaining the existing synchronous metadata producer. */
173
+ export declare function captureJournalWriteOptions(options: JournaledWriteOptions): JournaledWriteOptions;
174
+ /** Capture every guarded deletion branch before evaluating held or absent state. */
175
+ export declare function captureJournalDeleteOptions(target: ConceptId, options: JournaledDeleteOptions): JournaledDeleteOptions;
53
176
  /**
54
177
  * An intent's journal state was not the one the caller expected, or the intent is gone. Settling
55
178
  * and superseding are compare-and-swap operations on the intent's own record so two realms (a
@@ -88,10 +211,15 @@ export interface IntentRecord extends OperationIntent {
88
211
  after?: string;
89
212
  /** Set when the authority committed the intent; equals `local` for a content-addressed token. */
90
213
  acknowledgedVersion?: Version;
91
- /** The shared head observed when the intent entered conflict. */
214
+ /**
215
+ * The shared head observed when the intent entered conflict. With `version: null` (deleted
216
+ * remotely), `tombstone` is the deletion the authority named, when it named one: what a
217
+ * deliberate re-create acknowledges. It is never a version a read serves.
218
+ */
92
219
  remote?: {
93
220
  version: Version | null;
94
221
  content: string | null;
222
+ tombstone?: Version;
95
223
  };
96
224
  refusal?: {
97
225
  code: string;
@@ -101,14 +229,44 @@ export interface IntentRecord extends OperationIntent {
101
229
  finding?: string;
102
230
  }
103
231
  /** The caller-supplied part of a new intent; the adapter fills content, version, sequence, and state. */
104
- export type NewIntentRecord = Pick<IntentRecord, "requestId" | "kind" | "target" | "base" | "baseContent" | "createdAt"> & Partial<Pick<IntentRecord, "after">>;
232
+ export type NewIntentRecord = Pick<IntentRecord, "requestId" | "kind" | "target" | "base" | "baseContent" | "createdAt"> & Partial<Pick<IntentRecord, "after" | "recreates">>;
105
233
  /** An opaque key-value row in the meta store (bootstrap marker, per-document base, pause flag). */
106
234
  export interface MetaRecord {
107
235
  key: string;
108
236
  value: unknown;
109
237
  }
238
+ /** Recovery was composed against a different or unsafe unsettled journal snapshot. */
239
+ export declare class JournalSnapshotConflict extends Error {
240
+ readonly name = "JournalSnapshotConflict";
241
+ readonly target: ConceptId;
242
+ constructor(target: ConceptId);
243
+ }
244
+ /**
245
+ * The deletion intent a journaled deletion records, refused before any adapter work when it is
246
+ * not one: another kind, another target, or combined with a guard (a guarded deletion journals
247
+ * nothing). The adapter fills content, local version, sequence and state.
248
+ */
249
+ export declare function assertDeletionIntent(target: ConceptId, options: JournaledDeleteOptions): void;
250
+ /** The record a journaled deletion adds for `intent`. */
251
+ export declare function deletionIntentRecord(intent: NewIntentRecord, sequence: number, now: string): IntentRecord;
252
+ export declare function assertJournalResolutionOptions(target: ConceptId, options: JournaledWriteOptions | JournaledDeleteOptions): void;
253
+ /**
254
+ * Compare full records, not only state: a changed outcome or retry is new recovery evidence.
255
+ * The head of the set (its lowest sequence) must hold a recorded terminal answer, `conflict` or
256
+ * `refused`; every later row must be `conflict`, `refused` or never-attempted `pending`. An
257
+ * `unknown`, `in_flight` or attempted `pending` head is uncertain delivery and stays refused.
258
+ */
259
+ export declare function assertJournalSnapshot(target: ConceptId, expected: IntentRecord[], current: IntentRecord[], freshRequestId?: string): void;
110
260
  /** Options for {@link JournaledBackend.writeJournaled}. */
111
261
  export interface JournaledWriteOptions extends WriteOptions {
262
+ /** Full document, journal, and named metadata CAS, evaluated before any mutation. */
263
+ guard?: JournalGuard;
264
+ /** Remove named metadata in the guarded write; keys must not also be put by this write. */
265
+ removeMeta?: readonly string[];
266
+ /** Retire this exact complete unsettled target snapshot atomically with document and meta writes. */
267
+ resolveIntents?: {
268
+ expected: IntentRecord[];
269
+ };
112
270
  /** Record this intent in the same transaction as the document write. */
113
271
  intent?: NewIntentRecord;
114
272
  /** An unsettled intent this write composes over; deleted only while its state and attempts still match. */
@@ -132,10 +290,30 @@ export interface JournaledWriteOptions extends WriteOptions {
132
290
  }
133
291
  /** Options for {@link JournaledBackend.deleteJournaled}. */
134
292
  export interface JournaledDeleteOptions extends DeleteOptions {
293
+ /** Compare the full target and named metadata before any deleted, absent, or held outcome. */
294
+ guard?: JournalGuard;
295
+ /** As write recovery; requires document CAS even when the target is absent. */
296
+ resolveIntents?: {
297
+ expected: IntentRecord[];
298
+ };
135
299
  /** Meta rows to put in the same transaction; they apply only when the deletion applies or the target is absent. */
136
300
  meta?: MetaRecord[];
137
301
  /** Meta keys to remove in the same transaction; a key with no row is not an error. Applied as `meta` is. */
138
302
  removeMeta?: readonly string[];
303
+ /**
304
+ * Record this deletion intent in the same transaction, as `writeJournaled` records a write's:
305
+ * `pending`, zero attempts, the next sequence, with {@link DELETION_CONTENT} and
306
+ * {@link DELETION_VERSION}. Its kind must be {@link DOCUMENT_DELETE_KIND}. It is recorded when
307
+ * the deletion applies, including over an absent record (a resolution re-deleting a document
308
+ * the working copy no longer holds), and never when the deletion is held.
309
+ */
310
+ intent?: NewIntentRecord;
311
+ /** An unsettled intent this deletion composes over; removed only while its state and attempts still match, as for `writeJournaled`. */
312
+ supersede?: {
313
+ requestId: string;
314
+ expectedState: OperationState;
315
+ expectedAttempts: number;
316
+ };
139
317
  /**
140
318
  * Refuse the deletion when any intent targeting `id` is in a state other than `acknowledged`,
141
319
  * read in the same transaction as the deletion. A pull that reconciles a remote deletion uses
@@ -154,13 +332,15 @@ export interface JournaledDeleteOptions extends DeleteOptions {
154
332
  }
155
333
  /** What {@link JournaledBackend.deleteJournaled} did, in one transaction. */
156
334
  export type JournaledDeleteResult =
157
- /** A record was removed; `meta` and `removeMeta` applied. */
335
+ /** A record was removed; `meta` and `removeMeta` applied, and `intent` recorded when one was given. */
158
336
  {
159
337
  outcome: "deleted";
338
+ intent?: IntentRecord;
160
339
  }
161
- /** No record to remove; `meta` and `removeMeta` still applied. */
340
+ /** No record to remove; `meta` and `removeMeta` still applied, and `intent` recorded when one was given. */
162
341
  | {
163
342
  outcome: "absent";
343
+ intent?: IntentRecord;
164
344
  }
165
345
  /** An unsettled intent holds the target and `onHeld` was given: its meta rows applied, nothing else did. */
166
346
  | {
@@ -179,6 +359,48 @@ export interface JournaledReadResult {
179
359
  /** The requested meta rows' values by key; a key with no row is absent from the map. */
180
360
  meta: Map<string, unknown>;
181
361
  }
362
+ /**
363
+ * One document's head with everything the journal holds about it, as {@link JournaledBackend.readHeads}
364
+ * reads it: the stored record's identity and version, its leading frontmatter, its exact
365
+ * bytes, its intents, and the meta rows the caller named for it. Nothing of the body is parsed.
366
+ * The frontmatter is what `read` parses for the record under the bundle's edition; when the
367
+ * leading block does not parse it is `null` and `malformed` carries the parser's error.
368
+ */
369
+ export type JournaledHead = {
370
+ id: ConceptId;
371
+ /** The version of the stored bytes, the token `read` reports for the document. */
372
+ version: Version;
373
+ /** The actor recorded for the stored revision. */
374
+ updatedBy: string;
375
+ /** When the stored revision was written, as an ISO instant. */
376
+ updatedAt: string;
377
+ /** The exact stored serialization, the bytes `version` names. */
378
+ raw: string;
379
+ /** Every intent targeting the id, in local commit order, whatever its state. */
380
+ intents: IntentRecord[];
381
+ /** The meta rows `meta` named for this id, by key; a key with no row is absent from the map. */
382
+ meta: Map<string, unknown>;
383
+ } & ({
384
+ frontmatter: Frontmatter;
385
+ malformed?: undefined;
386
+ } | {
387
+ frontmatter: null;
388
+ malformed: MalformedDocumentError;
389
+ });
390
+ /** Options for {@link JournaledBackend.readHeads}. */
391
+ export interface JournaledHeadsOptions<T> {
392
+ /** The meta keys to read for one document, given its id and its intents; none by default. Read per row and released with it. */
393
+ meta?: (id: ConceptId, intents: readonly IntentRecord[]) => readonly string[];
394
+ /** Meta keys read once for the whole listing, in the same transaction, and present in every row's `meta`; a key named here is not read again when `meta` names it for a row. */
395
+ shared?: readonly string[];
396
+ /**
397
+ * Maps each head as it is read; only the projection is kept, so a listing over a large store
398
+ * holds one document's stored bytes at a time (the journal, read whole, is held throughout).
399
+ * Omitted, the heads themselves are returned. A projection that throws rejects the whole
400
+ * listing with its error.
401
+ */
402
+ project?: (head: JournaledHead) => T;
403
+ }
182
404
  /** Fields a caller may change when settling or reclaiming an intent. */
183
405
  export type IntentPatch = Partial<Omit<IntentRecord, "requestId" | "sequence" | "createdAt" | "kind" | "target">>;
184
406
  /**
@@ -186,6 +408,8 @@ export type IntentPatch = Partial<Omit<IntentRecord, "requestId" | "sequence" |
186
408
  * rows, with the transaction and compare-and-swap guarantees stated in this module's header.
187
409
  */
188
410
  export interface JournaledBackend extends StorageBackend {
411
+ /** All guarded writes, updates, replacements, and metadata admission share atomic CAS. */
412
+ readonly journalSnapshotCas?: true;
189
413
  /**
190
414
  * One transaction over documents, intents, and meta: the document compare-and-swap of
191
415
  * `write`, plus (optionally) deleting a superseded intent, recording a new intent for the
@@ -221,18 +445,31 @@ export interface JournaledBackend extends StorageBackend {
221
445
  readWithJournal(id: ConceptId, options?: {
222
446
  meta?: readonly string[];
223
447
  }): Promise<JournaledReadResult>;
448
+ /**
449
+ * Every document's head, its leading frontmatter, its bytes, its intents, and the meta rows
450
+ * `meta` names for it, from ONE readonly transaction, in the order `list` orders ids. A
451
+ * caller that lists or counts the working copy reads here so every row describes the same
452
+ * moment and no body is parsed; `project` keeps the listing's memory at one document at a
453
+ * time. A record whose leading block does not parse is reported, not dropped.
454
+ */
455
+ readHeads<T = JournaledHead>(options?: JournaledHeadsOptions<T>): Promise<T[]>;
224
456
  /** Intents in local commit order, optionally restricted to one or more states. */
225
457
  listIntents(state?: OperationState | readonly OperationState[]): Promise<IntentRecord[]>;
226
458
  readIntent(requestId: string): Promise<IntentRecord | undefined>;
459
+ /**
460
+ * Remove acknowledged intents of one target, and named meta rows, in ONE transaction under
461
+ * the target's full guard ({@link RetireAcknowledgedOptions}). A guard that no longer matches
462
+ * rejects with {@link JournalGuardConflict} and removes nothing. Optional: a caller that finds
463
+ * no such method keeps acknowledged history, as every adapter did before it existed.
464
+ */
465
+ retireAcknowledged?(target: ConceptId, options: RetireAcknowledgedOptions): Promise<void>;
227
466
  /**
228
467
  * Compare-and-swap on an intent's `state`: the patch applies only while the record is in
229
468
  * `expectedState`, together with any meta rows, in one transaction. A different state or a
230
469
  * missing record rejects with {@link IntentStateConflict} and writes nothing.
231
470
  */
232
- updateIntent(requestId: string, expectedState: OperationState, patch: IntentPatch, options?: {
233
- meta?: MetaRecord[];
234
- }): Promise<IntentRecord>;
471
+ updateIntent(requestId: string, expectedState: OperationState, patch: IntentPatch, options?: IntentUpdateOptions): Promise<IntentRecord>;
235
472
  readMeta<T = unknown>(key: string): Promise<T | undefined>;
236
- writeMeta(key: string, value: unknown): Promise<void>;
473
+ writeMeta(key: string, value: unknown, options?: MetaWriteOptions): Promise<void>;
237
474
  }
238
475
  //# sourceMappingURL=journaled-backend.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"journaled-backend.d.ts","sourceRoot":"","sources":["../src/journaled-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"journaled-backend.d.ts","sourceRoot":"","sources":["../src/journaled-backend.ts"],"names":[],"mappings":"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"}