@plurnk/plurnk-service 1.16.5 → 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
package/.env.defaults CHANGED
@@ -1,286 +1,162 @@
1
- # ⚠ REFERENCE — this is @plurnk/plurnk-service's shipped .env.defaults: the operative floor
2
- # for its knobs and source of the derived --<knob> CLI flags. Run
3
- # `plurnk-service config defaults` for the complete owner-labelled installed aggregate. Put user
4
- # overrides in $XDG_CONFIG_HOME/plurnk/.env (seeded once, never overwritten), ./.env, or the shell.
5
- #
6
- # THE STANDARD (every plurnk package, third-party included): ship a `.env.defaults` at your
7
- # package root declaring YOUR knobs (prefix = your package's name); the file IS the documentation.
8
- # The daemon assembles every installed member's file into one floor. ONE LAW: a key claimed by
9
- # two packages crashes boot naming both. Reader declares: every knob your code reads appears in
10
- # your file the floor guarantees it set, so code carries no inline fallback.
11
- #
12
- # Source classes (low → high precedence; higher classes win):
13
- # assembled .env.defaults floor (this file + every installed member's, uniqueness-checked)
14
- # < $XDG_CONFIG_HOME/plurnk/.env (your user config — seeded once, yours to keep)
15
- # < ./.env (per-project, current directory)
16
- # < --env-file=… / --config=…
17
- # < shell environment
18
- # < --<knob> CLI flags (the 1:1 mirror: --service-max-turns <-> PLURNK_SERVICE_MAX_TURNS)
19
- # Later repeated explicit files win.
20
- # Feature-flag bools use `=== "1"` exactly, never `=== "true"`. `~/` expands to your home.
21
-
22
- # --- Storage ---
23
- # Empty derives $XDG_DATA_HOME/plurnk/plurnk.db (default ~/.local/share/plurnk/plurnk.db).
24
- # An explicit non-empty path overrides it; `~/` expands to home.
1
+ # @plurnk/plurnk-service daemon configuration.
2
+ # Active declarations are defaults; commented declarations are optional examples.
3
+ # Put overrides in the shell, ./.env, or $XDG_CONFIG_HOME/plurnk/.env.
4
+ # Full installed reference: plurnk-service config defaults
5
+ # Precedence (highest first): CLI flags > shell > --env-file* > --config >
6
+ # ./.env > user .env > package defaults. Later explicit env files win.
7
+ # Service flags mirror these names: PLURNK_SERVICE_MAX_TURNS --service-max-turns.
8
+
9
+ # --- Storage and listener ---
10
+ # Database path; empty = $XDG_DATA_HOME/plurnk/plurnk.db (~/.local/share by default).
25
11
  PLURNK_SERVICE_DB_PATH=
12
+ # AG-UI listener bind address.
13
+ PLURNK_HOST=127.0.0.1
14
+ # AG-UI listener TCP port, shared by all client interfaces.
15
+ PLURNK_PORT=1066
26
16
 
27
- # Filesystem creation ceiling. none = deny new files; root = only project_root (default);
28
- # namespace = also permit canonical outside-root paths. Existing-member writes are unaffected.
29
- # A workspace may narrow this with settings.fileCreateScope, never widen it.
30
- PLURNK_SERVICE_FILE_CREATE_SCOPE=root
31
-
32
- # --- Sqlite tuning (curated knobs passed through to sqlrite; optional) ---
33
- # sqlrite already sets the safe posture (WAL + synchronous=NORMAL + busy_timeout=5000ms).
34
- # These are operator overrides — integers; unset = sqlrite/sqlite default. Uncomment to tune.
35
- # busy_timeout (ms): how long a writer waits on a lock before SQLITE_BUSY. 0 = immediate.
17
+ # --- SQLite (optional sqlrite overrides) ---
18
+ # Lock wait, ms; 0 = immediate failure. sqlrite defaults to 5000, WAL, synchronous=NORMAL.
36
19
  # PLURNK_SERVICE_SQLITE_TIMEOUT=5000
