@plurnk/plurnk-service 1.17.0 → 1.19.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 (501) hide show
  1. package/.env.defaults +95 -14
  2. package/README.md +5 -3
  3. package/SPEC.md +1756 -1442
  4. package/dist/Paths.js +3 -3
  5. package/dist/build-info.json +1 -1
  6. package/dist/content/body-preview.d.ts +1 -0
  7. package/dist/content/body-preview.d.ts.map +1 -1
  8. package/dist/content/body-preview.js +8 -10
  9. package/dist/content/body-preview.js.map +1 -1
  10. package/dist/content/edit-receipt.d.ts.map +1 -1
  11. package/dist/content/edit-receipt.js +30 -29
  12. package/dist/content/edit-receipt.js.map +1 -1
  13. package/dist/content/line-anchors.d.ts.map +1 -1
  14. package/dist/content/line-anchors.js +17 -5
  15. package/dist/content/line-anchors.js.map +1 -1
  16. package/dist/content/read-projector.d.ts +2 -2
  17. package/dist/content/read-projector.d.ts.map +1 -1
  18. package/dist/content/read-projector.js +81 -39
  19. package/dist/content/read-projector.js.map +1 -1
  20. package/dist/content/read-resolve.d.ts +1 -0
  21. package/dist/content/read-resolve.d.ts.map +1 -1
  22. package/dist/content/read-resolve.js +13 -10
  23. package/dist/content/read-resolve.js.map +1 -1
  24. package/dist/content/scope-format.d.ts +9 -0
  25. package/dist/content/scope-format.d.ts.map +1 -0
  26. package/dist/content/scope-format.js +28 -0
  27. package/dist/content/scope-format.js.map +1 -0
  28. package/dist/core/AdministrativeLoop.d.ts +8 -0
  29. package/dist/core/AdministrativeLoop.d.ts.map +1 -0
  30. package/dist/core/AdministrativeLoop.js +16 -0
  31. package/dist/core/AdministrativeLoop.js.map +1 -0
  32. package/dist/core/AdmittedTurnExecutor.d.ts +2 -2
  33. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  34. package/dist/core/AdmittedTurnExecutor.js +26 -26
  35. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  36. package/dist/core/BareBatchRunner.d.ts +1 -2
  37. package/dist/core/BareBatchRunner.d.ts.map +1 -1
  38. package/dist/core/BareBatchRunner.js +7 -12
  39. package/dist/core/BareBatchRunner.js.map +1 -1
  40. package/dist/core/BudgetReadout.d.ts.map +1 -1
  41. package/dist/core/BudgetReadout.js +3 -4
  42. package/dist/core/BudgetReadout.js.map +1 -1
  43. package/dist/core/CapabilityPolicies.d.ts +4 -2
  44. package/dist/core/CapabilityPolicies.d.ts.map +1 -1
  45. package/dist/core/CapabilityPolicies.js +23 -2
  46. package/dist/core/CapabilityPolicies.js.map +1 -1
  47. package/dist/core/CapabilityResolver.d.ts +2 -2
  48. package/dist/core/CapabilityResolver.d.ts.map +1 -1
  49. package/dist/core/CapabilityResolver.js +46 -36
  50. package/dist/core/CapabilityResolver.js.map +1 -1
  51. package/dist/core/ChannelWrite.d.ts +4 -6
  52. package/dist/core/ChannelWrite.d.ts.map +1 -1
  53. package/dist/core/ChannelWrite.js +8 -8
  54. package/dist/core/ChannelWrite.js.map +1 -1
  55. package/dist/core/ChannelWrite.sql +17 -11
  56. package/dist/core/ClientInteractions.d.ts +11 -1
  57. package/dist/core/ClientInteractions.d.ts.map +1 -1
  58. package/dist/core/ClientInteractions.js +26 -2
  59. package/dist/core/ClientInteractions.js.map +1 -1
  60. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  61. package/dist/core/CoreSchemeServices.js +1 -0
  62. package/dist/core/CoreSchemeServices.js.map +1 -1
  63. package/dist/core/DataStatementRunner.d.ts.map +1 -1
  64. package/dist/core/DataStatementRunner.js +198 -148
  65. package/dist/core/DataStatementRunner.js.map +1 -1
  66. package/dist/core/Dispatcher.d.ts +18 -5
  67. package/dist/core/Dispatcher.d.ts.map +1 -1
  68. package/dist/core/Dispatcher.js +135 -114
  69. package/dist/core/Dispatcher.js.map +1 -1
  70. package/dist/core/Dispatcher.sql +11 -26
  71. package/dist/core/DurableStatement.d.ts +4 -1
  72. package/dist/core/DurableStatement.d.ts.map +1 -1
  73. package/dist/core/DurableStatement.js +4 -4
  74. package/dist/core/DurableStatement.js.map +1 -1
  75. package/dist/core/EditMutations.d.ts.map +1 -1
  76. package/dist/core/EditMutations.js +5 -2
  77. package/dist/core/EditMutations.js.map +1 -1
  78. package/dist/core/Engine.d.ts +11 -9
  79. package/dist/core/Engine.d.ts.map +1 -1
  80. package/dist/core/Engine.js +27 -65
  81. package/dist/core/Engine.js.map +1 -1
  82. package/dist/core/Engine.sql +2 -22
  83. package/dist/core/EnvFlags.d.ts.map +1 -1
  84. package/dist/core/EnvFlags.js +4 -2
  85. package/dist/core/EnvFlags.js.map +1 -1
  86. package/dist/core/ExecutionOutputs.sql +8 -0
  87. package/dist/core/ExecutorRegistry.d.ts +4 -0
  88. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  89. package/dist/core/ExecutorRegistry.js +3 -1
  90. package/dist/core/ExecutorRegistry.js.map +1 -1
  91. package/dist/core/KillHandler.d.ts.map +1 -1
  92. package/dist/core/KillHandler.js +7 -12
  93. package/dist/core/KillHandler.js.map +1 -1
  94. package/dist/core/Knob.d.ts +9 -0
  95. package/dist/core/Knob.d.ts.map +1 -0
  96. package/dist/core/Knob.js +50 -0
  97. package/dist/core/Knob.js.map +1 -0
  98. package/dist/core/LogBody.d.ts.map +1 -1
  99. package/dist/core/LogBody.js +8 -36
  100. package/dist/core/LogBody.js.map +1 -1
  101. package/dist/core/LogEntryProjection.d.ts.map +1 -1
  102. package/dist/core/LogEntryProjection.js +8 -10
  103. package/dist/core/LogEntryProjection.js.map +1 -1
  104. package/dist/core/LogVisibility.d.ts.map +1 -1
  105. package/dist/core/LogVisibility.js +2 -1
  106. package/dist/core/LogVisibility.js.map +1 -1
  107. package/dist/core/LogWriter.d.ts.map +1 -1
  108. package/dist/core/LogWriter.js +11 -9
  109. package/dist/core/LogWriter.js.map +1 -1
  110. package/dist/core/LoopDriver.d.ts +1 -1
  111. package/dist/core/LoopDriver.d.ts.map +1 -1
  112. package/dist/core/LoopDriver.js +24 -32
  113. package/dist/core/LoopDriver.js.map +1 -1
  114. package/dist/core/LoopLifecycle.d.ts +4 -17
  115. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  116. package/dist/core/LoopLifecycle.js +20 -22
  117. package/dist/core/LoopLifecycle.js.map +1 -1
  118. package/dist/core/LoopLifecycle.sql +36 -49
  119. package/dist/core/LoopOutcome.d.ts +10 -0
  120. package/dist/core/LoopOutcome.d.ts.map +1 -0
  121. package/dist/core/LoopOutcome.js +28 -0
  122. package/dist/core/LoopOutcome.js.map +1 -0
  123. package/dist/core/LoopPolicies.d.ts +7 -0
  124. package/dist/core/LoopPolicies.d.ts.map +1 -0
  125. package/dist/core/LoopPolicies.js +37 -0
  126. package/dist/core/LoopPolicies.js.map +1 -0
  127. package/dist/core/MessageResources.d.ts +15 -0
  128. package/dist/core/MessageResources.d.ts.map +1 -0
  129. package/dist/core/MessageResources.js +46 -0
  130. package/dist/core/MessageResources.js.map +1 -0
  131. package/dist/core/MessageResources.sql +36 -0
  132. package/dist/core/ModelCall.d.ts.map +1 -1
  133. package/dist/core/ModelCall.js +2 -6
  134. package/dist/core/ModelCall.js.map +1 -1
  135. package/dist/core/ModelCall.sql +7 -36
  136. package/dist/core/OperatorConfig.d.ts +2 -1
  137. package/dist/core/OperatorConfig.d.ts.map +1 -1
  138. package/dist/core/OperatorConfig.js +14 -6
  139. package/dist/core/OperatorConfig.js.map +1 -1
  140. package/dist/core/PacketBuilder.d.ts.map +1 -1
  141. package/dist/core/PacketBuilder.js +20 -35
  142. package/dist/core/PacketBuilder.js.map +1 -1
  143. package/dist/core/PacketBuilder.sql +24 -6
  144. package/dist/core/PatternSelection.d.ts +1 -1
  145. package/dist/core/PatternSelection.d.ts.map +1 -1
  146. package/dist/core/ProposalLifecycle.d.ts +3 -1
  147. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  148. package/dist/core/ProposalLifecycle.js +93 -28
  149. package/dist/core/ProposalLifecycle.js.map +1 -1
  150. package/dist/core/ProviderInstantiate.d.ts +1 -0
  151. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  152. package/dist/core/ProviderInstantiate.js +12 -7
  153. package/dist/core/ProviderInstantiate.js.map +1 -1
  154. package/dist/core/ReasoningView.d.ts +1 -2
  155. package/dist/core/ReasoningView.d.ts.map +1 -1
  156. package/dist/core/ReasoningView.js +9 -20
  157. package/dist/core/ReasoningView.js.map +1 -1
  158. package/dist/core/ResourceBindings.d.ts.map +1 -1
  159. package/dist/core/ResourceBindings.js +5 -4
  160. package/dist/core/ResourceBindings.js.map +1 -1
  161. package/dist/core/ResourceMutations.d.ts +4 -4
  162. package/dist/core/ResourceMutations.d.ts.map +1 -1
  163. package/dist/core/ResourceMutations.js +2 -3
  164. package/dist/core/ResourceMutations.js.map +1 -1
  165. package/dist/core/ResourceSelector.d.ts +10 -3
  166. package/dist/core/ResourceSelector.d.ts.map +1 -1
  167. package/dist/core/ResourceSelector.js +52 -13
  168. package/dist/core/ResourceSelector.js.map +1 -1
  169. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  170. package/dist/core/ResourceTransfers.js +4 -2
  171. package/dist/core/ResourceTransfers.js.map +1 -1
  172. package/dist/core/RuntimeWorker.d.ts.map +1 -1
  173. package/dist/core/RuntimeWorker.js +6 -1
  174. package/dist/core/RuntimeWorker.js.map +1 -1
  175. package/dist/core/RuntimeWorker.sql +7 -1
  176. package/dist/core/SchemeRegistry.d.ts +2 -0
  177. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  178. package/dist/core/SchemeRegistry.js +12 -6
  179. package/dist/core/SchemeRegistry.js.map +1 -1
  180. package/dist/core/StoredPacket.d.ts +3 -1
  181. package/dist/core/StoredPacket.d.ts.map +1 -1
  182. package/dist/core/StoredPacket.js +7 -3
  183. package/dist/core/StoredPacket.js.map +1 -1
  184. package/dist/core/StrikeRail.d.ts +2 -2
  185. package/dist/core/StrikeRail.d.ts.map +1 -1
  186. package/dist/core/StrikeRail.js +15 -7
  187. package/dist/core/StrikeRail.js.map +1 -1
  188. package/dist/core/TerminalResult.d.ts +2 -2
  189. package/dist/core/TerminalResult.d.ts.map +1 -1
  190. package/dist/core/TerminalResult.js +15 -8
  191. package/dist/core/TerminalResult.js.map +1 -1
  192. package/dist/core/ToolInputSchema.d.ts.map +1 -1
  193. package/dist/core/ToolInputSchema.js +24 -8
  194. package/dist/core/ToolInputSchema.js.map +1 -1
  195. package/dist/core/ToolResources.d.ts +1 -0
  196. package/dist/core/ToolResources.d.ts.map +1 -1
  197. package/dist/core/ToolResources.js +50 -26
  198. package/dist/core/ToolResources.js.map +1 -1
  199. package/dist/core/Turn.d.ts +3 -1
  200. package/dist/core/Turn.d.ts.map +1 -1
  201. package/dist/core/Turn.js +4 -1
  202. package/dist/core/Turn.js.map +1 -1
  203. package/dist/core/Turn.sql +14 -2
  204. package/dist/core/TurnDispositionHandler.d.ts +13 -23
  205. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  206. package/dist/core/TurnDispositionHandler.js +30 -180
  207. package/dist/core/TurnDispositionHandler.js.map +1 -1
  208. package/dist/core/TurnMaterialization.d.ts +9 -7
  209. package/dist/core/TurnMaterialization.d.ts.map +1 -1
  210. package/dist/core/TurnMaterialization.js +66 -46
  211. package/dist/core/TurnMaterialization.js.map +1 -1
  212. package/dist/core/TurnMaterialization.sql +23 -6
  213. package/dist/core/TurnOps.d.ts.map +1 -1
  214. package/dist/core/TurnOps.js +2 -2
  215. package/dist/core/TurnOps.js.map +1 -1
  216. package/dist/core/TurnRunner.d.ts +2 -8
  217. package/dist/core/TurnRunner.d.ts.map +1 -1
  218. package/dist/core/TurnRunner.js +1116 -1123
  219. package/dist/core/TurnRunner.js.map +1 -1
  220. package/dist/core/TurnRunner.sql +1 -24
  221. package/dist/core/TurnSources.sql +42 -11
  222. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  223. package/dist/core/WorkerControlHandler.js +23 -0
  224. package/dist/core/WorkerControlHandler.js.map +1 -1
  225. package/dist/core/WorkerName.d.ts +3 -6
  226. package/dist/core/WorkerName.d.ts.map +1 -1
  227. package/dist/core/WorkerName.js +10 -26
  228. package/dist/core/WorkerName.js.map +1 -1
  229. package/dist/core/WorkspaceGate.js +4 -4
  230. package/dist/core/WorkspaceGate.js.map +1 -1
  231. package/dist/core/ambient.sql +45 -19
  232. package/dist/core/attachments.d.ts +3 -1
  233. package/dist/core/attachments.d.ts.map +1 -1
  234. package/dist/core/attachments.js +4 -0
  235. package/dist/core/attachments.js.map +1 -1
  236. package/dist/core/caps/CoreInteractionCaps.d.ts +1 -1
  237. package/dist/core/caps/CoreInteractionCaps.d.ts.map +1 -1
  238. package/dist/core/caps/CoreInteractionCaps.js +4 -2
  239. package/dist/core/caps/CoreInteractionCaps.js.map +1 -1
  240. package/dist/core/caps/DbChannelCaps.js +6 -6
  241. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  242. package/dist/core/caps/DbEntryCaps.js +1 -1
  243. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  244. package/dist/core/caps/DbMessageCaps.d.ts +10 -0
  245. package/dist/core/caps/DbMessageCaps.d.ts.map +1 -0
  246. package/dist/core/caps/DbMessageCaps.js +39 -0
  247. package/dist/core/caps/DbMessageCaps.js.map +1 -0
  248. package/dist/core/caps/DbProjectionCaps.d.ts +2 -2
  249. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  250. package/dist/core/caps/DbProjectionCaps.js +10 -4
  251. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  252. package/dist/core/caps/SchemeCtxImpl.d.ts +3 -1
  253. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  254. package/dist/core/caps/SchemeCtxImpl.js +11 -0
  255. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  256. package/dist/core/env-catalog.d.ts +28 -0
  257. package/dist/core/env-catalog.d.ts.map +1 -0
  258. package/dist/core/env-catalog.js +99 -0
  259. package/dist/core/env-catalog.js.map +1 -0
  260. package/dist/core/file-materialization.js +1 -1
  261. package/dist/core/file-materialization.js.map +1 -1
  262. package/dist/core/fork.sql +7 -6
  263. package/dist/core/git-state.d.ts +3 -2
  264. package/dist/core/git-state.d.ts.map +1 -1
  265. package/dist/core/git-state.js +38 -21
  266. package/dist/core/git-state.js.map +1 -1
  267. package/dist/core/operation-target-groups.d.ts.map +1 -1
  268. package/dist/core/operation-target-groups.js +2 -1
  269. package/dist/core/operation-target-groups.js.map +1 -1
  270. package/dist/core/packet-inject.js +1 -1
  271. package/dist/core/packet-wire.d.ts +11 -0
  272. package/dist/core/packet-wire.d.ts.map +1 -1
  273. package/dist/core/packet-wire.js +382 -333
  274. package/dist/core/packet-wire.js.map +1 -1
  275. package/dist/core/plurnk-uri.d.ts +4 -5
  276. package/dist/core/plurnk-uri.d.ts.map +1 -1
  277. package/dist/core/plurnk-uri.js +10 -31
  278. package/dist/core/plurnk-uri.js.map +1 -1
  279. package/dist/core/scheme-types.d.ts +3 -1
  280. package/dist/core/scheme-types.d.ts.map +1 -1
  281. package/dist/core/scheme-types.js +1 -1
  282. package/dist/core/scheme-types.js.map +1 -1
  283. package/dist/core/teaching.d.ts.map +1 -1
  284. package/dist/core/teaching.js +2 -1
  285. package/dist/core/teaching.js.map +1 -1
  286. package/dist/core/types.d.ts +1 -2
  287. package/dist/core/types.d.ts.map +1 -1
  288. package/dist/core/types.js +1 -1
  289. package/dist/core/types.js.map +1 -1
  290. package/dist/core/worker-ops.sql +3 -8
  291. package/dist/digest/Digest.d.ts.map +1 -1
  292. package/dist/digest/Digest.js +37 -30
  293. package/dist/digest/Digest.js.map +1 -1
  294. package/dist/digest/DigestRender.d.ts +2 -0
  295. package/dist/digest/DigestRender.d.ts.map +1 -1
  296. package/dist/digest/DigestRender.js +97 -9
  297. package/dist/digest/DigestRender.js.map +1 -1
  298. package/dist/digest/DigestRequiem.d.ts.map +1 -1
  299. package/dist/digest/DigestRequiem.js +13 -15
  300. package/dist/digest/DigestRequiem.js.map +1 -1
  301. package/dist/digest/digest-db.d.ts +3 -0
  302. package/dist/digest/digest-db.d.ts.map +1 -0
  303. package/dist/digest/digest-db.js +68 -0
  304. package/dist/digest/digest-db.js.map +1 -0
  305. package/dist/digest/digest-paths.d.ts +6 -0
  306. package/dist/digest/digest-paths.d.ts.map +1 -0
  307. package/dist/digest/digest-paths.js +23 -0
  308. package/dist/digest/digest-paths.js.map +1 -0
  309. package/dist/digest/digest-rows.d.ts +21 -0
  310. package/dist/digest/digest-rows.d.ts.map +1 -1
  311. package/dist/digest/digest.sql +24 -5
  312. package/dist/index.d.ts +0 -1
  313. package/dist/index.d.ts.map +1 -1
  314. package/dist/index.js +0 -1
  315. package/dist/index.js.map +1 -1
  316. package/dist/observe/genai.d.ts +2 -2
  317. package/dist/observe/genai.d.ts.map +1 -1
  318. package/dist/observe/genai.js +15 -5
  319. package/dist/observe/genai.js.map +1 -1
  320. package/dist/schemes/EffectPolicy.d.ts +0 -2
  321. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  322. package/dist/schemes/EffectPolicy.js +25 -36
  323. package/dist/schemes/EffectPolicy.js.map +1 -1
  324. package/dist/schemes/Exec.d.ts +4 -5
  325. package/dist/schemes/Exec.d.ts.map +1 -1
  326. package/dist/schemes/Exec.js +129 -82
  327. package/dist/schemes/Exec.js.map +1 -1
  328. package/dist/schemes/ExecOutputScheme.d.ts +6 -5
  329. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  330. package/dist/schemes/ExecOutputScheme.js +49 -16
  331. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  332. package/dist/schemes/ExecScheduler.js +2 -2
  333. package/dist/schemes/ExecScheduler.js.map +1 -1
  334. package/dist/schemes/File.d.ts.map +1 -1
  335. package/dist/schemes/File.js +30 -21
  336. package/dist/schemes/File.js.map +1 -1
  337. package/dist/schemes/Log.d.ts +4 -4
  338. package/dist/schemes/Log.d.ts.map +1 -1
  339. package/dist/schemes/Log.js +30 -10
  340. package/dist/schemes/Log.js.map +1 -1
  341. package/dist/schemes/QuestionTool.d.ts.map +1 -1
  342. package/dist/schemes/QuestionTool.js +15 -2
  343. package/dist/schemes/QuestionTool.js.map +1 -1
  344. package/dist/schemes/TurnSource.d.ts +3 -2
  345. package/dist/schemes/TurnSource.d.ts.map +1 -1
  346. package/dist/schemes/TurnSource.js +87 -41
  347. package/dist/schemes/TurnSource.js.map +1 -1
  348. package/dist/schemes/Worker.d.ts.map +1 -1
  349. package/dist/schemes/Worker.js +22 -56
  350. package/dist/schemes/Worker.js.map +1 -1
  351. package/dist/schemes/_entry-crud.js +6 -6
  352. package/dist/schemes/_entry-crud.js.map +1 -1
  353. package/dist/schemes/_entry-crud.sql +37 -17
  354. package/dist/schemes/_entry-find.d.ts.map +1 -1
  355. package/dist/schemes/_entry-find.js +6 -5
  356. package/dist/schemes/_entry-find.js.map +1 -1
  357. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  358. package/dist/schemes/_entry-fts.js +6 -3
  359. package/dist/schemes/_entry-fts.js.map +1 -1
  360. package/dist/schemes/_entry-fts.sql +25 -6
  361. package/dist/schemes/_entry-manifest.d.ts +1 -1
  362. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  363. package/dist/schemes/_entry-manifest.js +10 -17
  364. package/dist/schemes/_entry-manifest.js.map +1 -1
  365. package/dist/schemes/_entry-manifest.sql +1 -1
  366. package/dist/schemes/_entry-ops.js +4 -4
  367. package/dist/schemes/_entry-ops.js.map +1 -1
  368. package/dist/schemes/_entry-ops.sql +2 -2
  369. package/dist/schemes/_entry-readable.d.ts.map +1 -1
  370. package/dist/schemes/_entry-readable.js +5 -4
  371. package/dist/schemes/_entry-readable.js.map +1 -1
  372. package/dist/schemes/_entry-send.js +2 -2
  373. package/dist/schemes/_entry-send.js.map +1 -1
  374. package/dist/schemes/_search-exclusion.d.ts +1 -0
  375. package/dist/schemes/_search-exclusion.d.ts.map +1 -1
  376. package/dist/schemes/_search-exclusion.js +12 -0
  377. package/dist/schemes/_search-exclusion.js.map +1 -1
  378. package/dist/schemes/_search-index.d.ts +5 -1
  379. package/dist/schemes/_search-index.d.ts.map +1 -1
  380. package/dist/schemes/_search-index.js +99 -59
  381. package/dist/schemes/_search-index.js.map +1 -1
  382. package/dist/schemes/_search-index.sql +17 -0
  383. package/dist/schemes/exec-abort.d.ts.map +1 -1
  384. package/dist/schemes/exec-abort.js +5 -4
  385. package/dist/schemes/exec-abort.js.map +1 -1
  386. package/dist/schemes/exec-env.d.ts +3 -0
  387. package/dist/schemes/exec-env.d.ts.map +1 -1
  388. package/dist/schemes/exec-env.js +66 -15
  389. package/dist/schemes/exec-env.js.map +1 -1
  390. package/dist/schemes/exec-lifetime.d.ts +11 -0
  391. package/dist/schemes/exec-lifetime.d.ts.map +1 -0
  392. package/dist/schemes/exec-lifetime.js +29 -0
  393. package/dist/schemes/exec-lifetime.js.map +1 -0
  394. package/dist/schemes/exec-runtime.d.ts +1 -1
  395. package/dist/schemes/exec-runtime.d.ts.map +1 -1
  396. package/dist/schemes/exec-runtime.js +1 -1
  397. package/dist/schemes/exec-runtime.js.map +1 -1
  398. package/dist/server/ClientReads.d.ts.map +1 -1
  399. package/dist/server/ClientReads.js +5 -2
  400. package/dist/server/ClientReads.js.map +1 -1
  401. package/dist/server/Daemon.d.ts +31 -7
  402. package/dist/server/Daemon.d.ts.map +1 -1
  403. package/dist/server/Daemon.js +137 -60
  404. package/dist/server/Daemon.js.map +1 -1
  405. package/dist/server/DaemonModule.d.ts +25 -6
  406. package/dist/server/DaemonModule.d.ts.map +1 -1
  407. package/dist/server/DrainSupervisor.d.ts +13 -11
  408. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  409. package/dist/server/DrainSupervisor.js +87 -98
  410. package/dist/server/DrainSupervisor.js.map +1 -1
  411. package/dist/server/EnvFunctionality.d.ts +52 -0
  412. package/dist/server/EnvFunctionality.d.ts.map +1 -0
  413. package/dist/server/EnvFunctionality.js +199 -0
  414. package/dist/server/EnvFunctionality.js.map +1 -0
  415. package/dist/server/Functionality.d.ts +4 -2
  416. package/dist/server/Functionality.d.ts.map +1 -1
  417. package/dist/server/Functionality.js +250 -106
  418. package/dist/server/Functionality.js.map +1 -1
  419. package/dist/server/FunctionalityManager.d.ts +5 -1
  420. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  421. package/dist/server/FunctionalityManager.js +24 -8
  422. package/dist/server/FunctionalityManager.js.map +1 -1
  423. package/dist/server/HttpListener.d.ts +16 -0
  424. package/dist/server/HttpListener.d.ts.map +1 -0
  425. package/dist/server/HttpListener.js +81 -0
  426. package/dist/server/HttpListener.js.map +1 -0
  427. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  428. package/dist/server/MembersFunctionality.js +12 -17
  429. package/dist/server/MembersFunctionality.js.map +1 -1
  430. package/dist/server/PlurnkSkill.d.ts.map +1 -1
  431. package/dist/server/PlurnkSkill.js +1 -0
  432. package/dist/server/PlurnkSkill.js.map +1 -1
  433. package/dist/server/Retention.d.ts +14 -0
  434. package/dist/server/Retention.d.ts.map +1 -1
  435. package/dist/server/Retention.js +52 -4
  436. package/dist/server/Retention.js.map +1 -1
  437. package/dist/server/Retention.sql +55 -1
  438. package/dist/server/ServiceModules.d.ts.map +1 -1
  439. package/dist/server/ServiceModules.js +2 -0
  440. package/dist/server/ServiceModules.js.map +1 -1
  441. package/dist/server/SkillsFunctionality.d.ts +2 -0
  442. package/dist/server/SkillsFunctionality.d.ts.map +1 -1
  443. package/dist/server/SkillsFunctionality.js +27 -17
  444. package/dist/server/SkillsFunctionality.js.map +1 -1
  445. package/dist/server/WorkspaceCapabilities.d.ts.map +1 -1
  446. package/dist/server/WorkspaceCapabilities.js +1 -0
  447. package/dist/server/WorkspaceCapabilities.js.map +1 -1
  448. package/dist/server/WorkspaceResidency.d.ts +2 -0
  449. package/dist/server/WorkspaceResidency.d.ts.map +1 -1
  450. package/dist/server/WorkspaceResidency.js +27 -0
  451. package/dist/server/WorkspaceResidency.js.map +1 -1
  452. package/dist/server/WorkspaceStorage.d.ts +8 -0
  453. package/dist/server/WorkspaceStorage.d.ts.map +1 -0
  454. package/dist/server/WorkspaceStorage.js +26 -0
  455. package/dist/server/WorkspaceStorage.js.map +1 -0
  456. package/dist/server/client-input.d.ts +4 -3
  457. package/dist/server/client-input.d.ts.map +1 -1
  458. package/dist/server/client-input.js +25 -27
  459. package/dist/server/client-input.js.map +1 -1
  460. package/dist/server/dispatch-as-plurnk.js +2 -2
  461. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  462. package/dist/server/drain.sql +69 -132
  463. package/dist/server/envelope.d.ts +2 -3
  464. package/dist/server/envelope.d.ts.map +1 -1
  465. package/dist/server/envelope.js +7 -21
  466. package/dist/server/envelope.js.map +1 -1
  467. package/dist/server/envelope.sql +10 -6
  468. package/dist/server/exec-poll-backoff.js +3 -3
  469. package/dist/server/exec-poll-backoff.js.map +1 -1
  470. package/dist/server/lifecycle-recovery.sql +12 -38
  471. package/dist/server/logEntry.sql +2 -2
  472. package/dist/server/loopDocs.js +3 -3
  473. package/dist/server/loopDocs.sql +4 -2
  474. package/dist/server/model-catalog.d.ts.map +1 -1
  475. package/dist/server/model-catalog.js +2 -2
  476. package/dist/server/model-catalog.js.map +1 -1
  477. package/dist/server/seam-loop.sql +0 -1
  478. package/dist/server/workspace-capabilities.sql +45 -0
  479. package/dist/server/workspace-storage.sql +8 -0
  480. package/dist/service.d.ts.map +1 -1
  481. package/dist/service.js +37 -11
  482. package/dist/service.js.map +1 -1
  483. package/docs/copy-move.md +31 -0
  484. package/docs/env.md +67 -0
  485. package/docs/members.md +4 -4
  486. package/docs/skills.md +2 -2
  487. package/migrations/002_workers.sql +41 -17
  488. package/migrations/003_loops.sql +82 -28
  489. package/migrations/004_inference.sql +53 -12
  490. package/migrations/005_entries.sql +135 -14
  491. package/migrations/006_log.sql +79 -24
  492. package/migrations/007_subscriptions.sql +10 -15
  493. package/package.json +45 -36
  494. package/dist/core/PromptFrames.d.ts +0 -12
  495. package/dist/core/PromptFrames.d.ts.map +0 -1
  496. package/dist/core/PromptFrames.js +0 -28
  497. package/dist/core/PromptFrames.js.map +0 -1
  498. package/dist/schemes/Prompt.d.ts +0 -8
  499. package/dist/schemes/Prompt.d.ts.map +0 -1
  500. package/dist/schemes/Prompt.js +0 -25
  501. package/dist/schemes/Prompt.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-readable.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-readable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,cAAc;IACrC,MAAM,CAAC,QAAQ,CAAC,QAAQ,mBAAmB;IAE3C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzC;IAID,OAAa,IAAI,CACb,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAmBf;CACJ"}
