@plurnk/plurnk-service 1.16.5 → 1.18.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 (661) hide show
  1. package/.env.defaults +140 -246
  2. package/INSTALL.md +84 -138
  3. package/README.md +10 -6
  4. package/SPEC.md +2468 -1694
  5. package/dist/Paths.d.ts +2 -0
  6. package/dist/Paths.d.ts.map +1 -1
  7. package/dist/Paths.js +2 -0
  8. package/dist/Paths.js.map +1 -1
  9. package/dist/build-info.d.ts.map +1 -1
  10. package/dist/build-info.js +7 -1
  11. package/dist/build-info.js.map +1 -1
  12. package/dist/build-info.json +1 -1
  13. package/dist/content/body-preview.d.ts +8 -0
  14. package/dist/content/body-preview.d.ts.map +1 -0
  15. package/dist/content/body-preview.js +39 -0
  16. package/dist/content/body-preview.js.map +1 -0
  17. package/dist/content/byte-view.d.ts +1 -4
  18. package/dist/content/byte-view.d.ts.map +1 -1
  19. package/dist/content/byte-view.js.map +1 -1
  20. package/dist/content/edit-collision.d.ts.map +1 -1
  21. package/dist/content/edit-collision.js +3 -4
  22. package/dist/content/edit-collision.js.map +1 -1
  23. package/dist/content/line-anchors.d.ts +2 -2
  24. package/dist/content/line-anchors.d.ts.map +1 -1
  25. package/dist/content/line-anchors.js +4 -3
  26. package/dist/content/line-anchors.js.map +1 -1
  27. package/dist/content/line-selection.d.ts +9 -0
  28. package/dist/content/line-selection.d.ts.map +1 -0
  29. package/dist/content/line-selection.js +29 -0
  30. package/dist/content/line-selection.js.map +1 -0
  31. package/dist/content/matcher.d.ts +0 -1
  32. package/dist/content/matcher.d.ts.map +1 -1
  33. package/dist/content/matcher.js +2 -3
  34. package/dist/content/matcher.js.map +1 -1
  35. package/dist/content/pattern-edits.d.ts +39 -0
  36. package/dist/content/pattern-edits.d.ts.map +1 -0
  37. package/dist/content/pattern-edits.js +121 -0
  38. package/dist/content/pattern-edits.js.map +1 -0
  39. package/dist/content/read-projector.d.ts +18 -9
  40. package/dist/content/read-projector.d.ts.map +1 -1
  41. package/dist/content/read-projector.js +132 -35
  42. package/dist/content/read-projector.js.map +1 -1
  43. package/dist/content/read-resolve.d.ts +4 -1
  44. package/dist/content/read-resolve.d.ts.map +1 -1
  45. package/dist/content/read-resolve.js +42 -7
  46. package/dist/content/read-resolve.js.map +1 -1
  47. package/dist/core/AdmittedTurnExecutor.d.ts +2 -5
  48. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  49. package/dist/core/AdmittedTurnExecutor.js +96 -88
  50. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  51. package/dist/core/BareBatchRunner.d.ts +6 -1
  52. package/dist/core/BareBatchRunner.d.ts.map +1 -1
  53. package/dist/core/BareBatchRunner.js +20 -5
  54. package/dist/core/BareBatchRunner.js.map +1 -1
  55. package/dist/core/BudgetReadout.d.ts +2 -3
  56. package/dist/core/BudgetReadout.d.ts.map +1 -1
  57. package/dist/core/BudgetReadout.js +23 -32
  58. package/dist/core/BudgetReadout.js.map +1 -1
  59. package/dist/core/CapabilityPolicies.d.ts +3 -8
  60. package/dist/core/CapabilityPolicies.d.ts.map +1 -1
  61. package/dist/core/CapabilityPolicies.js +2 -28
  62. package/dist/core/CapabilityPolicies.js.map +1 -1
  63. package/dist/core/CapabilityResolver.d.ts +10 -10
  64. package/dist/core/CapabilityResolver.d.ts.map +1 -1
  65. package/dist/core/CapabilityResolver.js +122 -93
  66. package/dist/core/CapabilityResolver.js.map +1 -1
  67. package/dist/core/ChannelWrite.d.ts +15 -11
  68. package/dist/core/ChannelWrite.d.ts.map +1 -1
  69. package/dist/core/ChannelWrite.js +12 -13
  70. package/dist/core/ChannelWrite.js.map +1 -1
  71. package/dist/core/ChannelWrite.sql +99 -9
  72. package/dist/core/ClientInteractions.d.ts.map +1 -1
  73. package/dist/core/ClientInteractions.js +7 -0
  74. package/dist/core/ClientInteractions.js.map +1 -1
  75. package/dist/core/CoreSchemeServices.d.ts +13 -10
  76. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  77. package/dist/core/CoreSchemeServices.js +13 -5
  78. package/dist/core/CoreSchemeServices.js.map +1 -1
  79. package/dist/core/DataStatementRunner.d.ts +2 -2
  80. package/dist/core/DataStatementRunner.d.ts.map +1 -1
  81. package/dist/core/DataStatementRunner.js +208 -161
  82. package/dist/core/DataStatementRunner.js.map +1 -1
  83. package/dist/core/Dispatcher.d.ts +24 -26
  84. package/dist/core/Dispatcher.d.ts.map +1 -1
  85. package/dist/core/Dispatcher.js +381 -232
  86. package/dist/core/Dispatcher.js.map +1 -1
  87. package/dist/core/Dispatcher.sql +66 -0
  88. package/dist/core/DurableStatement.d.ts.map +1 -1
  89. package/dist/core/DurableStatement.js +2 -1
  90. package/dist/core/DurableStatement.js.map +1 -1
  91. package/dist/core/EditMutations.d.ts +14 -18
  92. package/dist/core/EditMutations.d.ts.map +1 -1
  93. package/dist/core/EditMutations.js +211 -280
  94. package/dist/core/EditMutations.js.map +1 -1
  95. package/dist/core/EditMutations.sql +15 -0
  96. package/dist/core/EditSequence.d.ts +13 -0
  97. package/dist/core/EditSequence.d.ts.map +1 -0
  98. package/dist/core/EditSequence.js +73 -0
  99. package/dist/core/EditSequence.js.map +1 -0
  100. package/dist/core/Engine.d.ts +17 -23
  101. package/dist/core/Engine.d.ts.map +1 -1
  102. package/dist/core/Engine.js +74 -164
  103. package/dist/core/Engine.js.map +1 -1
  104. package/dist/core/Engine.sql +0 -724
  105. package/dist/core/EntryAddressBinding.d.ts +7 -17
  106. package/dist/core/EntryAddressBinding.d.ts.map +1 -1
  107. package/dist/core/EntryAddressBinding.js +12 -72
  108. package/dist/core/EntryAddressBinding.js.map +1 -1
  109. package/dist/core/ExecutionOutputs.d.ts +9 -0
  110. package/dist/core/ExecutionOutputs.d.ts.map +1 -0
  111. package/dist/core/ExecutionOutputs.js +36 -0
  112. package/dist/core/ExecutionOutputs.js.map +1 -0
  113. package/dist/core/ExecutionOutputs.sql +21 -0
  114. package/dist/core/ExecutorRegistry.d.ts +11 -5
  115. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  116. package/dist/core/ExecutorRegistry.js +37 -32
  117. package/dist/core/ExecutorRegistry.js.map +1 -1
  118. package/dist/core/HostPaths.d.ts +1 -0
  119. package/dist/core/HostPaths.d.ts.map +1 -1
  120. package/dist/core/HostPaths.js +4 -0
  121. package/dist/core/HostPaths.js.map +1 -1
  122. package/dist/core/InferenceCall.d.ts.map +1 -1
  123. package/dist/core/InferenceCall.js +1 -2
  124. package/dist/core/InferenceCall.js.map +1 -1
  125. package/dist/core/InferenceCall.sql +29 -0
  126. package/dist/core/KillHandler.d.ts +1 -0
  127. package/dist/core/KillHandler.d.ts.map +1 -1
  128. package/dist/core/KillHandler.js +24 -21
  129. package/dist/core/KillHandler.js.map +1 -1
  130. package/dist/core/LogBody.d.ts +8 -1
  131. package/dist/core/LogBody.d.ts.map +1 -1
  132. package/dist/core/LogBody.js +44 -12
  133. package/dist/core/LogBody.js.map +1 -1
  134. package/dist/core/LogEntryProjection.d.ts +1 -0
  135. package/dist/core/LogEntryProjection.d.ts.map +1 -1
  136. package/dist/core/LogEntryProjection.js +12 -10
  137. package/dist/core/LogEntryProjection.js.map +1 -1
  138. package/dist/core/LogVisibility.d.ts +1 -0
  139. package/dist/core/LogVisibility.d.ts.map +1 -1
  140. package/dist/core/LogVisibility.js +3 -0
  141. package/dist/core/LogVisibility.js.map +1 -1
  142. package/dist/core/LogWriter.d.ts +2 -3
  143. package/dist/core/LogWriter.d.ts.map +1 -1
  144. package/dist/core/LogWriter.js +31 -36
  145. package/dist/core/LogWriter.js.map +1 -1
  146. package/dist/core/LogWriter.sql +23 -0
  147. package/dist/core/LoopDriver.d.ts +11 -8
  148. package/dist/core/LoopDriver.d.ts.map +1 -1
  149. package/dist/core/LoopDriver.js +161 -189
  150. package/dist/core/LoopDriver.js.map +1 -1
  151. package/dist/core/LoopDriver.sql +11 -0
  152. package/dist/core/LoopLifecycle.d.ts +32 -2
  153. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  154. package/dist/core/LoopLifecycle.js +88 -4
  155. package/dist/core/LoopLifecycle.js.map +1 -1
  156. package/dist/core/LoopLifecycle.sql +145 -28
  157. package/dist/core/LoopPolicyReader.sql +6 -0
  158. package/dist/core/MembershipMaterialization.d.ts.map +1 -1
  159. package/dist/core/MembershipMaterialization.js +6 -28
  160. package/dist/core/MembershipMaterialization.js.map +1 -1
  161. package/dist/core/ModelCall.d.ts.map +1 -1
  162. package/dist/core/ModelCall.js +2 -6
  163. package/dist/core/ModelCall.js.map +1 -1
  164. package/dist/core/ModelCall.sql +41 -0
  165. package/dist/core/MutationEffects.d.ts +5 -3
  166. package/dist/core/MutationEffects.d.ts.map +1 -1
  167. package/dist/core/MutationEffects.js +10 -28
  168. package/dist/core/MutationEffects.js.map +1 -1
  169. package/dist/core/NativeContent.d.ts +6 -0
  170. package/dist/core/NativeContent.d.ts.map +1 -0
  171. package/dist/core/NativeContent.js +16 -0
  172. package/dist/core/NativeContent.js.map +1 -0
  173. package/dist/core/NativeContent.sql +6 -0
  174. package/dist/core/NoticeChannel.js +1 -1
  175. package/dist/core/NoticeChannel.js.map +1 -1
  176. package/dist/core/OperatorConfig.js +5 -5
  177. package/dist/core/OperatorConfig.js.map +1 -1
  178. package/dist/core/PacketBuilder.d.ts +8 -5
  179. package/dist/core/PacketBuilder.d.ts.map +1 -1
  180. package/dist/core/PacketBuilder.js +117 -81
  181. package/dist/core/PacketBuilder.js.map +1 -1
  182. package/dist/core/PacketBuilder.sql +146 -0
  183. package/dist/core/PatternSelection.d.ts +28 -0
  184. package/dist/core/PatternSelection.d.ts.map +1 -0
  185. package/dist/core/PatternSelection.js +42 -0
  186. package/dist/core/PatternSelection.js.map +1 -0
  187. package/dist/core/ProblemLog.d.ts.map +1 -1
  188. package/dist/core/ProblemLog.js +0 -1
  189. package/dist/core/ProblemLog.js.map +1 -1
  190. package/dist/core/PromptFrames.d.ts +12 -0
  191. package/dist/core/PromptFrames.d.ts.map +1 -0
  192. package/dist/core/PromptFrames.js +28 -0
  193. package/dist/core/PromptFrames.js.map +1 -0
  194. package/dist/core/ProposalLifecycle.d.ts +0 -1
  195. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  196. package/dist/core/ProposalLifecycle.js +26 -23
  197. package/dist/core/ProposalLifecycle.js.map +1 -1
  198. package/dist/core/ProposalLifecycle.sql +33 -0
  199. package/dist/core/ProviderInstantiate.d.ts +1 -1
  200. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  201. package/dist/core/ProviderInstantiate.js +7 -14
  202. package/dist/core/ProviderInstantiate.js.map +1 -1
  203. package/dist/core/ReasoningView.d.ts +9 -0
  204. package/dist/core/ReasoningView.d.ts.map +1 -0
  205. package/dist/core/ReasoningView.js +47 -0
  206. package/dist/core/ReasoningView.js.map +1 -0
  207. package/dist/core/ResourceBindings.d.ts +16 -0
  208. package/dist/core/ResourceBindings.d.ts.map +1 -0
  209. package/dist/core/ResourceBindings.js +45 -0
  210. package/dist/core/ResourceBindings.js.map +1 -0
  211. package/dist/core/ResourceMutations.d.ts +5 -8
  212. package/dist/core/ResourceMutations.d.ts.map +1 -1
  213. package/dist/core/ResourceMutations.js +6 -7
  214. package/dist/core/ResourceMutations.js.map +1 -1
  215. package/dist/core/ResourceSelector.d.ts +2 -2
  216. package/dist/core/ResourceSelector.d.ts.map +1 -1
  217. package/dist/core/ResourceSelector.js +122 -62
  218. package/dist/core/ResourceSelector.js.map +1 -1
  219. package/dist/core/ResourceTransfers.d.ts +4 -2
  220. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  221. package/dist/core/ResourceTransfers.js +95 -26
  222. package/dist/core/ResourceTransfers.js.map +1 -1
  223. package/dist/core/RuntimeWorker.d.ts +5 -0
  224. package/dist/core/RuntimeWorker.d.ts.map +1 -0
  225. package/dist/core/RuntimeWorker.js +15 -0
  226. package/dist/core/RuntimeWorker.js.map +1 -0
  227. package/dist/core/RuntimeWorker.sql +11 -0
  228. package/dist/core/SchemeRegistry.d.ts +12 -16
  229. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  230. package/dist/core/SchemeRegistry.js +59 -85
  231. package/dist/core/SchemeRegistry.js.map +1 -1
  232. package/dist/core/StoredPacket.d.ts +6 -1
  233. package/dist/core/StoredPacket.d.ts.map +1 -1
  234. package/dist/core/StoredPacket.js +30 -10
  235. package/dist/core/StoredPacket.js.map +1 -1
  236. package/dist/core/StrikeRail.d.ts +11 -8
  237. package/dist/core/StrikeRail.d.ts.map +1 -1
  238. package/dist/core/StrikeRail.js +63 -114
  239. package/dist/core/StrikeRail.js.map +1 -1
  240. package/dist/core/StrikeRail.sql +12 -0
  241. package/dist/core/TerminalResult.d.ts +1 -1
  242. package/dist/core/TerminalResult.d.ts.map +1 -1
  243. package/dist/core/TerminalResult.js +2 -2
  244. package/dist/core/TerminalResult.js.map +1 -1
  245. package/dist/core/TokenCalibration.d.ts +1 -6
  246. package/dist/core/TokenCalibration.d.ts.map +1 -1
  247. package/dist/core/TokenCalibration.js +13 -9
  248. package/dist/core/TokenCalibration.js.map +1 -1
  249. package/dist/core/TokenCalibration.sql +15 -0
  250. package/dist/core/ToolInputSchema.d.ts +6 -0
  251. package/dist/core/ToolInputSchema.d.ts.map +1 -0
  252. package/dist/core/ToolInputSchema.js +43 -0
  253. package/dist/core/ToolInputSchema.js.map +1 -0
  254. package/dist/core/ToolResources.d.ts.map +1 -1
  255. package/dist/core/ToolResources.js +77 -51
  256. package/dist/core/ToolResources.js.map +1 -1
  257. package/dist/core/Turn.d.ts +5 -2
  258. package/dist/core/Turn.d.ts.map +1 -1
  259. package/dist/core/Turn.js +13 -11
  260. package/dist/core/Turn.js.map +1 -1
  261. package/dist/core/Turn.sql +25 -39
  262. package/dist/core/{SendBroadcastHandler.d.ts → TurnDispositionHandler.d.ts} +24 -18
  263. package/dist/core/TurnDispositionHandler.d.ts.map +1 -0
  264. package/dist/core/TurnDispositionHandler.js +206 -0
  265. package/dist/core/TurnDispositionHandler.js.map +1 -0
  266. package/dist/core/TurnMaterialization.d.ts +2 -3
  267. package/dist/core/TurnMaterialization.d.ts.map +1 -1
  268. package/dist/core/TurnMaterialization.js +47 -24
  269. package/dist/core/TurnMaterialization.js.map +1 -1
  270. package/dist/core/TurnMaterialization.sql +44 -0
  271. package/dist/core/TurnOps.d.ts.map +1 -1
  272. package/dist/core/TurnOps.js +8 -64
  273. package/dist/core/TurnOps.js.map +1 -1
  274. package/dist/core/TurnRunner.d.ts +8 -15
  275. package/dist/core/TurnRunner.d.ts.map +1 -1
  276. package/dist/core/TurnRunner.js +1175 -1317
  277. package/dist/core/TurnRunner.js.map +1 -1
  278. package/dist/core/TurnRunner.sql +74 -0
  279. package/dist/core/TurnSources.sql +39 -0
  280. package/dist/core/WorkerControlAddress.d.ts +1 -0
  281. package/dist/core/WorkerControlAddress.d.ts.map +1 -1
  282. package/dist/core/WorkerControlAddress.js +5 -0
  283. package/dist/core/WorkerControlAddress.js.map +1 -1
  284. package/dist/core/WorkerControlHandler.d.ts +1 -3
  285. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  286. package/dist/core/WorkerControlHandler.js +64 -48
  287. package/dist/core/WorkerControlHandler.js.map +1 -1
  288. package/dist/core/WorkerName.d.ts +11 -12
  289. package/dist/core/WorkerName.d.ts.map +1 -1
  290. package/dist/core/WorkerName.js +40 -47
  291. package/dist/core/WorkerName.js.map +1 -1
  292. package/dist/core/WorkerName.sql +7 -10
  293. package/dist/core/WorkspaceGate.d.ts +1 -1
  294. package/dist/core/WorkspaceGate.d.ts.map +1 -1
  295. package/dist/core/WorkspaceGate.js +33 -10
  296. package/dist/core/WorkspaceGate.js.map +1 -1
  297. package/dist/core/ambient.sql +236 -0
  298. package/dist/core/attachments.d.ts +2 -1
  299. package/dist/core/attachments.d.ts.map +1 -1
  300. package/dist/core/attachments.js +5 -4
  301. package/dist/core/attachments.js.map +1 -1
  302. package/dist/core/caps/CapsResolve.d.ts +2 -3
  303. package/dist/core/caps/CapsResolve.d.ts.map +1 -1
  304. package/dist/core/caps/CapsResolve.js +5 -5
  305. package/dist/core/caps/CapsResolve.js.map +1 -1
  306. package/dist/core/caps/DbChannelCaps.d.ts +1 -1
  307. package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
  308. package/dist/core/caps/DbChannelCaps.js +4 -6
  309. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  310. package/dist/core/caps/DbEntryCaps.d.ts +2 -1
  311. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  312. package/dist/core/caps/DbEntryCaps.js +11 -17
  313. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  314. package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
  315. package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
  316. package/dist/core/caps/DbNotifyCaps.js +3 -5
  317. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  318. package/dist/core/caps/DbProjectionCaps.js +1 -1
  319. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  320. package/dist/core/caps/DbSubscriptionCaps.d.ts +1 -1
  321. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  322. package/dist/core/caps/DbSubscriptionCaps.js +5 -7
  323. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  324. package/dist/core/caps/SchemeCtxImpl.d.ts +0 -2
  325. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  326. package/dist/core/caps/SchemeCtxImpl.js +4 -20
  327. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  328. package/dist/core/env-catalog.d.ts +28 -0
  329. package/dist/core/env-catalog.d.ts.map +1 -0
  330. package/dist/core/env-catalog.js +99 -0
  331. package/dist/core/env-catalog.js.map +1 -0
  332. package/dist/core/env-defaults.d.ts.map +1 -1
  333. package/dist/core/env-defaults.js +4 -2
  334. package/dist/core/env-defaults.js.map +1 -1
  335. package/dist/core/file-materialization.d.ts +4 -1
  336. package/dist/core/file-materialization.d.ts.map +1 -1
  337. package/dist/core/file-materialization.js +15 -1
  338. package/dist/core/file-materialization.js.map +1 -1
  339. package/dist/core/fork.d.ts +1 -6
  340. package/dist/core/fork.d.ts.map +1 -1
  341. package/dist/core/fork.js +9 -153
  342. package/dist/core/fork.js.map +1 -1
  343. package/dist/core/fork.sql +162 -185
  344. package/dist/core/git-env.d.ts +1 -0
  345. package/dist/core/git-env.d.ts.map +1 -1
  346. package/dist/core/git-env.js +39 -2
  347. package/dist/core/git-env.js.map +1 -1
  348. package/dist/core/git-membership.d.ts.map +1 -1
  349. package/dist/core/git-membership.js +64 -48
  350. package/dist/core/git-membership.js.map +1 -1
  351. package/dist/core/git-state.d.ts.map +1 -1
  352. package/dist/core/git-state.js +26 -20
  353. package/dist/core/git-state.js.map +1 -1
  354. package/dist/core/glob_match.d.ts +4 -0
  355. package/dist/core/glob_match.d.ts.map +1 -0
  356. package/dist/core/glob_match.js +7 -0
  357. package/dist/core/glob_match.js.map +1 -0
  358. package/dist/core/maintenance.sql +6 -0
  359. package/dist/core/mutation-types.d.ts +7 -28
  360. package/dist/core/mutation-types.d.ts.map +1 -1
  361. package/dist/core/operation-target-groups.d.ts.map +1 -1
  362. package/dist/core/operation-target-groups.js +2 -1
  363. package/dist/core/operation-target-groups.js.map +1 -1
  364. package/dist/core/packet-inject.d.ts.map +1 -1
  365. package/dist/core/packet-inject.js +2 -3
  366. package/dist/core/packet-inject.js.map +1 -1
  367. package/dist/core/packet-wire.d.ts +8 -6
  368. package/dist/core/packet-wire.d.ts.map +1 -1
  369. package/dist/core/packet-wire.js +381 -388
  370. package/dist/core/packet-wire.js.map +1 -1
  371. package/dist/core/plurnk-uri.d.ts +1 -1
  372. package/dist/core/plurnk-uri.d.ts.map +1 -1
  373. package/dist/core/plurnk-uri.js +5 -12
  374. package/dist/core/plurnk-uri.js.map +1 -1
  375. package/dist/core/scheme-types.d.ts +3 -3
  376. package/dist/core/scheme-types.d.ts.map +1 -1
  377. package/dist/core/scheme-types.js.map +1 -1
  378. package/dist/core/sha256.d.ts +4 -0
  379. package/dist/core/sha256.d.ts.map +1 -0
  380. package/dist/core/sha256.js +6 -0
  381. package/dist/core/sha256.js.map +1 -0
  382. package/dist/core/teaching.js +1 -1
  383. package/dist/core/teaching.js.map +1 -1
  384. package/dist/core/turn-scheduler.d.ts.map +1 -1
  385. package/dist/core/turn-scheduler.js +5 -18
  386. package/dist/core/turn-scheduler.js.map +1 -1
  387. package/dist/core/turn-signals.d.ts +0 -6
  388. package/dist/core/turn-signals.d.ts.map +1 -1
  389. package/dist/core/turn-signals.js +1 -7
  390. package/dist/core/turn-signals.js.map +1 -1
  391. package/dist/core/worker-ops.sql +15 -22
  392. package/dist/core/workspace-settings.d.ts.map +1 -1
  393. package/dist/core/workspace-settings.js +18 -2
  394. package/dist/core/workspace-settings.js.map +1 -1
  395. package/dist/core/workspace-settings.sql +6 -0
  396. package/dist/digest/Digest.d.ts.map +1 -1
  397. package/dist/digest/Digest.js +30 -91
  398. package/dist/digest/Digest.js.map +1 -1
  399. package/dist/digest/DigestRender.d.ts +1 -0
  400. package/dist/digest/DigestRender.d.ts.map +1 -1
  401. package/dist/digest/DigestRender.js +58 -62
  402. package/dist/digest/DigestRender.js.map +1 -1
  403. package/dist/digest/digest-rows.d.ts +16 -32
  404. package/dist/digest/digest-rows.d.ts.map +1 -1
  405. package/dist/digest/digest.sql +54 -20
  406. package/dist/schemes/Exec.d.ts +6 -12
  407. package/dist/schemes/Exec.d.ts.map +1 -1
  408. package/dist/schemes/Exec.js +318 -215
  409. package/dist/schemes/Exec.js.map +1 -1
  410. package/dist/schemes/ExecOutputScheme.d.ts +8 -6
  411. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  412. package/dist/schemes/ExecOutputScheme.js +33 -61
  413. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  414. package/dist/schemes/ExecScheduler.js +2 -2
  415. package/dist/schemes/ExecScheduler.js.map +1 -1
  416. package/dist/schemes/ExecutionInput.d.ts +12 -0
  417. package/dist/schemes/ExecutionInput.d.ts.map +1 -0
  418. package/dist/schemes/ExecutionInput.js +94 -0
  419. package/dist/schemes/ExecutionInput.js.map +1 -0
  420. package/dist/schemes/File.d.ts +5 -2
  421. package/dist/schemes/File.d.ts.map +1 -1
  422. package/dist/schemes/File.js +62 -91
  423. package/dist/schemes/File.js.map +1 -1
  424. package/dist/schemes/Log.d.ts.map +1 -1
  425. package/dist/schemes/Log.js +84 -79
  426. package/dist/schemes/Log.js.map +1 -1
  427. package/dist/schemes/Log.sql +183 -15
  428. package/dist/schemes/Prompt.d.ts.map +1 -1
  429. package/dist/schemes/Prompt.js +3 -12
  430. package/dist/schemes/Prompt.js.map +1 -1
  431. package/dist/schemes/QuestionTool.d.ts +5 -0
  432. package/dist/schemes/QuestionTool.d.ts.map +1 -1
  433. package/dist/schemes/QuestionTool.js +7 -15
  434. package/dist/schemes/QuestionTool.js.map +1 -1
  435. package/dist/schemes/Skill.d.ts +12 -7
  436. package/dist/schemes/Skill.d.ts.map +1 -1
  437. package/dist/schemes/Skill.js +149 -21
  438. package/dist/schemes/Skill.js.map +1 -1
  439. package/dist/schemes/TurnSource.d.ts +12 -0
  440. package/dist/schemes/TurnSource.d.ts.map +1 -0
  441. package/dist/schemes/TurnSource.js +117 -0
  442. package/dist/schemes/TurnSource.js.map +1 -0
  443. package/dist/schemes/Worker.d.ts +3 -3
  444. package/dist/schemes/Worker.d.ts.map +1 -1
  445. package/dist/schemes/Worker.js +61 -208
  446. package/dist/schemes/Worker.js.map +1 -1
  447. package/dist/schemes/_entry-crud.d.ts +12 -15
  448. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  449. package/dist/schemes/_entry-crud.js +63 -63
  450. package/dist/schemes/_entry-crud.js.map +1 -1
  451. package/dist/schemes/_entry-crud.sql +159 -45
  452. package/dist/schemes/_entry-find.d.ts +1 -3
  453. package/dist/schemes/_entry-find.d.ts.map +1 -1
  454. package/dist/schemes/_entry-find.js +111 -112
  455. package/dist/schemes/_entry-find.js.map +1 -1
  456. package/dist/schemes/_entry-find.sql +22 -14
  457. package/dist/schemes/_entry-fts.d.ts +14 -0
  458. package/dist/schemes/_entry-fts.d.ts.map +1 -0
  459. package/dist/schemes/_entry-fts.js +82 -0
  460. package/dist/schemes/_entry-fts.js.map +1 -0
  461. package/dist/schemes/_entry-fts.sql +31 -0
  462. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  463. package/dist/schemes/_entry-graph.js +6 -14
  464. package/dist/schemes/_entry-graph.js.map +1 -1
  465. package/dist/schemes/_entry-graph.sql +29 -44
  466. package/dist/schemes/_entry-manifest.d.ts +2 -1
  467. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  468. package/dist/schemes/_entry-manifest.js +20 -26
  469. package/dist/schemes/_entry-manifest.js.map +1 -1
  470. package/dist/schemes/_entry-manifest.sql +26 -0
  471. package/dist/schemes/_entry-ops.d.ts +3 -5
  472. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  473. package/dist/schemes/_entry-ops.js +30 -43
  474. package/dist/schemes/_entry-ops.js.map +1 -1
  475. package/dist/schemes/_entry-ops.sql +5 -6
  476. package/dist/schemes/_entry-readable.d.ts +8 -0
  477. package/dist/schemes/_entry-readable.d.ts.map +1 -0
  478. package/dist/schemes/_entry-readable.js +38 -0
  479. package/dist/schemes/_entry-readable.js.map +1 -0
  480. package/dist/schemes/_entry-send.d.ts +1 -1
  481. package/dist/schemes/_entry-send.d.ts.map +1 -1
  482. package/dist/schemes/_entry-send.js +3 -3
  483. package/dist/schemes/_entry-send.js.map +1 -1
  484. package/dist/schemes/_search-index.d.ts +5 -3
  485. package/dist/schemes/_search-index.d.ts.map +1 -1
  486. package/dist/schemes/_search-index.js +169 -160
  487. package/dist/schemes/_search-index.js.map +1 -1
  488. package/dist/schemes/_search-index.sql +47 -0
  489. package/dist/schemes/exec-abort.js +1 -1
  490. package/dist/schemes/exec-abort.js.map +1 -1
  491. package/dist/schemes/exec-env.d.ts +3 -0
  492. package/dist/schemes/exec-env.d.ts.map +1 -1
  493. package/dist/schemes/exec-env.js +66 -15
  494. package/dist/schemes/exec-env.js.map +1 -1
  495. package/dist/schemes/exec-runtime.d.ts +1 -1
  496. package/dist/schemes/exec-runtime.d.ts.map +1 -1
  497. package/dist/schemes/exec-runtime.js +1 -1
  498. package/dist/schemes/exec-runtime.js.map +1 -1
  499. package/dist/server/ClientReads.d.ts +2 -2
  500. package/dist/server/ClientReads.d.ts.map +1 -1
  501. package/dist/server/ClientReads.js +7 -9
  502. package/dist/server/ClientReads.js.map +1 -1
  503. package/dist/server/Daemon.d.ts +15 -21
  504. package/dist/server/Daemon.d.ts.map +1 -1
  505. package/dist/server/Daemon.js +165 -168
  506. package/dist/server/Daemon.js.map +1 -1
  507. package/dist/server/DaemonModule.d.ts +29 -22
  508. package/dist/server/DaemonModule.d.ts.map +1 -1
  509. package/dist/server/DrainSupervisor.d.ts +8 -21
  510. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  511. package/dist/server/DrainSupervisor.js +278 -306
  512. package/dist/server/DrainSupervisor.js.map +1 -1
  513. package/dist/server/EnvFunctionality.d.ts +43 -0
  514. package/dist/server/EnvFunctionality.d.ts.map +1 -0
  515. package/dist/server/EnvFunctionality.js +194 -0
  516. package/dist/server/EnvFunctionality.js.map +1 -0
  517. package/dist/server/Functionality.d.ts +12 -11
  518. package/dist/server/Functionality.d.ts.map +1 -1
  519. package/dist/server/Functionality.js +279 -142
  520. package/dist/server/Functionality.js.map +1 -1
  521. package/dist/server/FunctionalityManager.d.ts +5 -5
  522. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  523. package/dist/server/FunctionalityManager.js +29 -57
  524. package/dist/server/FunctionalityManager.js.map +1 -1
  525. package/dist/server/MembersFunctionality.d.ts +5 -4
  526. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  527. package/dist/server/MembersFunctionality.js +24 -38
  528. package/dist/server/MembersFunctionality.js.map +1 -1
  529. package/dist/server/PlurnkSkill.d.ts +11 -0
  530. package/dist/server/PlurnkSkill.d.ts.map +1 -0
  531. package/dist/server/PlurnkSkill.js +41 -0
  532. package/dist/server/PlurnkSkill.js.map +1 -0
  533. package/dist/server/Retention.d.ts +25 -0
  534. package/dist/server/Retention.d.ts.map +1 -0
  535. package/dist/server/Retention.js +57 -0
  536. package/dist/server/Retention.js.map +1 -0
  537. package/dist/server/Retention.sql +59 -0
  538. package/dist/server/ServiceModules.d.ts +5 -0
  539. package/dist/server/ServiceModules.d.ts.map +1 -0
  540. package/dist/server/ServiceModules.js +10 -0
  541. package/dist/server/ServiceModules.js.map +1 -0
  542. package/dist/server/SkillsFunctionality.d.ts +14 -19
  543. package/dist/server/SkillsFunctionality.d.ts.map +1 -1
  544. package/dist/server/SkillsFunctionality.js +102 -106
  545. package/dist/server/SkillsFunctionality.js.map +1 -1
  546. package/dist/server/WorkerModelResolver.d.ts +4 -0
  547. package/dist/server/WorkerModelResolver.d.ts.map +1 -1
  548. package/dist/server/WorkerModelResolver.js +72 -39
  549. package/dist/server/WorkerModelResolver.js.map +1 -1
  550. package/dist/server/WorkspaceCapabilities.d.ts +21 -0
  551. package/dist/server/WorkspaceCapabilities.d.ts.map +1 -0
  552. package/dist/server/{WorkerCapabilities.js → WorkspaceCapabilities.js} +40 -40
  553. package/dist/server/WorkspaceCapabilities.js.map +1 -0
  554. package/dist/server/WorkspaceResidency.d.ts +38 -0
  555. package/dist/server/WorkspaceResidency.d.ts.map +1 -0
  556. package/dist/server/WorkspaceResidency.js +226 -0
  557. package/dist/server/WorkspaceResidency.js.map +1 -0
  558. package/dist/server/client-input.d.ts +1 -4
  559. package/dist/server/client-input.d.ts.map +1 -1
  560. package/dist/server/client-input.js +5 -46
  561. package/dist/server/client-input.js.map +1 -1
  562. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  563. package/dist/server/dispatch-as-plurnk.js +4 -22
  564. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  565. package/dist/server/drain.sql +66 -43
  566. package/dist/server/envelope.d.ts +8 -1
  567. package/dist/server/envelope.d.ts.map +1 -1
  568. package/dist/server/envelope.js +9 -19
  569. package/dist/server/envelope.js.map +1 -1
  570. package/dist/server/envelope.sql +49 -13
  571. package/dist/server/lifecycle-recovery.sql +18 -20
  572. package/dist/server/logEntry.d.ts +1 -1
  573. package/dist/server/logEntry.d.ts.map +1 -1
  574. package/dist/server/logEntry.js +4 -1
  575. package/dist/server/logEntry.js.map +1 -1
  576. package/dist/server/logEntry.sql +25 -1
  577. package/dist/server/loopDocs.d.ts +2 -2
  578. package/dist/server/loopDocs.d.ts.map +1 -1
  579. package/dist/server/loopDocs.js +38 -31
  580. package/dist/server/loopDocs.js.map +1 -1
  581. package/dist/server/loopDocs.sql +1 -3
  582. package/dist/server/model-catalog.d.ts.map +1 -1
  583. package/dist/server/model-catalog.js +2 -1
  584. package/dist/server/model-catalog.js.map +1 -1
  585. package/dist/server/model-route.d.ts +1 -1
  586. package/dist/server/model-route.d.ts.map +1 -1
  587. package/dist/server/model-route.js +4 -2
  588. package/dist/server/model-route.js.map +1 -1
  589. package/dist/server/seam-entry-read.sql +3 -4
  590. package/dist/server/seam-loop.sql +2 -9
  591. package/dist/server/workspace-capabilities.sql +64 -0
  592. package/dist/service.d.ts.map +1 -1
  593. package/dist/service.js +21 -18
  594. package/dist/service.js.map +1 -1
  595. package/docs/env.md +55 -0
  596. package/docs/members.md +83 -0
  597. package/docs/skills.md +50 -0
  598. package/migrations/001_workspaces.sql +53 -0
  599. package/migrations/002_workers.sql +198 -0
  600. package/migrations/003_loops.sql +326 -0
  601. package/migrations/004_inference.sql +401 -0
  602. package/migrations/005_entries.sql +215 -0
  603. package/migrations/006_log.sql +581 -0
  604. package/migrations/007_subscriptions.sql +175 -0
  605. package/migrations/008_interactions.sql +29 -0
  606. package/package.json +44 -41
  607. package/digest-sql/channel-dispositions/dispositions.sql +0 -15
  608. package/digest-sql/channel-state/state.sql +0 -6
  609. package/digest-sql/curation/curation.sql +0 -6
  610. package/digest-sql/derivations/derivations.sql +0 -4
  611. package/digest-sql/embeddings/embeddings.sql +0 -4
  612. package/digest-sql/entry-dispositions/dispositions.sql +0 -15
  613. package/digest-sql/entry-state/state.sql +0 -6
  614. package/digest-sql/token-counts/token-counts.sql +0 -2
  615. package/dist/core/EmbeddingCall.d.ts +0 -23
  616. package/dist/core/EmbeddingCall.d.ts.map +0 -1
  617. package/dist/core/EmbeddingCall.js +0 -149
  618. package/dist/core/EmbeddingCall.js.map +0 -1
  619. package/dist/core/OverflowTurn.d.ts +0 -11
  620. package/dist/core/OverflowTurn.d.ts.map +0 -1
  621. package/dist/core/OverflowTurn.js +0 -80
  622. package/dist/core/OverflowTurn.js.map +0 -1
  623. package/dist/core/Owner.d.ts +0 -8
  624. package/dist/core/Owner.d.ts.map +0 -1
  625. package/dist/core/Owner.js +0 -46
  626. package/dist/core/Owner.js.map +0 -1
  627. package/dist/core/SendBroadcastHandler.d.ts.map +0 -1
  628. package/dist/core/SendBroadcastHandler.js +0 -159
  629. package/dist/core/SendBroadcastHandler.js.map +0 -1
  630. package/dist/core/VectorPump.d.ts +0 -28
  631. package/dist/core/VectorPump.d.ts.map +0 -1
  632. package/dist/core/VectorPump.js +0 -130
  633. package/dist/core/VectorPump.js.map +0 -1
  634. package/dist/core/owner.sql +0 -11
  635. package/dist/core/worker-settings.d.ts +0 -10
  636. package/dist/core/worker-settings.d.ts.map +0 -1
  637. package/dist/core/worker-settings.js +0 -53
  638. package/dist/core/worker-settings.js.map +0 -1
  639. package/dist/schemes/_entry-chunk.d.ts +0 -14
  640. package/dist/schemes/_entry-chunk.d.ts.map +0 -1
  641. package/dist/schemes/_entry-chunk.js +0 -165
  642. package/dist/schemes/_entry-chunk.js.map +0 -1
  643. package/dist/schemes/_entry-semantic.d.ts +0 -63
  644. package/dist/schemes/_entry-semantic.d.ts.map +0 -1
  645. package/dist/schemes/_entry-semantic.js +0 -299
  646. package/dist/schemes/_entry-semantic.js.map +0 -1
  647. package/dist/schemes/_entry-semantic.sql +0 -99
  648. package/dist/schemes/cosine.d.ts +0 -4
  649. package/dist/schemes/cosine.d.ts.map +0 -1
  650. package/dist/schemes/cosine.js +0 -9
  651. package/dist/schemes/cosine.js.map +0 -1
  652. package/dist/server/WorkerCapabilities.d.ts +0 -21
  653. package/dist/server/WorkerCapabilities.d.ts.map +0 -1
  654. package/dist/server/WorkerCapabilities.js.map +0 -1
  655. package/dist/server/WorkerResidency.d.ts +0 -40
  656. package/dist/server/WorkerResidency.d.ts.map +0 -1
  657. package/dist/server/WorkerResidency.js +0 -283
  658. package/dist/server/WorkerResidency.js.map +0 -1
  659. package/dist/server/seam-log-read.sql +0 -21
  660. package/dist/server/worker-capabilities.sql +0 -28
  661. package/migrations/001_schema.sql +0 -2207
