@plurnk/plurnk-service 1.16.4 → 1.17.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 (636) hide show
  1. package/.env.defaults +122 -246
  2. package/INSTALL.md +84 -138
  3. package/README.md +9 -5
  4. package/SPEC.md +1710 -1015
  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 +3 -1
  44. package/dist/content/read-resolve.d.ts.map +1 -1
  45. package/dist/content/read-resolve.js +39 -7
  46. package/dist/content/read-resolve.js.map +1 -1
  47. package/dist/core/AdmittedTurnExecutor.d.ts +3 -5
  48. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  49. package/dist/core/AdmittedTurnExecutor.js +91 -83
  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 +87 -65
  66. package/dist/core/CapabilityResolver.js.map +1 -1
  67. package/dist/core/ChannelWrite.d.ts +14 -11
  68. package/dist/core/ChannelWrite.d.ts.map +1 -1
  69. package/dist/core/ChannelWrite.js +11 -12
  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 +36 -39
  82. package/dist/core/DataStatementRunner.js.map +1 -1
  83. package/dist/core/Dispatcher.d.ts +19 -26
  84. package/dist/core/Dispatcher.d.ts.map +1 -1
  85. package/dist/core/Dispatcher.js +369 -219
  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 +73 -163
  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 +13 -0
  114. package/dist/core/ExecutorRegistry.d.ts +7 -5
  115. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  116. package/dist/core/ExecutorRegistry.js +36 -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 +42 -11
  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 +18 -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 +25 -32
  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 +163 -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.sql +70 -0
  162. package/dist/core/MutationEffects.d.ts +5 -3
  163. package/dist/core/MutationEffects.d.ts.map +1 -1
  164. package/dist/core/MutationEffects.js +10 -28
  165. package/dist/core/MutationEffects.js.map +1 -1
  166. package/dist/core/NativeContent.d.ts +6 -0
  167. package/dist/core/NativeContent.d.ts.map +1 -0
  168. package/dist/core/NativeContent.js +16 -0
  169. package/dist/core/NativeContent.js.map +1 -0
  170. package/dist/core/NativeContent.sql +6 -0
  171. package/dist/core/NoticeChannel.js +1 -1
  172. package/dist/core/NoticeChannel.js.map +1 -1
  173. package/dist/core/OperatorConfig.js +5 -5
  174. package/dist/core/OperatorConfig.js.map +1 -1
  175. package/dist/core/PacketBuilder.d.ts +8 -5
  176. package/dist/core/PacketBuilder.d.ts.map +1 -1
  177. package/dist/core/PacketBuilder.js +117 -81
  178. package/dist/core/PacketBuilder.js.map +1 -1
  179. package/dist/core/PacketBuilder.sql +146 -0
  180. package/dist/core/PatternSelection.d.ts +28 -0
  181. package/dist/core/PatternSelection.d.ts.map +1 -0
  182. package/dist/core/PatternSelection.js +42 -0
  183. package/dist/core/PatternSelection.js.map +1 -0
  184. package/dist/core/ProblemLog.d.ts.map +1 -1
  185. package/dist/core/ProblemLog.js +0 -1
  186. package/dist/core/ProblemLog.js.map +1 -1
  187. package/dist/core/PromptFrames.d.ts +12 -0
  188. package/dist/core/PromptFrames.d.ts.map +1 -0
  189. package/dist/core/PromptFrames.js +28 -0
  190. package/dist/core/PromptFrames.js.map +1 -0
  191. package/dist/core/ProposalLifecycle.d.ts +0 -1
  192. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  193. package/dist/core/ProposalLifecycle.js +20 -19
  194. package/dist/core/ProposalLifecycle.js.map +1 -1
  195. package/dist/core/ProposalLifecycle.sql +33 -0
  196. package/dist/core/ProviderInstantiate.d.ts +1 -1
  197. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  198. package/dist/core/ProviderInstantiate.js +7 -14
  199. package/dist/core/ProviderInstantiate.js.map +1 -1
  200. package/dist/core/ReasoningView.d.ts +9 -0
  201. package/dist/core/ReasoningView.d.ts.map +1 -0
  202. package/dist/core/ReasoningView.js +47 -0
  203. package/dist/core/ReasoningView.js.map +1 -0
  204. package/dist/core/ResourceBindings.d.ts +16 -0
  205. package/dist/core/ResourceBindings.d.ts.map +1 -0
  206. package/dist/core/ResourceBindings.js +45 -0
  207. package/dist/core/ResourceBindings.js.map +1 -0
  208. package/dist/core/ResourceMutations.d.ts +5 -8
  209. package/dist/core/ResourceMutations.d.ts.map +1 -1
  210. package/dist/core/ResourceMutations.js +6 -7
  211. package/dist/core/ResourceMutations.js.map +1 -1
  212. package/dist/core/ResourceSelector.d.ts +2 -2
  213. package/dist/core/ResourceSelector.d.ts.map +1 -1
  214. package/dist/core/ResourceSelector.js +122 -62
  215. package/dist/core/ResourceSelector.js.map +1 -1
  216. package/dist/core/ResourceTransfers.d.ts +4 -2
  217. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  218. package/dist/core/ResourceTransfers.js +95 -26
  219. package/dist/core/ResourceTransfers.js.map +1 -1
  220. package/dist/core/RuntimeWorker.d.ts +5 -0
  221. package/dist/core/RuntimeWorker.d.ts.map +1 -0
  222. package/dist/core/RuntimeWorker.js +10 -0
  223. package/dist/core/RuntimeWorker.js.map +1 -0
  224. package/dist/core/RuntimeWorker.sql +5 -0
  225. package/dist/core/SchemeRegistry.d.ts +12 -16
  226. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  227. package/dist/core/SchemeRegistry.js +58 -84
  228. package/dist/core/SchemeRegistry.js.map +1 -1
  229. package/dist/core/StoredPacket.d.ts +6 -1
  230. package/dist/core/StoredPacket.d.ts.map +1 -1
  231. package/dist/core/StoredPacket.js +30 -10
  232. package/dist/core/StoredPacket.js.map +1 -1
  233. package/dist/core/StrikeRail.d.ts +9 -6
  234. package/dist/core/StrikeRail.d.ts.map +1 -1
  235. package/dist/core/StrikeRail.js +60 -113
  236. package/dist/core/StrikeRail.js.map +1 -1
  237. package/dist/core/StrikeRail.sql +12 -0
  238. package/dist/core/TerminalResult.d.ts +1 -1
  239. package/dist/core/TerminalResult.d.ts.map +1 -1
  240. package/dist/core/TerminalResult.js +2 -2
  241. package/dist/core/TerminalResult.js.map +1 -1
  242. package/dist/core/TokenCalibration.d.ts +1 -6
  243. package/dist/core/TokenCalibration.d.ts.map +1 -1
  244. package/dist/core/TokenCalibration.js +13 -9
  245. package/dist/core/TokenCalibration.js.map +1 -1
  246. package/dist/core/TokenCalibration.sql +15 -0
  247. package/dist/core/ToolInputSchema.d.ts +6 -0
  248. package/dist/core/ToolInputSchema.d.ts.map +1 -0
  249. package/dist/core/ToolInputSchema.js +43 -0
  250. package/dist/core/ToolInputSchema.js.map +1 -0
  251. package/dist/core/ToolResources.d.ts.map +1 -1
  252. package/dist/core/ToolResources.js +76 -52
  253. package/dist/core/ToolResources.js.map +1 -1
  254. package/dist/core/Turn.d.ts +5 -2
  255. package/dist/core/Turn.d.ts.map +1 -1
  256. package/dist/core/Turn.js +13 -11
  257. package/dist/core/Turn.js.map +1 -1
  258. package/dist/core/Turn.sql +25 -39
  259. package/dist/core/{SendBroadcastHandler.d.ts → TurnDispositionHandler.d.ts} +25 -17
  260. package/dist/core/TurnDispositionHandler.d.ts.map +1 -0
  261. package/dist/core/TurnDispositionHandler.js +198 -0
  262. package/dist/core/TurnDispositionHandler.js.map +1 -0
  263. package/dist/core/TurnMaterialization.d.ts +2 -3
  264. package/dist/core/TurnMaterialization.d.ts.map +1 -1
  265. package/dist/core/TurnMaterialization.js +40 -15
  266. package/dist/core/TurnMaterialization.js.map +1 -1
  267. package/dist/core/TurnMaterialization.sql +44 -0
  268. package/dist/core/TurnOps.d.ts.map +1 -1
  269. package/dist/core/TurnOps.js +8 -64
  270. package/dist/core/TurnOps.js.map +1 -1
  271. package/dist/core/TurnRunner.d.ts +9 -12
  272. package/dist/core/TurnRunner.d.ts.map +1 -1
  273. package/dist/core/TurnRunner.js +232 -408
  274. package/dist/core/TurnRunner.js.map +1 -1
  275. package/dist/core/TurnRunner.sql +74 -0
  276. package/dist/core/TurnSources.sql +39 -0
  277. package/dist/core/WorkerControlAddress.d.ts +1 -0
  278. package/dist/core/WorkerControlAddress.d.ts.map +1 -1
  279. package/dist/core/WorkerControlAddress.js +5 -0
  280. package/dist/core/WorkerControlAddress.js.map +1 -1
  281. package/dist/core/WorkerControlHandler.d.ts +1 -3
  282. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  283. package/dist/core/WorkerControlHandler.js +41 -48
  284. package/dist/core/WorkerControlHandler.js.map +1 -1
  285. package/dist/core/WorkerName.d.ts +8 -6
  286. package/dist/core/WorkerName.d.ts.map +1 -1
  287. package/dist/core/WorkerName.js +33 -24
  288. package/dist/core/WorkerName.js.map +1 -1
  289. package/dist/core/WorkerName.sql +7 -10
  290. package/dist/core/WorkspaceGate.d.ts +1 -1
  291. package/dist/core/WorkspaceGate.d.ts.map +1 -1
  292. package/dist/core/WorkspaceGate.js +29 -6
  293. package/dist/core/WorkspaceGate.js.map +1 -1
  294. package/dist/core/ambient.sql +236 -0
  295. package/dist/core/attachments.d.ts +2 -1
  296. package/dist/core/attachments.d.ts.map +1 -1
  297. package/dist/core/attachments.js +5 -4
  298. package/dist/core/attachments.js.map +1 -1
  299. package/dist/core/caps/CapsResolve.d.ts +2 -3
  300. package/dist/core/caps/CapsResolve.d.ts.map +1 -1
  301. package/dist/core/caps/CapsResolve.js +5 -5
  302. package/dist/core/caps/CapsResolve.js.map +1 -1
  303. package/dist/core/caps/DbChannelCaps.d.ts +1 -1
  304. package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
  305. package/dist/core/caps/DbChannelCaps.js +4 -6
  306. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  307. package/dist/core/caps/DbEntryCaps.d.ts +2 -1
  308. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  309. package/dist/core/caps/DbEntryCaps.js +11 -17
  310. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  311. package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
  312. package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
  313. package/dist/core/caps/DbNotifyCaps.js +3 -5
  314. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  315. package/dist/core/caps/DbProjectionCaps.js +1 -1
  316. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  317. package/dist/core/caps/DbSubscriptionCaps.d.ts +1 -1
  318. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  319. package/dist/core/caps/DbSubscriptionCaps.js +5 -7
  320. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  321. package/dist/core/caps/SchemeCtxImpl.d.ts +0 -2
  322. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  323. package/dist/core/caps/SchemeCtxImpl.js +4 -20
  324. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  325. package/dist/core/env-defaults.d.ts.map +1 -1
  326. package/dist/core/env-defaults.js +4 -2
  327. package/dist/core/env-defaults.js.map +1 -1
  328. package/dist/core/file-materialization.d.ts +4 -1
  329. package/dist/core/file-materialization.d.ts.map +1 -1
  330. package/dist/core/file-materialization.js +14 -0
  331. package/dist/core/file-materialization.js.map +1 -1
  332. package/dist/core/fork.d.ts +1 -6
  333. package/dist/core/fork.d.ts.map +1 -1
  334. package/dist/core/fork.js +9 -153
  335. package/dist/core/fork.js.map +1 -1
  336. package/dist/core/fork.sql +162 -185
  337. package/dist/core/git-env.d.ts +1 -0
  338. package/dist/core/git-env.d.ts.map +1 -1
  339. package/dist/core/git-env.js +39 -2
  340. package/dist/core/git-env.js.map +1 -1
  341. package/dist/core/git-membership.d.ts.map +1 -1
  342. package/dist/core/git-membership.js +64 -48
  343. package/dist/core/git-membership.js.map +1 -1
  344. package/dist/core/git-state.d.ts.map +1 -1
  345. package/dist/core/git-state.js +25 -19
  346. package/dist/core/git-state.js.map +1 -1
  347. package/dist/core/glob_match.d.ts +4 -0
  348. package/dist/core/glob_match.d.ts.map +1 -0
  349. package/dist/core/glob_match.js +7 -0
  350. package/dist/core/glob_match.js.map +1 -0
  351. package/dist/core/maintenance.sql +6 -0
  352. package/dist/core/mutation-types.d.ts +7 -28
  353. package/dist/core/mutation-types.d.ts.map +1 -1
  354. package/dist/core/packet-inject.d.ts.map +1 -1
  355. package/dist/core/packet-inject.js +2 -3
  356. package/dist/core/packet-inject.js.map +1 -1
  357. package/dist/core/packet-wire.d.ts +8 -6
  358. package/dist/core/packet-wire.d.ts.map +1 -1
  359. package/dist/core/packet-wire.js +131 -163
  360. package/dist/core/packet-wire.js.map +1 -1
  361. package/dist/core/plurnk-uri.d.ts +1 -1
  362. package/dist/core/plurnk-uri.d.ts.map +1 -1
  363. package/dist/core/plurnk-uri.js +5 -12
  364. package/dist/core/plurnk-uri.js.map +1 -1
  365. package/dist/core/scheme-types.d.ts +3 -3
  366. package/dist/core/scheme-types.d.ts.map +1 -1
  367. package/dist/core/scheme-types.js.map +1 -1
  368. package/dist/core/sha256.d.ts +4 -0
  369. package/dist/core/sha256.d.ts.map +1 -0
  370. package/dist/core/sha256.js +6 -0
  371. package/dist/core/sha256.js.map +1 -0
  372. package/dist/core/teaching.js +1 -1
  373. package/dist/core/teaching.js.map +1 -1
  374. package/dist/core/turn-scheduler.d.ts.map +1 -1
  375. package/dist/core/turn-scheduler.js +5 -18
  376. package/dist/core/turn-scheduler.js.map +1 -1
  377. package/dist/core/turn-signals.d.ts +0 -6
  378. package/dist/core/turn-signals.d.ts.map +1 -1
  379. package/dist/core/turn-signals.js +1 -7
  380. package/dist/core/turn-signals.js.map +1 -1
  381. package/dist/core/worker-ops.sql +15 -22
  382. package/dist/core/workspace-settings.d.ts.map +1 -1
  383. package/dist/core/workspace-settings.js +18 -2
  384. package/dist/core/workspace-settings.js.map +1 -1
  385. package/dist/core/workspace-settings.sql +6 -0
  386. package/dist/digest/Digest.d.ts.map +1 -1
  387. package/dist/digest/Digest.js +27 -90
  388. package/dist/digest/Digest.js.map +1 -1
  389. package/dist/digest/DigestRender.d.ts.map +1 -1
  390. package/dist/digest/DigestRender.js +14 -54
  391. package/dist/digest/DigestRender.js.map +1 -1
  392. package/dist/digest/digest-rows.d.ts +10 -32
  393. package/dist/digest/digest-rows.d.ts.map +1 -1
  394. package/dist/digest/digest.sql +43 -18
  395. package/dist/schemes/Exec.d.ts +6 -12
  396. package/dist/schemes/Exec.d.ts.map +1 -1
  397. package/dist/schemes/Exec.js +256 -188
  398. package/dist/schemes/Exec.js.map +1 -1
  399. package/dist/schemes/ExecOutputScheme.d.ts +8 -6
  400. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  401. package/dist/schemes/ExecOutputScheme.js +33 -61
  402. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  403. package/dist/schemes/ExecutionInput.d.ts +12 -0
  404. package/dist/schemes/ExecutionInput.d.ts.map +1 -0
  405. package/dist/schemes/ExecutionInput.js +94 -0
  406. package/dist/schemes/ExecutionInput.js.map +1 -0
  407. package/dist/schemes/File.d.ts +5 -2
  408. package/dist/schemes/File.d.ts.map +1 -1
  409. package/dist/schemes/File.js +62 -92
  410. package/dist/schemes/File.js.map +1 -1
  411. package/dist/schemes/Log.d.ts.map +1 -1
  412. package/dist/schemes/Log.js +84 -79
  413. package/dist/schemes/Log.js.map +1 -1
  414. package/dist/schemes/Log.sql +183 -15
  415. package/dist/schemes/Prompt.d.ts.map +1 -1
  416. package/dist/schemes/Prompt.js +3 -12
  417. package/dist/schemes/Prompt.js.map +1 -1
  418. package/dist/schemes/QuestionTool.d.ts +5 -0
  419. package/dist/schemes/QuestionTool.d.ts.map +1 -1
  420. package/dist/schemes/QuestionTool.js +6 -14
  421. package/dist/schemes/QuestionTool.js.map +1 -1
  422. package/dist/schemes/Skill.d.ts +12 -7
  423. package/dist/schemes/Skill.d.ts.map +1 -1
  424. package/dist/schemes/Skill.js +149 -21
  425. package/dist/schemes/Skill.js.map +1 -1
  426. package/dist/schemes/TurnSource.d.ts +12 -0
  427. package/dist/schemes/TurnSource.d.ts.map +1 -0
  428. package/dist/schemes/TurnSource.js +116 -0
  429. package/dist/schemes/TurnSource.js.map +1 -0
  430. package/dist/schemes/Worker.d.ts +3 -3
  431. package/dist/schemes/Worker.d.ts.map +1 -1
  432. package/dist/schemes/Worker.js +61 -208
  433. package/dist/schemes/Worker.js.map +1 -1
  434. package/dist/schemes/_entry-crud.d.ts +12 -15
  435. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  436. package/dist/schemes/_entry-crud.js +63 -63
  437. package/dist/schemes/_entry-crud.js.map +1 -1
  438. package/dist/schemes/_entry-crud.sql +142 -46
  439. package/dist/schemes/_entry-find.d.ts +1 -3
  440. package/dist/schemes/_entry-find.d.ts.map +1 -1
  441. package/dist/schemes/_entry-find.js +111 -112
  442. package/dist/schemes/_entry-find.js.map +1 -1
  443. package/dist/schemes/_entry-find.sql +22 -14
  444. package/dist/schemes/_entry-fts.d.ts +14 -0
  445. package/dist/schemes/_entry-fts.d.ts.map +1 -0
  446. package/dist/schemes/_entry-fts.js +82 -0
  447. package/dist/schemes/_entry-fts.js.map +1 -0
  448. package/dist/schemes/_entry-fts.sql +31 -0
  449. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  450. package/dist/schemes/_entry-graph.js +6 -14
  451. package/dist/schemes/_entry-graph.js.map +1 -1
  452. package/dist/schemes/_entry-graph.sql +29 -44
  453. package/dist/schemes/_entry-manifest.d.ts +2 -1
  454. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  455. package/dist/schemes/_entry-manifest.js +15 -12
  456. package/dist/schemes/_entry-manifest.js.map +1 -1
  457. package/dist/schemes/_entry-manifest.sql +26 -0
  458. package/dist/schemes/_entry-ops.d.ts +3 -5
  459. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  460. package/dist/schemes/_entry-ops.js +30 -43
  461. package/dist/schemes/_entry-ops.js.map +1 -1
  462. package/dist/schemes/_entry-ops.sql +5 -6
  463. package/dist/schemes/_entry-readable.d.ts +8 -0
  464. package/dist/schemes/_entry-readable.d.ts.map +1 -0
  465. package/dist/schemes/_entry-readable.js +38 -0
  466. package/dist/schemes/_entry-readable.js.map +1 -0
  467. package/dist/schemes/_entry-send.d.ts +1 -1
  468. package/dist/schemes/_entry-send.d.ts.map +1 -1
  469. package/dist/schemes/_entry-send.js +3 -3
  470. package/dist/schemes/_entry-send.js.map +1 -1
  471. package/dist/schemes/_search-index.d.ts +1 -3
  472. package/dist/schemes/_search-index.d.ts.map +1 -1
  473. package/dist/schemes/_search-index.js +79 -110
  474. package/dist/schemes/_search-index.js.map +1 -1
  475. package/dist/schemes/_search-index.sql +30 -0
  476. package/dist/schemes/exec-runtime.d.ts +1 -1
  477. package/dist/schemes/exec-runtime.d.ts.map +1 -1
  478. package/dist/schemes/exec-runtime.js.map +1 -1
  479. package/dist/server/ClientReads.d.ts +2 -2
  480. package/dist/server/ClientReads.d.ts.map +1 -1
  481. package/dist/server/ClientReads.js +5 -8
  482. package/dist/server/ClientReads.js.map +1 -1
  483. package/dist/server/Daemon.d.ts +14 -21
  484. package/dist/server/Daemon.d.ts.map +1 -1
  485. package/dist/server/Daemon.js +135 -156
  486. package/dist/server/Daemon.js.map +1 -1
  487. package/dist/server/DaemonModule.d.ts +23 -21
  488. package/dist/server/DaemonModule.d.ts.map +1 -1
  489. package/dist/server/DrainSupervisor.d.ts +8 -21
  490. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  491. package/dist/server/DrainSupervisor.js +278 -306
  492. package/dist/server/DrainSupervisor.js.map +1 -1
  493. package/dist/server/Functionality.d.ts +11 -12
  494. package/dist/server/Functionality.d.ts.map +1 -1
  495. package/dist/server/Functionality.js +129 -101
  496. package/dist/server/Functionality.js.map +1 -1
  497. package/dist/server/FunctionalityManager.d.ts +3 -5
  498. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  499. package/dist/server/FunctionalityManager.js +20 -58
  500. package/dist/server/FunctionalityManager.js.map +1 -1
  501. package/dist/server/MembersFunctionality.d.ts +5 -4
  502. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  503. package/dist/server/MembersFunctionality.js +24 -37
  504. package/dist/server/MembersFunctionality.js.map +1 -1
  505. package/dist/server/PlurnkSkill.d.ts +11 -0
  506. package/dist/server/PlurnkSkill.d.ts.map +1 -0
  507. package/dist/server/PlurnkSkill.js +41 -0
  508. package/dist/server/PlurnkSkill.js.map +1 -0
  509. package/dist/server/Retention.d.ts +22 -0
  510. package/dist/server/Retention.d.ts.map +1 -0
  511. package/dist/server/Retention.js +54 -0
  512. package/dist/server/Retention.js.map +1 -0
  513. package/dist/server/Retention.sql +36 -0
  514. package/dist/server/ServiceModules.d.ts +5 -0
  515. package/dist/server/ServiceModules.d.ts.map +1 -0
  516. package/dist/server/ServiceModules.js +10 -0
  517. package/dist/server/ServiceModules.js.map +1 -0
  518. package/dist/server/SkillsFunctionality.d.ts +14 -19
  519. package/dist/server/SkillsFunctionality.d.ts.map +1 -1
  520. package/dist/server/SkillsFunctionality.js +97 -104
  521. package/dist/server/SkillsFunctionality.js.map +1 -1
  522. package/dist/server/WorkerModelResolver.d.ts +4 -0
  523. package/dist/server/WorkerModelResolver.d.ts.map +1 -1
  524. package/dist/server/WorkerModelResolver.js +72 -39
  525. package/dist/server/WorkerModelResolver.js.map +1 -1
  526. package/dist/server/WorkspaceCapabilities.d.ts +21 -0
  527. package/dist/server/WorkspaceCapabilities.d.ts.map +1 -0
  528. package/dist/server/{WorkerCapabilities.js → WorkspaceCapabilities.js} +40 -40
  529. package/dist/server/WorkspaceCapabilities.js.map +1 -0
  530. package/dist/server/WorkspaceResidency.d.ts +36 -0
  531. package/dist/server/WorkspaceResidency.d.ts.map +1 -0
  532. package/dist/server/WorkspaceResidency.js +199 -0
  533. package/dist/server/WorkspaceResidency.js.map +1 -0
  534. package/dist/server/client-input.d.ts +1 -4
  535. package/dist/server/client-input.d.ts.map +1 -1
  536. package/dist/server/client-input.js +4 -45
  537. package/dist/server/client-input.js.map +1 -1
  538. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  539. package/dist/server/dispatch-as-plurnk.js +4 -22
  540. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  541. package/dist/server/drain.sql +65 -42
  542. package/dist/server/envelope.d.ts +8 -0
  543. package/dist/server/envelope.d.ts.map +1 -1
  544. package/dist/server/envelope.js +9 -7
  545. package/dist/server/envelope.js.map +1 -1
  546. package/dist/server/envelope.sql +49 -13
  547. package/dist/server/lifecycle-recovery.sql +14 -17
  548. package/dist/server/logEntry.d.ts +1 -1
  549. package/dist/server/logEntry.d.ts.map +1 -1
  550. package/dist/server/logEntry.js +4 -1
  551. package/dist/server/logEntry.js.map +1 -1
  552. package/dist/server/logEntry.sql +25 -1
  553. package/dist/server/loopDocs.d.ts +2 -2
  554. package/dist/server/loopDocs.d.ts.map +1 -1
  555. package/dist/server/loopDocs.js +38 -31
  556. package/dist/server/loopDocs.js.map +1 -1
  557. package/dist/server/loopDocs.sql +1 -3
  558. package/dist/server/model-catalog.d.ts.map +1 -1
  559. package/dist/server/model-catalog.js +2 -1
  560. package/dist/server/model-catalog.js.map +1 -1
  561. package/dist/server/model-route.d.ts +1 -1
  562. package/dist/server/model-route.d.ts.map +1 -1
  563. package/dist/server/model-route.js +4 -2
  564. package/dist/server/model-route.js.map +1 -1
  565. package/dist/server/seam-entry-read.sql +3 -4
  566. package/dist/server/seam-loop.sql +2 -9
  567. package/dist/server/workspace-capabilities.sql +19 -0
  568. package/dist/service.d.ts.map +1 -1
  569. package/dist/service.js +5 -17
  570. package/dist/service.js.map +1 -1
  571. package/docs/members.md +83 -0
  572. package/docs/skills.md +50 -0
  573. package/migrations/001_workspaces.sql +53 -0
  574. package/migrations/002_workers.sql +183 -0
  575. package/migrations/003_loops.sql +326 -0
  576. package/migrations/004_inference.sql +360 -0
  577. package/migrations/005_entries.sql +207 -0
  578. package/migrations/006_log.sql +578 -0
  579. package/migrations/007_subscriptions.sql +175 -0
  580. package/migrations/008_interactions.sql +29 -0
  581. package/package.json +33 -40
  582. package/digest-sql/channel-dispositions/dispositions.sql +0 -15
  583. package/digest-sql/channel-state/state.sql +0 -6
  584. package/digest-sql/curation/curation.sql +0 -6
  585. package/digest-sql/derivations/derivations.sql +0 -4
  586. package/digest-sql/embeddings/embeddings.sql +0 -4
  587. package/digest-sql/entry-dispositions/dispositions.sql +0 -15
  588. package/digest-sql/entry-state/state.sql +0 -6
  589. package/digest-sql/token-counts/token-counts.sql +0 -2
  590. package/dist/core/EmbeddingCall.d.ts +0 -23
  591. package/dist/core/EmbeddingCall.d.ts.map +0 -1
  592. package/dist/core/EmbeddingCall.js +0 -149
  593. package/dist/core/EmbeddingCall.js.map +0 -1
  594. package/dist/core/OverflowTurn.d.ts +0 -11
  595. package/dist/core/OverflowTurn.d.ts.map +0 -1
  596. package/dist/core/OverflowTurn.js +0 -80
  597. package/dist/core/OverflowTurn.js.map +0 -1
  598. package/dist/core/Owner.d.ts +0 -8
  599. package/dist/core/Owner.d.ts.map +0 -1
  600. package/dist/core/Owner.js +0 -46
  601. package/dist/core/Owner.js.map +0 -1
  602. package/dist/core/SendBroadcastHandler.d.ts.map +0 -1
  603. package/dist/core/SendBroadcastHandler.js +0 -159
  604. package/dist/core/SendBroadcastHandler.js.map +0 -1
  605. package/dist/core/VectorPump.d.ts +0 -28
  606. package/dist/core/VectorPump.d.ts.map +0 -1
  607. package/dist/core/VectorPump.js +0 -130
  608. package/dist/core/VectorPump.js.map +0 -1
  609. package/dist/core/owner.sql +0 -11
  610. package/dist/core/worker-settings.d.ts +0 -10
  611. package/dist/core/worker-settings.d.ts.map +0 -1
  612. package/dist/core/worker-settings.js +0 -53
  613. package/dist/core/worker-settings.js.map +0 -1
  614. package/dist/schemes/_entry-chunk.d.ts +0 -14
  615. package/dist/schemes/_entry-chunk.d.ts.map +0 -1
  616. package/dist/schemes/_entry-chunk.js +0 -165
  617. package/dist/schemes/_entry-chunk.js.map +0 -1
  618. package/dist/schemes/_entry-semantic.d.ts +0 -63
  619. package/dist/schemes/_entry-semantic.d.ts.map +0 -1
  620. package/dist/schemes/_entry-semantic.js +0 -299
  621. package/dist/schemes/_entry-semantic.js.map +0 -1
  622. package/dist/schemes/_entry-semantic.sql +0 -99
  623. package/dist/schemes/cosine.d.ts +0 -4
  624. package/dist/schemes/cosine.d.ts.map +0 -1
  625. package/dist/schemes/cosine.js +0 -9
  626. package/dist/schemes/cosine.js.map +0 -1
  627. package/dist/server/WorkerCapabilities.d.ts +0 -21
  628. package/dist/server/WorkerCapabilities.d.ts.map +0 -1
  629. package/dist/server/WorkerCapabilities.js.map +0 -1
  630. package/dist/server/WorkerResidency.d.ts +0 -40
  631. package/dist/server/WorkerResidency.d.ts.map +0 -1
  632. package/dist/server/WorkerResidency.js +0 -283
  633. package/dist/server/WorkerResidency.js.map +0 -1
  634. package/dist/server/seam-log-read.sql +0 -21
  635. package/dist/server/worker-capabilities.sql +0 -28
  636. package/migrations/001_schema.sql +0 -2207