1
+ {"version":3,"file":"_entry-readable.d.ts","sourceRoot":"","sources":["../../src/schemes/_entry-readable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAOnE,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,QAAQ,CAAC,OAAO,cAAc;IACrC,MAAM,CAAC,QAAQ,CAAC,QAAQ,mBAAmB;IAE3C,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzC;IAID,OAAa,IAAI,CACb,GAAG,EAAE,mBAAmB,EACxB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAoBf;CACJ"}
@@ -15,8 +15,7 @@ export default class EntryReadable {
15
15
  if (channel !== defaultChannel || EntryReadable.isDerived(channel))
16
16
  return;
17
17
  const { db, mimetypes, weigh } = ctx;
18
- // Administrative writes (prompt frames, drains) carry no registry and write text that
19
- // never projects; the sibling is a registry-backed fact, so without one nothing is derived.
18
+ // The readable sibling is registry-backed; a context without mimetypes cannot derive it.
20
19
  if (mimetypes === undefined)
21
20
  return;
22
21
  if (weigh === undefined)
@@ -26,13 +25,15 @@ export default class EntryReadable {
26
25
  await db.crud_delete_readable_channel.run({ entry_id: entryId });
27
26
  return;
28
27
  }
29
- await db.crud_upsert_readable_channel.run({
28
+ const readable = {
30
29
  entry_id: entryId,
31
30
  content: projected.content,
32
31
  mimetype: EntryReadable.MIMETYPE,
33
32
  weight: weigh(projected.content),
34
33
  content_hash: contentHash(projected.content),
35
- });
34
+ };
35
+ await db.crud_insert_readable_channel.run(readable);
36
+ await db.crud_refresh_readable_channel.run(readable);
36
37
  }
37
38
  }