37
- # cache_size: positive = pages, negative = KiB of memory. Bigger = fewer disk reads on a hot db.
20
+ # Page cache: positive = pages; negative = KiB. Unset = SQLite default.
38
21
  # PLURNK_SERVICE_SQLITE_CACHE_SIZE=-16000
39
- # mmap_size: bytes of memory-mapped I/O (read perf on large file-backed dbs). 0 disables.
22
+ # Memory-mapped I/O limit, bytes; 0 = off. Unset = SQLite default.
40
23
  # PLURNK_SERVICE_SQLITE_MMAP_SIZE=268435456
41
- # max_page_count: hard db-size ceiling in PAGES a write past it errors (disk-fill guard).
24
+ # Database size ceiling, pages; writes beyond it fail. Unset = SQLite default.
42
25
  # PLURNK_SERVICE_SQLITE_MAX_PAGE_COUNT=524288
43
26
 
44
- # --- Daemon transport ---
45
- PLURNK_HOST=127.0.0.1
46
- # THE client surface — the AG-UI+ listener (the plurnk-agui daughter module binds it at boot).
47
- # Production is single-listener: every first-party client rides this surface.
48
- PLURNK_PORT=1066
49
-
50
- # --- Loop control ---
51
- # Service-wide capability ceiling as a CapabilityPolicy JSON object. `deny`
52
- # removes matching demands; an optional `only` admits only matching demands.
27
+ # --- Permissions and membership ---
28
+ # CapabilityPolicy JSON: deny removes matching demands; only admits only matches.
53
29
  # Workspace, Worker, and loop policies may narrow this ceiling, never widen it.
54
30
  PLURNK_SERVICE_CAPABILITIES={}
55
- # Optional default child-model selector (declared alias or provider/model route).
56
- # Unset = each WORK/FORK child inherits its spawning loop's model. Clients may
57
- # override this per top-level loop.
31
+ # New filesystem files: none | root | namespace (also outside root). Existing-member writes unchanged.
32
+ PLURNK_SERVICE_FILE_CREATE_SCOPE=root
33
+ # Model-added membership: none | root | namespace. Workspaces may narrow it.
34
+ # Operator definitions use PLURNK_MEMBERS_<alias>=<glob> and PLURNK_MEMBERS_ENABLED=["alias"].
35
+ PLURNK_SERVICE_MEMBERS_MODEL_SCOPE=none
36
+ # Git membership, status, and branch integration: 1 = permitted; 0 = denied service-wide.
37
+ PLURNK_SERVICE_GIT_ALLOWED=1
38
+ # Include the repository containing project_root as members: 1 = yes; 0 = explicit members only.
39
+ PLURNK_SERVICE_GIT_AUTO=1
40
+ # Maximum stdout/stderr bytes accepted from one native Git subprocess.
41
+ PLURNK_SERVICE_GIT_OUTPUT_MAX_BYTES=67108864
42
+ # Maximum bytes per workspace-file snapshot, 1..104857600. Larger sources return 413 on READ/EDIT.
43
+ PLURNK_SERVICE_FILE_MATERIALIZE_MAX_BYTES=104857600
44
+
45
+ # --- Loop limits and recovery ---
46
+ # Default child model: alias or provider/model. Unset = inherit the spawning loop's model.
58
47
  # PLURNK_MODEL_CHILD=fast
59
- # Operator turn ceiling. -1 (default) = no cap (loops end via SEND, provider capacity,
60
- # strikes, or cycle detection). A positive value is an inviolable hard cap a
61
- # CoreSeam runLoop({maxTurns}) request cannot exceed (min wins).
48
+ # Model turns per loop, including resumes; -1 = unlimited. Client limits may tighten it.
62
49
  PLURNK_SERVICE_MAX_TURNS=-1
63
- # Per-emission op ceiling. -1 (default) = no cap: every generated op dispatches (a runaway
64
- # op-loop is a sampler concern, not grounds to drop already-generated work). A positive value
65
- # is an operator ceiling a client may tighten per workspace via workspace.create settings.maxCommands
66
- # (min wins), never raise past (#232).
50
+ # Actions per emission; -1 = unlimited. Final disposition remains; excess actions report an error.
67
51
  PLURNK_SERVICE_MAX_COMMANDS=-1