@@ -1,11 +1,14 @@
1
1
  import { PathSyntax } from "@plurnk/plurnk-contracts";
2
- import { InvalidOperationResultError } from "@plurnk/plurnk-schemes";
2
+ import { InvalidOperationResultError, MimetypeClassifier } from "@plurnk/plurnk-schemes";
3
3
  import { assertResourceEffects, editReceipt, LineMarkerOps, MimetypeBinary, PathMimetype } from "../content/index.js";
4
4
  import DbProjectionCaps from "./caps/DbProjectionCaps.js";
5
5
  import SchemeCtxImpl from "./caps/SchemeCtxImpl.js";
6
6
  import Results from "./results.js";
7
+ import EntryAddressBinding from "./EntryAddressBinding.js";
7
8
  import EntryManifest from "../schemes/_entry-manifest.js";
9
+ import EntryReadable from "../schemes/_entry-readable.js";
8
10
  import MutationEffects from "./MutationEffects.js";
11
+ import PatternEdits from "../content/pattern-edits.js";
9
12
  // COPY and MOVE orchestration: source selection, destination writes, move settlement.
10
13
  export default class ResourceTransfers {
11
14
  #schemes;
@@ -54,7 +57,7 @@ export default class ResourceTransfers {
54
57
  });
55
58
  }
