@plurnk/plurnk-service 1.3.12 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/.env.defaults +95 -91
  2. package/INSTALL.md +54 -28
  3. package/README.md +25 -10
  4. package/SPEC.md +2426 -942
  5. package/dist/Paths.d.ts +4 -1
  6. package/dist/Paths.d.ts.map +1 -1
  7. package/dist/Paths.js +24 -23
  8. package/dist/Paths.js.map +1 -1
  9. package/dist/build-info.json +1 -1
  10. package/dist/content/edit-receipt.d.ts +13 -28
  11. package/dist/content/edit-receipt.d.ts.map +1 -1
  12. package/dist/content/edit-receipt.js +285 -104
  13. package/dist/content/edit-receipt.js.map +1 -1
  14. package/dist/content/edited-span.d.ts.map +1 -1
  15. package/dist/content/edited-span.js +2 -5
  16. package/dist/content/edited-span.js.map +1 -1
  17. package/dist/content/index.d.ts +4 -3
  18. package/dist/content/index.d.ts.map +1 -1
  19. package/dist/content/index.js +2 -1
  20. package/dist/content/index.js.map +1 -1
  21. package/dist/content/line-marker.d.ts +10 -9
  22. package/dist/content/line-marker.d.ts.map +1 -1
  23. package/dist/content/line-marker.js +8 -11
  24. package/dist/content/line-marker.js.map +1 -1
  25. package/dist/content/matcher.d.ts +15 -26
  26. package/dist/content/matcher.d.ts.map +1 -1
  27. package/dist/content/matcher.js +77 -107
  28. package/dist/content/matcher.js.map +1 -1
  29. package/dist/content/mimetype-binary.d.ts +2 -2
  30. package/dist/content/mimetype-binary.d.ts.map +1 -1
  31. package/dist/content/mimetype-binary.js +10 -10
  32. package/dist/content/mimetype-binary.js.map +1 -1
  33. package/dist/content/path-mimetype.js +3 -3
  34. package/dist/content/path-mimetype.js.map +1 -1
  35. package/dist/content/read-projector.d.ts +14 -0
  36. package/dist/content/read-projector.d.ts.map +1 -0
  37. package/dist/content/read-projector.js +86 -0
  38. package/dist/content/read-projector.js.map +1 -0
  39. package/dist/content/read-resolve.d.ts +6 -7
  40. package/dist/content/read-resolve.d.ts.map +1 -1
  41. package/dist/content/read-resolve.js +36 -59
  42. package/dist/content/read-resolve.js.map +1 -1
  43. package/dist/core/BranchReceipt.d.ts +6 -0
  44. package/dist/core/BranchReceipt.d.ts.map +1 -0
  45. package/dist/core/BranchReceipt.js +24 -0
  46. package/dist/core/BranchReceipt.js.map +1 -0
  47. package/dist/core/BudgetOverflow.d.ts +20 -0
  48. package/dist/core/BudgetOverflow.d.ts.map +1 -0
  49. package/dist/core/BudgetOverflow.js +49 -0
  50. package/dist/core/BudgetOverflow.js.map +1 -0
  51. package/dist/core/BudgetReadout.d.ts +8 -0
  52. package/dist/core/BudgetReadout.d.ts.map +1 -0
  53. package/dist/core/BudgetReadout.js +79 -0
  54. package/dist/core/BudgetReadout.js.map +1 -0
  55. package/dist/core/ChannelWrite.d.ts +31 -9
  56. package/dist/core/ChannelWrite.d.ts.map +1 -1
  57. package/dist/core/ChannelWrite.js +30 -23
  58. package/dist/core/ChannelWrite.js.map +1 -1
  59. package/dist/core/ChannelWrite.sql +14 -12
  60. package/dist/core/CoreSchemeServices.d.ts +18 -4
  61. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  62. package/dist/core/CoreSchemeServices.js +7 -1
  63. package/dist/core/CoreSchemeServices.js.map +1 -1
  64. package/dist/core/Dispatcher.d.ts +26 -21
  65. package/dist/core/Dispatcher.d.ts.map +1 -1
  66. package/dist/core/Dispatcher.js +1626 -671
  67. package/dist/core/Dispatcher.js.map +1 -1
  68. package/dist/core/DurableStatement.d.ts +6 -0
  69. package/dist/core/DurableStatement.d.ts.map +1 -0
  70. package/dist/core/DurableStatement.js +51 -0
  71. package/dist/core/DurableStatement.js.map +1 -0
  72. package/dist/core/Engine.d.ts +64 -29
  73. package/dist/core/Engine.d.ts.map +1 -1
  74. package/dist/core/Engine.js +1348 -835
  75. package/dist/core/Engine.js.map +1 -1
  76. package/dist/core/Engine.sql +329 -234
  77. package/dist/core/EnvFlags.js +1 -1
  78. package/dist/core/EnvFlags.js.map +1 -1
  79. package/dist/core/ErrorDetail.d.ts +6 -0
  80. package/dist/core/ErrorDetail.d.ts.map +1 -0
  81. package/dist/core/ErrorDetail.js +20 -0
  82. package/dist/core/ErrorDetail.js.map +1 -0
  83. package/dist/core/ExecutorRegistry.d.ts +14 -3
  84. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  85. package/dist/core/ExecutorRegistry.js +56 -30
  86. package/dist/core/ExecutorRegistry.js.map +1 -1
  87. package/dist/core/GitBranch.d.ts +20 -0
  88. package/dist/core/GitBranch.d.ts.map +1 -0
  89. package/dist/core/GitBranch.js +110 -0
  90. package/dist/core/GitBranch.js.map +1 -0
  91. package/dist/core/JournalTurn.d.ts +9 -0
  92. package/dist/core/JournalTurn.d.ts.map +1 -0
  93. package/dist/core/JournalTurn.js +14 -0
  94. package/dist/core/JournalTurn.js.map +1 -0
  95. package/dist/core/JournalTurn.sql +10 -0
  96. package/dist/core/LogBody.d.ts +18 -0
  97. package/dist/core/LogBody.d.ts.map +1 -0
  98. package/dist/core/LogBody.js +180 -0
  99. package/dist/core/LogBody.js.map +1 -0
  100. package/dist/core/LoopFlagsReader.d.ts +7 -0
  101. package/dist/core/LoopFlagsReader.d.ts.map +1 -0
  102. package/dist/core/LoopFlagsReader.js +33 -0
  103. package/dist/core/LoopFlagsReader.js.map +1 -0
  104. package/dist/core/LoopLifecycle.d.ts +8 -2
  105. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  106. package/dist/core/LoopLifecycle.js +54 -11
  107. package/dist/core/LoopLifecycle.js.map +1 -1
  108. package/dist/core/LoopLifecycle.sql +10 -7
  109. package/dist/core/NoticeChannel.d.ts +13 -0
  110. package/dist/core/NoticeChannel.d.ts.map +1 -0
  111. package/dist/core/NoticeChannel.js +40 -0
  112. package/dist/core/NoticeChannel.js.map +1 -0
  113. package/dist/core/Owner.d.ts +0 -1
  114. package/dist/core/Owner.d.ts.map +1 -1
  115. package/dist/core/Owner.js +2 -5
  116. package/dist/core/Owner.js.map +1 -1
  117. package/dist/core/PacketBuilder.d.ts +27 -25
  118. package/dist/core/PacketBuilder.d.ts.map +1 -1
  119. package/dist/core/PacketBuilder.js +321 -383
  120. package/dist/core/PacketBuilder.js.map +1 -1
  121. package/dist/core/ProblemLog.d.ts +26 -0
  122. package/dist/core/ProblemLog.d.ts.map +1 -0
  123. package/dist/core/ProblemLog.js +58 -0
  124. package/dist/core/ProblemLog.js.map +1 -0
  125. package/dist/core/ProposalLifecycle.d.ts +15 -21
  126. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  127. package/dist/core/ProposalLifecycle.js +291 -78
  128. package/dist/core/ProposalLifecycle.js.map +1 -1
  129. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  130. package/dist/core/ProviderInstantiate.js +51 -48
  131. package/dist/core/ProviderInstantiate.js.map +1 -1
  132. package/dist/core/SchemeRegistry.d.ts +14 -8
  133. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  134. package/dist/core/SchemeRegistry.js +189 -114
  135. package/dist/core/SchemeRegistry.js.map +1 -1
  136. package/dist/core/ServiceTeardown.d.ts +11 -0
  137. package/dist/core/ServiceTeardown.d.ts.map +1 -0
  138. package/dist/core/ServiceTeardown.js +70 -0
  139. package/dist/core/ServiceTeardown.js.map +1 -0
  140. package/dist/core/StoredPacket.d.ts +29 -0
  141. package/dist/core/StoredPacket.d.ts.map +1 -0
  142. package/dist/core/StoredPacket.js +147 -0
  143. package/dist/core/StoredPacket.js.map +1 -0
  144. package/dist/core/StrikeRail.d.ts +6 -3
  145. package/dist/core/StrikeRail.d.ts.map +1 -1
  146. package/dist/core/StrikeRail.js +27 -56
  147. package/dist/core/StrikeRail.js.map +1 -1
  148. package/dist/core/TerminalResult.d.ts +16 -0
  149. package/dist/core/TerminalResult.d.ts.map +1 -0
  150. package/dist/core/TerminalResult.js +49 -0
  151. package/dist/core/TerminalResult.js.map +1 -0
  152. package/dist/core/WorkerControlAddress.d.ts +17 -0
  153. package/dist/core/WorkerControlAddress.d.ts.map +1 -0
  154. package/dist/core/WorkerControlAddress.js +44 -0
  155. package/dist/core/WorkerControlAddress.js.map +1 -0
  156. package/dist/core/WorkerName.d.ts +31 -0
  157. package/dist/core/WorkerName.d.ts.map +1 -0
  158. package/dist/core/WorkerName.js +95 -0
  159. package/dist/core/WorkerName.js.map +1 -0
  160. package/dist/core/WorkerName.sql +36 -0
  161. package/dist/core/WorkspaceGate.d.ts +14 -0
  162. package/dist/core/WorkspaceGate.d.ts.map +1 -0
  163. package/dist/core/WorkspaceGate.js +155 -0
  164. package/dist/core/WorkspaceGate.js.map +1 -0
  165. package/dist/core/caps/CapsResolve.d.ts +5 -1
  166. package/dist/core/caps/CapsResolve.d.ts.map +1 -1
  167. package/dist/core/caps/CapsResolve.js +8 -4
  168. package/dist/core/caps/CapsResolve.js.map +1 -1
  169. package/dist/core/caps/DbChannelCaps.d.ts +5 -11
  170. package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
  171. package/dist/core/caps/DbChannelCaps.js +30 -12
  172. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  173. package/dist/core/caps/DbEntryCaps.d.ts +5 -14
  174. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  175. package/dist/core/caps/DbEntryCaps.js +27 -8
  176. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  177. package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
  178. package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
  179. package/dist/core/caps/DbNotifyCaps.js +18 -15
  180. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  181. package/dist/core/caps/DbProjectionCaps.d.ts +5 -5
  182. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  183. package/dist/core/caps/DbProjectionCaps.js +21 -4
  184. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  185. package/dist/core/caps/DbSubscriptionCaps.d.ts +4 -6
  186. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  187. package/dist/core/caps/DbSubscriptionCaps.js +75 -66
  188. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  189. package/dist/core/caps/DbTagCaps.d.ts +5 -12
  190. package/dist/core/caps/DbTagCaps.d.ts.map +1 -1
  191. package/dist/core/caps/DbTagCaps.js +20 -11
  192. package/dist/core/caps/DbTagCaps.js.map +1 -1
  193. package/dist/core/caps/SchemeCtxImpl.d.ts +6 -1
  194. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  195. package/dist/core/caps/SchemeCtxImpl.js +6 -6
  196. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  197. package/dist/core/content-hash.js +1 -1
  198. package/dist/core/content-hash.js.map +1 -1
  199. package/dist/core/env-defaults.d.ts.map +1 -1
  200. package/dist/core/env-defaults.js.map +1 -1
  201. package/dist/core/fork.d.ts.map +1 -1
  202. package/dist/core/fork.js +55 -30
  203. package/dist/core/fork.js.map +1 -1
  204. package/dist/core/fork.sql +43 -29
  205. package/dist/core/git-env.d.ts +2 -0
  206. package/dist/core/git-env.d.ts.map +1 -1
  207. package/dist/core/git-env.js +13 -18
  208. package/dist/core/git-env.js.map +1 -1
  209. package/dist/core/git-iso.d.ts +3 -2
  210. package/dist/core/git-iso.d.ts.map +1 -1
  211. package/dist/core/git-iso.js +36 -27
  212. package/dist/core/git-iso.js.map +1 -1
  213. package/dist/core/git-membership.d.ts +2 -1
  214. package/dist/core/git-membership.d.ts.map +1 -1
  215. package/dist/core/git-membership.js +276 -162
  216. package/dist/core/git-membership.js.map +1 -1
  217. package/dist/core/git-state.d.ts +8 -1
  218. package/dist/core/git-state.d.ts.map +1 -1
  219. package/dist/core/git-state.js +44 -26
  220. package/dist/core/git-state.js.map +1 -1
  221. package/dist/core/namespace.d.ts +1 -0
  222. package/dist/core/namespace.d.ts.map +1 -1
  223. package/dist/core/namespace.js +20 -0
  224. package/dist/core/namespace.js.map +1 -1
  225. package/dist/core/optimistic-settlement.d.ts +2 -0
  226. package/dist/core/optimistic-settlement.d.ts.map +1 -0
  227. package/dist/core/optimistic-settlement.js +14 -0
  228. package/dist/core/optimistic-settlement.js.map +1 -0
  229. package/dist/core/owner.sql +1 -1
  230. package/dist/core/packet-inject.d.ts.map +1 -1
  231. package/dist/core/packet-inject.js +7 -11
  232. package/dist/core/packet-inject.js.map +1 -1
  233. package/dist/core/packet-wire.d.ts +3 -21
  234. package/dist/core/packet-wire.d.ts.map +1 -1
  235. package/dist/core/packet-wire.js +305 -385
  236. package/dist/core/packet-wire.js.map +1 -1
  237. package/dist/core/plurnk-uri.d.ts +12 -1
  238. package/dist/core/plurnk-uri.d.ts.map +1 -1
  239. package/dist/core/plurnk-uri.js +49 -29
  240. package/dist/core/plurnk-uri.js.map +1 -1
  241. package/dist/core/results.d.ts +18 -5
  242. package/dist/core/results.d.ts.map +1 -1
  243. package/dist/core/results.js +33 -18
  244. package/dist/core/results.js.map +1 -1
  245. package/dist/core/ruler_count.d.ts +4 -0
  246. package/dist/core/ruler_count.d.ts.map +1 -0
  247. package/dist/core/ruler_count.js +7 -0
  248. package/dist/core/ruler_count.js.map +1 -0
  249. package/dist/core/scheme-types.d.ts +3 -17
  250. package/dist/core/scheme-types.d.ts.map +1 -1
  251. package/dist/core/scheme-types.js.map +1 -1
  252. package/dist/core/search-gate.d.ts.map +1 -1
  253. package/dist/core/search-gate.js +3 -11
  254. package/dist/core/search-gate.js.map +1 -1
  255. package/dist/core/teaching-corpus.d.ts +6 -0
  256. package/dist/core/teaching-corpus.d.ts.map +1 -0
  257. package/dist/core/teaching-corpus.js +23 -0
  258. package/dist/core/teaching-corpus.js.map +1 -0
  259. package/dist/core/teaching.d.ts +0 -1
  260. package/dist/core/teaching.d.ts.map +1 -1
  261. package/dist/core/teaching.js +2 -8
  262. package/dist/core/teaching.js.map +1 -1
  263. package/dist/core/token-ruler.d.ts.map +1 -1
  264. package/dist/core/token-ruler.js +3 -16
  265. package/dist/core/token-ruler.js.map +1 -1
  266. package/dist/core/turn-scheduler.d.ts +1 -1
  267. package/dist/core/turn-scheduler.d.ts.map +1 -1
  268. package/dist/core/turn-scheduler.js +1 -1
  269. package/dist/core/turn-scheduler.js.map +1 -1
  270. package/dist/core/worker-cap.d.ts +2 -4
  271. package/dist/core/worker-cap.d.ts.map +1 -1
  272. package/dist/core/worker-cap.js +13 -4
  273. package/dist/core/worker-cap.js.map +1 -1
  274. package/dist/core/{run-ops.sql → worker-ops.sql} +14 -14
  275. package/dist/core/workspace-settings.d.ts.map +1 -1
  276. package/dist/core/workspace-settings.js +17 -9
  277. package/dist/core/workspace-settings.js.map +1 -1
  278. package/dist/digest/Digest.d.ts +2 -1
  279. package/dist/digest/Digest.d.ts.map +1 -1
  280. package/dist/digest/Digest.js +510 -149
  281. package/dist/digest/Digest.js.map +1 -1
  282. package/dist/digest/digest.sql +23 -10
  283. package/dist/index.d.ts.map +1 -1
  284. package/dist/index.js +3 -5
  285. package/dist/index.js.map +1 -1
  286. package/dist/observe/api.d.ts +6 -0
  287. package/dist/observe/api.d.ts.map +1 -0
  288. package/dist/observe/api.js +11 -0
  289. package/dist/observe/api.js.map +1 -0
  290. package/dist/observe/init.d.ts +7 -0
  291. package/dist/observe/init.d.ts.map +1 -0
  292. package/dist/observe/init.js +159 -0
  293. package/dist/observe/init.js.map +1 -0
  294. package/dist/observe/metrics.d.ts +6 -0
  295. package/dist/observe/metrics.d.ts.map +1 -0
  296. package/dist/observe/metrics.js +15 -0
  297. package/dist/observe/metrics.js.map +1 -0
  298. package/dist/observe/spans.d.ts +4 -0
  299. package/dist/observe/spans.d.ts.map +1 -0
  300. package/dist/observe/spans.js +51 -0
  301. package/dist/observe/spans.js.map +1 -0
  302. package/dist/schemes/EffectPolicy.d.ts +1 -0
  303. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  304. package/dist/schemes/EffectPolicy.js +5 -2
  305. package/dist/schemes/EffectPolicy.js.map +1 -1
  306. package/dist/schemes/Exec.d.ts +9 -14
  307. package/dist/schemes/Exec.d.ts.map +1 -1
  308. package/dist/schemes/Exec.js +402 -262
  309. package/dist/schemes/Exec.js.map +1 -1
  310. package/dist/schemes/ExecOutputScheme.d.ts +9 -9
  311. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  312. package/dist/schemes/ExecOutputScheme.js +49 -18
  313. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  314. package/dist/schemes/File.d.ts +7 -13
  315. package/dist/schemes/File.d.ts.map +1 -1
  316. package/dist/schemes/File.js +280 -151
  317. package/dist/schemes/File.js.map +1 -1
  318. package/dist/schemes/Log.d.ts +8 -12
  319. package/dist/schemes/Log.d.ts.map +1 -1
  320. package/dist/schemes/Log.js +402 -233
  321. package/dist/schemes/Log.js.map +1 -1
  322. package/dist/schemes/Log.sql +71 -32
  323. package/dist/schemes/Prompt.d.ts +3 -3
  324. package/dist/schemes/Prompt.d.ts.map +1 -1
  325. package/dist/schemes/Prompt.js +10 -10
  326. package/dist/schemes/Prompt.js.map +1 -1
  327. package/dist/schemes/Skill.d.ts +2 -3
  328. package/dist/schemes/Skill.d.ts.map +1 -1
  329. package/dist/schemes/Skill.js +2 -6
  330. package/dist/schemes/Skill.js.map +1 -1
  331. package/dist/schemes/Worker.d.ts +11 -19
  332. package/dist/schemes/Worker.d.ts.map +1 -1
  333. package/dist/schemes/Worker.js +210 -89
  334. package/dist/schemes/Worker.js.map +1 -1
  335. package/dist/schemes/_entry-chunk.d.ts.map +1 -1
  336. package/dist/schemes/_entry-chunk.js +12 -5
  337. package/dist/schemes/_entry-chunk.js.map +1 -1
  338. package/dist/schemes/_entry-crud.d.ts +11 -9
  339. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  340. package/dist/schemes/_entry-crud.js +72 -13
  341. package/dist/schemes/_entry-crud.js.map +1 -1
  342. package/dist/schemes/_entry-crud.sql +28 -10
  343. package/dist/schemes/_entry-find.d.ts +49 -18
  344. package/dist/schemes/_entry-find.d.ts.map +1 -1
  345. package/dist/schemes/_entry-find.js +348 -195
  346. package/dist/schemes/_entry-find.js.map +1 -1
  347. package/dist/schemes/_entry-find.sql +20 -8
  348. package/dist/schemes/_entry-graph.d.ts +4 -2
  349. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  350. package/dist/schemes/_entry-graph.js +55 -31
  351. package/dist/schemes/_entry-graph.js.map +1 -1
  352. package/dist/schemes/_entry-graph.sql +37 -22
  353. package/dist/schemes/_entry-manifest.d.ts +10 -15
  354. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  355. package/dist/schemes/_entry-manifest.js +50 -268
  356. package/dist/schemes/_entry-manifest.js.map +1 -1
  357. package/dist/schemes/_entry-ops.d.ts +14 -15
  358. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  359. package/dist/schemes/_entry-ops.js +121 -110
  360. package/dist/schemes/_entry-ops.js.map +1 -1
  361. package/dist/schemes/_entry-ops.sql +2 -3
  362. package/dist/schemes/_entry-semantic.d.ts +22 -9
  363. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  364. package/dist/schemes/_entry-semantic.js +127 -67
  365. package/dist/schemes/_entry-semantic.js.map +1 -1
  366. package/dist/schemes/_entry-semantic.sql +63 -45
  367. package/dist/schemes/_entry-send.d.ts +3 -4
  368. package/dist/schemes/_entry-send.d.ts.map +1 -1
  369. package/dist/schemes/_entry-send.js +48 -23
  370. package/dist/schemes/_entry-send.js.map +1 -1
  371. package/dist/schemes/_path-scope.d.ts +23 -0
  372. package/dist/schemes/_path-scope.d.ts.map +1 -0
  373. package/dist/schemes/_path-scope.js +61 -0
  374. package/dist/schemes/_path-scope.js.map +1 -0
  375. package/dist/schemes/_search-candidate.d.ts +20 -0
  376. package/dist/schemes/_search-candidate.d.ts.map +1 -0
  377. package/dist/schemes/_search-candidate.js +19 -0
  378. package/dist/schemes/_search-candidate.js.map +1 -0
  379. package/dist/schemes/_search-exclusion.d.ts +7 -0
  380. package/dist/schemes/_search-exclusion.d.ts.map +1 -0
  381. package/dist/schemes/_search-exclusion.js +23 -0
  382. package/dist/schemes/_search-exclusion.js.map +1 -0
  383. package/dist/schemes/_search-index.d.ts +6 -0
  384. package/dist/schemes/_search-index.d.ts.map +1 -0
  385. package/dist/schemes/_search-index.js +328 -0
  386. package/dist/schemes/_search-index.js.map +1 -0
  387. package/dist/schemes/cosine.js +1 -1
  388. package/dist/schemes/cosine.js.map +1 -1
  389. package/dist/schemes/exec-abort.js +3 -3
  390. package/dist/schemes/exec-abort.js.map +1 -1
  391. package/dist/schemes/exec-env.js +3 -3
  392. package/dist/schemes/exec-env.js.map +1 -1
  393. package/dist/server/BranchBatches.d.ts +49 -0
  394. package/dist/server/BranchBatches.d.ts.map +1 -0
  395. package/dist/server/BranchBatches.js +592 -0
  396. package/dist/server/BranchBatches.js.map +1 -0
  397. package/dist/server/Daemon.d.ts +39 -71
  398. package/dist/server/Daemon.d.ts.map +1 -1
  399. package/dist/server/Daemon.js +1133 -491
  400. package/dist/server/Daemon.js.map +1 -1
  401. package/dist/server/DaemonModule.d.ts +31 -0
  402. package/dist/server/DaemonModule.d.ts.map +1 -0
  403. package/dist/server/DaemonModule.js +2 -0
  404. package/dist/server/DaemonModule.js.map +1 -0
  405. package/dist/server/branch-batch.sql +154 -0
  406. package/dist/server/client-input.d.ts +13 -0
  407. package/dist/server/client-input.d.ts.map +1 -1
  408. package/dist/server/client-input.js +268 -57
  409. package/dist/server/client-input.js.map +1 -1
  410. package/dist/server/dispatch-as-plurnk.d.ts +1 -1
  411. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  412. package/dist/server/dispatch-as-plurnk.js +15 -7
  413. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  414. package/dist/server/drain.sql +96 -65
  415. package/dist/server/envelope.d.ts +4 -7
  416. package/dist/server/envelope.d.ts.map +1 -1
  417. package/dist/server/envelope.js +118 -95
  418. package/dist/server/envelope.js.map +1 -1
  419. package/dist/server/envelope.sql +18 -23
  420. package/dist/server/exec-poll-backoff.js +1 -1
  421. package/dist/server/exec-poll-backoff.js.map +1 -1
  422. package/dist/server/lifecycle-recovery.sql +112 -2
  423. package/dist/server/logEntry.d.ts +4 -2
  424. package/dist/server/logEntry.d.ts.map +1 -1
  425. package/dist/server/logEntry.js +6 -3
  426. package/dist/server/logEntry.js.map +1 -1
  427. package/dist/server/logEntry.sql +1 -1
  428. package/dist/server/loop-model.d.ts.map +1 -1
  429. package/dist/server/loop-model.js +22 -9
  430. package/dist/server/loop-model.js.map +1 -1
  431. package/dist/server/loopDocs.d.ts.map +1 -1
  432. package/dist/server/loopDocs.js +5 -4
  433. package/dist/server/loopDocs.js.map +1 -1
  434. package/dist/server/seam-entry-read.sql +15 -10
  435. package/dist/server/seam-log-read.sql +2 -2
  436. package/dist/server/seam-loop.sql +1 -1
  437. package/dist/server/seam-proposal-list.sql +17 -7
  438. package/dist/service.d.ts.map +1 -1
  439. package/dist/service.js +79 -61
  440. package/dist/service.js.map +1 -1
  441. package/migrations/001_schema.sql +1010 -0
  442. package/package.json +65 -32
  443. package/dist/core/PluginLoader.d.ts +0 -20
  444. package/dist/core/PluginLoader.d.ts.map +0 -1
  445. package/dist/core/PluginLoader.js +0 -142
  446. package/dist/core/PluginLoader.js.map +0 -1
  447. package/dist/core/TelemetryChannel.d.ts +0 -37
  448. package/dist/core/TelemetryChannel.d.ts.map +0 -1
  449. package/dist/core/TelemetryChannel.js +0 -80
  450. package/dist/core/TelemetryChannel.js.map +0 -1
  451. package/dist/core/path-decode.d.ts +0 -3
  452. package/dist/core/path-decode.d.ts.map +0 -1
  453. package/dist/core/path-decode.js +0 -9
  454. package/dist/core/path-decode.js.map +0 -1
  455. package/dist/core/plugin-attribution.d.ts +0 -5
  456. package/dist/core/plugin-attribution.d.ts.map +0 -1
  457. package/dist/core/plugin-attribution.js +0 -39
  458. package/dist/core/plugin-attribution.js.map +0 -1
  459. package/dist/core/world-state.d.ts +0 -10
  460. package/dist/core/world-state.d.ts.map +0 -1
  461. package/dist/core/world-state.js +0 -35
  462. package/dist/core/world-state.js.map +0 -1
  463. package/dist/core/world-state.sql +0 -35
  464. package/dist/core/zero-pin.d.ts +0 -3
  465. package/dist/core/zero-pin.d.ts.map +0 -1
  466. package/dist/core/zero-pin.js +0 -16
  467. package/dist/core/zero-pin.js.map +0 -1
  468. package/dist/server/auto.d.ts +0 -6
  469. package/dist/server/auto.d.ts.map +0 -1
  470. package/dist/server/auto.js +0 -63
  471. package/dist/server/auto.js.map +0 -1
  472. package/dist/server/clientTurn.d.ts +0 -6
  473. package/dist/server/clientTurn.d.ts.map +0 -1
  474. package/dist/server/clientTurn.js +0 -22
  475. package/dist/server/clientTurn.js.map +0 -1
  476. package/dist/server/clientTurn.sql +0 -10
  477. package/dist/server/noProposals.d.ts +0 -6
  478. package/dist/server/noProposals.d.ts.map +0 -1
  479. package/dist/server/noProposals.js +0 -37
  480. package/dist/server/noProposals.js.map +0 -1
  481. package/dist/server/version-info.d.ts +0 -14
  482. package/dist/server/version-info.d.ts.map +0 -1
  483. package/dist/server/version-info.js +0 -69
  484. package/dist/server/version-info.js.map +0 -1
  485. package/migrations/0000-00-00.01_schema.sql +0 -536
  486. package/migrations/0004_loop-provider.sql +0 -3
  487. package/migrations/0005_subscription-published-channel.sql +0 -3
  488. package/migrations/0006_loop-max-turns.sql +0 -3