68
- # Live & demo test harness story timeout (ms) 10 minutes (600000ms).
52
+ # Concurrent nonterminal runs per workspace; -1 = unlimited. Excess spawns return 508, not a queue.
53
+ PLURNK_SERVICE_WORKSPACE_WORKERS_MAX_ACTIVE=-1
54
+ # Active execution allowance per task, positive ms; WAIT pauses it, wakes retain it. Exhaustion: 504.
55
+ PLURNK_SERVICE_LOOP_TIMEOUT=86400000
56
+ # Live/demo whole-specimen deadline, ms; includes all prompts and cancels before cleanup.
69
57
  PLURNK_SERVICE_LIVE_TIMEOUT=600000
70
- # {§crash-only-stop} the daemon's settle deadline on stop(): past this the
71
- # shutdown abandons its waits instead of hanging forever on a wedged child.
58
+ # Shutdown settlement deadline, positive ms; abandon outstanding waits after expiry.
72
59
  PLURNK_SERVICE_STOP_TIMEOUT_MS=30000
73
- # Capability residency is demand-owned. After the final lease, keep the
74
- # worker warm this many ms for quick reuse. 0 = no grace; -1 = no time bound.
75
- PLURNK_SERVICE_WORKER_WARM_MS=900000
76
- # Maximum lease-free worker Functionality snapshots retained process-wide. Active work is
77
- # exempt. 0 = retain none; -1 = no idle-LRU bound.
78
- PLURNK_SERVICE_WORKER_WARM_MAX=2
79
- # Proposal resolution bound (ms). Empty = a stopped world waits for its human indefinitely;
80
- # a finite positive value auto-cancels unattended (outcome=timeout). Every other explicit
81
- # value is invalid and fails at the proposal lifecycle owner.
60
+ # Provider recovery window, ms; 0 = park immediately. Expiry parks until the next prompt/wake.
61
+ PLURNK_SERVICE_PROVIDER_RECOVERY=900000
62
+ # First recovery delay, ms; doubles on failure, capped at 12 times this value.
63
+ PLURNK_SERVICE_PROVIDER_RECOVERY_BACKOFF=5000
64
+ # Consecutive turn-contract strike threshold.
65
+ PLURNK_SERVICE_MAX_STRIKES=3
66
+ # Completed responses allowed to produce an admissible turn against the same packet.
67
+ PLURNK_SERVICE_EMISSION_ATTEMPTS=3
68
+ # Minimum repetitions before cycle detection fires.
69
+ PLURNK_SERVICE_MIN_CYCLES=3
70
+ # Maximum repeating period examined by cycle detection, turns.
71
+ PLURNK_SERVICE_MAX_CYCLE_PERIOD=4
72
+ # Maximum characters of runtime diagnostics exposed in model-facing errors.
73
+ PLURNK_SERVICE_ERROR_DETAIL_LIMIT=512
74
+
75
+ # --- Workspace residency and execution ---
76
+ # Idle workspace Functionality grace, ms; 0 = cool immediately; -1 = no time limit.
77
+ PLURNK_SERVICE_WORKSPACE_WARM_MS=900000
78
+ # Retained idle workspace snapshots; 0 = none; -1 = unlimited. Active work is exempt.
79
+ PLURNK_SERVICE_WORKSPACE_WARM_MAX=2
80
+ # Proposal wait, positive ms; empty = wait indefinitely. Expiry cancels the proposal.
82
81
  PLURNK_SERVICE_PROPOSAL_TIMEOUT_MS=
83
- # Turn-hold runtimes: while a listed runtime's stream is in flight the cycle pauses (no next
84
- # turn) until it concludes. Bounded by _HOLD_MS, fail-open at the cap. Empty = no holds.
85
- # A bare name holds all of that runtime's spawns; `<runtime>:<effect>` holds only
86
- # that effect class. The retired web-search family names are gone; declare operator
87
- # runtimes explicitly.
82
+ # Comma-separated runtime or runtime:effect names that hold the next turn while executing; empty = none.
88
83
  PLURNK_SERVICE_EXEC_HOLD=