56
59
  async copyOrchestration({ statement, source, destination, ctx, }) {
57
- const resolvedSource = await this.#selection.resolveResourceSelection(source, ctx);
60
+ const resolvedSource = await this.#selection.resolveResourceSelection(source, ctx, "read");
58
61
  if (MutationEffects.isDispatchResult(resolvedSource))
59
62
  return resolvedSource;
60
63
  const resolvedDestination = await this.#selection.resolveResourceSelection(destination, ctx);
@@ -64,10 +67,19 @@ export default class ResourceTransfers {
64
67
  if (MutationEffects.isDispatchResult(selected))
65
68
  return selected;
66
69
  const result = await this.writeDestination(statement, selected, resolvedDestination, ctx);
67
- return MutationEffects.prependScopeNormalizations(result, selected.scopeNormalizations);
70
+ return ResourceTransfers.#withMatched(MutationEffects.prependScopeNormalizations(result, selected.scopeNormalizations), selected);
71
+ }
72
+ // {§copy-move-pattern} — a pattern transfer reports how many lines it selected.
73
+ static #withMatched(result, selected) {
74
+ if (selected.matchedLines === undefined || result.status >= 300)
75
+ return result;
76
+ return Results.assert({ ...result, matched: selected.matchedLines.length });
68
77
  }
