@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
@@ -0,0 +1,16 @@
1
+ import type { ParsedPath } from "@plurnk/plurnk-contracts";
2
+ import { type SchemeManifest } from "@plurnk/plurnk-schemes";
3
+ import type SchemeRegistry from "./SchemeRegistry.ts";
4
+ import type { PlurnkSchemeContext } from "./scheme-types.ts";
5
+ export interface ResourceScheme {
6
+ readonly handler: object;
7
+ readonly manifest: SchemeManifest;
8
+ }
9
+ export default class ResourceBindings {
10
+ #private;
11
+ constructor(schemes: SchemeRegistry, ctx: PlurnkSchemeContext);
12
+ static using<T>(schemes: SchemeRegistry, ctx: PlurnkSchemeContext, action: (ctx: PlurnkSchemeContext) => Promise<T>): Promise<T>;
13
+ static resolve(target: ParsedPath | null, ctx: PlurnkSchemeContext): Promise<ResourceScheme | undefined>;
14
+ resolve(target: ParsedPath | null): Promise<ResourceScheme | undefined>;
15
+ }
16
+ //# sourceMappingURL=ResourceBindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceBindings.d.ts","sourceRoot":"","sources":["../../src/core/ResourceBindings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGvE,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAG7D,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;CACrC;AAGD,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAKjC,YAAY,OAAO,EAAE,cAAc,EAAE,GAAG,EAAE,mBAAmB,EAG5D;IAED,MAAM,CAAC,KAAK,CAAC,CAAC,EACV,OAAO,EAAE,cAAc,EACvB,GAAG,EAAE,mBAAmB,EACxB,MAAM,EAAE,CAAC,GAAG,EAAE,mBAAmB,KAAK,OAAO,CAAC,CAAC,CAAC,GACjD,OAAO,CAAC,CAAC,CAAC,CAGZ;IAED,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,EAAE,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAGvG;IAED,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAKtE;CAYJ"}
@@ -0,0 +1,45 @@
1
+ import { Manifest } from "@plurnk/plurnk-schemes";
2
+ import ExecutionOutputs from "./ExecutionOutputs.js";
3
+ import ExecOutputScheme from "../schemes/ExecOutputScheme.js";
4
+ import { schemeNameOf } from "./plurnk-uri.js";
5
+ // {§workspace-environment-sharing} The caller's identity never selects a private tool instance.
6
+ export default class ResourceBindings {
7
+ #schemes;
8
+ #ctx;
9
+ #bindings = new Map();
10
+ constructor(schemes, ctx) {
11
+ this.#schemes = schemes;
12
+ this.#ctx = ctx;
13
+ }
14
+ static using(schemes, ctx, action) {
15
+ if (ctx.resourceBindings !== undefined)
16
+ return action(ctx);
17
+ return action({ ...ctx, resourceBindings: new ResourceBindings(schemes, ctx) });
18
+ }
19
+ static resolve(target, ctx) {
20
+ if (ctx.resourceBindings === undefined)
21
+ throw new Error("Resource access requires an operation binding scope.");
22
+ return ctx.resourceBindings.resolve(target);
23
+ }
24
+ resolve(target) {
25
+ if (target === null)
26
+ return Promise.resolve(undefined);
27
+ const key = target.raw;
28
+ if (!this.#bindings.has(key))
29
+ this.#bindings.set(key, this.#resolve(target));
30
+ return this.#bindings.get(key);
31
+ }
32
+ async #resolve(target) {
33
+ const scheme = schemeNameOf(target);
34
+ if (scheme === null)
35
+ return undefined;
36
+ const handler = this.#schemes.get(scheme, this.#ctx.workspaceId);
37
+ if (!(handler instanceof ExecOutputScheme && handler.claimsLiveResource(target))) {
38
+ const manifest = await ExecutionOutputs.manifest(this.#ctx.db, this.#ctx.workspaceId, target);
39
+ if (manifest !== null)
40
+ return { handler: this.#schemes.outputResource(manifest), manifest };
41
+ }
42
+ return handler === undefined ? undefined : { handler, manifest: Manifest.of(handler, scheme) };
43
+ }
44
+ }
45
+ //# sourceMappingURL=ResourceBindings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceBindings.js","sourceRoot":"","sources":["../../src/core/ResourceBindings.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAuB,MAAM,wBAAwB,CAAC;AACvE,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AACrD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAG9D,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAO/C,gGAAgG;AAChG,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACxB,QAAQ,CAAiB;IACzB,IAAI,CAAsB;IAC1B,SAAS,GAAG,IAAI,GAAG,EAA+C,CAAC;IAE5E,YAAY,OAAuB,EAAE,GAAwB;QACzD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,KAAK,CACR,OAAuB,EACvB,GAAwB,EACxB,MAAgD;QAEhD,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3D,OAAO,MAAM,CAAC,EAAE,GAAG,GAAG,EAAE,gBAAgB,EAAE,IAAI,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,MAAyB,EAAE,GAAwB;QAC9D,IAAI,GAAG,CAAC,gBAAgB,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAChH,OAAO,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,OAAO,CAAC,MAAyB;QAC7B,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC7E,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,MAAkB;QAC7B,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,SAAS,CAAC;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjE,IAAI,CAAC,CAAC,OAAO,YAAY,gBAAgB,IAAI,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;YAC/E,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC9F,IAAI,QAAQ,KAAK,IAAI;gBAAE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;QAChG,CAAC;QACD,OAAO,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;IACnG,CAAC;CACJ"}
@@ -16,12 +16,9 @@ export default class ResourceMutations {
16
16
  schemes: SchemeRegistry;
17
17
  liveSubscriptions: LiveSubscriptions;
18
18
  run: RunOperation;
19
- checkWritable: (statement: PlurnkStatement, origin: WriterTier, workerId: number) => DispatchResult | null;
20
- checkCapabilities: (statement: PlurnkStatement, workspaceId: number, loopId: number, workerId: number) => Promise<DispatchResult | null>;
21
- editTargetIdentity: (statement: EditStatement, workspaceId: number, workerId: number) => Promise<{
22
- readonly key: string;
23
- readonly identity: string | null;
24
- }>;
19
+ checkWritable: (statement: PlurnkStatement, origin: WriterTier, workspaceId: number) => DispatchResult | null;
20
+ checkCapabilities: (statement: PlurnkStatement, ctx: PlurnkSchemeContext) => Promise<DispatchResult | null>;
21
+ editTargetIdentity: (statement: EditStatement, workspaceId: number, workerId: number) => Promise<string | null>;
25
22
  canonicalFilePath: (pathname: string, workspaceId: number) => Promise<string | null>;
26
23
  prepareDataRepresentation: PrepareDataRepresentation;
27
24
  resolveDataEntryAddress: EntryAddressBinding["resolve"];
@@ -30,9 +27,9 @@ export default class ResourceMutations {
30
27
  deleteChannel: (scheme: string, address: BoundEntryAddress, channel: string, ctx: PlurnkSchemeContext) => Promise<DeleteEntryResult>;
31
28
  applyProposal: ProposalLifecycle["workerApply"];
32
29
  });
33
- prepareEditBatches(...args: Parameters<EditMutations["prepareEditBatches"]>): ReturnType<EditMutations["prepareEditBatches"]>;
34
- preparedEditResult(...args: Parameters<EditMutations["preparedEditResult"]>): ReturnType<EditMutations["preparedEditResult"]>;
30
+ edit(...args: Parameters<EditMutations["edit"]>): ReturnType<EditMutations["edit"]>;
35
31
  withMergeFacts(...args: Parameters<EditMutations["withMergeFacts"]>): ReturnType<EditMutations["withMergeFacts"]>;
32
+ markLineDeletion(statement: EditStatement): void;
36
33
  settleEdit(...args: Parameters<EditMutations["settleEdit"]>): ReturnType<EditMutations["settleEdit"]>;
37
34
  handleCopy(...args: Parameters<ResourceTransfers["handleCopy"]>): ReturnType<ResourceTransfers["handleCopy"]>;
38
35
  handleMove(...args: Parameters<ResourceTransfers["handleMove"]>): ReturnType<ResourceTransfers["handleMove"]>;
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceMutations.d.ts","sourceRoot":"","sources":["../../src/core/ResourceMutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceMutations.d.ts","sourceRoot":"","sources":["../../src/core/ResourceMutations.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import MutationEffects from "./MutationEffects.js";
2
2
  import EditMutations from "./EditMutations.js";
3
3
  import ResourceSelector from "./ResourceSelector.js";
4
4
  import ResourceTransfers from "./ResourceTransfers.js";
5
- // Owns EDIT batch state and COPY/MOVE resource mutation composition.
5
+ // Owns EDIT coordinate resolution and COPY/MOVE resource mutation composition.
6
6
  // Dispatcher retains admission, generic scheme routing, proposal lifecycle, and durable operation recording.
7
7
  export default class ResourceMutations {
8
8
  #edits;
@@ -13,15 +13,15 @@ export default class ResourceMutations {
13
13
  this.#edits = new EditMutations({ schemes, liveSubscriptions, run, checkWritable, checkCapabilities, editTargetIdentity, resolveDataEntryAddress });
14
14
  this.#transfers = new ResourceTransfers({ schemes, liveSubscriptions, resolveDataEntryAddress, readEntry, writeEntry, deleteChannel, applyProposal, selection: this.#selection });
15
15
  }
16
- async prepareEditBatches(...args) {
17
- return this.#edits.prepareEditBatches(...args);
18
- }
19
- preparedEditResult(...args) {
20
- return this.#edits.preparedEditResult(...args);
16
+ edit(...args) {
17
+ return this.#edits.edit(...args);
21
18
  }
22
19
  withMergeFacts(...args) {
23
20
  return this.#edits.withMergeFacts(...args);
24
21
  }
22
+ markLineDeletion(statement) {
23
+ this.#edits.markLineDeletion(statement);
24
+ }
25
25
  settleEdit(...args) {
26
26
  return this.#edits.settleEdit(...args);
27
27
  }
@@ -52,7 +52,6 @@ export default class ResourceMutations {
52
52
  // The accepted row is composed from resolution.result ({§proposal-projection}).
53
53
  resolution: { ...settledMove.resolution, result: { ...(settledMove.resolution.result ?? {}), merged: facts } },
54
54
  };
55
- this.#edits.recordEditSettlement(statement, effective);
56
55
  return effective;
57
56
  }
58
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceMutations.js","sourceRoot":"","sources":["../../src/core/ResourceMutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceMutations.js","sourceRoot":"","sources":["../../src/core/ResourceMutations.ts"],"names":[],"mappings":"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"}
@@ -9,9 +9,9 @@ export default class ResourceSelector {
9
9
  canonicalFilePath: (pathname: string, workspaceId: number) => Promise<string | null>;
10
10
  prepareDataRepresentation: PrepareDataRepresentation;
11
11
  });
12
- resolveResourceSelection(selection: MetadataResourceSelection, ctx: PlurnkSchemeContext): Promise<AddressedResourceSelection | DispatchResult>;
12
+ resolveResourceSelection(selection: MetadataResourceSelection, ctx: PlurnkSchemeContext, access?: "read" | "write"): Promise<AddressedResourceSelection | DispatchResult>;
13
13
  selectSource(selection: AddressedResourceSelection, ctx: PlurnkSchemeContext, operation: "COPY" | "MOVE"): Promise<SelectedSource | DispatchResult>;
14
- resolveResourceLineMarker(selection: AddressedResourceSelection, content: string, operation: "COPY" | "MOVE"): {
14
+ resolveResourceLineMarker(selection: AddressedResourceSelection, content: string, operation: "COPY" | "MOVE", identity?: string): {
15
15
  readonly selection: ResolvedResourceSelection;
16
16
  readonly precondition: LineAnchorPrecondition | null;
17
17
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceSelector.d.ts","sourceRoot":"","sources":["../../src/core/ResourceSelector.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AAGtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAA8C,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAG9G,OAAO,KAAK,EAAE,cAAc,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAIvL,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAKjC,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,EAAE;QACnE,OAAO,EAAE,cAAc,CAAC;QACxB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QACrF,yBAAyB,EAAE,yBAAyB,CAAC;KACxD,EAIA;IAEK,wBAAwB,CAC1B,SAAS,EAAE,yBAAyB,EACpC,GAAG,EAAE,mBAAmB,GACzB,OAAO,CAAC,0BAA0B,GAAG,cAAc,CAAC,CAyGtD;IAGK,YAAY,CACd,SAAS,EAAE,0BAA0B,EACrC,GAAG,EAAE,mBAAmB,EACxB,SAAS,EAAE,MAAM,GAAG,MAAM,GAC3B,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,CA2H1C;IAGD,yBAAyB,CACrB,SAAS,EAAE,0BAA0B,EACrC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAAG,MAAM,GAC3B;QAAE,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;QAAC,QAAQ,CAAC,YAAY,EAAE,sBAAsB,GAAG,IAAI,CAAA;KAAE,GACpG;QAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;KAAE,CAmExC;CAEJ"}
1
+ {"version":3,"file":"ResourceSelector.d.ts","sourceRoot":"","sources":["../../src/core/ResourceSelector.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AAItD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAA8C,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAI9G,OAAO,KAAK,EAAE,cAAc,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,cAAc,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAQvL,MAAM,CAAC,OAAO,OAAO,gBAAgB;;IAKjC,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,EAAE;QACnE,OAAO,EAAE,cAAc,CAAC;QACxB,iBAAiB,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QACrF,yBAAyB,EAAE,yBAAyB,CAAC;KACxD,EAIA;IAEK,wBAAwB,CAC1B,SAAS,EAAE,yBAAyB,EACpC,GAAG,EAAE,mBAAmB,EACxB,MAAM,GAAE,MAAM,GAAG,OAAiB,GACnC,OAAO,CAAC,0BAA0B,GAAG,cAAc,CAAC,CAkHtD;IAGK,YAAY,CACd,SAAS,EAAE,0BAA0B,EACrC,GAAG,EAAE,mBAAmB,EACxB,SAAS,EAAE,MAAM,GAAG,MAAM,GAC3B,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC,CA0G1C;IAkFD,yBAAyB,CACrB,SAAS,EAAE,0BAA0B,EACrC,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,QAAQ,CAAC,EAAE,MAAM,GAClB;QAAE,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;QAAC,QAAQ,CAAC,YAAY,EAAE,sBAAsB,GAAG,IAAI,CAAA;KAAE,GACpG;QAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAA;KAAE,CAmExC;CAEJ"}
@@ -1,9 +1,16 @@
1
1
  import { InvalidOperationResultError } from "@plurnk/plurnk-schemes";
2
- import { entryCoordinateOf, renderAddress, schemeNameOf } from "./plurnk-uri.js";
2
+ import ResourceBindings from "./ResourceBindings.js";
3
+ import { entryCoordinateOf, schemeNameOf } from "./plurnk-uri.js";
4
+ import EntryAddressBinding from "./EntryAddressBinding.js";
3
5
  import { LineAnchors, LineMarkerOps, MimetypeBinary } from "../content/index.js";
4
6
  import EntryCrud from "../schemes/_entry-crud.js";
7
+ import EntryReadable from "../schemes/_entry-readable.js";
5
8
  import Results from "./results.js";
6
9
  import MutationEffects from "./MutationEffects.js";
10
+ import { coreRepresentationProvider } from "./CoreSchemeServices.js";
11
+ import LineSelection from "../content/line-selection.js";
12
+ import PatternEdits from "../content/pattern-edits.js";
13
+ import PatternSelection from "./PatternSelection.js";
7
14
  // Resource selection for COPY and MOVE: which entry, channel, and line range a statement names.
8
15
  export default class ResourceSelector {
9
16
  #schemes;
@@ -14,39 +21,41 @@ export default class ResourceSelector {
14
21
  this.#canonicalFilePath = canonicalFilePath;
15
22
  this.#prepareDataRepresentation = prepareDataRepresentation;
16
23
  }
17
- async resolveResourceSelection(selection, ctx) {
18
- const { target, metadata, lineMarker } = selection;
24
+ async resolveResourceSelection(selection, ctx, access = "write") {
25
+ const { target, metadata, lineMarker, matcher } = selection;
19
26
  const scheme = schemeNameOf(target);
20
27
  if (scheme === null) {
21
28
  return MutationEffects.failure("resource-scheme-required", 400, "COPY and MOVE resources require a scheme.", {}, { retryable: false });
22
29
  }
23
- // `~` is the caller's own space ({§worker-authority-carving}), not a name:
24
- // COPY and MOVE reach the commons and the private space, never another worker's.
25
- const workerAuthority = target.kind === "url" && target.scheme === "worker" ? target.hostname ?? "" : "";
26
- if (workerAuthority !== "" && workerAuthority !== "~") {
27
- return MutationEffects.failure("worker-copy-address-invalid", 400, "COPY and MOVE do not address named worker spaces.", {}, {
28
- recovery: "Move worker-space content with READ and EDIT.",
29
- retryable: false,
30
- });
30
+ // {§copy-move-pattern} — a pattern selects the lines a source gives; a destination is a
31
+ // place, named by its scope.
32
+ if (access === "write" && matcher !== null) {
33
+ return MutationEffects.failure("pattern-destination-unsupported", 400, "A pattern selects source lines; a COPY or MOVE destination is a place. Name where the lines land with a scope.", {}, { scheme, retryable: false });
31
34
  }
32
- const handler = this.#schemes.get(scheme, ctx.functionalityWorkerId);
33
- const manifest = this.#schemes.manifestFor(scheme, ctx.functionalityWorkerId);
35
+ const binding = access === "read" ? await ResourceBindings.resolve(target, ctx) : undefined;
36
+ const handler = access === "read" ? binding?.handler : this.#schemes.get(scheme, ctx.workspaceId);
37
+ const manifest = access === "read" ? binding?.manifest : this.#schemes.manifestFor(scheme, ctx.workspaceId);
34
38
  if (handler === undefined || manifest === undefined) {
35
39
  return MutationEffects.failure("scheme-not-found", 501, `COPY or MOVE addressed the unregistered scheme '${scheme}'.`, {}, {
36
40
  scheme,
37
41
  retryable: false,
38
42
  });
39
43
  }
40
- if (manifest.category !== "data") {
41
- return MutationEffects.failure("entry-operation-unsupported", 400, `COPY and MOVE require entry-bearing resources; '${scheme}' is a ${manifest.category} scheme.`, {}, {
44
+ const readableProjection = access === "read" && coreRepresentationProvider(handler) !== null;
45
+ if (manifest.category !== "data" && !readableProjection) {
46
+ return MutationEffects.failure("entry-operation-unsupported", 400, `This ${access} target requires entry storage; '${scheme}' is a ${manifest.category} scheme.`, {}, {
42
47
  scheme,
43
48
  category: manifest.category,
44
49
  retryable: false,
45
50
  });
46
51
  }
47
- const fragment = target.kind === "url" ? target.fragment : null;
52
+ const fragment = target.fragment ?? null;
48
53
  const channel = fragment ?? manifest.defaultChannel;
49
- if (channel.length === 0) {
54
+ // {§readable-channel} — the projection follows its source; a transfer never writes it.
55
+ if (access === "write" && EntryReadable.isDerived(channel)) {
56
+ return MutationEffects.failure("channel-derived", 400, `#${channel} is derived from #${manifest.defaultChannel}; write the source channel and the projection follows.`, {}, { scheme, channel, source: manifest.defaultChannel, retryable: false });
57
+ }
58
+ if (channel.length === 0 && !readableProjection) {
50
59
  return MutationEffects.failure("channel-required", 400, `The '${scheme}' scheme has no default channel.`, {}, {
51
60
  scheme,
52
61
  recovery: "Address a named channel with a URI fragment.",
@@ -59,7 +68,7 @@ export default class ResourceSelector {
59
68
  const availableChannels = [
60
69
  ...new Set([manifest.defaultChannel, ...Object.keys(manifest.channels)]),
61
70
  ].filter((candidate) => candidate.length > 0);
62
- return MutationEffects.failure("channel-not-found", 400, `Channel #${fragment} is not declared by the '${scheme}' scheme.`, {}, {
71
+ return MutationEffects.failure("channel-not-found", 404, `Channel #${fragment} is not declared by the '${scheme}' scheme.`, {}, {
63
72
  requestedChannel: fragment,
64
73
  availableChannels,
65
74
  retryable: false,
@@ -74,6 +83,7 @@ export default class ResourceSelector {
74
83
  target,
75
84
  metadata,
76
85
  lineMarker,
86
+ matcher,
77
87
  scheme,
78
88
  authority,
79
89
  pathname,
@@ -83,64 +93,46 @@ export default class ResourceSelector {
83
93
  };
84
94
  }
85
95
  async selectSource(selection, ctx, operation) {
86
- const handler = this.#schemes.get(selection.scheme, ctx.functionalityWorkerId);
96
+ const handler = (await ResourceBindings.resolve(selection.target, ctx))?.handler;
87
97
  if (handler === undefined) {
88
98
  throw new InvalidOperationResultError(`Resolved COPY/MOVE source scheme '${selection.scheme}' is no longer registered.`);
89
99
  }
90
- const prepared = await this.#prepareDataRepresentation({
91
- target: selection.target,
92
- metadata: selection.metadata,
93
- routedScheme: selection.scheme,
94
- handler,
95
- manifest: selection.manifest,
96
- ctx,
97
- publishedChannel: selection.channel,
98
- });
99
- if (prepared.result !== null)
100
- return prepared.result;
101
- if (prepared.address === null) {
102
- return MutationEffects.failure("entry-not-found", 404, `No entry exists at ${MutationEffects.resourceAddress(selection)}.`, {}, { target: MutationEffects.resourceAddress(selection) });
103
- }
104
- const storageAddress = prepared.address;
105
- const read = await EntryCrud.readEntry(storageAddress, ctx, storageAddress.scheme, storageAddress.ownerId);
106
- if (read.status >= 400)
107
- return read;
108
- if (read.status !== 200 || read.entry === null) {
109
- throw new InvalidOperationResultError(`The '${selection.scheme}' scheme returned status ${read.status} without a COPY/MOVE source entry.`);
110
- }
111
- const selected = read.entry.channels[selection.channel];
100
+ const acquired = await this.#sourceRepresentation(selection, handler, ctx);
101
+ if ("result" in acquired)
102
+ return acquired.result;
103
+ const { representation, storageAddress, visibleLines, identity } = acquired;
104
+ const target = MutationEffects.resourceAddress(selection);
105
+ const selected = representation.channels[selection.channel];
112
106
  if (selected === undefined) {
113
- return MutationEffects.failure("channel-not-found", 404, `No channel named #${selection.channel} exists at ${renderAddress(storageAddress)}.`, {}, {
114
- target: renderAddress(storageAddress),
107
+ return MutationEffects.failure("channel-not-found", 404, `No channel named #${selection.channel} exists at ${target}.`, {}, {
108
+ target,
115
109
  requestedChannel: selection.channel,
116
- availableChannels: Object.keys(read.entry.channels),
110
+ availableChannels: Object.keys(representation.channels),
117
111
  retryable: false,
118
112
  });
119
113
  }
120
- const resolvedMarker = this.resolveResourceLineMarker(selection, selected.content, operation);
114
+ const resolvedMarker = this.resolveResourceLineMarker(selection, selected.content, operation, identity);
121
115
  if ("result" in resolvedMarker)
122
116
  return resolvedMarker.result;
123
117
  let content = selected.content;
118
+ let startLine = 1;
124
119
  let scopeNormalizations;
125
- // {§binary-parity} — a materialized binary member's channel mimetype is its text projection
126
- // (the facts line, text/markdown); its real mimetype is the source projection. Binariness and
127
- // the transfer's destination mimetype both come from the source, not the projection.
128
- const sourceProjection = read.entry.attributes?.sourceProjection;
120
+ // {§binary-parity} — bytes and the destination mimetype come from the source,
121
+ // not its readable text projection.
122
+ const sourceProjection = representation.attributes?.sourceProjection;
129
123
  const sourceMimetype = typeof sourceProjection?.mimetype === "string" ? sourceProjection.mimetype : selected.mimetype;
130
124
  if (await MimetypeBinary.isBinaryMimetype(sourceMimetype, ctx.mimetypes)) {
131
- // A binary source transfers its bytes, not its text projection: the whole resource, or the
132
- // byte range the marker names (coordinate = byte, as {§read-bytes}). Only a source whose
133
- // scheme keeps no bytes cannot.
134
- // A File hands its bytes from disk; a DB entry keeps them base64 in the channel content
135
- // ({§binary-parity}), recovered here. A scheme with neither keeps no bytes to transfer.
136
- const byteSource = handler.byteSource?.(storageAddress.pathname, ctx)
137
- ?? (selected.content !== "" ? EntryCrud.contentByteSource(selected.content) : undefined);
125
+ if (selection.matcher !== null) {
126
+ return PatternSelection.refuse("pattern-unsupported", 400, `Channel #${selection.channel} is binary; bytes have no lines for a pattern to select.`, selection.scheme, operation);
127
+ }
128
+ const byteSource = (storageAddress === undefined ? undefined : handler.byteSource?.(storageAddress, EntryAddressBinding.addressContext(ctx)))
129
+ ?? await EntryCrud.storedByteSource(representation, selection.channel, ctx.mimetypes);
138
130
  if (byteSource === undefined) {
139
131
  return MutationEffects.failure("binary-source-unsupported", 415, `Channel #${selection.channel} is binary and its scheme keeps no bytes to transfer.`, {}, { channel: selection.channel, mimetype: selected.mimetype, retryable: false });
140
132
  }
141
133
  const size = await byteSource.size();
142
134
  if (size === null || size === 0) {
143
- return MutationEffects.failure("entry-not-found", 404, `No bytes exist at ${renderAddress(storageAddress)}.`, {}, { target: renderAddress(storageAddress), retryable: false });
135
+ return MutationEffects.failure("entry-not-found", 404, `No bytes exist at ${target}.`, {}, { target, retryable: false });
144
136
  }
145
137
  const marks = resolvedMarker.selection.lineMarker?.marks ?? [];
146
138
  const start = marks.length >= 1 ? marks[0] : 1;
@@ -151,7 +143,6 @@ export default class ResourceSelector {
151
143
  const bytes = await byteSource.read(start, end);
152
144
  return {
153
145
  ...resolvedMarker.selection,
154
- storageAddress,
155
146
  content: "",
156
147
  completeContent: "",
157
148
  bytes,
@@ -164,22 +155,91 @@ export default class ResourceSelector {
164
155
  if (sliced.status !== 200)
165
156
  return Results.assert(sliced);
166
157
  content = sliced.text ?? "";
158
+ startLine = sliced.startLine ?? 1;
167
159
  scopeNormalizations = sliced.scopeNormalizations;
168
160
  }
169
161
  if (selected.producerResult !== undefined && selected.producerResult.status >= 400) {
170
162
  return Results.assert(selected.producerResult);
171
163
  }
164
+ const retained = visibleLines?.[selection.channel];
165
+ if (selection.matcher !== null) {
166
+ const matched = await this.#matchedLines(selection.matcher, resolvedMarker, selected, retained, operation, ctx, identity);
167
+ if ("result" in matched)
168
+ return matched.result;
169
+ return {
170
+ ...resolvedMarker.selection,
171
+ content: LineSelection.retain(selected.content, matched.lines).content,
172
+ completeContent: selected.content,
173
+ matchedLines: matched.lines,
174
+ mimetype: selected.mimetype,
175
+ lineAnchorPrecondition: MutationEffects.mergeLineAnchorPreconditions(resolvedMarker.precondition, matched.precondition),
176
+ ...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
177
+ };
178
+ }
172
179
  return {
173
180
  ...resolvedMarker.selection,
174
- storageAddress,
175
- content,
181
+ content: retained === undefined ? content : LineSelection.retain(content, retained, startLine).content,
176
182
  completeContent: selected.content,
177
183
  mimetype: selected.mimetype,
178
184
  lineAnchorPrecondition: resolvedMarker.precondition,
179
185
  ...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
180
186
  };
181
187
  }
182
- resolveResourceLineMarker(selection, content, operation) {
188
+ // {§copy-move-pattern} — the whole lines a source pattern selects, bounded by the scope and by
189
+ // what the source shows; their anchors guard a MOVE's removal exactly as an anchored scope would.
190
+ async #matchedLines(matcher, resolvedMarker, selected, retained, operation, ctx, identity) {
191
+ const { selection } = resolvedMarker;
192
+ const dialect = PatternSelection.refuseDialect(matcher, selection.scheme, operation);
193
+ if (dialect !== null)
194
+ return { result: dialect };
195
+ const matched = await PatternSelection.match({
196
+ matcher, content: selected.content, mimetype: selected.mimetype,
197
+ marks: selection.lineMarker?.marks, ctx, scheme: selection.scheme, operation,
198
+ });
199
+ if ("result" in matched)
200
+ return matched;
201
+ const shown = retained === undefined ? null : new Set(retained);
202
+ const lines = PatternEdits.lines(matched.evidence, matched.bounds).filter((line) => shown === null || shown.has(line));
203
+ if (lines.length === 0) {
204
+ return { result: Results.assert({ status: 204, matched: 0, detail: `No line matched the pattern; nothing to ${operation === "COPY" ? "copy" : "move"}.` }) };
205
+ }
206
+ if (selection.manifest.textEditScopes !== true)
207
+ return { lines, precondition: null };
208
+ const target = identity ?? MutationEffects.resourceAddress(selection);
209
+ const tokens = LineAnchors.tokens(target, selected.content);
210
+ return {
211
+ lines,
212
+ precondition: { identity: target, checks: lines.flatMap((line) => tokens[line - 1] === undefined ? [] : [{ anchor: tokens[line - 1], line }]) },
213
+ };
214
+ }
215
+ async #sourceRepresentation(selection, handler, ctx) {
216
+ const provider = coreRepresentationProvider(handler);
217
+ if (provider !== null)
218
+ return provider.resolveCoreRepresentation(selection.target, ctx);
219
+ const prepared = await this.#prepareDataRepresentation({
220
+ target: selection.target,
221
+ metadata: selection.metadata,
222
+ routedScheme: selection.scheme,
223
+ handler,
224
+ manifest: selection.manifest,
225
+ ctx,
226
+ publishedChannel: selection.channel,
227
+ });
228
+ if (prepared.result !== null)
229
+ return { result: prepared.result };
230
+ if (prepared.address === null) {
231
+ return { result: MutationEffects.failure("entry-not-found", 404, `No entry exists at ${MutationEffects.resourceAddress(selection)}.`, {}, { target: MutationEffects.resourceAddress(selection) }) };
232
+ }
233
+ const storageAddress = prepared.address;
234
+ const read = await EntryCrud.readEntry(storageAddress, ctx, storageAddress.scheme);
235
+ if (read.status >= 400)
236
+ return { result: read };
237
+ if (read.status !== 200 || read.entry === null) {
238
+ throw new InvalidOperationResultError(`The '${selection.scheme}' scheme returned status ${read.status} without a COPY/MOVE source entry.`);
239
+ }
240
+ return { representation: read.entry, storageAddress };
241
+ }
242
+ resolveResourceLineMarker(selection, content, operation, identity) {
183
243
  if (!LineAnchors.hasAnchor(selection.lineMarker)) {
184
244
  return {
185
245
  selection: {
@@ -189,7 +249,7 @@ export default class ResourceSelector {
189
249
  precondition: null,
190
250
  };
191
251
  }
192
- const target = MutationEffects.resourceAddress(selection);
252
+ const target = identity ?? MutationEffects.resourceAddress(selection);
193
253
  if (selection.manifest.textEditScopes !== true || !selection.manifest.writableBy.includes("model")) {
194
254
  return {
195
255
  result: MutationEffects.failure("line-anchor-unsupported", 400, `The representation at ${target} does not publish line anchors.`, {}, {
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceSelector.js","sourceRoot":"","sources":["../../src/core/ResourceSelector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceSelector.js","sourceRoot":"","sources":["../../src/core/ResourceSelector.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import type { ProposalSettlement } from "./ProposalLifecycle.ts";
6
6
  import type { EntryData, ReadEntryResult, WriteEntryResult, DeleteEntryResult } from "../schemes/_entry-crud.ts";
7
7
  import type { PlurnkSchemeContext } from "./scheme-types.ts";
8
8
  import { type LineAnchorPrecondition } from "../content/index.ts";
9
- import type EntryAddressBinding from "./EntryAddressBinding.ts";
9
+ import EntryAddressBinding from "./EntryAddressBinding.ts";
10
10
  import type { BoundEntryAddress } from "./EntryAddressBinding.ts";
11
11
  import type { DispatchResult, MetadataResourceSelection, AddressedResourceSelection, ResolvedResourceSelection, SelectedSource, ProposalIds } from "./mutation-types.ts";
12
12
  import type ResourceSelector from "./ResourceSelector.ts";
@@ -37,7 +37,9 @@ export default class ResourceTransfers {
37
37
  ctx: PlurnkSchemeContext;
38
38
  }): Promise<DispatchResult>;
39
39
  moveWithinChannel(statement: MoveStatement, source: SelectedSource, destination: AddressedResourceSelection, ctx: PlurnkSchemeContext): Promise<DispatchResult>;
40
- removeMoveSource(statement: MoveStatement, source: ResolvedResourceSelection, ctx: PlurnkSchemeContext, lineAnchorPrecondition?: LineAnchorPrecondition | null): Promise<DispatchResult>;
40
+ removeMoveSource(statement: MoveStatement, source: ResolvedResourceSelection & {
41
+ readonly matchedLines?: readonly number[];
42
+ }, ctx: PlurnkSchemeContext, lineAnchorPrecondition?: LineAnchorPrecondition | null): Promise<DispatchResult>;
41
43
  writeDestination(statement: CopyStatement | MoveStatement, source: SelectedSource, destination: AddressedResourceSelection, ctx: PlurnkSchemeContext): Promise<DispatchResult>;
42
44
  invokeEditBatch(selection: ResolvedResourceSelection, edits: ReadonlyArray<{
43
45
  readonly marker: LineMarker;
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceTransfers.d.ts","sourceRoot":"","sources":["../../src/core/ResourceTransfers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ResourceTransfers.d.ts","sourceRoot":"","sources":["../../src/core/ResourceTransfers.ts"],"names":[],"mappings":"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"}