@@ -13,29 +13,27 @@
13
13
  -- $scope_prefix: the literal pathname prefix before any glob syntax, or NULL
14
14
  -- for no prefix. TypeScript applies the authoritative shell-glob match; this
15
15
  -- query supplies only a safe candidate superset.
16
- SELECT e.id AS entry_id, e.authority, e.pathname, ec.deep_hash, ec.content, ec.mimetype
16
+ SELECT e.id AS entry_id, e.authority, e.pathname, ec.name AS channel, ec.deep_hash, ec.content, ec.mimetype
17
17
  FROM entries e
18
- JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = $channel
19
- JOIN workers owner ON owner.id = e.owner_id
20
- WHERE owner.workspace_id = $workspace_id AND e.owner_id = $owner_id
18
+ JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = COALESCE($channel, e.default_channel)
19
+ WHERE e.workspace_id = $workspace_id
21
20
  AND e.scheme = $scheme
22
- AND e.authority = $authority
21
+ AND ($authority IS NULL OR e.authority = $authority)
23
22
  AND ($scope_prefix IS NULL OR substr(e.pathname, 1, length($scope_prefix)) = $scope_prefix)
24
- ORDER BY e.pathname;
23
+ ORDER BY e.authority, e.pathname;
25
24
 
26
25
  -- PREP: find_workspace_entry_candidate_ids