69
78
  async moveOrchestration({ statement, source, destination, ctx, }) {
70
- const resolvedSource = await this.#selection.resolveResourceSelection(source, ctx);
79
+ // {§move-decomposition} — a MOVE reads its source exactly as COPY does and then retires
80
+ // it with the source scheme's own KILL: an entry scheme deletes or edits the entry, the
81
+ // log curates its projection. The recorded evidence is never a write target.
82
+ const resolvedSource = await this.#selection.resolveResourceSelection(source, ctx, "read");
71
83
  if (MutationEffects.isDispatchResult(resolvedSource))
72
84
  return resolvedSource;
73
85
  const resolvedDestination = await this.#selection.resolveResourceSelection(destination, ctx);
@@ -76,11 +88,36 @@ export default class ResourceTransfers {
76
88
  const selected = await this.#selection.selectSource(resolvedSource, ctx, "MOVE");
77
89
  if (MutationEffects.isDispatchResult(selected))
78
90
  return selected;
91
+ const handler = this.#schemes.get(resolvedSource.scheme, ctx.workspaceId);
92
+ if (handler === undefined)
93
+ throw new InvalidOperationResultError(`Resolved MOVE source scheme '${resolvedSource.scheme}' is no longer registered.`);
94
+ // {§readable-channel} — a derived projection cannot be moved out of its entry; COPY it.
95
+ if (EntryReadable.isDerived(resolvedSource.channel)) {
96
+ return MutationEffects.failure("channel-derived", 400, `#${resolvedSource.channel} is derived from its source channel and cannot be moved; COPY it instead.`, {}, { scheme: resolvedSource.scheme, channel: resolvedSource.channel, operation: "MOVE", retryable: false });
97
+ }
98
+ // {§copy-move-pattern} — a curated source retires rows, not lines of its projection.
99
+ if (selected.matchedLines !== undefined && ResourceTransfers.#curatedSource(resolvedSource)) {
100
+ return MutationEffects.failure("pattern-unsupported", 400, `MOVE cannot retire lines of the '${resolvedSource.scheme}' projection by pattern; COPY the lines and KILL its rows by pattern.`, {}, { scheme: resolvedSource.scheme, operation: "MOVE", retryable: false });
101
+ }
102
+ if (!ResourceTransfers.#curatedSource(resolvedSource)) {
103
+ const sourceBinding = await this.#resolveDataEntryAddress({
104
+ target: resolvedSource.target,
105
+ routedScheme: resolvedSource.scheme,
106
+ handler,
107
+ manifest: resolvedSource.manifest,
108
+ ctx,
109
+ access: "write",
110
+ });
111
+ if (sourceBinding.result !== null)
112
+ return sourceBinding.result;
113
+ if (sourceBinding.address === null)
114
+ return MutationEffects.failure("entry-not-found", 404, "The MOVE source could not be resolved for deletion.");
115
+ }
79
116
  if (MutationEffects.sameChannel(resolvedSource, resolvedDestination)) {
80
117
  const result = await this.moveWithinChannel(statement, selected, resolvedDestination, ctx);
81
- return resolvedDestination.lineMarker === null
118
+ return ResourceTransfers.#withMatched(resolvedDestination.lineMarker === null
82
119
  ? MutationEffects.prependScopeNormalizations(result, selected.scopeNormalizations)
83
- : result;
120
+ : result, selected);
84
121
  }