@@ -1,23 +1,17 @@
1
1
  import EntryCrud from "./_entry-crud.js";
2
- import { decodePathParens } from "../core/path-decode.js";
3
- import { foldAuthorityIntoPath } from "../core/plurnk-uri.js";
2
+ import { entryPathnameOf } from "../core/plurnk-uri.js";
4
3
  import Owner from "../core/Owner.js";
5
4
  import EntryManifest from "./_entry-manifest.js";
6
- import { LineMarkerOps, MimetypeBinary, PathMimetype, ReadResolve, editReceipt, editReceiptUnit } from "../content/index.js";
5
+ import { LineMarkerOps, MimetypeBinary, PathMimetype, ReadProjector, editReceipt } from "../content/index.js";
6
+ import Results from "../core/results.js";
7
7
  export default class EntryOps {
8
8
  static #pathnameOf(statement) {
9
9
  const t = statement.target;
10
10
  if (t === null)
11
11
  throw new Error("unreachable");
12
- if (t.kind === "regex")
13
- return t.raw; // regex source — parens are syntax, never encoded
14
- // Namespace-as-authority: fold a plurnk://docs/x.md authority back into the storage
15
- // path (/docs/x.md) so it keys identically to the empty-authority form. #239 item 4
16
- // ({§stream-owner-scoped} streams never reach this fold: their face resolves the authority
17
- // to the owner and hands the statement over authority-stripped.)
18
- if (t.kind === "url")
19
- return decodePathParens(foldAuthorityIntoPath(t.hostname, t.pathname));
20
- return decodePathParens(t.raw);
12
+ // Owner-carved schemes strip their authority before reaching the shared
13
+ // entry layer; every remaining authority is part of entry identity.
14
+ return entryPathnameOf(t);
21
15
  }