84
+ # Maximum turn hold, ms; expiry lets the loop continue while the stream remains live.
89
85
  PLURNK_SERVICE_EXEC_HOLD_MS=300000
90
- # Maximum EXEC producers admitted concurrently in one workspace. Additional
91
- # executions retain their durable streams and wait FIFO; -1 removes the bound.
86
+ # Concurrent EXEC producers per workspace; excess executions wait FIFO; -1 = unlimited.
92
87
  PLURNK_SERVICE_EXEC_CONCURRENCY=12
93
- # Effect admission overrides ({§effect-policy-tunable}): comma-separated
94
- # <effect>:<policy> entries (host/read/pure → propose/auto). Unlisted effects
95
- # keep the default map (host proposes; read/pure auto-run). Empty = defaults.
88
+ # Live input delivery deadline, positive ms, including queued writes; expiry retires input, not the process.
89
+ PLURNK_SERVICE_EXEC_INPUT_TIMEOUT_MS=10000
90
+ # Effect overrides, comma-separated effect:policy (host/read/pure → propose/auto).
91
+ # Empty = host proposes, read/pure auto-run.
96
92
  PLURNK_SERVICE_EFFECT_POLICY=
97
- # Optimistic worker settlement: before model dispatch, allow newly started
98
- # streams or a completion wake with live siblings this many ms to quiesce.
99
- # Settlement ends immediately at quiescence and never extends its first
100
- # deadline; survivors follow the monitored lifecycle. 0 = off.
93
+ # Brief settlement wait for new streams/completing siblings, ms; 0 = off; quiescence ends it early.
101
94
  PLURNK_SERVICE_OPTIMISTIC_WAIT_MS=5000
102
- # Exec poll backoff ({§exec-poll}, https://github.com/plurnk/plurnk-service/issues/521):
103
- # a parked exec with NO explicit `<,P>` cadence is no longer
104
- # park-blind-forever — the loop wakes on an exponential backoff so the model regains a turn to read
105
- # partial output and re-park a slow long-runner or KILL a stuck one. Wake N fires at BASE·2^min(N,TURNS-1)
106
- # seconds (60,120,240,…,7680), then holds at the cap. An explicit `<,P>` wins; `<,0>` opts out (blind).
95
+ # Initial parked-EXEC poll delay, seconds; explicit <,P> wins and <,0> disables polling.
107
96
  PLURNK_SERVICE_EXEC_POLL_SEC=60
97
+ # Backoff steps: delay doubles to BASE * 2^(TURNS-1), then stays capped.
108
98
  PLURNK_SERVICE_EXEC_POLL_TURNS=8
109
- # Teardown reap grace: when a loop/run tears down a background exec, the spawn gets a polite
110
- # signal first (SIGHUP, or the model's KILL[code]); a stream that IGNORES it is hard-killed
111
- # (SIGKILL, to the whole process group) this many ms later — so the reap can't wedge on a
112
- # signal-ignoring child. plurnk-execs refuses to bake this number; the consumer owns it.
99
+ # Grace after a termination signal, ms; then SIGKILL the surviving process group.
113
100
  PLURNK_SERVICE_EXEC_KILL_GRACE_MS=2000
114
- PLURNK_SERVICE_LOOP_TIMEOUT=86400000
115
- # {§provider-recovery} A recoverable provider failure (network failure, rate limit, deadline,
116
- # interrupted resource) never ends a loop. After the provider's own retries the turn records the
117
- # failure, waits with exponential backoff, and re-issues the same call for up to RECOVERY ms
118
- # (0 parks at once); past that the loop parks like a `### SEND0 [202]` wait and resumes on the
119
- # next prompt or wake. BACKOFF is the first delay (ms); it doubles per failure, capped at twelve
120
- # times itself.
121
- PLURNK_SERVICE_PROVIDER_RECOVERY=900000
122
- PLURNK_SERVICE_PROVIDER_RECOVERY_BACKOFF=5000
123
101
 