38
39
  //# sourceMappingURL=_entry-readable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-readable.js","sourceRoot":"","sources":["../../src/schemes/_entry-readable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,6FAA6F;AAC7F,4FAA4F;AAC5F,4FAA4F;AAC5F,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAU,OAAO,GAAG,UAAU,CAAC;IACrC,MAAM,CAAU,QAAQ,GAAG,eAAe,CAAC;IAE3C,MAAM,CAAC,SAAS,CAAC,OAAe;QAC5B,OAAO,OAAO,KAAK,aAAa,CAAC,OAAO,CAAC;IAC7C,CAAC;IAED,2FAA2F;IAC3F,6EAA6E;IAC7E,MAAM,CAAC,KAAK,CAAC,IAAI,CACb,GAAwB,EACxB,OAAe,EACf,OAAe,EACf,cAAsB,EACtB,OAAe,EACf,QAAgB;QAEhB,IAAI,OAAO,KAAK,cAAc,IAAI,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,OAAO;QAC3E,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACrC,sFAAsF;QACtF,4FAA4F;QAC5F,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QACpC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;QACrH,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7G,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACtD,MAAM,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YACjE,OAAO;QACX,CAAC;QACD,MAAM,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC;YACtC,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC;YAChC,YAAY,EAAE,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC;SAC/C,CAAC,CAAC;IACP,CAAC;CACJ"}
