@plurnk/plurnk-service 1.3.12 → 1.4.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 (469) hide show
  1. package/.env.defaults +84 -77
  2. package/INSTALL.md +50 -25
  3. package/README.md +24 -10
  4. package/SPEC.md +2311 -928
  5. package/dist/Paths.d.ts +4 -1
  6. package/dist/Paths.d.ts.map +1 -1
  7. package/dist/Paths.js +23 -21
  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 +3 -3
  18. package/dist/content/index.d.ts.map +1 -1
  19. package/dist/content/index.js +1 -1
  20. package/dist/content/index.js.map +1 -1
  21. package/dist/content/line-marker.d.ts +6 -9
  22. package/dist/content/line-marker.d.ts.map +1 -1
  23. package/dist/content/line-marker.js +7 -11
  24. package/dist/content/line-marker.js.map +1 -1
  25. package/dist/content/matcher.d.ts +14 -25
  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-resolve.d.ts +8 -4
  36. package/dist/content/read-resolve.d.ts.map +1 -1
  37. package/dist/content/read-resolve.js +101 -49
  38. package/dist/content/read-resolve.js.map +1 -1
  39. package/dist/core/BranchReceipt.d.ts +7 -0
  40. package/dist/core/BranchReceipt.d.ts.map +1 -0
  41. package/dist/core/BranchReceipt.js +27 -0
  42. package/dist/core/BranchReceipt.js.map +1 -0
  43. package/dist/core/BudgetOverflow.d.ts +23 -0
  44. package/dist/core/BudgetOverflow.d.ts.map +1 -0
  45. package/dist/core/BudgetOverflow.js +61 -0
  46. package/dist/core/BudgetOverflow.js.map +1 -0
  47. package/dist/core/BudgetReadout.d.ts +8 -0
  48. package/dist/core/BudgetReadout.d.ts.map +1 -0
  49. package/dist/core/BudgetReadout.js +79 -0
  50. package/dist/core/BudgetReadout.js.map +1 -0
  51. package/dist/core/ChannelWrite.d.ts +28 -9
  52. package/dist/core/ChannelWrite.d.ts.map +1 -1
  53. package/dist/core/ChannelWrite.js +28 -21
  54. package/dist/core/ChannelWrite.js.map +1 -1
  55. package/dist/core/ChannelWrite.sql +11 -10
  56. package/dist/core/CoreSchemeServices.d.ts +10 -4
  57. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  58. package/dist/core/CoreSchemeServices.js +7 -1
  59. package/dist/core/CoreSchemeServices.js.map +1 -1
  60. package/dist/core/Dispatcher.d.ts +29 -20
  61. package/dist/core/Dispatcher.d.ts.map +1 -1
  62. package/dist/core/Dispatcher.js +1488 -599
  63. package/dist/core/Dispatcher.js.map +1 -1
  64. package/dist/core/DurableStatement.d.ts +6 -0
  65. package/dist/core/DurableStatement.d.ts.map +1 -0
  66. package/dist/core/DurableStatement.js +51 -0
  67. package/dist/core/DurableStatement.js.map +1 -0
  68. package/dist/core/Engine.d.ts +48 -20
  69. package/dist/core/Engine.d.ts.map +1 -1
  70. package/dist/core/Engine.js +1208 -789
  71. package/dist/core/Engine.js.map +1 -1
  72. package/dist/core/Engine.sql +309 -217
  73. package/dist/core/EnvFlags.js +1 -1
  74. package/dist/core/EnvFlags.js.map +1 -1
  75. package/dist/core/ErrorDetail.d.ts +6 -0
  76. package/dist/core/ErrorDetail.d.ts.map +1 -0
  77. package/dist/core/ErrorDetail.js +20 -0
  78. package/dist/core/ErrorDetail.js.map +1 -0
  79. package/dist/core/ExecutorRegistry.d.ts +14 -3
  80. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  81. package/dist/core/ExecutorRegistry.js +56 -30
  82. package/dist/core/ExecutorRegistry.js.map +1 -1
  83. package/dist/core/GitBranch.d.ts +20 -0
  84. package/dist/core/GitBranch.d.ts.map +1 -0
  85. package/dist/core/GitBranch.js +110 -0
  86. package/dist/core/GitBranch.js.map +1 -0
  87. package/dist/core/JournalTurn.d.ts +9 -0
  88. package/dist/core/JournalTurn.d.ts.map +1 -0
  89. package/dist/core/JournalTurn.js +14 -0
  90. package/dist/core/JournalTurn.js.map +1 -0
  91. package/dist/core/JournalTurn.sql +10 -0
  92. package/dist/core/LogBody.d.ts +17 -0
  93. package/dist/core/LogBody.d.ts.map +1 -0
  94. package/dist/core/LogBody.js +148 -0
  95. package/dist/core/LogBody.js.map +1 -0
  96. package/dist/core/LoopFlagsReader.d.ts +7 -0
  97. package/dist/core/LoopFlagsReader.d.ts.map +1 -0
  98. package/dist/core/LoopFlagsReader.js +33 -0
  99. package/dist/core/LoopFlagsReader.js.map +1 -0
  100. package/dist/core/LoopLifecycle.d.ts +8 -1
  101. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  102. package/dist/core/LoopLifecycle.js +55 -9
  103. package/dist/core/LoopLifecycle.js.map +1 -1
  104. package/dist/core/LoopLifecycle.sql +9 -3
  105. package/dist/core/NoticeChannel.d.ts +13 -0
  106. package/dist/core/NoticeChannel.d.ts.map +1 -0
  107. package/dist/core/NoticeChannel.js +40 -0
  108. package/dist/core/NoticeChannel.js.map +1 -0
  109. package/dist/core/Owner.d.ts +0 -1
  110. package/dist/core/Owner.d.ts.map +1 -1
  111. package/dist/core/Owner.js +2 -5
  112. package/dist/core/Owner.js.map +1 -1
  113. package/dist/core/PacketBuilder.d.ts +25 -24
  114. package/dist/core/PacketBuilder.d.ts.map +1 -1
  115. package/dist/core/PacketBuilder.js +313 -375
  116. package/dist/core/PacketBuilder.js.map +1 -1
  117. package/dist/core/ProblemLog.d.ts +26 -0
  118. package/dist/core/ProblemLog.d.ts.map +1 -0
  119. package/dist/core/ProblemLog.js +58 -0
  120. package/dist/core/ProblemLog.js.map +1 -0
  121. package/dist/core/ProposalLifecycle.d.ts +15 -21
  122. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  123. package/dist/core/ProposalLifecycle.js +291 -78
  124. package/dist/core/ProposalLifecycle.js.map +1 -1
  125. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  126. package/dist/core/ProviderInstantiate.js +51 -48
  127. package/dist/core/ProviderInstantiate.js.map +1 -1
  128. package/dist/core/SchemeRegistry.d.ts +14 -8
  129. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  130. package/dist/core/SchemeRegistry.js +189 -114
  131. package/dist/core/SchemeRegistry.js.map +1 -1
  132. package/dist/core/ServiceTeardown.d.ts +11 -0
  133. package/dist/core/ServiceTeardown.d.ts.map +1 -0
  134. package/dist/core/ServiceTeardown.js +70 -0
  135. package/dist/core/ServiceTeardown.js.map +1 -0
  136. package/dist/core/StoredPacket.d.ts +29 -0
  137. package/dist/core/StoredPacket.d.ts.map +1 -0
  138. package/dist/core/StoredPacket.js +147 -0
  139. package/dist/core/StoredPacket.js.map +1 -0
  140. package/dist/core/StrikeRail.d.ts +1 -2
  141. package/dist/core/StrikeRail.d.ts.map +1 -1
  142. package/dist/core/StrikeRail.js +25 -55
  143. package/dist/core/StrikeRail.js.map +1 -1
  144. package/dist/core/WorkerControlAddress.d.ts +17 -0
  145. package/dist/core/WorkerControlAddress.d.ts.map +1 -0
  146. package/dist/core/WorkerControlAddress.js +44 -0
  147. package/dist/core/WorkerControlAddress.js.map +1 -0
  148. package/dist/core/WorkerName.d.ts +31 -0
  149. package/dist/core/WorkerName.d.ts.map +1 -0
  150. package/dist/core/WorkerName.js +95 -0
  151. package/dist/core/WorkerName.js.map +1 -0
  152. package/dist/core/WorkerName.sql +36 -0
  153. package/dist/core/WorkspaceGate.d.ts +14 -0
  154. package/dist/core/WorkspaceGate.d.ts.map +1 -0
  155. package/dist/core/WorkspaceGate.js +155 -0
  156. package/dist/core/WorkspaceGate.js.map +1 -0
  157. package/dist/core/caps/CapsResolve.d.ts +1 -1
  158. package/dist/core/caps/CapsResolve.d.ts.map +1 -1
  159. package/dist/core/caps/CapsResolve.js.map +1 -1
  160. package/dist/core/caps/DbChannelCaps.d.ts +5 -11
  161. package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
  162. package/dist/core/caps/DbChannelCaps.js +24 -8
  163. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  164. package/dist/core/caps/DbEntryCaps.d.ts +4 -13
  165. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  166. package/dist/core/caps/DbEntryCaps.js +15 -6
  167. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  168. package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
  169. package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
  170. package/dist/core/caps/DbNotifyCaps.js +12 -11
  171. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  172. package/dist/core/caps/DbProjectionCaps.d.ts +5 -5
  173. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  174. package/dist/core/caps/DbProjectionCaps.js +21 -4
  175. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  176. package/dist/core/caps/DbSubscriptionCaps.d.ts +4 -4
  177. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  178. package/dist/core/caps/DbSubscriptionCaps.js +57 -62
  179. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  180. package/dist/core/caps/DbTagCaps.d.ts +5 -12
  181. package/dist/core/caps/DbTagCaps.d.ts.map +1 -1
  182. package/dist/core/caps/DbTagCaps.js +14 -7
  183. package/dist/core/caps/DbTagCaps.js.map +1 -1
  184. package/dist/core/content-hash.js +1 -1
  185. package/dist/core/content-hash.js.map +1 -1
  186. package/dist/core/env-defaults.d.ts.map +1 -1
  187. package/dist/core/env-defaults.js.map +1 -1
  188. package/dist/core/fork.d.ts.map +1 -1
  189. package/dist/core/fork.js +55 -30
  190. package/dist/core/fork.js.map +1 -1
  191. package/dist/core/fork.sql +41 -27
  192. package/dist/core/git-env.d.ts +2 -0
  193. package/dist/core/git-env.d.ts.map +1 -1
  194. package/dist/core/git-env.js +13 -18
  195. package/dist/core/git-env.js.map +1 -1
  196. package/dist/core/git-iso.d.ts.map +1 -1
  197. package/dist/core/git-iso.js +9 -15
  198. package/dist/core/git-iso.js.map +1 -1
  199. package/dist/core/git-membership.d.ts +1 -1
  200. package/dist/core/git-membership.d.ts.map +1 -1
  201. package/dist/core/git-membership.js +198 -146
  202. package/dist/core/git-membership.js.map +1 -1
  203. package/dist/core/git-state.d.ts.map +1 -1
  204. package/dist/core/git-state.js +10 -11
  205. package/dist/core/git-state.js.map +1 -1
  206. package/dist/core/owner.sql +1 -1
  207. package/dist/core/packet-inject.d.ts.map +1 -1
  208. package/dist/core/packet-inject.js +7 -11
  209. package/dist/core/packet-inject.js.map +1 -1
  210. package/dist/core/packet-wire.d.ts +2 -20
  211. package/dist/core/packet-wire.d.ts.map +1 -1
  212. package/dist/core/packet-wire.js +242 -368
  213. package/dist/core/packet-wire.js.map +1 -1
  214. package/dist/core/plurnk-uri.d.ts +12 -1
  215. package/dist/core/plurnk-uri.d.ts.map +1 -1
  216. package/dist/core/plurnk-uri.js +49 -29
  217. package/dist/core/plurnk-uri.js.map +1 -1
  218. package/dist/core/results.d.ts +16 -5
  219. package/dist/core/results.d.ts.map +1 -1
  220. package/dist/core/results.js +27 -18
  221. package/dist/core/results.js.map +1 -1
  222. package/dist/core/ruler_count.d.ts +4 -0
  223. package/dist/core/ruler_count.d.ts.map +1 -0
  224. package/dist/core/ruler_count.js +7 -0
  225. package/dist/core/ruler_count.js.map +1 -0
  226. package/dist/core/scheme-types.d.ts +9 -11
  227. package/dist/core/scheme-types.d.ts.map +1 -1
  228. package/dist/core/scheme-types.js.map +1 -1
  229. package/dist/core/search-gate.d.ts.map +1 -1
  230. package/dist/core/search-gate.js +3 -11
  231. package/dist/core/search-gate.js.map +1 -1
  232. package/dist/core/teaching-corpus.d.ts +6 -0
  233. package/dist/core/teaching-corpus.d.ts.map +1 -0
  234. package/dist/core/teaching-corpus.js +23 -0
  235. package/dist/core/teaching-corpus.js.map +1 -0
  236. package/dist/core/teaching.d.ts +0 -1
  237. package/dist/core/teaching.d.ts.map +1 -1
  238. package/dist/core/teaching.js +2 -8
  239. package/dist/core/teaching.js.map +1 -1
  240. package/dist/core/token-ruler.d.ts.map +1 -1
  241. package/dist/core/token-ruler.js +3 -16
  242. package/dist/core/token-ruler.js.map +1 -1
  243. package/dist/core/turn-scheduler.d.ts +1 -1
  244. package/dist/core/turn-scheduler.d.ts.map +1 -1
  245. package/dist/core/turn-scheduler.js +1 -1
  246. package/dist/core/turn-scheduler.js.map +1 -1
  247. package/dist/core/worker-cap.d.ts +2 -4
  248. package/dist/core/worker-cap.d.ts.map +1 -1
  249. package/dist/core/worker-cap.js +13 -4
  250. package/dist/core/worker-cap.js.map +1 -1
  251. package/dist/core/{run-ops.sql → worker-ops.sql} +11 -11
  252. package/dist/core/workspace-settings.d.ts.map +1 -1
  253. package/dist/core/workspace-settings.js +17 -9
  254. package/dist/core/workspace-settings.js.map +1 -1
  255. package/dist/digest/Digest.d.ts +2 -1
  256. package/dist/digest/Digest.d.ts.map +1 -1
  257. package/dist/digest/Digest.js +337 -138
  258. package/dist/digest/Digest.js.map +1 -1
  259. package/dist/digest/digest.sql +19 -10
  260. package/dist/index.d.ts.map +1 -1
  261. package/dist/index.js +3 -5
  262. package/dist/index.js.map +1 -1
  263. package/dist/matrix/live-specimen.d.ts +9 -0
  264. package/dist/matrix/live-specimen.d.ts.map +1 -0
  265. package/dist/matrix/live-specimen.js +37 -0
  266. package/dist/matrix/live-specimen.js.map +1 -0
  267. package/dist/observe/api.d.ts +6 -0
  268. package/dist/observe/api.d.ts.map +1 -0
  269. package/dist/observe/api.js +11 -0
  270. package/dist/observe/api.js.map +1 -0
  271. package/dist/observe/init.d.ts +7 -0
  272. package/dist/observe/init.d.ts.map +1 -0
  273. package/dist/observe/init.js +159 -0
  274. package/dist/observe/init.js.map +1 -0
  275. package/dist/observe/metrics.d.ts +6 -0
  276. package/dist/observe/metrics.d.ts.map +1 -0
  277. package/dist/observe/metrics.js +15 -0
  278. package/dist/observe/metrics.js.map +1 -0
  279. package/dist/observe/spans.d.ts +4 -0
  280. package/dist/observe/spans.d.ts.map +1 -0
  281. package/dist/observe/spans.js +51 -0
  282. package/dist/observe/spans.js.map +1 -0
  283. package/dist/schemes/EffectPolicy.d.ts +1 -0
  284. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  285. package/dist/schemes/EffectPolicy.js +5 -2
  286. package/dist/schemes/EffectPolicy.js.map +1 -1
  287. package/dist/schemes/Exec.d.ts +6 -11
  288. package/dist/schemes/Exec.d.ts.map +1 -1
  289. package/dist/schemes/Exec.js +364 -247
  290. package/dist/schemes/Exec.js.map +1 -1
  291. package/dist/schemes/ExecOutputScheme.d.ts +8 -7
  292. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  293. package/dist/schemes/ExecOutputScheme.js +48 -9
  294. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  295. package/dist/schemes/File.d.ts +7 -11
  296. package/dist/schemes/File.d.ts.map +1 -1
  297. package/dist/schemes/File.js +279 -142
  298. package/dist/schemes/File.js.map +1 -1
  299. package/dist/schemes/Log.d.ts +4 -8
  300. package/dist/schemes/Log.d.ts.map +1 -1
  301. package/dist/schemes/Log.js +475 -208
  302. package/dist/schemes/Log.js.map +1 -1
  303. package/dist/schemes/Log.sql +62 -30
  304. package/dist/schemes/Prompt.d.ts +3 -2
  305. package/dist/schemes/Prompt.d.ts.map +1 -1
  306. package/dist/schemes/Prompt.js +9 -6
  307. package/dist/schemes/Prompt.js.map +1 -1
  308. package/dist/schemes/Skill.d.ts +1 -1
  309. package/dist/schemes/Skill.d.ts.map +1 -1
  310. package/dist/schemes/Skill.js +2 -3
  311. package/dist/schemes/Skill.js.map +1 -1
  312. package/dist/schemes/Worker.d.ts +8 -16
  313. package/dist/schemes/Worker.d.ts.map +1 -1
  314. package/dist/schemes/Worker.js +179 -69
  315. package/dist/schemes/Worker.js.map +1 -1
  316. package/dist/schemes/_entry-chunk.d.ts.map +1 -1
  317. package/dist/schemes/_entry-chunk.js +12 -5
  318. package/dist/schemes/_entry-chunk.js.map +1 -1
  319. package/dist/schemes/_entry-crud.d.ts +10 -9
  320. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  321. package/dist/schemes/_entry-crud.js +59 -13
  322. package/dist/schemes/_entry-crud.js.map +1 -1
  323. package/dist/schemes/_entry-crud.sql +20 -8
  324. package/dist/schemes/_entry-find.d.ts +20 -15
  325. package/dist/schemes/_entry-find.d.ts.map +1 -1
  326. package/dist/schemes/_entry-find.js +339 -174
  327. package/dist/schemes/_entry-find.js.map +1 -1
  328. package/dist/schemes/_entry-find.sql +20 -8
  329. package/dist/schemes/_entry-graph.d.ts +4 -2
  330. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  331. package/dist/schemes/_entry-graph.js +55 -31
  332. package/dist/schemes/_entry-graph.js.map +1 -1
  333. package/dist/schemes/_entry-graph.sql +37 -22
  334. package/dist/schemes/_entry-manifest.d.ts +10 -15
  335. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  336. package/dist/schemes/_entry-manifest.js +50 -268
  337. package/dist/schemes/_entry-manifest.js.map +1 -1
  338. package/dist/schemes/_entry-ops.d.ts +9 -14
  339. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  340. package/dist/schemes/_entry-ops.js +149 -77
  341. package/dist/schemes/_entry-ops.js.map +1 -1
  342. package/dist/schemes/_entry-ops.sql +1 -1
  343. package/dist/schemes/_entry-semantic.d.ts +23 -8
  344. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  345. package/dist/schemes/_entry-semantic.js +141 -60
  346. package/dist/schemes/_entry-semantic.js.map +1 -1
  347. package/dist/schemes/_entry-semantic.sql +63 -45
  348. package/dist/schemes/_entry-send.d.ts +3 -4
  349. package/dist/schemes/_entry-send.d.ts.map +1 -1
  350. package/dist/schemes/_entry-send.js +48 -23
  351. package/dist/schemes/_entry-send.js.map +1 -1
  352. package/dist/schemes/_path-scope.d.ts +23 -0
  353. package/dist/schemes/_path-scope.d.ts.map +1 -0
  354. package/dist/schemes/_path-scope.js +61 -0
  355. package/dist/schemes/_path-scope.js.map +1 -0
  356. package/dist/schemes/_search-candidate.d.ts +20 -0
  357. package/dist/schemes/_search-candidate.d.ts.map +1 -0
  358. package/dist/schemes/_search-candidate.js +19 -0
  359. package/dist/schemes/_search-candidate.js.map +1 -0
  360. package/dist/schemes/_search-exclusion.d.ts +7 -0
  361. package/dist/schemes/_search-exclusion.d.ts.map +1 -0
  362. package/dist/schemes/_search-exclusion.js +23 -0
  363. package/dist/schemes/_search-exclusion.js.map +1 -0
  364. package/dist/schemes/_search-index.d.ts +6 -0
  365. package/dist/schemes/_search-index.d.ts.map +1 -0
  366. package/dist/schemes/_search-index.js +326 -0
  367. package/dist/schemes/_search-index.js.map +1 -0
  368. package/dist/schemes/cosine.js +1 -1
  369. package/dist/schemes/cosine.js.map +1 -1
  370. package/dist/schemes/exec-abort.js +3 -3
  371. package/dist/schemes/exec-abort.js.map +1 -1
  372. package/dist/schemes/exec-env.js +3 -3
  373. package/dist/schemes/exec-env.js.map +1 -1
  374. package/dist/server/BranchBatches.d.ts +48 -0
  375. package/dist/server/BranchBatches.d.ts.map +1 -0
  376. package/dist/server/BranchBatches.js +591 -0
  377. package/dist/server/BranchBatches.js.map +1 -0
  378. package/dist/server/Daemon.d.ts +36 -66
  379. package/dist/server/Daemon.d.ts.map +1 -1
  380. package/dist/server/Daemon.js +920 -446
  381. package/dist/server/Daemon.js.map +1 -1
  382. package/dist/server/DaemonModule.d.ts +31 -0
  383. package/dist/server/DaemonModule.d.ts.map +1 -0
  384. package/dist/server/DaemonModule.js +2 -0
  385. package/dist/server/DaemonModule.js.map +1 -0
  386. package/dist/server/branch-batch.sql +152 -0
  387. package/dist/server/client-input.d.ts +12 -0
  388. package/dist/server/client-input.d.ts.map +1 -1
  389. package/dist/server/client-input.js +262 -57
  390. package/dist/server/client-input.js.map +1 -1
  391. package/dist/server/dispatch-as-plurnk.d.ts +1 -1
  392. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  393. package/dist/server/dispatch-as-plurnk.js +15 -7
  394. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  395. package/dist/server/drain.sql +92 -62
  396. package/dist/server/envelope.d.ts +2 -5
  397. package/dist/server/envelope.d.ts.map +1 -1
  398. package/dist/server/envelope.js +119 -95
  399. package/dist/server/envelope.js.map +1 -1
  400. package/dist/server/envelope.sql +19 -23
  401. package/dist/server/exec-poll-backoff.js +1 -1
  402. package/dist/server/exec-poll-backoff.js.map +1 -1
  403. package/dist/server/lifecycle-recovery.sql +79 -2
  404. package/dist/server/logEntry.d.ts +3 -1
  405. package/dist/server/logEntry.d.ts.map +1 -1
  406. package/dist/server/logEntry.js +4 -2
  407. package/dist/server/logEntry.js.map +1 -1
  408. package/dist/server/logEntry.sql +1 -1
  409. package/dist/server/loop-model.d.ts.map +1 -1
  410. package/dist/server/loop-model.js +22 -9
  411. package/dist/server/loop-model.js.map +1 -1
  412. package/dist/server/loopDocs.d.ts.map +1 -1
  413. package/dist/server/loopDocs.js +5 -4
  414. package/dist/server/loopDocs.js.map +1 -1
  415. package/dist/server/seam-entry-read.sql +15 -10
  416. package/dist/server/seam-log-read.sql +2 -2
  417. package/dist/server/seam-loop.sql +1 -1
  418. package/dist/server/seam-proposal-list.sql +17 -7
  419. package/dist/service.d.ts.map +1 -1
  420. package/dist/service.js +66 -60
  421. package/dist/service.js.map +1 -1
  422. package/migrations/001_schema.sql +897 -0
  423. package/package.json +57 -26
  424. package/dist/core/PluginLoader.d.ts +0 -20
  425. package/dist/core/PluginLoader.d.ts.map +0 -1
  426. package/dist/core/PluginLoader.js +0 -142
  427. package/dist/core/PluginLoader.js.map +0 -1
  428. package/dist/core/TelemetryChannel.d.ts +0 -37
  429. package/dist/core/TelemetryChannel.d.ts.map +0 -1
  430. package/dist/core/TelemetryChannel.js +0 -80
  431. package/dist/core/TelemetryChannel.js.map +0 -1
  432. package/dist/core/path-decode.d.ts +0 -3
  433. package/dist/core/path-decode.d.ts.map +0 -1
  434. package/dist/core/path-decode.js +0 -9
  435. package/dist/core/path-decode.js.map +0 -1
  436. package/dist/core/plugin-attribution.d.ts +0 -5
  437. package/dist/core/plugin-attribution.d.ts.map +0 -1
  438. package/dist/core/plugin-attribution.js +0 -39
  439. package/dist/core/plugin-attribution.js.map +0 -1
  440. package/dist/core/world-state.d.ts +0 -10
  441. package/dist/core/world-state.d.ts.map +0 -1
  442. package/dist/core/world-state.js +0 -35
  443. package/dist/core/world-state.js.map +0 -1
  444. package/dist/core/world-state.sql +0 -35
  445. package/dist/core/zero-pin.d.ts +0 -3
  446. package/dist/core/zero-pin.d.ts.map +0 -1
  447. package/dist/core/zero-pin.js +0 -16
  448. package/dist/core/zero-pin.js.map +0 -1
  449. package/dist/server/auto.d.ts +0 -6
  450. package/dist/server/auto.d.ts.map +0 -1
  451. package/dist/server/auto.js +0 -63
  452. package/dist/server/auto.js.map +0 -1
  453. package/dist/server/clientTurn.d.ts +0 -6
  454. package/dist/server/clientTurn.d.ts.map +0 -1
  455. package/dist/server/clientTurn.js +0 -22
  456. package/dist/server/clientTurn.js.map +0 -1
  457. package/dist/server/clientTurn.sql +0 -10
  458. package/dist/server/noProposals.d.ts +0 -6
  459. package/dist/server/noProposals.d.ts.map +0 -1
  460. package/dist/server/noProposals.js +0 -37
  461. package/dist/server/noProposals.js.map +0 -1
  462. package/dist/server/version-info.d.ts +0 -14
  463. package/dist/server/version-info.d.ts.map +0 -1
  464. package/dist/server/version-info.js +0 -69
  465. package/dist/server/version-info.js.map +0 -1
  466. package/migrations/0000-00-00.01_schema.sql +0 -536
  467. package/migrations/0004_loop-provider.sql +0 -3
  468. package/migrations/0005_subscription-published-channel.sql +0 -3
  469. package/migrations/0006_loop-max-turns.sql +0 -3