124
- # --- Engine rails ---
125
- # Maximum characters retained from caught runtime diagnostics in a model-facing
126
- # Problem detail. Complete errors remain in daemon diagnostics.
127
- PLURNK_SERVICE_ERROR_DETAIL_LIMIT=512
128
- PLURNK_SERVICE_MAX_STRIKES=3
129
- # Completed responses that do not form a valid PLAN...SEND turn are retried
130
- # beneath the same engine turn and against the identical packet.
131
- PLURNK_SERVICE_EMISSION_ATTEMPTS=3
132
- PLURNK_SERVICE_MIN_CYCLES=3
133
- PLURNK_SERVICE_MAX_CYCLE_PERIOD=4
134
- # Requiem is an out-of-band forensic interview. Reasoning-heavy witnesses may
135
- # consume most of the first budget before emitting testimony; an empty
136
- # length-limited response receives the retry budget.
137
- PLURNK_SERVICE_REQUIEM_MAX_TOKENS=16384
138
- PLURNK_SERVICE_REQUIEM_RETRY_MAX_TOKENS=32768
139
-
140
- # --- Schemes ---
141
- # (Workspace root for file ops is per-workspace — supplied at
142
- # workspace.create({projectRoot}) or never (headless is forever);
143
- # stored on workspaces.project_root. No env-level default.)
144
-
145
- # --- Git integration ---
146
- # PLURNK_SERVICE_GIT_ALLOWED — hard ceiling for Git membership + integration (repository
147
- # telemetry, EXEC[git]). =1 permits it (then project repository + workspace config decide; a client
148
- # may deny its own workspace via workspace.create settings.git:false, #232); =0 flatly
149
- # denies it service-wide, un-re-enableable (the sandbox/benchmark lockout).
150
- PLURNK_SERVICE_GIT_ALLOWED=1
151
- # PLURNK_SERVICE_GIT_AUTO — automatic project-repository membership. =1 includes the Git
152
- # repository containing project_root; =0 leaves member definitions as the only membership source.
153
- PLURNK_SERVICE_GIT_AUTO=1
154
- # Maximum stdout/stderr payload accepted from one native Git subprocess.
155
- PLURNK_SERVICE_GIT_OUTPUT_MAX_BYTES=67108864
156
-
157
- # --- Membership ({§membership-baseline}) ---
158
- # PLURNK_SERVICE_MEMBERS_MODEL_SCOPE — the ceiling a MODEL's `### EXEC0 [members] (add)` is admitted
159
- # against, in the file-creation lattice none < root < namespace: `none` refuses every model
160
- # definition (the model widens visibility only through `git add`); `root` admits globs inside the
161
- # project root; `namespace` admits `../` too. A workspace narrows it with settings.membersModelScope.
162
- # The operator's own definitions are PLURNK_MEMBERS_<ALIAS>=<glob> (`!glob` excludes) and
163
- # PLURNK_MEMBERS_ENABLED=[…] in the operator env.
164
- PLURNK_SERVICE_MEMBERS_MODEL_SCOPE=none
165
- # Maximum bytes admitted into one materialized workspace-file snapshot (1..100 MiB,
166
- # matching the storage ceiling). A larger member remains addressable, but READ/EDIT
167
- # return its durable 413 size result.
168
- PLURNK_SERVICE_FILE_MATERIALIZE_MAX_BYTES=104857600
169
-
170
- # Ordinary bounded OPEN-body projection. READ/FIND results and PLAN working
171
- # memory render complete; prompt initialization uses its separate budget share.
172
- # Every remaining log body renders at most these independent line and character
173
- # bounds. A truncated body carries its canonical log URI.
102
+ # --- Context and receipts ---
103
+ # Maximum lines in automatic text previews and markerless READs. Explicit scopes stay exact.
174
104
  PLURNK_SERVICE_PREVIEW_LINES=16
105
+ # Independent bound on the same previews, Unicode code points; CRLF counts as one separator.
175
106
  PLURNK_SERVICE_PREVIEW_CHARS=2560