22
16
  static #fragmentOf(statement) {
23
17
  const t = statement.target;
@@ -26,23 +20,34 @@ export default class EntryOps {
26
20
  return t.fragment;
27
21
  }
28
22
  static #resolveChannel(fragment, channels, defaultChannel) {
29
- const target = fragment ?? defaultChannel; // fragment selects the named channel; absent → default — §channel-selection-fragment-selects-named-channel §channel-selection-fragmentless-targets-default-channel
23
+ const target = fragment ?? defaultChannel; // fragment selects the named channel; absent → default — {§channel-selection-fragment-selects-named-channel} {§channel-selection-fragmentless-targets-default-channel}
30
24
  // The default channel is always valid — dynamic-channel schemes (File:
31
25
  // channels={}, mimetype derived per-file) declare none, but their body
32
26
  // channel still exists. A non-default fragment must be a declared channel.
33
27
  if (target === defaultChannel)
34
28
  return target;
35
29
  if (!(target in channels))
36
- return null; // unknown channel name → null → 400 at the caller — §channel-selection-unknown-channel-400
30
+ return null; // unknown channel name → null → 400 at the caller — {§channel-selection-unknown-channel-400}
37
31
  return target;
38
32
  }
39
- // §channel-selection-unknown-channel-400 — the 400 carries its fact: the tried fragment and
33
+ // {§channel-selection-unknown-channel-400} — the 400 carries its fact: the tried fragment and
40
34
  // the declared universe, so one miss teaches the topology instead of forcing a guessing walk