1
+ {"version":3,"file":"_entry-readable.js","sourceRoot":"","sources":["../../src/schemes/_entry-readable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,6FAA6F;AAC7F,4FAA4F;AAC5F,4FAA4F;AAC5F,uEAAuE;AACvE,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAU,OAAO,GAAG,UAAU,CAAC;IACrC,MAAM,CAAU,QAAQ,GAAG,eAAe,CAAC;IAE3C,MAAM,CAAC,SAAS,CAAC,OAAe;QAC5B,OAAO,OAAO,KAAK,aAAa,CAAC,OAAO,CAAC;IAC7C,CAAC;IAED,2FAA2F;IAC3F,6EAA6E;IAC7E,MAAM,CAAC,KAAK,CAAC,IAAI,CACb,GAAwB,EACxB,OAAe,EACf,OAAe,EACf,cAAsB,EACtB,OAAe,EACf,QAAgB;QAEhB,IAAI,OAAO,KAAK,cAAc,IAAI,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC;YAAE,OAAO;QAC3E,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACrC,yFAAyF;QACzF,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QACpC,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;QACrH,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,SAAS,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC7G,IAAI,SAAS,KAAK,IAAI,IAAI,SAAS,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YACtD,MAAM,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YACjE,OAAO;QACX,CAAC;QACD,MAAM,QAAQ,GAAG;YACb,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,QAAQ,EAAE,aAAa,CAAC,QAAQ;YAChC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC;YAChC,YAAY,EAAE,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC;SAC/C,CAAC;QACF,MAAM,EAAE,CAAC,4BAA4B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,EAAE,CAAC,6BAA6B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzD,CAAC;CACJ"}
@@ -11,9 +11,9 @@ export default class EntrySend {
11
11
  retryable: false,
12
12
  });