176
-
177
- # Number of complete neighboring lines hashed on each side of a model-facing
178
- # line anchor. 0 authenticates only the addressed line.
107
+ # Turn0 reasoning READ: -1 = complete; 0 = omit; N = first N lines. Later reads are model-chosen.
108
+ # Alias override: PLURNK_REASONING_VIEW_LINES_<alias>. Source retention/streaming are unchanged.
109
+ PLURNK_REASONING_VIEW_LINES=-1
110
+ # Cold-start input allowance reserved for automatic prompt bodies, percentage in (0,100).
111
+ # Alias override: PLURNK_SERVICE_PROMPT_PROJECTION_<alias>. Full prompts remain addressable.
112
+ PLURNK_SERVICE_PROMPT_PROJECTION=25%
113
+ # Neighboring lines hashed on each side of an editable line anchor; 0 = addressed line only.
179
114
  PLURNK_SERVICE_LINE_ANCHOR_CONTEXT_LINES=2
180
-
181
- # Turn-0 catalog preview so a run opens oriented, not blank. Folder-capable schemes use
182
- # FIND(<scheme>:///*): direct entries plus exact dir/** summaries carrying each subtree's
183
- # recursive item and token counts. Curated kernel docs remain recursive, demonstrating both
184
- # navigation forms. -1 = each ordinary FIND's markerless first page; N = an explicit first-N
185
- # project-file page (other schemes remain markerless); 0 = preview off. Service-wide default;
186
- # a client overrides per workspace through workspace.create settings.filesItems (#231).
115
+ # Surrounding and changed lines shown at each EDIT boundary; overlapping windows coalesce.
116
+ PLURNK_SERVICE_EDIT_RECEIPT_CONTEXT_LINES=4
117
+ # Turn-0 surveys: -1 = ordinary first pages; N > 0 caps file-map rows; 0 = off.
118
+ # Workspace settings.filesItems overrides this default; other surveys keep ordinary pages.
187
119
  PLURNK_SERVICE_FILES_ITEMS=-1
188
120
 
189
- # Number of full SHA-256 revision characters rendered on each model-facing
190
- # EDIT receipt. The durable operation result retains all 64 characters; this
191
- # abbreviation is display correlation only, never identity or comparison.
192
- PLURNK_SERVICE_EDIT_RECEIPT_REVISION_CHARS=8
193
-
194
- # Number of Git commit characters rendered in model-facing branch receipts.
195
- # The durable batch retains complete commit ids; this is display-only.
196
-
197
- # Number of surrounding and landed lines shown at each boundary of an EDIT
198
- # result. Overlapping windows coalesce; the model can READ omitted content.
199
- PLURNK_SERVICE_EDIT_RECEIPT_CONTEXT_LINES=2
200
-
201
- # Workspace-tier ceiling on CONCURRENT active runs (a run with a non-terminal loop)
202
- # — the fork-bomb / destabilization brake. -1 = no cap (default); only concurrency
203
- # is bounded, never lifetime, since workspaces persist for months. A spawn/fork past
204
- # the ceiling fails hard (508 — no queue, no retry); the acting run counts itself.
205
- PLURNK_SERVICE_WORKSPACE_WORKERS_MAX_ACTIVE=-1
206
-
207
- # --- Prompt projection — PER ALIAS ---
208
- # Providers derive physical input capacity from model limits and the total output envelope.
209
- # Core projects that number into its model-facing curation gauge; no second service-side token
210
- # budget or packing margin exists. The retired PLURNK_SERVICE_{PROMPT_BUDGET,SAFETY,
211
- # CONTEXT_WINDOW,REASONING,COMPLETION} names fail hard at boot.
212
- # Maximum aggregate share of the model-facing curation budget used by
213
- # automatic OPEN prompt bodies. The complete prompt remains stored and
214
- # READ/FIND-addressable; this controls projection, not prompt admission.
215
- # Alias-scoped overrides follow the ordinary _<alias> convention.
216
- PLURNK_SERVICE_PROMPT_PROJECTION=25%
217
-
218
- # --- Plugins (third-party trust) ---
219
- # (PLURNK_PLUGINS_TRUSTED_ONLY lives in @plurnk/plurnk-meta — reader-declares: the
220
- # trust rule's one implementation lives there and so does its knob.)
221
-
222
- # PLURNK_SERVICE_DOCS_EXCLUDE — comma list of scheme names dropped from BOTH the teaching oneliner
223
- # and its materialized pull-doc on load. Executable tools instead use their one enablement policy,
224
- # so an enabled tool is always discoverable. Empty → exclude nothing. Unknown names are inert.
121
+ # --- Teaching and skills ---
122
+ # Scheme names omitted from discoverable references, comma-separated; empty = none.
123
+ # Executable docs instead follow tool enablement. Plugin trust lives in plurnk-meta's defaults.
225
124
  PLURNK_SERVICE_DOCS_EXCLUDE="plurnk,file,exec"