27
26
  -- Relation matchers need the same target candidate set without loading every
28
27
  -- candidate body across the SQL boundary. The ranker joins these identities to
29
28
  -- derivations and performs exhaustive ranking within the selected set.
30
- SELECT e.id AS entry_id, e.authority, e.pathname, ec.deep_hash
29
+ SELECT e.id AS entry_id, e.authority, e.pathname, ec.name AS channel, ec.deep_hash
31
30
  FROM entries e
32
- JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = $channel
33
- JOIN workers owner ON owner.id = e.owner_id
34
- WHERE owner.workspace_id = $workspace_id AND e.owner_id = $owner_id
31
+ JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = COALESCE($channel, e.default_channel)
32
+ WHERE e.workspace_id = $workspace_id
35
33
  AND e.scheme = $scheme
36
- AND e.authority = $authority
34
+ AND ($authority IS NULL OR e.authority = $authority)
37
35
  AND ($scope_prefix IS NULL OR substr(e.pathname, 1, length($scope_prefix)) = $scope_prefix)
38
- ORDER BY e.pathname;
36
+ ORDER BY e.authority, e.pathname;
39
37
 
40
38
  -- PREP: find_workspace_derivation_candidates
41
39
  -- Graph relations resolve their source definitions across the complete
@@ -45,6 +43,16 @@ ORDER BY e.pathname;
45
43
  SELECT (e.scheme || ':' || e.id || '#' || ec.name) AS key, ec.deep_hash