41
- // (run-sweep: a model probed #stdout/#stderr/#body against a results-channel search stream,
35
+ // (failure specimen: a model probed #stdout/#stderr/#body against a results-channel search stream,
42
36
  // each miss a bare 400 that taught nothing).
43
- static #channelMissFact(fragment, scheme, pathname, channels, defaultChannel) {
44
- const declared = [...new Set([defaultChannel, ...Object.keys(channels)])].filter((c) => c.length > 0);
45
- return `no channel #${fragment} at ${EntryManifest.toPath(scheme, pathname)}; channels: ${declared.join(", ")}`;
37
+ static #channelMiss(fragment, scheme, pathname, channels, defaultChannel) {
38
+ const availableChannels = [...new Set([defaultChannel, ...Object.keys(channels)])].filter((channel) => channel.length > 0);
39
+ const requestedChannel = fragment ?? defaultChannel;
40
+ return {
41
+ detail: `Channel #${requestedChannel} does not exist at ${EntryManifest.toPath(scheme, pathname)}.`,
42
+ extensions: {
43
+ requestedChannel,
44
+ availableChannels,
45
+ ...(availableChannels.length === 0
46
+ ? {}
47
+ : { recovery: `Use one of the available channels: ${availableChannels.map((channel) => `#${channel}`).join(", ")}.` }),
48
+ retryable: false,
49
+ },
50
+ };
46
51
  }
47
52
  // {§entry-owner} — the entry's owner for this call: an owner-carved face (worker://, the
48
53
  // capability streams) resolves its authority itself (empty/~/name per its carving) and passes
@@ -53,46 +58,60 @@ export default class EntryOps {
53
58
  return Owner.commonsId(ctx.db, ctx.workspaceId);
54
59
  }
55
60
  static async editWorkspaceEntryBatch(statements, ctx, manifest, explicitOwnerId) {
61
+ const failure = (code, status, detail, fields, extensions = {}) => Results.failure(`scheme:${manifest.name}`, code, status, detail, fields, extensions);
56
62
  const statement = statements[0];
57
- if (statement === undefined)
58
- return { status: 400, entryId: null, channel: null, error: "EDIT batch is empty" };
59
- if (statement.target === null)
60
- return { status: 400, entryId: null, channel: null };
63
+ if (statement === undefined) {
64
+ return failure("edit-empty", 400, "EDIT requires at least one statement.", { entryId: null, channel: null }, {
65
+ recovery: "Provide an EDIT statement.",
66
+ retryable: false,
67
+ });
68
+ }
69
+ if (statement.target === null) {
70
+ return failure("edit-target-required", 400, "EDIT requires a target path.", { entryId: null, channel: null }, {
71
+ recovery: "Provide the entry target.",
72
+ retryable: false,
73
+ });
74
+ }
61
75
  const { db, workspaceId } = ctx;
62
76
  const { name: scheme, channels, defaultChannel } = manifest;
63
77
  const fragment = EntryOps.#fragmentOf(statement);
64
78
  const pathname = EntryOps.#pathnameOf(statement);
65
79
  const targetChannel = EntryOps.#resolveChannel(fragment, channels, defaultChannel);
66
- if (targetChannel === null)
67
- return { status: 400, entryId: null, channel: null, error: EntryOps.#channelMissFact(fragment, scheme, pathname, channels, defaultChannel) };
80
+ if (targetChannel === null) {
81
+ const miss = EntryOps.#channelMiss(fragment, scheme, pathname, channels, defaultChannel);
82
+ return failure("channel-not-found", 400, miss.detail, { entryId: null, channel: null }, miss.extensions);
83
+ }
68
84
  for (const candidate of statements.slice(1)) {
69
85
  if (candidate.target === null
70
86
  || EntryOps.#pathnameOf(candidate) !== pathname
71
87
  || EntryOps.#fragmentOf(candidate) !== fragment) {
72
- return { status: 400, entryId: null, channel: targetChannel, error: "EDIT batch spans multiple resources or channels" };
88
+ return failure("edit-batch-mismatch", 400, "The EDIT batch spans multiple resources or channels.", { entryId: null, channel: targetChannel }, {
89
+ recovery: "Submit a separate EDIT batch for each resource and channel.",
90
+ retryable: false,
91
+ });
73
92
  }
74
93
  }
75
94
  const ownerId = await EntryOps.#ownerOf(explicitOwnerId, ctx);
76
95
  const existing = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, owner_id: ownerId, scheme, pathname });
77
- // Non-default channel write requires the entry to exist (§channel-selection-fragment-on-nonexistent-404).
96
+ // Non-default channel write requires the entry to exist ({§channel-selection-fragment-on-nonexistent-404}).
78
97
  if (existing === undefined && fragment !== null) {
79
- return { status: 404, entryId: null, channel: targetChannel };
98
+ return failure("entry-not-found", 404, `No entry exists at ${EntryManifest.toPath(scheme, pathname)}.`, { entryId: null, channel: targetChannel });
80
99
  }
81
- // Effective mimetype for this entry. Per plurnk-grammar 0.14.0:
100
+ // Effective mimetype for this entry, per the shared contracts:
82
101
  // "Path suffix declares mimetype; absent suffix defers to scheme default."
83
- // `known:///users.json` → application/json (extension wins).
84
- // `known:///users` → text/markdown (scheme manifest default).
102
+ // `worker:///users.json` → application/json (extension wins).
103
+ // `worker:///users` → text/markdown (scheme manifest default).
85
104
  const channelManifestDefault = channels[targetChannel];
86
105
  const effectiveMimetype = await PathMimetype.resolveEntryMimetype(pathname, channelManifestDefault, ctx.mimetypes);
87
- // 415 on binary entries (SPEC.md §op-invariants).
106
+ // 415 on binary entries (SPEC.md {§op-invariants}).
88
107
  if (existing !== undefined) {
89
108
  const channel = await db.ops_read_channel.get({ ...{ workspace_id: workspaceId, scheme, pathname, channel: targetChannel }, owner_id: ownerId });
90
- if (channel !== undefined && MimetypeBinary.isBinaryMimetype(channel.mimetype)) {
91
- return { status: 415, entryId: existing.id, channel: targetChannel };
109
+ if (channel !== undefined && await MimetypeBinary.isBinaryMimetype(channel.mimetype, ctx.mimetypes)) {
110
+ return failure("binary-edit-unsupported", 415, `The #${targetChannel} channel is binary and cannot be edited.`, { entryId: existing.id, channel: targetChannel });
92
111
  }
93
112
  }
94
- if (MimetypeBinary.isBinaryMimetype(effectiveMimetype)) {
95
- return { status: 415, entryId: existing?.id ?? null, channel: targetChannel };
113
+ if (await MimetypeBinary.isBinaryMimetype(effectiveMimetype, ctx.mimetypes)) {
114
+ return failure("binary-edit-unsupported", 415, `The #${targetChannel} channel is binary and cannot be edited.`, { entryId: existing?.id ?? null, channel: targetChannel });
96
115
  }
97
116
  // Read current content unconditionally for diff generation (M.12 —
98
117
  // surface diff in EDIT response so wrong-marker mistakes are visible).
@@ -101,37 +120,47 @@ export default class EntryOps {
101
120
  const channel = await db.ops_read_channel.get({ ...{ workspace_id: workspaceId, scheme, pathname, channel: targetChannel }, owner_id: ownerId });
102
121
  originalContent = channel?.content ?? "";
103
122
  }
104
- // `<L>` line marker EDIT semantics. Dispatch on effective mimetype:
105
- // JSON → LineMarkerOps.applyJsonItemEdit (structural item edit, plurnk-grammar 0.13.0);
106
- // otherwise → LineMarkerOps.applyLineMarkerEdit (line edit, original semantics).
123
+ // `<scope>` always addresses the selected channel's textual representation.
124
+ // Structured query dialects locate content but never redefine mutation coordinates.
107
125
  // A CREATE (no existing entry) has nothing to scope into, so a markerless body
108
- // becomes the new entry's content. {§edit-marker-required-on-existing} (#571) — an
126
+ // becomes the new entry's content. {§edit-marker-required-on-existing}: an
109
127
  // EXISTING entry has no easy-clobber path: a marker is REQUIRED, even for a
110
128
  // deliberate full rewrite (`<1,-1>` states that intent explicitly).
111
129
  let newContent;
130
+ let scopeNormalizations;
112
131
  if (existing !== undefined && statements.some(({ lineMarker }) => lineMarker === null)) {
113
- return { status: 400, entryId: existing.id, channel: targetChannel, error: "EDIT of an existing entry requires a line marker — use <1,-1> to replace the whole entry deliberately" };
132
+ return failure("line-marker-required", 400, "EDIT of an existing entry requires a line marker.", { entryId: existing.id, channel: targetChannel }, {
133
+ recovery: "Use <1,-1> to replace the whole entry or select a narrower range.",
134
+ retryable: false,
135
+ });
114
136
  }
115
137
  if (existing !== undefined) {
116
138
  const edits = statements.map((candidate) => ({
117
139
  marker: candidate.lineMarker,
118
140
  body: candidate.body ?? "",
119
141
  }));
120
- const result = MimetypeBinary.isJsonMimetype(effectiveMimetype)
121
- ? LineMarkerOps.applyJsonItemEditBatch(originalContent, edits)
122
- : LineMarkerOps.applyLineMarkerEditBatch(originalContent, edits);
123
- if (result.status !== 200)
124
- return { status: result.status, entryId: existing.id, channel: targetChannel, error: result.error };
142
+ const result = LineMarkerOps.applyLineMarkerEditBatch(originalContent, edits);
143
+ if (result.status !== 200) {
144
+ return Results.assert({
145
+ ...result,
146
+ entryId: existing.id,
147
+ channel: targetChannel,
148
+ });
149
+ }
125
150
  newContent = result.result ?? "";
151
+ scopeNormalizations = result.scopeNormalizations;
126
152
  }
127
153
  else {
128
154
  if (statements.length !== 1) {
129
- return { status: 409, entryId: null, channel: targetChannel, error: "creation cannot coexist with another EDIT" };
155
+ return failure("creation-batch-conflict", 409, "Multiple EDIT operations attempted to create the same entry.", { entryId: null, channel: targetChannel }, {
156
+ recovery: "Create the entry with one EDIT before applying additional edits.",
157
+ retryable: false,
158
+ });
130
159
  }
131
160
  newContent = statement.body ?? "";
132
161
  }
133
- // 304 no-op (SPEC §edit): an existing entry whose write would change nothing —
134
- // identical content and no new tag. Mirrors OPEN/FOLD's 304 on no-op; hands the
162
+ // 304 no-op (SPEC {§edit}): an existing entry whose write would change nothing —
163
+ // identical content and no new tag. Mirrors OPEN/FOLD's idempotence; hands the
135
164
  // model a "you already did this" signal instead of a phantom 200 it can't
136
165
  // distinguish from a real update.
137
166
  if (existing !== undefined && newContent === originalContent) {
@@ -142,7 +171,12 @@ export default class EntryOps {
142
171
  addsTag = signalTags.some((t) => !have.has(t));
143
172
  }
144
173
  if (!addsTag)
145
- return { status: 304, entryId: existing.id, channel: targetChannel }; // §edit-noop-304
174
+ return {
175
+ status: 304,
176
+ entryId: existing.id,
177
+ channel: targetChannel,
178
+ ...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
179
+ }; // {§edit-noop-304}
146
180
  }
147
181
  let entryId;
148
182
  let createdNow;
@@ -159,11 +193,10 @@ export default class EntryOps {
159
193
  }
160
194
  if (ctx.tokenize === undefined)
161
195
  throw new Error("editWorkspaceEntry: ctx.tokenize is required for token accounting");
162
- await db.ops_upsert_channel.run({ entry_id: entryId, name: targetChannel, content: newContent, mimetype: effectiveMimetype, tokens: ctx.tokenize(newContent) }); // EDIT writes exactly the one resolved channel — §per-entry-channels-edit-writes-only-body
163
- // NB: NO @graph derivation here — a scheme write resolves the mimetype
164
- // label but never invokes the mimetypes handler (§mimetype). The symbol index is
165
- // built engine-side at manifest-add (EntryManifest.buildManifestBody).
166
- // Tags apply additively — each signal tag is written, never replacing existing ones. §edit-tags-additive
196
+ await db.ops_upsert_channel.run({ entry_id: entryId, name: targetChannel, content: newContent, mimetype: effectiveMimetype, tokens: ctx.tokenize(newContent) }); // EDIT writes exactly the one resolved channel — {§per-entry-channels-edit-writes-only-body}
197
+ // Search derivation is not a write concern. SearchIndex attaches the
198
+ // updated readable projection before the next model execution.
199
+ // Tags apply additively — each signal tag is written, never replacing existing ones. {§edit-tags-additive}
167
200
  for (const candidate of statements) {
168
201
  if (!Array.isArray(candidate.signal))
169
202
  continue;
@@ -178,77 +211,55 @@ export default class EntryOps {
178
211
  status: createdNow ? 201 : 200,
179
212
  entryId,
180
213
  channel: targetChannel,
181
- editReceipt: editReceipt(originalContent, newContent, receiptEdits, {
182
- unit: editReceiptUnit(MimetypeBinary.isJsonMimetype(effectiveMimetype), originalContent, newContent),
183
- }),
184
- }; // §edit-status-201-200
214
+ editReceipt: editReceipt(originalContent, newContent, receiptEdits),
215
+ ...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
216
+ }; // {§edit-status-201-200}
185
217
  }
186
- // Scope-aware entry delete — the KILL counterpart of editWorkspaceEntry. Resolves the
187
- // entry via the scope's crud_find variant (so a worker-scope row is found, not just
188
- // workspace), then deletes by id (channels/tags CASCADE). 404 when the entry is absent.
218
+ // Owner-aware entry delete — the KILL counterpart of editWorkspaceEntry. Resolves
219
+ // the exact owner-held row, then deletes by id (channels/tags CASCADE). 404 when absent.
189
220
  static async deleteWorkspaceEntry(statement, ctx, manifest, explicitOwnerId) {
190
- if (statement.target === null)
191
- return { status: 400 };
221
+ if (statement.target === null) {
222
+ return Results.failure(`scheme:${manifest.name}`, "delete-target-required", 400, "KILL requires a target path.", {}, {
223
+ recovery: "Provide the entry target.",
224
+ retryable: false,
225
+ });
226
+ }
192
227
  const { db, workspaceId } = ctx;
193
228
  const pathname = EntryOps.#pathnameOf(statement);
194
229
  const ownerId = await EntryOps.#ownerOf(explicitOwnerId, ctx);
195
230
  const existing = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, owner_id: ownerId, scheme: manifest.name, pathname });
196
- if (existing === undefined)
197
- return { status: 404 };
231
+ if (existing === undefined) {
232
+ return Results.failure(`scheme:${manifest.name}`, "entry-not-found", 404, `No entry exists at ${EntryManifest.toPath(manifest.name, pathname)}.`, {}, { target: EntryManifest.toPath(manifest.name, pathname) });
233
+ }
198
234
  await db.crud_delete_entry.run({ entry_id: existing.id });
199
235
  return { status: 200 };
200
236
  }