226
-
227
- # PLURNK_SERVICE_SKILLS_CLI — the standard Agent Skills installer command line beneath the Worker
228
- # `skills` Functionality family (`add` installs, `remove` uninstalls, `discover {source}` lists).
229
- # The installed SKILL.md, never the CLI's output, is the evidence. Point it at a pinned binary
230
- # or a fixture; it is never taught to the model or run by a client.
125
+ # Agent Skills installer command, used by the service beneath skills add/remove/discover.
231
126
  PLURNK_SERVICE_SKILLS_CLI="npx --yes skills"
232
- # PLURNK_SERVICE_SKILLS_REGISTRY_URL the ecosystem registry behind `discover {query}`
233
- # (GET <url>/api/search?q=…). Empty disables registry search (501 registry-not-configured).
127
+ # Skills search registry (GET /api/search?q=...); empty = registry search disabled.
234
128
  PLURNK_SERVICE_SKILLS_REGISTRY_URL=https://skills.sh
235
-
236
- # PLURNK_SERVICE_PACKET_INJECT — an operator markdown file injected as a section right after the teaching
237
- # (the cached prefix). Read per-turn (live edits); a set-but-unreadable path fails the turn HARD.
238
- # `~/` expands to home. Unset → no section. The pressure valve for "improve the packet" without a fork.
129
+ # Extra Markdown after language teaching, reread each turn; unreadable explicit paths fail.
239
130
  # PLURNK_SERVICE_PACKET_INJECT="~/injection.md"
240
-
241
- # PLURNK_SERVICE_POLICY — the operating-policy markdown, rendered as the ## Policy
242
- # section. Unset = the seeded $XDG_CONFIG_HOME/plurnk/AGENTS.md; a path = that file;
243
- # EXPLICITLY empty = policy off.
131
+ # Policy Markdown: unset = $XDG_CONFIG_HOME/plurnk/AGENTS.md; empty = off; otherwise that path.
244
132
  # PLURNK_SERVICE_POLICY=
245
- # PLURNK_SERVICE_RECAP — Recap source override (relative to the package root).
246
- # Unset = the packaged recap.md; empty content omits the Recap section.
133
+ # Recap file, relative to the package root; unset = packaged recap.md; empty file omits the section.
247
134
  # PLURNK_SERVICE_RECAP=
248
135
 