46
44
  FROM entries e
47
45
  JOIN entry_channels ec ON ec.entry_id = e.id
48
- JOIN workers owner ON owner.id = e.owner_id
49
- WHERE owner.workspace_id = $workspace_id
46
+ WHERE e.workspace_id = $workspace_id
50
47
  ORDER BY e.id, ec.name;
48
+
49
+ -- PREP: find_selected_channels
50
+ -- {§find-result-projection}: the selected channel of every matched entry in one statement —
51
+ -- $selections is a JSON array of {key, authority, pathname, channel}; a missing channel is a
52
+ -- missing row the caller names.
53
+ SELECT json_extract(sel.value, '$.key') AS key, ec.content, ec.mimetype
54
+ FROM json_each($selections) AS sel
55
+ JOIN entries e ON e.workspace_id = $workspace_id AND e.scheme = $scheme
56
+ AND e.authority = json_extract(sel.value, '$.authority')
57
+ AND e.pathname = json_extract(sel.value, '$.pathname')
58
+ JOIN entry_channels ec ON ec.entry_id = e.id AND ec.name = json_extract(sel.value, '$.channel');
@@ -0,0 +1,14 @@
1
+ import type { Db } from "../core/Db.ts";
2
+ import type { ProblemDetails } from "@plurnk/plurnk-schemes";
3
+ import type { CandidateMatch } from "../content/matcher.ts";
4
+ import type { SearchCandidate } from "./_search-candidate.ts";
5
+ export default class EntryFts {
6
+ #private;
7
+ static index(db: Db, derivationId: number, content: string): Promise<void>;
8
+ static rankCandidates(db: Db, candidates: readonly SearchCandidate[], query: string, signal?: AbortSignal): Promise<{
9
+ status: number;
10
+ matches: CandidateMatch[];
11
+ problem?: ProblemDetails;
12
+ }>;
13
+ }
14
+ //# sourceMappingURL=_entry-fts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_entry-fts.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-fts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAiB,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE5E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI9D,MAAM,CAAC,OAAO,OAAO,QAAQ;;IACzB,OAAa,KAAK,CAAC,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/E;IAGD,OAAa,cAAc,CACvB,EAAE,EAAE,EAAE,EACN,UAAU,EAAE,SAAS,eAAe,EAAE,EACtC,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,WAAW,GACrB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,cAAc,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,cAAc,CAAA;KAAE,CAAC,CAsClF;CA4BJ"}
@@ -0,0 +1,82 @@
1
+ import { TextCoordinates } from "@plurnk/plurnk-mimetypes";
2
+ import Results from "../core/results.js";
3
+ export default class EntryFts {
4
+ static async index(db, derivationId, content) {
5
+ await db.fts_delete.run({ derivation_id: derivationId });
6
+ if (content.length > 0)
7
+ await db.fts_insert.run({ derivation_id: derivationId, content });
8
+ }
9
+ // SQLite owns parsing, tokenization and matching; highlight only locates its matches.
10
+ static async rankCandidates(db, candidates, query, signal) {
11
+ signal?.throwIfAborted();
12
+ if (candidates.length === 0)
13
+ return { status: 200, matches: [] };
14
+ const encoded = JSON.stringify(candidates);
15
+ let marker = "\u001f";
16
+ for (;;) {
17
+ signal?.throwIfAborted();
18
+ const open = `${marker}[`, close = `${marker}]`;
19
+ let rows;
20
+ try {
21
+ rows = await db.fts_rank_candidates.all({ candidates: encoded, query, open, close });
22
+ }
23
+ catch (cause) {
24
+ // SQL is prepared at database startup. These are FTS5 MATCH-parser errors
25
+ // at execution, not arbitrary SQLite failures or guesses about intent.
26
+ if (!(cause instanceof Error) || !/^(?:fts5: syntax error|unterminated string$|no such column:|expected integer, got )/.test(cause.message))
27
+ throw cause;
28
+ const failure = Results.failure("schemes:matcher", "invalid-expression", 400, "The full-text matcher expression is invalid.", {}, { stage: "matcher", dialect: "fts", diagnostic: cause.message, recovery: "Use a valid FTS5 query expression.", retryable: false });
29
+ return { ...failure, matches: [] };
30
+ }
31
+ signal?.throwIfAborted();
32
+ if (rows.some(({ content }) => content.includes(open) || content.includes(close))) {
33
+ // A source may contain the presentation markers. Grow once against all
34
+ // immutable matched bodies, then ask SQLite to mark them without ambiguity.
35
+ do {
36
+ marker += marker;
37
+ } while (rows.some(({ content }) => content.includes(marker)));
38
+ continue;
39
+ }
40
+ return {
41
+ status: 200,
42
+ matches: rows.map(({ key, content, highlighted }) => ({
43
+ key,
44
+ matches: EntryFts.#evidence(content, highlighted, open, close),
45
+ })),
46
+ };
47
+ }
48
+ }
49
+ static #evidence(content, highlighted, open, close) {
50
+ const coordinates = new TextCoordinates(content);
51
+ const matches = [];
52
+ let sourceOffset = 0, markedOffset = 0;
53
+ for (;;) {
54
+ const start = highlighted.indexOf(open, markedOffset);
55
+ if (start < 0) {
56
+ if (highlighted.slice(markedOffset) !== content.slice(sourceOffset))
57
+ throw new Error("FTS5 highlight changed the source text");
58
+ break;
59
+ }
60
+ const gap = highlighted.slice(markedOffset, start);
61
+ if (gap !== content.slice(sourceOffset, sourceOffset + gap.length))
62
+ throw new Error("FTS5 highlight changed the source text");
63
+ sourceOffset += gap.length;
64
+ const end = highlighted.indexOf(close, start + open.length);
65
+ if (end < 0)
66
+ throw new Error("FTS5 highlight has an unterminated match");
67
+ const matched = highlighted.slice(start + open.length, end);
68
+ if (matched !== content.slice(sourceOffset, sourceOffset + matched.length))
69
+ throw new Error("FTS5 highlight changed the matched text");
70
+ const region = coordinates.regionFromOffsets(sourceOffset, sourceOffset + matched.length);
71
+ if (region === null)
72
+ throw new Error("FTS5 match is outside the readable coordinate space");
73
+ matches.push({ region, matched });
74
+ sourceOffset += matched.length;
75
+ markedOffset = end + close.length;
76
+ }
77
+ if (matches.length === 0)
78
+ throw new Error("FTS5 selected a resource without matched evidence");
79
+ return matches;
80
+ }
81
+ }
82
+ //# sourceMappingURL=_entry-fts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_entry-fts.js","sourceRoot":"","sources":["../../src/schemes/_entry-fts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ -- {§find-fulltext-selection} Native FTS5 query and ranking over visible candidates.
2
+
3
+ -- PREP: fts_delete
4
+ DELETE FROM derivation_fts WHERE rowid = $derivation_id;
5
+
6
+ -- PREP: fts_insert
7
+ INSERT INTO derivation_fts (rowid, content) VALUES ($derivation_id, $content);
8
+
9
+ -- PREP: fts_rank_candidates
10
+ WITH candidates AS (
11
+ SELECT json_extract(value, '$.key') AS key,
12
+ json_extract(value, '$.deepHash') AS deep_hash
13
+ FROM json_each($candidates)
14
+ )
15
+ SELECT c.key, f.content,
16
+ highlight(derivation_fts, 0, $open, $close) AS highlighted
17
+ FROM derivation_fts f
18
+ JOIN derivations d ON d.id = f.rowid AND d.state = 'complete'
19
+ JOIN candidates c ON c.deep_hash = d.deep_hash
20
+ WHERE f.content MATCH $query
21
+ ORDER BY bm25(derivation_fts), c.key COLLATE BINARY;
22
+
23
+ -- INIT: derivations_delete_fts
24
+ -- {§retention-policy}: the full-text row is the derivation's shadow (rowid = derivation id) and
25
+ -- leaves with it on every delete path, so no collector has to remember it.
26
+ DROP TRIGGER IF EXISTS derivations_delete_fts;
27
+ CREATE TRIGGER derivations_delete_fts
28
+ AFTER DELETE ON derivations
29
+ BEGIN
30
+ DELETE FROM derivation_fts WHERE rowid = OLD.id;
31
+ END;
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-graph.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-graph.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UAAU;;IAC3B,MAAM,CAAC,UAAU,IAAI,MAAM,CAO1B;IAKD,OAAa,YAAY,CACrB,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,OAAO,EAAE,GAC/D,OAAO,CAAC,IAAI,CAAC,CAqBf;IAOD,OAAa,eAAe,CACxB,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,UAAU,EAAE,SAAS,eAAe,EAAE,EACtC,GAAG,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC,CAmBpD;CAmDJ;AAKD,MAAM,WAAW,UAAU;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CAAE"}
1
+ {"version":3,"file":"_entry-graph.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-graph.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,UAAU;;IAC3B,MAAM,CAAC,UAAU,IAAI,MAAM,CAO1B;IAKD,OAAa,YAAY,CACrB,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAC5B,OAAO,EAAE,SAAS,UAAU,EAAE,EAAE,UAAU,EAAE,SAAS,OAAO,EAAE,GAC/D,OAAO,CAAC,IAAI,CAAC,CAqBf;IAOD,OAAa,eAAe,CACxB,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,SAAS,eAAe,EAAE,EACpC,UAAU,EAAE,SAAS,eAAe,EAAE,EACtC,GAAG,EAAE,MAAM,GACZ,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC,CAmBpD;CA6CJ;AAKD,MAAM,WAAW,UAAU;IAAG,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CAAE"}
@@ -26,7 +26,7 @@ export default class EntryGraph {
26
26
  // Structured data may legitimately define an empty key. The symbols
27
27
  // channel preserves it, but the &graph language cannot address an empty
28
28
  // name, so it has no graph identity. Omit only that unaddressable
29
- // definition; FTS and vectors still derive from the complete content.
29
+ // definition; FTS still derives from the complete content.
30
30
  const addressableSymbols = symbols.filter(({ name }) => name.length > 0);
31
31
  const storeBatch = EntryGraph.storeBatch();
32
32
  for (let offset = 0; offset < addressableSymbols.length; offset += storeBatch) {
@@ -99,21 +99,13 @@ export default class EntryGraph {
99
99
  // defining entries (with their def spans). The definition's fully qualified
100
100
  // container identity is the &> join key. {§graph-relations}
101
101
  static async #referents(db, universe, candidates, name) {
102
- const defs = await db.graph_resolve_def_candidates.all({
103
- candidates: JSON.stringify(universe),
102
+ // One statement walks definitions → referenced targets → their defining candidates.
103
+ const rows = await db.graph_referents.all({
104
+ universe: JSON.stringify(universe),
105
+ candidates: JSON.stringify(candidates),
104
106
  name,
105
107
  });
106
- const targets = new Set();
107
- for (const d of defs) {
108
- const qualified = d.container === null ? name : `${d.container}.${name}`;
109
- const refs = await db.graph_refs_from_source.all({ derivation_id: d.derivation_id, container: qualified });
110
- for (const r of refs)
111
- targets.add(r.name);
112
- }
113
- const out = [];
114
- for (const t of targets)
115
- out.push(...await EntryGraph.#defs(db, candidates, t));
116
- return EntryGraph.#dedupe(out);
108
+ return EntryGraph.#dedupe(rows.map((r) => ({ key: r.key, lineStart: r.line, lineEnd: r.end_line })));
117
109
  }
118
110
  }
119
111
  //# sourceMappingURL=_entry-graph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-graph.js","sourceRoot":"","sources":["../../src/schemes/_entry-graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_entry-graph.js","sourceRoot":"","sources":["../../src/schemes/_entry-graph.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,iFAAiF;AACjF,sFAAsF;AACtF,6EAA6E;AAC7E,0DAA0D;AAC1D,EAAE;AACF,mFAAmF;AACnF,wFAAwF;AACxF,+DAA+D;AAC/D,oEAAoE;AAMpE,MAAM,CAAC,OAAO,OAAO,UAAU;IAC3B,MAAM,CAAC,UAAU;QACb,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC;QAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,UAAU,CAAC,0EAA0E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1H,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,4EAA4E;IAC5E,+EAA+E;IAC/E,2EAA2E;IAC3E,MAAM,CAAC,KAAK,CAAC,YAAY,CACrB,EAAM,EAAE,YAAoB,EAC5B,OAA8B,EAAE,UAA8B;QAE9D,MAAM,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC;QAChE,MAAM,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC;QAChE,oEAAoE;QACpE,wEAAwE;QACxE,kEAAkE;QAClE,2DAA2D;QAC3D,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACzE,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC;QAC3C,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAAC,MAAM,EAAE,MAAM,IAAI,UAAU,EAAE,CAAC;YAC5E,MAAM,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;gBAChC,aAAa,EAAE,YAAY;gBAC3B,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;aAC9D,CAAC,CAAC;QACP,CAAC;QACD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,IAAI,UAAU,EAAE,CAAC;YACpE,MAAM,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAC;gBAChC,aAAa,EAAE,YAAY;gBAC3B,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAAC;aACtD,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,sEAAsE;IACtE,2EAA2E;IAC3E,yGAAyG;IACzG,4FAA4F;IAC5F,qFAAqF;IACrF,MAAM,CAAC,KAAK,CAAC,eAAe,CACxB,EAAM,EACN,QAAoC,EACpC,UAAsC,EACtC,GAAW;QAEX,MAAM,CAAC,GAAG,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,CAAC,KAAK,IAAI;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACvB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QAE3D,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;QAC1G,IAAI,SAAS,KAAK,GAAG;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC;QAEpH,mFAAmF;QACnF,OAAO;YACH,MAAM,EAAE,GAAG;YACX,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC;gBACxB,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC;gBAC/C,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC;gBACpD,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC;aACjE,CAAC;SACL,CAAC;IACN,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAAqB;QAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,GAAG,GAAiB,EAAE,CAAC;QAC7B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;YACrD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;QACvD,CAAC;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;IACvF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAAM,EAAE,UAAsC,EAAE,IAAY;QAChF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAkD;YAClG,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACtC,IAAI;SACP,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAM,EAAE,UAAsC,EAAE,IAAY;QAC3E,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAkD;YAC7F,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACtC,IAAI;SACP,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACrF,CAAC;IAED,+EAA+E;IAC/E,4EAA4E;IAC5E,4DAA4D;IAC5D,MAAM,CAAC,KAAK,CAAC,UAAU,CACnB,EAAM,EACN,QAAoC,EACpC,UAAsC,EACtC,IAAY;QAEZ,oFAAoF;QACpF,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,eAAe,CAAC,GAAG,CAAkD;YACvF,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAClC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;YACtC,IAAI;SACP,CAAC,CAAC;QACH,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;IACzG,CAAC;CACJ"}
@@ -10,14 +10,6 @@ DELETE FROM symbol_defs WHERE derivation_id = $derivation_id;
10
10
  -- PREP: graph_delete_refs
11
11
  DELETE FROM symbol_refs WHERE derivation_id = $derivation_id;
12
12
 
13
- -- PREP: graph_insert_def
14
- INSERT INTO symbol_defs (derivation_id, name, kind, container, line, end_line)
15
- VALUES ($derivation_id, $name, $kind, $container, $line, $end_line);
16
-
17
- -- PREP: graph_insert_ref
18
- INSERT INTO symbol_refs (derivation_id, name, kind, container, line, col)
19
- VALUES ($derivation_id, $name, $kind, $container, $line, $col);
20
-
21
13
  -- PREP: graph_insert_defs_bulk
22
14
  INSERT INTO symbol_defs (derivation_id, name, kind, container, line, end_line)
23
15
  SELECT $derivation_id,
@@ -27,36 +19,15 @@ SELECT $derivation_id,
27
19
  FROM json_each($rows);
28
20
 
29
21
  -- PREP: graph_insert_refs_bulk
30
- INSERT INTO symbol_refs (derivation_id, name, kind, container, line, col)
22
+ INSERT INTO symbol_refs (derivation_id, name, kind, container, line)
31
23
  SELECT $derivation_id,
32
24
  json_extract(value, '$.name'), json_extract(value, '$.kind'),
33
- json_extract(value, '$.container'), json_extract(value, '$.line'),
34
- json_extract(value, '$.column')
25
+ json_extract(value, '$.container'), json_extract(value, '$.line')
35
26
  FROM json_each($rows);
36
27
 
37
28
  -- PREP: derivation_get
38
29
  SELECT id, state, disposition, reason FROM derivations WHERE deep_hash = $deep_hash;
39
30
 
40
- -- PREP: derivation_vectors_landed
41
- -- {§derivation-vectors-background} — the pump lands an attached artifact's vectors: only a
42
- -- complete artifact still owing them upgrades.
43
- UPDATE derivations
44
- SET disposition = $disposition, reason = $reason
45
- WHERE id = $derivation_id AND state = 'complete'
46
- AND disposition = 'lexical' AND reason = 'vectors_pending';
47
-
48
- -- PREP: derivation_vectors_pending
49
- -- How many of these artifacts still owe vectors — the semantic query's join condition.
50
- SELECT COUNT(*) AS pending
51
- FROM derivations
52
- WHERE disposition = 'lexical' AND reason = 'vectors_pending'
53
- AND deep_hash IN (SELECT value FROM json_each($deep_hashes));
54
-
55
- -- PREP: graph_defs_extents
56
- -- An artifact's stored symbol extents, the tiler's preferred cut points when its vectors
57
- -- derive after the pass that populated the graph.
58
- SELECT line, end_line FROM symbol_defs WHERE derivation_id = $derivation_id ORDER BY line;
59
-
60
31
  -- PREP: derivation_create
61
32
  INSERT INTO derivations (deep_hash, state)
62
33
  VALUES ($deep_hash, 'building')
@@ -99,21 +70,35 @@ JOIN candidates c ON c.deep_hash = x.deep_hash
99
70
  WHERE d.name = $name
100
71
  ORDER BY c.key, d.line;
101
72
 
102
- -- PREP: graph_resolve_def_candidates
103
- -- sym → its definition artifacts in the caller's relationship universe.
104
- WITH candidates AS (
73
+ -- PREP: graph_referents
74
+ -- &>sym in one statement — sym's definitions in the relationship universe, the target names
75
+ -- their reference rows carry (keyed on each definition's fully qualified container), and the
76
+ -- defining candidate keys + def spans of those targets. {§graph-relations}
77
+ WITH universe AS (
105
78
  SELECT json_extract(value, '$.deepHash') AS deep_hash
79
+ FROM json_each($universe)
80
+ ),
81
+ candidates AS (
82
+ SELECT json_extract(value, '$.key') AS key,
83
+ json_extract(value, '$.deepHash') AS deep_hash
106
84
  FROM json_each($candidates)
85
+ ),
86
+ sources AS (
87
+ SELECT DISTINCT d.derivation_id,
88
+ CASE WHEN d.container IS NULL THEN $name ELSE d.container || '.' || $name END AS qualified
89
+ FROM symbol_defs d
90
+ JOIN derivations x ON x.id = d.derivation_id
91
+ JOIN universe u ON u.deep_hash = x.deep_hash
92
+ WHERE d.name = $name
93
+ ),
94
+ targets AS (
95
+ SELECT DISTINCT r.name
96
+ FROM symbol_refs r
97
+ JOIN sources s ON s.derivation_id = r.derivation_id AND r.container IS s.qualified
107
98
  )
108
- SELECT DISTINCT d.derivation_id, d.container
109
- FROM symbol_defs d
99
+ SELECT DISTINCT c.key, d.line AS line, COALESCE(d.end_line, d.line) AS end_line
100
+ FROM targets t
101
+ JOIN symbol_defs d ON d.name = t.name
110
102
  JOIN derivations x ON x.id = d.derivation_id
111
103
  JOIN candidates c ON c.deep_hash = x.deep_hash
112
- WHERE d.name = $name;
113
-
114
- -- PREP: graph_refs_from_source
115
- -- &>sym step — the target names referenced by sym's definition, whose own
116
- -- reference rows key on the source definition's fully qualified container.
117
- -- {§graph-relations}
118
- SELECT DISTINCT name FROM symbol_refs
119
- WHERE derivation_id = $derivation_id AND container IS $container;
104
+ ORDER BY c.key, d.line;
@@ -4,7 +4,8 @@ export type CatalogChannel = EntryCatalogChannel;
4
4
  export type CatalogDefaultChannel = EntryCatalogDefaultChannel;
5
5
  export type CatalogEntry = [CatalogDefaultChannel, ...CatalogChannel[]];
6
6
  export default class EntryManifest {
7
+ static readonly SUMMARY_CODE_POINTS = 256;
7
8
  static toPath(scheme: string, authority: string, pathname: string): string;
8
- static catalogRowsFor(ctx: PlurnkSchemeContext, schemeFilter?: string, ownerId?: number, authorityFilter?: string): Promise<CatalogEntry[]>;
9
+ static catalogRowsFor(ctx: PlurnkSchemeContext, schemeFilter?: string, authorityFilter?: string): Promise<CatalogEntry[]>;
9
10
  }
10
11
  //# sourceMappingURL=_entry-manifest.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-manifest.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-manifest.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,KAAK,EACR,mBAAmB,EACnB,0BAA0B,EAE7B,MAAM,wBAAwB,CAAC;AAuBhC,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AACjD,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG,CAAC,qBAAqB,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;AAmBxE,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGzE;IAED,OAAa,cAAc,CACvB,GAAG,EAAE,mBAAmB,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,MAAM,EAChB,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,YAAY,EAAE,CAAC,CA6EzB;CACJ"}
1
+ {"version":3,"file":"_entry-manifest.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-manifest.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,OAAO,KAAK,EACR,mBAAmB,EACnB,0BAA0B,EAE7B,MAAM,wBAAwB,CAAC;AAuBhC,MAAM,MAAM,cAAc,GAAG,mBAAmB,CAAC;AACjD,MAAM,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAE/D,MAAM,MAAM,YAAY,GAAG,CAAC,qBAAqB,EAAE,GAAG,cAAc,EAAE,CAAC,CAAC;AAqBxE,MAAM,CAAC,OAAO,OAAO,aAAa;IAE9B,MAAM,CAAC,QAAQ,CAAC,mBAAmB,OAAO;IAE1C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAGzE;IAED,OAAa,cAAc,CACvB,GAAG,EAAE,mBAAmB,EACxB,YAAY,CAAC,EAAE,MAAM,EACrB,eAAe,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,YAAY,EAAE,CAAC,CAqEzB;CACJ"}
@@ -5,32 +5,33 @@
5
5
  // Search indexing is owned separately by SearchIndex.
6
6
  import { PathSyntax } from "@plurnk/plurnk-contracts";
7
7
  import { renderAddress } from "../core/plurnk-uri.js";
8
- import Owner from "../core/Owner.js";
9
- const CATALOG_SUMMARY_CODE_POINTS = 256;
10
- const catalogSummary = (value) => {
8
+ // {§scheme-catalog-aside} — prose is clipped so a row stays one line of orientation; an
9
+ // invocation-form witness (a fenced one-liner, the shape a tool family's summary takes) is shown
10
+ // whole, because a menu that is cut is no menu: the row exists so the model can invoke without a READ.
11
+ const catalogAside = (value) => {
11
12
  if (value === null)
12
13
  return undefined;
14
+ if (value.startsWith("```"))
15
+ return value;
13
16
  const points = [...value];
14
- return points.length <= CATALOG_SUMMARY_CODE_POINTS
17
+ return points.length <= EntryManifest.SUMMARY_CODE_POINTS
15
18
  ? value
16
- : `${points.slice(0, CATALOG_SUMMARY_CODE_POINTS - 1).join("")}…`;
19
+ : `${points.slice(0, EntryManifest.SUMMARY_CODE_POINTS - 1).join("")}…`;
17
20
  };
18
21
  export default class EntryManifest {
22
+ // {§scheme-catalog-aside} — the catalog shows a prose summary whole up to this many code points.
23
+ static SUMMARY_CODE_POINTS = 256;
19
24
  static toPath(scheme, authority, pathname) {
20
25
  if (scheme === "file")
21
26
  return PathSyntax.escapeTarget(PathSyntax.encodeParens(pathname));
22
27
  return renderAddress({ scheme, authority, pathname });
23
28
  }
24
- static async catalogRowsFor(ctx, schemeFilter, ownerId, authorityFilter) {
25
- const { db, workspaceId, mimetypes, weigh } = ctx;
26
- if (mimetypes === undefined)
27
- throw new Error("catalogRowsFor: ctx.mimetypes is required for the lines (extent) field");
28
- if (weigh === undefined)
29
- throw new Error("catalogRowsFor: ctx.weigh is required — model-independent curation weight, re-counted at render");
30
- const resolvedOwnerId = ownerId ?? await Owner.commonsId(db, workspaceId);
31
- const all = await db.engine_list_owner_entries.all({
29
+ static async catalogRowsFor(ctx, schemeFilter, authorityFilter) {
30
+ const { db, workspaceId } = ctx;
31
+ // Weight and extent are stored beside the content ({§tokenomics-weight-stored-at-write}):
32
+ // the listing never hydrates a body.
33
+ const all = await db.engine_list_catalog_entries.all({
32
34
  workspace_id: workspaceId,
33
- owner_id: resolvedOwnerId,
34
35
  });
35
36
  const rows = all.filter((row) => (schemeFilter === undefined || row.scheme === schemeFilter)
36
37
  && (authorityFilter === undefined || row.authority === authorityFilter));
@@ -41,7 +42,7 @@ export default class EntryManifest {
41
42
  if (entry === undefined) {
42
43
  entry = {
43
44
  path,
44
- defaultChannel: ctx.defaultChannelFor?.(row.scheme) ?? "body",
45
+ defaultChannel: row.default_channel,
45
46
  channels: [],
46
47
  };
47
48
  byEntry.set(path, entry);
@@ -61,17 +62,10 @@ export default class EntryManifest {
61
62
  };
62
63
  }
63
64
  }
64
- let totalLines;
65
- try {
66
- totalLines = (await mimetypes.process({ content: row.content, hint: row.mimetype }, { channels: [] })).totalLines;
67
- }
68
- catch {
69
- totalLines = row.content.length === 0 ? 0 : row.content.split("\n").length;
70
- }
71
65
  const channelPath = row.channel === entry.defaultChannel
72
66
  ? entry.path
73
67
  : `${entry.path}#${PathSyntax.escapeTarget(row.channel)}`;
74
- const summary = catalogSummary(row.summary);
68
+ const aside = catalogAside(row.summary);
75
69
  const sourceMimetype = row.channel === entry.defaultChannel
76
70
  && row.source_mimetype !== null
77
71
  && row.source_mimetype !== row.mimetype
@@ -81,9 +75,9 @@ export default class EntryManifest {
81
75
  path: channelPath,
82
76
  mimetype: row.mimetype,
83
77
  ...(sourceMimetype === undefined ? {} : { sourceMimetype }),
84
- weight: weigh(row.content),
85
- lines: totalLines,
86
- ...(summary === undefined ? {} : { summary }),
78
+ weight: row.weight,
79
+ lines: row.lines,
80
+ ...(aside === undefined ? {} : { aside }),
87
81
  ...(row.parse_issues !== null
88
82
  ? { parseIssues: row.parse_issues }
89
83
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-manifest.js","sourceRoot":"","sources":["../../src/schemes/_entry-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_entry-manifest.js","sourceRoot":"","sources":["../../src/schemes/_entry-manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ -- EntryManifest: the catalog listing a turn 0 FIND presents.
2
+
3
+ -- PREP: engine_list_catalog_entries
4
+ -- {§entry-owner}: canonical entries in one workspace.
5
+ -- the commons, a worker's own space, or a named space — exactly one owner's rows, its perspective.
6
+ SELECT e.id AS entry_id, e.scheme, e.authority, e.pathname, e.default_channel, ec.name AS channel, ec.lines, ec.mimetype, ec.weight AS weight, ec.deep_hash,
7
+ json_extract(e.attributes, '$.sourceProjection.mimetype') AS source_mimetype,
8
+ d.parse_issues, d.summary,
9
+ s.id AS subscription_id,
10
+ CASE WHEN s.closed_at IS NULL
11
+ THEN CAST(unixepoch('now') - unixepoch(s.opened_at) AS INTEGER)
12
+ ELSE NULL
13
+ END AS seconds,
14
+ s.close_status
15
+ FROM entries e
16
+ JOIN entry_channels ec ON ec.entry_id = e.id
17
+ LEFT JOIN derivations d ON d.deep_hash = ec.deep_hash
18
+ LEFT JOIN subscriptions s ON s.id = (
19
+ SELECT latest.id
20
+ FROM subscriptions latest
21
+ WHERE latest.entry_id = e.id
22
+ ORDER BY latest.id DESC
23
+ LIMIT 1
24
+ )
25
+ WHERE e.workspace_id = $workspace_id
26
+ ORDER BY e.updated_at ASC, e.id ASC, ec.name;
@@ -17,21 +17,19 @@ export type ReadResult = SchemeResultBase & {
17
17
  region?: TextRegion;
18
18
  range?: RangeExtent;
19
19
  reason?: string;
20
- awaitWorker?: string;
21
20
  };
22
21
  export type OpenFoldResult = SchemeResultBase;
23
22
  interface ReadAddress {
24
- readonly ownerId: number;
25
23
  readonly authority?: string;
26
24
  readonly pathname?: string;
27
25
  }
28
26
  export default class EntryOps {
29
27
  #private;
30
- static editWorkspaceEntryBatch(statements: readonly ResolvedEditStatement[], ctx: PlurnkSchemeContext, manifest: SchemeManifest, ownerId: number, precondition?: LineAnchorPrecondition | null): Promise<EditResult>;
28
+ static editWorkspaceEntryBatch(statements: readonly ResolvedEditStatement[], ctx: PlurnkSchemeContext, manifest: SchemeManifest, precondition?: LineAnchorPrecondition | null): Promise<EditResult>;
31
29
  static deleteWorkspaceEntry(statement: {
32
30
  target: ResolvedEditStatement["target"];
33
- }, ctx: PlurnkSchemeContext, manifest: SchemeManifest, ownerId: number): Promise<SchemeResultBase>;
34
- static readWorkspaceEntry(statement: ReadStatement, ctx: PlurnkSchemeContext, manifest: SchemeManifest, address: ReadAddress | null, bytes?: ByteSource): Promise<ReadResult>;
31
+ }, ctx: PlurnkSchemeContext, manifest: SchemeManifest): Promise<SchemeResultBase>;
32
+ static readWorkspaceEntry(statement: ReadStatement, ctx: PlurnkSchemeContext, manifest: SchemeManifest, address: ReadAddress | null, publishesLineAnchors: boolean, bytes?: ByteSource): Promise<ReadResult>;
35
33
  }
36
34
  export {};
37
35
  //# sourceMappingURL=_entry-ops.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-ops.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-ops.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7G,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,qBAAqB,EAAsB,MAAM,wBAAwB,CAAC;AAYxF,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAAE,CAAC;AAKtI,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG;IACxC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAE9C,UAAU,WAAW;IACjB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,OAAO,QAAQ;;IAqDzB,OAAa,uBAAuB,CAChC,UAAU,EAAE,SAAS,qBAAqB,EAAE,EAC5C,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,MAAM,EACf,YAAY,GAAE,sBAAsB,GAAG,IAAW,GACnD,OAAO,CAAC,UAAU,CAAC,CA2PrB;IAID,OAAa,oBAAoB,CAAC,SAAS,EAAE;QAAE,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAA;KAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA6CxL;IAED,OAAa,kBAAkB,CAC3B,SAAS,EAAE,aAAa,EACxB,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,KAAK,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,UAAU,CAAC,CAoErB;CACJ"}
1
+ {"version":3,"file":"_entry-ops.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-ops.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAE7G,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAG1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,qBAAqB,EAAsB,MAAM,wBAAwB,CAAC;AAaxF,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAA;CAAE,CAAC;AAKtI,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG;IACxC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,MAAM,MAAM,cAAc,GAAG,gBAAgB,CAAC;AAE9C,UAAU,WAAW;IACjB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,CAAC,OAAO,OAAO,QAAQ;;IAgDzB,OAAa,uBAAuB,CAChC,UAAU,EAAE,SAAS,qBAAqB,EAAE,EAC5C,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,cAAc,EACxB,YAAY,GAAE,sBAAsB,GAAG,IAAW,GACnD,OAAO,CAAC,UAAU,CAAC,CA4PrB;IAGD,OAAa,oBAAoB,CAAC,SAAS,EAAE;QAAE,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAA;KAAE,EAAE,GAAG,EAAE,mBAAmB,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA6CvK;IAED,OAAa,kBAAkB,CAC3B,SAAS,EAAE,aAAa,EACxB,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,WAAW,GAAG,IAAI,EAC3B,oBAAoB,EAAE,OAAO,EAC7B,KAAK,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,UAAU,CAAC,CAiErB;CACJ"}