85
122
  const destinationResult = MutationEffects.prependScopeNormalizations(await this.writeDestination(statement, selected, resolvedDestination, ctx), selected.scopeNormalizations);
86
123
  if (destinationResult.status >= 400)
@@ -121,10 +158,10 @@ export default class ResourceTransfers {
121
158
  const base = destinationResult.status === 304
122
159
  ? { ...destinationResult, status: 200 }
123
160
  : destinationResult;
124
- return MutationEffects.withCombinedEffects(base, MutationEffects.effectsOf(sourceResult));
161
+ return ResourceTransfers.#withMatched(MutationEffects.withCombinedEffects(base, MutationEffects.effectsOf(sourceResult)), selected);
125
162
  }
126
163
  async moveWithinChannel(statement, source, destination, ctx) {
127
- if (source.lineMarker === null) {
164
+ if (source.lineMarker === null && source.matchedLines === undefined) {
128
165
  if (destination.lineMarker !== null) {
129
166
  return MutationEffects.failure("move-region-overlap", 409, "MOVE cannot insert a whole channel into itself and then remove that channel.", {}, {
130
167
  source: MutationEffects.resourceAddress(source),
@@ -141,25 +178,51 @@ export default class ResourceTransfers {
141
178
  if ("result" in resolvedDestination)
142
179
  return resolvedDestination.result;
143
180
  const precondition = MutationEffects.mergeLineAnchorPreconditions(source.lineAnchorPrecondition, resolvedDestination.precondition);
181
+ const removals = ResourceTransfers.#sourceRemovals(source, statement.position);
144
182
  const moved = await this.invokeEditBatch(resolvedDestination.selection, [
145
183
  {
146
184
  marker: resolvedDestination.selection.lineMarker,
147
185
  body: source.content,
148
186
  position: statement.position,
149
187
  },
150
- {
151
- marker: source.lineMarker,
152
- body: "",
153
- position: statement.position,
154
- },
188
+ ...removals,
155
189
  ], ctx, precondition);
156
190
  const effect = MutationEffects.pendingEffect(resolvedDestination.selection, "update");
157
- return MutationEffects.finalizeEffects(moved, resolvedDestination.selection, [effect, effect]);
191
+ return MutationEffects.finalizeEffects(moved, resolvedDestination.selection, [effect, ...removals.map(() => effect)]);
192
+ }
193
+ // The edits that take a scoped source out of its channel: the scope itself, or each line a
194
+ // pattern selected ({§copy-move-pattern}).
195
+ static #sourceRemovals(source, position) {
196
+ if (source.matchedLines !== undefined) {
197
+ return PatternEdits.deletions(source.matchedLines).map(({ marker, body }) => ({ marker, body, position }));
198
+ }
199
+ if (source.lineMarker === null)
200
+ throw new InvalidOperationResultError("A whole-channel MOVE source has no removal edits.");
201
+ return [{ marker: source.lineMarker, body: "", position }];
202
+ }
203
+ // {§move-decomposition} — a logging scheme's KILL is content curation (the projection trims,
204
+ // the row is retired, the evidence stays), so it is a MOVE's source removal. A stream's KILL
205
+ // is process control and is not.
206
+ static #curatedSource(source) {
207
+ return source.manifest.category === "logging";
158
208
  }
159
209
  async removeMoveSource(statement, source, ctx, lineAnchorPrecondition = null) {
160
- const effect = MutationEffects.pendingEffect(source, source.lineMarker === null ? "delete" : "update");
210
+ const effect = MutationEffects.pendingEffect(source, source.lineMarker === null && source.matchedLines === undefined ? "delete" : "update");
211
+ if (source.matchedLines !== undefined) {
212
+ const removals = ResourceTransfers.#sourceRemovals(source, statement.position);
213
+ const edited = await this.invokeEditBatch(source, removals, ctx, lineAnchorPrecondition);
214
+ return MutationEffects.finalizeEffects(edited, source, removals.map(() => effect));
215
+ }
216
+ if (ResourceTransfers.#curatedSource(source)) {
217
+ const handler = this.#schemes.get(source.scheme, ctx.workspaceId);
218
+ if (handler?.kill === undefined) {
219
+ throw new InvalidOperationResultError(`Resolved MOVE source scheme '${source.scheme}' curates nothing.`);
220
+ }
221
+ const curated = await handler.kill(source.pathname, source.lineMarker, new SchemeCtxImpl(ctx, source.scheme, source.manifest, this.#liveSubscriptions, {}));
222
+ return MutationEffects.finalizeEffects(Results.assert(curated), source, [effect]);
223
+ }
161
224
  if (source.lineMarker === null) {
162
- const handler = this.#schemes.get(source.scheme, ctx.functionalityWorkerId);
225
+ const handler = this.#schemes.get(source.scheme, ctx.workspaceId);
163
226
  if (handler === undefined) {
164
227
  throw new InvalidOperationResultError(`Resolved MOVE source scheme '${source.scheme}' is no longer registered.`);
165
228
  }
@@ -169,6 +232,7 @@ export default class ResourceTransfers {
169
232
  handler,
170
233
  manifest: source.manifest,
171
234
  ctx,
235
+ access: "write",
172
236
  });
173
237
  if (binding.result !== null)
174
238
  return binding.result;
@@ -186,7 +250,7 @@ export default class ResourceTransfers {
186
250
  return MutationEffects.finalizeEffects(edited, source, [effect]);
187
251
  }
188
252
  async writeDestination(statement, source, destination, ctx) {
189
- const handler = this.#schemes.get(destination.scheme, ctx.functionalityWorkerId);
253
+ const handler = this.#schemes.get(destination.scheme, ctx.workspaceId);
190
254
  if (handler === undefined) {
191
255
  throw new InvalidOperationResultError(`Resolved COPY/MOVE destination scheme '${destination.scheme}' is no longer registered.`);
192
256
  }
@@ -196,6 +260,7 @@ export default class ResourceTransfers {
196
260
  handler,
197
261
  manifest: destination.manifest,
198
262
  ctx,
263
+ access: "write",
199
264
  });
200
265
  if (binding.result !== null)
201
266
  return binding.result;
@@ -221,7 +286,9 @@ export default class ResourceTransfers {
221
286
  const destRealMimetype = typeof destProjection?.mimetype === "string" ? destProjection.mimetype : destinationChannel?.mimetype;
222
287
  const expectedMimetype = destRealMimetype
223
288
  ?? await PathMimetype.resolveEntryMimetype(destination.pathname, destination.manifest.channels[destination.channel] ?? source.mimetype, ctx.mimetypes);
224
- if (source.mimetype !== expectedMimetype) {
289
+ if (!MimetypeClassifier.isTransferCompatible(source.mimetype, expectedMimetype, {
290
+ binary: source.bytes !== undefined,
291
+ })) {
225
292
  return MutationEffects.failure("mimetype-mismatch", 415, `COPY or MOVE cannot write '${source.mimetype}' into a '${expectedMimetype}' channel.`, {}, {
226
293
  channel: destination.channel,
227
294
  sourceMimetype: source.mimetype,
@@ -293,13 +360,13 @@ export default class ResourceTransfers {
293
360
  ? { content: "", bytes: source.bytes, mimetype: source.mimetype }
294
361
  : {
295
362
  content: creationContent,
296
- mimetype: source.mimetype,
363
+ mimetype: expectedMimetype,
297
364
  },
298
365
  };
299
366
  const written = await this.#writeEntry(destination.scheme, storageAddress, { channels }, ctx);
300
367
  const exactWritten = Results.assert(written);
301
368
  const parseIssues = !isByteTransfer && (exactWritten.status === 200 || exactWritten.status === 201)
302
- ? await new DbProjectionCaps(ctx).parseIssueTransition(null, creationContent, source.mimetype)
369
+ ? await new DbProjectionCaps(ctx).parseIssueTransition(null, creationContent, expectedMimetype)
303
370
  : undefined;
304
371
  const materialized = isByteTransfer || source.lineMarker === null
305
372
  || (exactWritten.status !== 200 && exactWritten.status !== 201 && exactWritten.status !== 202)
@@ -318,7 +385,7 @@ export default class ResourceTransfers {
318
385
  // whole resource. `<c,d>` replaces bytes c..d (1-indexed, inclusive); `<c>` inserts at byte c (before
319
386
  // it, or after it with a trailing position; `<-1>` appends). Every byte outside the window is kept.
320
387
  async #spliceBytes(handler, storageAddress, destination, existing, srcBytes, mimetype, destinationEffect, ctx) {
321
- const byteSource = handler.byteSource?.(storageAddress.pathname, ctx);
388
+ const byteSource = handler.byteSource?.(storageAddress, EntryAddressBinding.addressContext(ctx));
322
389
  if (byteSource === undefined) {
323
390
  return MutationEffects.failure("binary-region-unsupported", 415, `Channel #${destination.channel} is binary and its scheme keeps no bytes to splice.`, {}, { channel: destination.channel, mimetype, retryable: false });
324
391
  }
@@ -364,7 +431,7 @@ export default class ResourceTransfers {
364
431
  return MutationEffects.finalizeEffects(Results.assert(written), destination, [destinationEffect]);
365
432
  }
366
433
  async invokeEditBatch(selection, edits, ctx, precondition = null) {
367
- const handler = this.#schemes.get(selection.scheme, ctx.functionalityWorkerId);
434
+ const handler = this.#schemes.get(selection.scheme, ctx.workspaceId);
368
435
  if (typeof handler?.editBatch !== "function") {
369
436
  return MutationEffects.failure("operation-not-implemented", 501, `Scheme '${selection.scheme}' does not implement EDIT batches.`, {}, {
370
437
  scheme: selection.scheme,
@@ -374,12 +441,12 @@ export default class ResourceTransfers {
374
441
  }
375
442
  const statements = edits.map(({ marker, body, position }) => ({
376
443
  op: "EDIT",
377
- delimiter: "",
378
- annotation: null,
444
+ aside: null,
379
445
  signal: null,
380
446
  target: selection.target,
381
447
  metadata: selection.metadata,
382
448
  lineMarker: marker,
449
+ matcher: null,
383
450
  body,
384
451
  position,
385
452
  }));
@@ -393,6 +460,7 @@ export default class ResourceTransfers {
393
460
  handler,
394
461
  manifest: selection.manifest,
395
462
  ctx,
463
+ access: "write",
396
464
  });
397
465
  if (binding.result !== null)
398
466
  return binding.result;
@@ -401,7 +469,6 @@ export default class ResourceTransfers {
401
469
  }
402
470
  const result = Results.assert(await handler.editBatch(statements, new SchemeCtxImpl(ctx, addressedScheme, selection.manifest, this.#liveSubscriptions, {
403
471
  authority: binding.address.authority,
404
- ownerId: binding.address.ownerId,
405
472
  publishedChannel: selection.channel,
406
473
  editPrecondition: precondition,
407
474
  })));
@@ -476,7 +543,8 @@ export default class ResourceTransfers {
476
543
  target: deferred.target,
477
544
  metadata: deferred.metadata,
478
545
  lineMarker: deferred.lineMarker,
479
- }, ctx);
546
+ matcher: null,
547
+ }, ctx, "read");
480
548
  if (MutationEffects.isDispatchResult(resolvedSource)) {
481
549
  return {
482
550
  resolution: settlement.resolution,
@@ -492,6 +560,7 @@ export default class ResourceTransfers {
492
560
  const removed = await this.removeMoveSource(statement, {
493
561
  ...resolvedSource,
494
562
  lineMarker: resolvedSource.lineMarker,
563
+ ...(deferred.matchedLines === undefined ? {} : { matchedLines: deferred.matchedLines }),
495
564
  }, ctx, deferred.lineAnchorPrecondition);
496
565
  if (removed.status >= 400) {
497
566
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceTransfers.js","sourceRoot":"","sources":["../../src/core/ResourceTransfers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceTransfers.js","sourceRoot":"","sources":["../../src/core/ResourceTransfers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { Db } from "./Db.ts";
2
+ export default class RuntimeWorker {
3
+ static ensure(db: Db, workspaceId: number): Promise<number>;
4
+ }
5
+ //# sourceMappingURL=RuntimeWorker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeWorker.d.ts","sourceRoot":"","sources":["../../src/core/RuntimeWorker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAGlC,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,OAAa,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAIhE;CACJ"}
@@ -0,0 +1,10 @@
1
+ // {§actor-boundary} The runtime has an actor for its actual operation turns.
2
+ export default class RuntimeWorker {
3
+ static async ensure(db, workspaceId) {
4
+ const row = await db.runtime_worker_ensure.get({ workspace_id: workspaceId });
5
+ if (row === undefined)
6
+ throw new Error("Runtime worker creation returned no row.");
7
+ return row.id;
8
+ }
9
+ }
10
+ //# sourceMappingURL=RuntimeWorker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuntimeWorker.js","sourceRoot":"","sources":["../../src/core/RuntimeWorker.ts"],"names":[],"mappings":"AAEA,6EAA6E;AAC7E,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAM,EAAE,WAAmB;QAC3C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,qBAAqB,CAAC,GAAG,CAAiB,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9F,IAAI,GAAG,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;QACnF,OAAO,GAAG,CAAC,EAAE,CAAC;IAClB,CAAC;CACJ"}
@@ -0,0 +1,5 @@
1
+ -- PREP: runtime_worker_ensure
2
+ INSERT INTO workers (workspace_id, name, origin)
3
+ VALUES ($workspace_id, 'plurnk', '_plurnk')
4
+ ON CONFLICT (workspace_id, name) DO UPDATE SET name = excluded.name
5
+ RETURNING id;
@@ -1,6 +1,7 @@
1
1
  import { type WebFetch } from "../schemes/Exec.ts";
2
- import { type PacketSectionDraft, type SchemeEntryInheritance } from "@plurnk/plurnk-schemes";
2
+ import { type PacketSectionDraft } from "@plurnk/plurnk-schemes";
3
3
  import type { SchemeManifest } from "./scheme-types.ts";
4
+ import ExecOutputScheme from "../schemes/ExecOutputScheme.ts";
4
5
  import type ExecutorRegistry from "./ExecutorRegistry.ts";
5
6
  import type { Executor, RuntimeNamespaceOwner } from "./ExecutorRegistry.ts";
6
7
  import type { CoreSchemeServices } from "./CoreSchemeServices.ts";
@@ -19,33 +20,28 @@ export default class SchemeRegistry {
19
20
  fetchWeb?: WebFetch;
20
21
  readTeaching?: ReadTeaching;
21
22
  });
23
+ outputResource(manifest: SchemeManifest): ExecOutputScheme;
22
24
  register(name: string, handler: object): void;
23
25
  bindCore(services: CoreSchemeServices): void;
24
26
  registerRuntimeSchemes(executors: ExecutorRegistry): void;
25
27
  registerRuntimeScheme(tag: string, executor: Executor, owner: RuntimeNamespaceOwner, facet?: RuntimeSchemeFacet, sameOwnerRescan?: boolean): void;
26
28
  prepareRuntimeSchemes(registrations: readonly RuntimeSchemeRegistration[], sameOwnerRescan?: boolean): () => void;
27
- prepareWorkerRuntimeSchemes(workerId: number, namespaceOwner: string, registrations: readonly RuntimeSchemeRegistration[]): Promise<() => () => void>;
28
- get(name: string, workerId?: number): object | undefined;
29
- has(name: string, workerId?: number): boolean;
30
- manifestFor(name: string, workerId?: number): SchemeManifest | undefined;
31
- entryInheritanceForStoredScheme(scheme: string, workerId: number): SchemeEntryInheritance;
32
- list(workerId?: number): string[];
29
+ prepareWorkspaceRuntimeSchemes(workspaceId: number, namespaceOwner: string, registrations: readonly RuntimeSchemeRegistration[]): Promise<() => () => void>;
30
+ get(name: string, workspaceId?: number): object | undefined;
31
+ has(name: string, workspaceId?: number): boolean;
32
+ manifestFor(name: string, workspaceId?: number): SchemeManifest | undefined;
33
+ list(workspaceId?: number): string[];
33
34
  ready(): Promise<void>;
34
35
  close(): Promise<void>;
35
- defaultChannelFor(scheme: string, workerId?: number): string;
36
- examples(workerId?: number): Array<{
37
- name: string;
38
- source: string;
39
- }>;
40
- teach(workerId?: number, admitted?: ReadonlySet<string>): string;
41
- docs(workerId?: number): Promise<Array<{
36
+ defaultChannelFor(scheme: string, workspaceId?: number): string;
37
+ docs(workspaceId?: number): Promise<Array<{
42
38
  name: string;
43
39
  content: string;
44
40
  }>>;
45
- transformSections(sections: PacketSectionDraft[], workerId?: number): Promise<PacketSectionDraft[]>;
41
+ transformSections(sections: PacketSectionDraft[], workspaceId?: number): Promise<PacketSectionDraft[]>;
46
42
  discoverExternal(cwd?: string): Promise<void>;
47
43
  attributions(context: PluginAttributionContext): PluginAttribution;
48
- isRuntimeScheme(name: string, workerId?: number): boolean;
44
+ isRuntimeScheme(name: string, workspaceId?: number): boolean;
49
45
  }
50
46
  export {};
51
47
  //# sourceMappingURL=SchemeRegistry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SchemeRegistry.d.ts","sourceRoot":"","sources":["../../src/core/SchemeRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SchemeRegistry.d.ts","sourceRoot":"","sources":["../../src/core/SchemeRegistry.ts"],"names":[],"mappings":"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"}