249
- # --- Semantic search (~query chunking) ---
250
- # Project Semantics tiles each vector-eligible entry into <=window chunks so a large
251
- # body is fully searchable, not truncated. Chunking requires the embedder's exact
252
- # counter or an exact fallback tokenizer; an estimate refuses semantic derivation.
253
- # The chunk knobs are read only when an embedder declares its input window.
254
- # Chunk budget in TOKENS. EMPTY (the default) = the installed embedder's reported
255
- # window — NO model-specific number is assumed, so it scales to whatever embedder you
256
- # install. Set a positive value ONLY to cap below the window (e.g. to sweep
257
- # granularity); it is clamped to the window either way.
258
- PLURNK_SERVICE_SEMANTIC_CHUNK_TOKENS=
259
- # Overlap fraction [0,1): trailing context re-covered at each chunk boundary so a
260
- # concept split across a cut still matches in both. ~0.15 is a standard RAG default.
261
- PLURNK_SERVICE_SEMANTIC_CHUNK_OVERLAP=0.15
262
- # Maximum UTF-8 body size eligible for vectors. Oversized entries remain readable,
263
- # graph-derived, and FTS-indexed. 0 explicitly opts into unlimited vector eligibility.
264
- PLURNK_SERVICE_MAX_EMBED_SIZE=262144
265
- # =1 forces the FTS-only path even with the embeddings package installed — the ~query
266
- # degrades to keyword ranking and no vectors are derived (no MiniLM pool spun up). For
267
- # hosts/runs that don't want vector search; the Mock bootstrap and constrained benchmarks set it.
268
- PLURNK_SERVICE_EMBED_DISABLE=0
269
-
270
- # Comma-separated file pathname patterns omitted from search derivations. Content remains directly
271
- # readable. Patterns without `/` match the basename; patterns with `/` match the full pathname.
272
- # Uses body-matcher glob syntax; the first match is the observable exclusion reason. Empty = none.
136
+ # --- Search indexing ---
137
+ # Comma-separated globs excluded from derivation, not READ. No slash = basename; slash = pathname.
273
138
  PLURNK_SERVICE_SEARCH_EXCLUDE=*.min.*,*.map,package-lock.json,npm-shrinkwrap.json,packages.lock.json,yarn.lock,pnpm-lock.yaml,bun.lockb,Cargo.lock,poetry.lock,uv.lock,Pipfile.lock,Gemfile.lock,composer.lock,go.sum,flake.lock,gradle.lockfile,*/dist/*,dist/*,*/build/*,build/*,*/.next/*,.next/*,*/node_modules/*,node_modules/*,*/vendor/*,vendor/*,*/coverage/*,coverage/*,*/.vuepress/*,.vuepress/*,*/.nuxt/*,.nuxt/*
274
- # {§derivation-vectors-background}: background (default) attaches each artifact's graph, FTS, and
275
- # summary in the initialization pass and derives its vectors behind it; a semantic query (~) holds
276
- # until the vectors of its candidates landed. eager derives vectors inside the pass, as before.
277
- PLURNK_SERVICE_DERIVE_VECTORS=background
278
- # Derivation producer concurrency: how many entries may materialize graphs/chunk plans at once.
279
- # Unset uses a host-relative square-root fan-out; the separate embedding pool uses the available
280
- # cores. A positive integer is an exact operator budget; -1 explicitly claims every available core.
139
+ # Concurrent parser derivations: empty = sqrt(available cores); -1 = all cores; positive N = exact cap.
281
140
  PLURNK_SERVICE_DERIVE_CONCURRENCY=
282
- # Maximum symbol or reference rows written by one search-index SQLite statement.
141
+ # Maximum symbol/reference rows per indexing SQLite statement.
283
142
  PLURNK_SERVICE_DERIVE_STORE_BATCH=1024
284
- # Interval between intermediate progress heartbeats during active semantic indexing.
285
- # Lifecycle start, failure, and completion are immediate; no-op passes stay silent.
143
+ # Progress heartbeat, ms; starts, failures, and completion are immediate; no-op passes stay silent.
286
144
  PLURNK_SERVICE_DERIVE_PROGRESS_HEARTBEAT_MS=15000
145
+
146
+ # --- Forensic interviews ---
147
+ # Initial requiem output allowance, tokens; used only for requested out-of-band interviews.
148
+ PLURNK_SERVICE_REQUIEM_MAX_TOKENS=16384
149
+ # Retry allowance for empty length-limited testimony; must be at least the initial allowance.
150
+ PLURNK_SERVICE_REQUIEM_RETRY_MAX_TOKENS=32768
151
+
152
+ # --- Retention: information is kept; transient data is collected ({§retention-policy}) ---
153
+ # Packet compositions kept per loop, newest first; -1 = every packet, forever.
154
+ PLURNK_SERVICE_RETAIN_PACKET_TURNS=-1
155
+ # Packet compositions kept by age, ms since the turn completed; -1 = no age limit.
156
+ PLURNK_SERVICE_RETAIN_PACKET_MS=-1
157
+ # Collect packet items no turn's composition references (1), or keep them (0).
158
+ PLURNK_SERVICE_COLLECT_PACKET_ITEMS=1
159
+ # Collect derivations no channel, turn source, or log row cites (1), or keep them (0).
160
+ PLURNK_SERVICE_COLLECT_DERIVATIONS=1
161
+ # Retention cadence while the daemon runs, ms; 0 = at shutdown only.
162
+ PLURNK_SERVICE_RETENTION_INTERVAL_MS=3600000