13
13
  }
14
- return failure("message-not-implemented", 501, `The '${scheme}' entry scheme carries no messages.`, {}, {
14
+ return failure("message-not-implemented", 501, `SEND does not deliver messages to ${scheme} entries.`, {}, {
15
15
  // {§send-target-recipient}
16
- recovery: "SEND targets a recipient, such as worker://<name>. Omit its target to message the user. KILL removes a resource.",
16
+ recovery: "To reply, SEND to an Open Message address or omit the target. SEND (worker://<name>) sends a new message.",
17
17
  retryable: false,
18
18
  }); // {§send-dispatch-entry-schemes-501}
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,oEAAoE;AAIpE,OAAO,OAA8B,MAAM,oBAAoB,CAAC;AAIhE,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAwB,EAAE,GAAwB,EAAE,QAAwB;QAC1G,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,IAAI,CAAC;QACtD,MAAM,OAAO,GAAG,CACZ,IAAY,EACZ,MAAc,EACd,MAAc,EACd,MAAM,GAAsC,EAAE,EAC9C,UAAU,GAAsC,EAAE,EACxC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/F,IAAI,SAAS,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC5B,OAAO,OAAO,CACV,iBAAiB,EACjB,GAAG,EACH,uCAAuC,EACvC,EAAE,EACF;gBACI,QAAQ,EAAE,0BAA0B;gBACpC,SAAS,EAAE,KAAK;aACnB,CACJ,CAAC;QACN,CAAC;QAED,OAAO,OAAO,CACV,yBAAyB,EACzB,GAAG,EACH,QAAQ,MAAM,qCAAqC,EACnD,EAAE,EACF;YACI,2BAA2B;YAC3B,QAAQ,EAAE,kHAAkH;YAC5H,SAAS,EAAE,KAAK;SACnB,CACJ,CAAC,CAAC,qCAAqC;IAC5C,CAAC;CACJ"}
1
+ {"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,oEAAoE;AAIpE,OAAO,OAA8B,MAAM,oBAAoB,CAAC;AAIhE,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAwB,EAAE,GAAwB,EAAE,QAAwB;QAC1G,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,IAAI,CAAC;QACtD,MAAM,OAAO,GAAG,CACZ,IAAY,EACZ,MAAc,EACd,MAAc,EACd,MAAM,GAAsC,EAAE,EAC9C,UAAU,GAAsC,EAAE,EACxC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/F,IAAI,SAAS,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC5B,OAAO,OAAO,CACV,iBAAiB,EACjB,GAAG,EACH,uCAAuC,EACvC,EAAE,EACF;gBACI,QAAQ,EAAE,0BAA0B;gBACpC,SAAS,EAAE,KAAK;aACnB,CACJ,CAAC;QACN,CAAC;QAED,OAAO,OAAO,CACV,yBAAyB,EACzB,GAAG,EACH,qCAAqC,MAAM,WAAW,EACtD,EAAE,EACF;YACI,2BAA2B;YAC3B,QAAQ,EAAE,2GAA2G;YACrH,SAAS,EAAE,KAAK;SACnB,CACJ,CAAC,CAAC,qCAAqC;IAC5C,CAAC;CACJ"}
@@ -3,5 +3,6 @@ type SearchIdentity = {
3
3
  pathname: string;
4
4
  };
5
5
  export default function matchSearchExclusion({ scheme, pathname }: SearchIdentity): string | undefined;
6
+ export declare function sizeExclusion(contentLength: number): string | undefined;
6
7
  export {};
7
8
  //# sourceMappingURL=_search-exclusion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_search-exclusion.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAMrG"}
1
+ {"version":3,"file":"_search-exclusion.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAMrG;AAID,wBAAgB,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQvE"}
@@ -20,4 +20,16 @@ export default function matchSearchExclusion({ scheme, pathname }) {
20
20
  const basename = pathname.slice(pathname.lastIndexOf("/") + 1);
21
21
  return compile(raw).find(({ source, regex }) => regex.test(source.includes("/") ? pathname : basename))?.source;
22
22
  }
23
+ // {§search-size-bound} — a body larger than PLURNK_SERVICE_SEARCH_MAX_BYTES is never parsed or
24
+ // full-text indexed. Empty (the default) = unbounded. The reason names the bound.
25
+ export function sizeExclusion(contentLength) {
26
+ const raw = process.env.PLURNK_SERVICE_SEARCH_MAX_BYTES;
27
+ if (raw === undefined || raw.trim() === "")
28
+ return undefined;
29
+ const bound = Number(raw);
30
+ if (!Number.isSafeInteger(bound) || bound <= 0) {
31
+ throw new RangeError(`PLURNK_SERVICE_SEARCH_MAX_BYTES must be a positive integer or empty; got ${JSON.stringify(raw)}`);
32
+ }
33
+ return contentLength > bound ? `larger than ${bound} bytes` : undefined;
34
+ }
23
35
  //# sourceMappingURL=_search-exclusion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_search-exclusion.js","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA+C,CAAC;AAErE,SAAS,OAAO,CAAC,GAAW;IACxB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;SAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;SACrC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzB,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAkB;IAC7E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;AACpH,CAAC"}
1
+ {"version":3,"file":"_search-exclusion.js","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA+C,CAAC;AAErE,SAAS,OAAO,CAAC,GAAW;IACxB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;SAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;SACrC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzB,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAkB;IAC7E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;AACpH,CAAC;AAED,+FAA+F;AAC/F,kFAAkF;AAClF,MAAM,UAAU,aAAa,CAAC,aAAqB;IAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC;IACxD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,UAAU,CAAC,4EAA4E,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;IACD,OAAO,aAAa,GAAG,KAAK,CAAC,CAAC,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC"}
@@ -1,8 +1,12 @@
1
1
  import type { PlurnkSchemeContext } from "../core/scheme-types.ts";
2
+ export type MaintenanceReport = {
3
+ derived: number;
4
+ acquiredBytes: number;
5
+ };
2
6
  export default class SearchIndex {
3
7
  #private;
4
8
  static progressHeartbeatMs(): number;
5
9
  static producerConcurrency(): number;
6
- static maintain(ctx: PlurnkSchemeContext): Promise<number>;
10
+ static maintain(ctx: PlurnkSchemeContext): Promise<MaintenanceReport>;
7
11
  }
8
12
  //# sourceMappingURL=_search-index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"_search-index.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAmDnE,MAAM,CAAC,OAAO,OAAO,WAAW;;IAsH5B,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAMnC;IAED,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAWnC;IAWD,OAAa,QAAQ,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CA+N/D;CAEJ"}
1
+ {"version":3,"file":"_search-index.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAyBnE,MAAM,MAAM,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAAC;AAoC3E,MAAM,CAAC,OAAO,OAAO,WAAW;;IA0H5B,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAMnC;IAED,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAWnC;IAWD,OAAa,QAAQ,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAqP1E;CAEJ"}
@@ -9,7 +9,8 @@ import EntryFts from "./_entry-fts.js";
9
9
  import LogBody from "../core/LogBody.js";
10
10
  import LogEntryProjection from "../core/LogEntryProjection.js";
11
11
  import LogVisibility from "../core/LogVisibility.js";
12
- import matchSearchExclusion from "./_search-exclusion.js";
12
+ import matchSearchExclusion, { sizeExclusion } from "./_search-exclusion.js";
13
+ import { contentHash } from "../core/content-hash.js";
13
14
  const NO_PROJECTION_IDENTITY = "projection:none";
14
15
  export default class SearchIndex {
15
16
  // The index materializes one immutable artifact per exact READ representation and
@@ -35,29 +36,30 @@ export default class SearchIndex {
35
36
  const { db, mimetypes } = ctx;
36
37
  if (mimetypes === undefined)
37
38
  throw new Error("deriveOne: ctx.mimetypes is required");
38
- const attach = async () => {
39
+ // Attach while the channel still denotes the derived representation: by its stored identity
40
+ // when it has one, by the exact body otherwise ({§derivation-dedup-parallel}).
41
+ const attach = async (content) => {
39
42
  if (r.attachment === "entry-channel") {
40
- await db.crud_attach_channel_derivation.run({
41
- entry_id: r.id,
42
- scheme: r.scheme,
43
- authority: r.authority,
44
- pathname: r.pathname,
45
- channel: r.channel,
46
- content: r.content,
47
- mimetype: r.mimetype,
48
- deep_hash: hash,
49
- });
43
+ const identity = { entry_id: r.id, scheme: r.scheme, authority: r.authority, pathname: r.pathname, channel: r.channel, mimetype: r.mimetype, deep_hash: hash };
44
+ if (r.hashed) {
45
+ await db.crud_attach_channel_derivation_by_hash.run({ ...identity, content_hash: r.contentHash });
46
+ return;
47
+ }
48
+ const body = content ?? await r.body();
49
+ if (body === null)
50
+ return;
51
+ await db.crud_attach_channel_derivation.run({ ...identity, content: body });
50
52
  }
51
53
  else if (r.attachment === "log") {
52
54
  await db.log_set_deep_hash.run({ log_entry_id: r.id, deep_hash: hash, folded: r.folded });
53
55
  }
54
56
  else {
55
- await db.turn_source_attach_derivation.run({ turn_id: r.id, kind: r.kind, deep_hash: hash });
57
+ await db.turn_source_attach_derivation.run({ turn_id: r.id, kind: r.kind, sequence: r.sequence, deep_hash: hash });
56
58
  }
57
59
  };
58
60
  let artifact = await db.derivation_get.get({ deep_hash: hash });
59
61
  if (artifact?.state === "complete") {
60
- await attach();
62
+ await attach(null);
61
63
  return;
62
64
  }
63
65
  if (artifact === undefined) {
@@ -66,6 +68,11 @@ export default class SearchIndex {
66
68
  if (artifact === undefined)
67
69
  throw new Error(`failed to create derivation artifact ${hash}`);
68
70
  const derivationId = artifact.id;
71
+ // The body crosses into the process here and nowhere earlier; a representation that moved
72
+ // on since it was judged leaves the artifact building for the next pass to judge afresh.
73
+ const content = await r.body();
74
+ if (content === null)
75
+ return;
69
76
  let parseIssues = null;
70
77
  let summary = null;
71
78
  const attachComplete = async (disposition, reason = null) => {
@@ -76,18 +83,18 @@ export default class SearchIndex {
76
83
  parse_issues: parseIssues,
77
84
  summary,
78
85
  });
79
- await attach();
86
+ await attach(content);
80
87
  };
81
- const wantGraph = r.content.length > 0 && !binary;
88
+ const wantGraph = content.length > 0 && !binary;
82
89
  if (!wantGraph) {
83
90
  await EntryGraph.populateFrom(db, derivationId, [], []);
84
91
  await EntryFts.index(db, derivationId, "");
85
- await attachComplete(searchExcluded === undefined ? "unsearchable" : "excluded", searchExcluded ?? (r.content.length === 0 ? "empty" : "binary"));
92
+ await attachComplete(searchExcluded === undefined ? "unsearchable" : "excluded", searchExcluded ?? (content.length === 0 ? "empty" : "binary"));
86
93
  return;
87
94
  }
88
95
  let result;
89
96
  try {
90
- result = await mimetypes.process({ content: r.content, hint: r.mimetype, path: r.pathname }, {
97
+ result = await mimetypes.process({ content, hint: r.mimetype, path: r.pathname }, {
91
98
  channels: searchExcluded === undefined ? ["symbols", "references"] : [],
92
99
  summary: true,
93
100
  });
@@ -127,7 +134,7 @@ export default class SearchIndex {
127
134
  // mislabeled as one malformed resource.
128
135
  await EntryGraph.populateFrom(db, derivationId, result.symbols ?? [], result.references ?? []);
129
136
  // Index exactly the addressed READ representation.
130
- await EntryFts.index(db, derivationId, r.content);
137
+ await EntryFts.index(db, derivationId, content);
131
138
  await attachComplete("indexed");
132
139
  }
133
140
  static progressHeartbeatMs() {
@@ -167,11 +174,25 @@ export default class SearchIndex {
167
174
  // Validate global graph persistence tuning before resource-local
168
175
  // derivation containment can classify a handler failure.
169
176
  EntryGraph.storeBatch();
170
- const entryRows = await db.engine_list_workspace_entries.all({ workspace_id: workspaceId });
177
+ // {§derivation-dedup-parallel} — entry channels are judged from stored identity: the
178
+ // candidate statement carries no body, and a body crosses into the process only for a
179
+ // derivation that runs, or for a channel with no stored identity (a stream), which must be
180
+ // read to be judged. Log rows and turn sources still arrive whole.
181
+ let acquiredBytes = 0;
182
+ const candidates = await db.search_index_entry_candidates.all({ workspace_id: workspaceId });
183
+ const acquire = async (entryId, channel, storedHash) => {
184
+ const row = await db.search_index_entry_body.get({ entry_id: entryId, channel, content_hash: storedHash });
185
+ if (row === undefined)
186
+ return null;
187
+ acquiredBytes += row.content.length;
188
+ return row.content;
189
+ };
171
190
  const logRows = await db.log_derivation_rows.all({ workspace_id: workspaceId });
191
+ for (const row of logRows)
192
+ acquiredBytes += row.tx.length + row.rx.length;
172
193
  const projectionIdentities = new Map();
173
- const projectionIdentityFor = (mimetype, content, binary, searchExcluded) => {
174
- if (searchExcluded !== undefined || content.length === 0 || binary) {
194
+ const projectionIdentityFor = (mimetype, contentLength, binary, searchExcluded) => {
195
+ if (searchExcluded !== undefined || contentLength === 0 || binary) {
175
196
  return Promise.resolve(NO_PROJECTION_IDENTITY);
176
197
  }
177
198
  const cached = projectionIdentities.get(mimetype);
@@ -184,34 +205,43 @@ export default class SearchIndex {
184
205
  // Compute the changed-representation worklist before scheduling so aggregate
185
206
  // progress has a stable total. {§derivation-dedup-parallel}
186
207
  const pending = [];
187
- for (const r of entryRows) {
188
- const searchExcluded = matchSearchExclusion(r);
208
+ for (const c of candidates) {
209
+ const searchExcluded = matchSearchExclusion(c) ?? sizeExclusion(c.content_length);
189
210
  const dispositionIdentity = searchExcluded === undefined ? "included" : `excluded:${searchExcluded}`;
190
- const binary = (await mimetypes.classify(r.mimetype)).binary;
191
- const projectionIdentity = await projectionIdentityFor(r.mimetype, r.content, binary, searchExcluded);
192
- const hash = derivationHash({
193
- content: r.content,
194
- mimetype: r.mimetype,
211
+ const binary = (await mimetypes.classify(c.mimetype)).binary;
212
+ const projectionIdentity = await projectionIdentityFor(c.mimetype, c.content_length, binary, searchExcluded);
213
+ // A channel without a stored identity (an open or streamed channel) is the one body the
214
+ // metadata cannot judge; it is read now and hashed.
215
+ let preloaded = null;
216
+ let identity = c.content_hash;
217
+ if (identity === null) {
218
+ preloaded = await acquire(c.entry_id, c.channel, null);
219
+ if (preloaded === null)
220
+ continue;
221
+ identity = contentHash(preloaded);
222
+ }
223
+ const hash = derivationHash({ contentHash: identity, mimetype: c.mimetype, binary, projectionIdentity, dispositionIdentity });
224
+ if (hash === c.deep_hash)
225
+ continue; // unchanged since last derivation → deep rows persist
226
+ const body = preloaded;
227
+ pending.push({
228
+ r: {
229
+ id: c.entry_id,
230
+ attachment: "entry-channel",
231
+ scheme: c.scheme,
232
+ authority: c.authority,
233
+ channel: c.channel,
234
+ pathname: c.pathname,
235
+ mimetype: c.mimetype,
236
+ contentLength: c.content_length,
237
+ contentHash: identity,
238
+ hashed: c.content_hash !== null,
239
+ body: body === null ? () => acquire(c.entry_id, c.channel, c.content_hash) : () => Promise.resolve(body),
240
+ },
241
+ hash,
242
+ searchExcluded,
195
243
  binary,
196
- projectionIdentity,
197
- dispositionIdentity,
198
244
  });
199
- if (hash !== r.deep_hash)
200
- pending.push({
201
- r: {
202
- id: r.entry_id,
203
- attachment: "entry-channel",
204
- scheme: r.scheme,
205
- authority: r.authority,
206
- channel: r.channel,
207
- pathname: r.pathname,
208
- content: r.content,
209
- mimetype: r.mimetype,
210
- },
211
- hash,
212
- searchExcluded,
213
- binary,
214
- }); // unchanged since last derivation → deep rows persist
215
245
  }
216
246
  for (const row of logRows) {
217
247
  const projection = LogBody.readable({
@@ -223,9 +253,9 @@ export default class SearchIndex {
223
253
  mimetypeRx: row.mimetype_rx,
224
254
  }, LogVisibility.parse(row.folded));
225
255
  const binary = (await mimetypes.classify(projection.mimetype)).binary;
226
- const projectionIdentity = await projectionIdentityFor(projection.mimetype, projection.content, binary, undefined);
256
+ const projectionIdentity = await projectionIdentityFor(projection.mimetype, projection.content.length, binary, undefined);
227
257
  const hash = derivationHash({
228
- content: projection.content,
258
+ contentHash: contentHash(projection.content),
229
259
  mimetype: projection.mimetype,
230
260
  binary,
231
261
  projectionIdentity,
@@ -238,8 +268,10 @@ export default class SearchIndex {
238
268
  attachment: "log",
239
269
  folded: row.folded,
240
270
  pathname: LogEntryProjection.coordinate(row.coordinate, row),
241
- content: projection.content,
242
271
  mimetype: projection.mimetype,
272
+ contentLength: projection.content.length,
273
+ contentHash: contentHash(projection.content),
274
+ body: () => Promise.resolve(projection.content),
243
275
  },
244
276
  hash,
245
277
  searchExcluded: undefined,
@@ -248,24 +280,29 @@ export default class SearchIndex {
248
280
  }
249
281
  const sources = await db.turn_source_derivations.all({ workspace_id: workspaceId });
250
282
  for (const source of sources) {
283
+ acquiredBytes += source.content.length;
251
284
  const mimetype = source.kind === "ops" ? "text/vnd.plurnk" : "text/plain";
252
- const projectionIdentity = await projectionIdentityFor(mimetype, source.content, false, undefined);
253
- const hash = derivationHash({ content: source.content, mimetype, binary: false, projectionIdentity, dispositionIdentity: "included" });
285
+ const projectionIdentity = await projectionIdentityFor(mimetype, source.content.length, false, undefined);
286
+ const identity = contentHash(source.content);
287
+ const hash = derivationHash({ contentHash: identity, mimetype, binary: false, projectionIdentity, dispositionIdentity: "included" });
254
288
  if (hash !== source.deep_hash)
255
289
  pending.push({
256
290
  r: {
257
- id: source.turn_id, attachment: "turn-source", kind: source.kind,
258
- pathname: source.pathname, content: source.content, mimetype,
291
+ id: source.turn_id, attachment: "turn-source", kind: source.kind, sequence: source.sequence,
292
+ pathname: source.pathname, mimetype,
293
+ contentLength: source.content.length, contentHash: identity,
294
+ body: () => Promise.resolve(source.content),
259
295
  },
260
296
  hash, searchExcluded: undefined, binary: false,
261
297
  });
262
298
  }
263
299
  // {§derivation-dedup-parallel} — warm smaller projections before an
264
- // expensive outlier; ordering never changes exhaustive derivation.
265
- pending.sort((a, b) => a.r.content.length - b.r.content.length);
300
+ // expensive outlier; ordering never changes exhaustive derivation. The
301
+ // stored length orders without a body.
302
+ pending.sort((a, b) => a.r.contentLength - b.r.contentLength);
266
303
  const total = pending.length;
267
304
  if (total === 0)
268
- return 0;
305
+ return { derived: 0, acquiredBytes };
269
306
  let completed = 0;
270
307
  const memberFailures = [];
271
308
  const projectionNotices = new Set();
@@ -350,7 +387,7 @@ export default class SearchIndex {
350
387
  const rest = memberFailures.length - 1;
351
388
  publish("complete", `Repository search index is ready; ${memberFailures.length} of ${total} derivations failed: ${JSON.stringify(first.path)} — ${first.reason}${rest === 0 ? "" : ` (and ${rest} more)`}`, "warn");
352
389
  }
353
- return total;
390
+ return { derived: total, acquiredBytes };
354
391
  }
355
392
  catch (error) {
356
393
  publish("failed", `Search indexing failed: ${error instanceof Error ? error.message : String(error)}`, "error");
@@ -361,9 +398,12 @@ export default class SearchIndex {
361
398
  }
362
399
  }
363
400
  }
401
+ // {§derivation-dedup-parallel} — the identity is a hash over the representation's own SHA-256
402
+ // ({§tokenomics-content-hash-identity}), never over its body, so a stored channel identity
403
+ // decides dirtiness without the body crossing into the process.
364
404
  function derivationHash(input) {
365
405
  return createHash("sha256")
366
- .update(input.content)
406
+ .update(input.contentHash)
367
407
  .update("\0")
368
408
  .update(input.mimetype)
369
409
  .update("\0")
@@ -1 +1 @@
1
- {"version":3,"file":"_search-index.js","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_search-index.js","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"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"}
@@ -28,3 +28,20 @@ LEFT JOIN subscriptions s ON s.id = (
28
28
  WHERE e.workspace_id = $workspace_id
29
29
  -- User Note 5 — mtime-ascending: dormant entries hold the stable prompt-cache prefix; churn clusters at the tail.
30
30
  ORDER BY e.updated_at ASC, e.id ASC, ec.name;
31
+
32
+ -- PREP: search_index_entry_candidates
33
+ -- {§derivation-dedup-parallel} — the maintenance pass judges an entry channel from stored
34
+ -- identity: no body crosses into the process here. `content_length` is SQLite's own count.
35
+ SELECT e.id AS entry_id, e.scheme, e.authority, e.pathname, ec.name AS channel, ec.mimetype,
36
+ length(ec.content) AS content_length, ec.content_hash, ec.deep_hash
37
+ FROM entries e
38
+ JOIN entry_channels ec ON ec.entry_id = e.id
39
+ WHERE e.workspace_id = $workspace_id
40
+ ORDER BY e.updated_at ASC, e.id ASC, ec.name;
41
+
42
+ -- PREP: search_index_entry_body
43
+ -- One body, acquired only when its derivation runs, and only while the channel still denotes
44
+ -- the representation the pass judged; a representation that moved on returns no row and is
45
+ -- judged again by the next pass ({§derivation-dedup-parallel}).
46
+ SELECT content FROM entry_channels
47
+ WHERE entry_id = $entry_id AND name = $channel AND content_hash IS $content_hash;
@@ -1 +1 @@
1
- {"version":3,"file":"exec-abort.d.ts","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,OAAO,SAAS;IAI1B,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAGD,MAAM,CAAC,cAAc,IAAI;QAAE,YAAY,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAE/D;IAID,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAElE;IAKD,MAAM,CAAC,aAAa,IAAI;QAAE,YAAY,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAE9D;CACJ"}
1
+ {"version":3,"file":"exec-abort.d.ts","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,OAAO,OAAO,SAAS;IAI1B,MAAM,KAAK,OAAO,IAAI,MAAM,CAE3B;IAGD,MAAM,CAAC,cAAc,IAAI;QAAE,YAAY,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAE/D;IAID,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAElE;IAKD,MAAM,CAAC,aAAa,IAAI;QAAE,YAAY,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAE9D;CACJ"}
@@ -1,3 +1,4 @@
1
+ import Knob from "../core/Knob.js";
1
2
  // The abort-reason protocol @plurnk/plurnk-execs' SubprocessExecutor reads off `signal.reason`:
2
3
  // { signal } → deliver exactly that Unix signal, once, no escalation.
3
4
  // { housekeeping: true, graceMs } → loop/worker teardown: the polite signal, then SIGKILL after graceMs.
@@ -5,10 +6,10 @@
5
6
  // polite default, SIGHUP — the gentlest rung; the model escalates with explicit codes.
6
7
  export default class ExecAbort {
7
8
  // The grace a teardown straggler gets before the hard SIGKILL. The executor refuses to bake a
8
- // number (it'd be a magic literal there); the consumer owns it — env-tunable, 2s default. A
9
- // getter, not a static field, so a test can set the env at runtime. {§worker-lifecycle-total-reap}
9
+ // number (it'd be a magic literal there) and so does this consumer: the panel owns it. A getter,
10
+ // not a static field, so a test can set the env at runtime. {§worker-lifecycle-total-reap}
10
11
  static get graceMs() {
11
- return Number(process.env.PLURNK_SERVICE_EXEC_KILL_GRACE_MS ?? "2000");
12
+ return Knob.integer("PLURNK_SERVICE_EXEC_KILL_GRACE_MS", 0);
12
13
  }
13
14
  // Loop/worker teardown — a bounded reap, so Exec.idle() can't wedge on a signal-ignoring spawn.
14
15
  static teardownReason() {
@@ -19,7 +20,7 @@ export default class ExecAbort {
19
20
  static killReason(signal) {
20
21
  return { signal };
21
22
  }
22
- // grammar 0.74.20 EXEC `<T>` timeout — the spawn outlived its T-second budget. A BOUNDED reap
23
+ // an execution's `<T>` timeout — the spawn outlived its T-second budget. A BOUNDED reap
23
24
  // (polite signal then SIGKILL after graceMs), same protocol as teardown so a signal-ignoring
24
25
  // spawn still dies; the caller stamps the distinct 504 close status (a timeout, not a plain kill).
25
26
  static timeoutReason() {
@@ -1 +1 @@
1
- {"version":3,"file":"exec-abort.js","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,8FAA8F;AAC9F,4GAA4G;AAC5G,+FAA+F;AAC/F,uFAAuF;AACvF,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,8FAA8F;IAC9F,4FAA4F;IAC5F,mGAAmG;IACnG,MAAM,KAAK,OAAO;QACd,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,MAAM,CAAC,CAAC;IAC3E,CAAC;IAED,gGAAgG;IAChG,MAAM,CAAC,cAAc;QACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;IAED,0EAA0E;IAC1E,wFAAwF;IACxF,MAAM,CAAC,UAAU,CAAC,MAAqB;QACnC,OAAO,EAAE,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,8FAA8F;IAC9F,6FAA6F;IAC7F,mGAAmG;IACnG,MAAM,CAAC,aAAa;QAChB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;CACJ"}
1
+ {"version":3,"file":"exec-abort.js","sourceRoot":"","sources":["../../src/schemes/exec-abort.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,iBAAiB,CAAC;AACnC,gGAAgG;AAChG,8FAA8F;AAC9F,4GAA4G;AAC5G,+FAA+F;AAC/F,uFAAuF;AACvF,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,8FAA8F;IAC9F,iGAAiG;IACjG,2FAA2F;IAC3F,MAAM,KAAK,OAAO;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,mCAAmC,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,gGAAgG;IAChG,MAAM,CAAC,cAAc;QACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;IAED,0EAA0E;IAC1E,wFAAwF;IACxF,MAAM,CAAC,UAAU,CAAC,MAAqB;QACnC,OAAO,EAAE,MAAM,EAAE,CAAC;IACtB,CAAC;IAED,wFAAwF;IACxF,6FAA6F;IAC7F,mGAAmG;IACnG,MAAM,CAAC,aAAa;QAChB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC;IAC9D,CAAC;CACJ"}
@@ -1,4 +1,7 @@
1
1
  export default class ExecEnv {
2
+ #private;
3
+ static withoutOwnSecrets(env?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
4
+ static ownSecretTest(env?: NodeJS.ProcessEnv): (name: string) => boolean;
2
5
  static scoped(env?: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
3
6
  }
4
7
  //# sourceMappingURL=exec-env.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"exec-env.d.ts","sourceRoot":"","sources":["../../src/schemes/exec-env.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,OAAO,OAAO,OAAO;IAGxB,MAAM,CAAC,MAAM,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAiBrE;CACJ"}
1
+ {"version":3,"file":"exec-env.d.ts","sourceRoot":"","sources":["../../src/schemes/exec-env.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,OAAO,OAAO,OAAO;;IAkBxB,MAAM,CAAC,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAQhF;IAKD,MAAM,CAAC,aAAa,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAGpF;IAmBD,MAAM,CAAC,MAAM,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAAC,UAAU,CAgBrE;CACJ"}