201
- static async readWorkspaceEntry(statement, ctx, manifest, explicitOwnerId) {
202
- if (statement.target === null)
203
- return { status: 400, content: null, mimetype: null, channel: null };
204
- const { db, workspaceId } = ctx;
205
- const { channels, defaultChannel } = manifest;
237
+ static async readWorkspaceEntry(statement, ctx, manifest, address = {}) {
238
+ const failure = (code, status, detail, fields, extensions = {}) => Results.failure(`scheme:${manifest.name}`, code, status, detail, fields, extensions);
239
+ if (statement.target === null) {
240
+ return failure("read-target-required", 400, "READ requires a target path.", { content: null, mimetype: null, channel: null }, {
241
+ recovery: "Provide the entry target.",
242
+ retryable: false,
243
+ });
244
+ }
206
245
  // Scope by the manifest's persisted entries.scheme (storedScheme; absent →
207
246
  // name). File persists under the reserved 'file' scheme ({§entry-identity-no-null}).
208
247
  const scheme = EntryCrud.identityScheme(manifest);
209
- const fragment = EntryOps.#fragmentOf(statement);
210
- const pathname = EntryOps.#pathnameOf(statement);
211
- const targetChannel = EntryOps.#resolveChannel(fragment, channels, defaultChannel);
212
- if (targetChannel === null)
213
- return { status: 400, content: null, mimetype: null, channel: null, error: EntryOps.#channelMissFact(fragment, scheme, pathname, channels, defaultChannel) };
214
- const ownerId = await EntryOps.#ownerOf(explicitOwnerId, ctx);
215
- // An xpath is a question about the DOM — a fragmentless xpath READ routes to the raw `html`
216
- // channel (the archive the decisive markdown body was projected from). A fragment still wins.
217
- let readChannel = targetChannel;
218
- if (fragment === null && statement.body !== null && statement.body.dialect === "xpath") {
219
- const html = await db.ops_read_channel.get({ ...{ workspace_id: workspaceId, scheme, pathname, channel: "html" }, owner_id: ownerId });
220
- if (html !== undefined)
221
- readChannel = "html";
222
- }
223
- const row = await db.ops_read_channel.get({ ...{ workspace_id: workspaceId, scheme, pathname, channel: readChannel }, owner_id: ownerId });
224
- // §read-read-404 + {§fs-errno} — ENOENT carries its fact, the RESOLVED name in wire
248
+ const pathname = address.pathname ?? EntryOps.#pathnameOf(statement);
249
+ const ownerId = await EntryOps.#ownerOf(address.ownerId, ctx);
250
+ const stored = await EntryCrud.readEntry(pathname, ctx, scheme, ownerId);
251
+ // {§read-read-404} + {§fs-errno} — ENOENT carries its fact, the RESOLVED name in wire
225
252
  // canon: the model distinguishes wrong-address from wrong-range by the strings alone.
226
- if (row === undefined)
227
- return { status: 404, content: null, mimetype: null, channel: targetChannel, error: `no entry at ${EntryManifest.toPath(scheme, pathname)}` };
228
- if (MimetypeBinary.isBinaryMimetype(row.mimetype)) {
229
- return { status: 415, content: null, mimetype: row.mimetype, channel: targetChannel };
230
- }
231
- // `[tag]` filter: entry must have ALL requested tags. Mismatch = 404
232
- // (entry doesn't match the tag-scoped READ).
233
- if (Array.isArray(statement.signal) && statement.signal.length > 0) {
234
- const entry = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, owner_id: ownerId, scheme, pathname });
235
- if (entry === undefined)
236
- return { status: 404, content: null, mimetype: null, channel: targetChannel };
237
- const tagRows = await db.crud_read_tags.all({ entry_id: entry.id });
238
- const have = new Set(tagRows.map((r) => r.tag));
239
- for (const want of statement.signal) {
240
- if (!have.has(want))
241
- return { status: 404, content: null, mimetype: null, channel: targetChannel };
242
- }
253
+ if (stored.entry === null) {
254
+ return failure("entry-not-found", 404, `No entry exists at ${EntryManifest.toPath(scheme, pathname)}.`, { content: null, mimetype: null, channel: null }, { target: EntryManifest.toPath(scheme, pathname) });
243
255
  }
244
- const r = await ReadResolve.resolve({
245
- content: row.content,
246
- mimetype: row.mimetype,
247
- lineMarker: statement.lineMarker,
248
- body: statement.body,
256
+ return ReadProjector.project({
257
+ statement,
258
+ manifest: { ...manifest, name: scheme },
259
+ target: EntryManifest.toPath(scheme, pathname),
260
+ representation: stored.entry,
249
261
  mimetypes: ctx.mimetypes,
250
262
  });
251
- return { ...r, channel: readChannel }; // READ returns the resolved channel's content + mimetype — §read-read-content
252
263
  }
253
264
  }
254
265
  //# sourceMappingURL=_entry-ops.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-ops.js","sourceRoot":"","sources":["../../src/schemes/_entry-ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_entry-ops.js","sourceRoot":"","sources":["../../src/schemes/_entry-ops.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- -- Workspace-entry op handlers for entry-bearing schemes (SPEC §scheme, §channel-selection).
1
+ -- Workspace-entry op handlers for entry-bearing schemes (SPEC {§scheme}, {§channel-selection}).
2
2
  -- Some queries reuse PREPs declared in _entry-crud.sql:
3
3
  -- crud_find_workspace_entry, crud_write_tag
4
4
 
@@ -9,7 +9,7 @@ VALUES ($entry_id, $name, $content, $mimetype, $tokens, 'static');
9
9
 
10
10
  -- PREP: ops_read_channel
11
11
  -- READ targeting a specific channel of an entry — identity is (workspace, owner, scheme, pathname).
12
- SELECT ec.content, ec.mimetype
12
+ SELECT ec.content, ec.mimetype, ec.producer_result
13
13
  FROM entries e
14
14
  JOIN entry_channels ec ON ec.entry_id = e.id
15
15
  WHERE e.workspace_id = $workspace_id
@@ -17,4 +17,3 @@ WHERE e.workspace_id = $workspace_id
17
17
  AND e.scheme = $scheme
18
18
  AND e.pathname = $pathname
19
19
  AND ec.name = $channel;
20
-
@@ -1,8 +1,22 @@
1
1
  import type { Db } from "../core/Db.ts";
2
- import type { Mimetypes } from "@plurnk/plurnk-mimetypes";
2
+ import { type LineMarker, type Notice } from "@plurnk/plurnk-contracts";
3
+ import { type Mimetypes, type TokenCountOptions, type TokenizerResolution } from "@plurnk/plurnk-mimetypes";
4
+ type EmbedderInfo = NonNullable<Awaited<ReturnType<Mimetypes["embedderInfo"]>>>;
5
+ import type { SearchCandidate } from "./_search-candidate.ts";
6
+ export interface SemanticPlan {
7
+ readonly mimetypes: Mimetypes;
8
+ readonly info: EmbedderInfo | null;
9
+ readonly countTokens: ((text: string, options?: TokenCountOptions) => Promise<number>) | null;
10
+ readonly tokenizer: TokenizerResolution | null;
11
+ readonly signature: string;
12
+ }
13
+ type SemanticResultSelection = {
14
+ threshold: number | null;
15
+ page: LineMarker;
16
+ };
3
17
  export default class EntrySemantic {
4
18
  #private;
5
- static defaultTopK(): number;
19
+ static resultSelection(marker: LineMarker | null): SemanticResultSelection;
6
20
  static maxEmbedSize(): number;
7
21
  static embedSizeRejection(content: string): {
8
22
  actualBytes: number;
@@ -15,7 +29,7 @@ export default class EntrySemantic {
15
29
  lineEnd: number;
16
30
  vector: Uint8Array;
17
31
  }[], model: string | undefined): Promise<void>;
18
- static deriveEmbeddings(mimetypes: Mimetypes, content: string, symbols: readonly {
32
+ static deriveEmbeddings(plan: SemanticPlan, content: string, symbols: readonly {
19
33
  line?: number;
20
34
  endLine?: number;
21
35
  }[], fallbackEmbedding: Uint8Array | undefined, fallbackModel: string | undefined, signal?: AbortSignal, onProgress?: (progress: {
@@ -30,18 +44,17 @@ export default class EntrySemantic {
30
44
  }[];
31
45
  model: string | undefined;
32
46
  }>;
33
- static deepConfigSignature(mimetypes: Mimetypes): Promise<string>;
47
+ static assertExactChunking(plan: SemanticPlan, pushNotice?: (notice: Notice) => void): void;
48
+ static prepareEmbeddings(mimetypes: Mimetypes): Promise<SemanticPlan>;
34
49
  static ftsQueryFor(text: string): string;
35
- static rankSemantic(db: Db, workspaceId: number, scheme: string | null, entryIds: readonly number[], mimetypes: Mimetypes, queryText: string, marker: {
36
- first: number;
37
- last: number | null;
38
- }): Promise<{
50
+ static rankCandidates(db: Db, candidates: readonly SearchCandidate[], mimetypes: Mimetypes, queryText: string, selection: Pick<SemanticResultSelection, "threshold">): Promise<{
39
51
  status: number;
40
52
  results: Array<{
41
- pathname: string;
53
+ key: string;
42
54
  lineStart: number;
43
55
  lineEnd: number;
44
56
  }>;
45
57
  }>;
46
58
  }
59
+ export {};
47
60
  //# sourceMappingURL=_entry-semantic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-semantic.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAO1D,MAAM,CAAC,OAAO,OAAO,aAAa;;IAC9B,MAAM,CAAC,WAAW,IAAI,MAAM,CAO3B;IAED,MAAM,CAAC,YAAY,IAAI,MAAM,CAO5B;IAED,MAAM,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAK3F;IAID,OAAa,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlF;IAMD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,CAOlD;IAKD,OAAa,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,CAAA;KAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxK;IAOD,OAAa,gBAAgB,CACzB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,SAAS;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,EACvD,iBAAiB,EAAE,UAAU,GAAG,SAAS,EACzC,aAAa,EAAE,MAAM,GAAG,SAAS,EACjC,MAAM,CAAC,EAAE,WAAW,EACpB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,KAAK,EAAE,UAAU,GAAG,WAAW,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,GACvG,OAAO,CAAC;QAAE,MAAM,EAAE;YAAE,SAAS,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,UAAU,CAAA;SAAE,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,CA6C9G;IAmCD,OAAa,mBAAmB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAMtE;IAGD,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIvC;IAMD,OAAa,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,SAAS,MAAM,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CA2CzS;CACJ"}
1
+ {"version":3,"file":"_entry-semantic.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"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"}