@@ -1,6 +1,7 @@
1
1
  // ~semantic storage and ranking. Complete content-addressed derivations own the
2
- // reader-projected FTS, graph, and vectors. Vector search ranks every eligible
2
+ // exact READ-body FTS, graph, and vectors. Vector search ranks every eligible
3
3
  // vector in scope; FTS is only the explicit no-embedder fallback.
4
+ import { EmbeddingVector, TextCoordinates, } from "@plurnk/plurnk-mimetypes";
4
5
  import EntryChunk from "./_entry-chunk.js";
5
6
  export default class EntrySemantic {
6
7
  static defaultTopK() {
@@ -11,6 +12,47 @@ export default class EntrySemantic {
11
12
  }
12
13
  return value;
13
14
  }
15
+ // FIND owns result positions uniformly across matcher dialects. Semantic
16
+ // search adds only an optional leading decimal threshold; any remaining
17
+ // integers retain the ordinary FIND positional meaning. The rank query
18
+ // needs only the prefix ending at the requested page, while an open-ended
19
+ // or malformed page remains exhaustive so the shared pager can report the
20
+ // authoritative result extent.
21
+ static resultSelection(marker) {
22
+ if (marker === null) {
23
+ return { threshold: null, page: null, limit: EntrySemantic.defaultTopK() };
24
+ }
25
+ const [first, ...remaining] = marker.marks;
26
+ if (Number.isInteger(first)) {
27
+ return {
28
+ threshold: null,
29
+ page: marker,
30
+ limit: EntrySemantic.#pageLimit(marker),
31
+ };
32
+ }
33
+ const page = remaining.length === 0
34
+ ? null
35
+ : { marks: remaining };
36
+ return {
37
+ threshold: first,
38
+ page,
39
+ limit: page === null ? -1 : EntrySemantic.#pageLimit(page),
40
+ };
41
+ }
42
+ static #pageLimit(marker) {
43
+ if (marker.marks.length !== 1 && marker.marks.length !== 2)
44
+ return -1;
45
+ const [first, last] = marker.marks;
46
+ if (!Number.isInteger(first) || (last !== undefined && !Number.isInteger(last)))
47
+ return -1;
48
+ if (last === undefined)
49
+ return first >= 0 ? first : -1;
50
+ if (last === -1)
51
+ return -1;
52
+ if (first < 0 || first > last || last < 1)
53
+ return -1;
54
+ return last;
55
+ }
14
56
  static maxEmbedSize() {
15
57
  const raw = process.env.PLURNK_SERVICE_MAX_EMBED_SIZE;
16
58
  const value = Number(raw);
@@ -33,13 +75,14 @@ export default class EntrySemantic {
33
75
  if (content.length > 0)
34
76
  await db.fts_insert.run({ derivation_id: derivationId, content });
35
77
  }
36
- // Cosine similarity over two Float32 vectors stored as BLOBs — the SqlRite
78
+ // Cosine similarity over the framework-owned embedding wire — the SqlRite
37
79
  // `cosine()` function delegates here (cosine.ts is the registration adapter).
38
- // Alignment-proof: the BLOB Uint8Array may be an unaligned view, so copy the
39
- // exact bytes to a fresh buffer before the Float32 view. A zero vector → 0.
40
80
  static cosine(a, b) {
41
- const x = new Float32Array(a.buffer.slice(a.byteOffset, a.byteOffset + a.byteLength));
42
- const y = new Float32Array(b.buffer.slice(b.byteOffset, b.byteOffset + b.byteLength));
81
+ const x = EmbeddingVector.decode(a, undefined, "cosine left operand");
82
+ const y = EmbeddingVector.decode(b, undefined, "cosine right operand");
83
+ if (x.length !== y.length) {
84
+ throw new RangeError(`cosine operands must have the same dimension, got ${x.length} and ${y.length}`);
85
+ }
43
86
  let dot = 0, nx = 0, ny = 0;
44
87
  for (let i = 0; i < x.length; i++) {
45
88
  dot += x[i] * y[i];
@@ -70,14 +113,15 @@ export default class EntrySemantic {
70
113
  // handle): ABSENT → one whole-entry chunk from the fallback vector (today's
71
114
  // behavior, no extra embed call); PRESENT → lossless tile, embed each chunk.
72
115
  // Returns the chunk list + model for indexEmbedding; never touches the DB.
73
- static async deriveEmbeddings(mimetypes, content, symbols, fallbackEmbedding, fallbackModel, signal, onProgress) {
74
- const info = await EntrySemantic.#embedderInfo(mimetypes);
116
+ static async deriveEmbeddings(plan, content, symbols, fallbackEmbedding, fallbackModel, signal, onProgress) {
117
+ const { info } = plan;
75
118
  if (info === null) {
76
- const totalLines = content.length === 0 ? 0 : content.split("\n").length;
119
+ const totalLines = TextCoordinates.logicalLines(content).length;
77
120
  if (fallbackEmbedding === undefined || fallbackEmbedding.byteLength === 0 || totalLines === 0)
78
121
  return { chunks: [], model: undefined };
79
122
  return { chunks: [{ lineStart: 1, lineEnd: totalLines, vector: fallbackEmbedding }], model: fallbackModel };
80
123
  }
124
+ EntrySemantic.assertExactChunking(plan);
81
125
  // Symbol edges (a @graph endLine, or the line before a symbol starts) are the
82
126
  // tiler's preferred cut points; it still tiles every line if there are none.
83
127
  const boundaries = new Set();
@@ -87,23 +131,23 @@ export default class EntrySemantic {
87
131
  if (typeof s.line === "number" && s.line > 1)
88
132
  boundaries.add(s.line - 1);
89
133
  }
90
- // mimetypes#50 — a REMOTE embedder is present with an incomplete self-report: the window
91
- // is the operator's to declare (their knob), and the counter resolves through the seam's
92
- // tokenizers by the embedder's model name — the chars/2 upper bound when inexact is the
93
- // surfaced conservative fallback (smaller chunks are correct chunks).
134
+ // A remote embedder may omit its own counter. The pass-wide semantic plan
135
+ // preserves the one fallback tokenizer resolution, including identity and
136
+ // exactness; {§semantic-embed-dedup} owns its derivation identity and #95
137
+ // owns whether an inexact resolution may authorize chunking.
94
138
  if (info.contextWindow === null)
95
139
  throw new Error("remote embedder reports no input context window — set PLURNK_MIMETYPES_EMBED_CONTEXT_WINDOW to the endpoint's limit");
96
- const counter = info.countTokens ?? (await mimetypes.tokenizer(info.model ?? "")).countTokens;
140
+ const counter = plan.countTokens;
141
+ if (counter === null)
142
+ throw new Error("semantic plan has no token counter for an embedder with a declared context window");
97
143
  const budget = EntrySemantic.#chunkBudget(info.contextWindow);
98
144
  let specs = await EntryChunk.tile(content, boundaries, budget, EntrySemantic.#chunkOverlap(), counter, (progress) => onProgress?.({ phase: "planning", ...progress }));
99
145
  if (specs.length === 0)
100
146
  return { chunks: [], model: undefined };
101
- // One data-parallel batch over the tiled chunk texts (#272 — embedBatch via the
102
- // framework seam, ~6× the per-chunk loop on a multi-core box; vectors bit-identical,
103
- // so no re-embed). Each tile embeds as PLAIN TEXT: a chunk is a fragment, not a
104
- // standalone document, so embedding under the entry's mimetype (e.g. application/json)
105
- // re-validates the partial and throws — embedBatch embeds raw text directly.
106
- const vectors = await mimetypes.embedBatch(specs.map((s) => s.text), {
147
+ // Tiles cross the ordered batch seam as raw fragment text, never as
148
+ // standalone documents requiring format validation.
149
+ // {§mimetype-embedding}, {§derivation-dedup-parallel}
150
+ const vectors = await plan.mimetypes.embedBatch(specs.map((s) => s.text), {
107
151
  signal,
108
152
  onProgress: (progress) => onProgress?.({ phase: "embedding", ...progress }),
109
153
  });
@@ -115,6 +159,17 @@ export default class EntrySemantic {
115
159
  }
116
160
  return { chunks, model: chunks.length > 0 ? info.model : undefined };
117
161
  }
162
+ // {§semantic-embed-dedup} — an estimate may inform callers but cannot prove
163
+ // that a chunk fits an embedder's declared token window.
164
+ static assertExactChunking(plan, pushNotice) {
165
+ const { info, tokenizer } = plan;
166
+ if (info === null || info.countTokens !== null || tokenizer === null || tokenizer.exact)
167
+ return;
168
+ for (const notice of tokenizer.notices ?? [])
169
+ pushNotice?.(notice);
170
+ throw new Error(`semantic chunking requires an exact token counter for ${JSON.stringify(info.model)}; `
171
+ + `${JSON.stringify(tokenizer.tokenizerId)} is an estimate and cannot prove the declared ${info.contextWindow}-token window`);
172
+ }
118
173
  // Chunk budget in tokens — `.env.defaults` is the law, no code fallback. EMPTY =
119
174
  // the embedder's reported window (scalable — NO model-specific number baked in);
120
175
  // a positive value caps BELOW the window (e.g. to sweep granularity).
@@ -134,28 +189,44 @@ export default class EntrySemantic {
134
189
  return v;
135
190
  }
136
191
  // The embedder capability surface (plugin window + tokenizer + model id), probed
137
- // through the Mimetypes handle. null until an embedder is installed.
192
+ // through the Mimetypes handle. null means semantic derivation is unavailable.
138
193
  static async #embedderInfo(mimetypes) {
139
- // PLURNK_SERVICE_EMBED_DISABLE=1 forces the no-embedder path even when the optional embeddings package
140
- // IS installed — the whole semantic stack (deriveEmbeddings, exhaustive ~query cosine rank, the
141
- // deep_hash config) funnels through here, so one gate makes everything FTS-only. The fast lane
142
- // (mock-provider tests) sets it so the suite doesn't spin up the MiniLM worker pool for nothing.
194
+ // PLURNK_SERVICE_EMBED_DISABLE=1 forces the no-embedder path even though the default service
195
+ // includes one. The semantic stack funnels through this gate, so disabling it is wholly FTS-only.
143
196
  if (process.env.PLURNK_SERVICE_EMBED_DISABLE === "1")
144
197
  return null;
145
198
  return await mimetypes.embedderInfo();
146
199
  }
147
- // Folded into the entry's deep_hash so a derivation re-runs when the EMBEDDING
148
- // inputs change, not just content: installing/swapping the embedder (the window
149
- // flips none→N, activating tiling), the embedder's model id changing at the SAME
150
- // window (#31 — else stale vectors from the old model's space survive the swap and
151
- // get cosine-compared against the new model's), or sweeping the chunk knobs.
152
- static async deepConfigSignature(mimetypes) {
200
+ // Resolve the pass-wide semantic facts once. The plan binds the selected
201
+ // counter to the same identity folded into every derivation hash, so entries
202
+ // cannot be tiled with provenance different from the configuration key.
203
+ static async prepareEmbeddings(mimetypes) {
153
204
  const info = await EntrySemantic.#embedderInfo(mimetypes);
154
- if (info === null)
155
- return "embed:none";
156
- const base = `embed:${info.model ?? "?"}:${info.contextWindow}:${info.contextWindow === null ? "?" : EntrySemantic.#chunkBudget(info.contextWindow)}:${EntrySemantic.#chunkOverlap()}`;
205
+ if (info === null) {
206
+ return {
207
+ mimetypes,
208
+ info: null,
209
+ countTokens: null,
210
+ tokenizer: null,
211
+ signature: "embed:none",
212
+ };
213
+ }
214
+ const tokenizer = info.countTokens === null && info.contextWindow !== null
215
+ ? await mimetypes.tokenizer(info.model ?? "")
216
+ : null;
217
+ const countTokens = info.countTokens ?? tokenizer?.countTokens ?? null;
218
+ const tokenizerIdentity = tokenizer === null
219
+ ? ""
220
+ : `:tokenizer=${tokenizer.tokenizerId}:${tokenizer.exact ? "exact" : "estimate"}`;
221
+ const base = `embed:${info.model ?? "?"}:${info.contextWindow}:${info.contextWindow === null ? "?" : EntrySemantic.#chunkBudget(info.contextWindow)}:${EntrySemantic.#chunkOverlap()}:wire=${EmbeddingVector.encoding}${tokenizerIdentity}`;
157
222
  const maxBytes = EntrySemantic.maxEmbedSize();
158
- return maxBytes === 0 ? base : `${base}:max-bytes=${maxBytes}`;
223
+ return {
224
+ mimetypes,
225
+ info,
226
+ countTokens,
227
+ tokenizer,
228
+ signature: maxBytes === 0 ? base : `${base}:max-bytes=${maxBytes}`,
229
+ };
159
230
  }
160
231
  // Build the FTS5 query used only by the no-embedder keyword fallback.
161
232
  static ftsQueryFor(text) {
@@ -165,23 +236,27 @@ export default class EntrySemantic {
165
236
  return [...new Set(terms)].join(" OR ");
166
237
  }
167
238
  // The ~query dispatch: embed the query text through the SAME channel and cosine-rank
168
- // every vector in scope, top-K. Each result carries its best-matching
169
- // chunk's line span (the Finding extent). No embedder → the top-K <K> form degrades to an
170
- // FTS-only keyword rank (whole-entry findings); the <0.x> threshold form stays 501.
171
- static async rankSemantic(db, workspaceId, scheme, entryIds, mimetypes, queryText, marker) {
172
- // #209 — the result marker form-dispatches: integer <K> → top-K rank;
173
- // decimal <0.x> → a similarity threshold (minimum cosine in (0,1)), with
174
- // <0.x,N> capping the threshold set at N (else unbounded). A fractional
175
- // value outside (0,1) is a nonsense result-marker → 416, never coerced.
176
- const { first, last } = marker;
177
- const toResult = (x) => ({ pathname: x.pathname, lineStart: x.line_start, lineEnd: x.line_end });
178
- if (entryIds.length === 0)
239
+ // every vector in scope. Each result carries its best-matching
240
+ // chunk's line span (the Finding extent). No embedder -> an unthresholded
241
+ // ranked prefix degrades to FTS-only keyword rank (whole-entry findings);
242
+ // a similarity threshold stays 501.
243
+ static async rankCandidates(db, candidates, mimetypes, queryText, selection) {
244
+ const { threshold, limit } = selection;
245
+ const toResult = (x) => ({
246
+ key: x.key,
247
+ lineStart: x.line_start,
248
+ lineEnd: x.line_end,
249
+ });
250
+ if (threshold !== null && (threshold <= 0 || threshold >= 1)) {
251
+ return { status: 416, results: [] };
252
+ }
253
+ if (candidates.length === 0)
179
254
  return { status: 200, results: [] };
180
- const entry_ids = JSON.stringify(entryIds);
255
+ const serializedCandidates = JSON.stringify(candidates);
181
256
  // The query embedding honors the SAME gate as the corpus (#embedderInfo /
182
257
  // PLURNK_SERVICE_EMBED_DISABLE): with the embeddings package installed but disabled,
183
258
  // calling process() directly would compute a query vector and rank it against
184
- // an empty entry_embeddings — every ~query silently []. Disabled → the honest
259
+ // an empty derivation_embeddings - every ~query silently []. Disabled means the honest
185
260
  // FTS keyword fallback, same as no embedder at all.
186
261
  const info = await EntrySemantic.#embedderInfo(mimetypes);
187
262
  const r = info === null
@@ -190,28 +265,34 @@ export default class EntrySemantic {
190
265
  if (r.embedding === undefined || r.embedding.byteLength === 0 || r.embeddingModel === undefined) {
191
266
  // FTS fallback: no embedder, so there is no query vector to cosine with. Top-K ranks
192
267
  // by BM25 keyword relevance alone; the <0.x> threshold form is intrinsically cosine-
193
- // based (no bounded BM25 analogue) → it stays 501.
194
- if (!Number.isInteger(first))
268
+ // based (no bounded BM25 analogue), so it stays 501.
269
+ if (threshold !== null)
195
270
  return { status: 501, results: [] };
196
271
  const ftsQuery = EntrySemantic.ftsQueryFor(queryText);
197
272
  if (ftsQuery.length === 0)
198
273
  return { status: 200, results: [] };
199
- const rows = await db.semantic_rank_fts.all({
200
- fts_query: ftsQuery, workspace_id: workspaceId, scheme, entry_ids, k: first,
274
+ const rows = await db.semantic_rank_candidates_fts.all({
275
+ fts_query: ftsQuery,
276
+ candidates: serializedCandidates,
277
+ k: limit,
201
278
  });
202
279
  return { status: 200, results: rows.map(toResult) };
203
280
  }
204
- if (Number.isInteger(first)) {
205
- const rows = await db.semantic_rank.all({
206
- workspace_id: workspaceId, scheme, entry_ids, query_vector: r.embedding, embedding_model: r.embeddingModel, k: first,
281
+ if (threshold === null) {
282
+ const rows = await db.semantic_rank_candidates.all({
283
+ candidates: serializedCandidates,
284
+ query_vector: r.embedding,
285
+ embedding_model: r.embeddingModel,
286
+ k: limit,
207
287
  });
208
288
  return { status: 200, results: rows.map(toResult) };
209
289
  }
210
- if (first <= 0 || first >= 1)
211
- return { status: 416, results: [] };
212
- const cap = (last !== null && Number.isInteger(last) && last > 0) ? last : -1;
213
- const rows = await db.semantic_rank_threshold.all({
214
- workspace_id: workspaceId, scheme, entry_ids, query_vector: r.embedding, embedding_model: r.embeddingModel, threshold: first, cap,
290
+ const rows = await db.semantic_rank_candidates_threshold.all({
291
+ candidates: serializedCandidates,
292
+ query_vector: r.embedding,
293
+ embedding_model: r.embeddingModel,
294
+ threshold,
295
+ cap: limit,
215
296
  });
216
297
  return { status: 200, results: rows.map(toResult) };
217
298
  }
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-semantic.js","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_entry-semantic.js","sourceRoot":"","sources":["../../src/schemes/_entry-semantic.ts"],"names":[],"mappings":"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"}
@@ -1,81 +1,99 @@
1
- -- ~semantic (plurnk-service#186): exhaustive cosine ranking over every complete
1
+ -- {§relation-indexed-dialects} Exhaustive cosine ranking over every complete
2
2
  -- derivation in scope. FTS is retained only as the explicit no-embedder fallback;
3
3
  -- it never gates vector recall.
4
4
 
5
5
  -- PREP: fts_delete
6
- DELETE FROM entry_fts WHERE rowid = $derivation_id;
6
+ DELETE FROM derivation_fts WHERE rowid = $derivation_id;
7
7
 
8
8
  -- PREP: fts_insert
9
- INSERT INTO entry_fts (rowid, content) VALUES ($derivation_id, $content);
9
+ INSERT INTO derivation_fts (rowid, content) VALUES ($derivation_id, $content);
10
10
 
11
11
  -- PREP: embedding_set
12
12
  -- Insert ONE chunk's vector + its <L> extent + the model. The caller clears the
13
13
  -- entry's rows (embedding_delete) first and inserts each chunk in seq order, so no
14
14
  -- upsert is needed — a re-derivation is delete-all then insert-each.
15
- INSERT INTO entry_embeddings (derivation_id, chunk_seq, line_start, line_end, vector, embedding_model)
15
+ INSERT INTO derivation_embeddings (derivation_id, chunk_seq, line_start, line_end, vector, embedding_model)
16
16
  VALUES ($derivation_id, $chunk_seq, $line_start, $line_end, $vector, $embedding_model);
17
17
 
18
18
  -- PREP: embedding_delete
19
19
  -- Clears ALL of an entry's chunk rows (the re-derivation reset).
20
- DELETE FROM entry_embeddings WHERE derivation_id = $derivation_id;
20
+ DELETE FROM derivation_embeddings WHERE derivation_id = $derivation_id;
21
21
 
22
- -- PREP: semantic_rank
23
- -- Exhaustive cosine rank over every vector in the workspace+scheme scope.
24
- -- Many chunk rows per entry → rank by the entry's BEST chunk (per-entry top cosine via
22
+ -- PREP: semantic_rank_candidates
23
+ -- Exhaustive cosine rank over caller-supplied address→derivation candidates.
24
+ -- Many chunk rows per resource → rank by its BEST chunk (per-resource top cosine via
25
25
  -- ROW_NUMBER), and surface that winning chunk's line span as the finding extent
26
26
  -- (Project Findings). embedding_model filter keeps cosine within one model's dimensions.
27
- WITH ranked AS (
28
- SELECT e.pathname, em.line_start, em.line_end,
27
+ WITH candidates AS (
28
+ SELECT json_extract(value, '$.key') AS key,
29
+ json_extract(value, '$.deepHash') AS deep_hash
30
+ FROM json_each($candidates)
31
+ ),
32
+ ranked AS (
33
+ SELECT c.key, em.line_start, em.line_end,
29
34
  cosine(em.vector, $query_vector) AS score,
30
- ROW_NUMBER() OVER (PARTITION BY e.id ORDER BY cosine(em.vector, $query_vector) DESC) AS rn
31
- FROM derivations d
32
- JOIN entries e ON e.deep_hash = d.deep_hash
33
- JOIN entry_embeddings em ON em.derivation_id = d.id AND em.embedding_model = $embedding_model
35
+ ROW_NUMBER() OVER (PARTITION BY c.key ORDER BY cosine(em.vector, $query_vector) DESC) AS rn
36
+ FROM candidates c
37
+ JOIN derivations d ON d.deep_hash = c.deep_hash
38
+ JOIN derivation_embeddings em ON em.derivation_id = d.id AND em.embedding_model = $embedding_model
34
39
  WHERE d.state = 'complete'
35
- AND e.workspace_id = $workspace_id
36
- AND e.scheme = $scheme
37
- AND e.id IN (SELECT value FROM json_each($entry_ids))
38
40
  )
39
- SELECT pathname, line_start, line_end FROM ranked
41
+ SELECT key, line_start, line_end FROM ranked
40
42
  WHERE rn = 1
41
43
  ORDER BY score DESC
42
44
  LIMIT $k;
43
45
 
44
- -- PREP: semantic_rank_threshold
45
- -- #209 — the <0.x> similarity-threshold form: same exhaustive cosine rank, but a cosine
46
- -- floor ($threshold, in (0,1)) replaces top-K, and $cap (-1 = unbounded) is the
47
- -- optional <0.x,N> result cap.
48
- WITH ranked AS (
49
- SELECT e.pathname, em.line_start, em.line_end,
46
+ -- PREP: semantic_rank_candidates_threshold
47
+ -- {§find-semantic-default-top-k}: threshold the exhaustive cosine rank, then
48
+ -- retain the requested ordered prefix; -1 keeps the threshold set unbounded.
49
+ WITH candidates AS (
50
+ SELECT json_extract(value, '$.key') AS key,
51
+ json_extract(value, '$.deepHash') AS deep_hash
52
+ FROM json_each($candidates)
53
+ ),
54
+ ranked AS (
55
+ SELECT c.key, em.line_start, em.line_end,
50
56
  cosine(em.vector, $query_vector) AS score,
51
- ROW_NUMBER() OVER (PARTITION BY e.id ORDER BY cosine(em.vector, $query_vector) DESC) AS rn
52
- FROM derivations d
53
- JOIN entries e ON e.deep_hash = d.deep_hash
54
- JOIN entry_embeddings em ON em.derivation_id = d.id AND em.embedding_model = $embedding_model
57
+ ROW_NUMBER() OVER (PARTITION BY c.key ORDER BY cosine(em.vector, $query_vector) DESC) AS rn
58
+ FROM candidates c
59
+ JOIN derivations d ON d.deep_hash = c.deep_hash
60
+ JOIN derivation_embeddings em ON em.derivation_id = d.id AND em.embedding_model = $embedding_model
55
61
  WHERE d.state = 'complete'
56
- AND e.workspace_id = $workspace_id
57
- AND e.scheme = $scheme
58
- AND e.id IN (SELECT value FROM json_each($entry_ids))
59
62
  )
60
- SELECT pathname, line_start, line_end FROM ranked
63
+ SELECT key, line_start, line_end FROM ranked
61
64
  WHERE rn = 1 AND score >= $threshold
62
65
  ORDER BY score DESC
63
66
  LIMIT $cap;
64
67
 
65
- -- PREP: semantic_rank_fts
66
- -- FTS-only fallback when no embedder is installed: rank processed readable content by BM25
67
- -- relevance alone (no entry_embeddings join, no cosine), scheme-scoped, top-K. Without
68
+ -- PREP: semantic_rank_candidates_fts
69
+ -- FTS-only fallback when no embedder is installed: rank the exact READ body by BM25
70
+ -- relevance alone (no derivation_embeddings join, no cosine). Without
68
71
  -- chunk vectors there is no winning span, so the finding is the whole entry — line
69
72
  -- 1..its line count, derived from the indexed FTS content.
70
- SELECT e.pathname,
73
+ WITH candidates AS (
74
+ SELECT json_extract(value, '$.key') AS key,
75
+ json_extract(value, '$.deepHash') AS deep_hash
76
+ FROM json_each($candidates)
77
+ ),
78
+ ranked AS (
79
+ SELECT c.key,
80
+ replace(replace(f.content, char(13) || char(10), char(10)), char(13), char(10)) AS content,
81
+ bm25(derivation_fts) AS score
82
+ FROM derivation_fts f
83
+ JOIN derivations d ON d.id = f.rowid AND d.state = 'complete'
84
+ JOIN candidates c ON c.deep_hash = d.deep_hash
85
+ WHERE f.content MATCH $fts_query
86
+ )
87
+ SELECT key,
71
88
  1 AS line_start,
72
- length(f.content) - length(replace(f.content, char(10), '')) + 1 AS line_end
73
- FROM entry_fts f
74
- JOIN derivations d ON d.id = f.rowid AND d.state = 'complete'
75
- JOIN entries e ON e.deep_hash = d.deep_hash
76
- WHERE f.content MATCH $fts_query
77
- AND e.workspace_id = $workspace_id
78
- AND e.scheme = $scheme
79
- AND e.id IN (SELECT value FROM json_each($entry_ids))
80
- ORDER BY bm25(entry_fts)
89
+ CASE
90
+ WHEN length(content) = 0 THEN 0
91
+ ELSE length(content) - length(replace(content, char(10), ''))
92
+ + CASE
93
+ WHEN substr(content, -1) = char(10) THEN 0
94
+ ELSE 1
95
+ END
96
+ END AS line_end
97
+ FROM ranked
98
+ ORDER BY score
81
99
  LIMIT $k;
@@ -1,8 +1,7 @@
1
- import type { SendStatement } from "@plurnk/plurnk-grammar";
1
+ import type { SendStatement } from "@plurnk/plurnk-contracts";
2
2
  import type { PlurnkSchemeContext } from "../core/scheme-types.ts";
3
- export interface SendResult {
4
- status: number;
5
- [key: string]: unknown;
3
+ import { type SchemeResult } from "../core/results.ts";
4
+ export interface SendResult extends SchemeResult {
6
5
  }
7
6
  export default class EntrySend {
8
7
  #private;
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-send.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAG5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAInE,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,MAAM,CAAC,OAAO,OAAO,SAAS;;IAc1B,OAAa,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAuCnJ;CACJ"}
1
+ {"version":3,"file":"_entry-send.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAGnE,OAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEhE,MAAM,WAAW,UAAW,SAAQ,YAAY;CAAG;AAEnD,MAAM,CAAC,OAAO,OAAO,SAAS;;IAa1B,OAAa,oBAAoB,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CA4HnJ;CACJ"}