@plurnk/plurnk-service 1.29.0 → 3.0.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 (385) hide show
  1. package/.env.defaults +14 -33
  2. package/INSTALL.md +68 -17
  3. package/README.md +9 -7
  4. package/SPEC.md +503 -741
  5. package/dist/build-info.json +1 -1
  6. package/dist/content/body-preview.d.ts.map +1 -1
  7. package/dist/content/body-preview.js +11 -2
  8. package/dist/content/body-preview.js.map +1 -1
  9. package/dist/content/edit-receipt.d.ts +1 -1
  10. package/dist/content/edit-receipt.d.ts.map +1 -1
  11. package/dist/content/edit-receipt.js +1 -1
  12. package/dist/content/edit-receipt.js.map +1 -1
  13. package/dist/content/line-marker.js +1 -1
  14. package/dist/content/line-marker.js.map +1 -1
  15. package/dist/content/path-mimetype.js +1 -1
  16. package/dist/content/path-mimetype.js.map +1 -1
  17. package/dist/content/read-projector.d.ts.map +1 -1
  18. package/dist/content/read-projector.js +3 -12
  19. package/dist/content/read-projector.js.map +1 -1
  20. package/dist/core/AdministrativeLoop.d.ts +1 -1
  21. package/dist/core/AdministrativeLoop.d.ts.map +1 -1
  22. package/dist/core/AdministrativeLoop.js +2 -6
  23. package/dist/core/AdministrativeLoop.js.map +1 -1
  24. package/dist/core/AdmittedTurnExecutor.d.ts +4 -3
  25. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  26. package/dist/core/AdmittedTurnExecutor.js +19 -17
  27. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  28. package/dist/core/BareBatchRunner.d.ts +2 -2
  29. package/dist/core/BareBatchRunner.d.ts.map +1 -1
  30. package/dist/core/BareBatchRunner.js.map +1 -1
  31. package/dist/core/BudgetReadout.d.ts +1 -0
  32. package/dist/core/BudgetReadout.d.ts.map +1 -1
  33. package/dist/core/BudgetReadout.js +12 -0
  34. package/dist/core/BudgetReadout.js.map +1 -1
  35. package/dist/core/CapabilityPolicies.d.ts +2 -4
  36. package/dist/core/CapabilityPolicies.d.ts.map +1 -1
  37. package/dist/core/CapabilityPolicies.js +3 -23
  38. package/dist/core/CapabilityPolicies.js.map +1 -1
  39. package/dist/core/CapabilityResolver.d.ts +9 -2
  40. package/dist/core/CapabilityResolver.d.ts.map +1 -1
  41. package/dist/core/CapabilityResolver.js +34 -5
  42. package/dist/core/CapabilityResolver.js.map +1 -1
  43. package/dist/core/ChannelWrite.d.ts +0 -2
  44. package/dist/core/ChannelWrite.d.ts.map +1 -1
  45. package/dist/core/ChannelWrite.js.map +1 -1
  46. package/dist/core/ClientInteractions.d.ts +3 -2
  47. package/dist/core/ClientInteractions.d.ts.map +1 -1
  48. package/dist/core/ClientInteractions.js +21 -12
  49. package/dist/core/ClientInteractions.js.map +1 -1
  50. package/dist/core/ClientInteractions.sql +8 -2
  51. package/dist/core/CoreSchemeServices.d.ts +1 -0
  52. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  53. package/dist/core/CoreSchemeServices.js +1 -0
  54. package/dist/core/CoreSchemeServices.js.map +1 -1
  55. package/dist/core/DataStatementRunner.js +1 -1
  56. package/dist/core/DataStatementRunner.js.map +1 -1
  57. package/dist/core/Dispatcher.d.ts +3 -2
  58. package/dist/core/Dispatcher.d.ts.map +1 -1
  59. package/dist/core/Dispatcher.js +15 -21
  60. package/dist/core/Dispatcher.js.map +1 -1
  61. package/dist/core/Engine.d.ts +2 -2
  62. package/dist/core/Engine.d.ts.map +1 -1
  63. package/dist/core/Engine.js +4 -3
  64. package/dist/core/Engine.js.map +1 -1
  65. package/dist/core/EnvFlags.d.ts.map +1 -1
  66. package/dist/core/EnvFlags.js +4 -3
  67. package/dist/core/EnvFlags.js.map +1 -1
  68. package/dist/core/ExecutorRegistry.d.ts +3 -17
  69. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  70. package/dist/core/ExecutorRegistry.js +6 -6
  71. package/dist/core/ExecutorRegistry.js.map +1 -1
  72. package/dist/core/FabricatedLog.js +1 -1
  73. package/dist/core/FabricatedLog.js.map +1 -1
  74. package/dist/core/HostPaths.d.ts +2 -1
  75. package/dist/core/HostPaths.d.ts.map +1 -1
  76. package/dist/core/HostPaths.js +14 -2
  77. package/dist/core/HostPaths.js.map +1 -1
  78. package/dist/core/KillHandler.js +1 -1
  79. package/dist/core/KillHandler.js.map +1 -1
  80. package/dist/core/LogVisibility.d.ts.map +1 -1
  81. package/dist/core/LogVisibility.js +8 -17
  82. package/dist/core/LogVisibility.js.map +1 -1
  83. package/dist/core/LoopDriver.d.ts.map +1 -1
  84. package/dist/core/LoopDriver.js +4 -6
  85. package/dist/core/LoopDriver.js.map +1 -1
  86. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  87. package/dist/core/LoopLifecycle.js +4 -9
  88. package/dist/core/LoopLifecycle.js.map +1 -1
  89. package/dist/core/LoopLifecycle.sql +6 -6
  90. package/dist/core/OperatorConfig.d.ts +1 -0
  91. package/dist/core/OperatorConfig.d.ts.map +1 -1
  92. package/dist/core/OperatorConfig.js +10 -2
  93. package/dist/core/OperatorConfig.js.map +1 -1
  94. package/dist/core/PacketBuilder.d.ts +5 -7
  95. package/dist/core/PacketBuilder.d.ts.map +1 -1
  96. package/dist/core/PacketBuilder.js +49 -119
  97. package/dist/core/PacketBuilder.js.map +1 -1
  98. package/dist/core/PacketBuilder.sql +15 -0
  99. package/dist/core/ProposalLifecycle.d.ts +1 -1
  100. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  101. package/dist/core/ProposalLifecycle.js +18 -20
  102. package/dist/core/ProposalLifecycle.js.map +1 -1
  103. package/dist/core/ProposalPolicies.d.ts +6 -0
  104. package/dist/core/ProposalPolicies.d.ts.map +1 -0
  105. package/dist/core/ProposalPolicies.js +28 -0
  106. package/dist/core/ProposalPolicies.js.map +1 -0
  107. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  108. package/dist/core/ProviderInstantiate.js +3 -4
  109. package/dist/core/ProviderInstantiate.js.map +1 -1
  110. package/dist/core/ResourceSelector.js +2 -2
  111. package/dist/core/ResourceSelector.js.map +1 -1
  112. package/dist/core/ResourceTransfers.js +3 -3
  113. package/dist/core/ResourceTransfers.js.map +1 -1
  114. package/dist/core/RuntimeWorker.sql +1 -2
  115. package/dist/core/SchemeRegistry.d.ts +5 -4
  116. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  117. package/dist/core/SchemeRegistry.js +11 -12
  118. package/dist/core/SchemeRegistry.js.map +1 -1
  119. package/dist/core/ToolInputSchema.d.ts +1 -0
  120. package/dist/core/ToolInputSchema.d.ts.map +1 -1
  121. package/dist/core/ToolInputSchema.js +8 -2
  122. package/dist/core/ToolInputSchema.js.map +1 -1
  123. package/dist/core/ToolResources.d.ts +1 -0
  124. package/dist/core/ToolResources.d.ts.map +1 -1
  125. package/dist/core/ToolResources.js +12 -6
  126. package/dist/core/ToolResources.js.map +1 -1
  127. package/dist/core/Turn.js +1 -1
  128. package/dist/core/Turn.js.map +1 -1
  129. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  130. package/dist/core/TurnDispositionHandler.js +1 -7
  131. package/dist/core/TurnDispositionHandler.js.map +1 -1
  132. package/dist/core/TurnMaterialization.js +1 -1
  133. package/dist/core/TurnMaterialization.js.map +1 -1
  134. package/dist/core/TurnOps.d.ts +1 -1
  135. package/dist/core/TurnOps.d.ts.map +1 -1
  136. package/dist/core/TurnOps.js +4 -12
  137. package/dist/core/TurnOps.js.map +1 -1
  138. package/dist/core/TurnRunner.d.ts +1 -2
  139. package/dist/core/TurnRunner.d.ts.map +1 -1
  140. package/dist/core/TurnRunner.js +85 -81
  141. package/dist/core/TurnRunner.js.map +1 -1
  142. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  143. package/dist/core/WorkerControlHandler.js +1 -8
  144. package/dist/core/WorkerControlHandler.js.map +1 -1
  145. package/dist/core/WorkerName.d.ts +1 -0
  146. package/dist/core/WorkerName.d.ts.map +1 -1
  147. package/dist/core/WorkerName.js +2 -0
  148. package/dist/core/WorkerName.js.map +1 -1
  149. package/dist/core/WorkerName.sql +2 -2
  150. package/dist/core/WorkerOwners.d.ts +13 -0
  151. package/dist/core/WorkerOwners.d.ts.map +1 -0
  152. package/dist/core/WorkerOwners.js +44 -0
  153. package/dist/core/WorkerOwners.js.map +1 -0
  154. package/dist/core/WorkerOwners.sql +55 -0
  155. package/dist/core/caps/DbNotifyCaps.js +2 -2
  156. package/dist/core/caps/DbNotifyCaps.js.map +1 -1
  157. package/dist/core/caps/DbProjectionCaps.js +1 -1
  158. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  159. package/dist/core/env-catalog.d.ts +3 -0
  160. package/dist/core/env-catalog.d.ts.map +1 -1
  161. package/dist/core/env-catalog.js +44 -9
  162. package/dist/core/env-catalog.js.map +1 -1
  163. package/dist/core/env-defaults.d.ts +2 -1
  164. package/dist/core/env-defaults.d.ts.map +1 -1
  165. package/dist/core/env-defaults.js +17 -9
  166. package/dist/core/env-defaults.js.map +1 -1
  167. package/dist/core/fork.sql +3 -4
  168. package/dist/core/packet-inject.js +0 -2
  169. package/dist/core/packet-inject.js.map +1 -1
  170. package/dist/core/packet-wire.d.ts +2 -11
  171. package/dist/core/packet-wire.d.ts.map +1 -1
  172. package/dist/core/packet-wire.js +31 -111
  173. package/dist/core/packet-wire.js.map +1 -1
  174. package/dist/core/plurnk-uri.d.ts +1 -1
  175. package/dist/core/plurnk-uri.d.ts.map +1 -1
  176. package/dist/core/plurnk-uri.js +4 -4
  177. package/dist/core/plurnk-uri.js.map +1 -1
  178. package/dist/core/scheme-types.d.ts +2 -1
  179. package/dist/core/scheme-types.d.ts.map +1 -1
  180. package/dist/core/types.d.ts +0 -1
  181. package/dist/core/types.d.ts.map +1 -1
  182. package/dist/core/unregistered-scheme.d.ts +1 -3
  183. package/dist/core/unregistered-scheme.d.ts.map +1 -1
  184. package/dist/core/unregistered-scheme.js +3 -11
  185. package/dist/core/unregistered-scheme.js.map +1 -1
  186. package/dist/evidence/EvidenceReader.d.ts +14 -0
  187. package/dist/evidence/EvidenceReader.d.ts.map +1 -0
  188. package/dist/evidence/EvidenceReader.js +137 -0
  189. package/dist/evidence/EvidenceReader.js.map +1 -0
  190. package/dist/{digest → evidence}/digest.sql +1 -2
  191. package/dist/schemes/EffectPolicy.d.ts.map +1 -1
  192. package/dist/schemes/EffectPolicy.js +1 -10
  193. package/dist/schemes/EffectPolicy.js.map +1 -1
  194. package/dist/schemes/Exec.d.ts.map +1 -1
  195. package/dist/schemes/Exec.js +19 -26
  196. package/dist/schemes/Exec.js.map +1 -1
  197. package/dist/schemes/ExecOutputScheme.d.ts +1 -1
  198. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  199. package/dist/schemes/File.d.ts.map +1 -1
  200. package/dist/schemes/File.js +11 -17
  201. package/dist/schemes/File.js.map +1 -1
  202. package/dist/schemes/Log.d.ts.map +1 -1
  203. package/dist/schemes/Log.js +14 -11
  204. package/dist/schemes/Log.js.map +1 -1
  205. package/dist/schemes/QuestionTool.d.ts.map +1 -1
  206. package/dist/schemes/QuestionTool.js +1 -3
  207. package/dist/schemes/QuestionTool.js.map +1 -1
  208. package/dist/schemes/{Skill.d.ts → ResourceTreeScheme.d.ts} +5 -6
  209. package/dist/schemes/ResourceTreeScheme.d.ts.map +1 -0
  210. package/dist/schemes/{Skill.js → ResourceTreeScheme.js} +63 -43
  211. package/dist/schemes/ResourceTreeScheme.js.map +1 -0
  212. package/dist/schemes/Worker.d.ts.map +1 -1
  213. package/dist/schemes/Worker.js +7 -9
  214. package/dist/schemes/Worker.js.map +1 -1
  215. package/dist/schemes/_entry-crud.sql +1 -1
  216. package/dist/schemes/_entry-find.js +2 -2
  217. package/dist/schemes/_entry-find.js.map +1 -1
  218. package/dist/schemes/_entry-find.sql +1 -1
  219. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  220. package/dist/schemes/_entry-fts.js +3 -9
  221. package/dist/schemes/_entry-fts.js.map +1 -1
  222. package/dist/schemes/_entry-manifest.js +1 -1
  223. package/dist/schemes/_entry-manifest.js.map +1 -1
  224. package/dist/schemes/_entry-ops.js +1 -1
  225. package/dist/schemes/_entry-ops.js.map +1 -1
  226. package/dist/server/AgentRoots.d.ts +2 -1
  227. package/dist/server/AgentRoots.d.ts.map +1 -1
  228. package/dist/server/AgentRoots.js +13 -10
  229. package/dist/server/AgentRoots.js.map +1 -1
  230. package/dist/server/ConfigurationDiagnostics.d.ts +5 -3
  231. package/dist/server/ConfigurationDiagnostics.d.ts.map +1 -1
  232. package/dist/server/ConfigurationDiagnostics.js +24 -8
  233. package/dist/server/ConfigurationDiagnostics.js.map +1 -1
  234. package/dist/server/Daemon.d.ts +25 -16
  235. package/dist/server/Daemon.d.ts.map +1 -1
  236. package/dist/server/Daemon.js +137 -96
  237. package/dist/server/Daemon.js.map +1 -1
  238. package/dist/server/DrainSupervisor.d.ts +1 -4
  239. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  240. package/dist/server/DrainSupervisor.js +1 -11
  241. package/dist/server/DrainSupervisor.js.map +1 -1
  242. package/dist/server/EnvFunctionality.d.ts +3 -5
  243. package/dist/server/EnvFunctionality.d.ts.map +1 -1
  244. package/dist/server/EnvFunctionality.js +5 -7
  245. package/dist/server/EnvFunctionality.js.map +1 -1
  246. package/dist/server/Functionality.d.ts +3 -2
  247. package/dist/server/Functionality.d.ts.map +1 -1
  248. package/dist/server/Functionality.js +43 -14
  249. package/dist/server/Functionality.js.map +1 -1
  250. package/dist/server/FunctionalityManager.d.ts +3 -4
  251. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  252. package/dist/server/FunctionalityManager.js +17 -9
  253. package/dist/server/FunctionalityManager.js.map +1 -1
  254. package/dist/server/HttpListener.d.ts +2 -0
  255. package/dist/server/HttpListener.d.ts.map +1 -1
  256. package/dist/server/HttpListener.js +23 -9
  257. package/dist/server/HttpListener.js.map +1 -1
  258. package/dist/server/MembersFunctionality.d.ts +2 -5
  259. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  260. package/dist/server/MembersFunctionality.js +5 -3
  261. package/dist/server/MembersFunctionality.js.map +1 -1
  262. package/dist/server/ModuleHost.d.ts +33 -0
  263. package/dist/server/ModuleHost.d.ts.map +1 -0
  264. package/dist/server/ModuleHost.js +2 -0
  265. package/dist/server/ModuleHost.js.map +1 -0
  266. package/dist/server/PlurnkSkill.d.ts.map +1 -1
  267. package/dist/server/PlurnkSkill.js +54 -6
  268. package/dist/server/PlurnkSkill.js.map +1 -1
  269. package/dist/server/ServiceModules.d.ts +0 -2
  270. package/dist/server/ServiceModules.d.ts.map +1 -1
  271. package/dist/server/ServiceModules.js +5 -9
  272. package/dist/server/ServiceModules.js.map +1 -1
  273. package/dist/server/WorkspacePlugins.d.ts +2 -11
  274. package/dist/server/WorkspacePlugins.d.ts.map +1 -1
  275. package/dist/server/WorkspacePlugins.js.map +1 -1
  276. package/dist/server/WorkspaceResidency.d.ts +2 -1
  277. package/dist/server/WorkspaceResidency.d.ts.map +1 -1
  278. package/dist/server/WorkspaceStorage.d.ts.map +1 -1
  279. package/dist/server/WorkspaceStorage.js +7 -4
  280. package/dist/server/WorkspaceStorage.js.map +1 -1
  281. package/dist/server/client-input.d.ts +1 -2
  282. package/dist/server/client-input.d.ts.map +1 -1
  283. package/dist/server/client-input.js +2 -13
  284. package/dist/server/client-input.js.map +1 -1
  285. package/dist/server/dispatch-as-plurnk.js +1 -1
  286. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  287. package/dist/server/drain.sql +6 -6
  288. package/dist/server/envelope.d.ts +2 -1
  289. package/dist/server/envelope.d.ts.map +1 -1
  290. package/dist/server/envelope.js +7 -17
  291. package/dist/server/envelope.js.map +1 -1
  292. package/dist/server/envelope.sql +5 -5
  293. package/dist/server/module-discovery.d.ts +11 -3
  294. package/dist/server/module-discovery.d.ts.map +1 -1
  295. package/dist/server/module-discovery.js +32 -18
  296. package/dist/server/module-discovery.js.map +1 -1
  297. package/dist/server/seam-proposal-list.sql +6 -4
  298. package/dist/service.d.ts.map +1 -1
  299. package/dist/service.js +58 -65
  300. package/dist/service.js.map +1 -1
  301. package/migrations/003_loops.sql +2 -2
  302. package/migrations/006_log.sql +1 -1
  303. package/migrations/016_selection_statements.sql +44 -0
  304. package/migrations/017_skills_module.sql +6 -0
  305. package/migrations/018_worker_owners.sql +102 -0
  306. package/migrations/019_interactive_owners.sql +6 -0
  307. package/migrations/020_log_projection.sql +143 -0
  308. package/package.json +71 -76
  309. package/dist/core/EmissionHead.d.ts +0 -8
  310. package/dist/core/EmissionHead.d.ts.map +0 -1
  311. package/dist/core/EmissionHead.js +0 -29
  312. package/dist/core/EmissionHead.js.map +0 -1
  313. package/dist/core/LegacyHome.d.ts +0 -10
  314. package/dist/core/LegacyHome.d.ts.map +0 -1
  315. package/dist/core/LegacyHome.js +0 -170
  316. package/dist/core/LegacyHome.js.map +0 -1
  317. package/dist/core/LoopPolicies.d.ts +0 -7
  318. package/dist/core/LoopPolicies.d.ts.map +0 -1
  319. package/dist/core/LoopPolicies.js +0 -42
  320. package/dist/core/LoopPolicies.js.map +0 -1
  321. package/dist/core/LoopPolicyReader.d.ts +0 -7
  322. package/dist/core/LoopPolicyReader.d.ts.map +0 -1
  323. package/dist/core/LoopPolicyReader.js +0 -33
  324. package/dist/core/LoopPolicyReader.js.map +0 -1
  325. package/dist/core/LoopPolicyReader.sql +0 -6
  326. package/dist/core/operation-target-groups.d.ts +0 -3
  327. package/dist/core/operation-target-groups.d.ts.map +0 -1
  328. package/dist/core/operation-target-groups.js +0 -77
  329. package/dist/core/operation-target-groups.js.map +0 -1
  330. package/dist/digest/Digest.d.ts +0 -10
  331. package/dist/digest/Digest.d.ts.map +0 -1
  332. package/dist/digest/Digest.js +0 -252
  333. package/dist/digest/Digest.js.map +0 -1
  334. package/dist/digest/DigestEvidence.d.ts +0 -11
  335. package/dist/digest/DigestEvidence.d.ts.map +0 -1
  336. package/dist/digest/DigestEvidence.js +0 -66
  337. package/dist/digest/DigestEvidence.js.map +0 -1
  338. package/dist/digest/DigestRender.d.ts +0 -18
  339. package/dist/digest/DigestRender.d.ts.map +0 -1
  340. package/dist/digest/DigestRender.js +0 -1044
  341. package/dist/digest/DigestRender.js.map +0 -1
  342. package/dist/digest/DigestRequiem.d.ts +0 -13
  343. package/dist/digest/DigestRequiem.d.ts.map +0 -1
  344. package/dist/digest/DigestRequiem.js +0 -337
  345. package/dist/digest/DigestRequiem.js.map +0 -1
  346. package/dist/digest/digest-db.d.ts +0 -3
  347. package/dist/digest/digest-db.d.ts.map +0 -1
  348. package/dist/digest/digest-db.js +0 -68
  349. package/dist/digest/digest-db.js.map +0 -1
  350. package/dist/digest/digest-paths.d.ts +0 -6
  351. package/dist/digest/digest-paths.d.ts.map +0 -1
  352. package/dist/digest/digest-paths.js +0 -14
  353. package/dist/digest/digest-paths.js.map +0 -1
  354. package/dist/digest/digest-rows.d.ts +0 -346
  355. package/dist/digest/digest-rows.d.ts.map +0 -1
  356. package/dist/digest/digest-rows.js +0 -2
  357. package/dist/digest/digest-rows.js.map +0 -1
  358. package/dist/index.d.ts +0 -15
  359. package/dist/index.d.ts.map +0 -1
  360. package/dist/index.js +0 -23
  361. package/dist/index.js.map +0 -1
  362. package/dist/schemes/Skill.d.ts.map +0 -1
  363. package/dist/schemes/Skill.js.map +0 -1
  364. package/dist/server/DaemonModule.d.ts +0 -101
  365. package/dist/server/DaemonModule.d.ts.map +0 -1
  366. package/dist/server/DaemonModule.js +0 -2
  367. package/dist/server/DaemonModule.js.map +0 -1
  368. package/dist/server/SkillSource.d.ts +0 -37
  369. package/dist/server/SkillSource.d.ts.map +0 -1
  370. package/dist/server/SkillSource.js +0 -267
  371. package/dist/server/SkillSource.js.map +0 -1
  372. package/dist/server/SkillsFunctionality.d.ts +0 -45
  373. package/dist/server/SkillsFunctionality.d.ts.map +0 -1
  374. package/dist/server/SkillsFunctionality.js +0 -405
  375. package/dist/server/SkillsFunctionality.js.map +0 -1
  376. package/dist/server/skills-problems.d.ts +0 -8
  377. package/dist/server/skills-problems.d.ts.map +0 -1
  378. package/dist/server/skills-problems.js +0 -18
  379. package/dist/server/skills-problems.js.map +0 -1
  380. package/dist/share/Share.d.ts +0 -15
  381. package/dist/share/Share.d.ts.map +0 -1
  382. package/dist/share/Share.js +0 -106
  383. package/dist/share/Share.js.map +0 -1
  384. package/dist/share/share.sql +0 -6
  385. package/docs/skills.md +0 -73
@@ -1 +1 @@
1
- {"version":3,"file":"DbProjectionCaps.js","sourceRoot":"","sources":["../../../src/core/caps/DbProjectionCaps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DbProjectionCaps.js","sourceRoot":"","sources":["../../../src/core/caps/DbProjectionCaps.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,9 @@ interface Declaration {
10
10
  export default class EnvCatalog {
11
11
  #private;
12
12
  static declarations(text: string): readonly Declaration[];
13
+ static declaredName(line: string): string | null;
14
+ static isFamily(name: string): boolean;
15
+ static declares(files: readonly EnvDefaultsFile[]): (key: string) => boolean;
13
16
  static candidates(files: readonly EnvDefaultsFile[], query?: EnvCatalogQuery): readonly {
14
17
  alias: string;
15
18
  summary?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"env-catalog.d.ts","sourceRoot":"","sources":["../../src/core/env-catalog.ts"],"names":[],"mappings":"AAWA,OAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEtE,MAAM,WAAW,eAAe;IAE5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,UAAU,WAAW;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;;IAI3B,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE,CAaxD;IAWD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,EAAE,KAAK,GAAE,eAAoB,GAAG,SAAS;QACxF,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/D,UAAU,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KACnE,EAAE,CAwBF;IAYD,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,EAAE,KAAK,GAAE,eAAoB,GAAG,MAAM,CAcrF;CACJ"}
1
+ {"version":3,"file":"env-catalog.d.ts","sourceRoot":"","sources":["../../src/core/env-catalog.ts"],"names":[],"mappings":"AAWA,OAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAStE,MAAM,WAAW,eAAe;IAE5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC5B;AAKD,UAAU,WAAW;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,CAAC,OAAO,OAAO,UAAU;;IAI3B,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,WAAW,EAAE,CAWxD;IAGD,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE/C;IAGD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErC;IAID,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAiB3E;IAWD,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,EAAE,KAAK,GAAE,eAAoB,GAAG,SAAS;QACxF,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE;YAAE,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;QAC/D,UAAU,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAC;KACnE,EAAE,CA0BF;IAYD,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,EAAE,KAAK,GAAE,eAAoB,GAAG,MAAM,CAcrF;CACJ"}
@@ -10,6 +10,12 @@
10
10
  // including names nothing declares. The catalog answers a different question — which keys have a
11
11
  // CONSUMER. `FOO=bar` is valid and nothing reads it; `PAGER=less` is valid and something does.
12
12
  import EnvDefaults from "./env-defaults.js";
13
+ // A declaration line: `KEY=value` is live, `# KEY=value` optional. A `<placeholder>` segment in the
14
+ // name declares a family of keys ({§operator-config-undeclared-key}), only ever written commented.
15
+ const DECLARATION = /^#?\s*([A-Za-z_][A-Za-z0-9_]*(?:<[^<>\s=]+>[A-Za-z0-9_]*)*)=/u;
16
+ const PLACEHOLDER = /<[^<>\s=]+>/gu;
17
+ // What a placeholder, or the scope after a declared name's `_`, stands for: an alias, a name, a tag.
18
+ const SEGMENT = "[\\p{L}\\p{N}_.-]+";
13
19
  export default class EnvCatalog {
14
20
  // Declarations in file order, each carrying the comment lines that introduce it. A commented
15
21
  // declaration (`# PLURNK_EXECS_ONLY=sh,jq`) is an optional knob, not prose, so it is a
@@ -18,22 +24,48 @@ export default class EnvCatalog {
18
24
  const out = [];
19
25
  let pending = [];
20
26
  for (const line of text.split("\n")) {
21
- const bare = line.trim();
22
- if (bare.length === 0) {
27
+ const name = EnvCatalog.declaredName(line);
28
+ // A blank line, or a comment that is not an assignment, introduces whatever comes next.
29
+ if (name === null) {
23
30
  pending.push(line);
24
31
  continue;
25
32
  }
26
- const assignment = /^#?\s*([A-Za-z_][A-Za-z0-9_]*)=/u.exec(bare);
27
- // A comment that is not an assignment introduces whatever comes next.
28
- if (assignment === null) {
29
- pending.push(line);
30
- continue;
31
- }
32
- out.push({ name: assignment[1], text: [...pending, line].join("\n") });
33
+ out.push({ name, text: [...pending, line].join("\n") });
33
34
  pending = [];
34
35
  }
35
36
  return out;
36
37
  }
38
+ // The name one panel line declares, or null for prose. Every reader of a panel shares it.
39
+ static declaredName(line) {
40
+ return DECLARATION.exec(line.trim())?.[1] ?? null;
41
+ }
42
+ // The declaration grammar admits `<` only to open a placeholder.
43
+ static isFamily(name) {
44
+ return name.includes("<");
45
+ }
46
+ // {§operator-config-undeclared-key} Whether an installed package declares a key: by name, as a
47
+ // declared name's `_` scope (a per-alias knob, `PLURNK_MODEL_<alias>`), or as a family member.
48
+ static declares(files) {
49
+ const names = new Set();
50
+ const families = [];
51
+ for (const { text } of files) {
52
+ for (const { name } of EnvCatalog.declarations(text)) {
53
+ if (EnvCatalog.isFamily(name))
54
+ families.push(new RegExp(`^${name.replaceAll(PLACEHOLDER, SEGMENT)}$`, "u"));
55
+ else
56
+ names.add(name);
57
+ }
58
+ }
59
+ const scope = new RegExp(`^${SEGMENT}$`, "u");
60
+ const scoped = (key) => {
61
+ for (let at = key.indexOf("_"); at !== -1; at = key.indexOf("_", at + 1)) {
62
+ if (names.has(key.slice(0, at)) && scope.test(key.slice(at + 1)))
63
+ return true;
64
+ }
65
+ return false;
66
+ };
67
+ return (key) => names.has(key) || scoped(key) || families.some((family) => family.test(key));
68
+ }
37
69
  // The name, or the comment that documents it — a Worker looks for a variable by what it is
38
70
  // for ("search") before it knows what it is called. Never the value: a value match would
39
71
  // surface a value the model did not ask to see — the catalog carries shipped defaults rather
@@ -49,6 +81,9 @@ export default class EnvCatalog {
49
81
  const out = [];
50
82
  for (const file of selected) {
51
83
  for (const declaration of EnvCatalog.declarations(file.text)) {
84
+ // A family is no name a Worker can set; only its members are.
85
+ if (EnvCatalog.isFamily(declaration.name))
86
+ continue;
52
87
  if (term !== undefined && !EnvCatalog.#matches(declaration, term))
53
88
  continue;
54
89
  const lines = declaration.text.split("\n");
@@ -1 +1 @@
1
- {"version":3,"file":"env-catalog.js","sourceRoot":"","sources":["../../src/core/env-catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-catalog.js","sourceRoot":"","sources":["../../src/core/env-catalog.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { ConfigurationError } from "@plurnk/plurnk-meta";
1
+ import { ConfigurationError, type PackageCandidate } from "@plurnk/plurnk-meta";
2
2
  import type { PluginReport } from "@plurnk/plurnk-agent-plugins";
3
3
  import HostPaths from "./HostPaths.ts";
4
4
  export type EnvDefaultsFile = {
@@ -13,6 +13,7 @@ export interface EnvDefaultsCollection {
13
13
  }
14
14
  export default class EnvDefaults {
15
15
  #private;
16
+ static members(dirs: readonly PackageCandidate[]): Promise<PackageCandidate[]>;
16
17
  static collect(serviceRoot: string, nodeModules: string, { hostPaths }?: {
17
18
  readonly hostPaths?: HostPaths;
18
19
  }): Promise<EnvDefaultsCollection>;
@@ -1 +1 @@
1
- {"version":3,"file":"env-defaults.d.ts","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"AAGA,OAAa,EAAE,kBAAkB,EAAyB,MAAM,qBAAqB,CAAC;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAYvC,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;CAC7C;AAED,MAAM,CAAC,OAAO,OAAO,WAAW;;IAuC5B,OAAa,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,SAA2B,EAAE,GAAE;QAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;KAC7B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuBtC;IAGD,OAAa,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAapF;IAID,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAU7F;IAGD,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAEhF;IAID,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,MAAM,CAW9D;CACJ"}
1
+ {"version":3,"file":"env-defaults.d.ts","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"AAGA,OAAa,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEtF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAYvC,MAAM,MAAM,eAAe,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,WAAW,qBAAqB;IAClC,QAAQ,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,CAAC;IAC3C,QAAQ,CAAC,mBAAmB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5D,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;CAC7C;AAED,MAAM,CAAC,OAAO,OAAO,WAAW;;IAqB5B,OAAa,OAAO,CAAC,IAAI,EAAE,SAAS,gBAAgB,EAAE,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAanF;IAcD,OAAa,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,SAA2B,EAAE,GAAE;QAC5F,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;KAC7B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuBtC;IAGD,OAAa,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAapF;IAID,MAAM,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAU7F;IAGD,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAEhF;IAID,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,SAAS,eAAe,EAAE,GAAG,MAAM,CAW9D;CACJ"}
@@ -25,17 +25,18 @@ export default class EnvDefaults {
25
25
  throw new Error(`${owner}: malformed .env.defaults — invalid key(s): ${junk.map((k) => JSON.stringify(k)).join(", ")}`);
26
26
  return { owner, text, parsed };
27
27
  }
28
- // Enumerate installed package dirs via the shared membership primitives
29
- // (@plurnk/plurnk-meta); keep ecosystem members that ship a .env.defaults.
30
- static async #memberFiles(dirs) {
31
- const files = [];
32
- for (const { dir, name } of dirs.toSorted((a, b) => a.name.localeCompare(b.name))) {
33
- if (!Meta.isTrusted(name))
28
+ // The installed ecosystem members, name-sorted: trusted packages in the `@plurnk/*` scope or
29
+ // declaring `plurnk` in package.json. The defaults floor and the plurnk skill's contracts
30
+ // index share this one membership ({§plurnk-skill}).
31
+ static async members(dirs) {
32
+ const members = [];
33
+ for (const candidate of dirs.toSorted((a, b) => a.name.localeCompare(b.name))) {
34
+ if (!Meta.isTrusted(candidate.name))
34
35
  continue;
35
- if (!name.startsWith("@plurnk/")) {
36
+ if (!candidate.name.startsWith("@plurnk/")) {
36
37
  let pkg;
37
38
  try {
38
- pkg = JSON.parse(await readFile(join(dir, "package.json"), "utf8"));
39
+ pkg = JSON.parse(await readFile(join(candidate.dir, "package.json"), "utf8"));
39
40
  }
40
41
  catch {
41
42
  continue;
@@ -43,6 +44,13 @@ export default class EnvDefaults {
43
44
  if (pkg.plurnk === undefined)
44
45
  continue; // not an ecosystem member
45
46
  }
47
+ members.push(candidate);
48
+ }
49
+ return members;
50
+ }
51
+ static async #memberFiles(dirs) {
52
+ const files = [];
53
+ for (const { dir, name } of await EnvDefaults.members(dirs)) {
46
54
  const file = await EnvDefaults.#readDefaults(dir, name);
47
55
  if (file !== null)
48
56
  files.push(file);
@@ -82,7 +90,7 @@ export default class EnvDefaults {
82
90
  }
83
91
  return { files, configurationErrors, reports: sources.reports };
84
92
  }
85
- // {§operator-config-env-defaults} A standard bundle's panel is native extension data, not a portable component.
93
+ // {§operator-config-env-defaults} A standard bundle's panel is extension data, not a portable component.
86
94
  static async nativeFile(root, owner) {
87
95
  const location = join(root, "ai.plurnk", ".env.defaults");
88
96
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"env-defaults.js","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"env-defaults.js","sourceRoot":"","sources":["../../src/core/env-defaults.ts"],"names":[],"mappings":"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"}
@@ -14,12 +14,12 @@ BEGIN
14
14
  -- Loops: inherited history, never live work — a non-terminal status is clamped to 200 and
15
15
  -- given a plain success result ({§machine-processes-fork-copies-the-log}).
16
16
  INSERT INTO loops (
17
- worker_id, sequence, status, prompt, policy, model_route_id,
17
+ worker_id, sequence, status, prompt, model_route_id,
18
18
  spawn_model_route_id, effort, max_turns, terminal_result
19
19
  )
20
20
  SELECT NEW.id, l.sequence,
21
21
  CASE WHEN l.status IN (200, 413, 429, 499, 500, 504, 508) THEN l.status ELSE 200 END,
22
- l.prompt, l.policy, l.model_route_id, l.spawn_model_route_id, l.effort, l.max_turns,
22
+ l.prompt, l.model_route_id, l.spawn_model_route_id, l.effort, l.max_turns,
23
23
  CASE WHEN l.status IN (200, 413, 429, 499, 500, 504, 508) THEN l.terminal_result ELSE '{"status":200}' END
24
24
  FROM loops l
25
25
  WHERE l.worker_id = NEW.parent_worker_id
@@ -93,8 +93,7 @@ BEGIN
93
93
  WHERE e.worker_id = NEW.parent_worker_id
94
94
  ORDER BY e.id;
95
95
 
96
- -- Current projection: membership and folded intervals. The retired admission columns
97
- -- ({§context-output-selection}) stay at their defaults on the fork.
96
+ -- Current projection: membership and folded intervals.
98
97
  UPDATE log_entry_projections
99
98
  SET active = source.active,
100
99
  folded = source.folded
@@ -30,6 +30,4 @@ export const readSystemPolicy = async () => {
30
30
  const env = raw?.trim();
31
31
  return readPolicy(env ? resolveInjectPath(env) : new HostPaths().policyFile, !!env);
32
32
  };
33
- // Project policy is retired from the system slot: the project AGENTS.md now
34
- // rides turn 0 as the foisted AGENTS.md entry ({§turn0-agents-stunt}).
35
33
  //# sourceMappingURL=packet-inject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packet-inject.js","sourceRoot":"","sources":["../../src/core/packet-inject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,2FAA2F;AAC3F,uDAAuD;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAU,EAAE,CACrD,IAAI,SAAS,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,iFAAiF;AACjF,mFAAmF;AACnF,MAAM,UAAU,GAAG,KAAK,EAAE,IAAY,EAAE,QAAiB,EAA0B,EAAE;IACjF,IAAI,CAAC;QAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;IAAC,CAAC;IAC7D,OAAO,GAAG,EAAE,CAAC;QAAC,IAAI,QAAQ;YAAE,MAAM,GAAG,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AACzD,CAAC,CAAC;AAEF,sGAAsG;AACtG,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC9C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,wCAAwC;IACjG,MAAM,GAAG,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC;IACxB,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxF,CAAC,CAAC;AAEF,4EAA4E;AAC5E,uEAAuE"}
1
+ {"version":3,"file":"packet-inject.js","sourceRoot":"","sources":["../../src/core/packet-inject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAEvC,2FAA2F;AAC3F,uDAAuD;AACvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAU,EAAE,CACrD,IAAI,SAAS,EAAE,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,IAAI,EAAE,CAAC;IAC7D,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,iFAAiF;AACjF,mFAAmF;AACnF,MAAM,UAAU,GAAG,KAAK,EAAE,IAAY,EAAE,QAAiB,EAA0B,EAAE;IACjF,IAAI,CAAC;QAAC,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;IAAC,CAAC;IAC7D,OAAO,GAAG,EAAE,CAAC;QAAC,IAAI,QAAQ;YAAE,MAAM,GAAG,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AACzD,CAAC,CAAC;AAEF,sGAAsG;AACtG,4DAA4D;AAC5D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC9C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC,CAAC,wCAAwC;IACjG,MAAM,GAAG,GAAG,GAAG,EAAE,IAAI,EAAE,CAAC;IACxB,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACxF,CAAC,CAAC"}
@@ -100,14 +100,8 @@ export interface RenderedLog {
100
100
  readonly records: readonly string[];
101
101
  readonly curationTargets: readonly ReclaimableLogItem[];
102
102
  readonly attachments: readonly PacketAttachment[];
103
- readonly emissions: readonly RenderedEmission[];
104
103
  readonly bodied: readonly BodiedLogRow[];
105
104
  }
106
- export interface RenderedEmission {
107
- readonly coordinate: string;
108
- readonly content: string;
109
- readonly weight: number;
110
- }
111
105
  export default class PacketWire {
112
106
  #private;
113
107
  static renderSlot(sections: SectionView[], slot: "system" | "user"): string;
@@ -119,12 +113,9 @@ export default class PacketWire {
119
113
  static renderLog(entries: unknown, weighContent: WeighContent, options?: RenderLogOptions): string;
120
114
  static renderLogWithAccounting(entries: unknown, weighContent: WeighContent, options?: RenderLogOptions): RenderedLog;
121
115
  static sectionContent(packet: Packet, name: string): string;
122
- static packetToWireMessages(packet: Packet, emissions: ReadonlyMap<string, string>): Array<{
123
- role: string;
116
+ static packetToWireMessages(packet: Packet): Array<ChatMessage & {
124
117
  content: string;
125
118
  }>;
126
- static deliveredEmission(frozen: string): string;
127
- static placedEmissions(sections: readonly SectionView[], emissions: ReadonlyMap<string, string>): string[];
128
119
  static isArrival(e: {
129
120
  readonly op?: unknown;
130
121
  readonly origin?: unknown;
@@ -132,7 +123,7 @@ export default class PacketWire {
132
123
  }): boolean;
133
124
  static entryView(r: StoredLogRow, transientOpenLogEntryId?: number | null): LogEntryView;
134
125
  static rowTokens(view: LogEntryView, weighContent: WeighContent, options?: RenderLogOptions): number;
135
- static wireMessages(packet: RequestPacket, emissions: ReadonlyMap<string, string>, bytesOf: (attachment: PacketAttachment) => Promise<Uint8Array>, accepts?: (kind: PacketAttachment["kind"]) => boolean): Promise<ChatMessage[]>;
126
+ static wireMessages(packet: RequestPacket, bytesOf: (attachment: PacketAttachment) => Promise<Uint8Array>, accepts?: (kind: PacketAttachment["kind"]) => boolean): Promise<ChatMessage[]>;
136
127
  static attachmentCaption(attachment: PacketAttachment): string;
137
128
  }
138
129
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"packet-wire.d.ts","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"packet-wire.d.ts","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
@@ -95,7 +95,7 @@ export default class PacketWire {
95
95
  static renderLogWithAccounting(entries, weighContent, options = {}) {
96
96
  const log = Array.isArray(entries) ? entries : [];
97
97
  if (log.length === 0)
98
- return { content: "", records: [], curationTargets: [], attachments: [], emissions: [], bodied: [] };
98
+ return { content: "", records: [], curationTargets: [], attachments: [], bodied: [] };
99
99
  const rows = PacketWire.#renderLogEntries(log, weighContent, options);
100
100
  const records = rows.map(({ content }) => content);
101
101
  return {
@@ -103,7 +103,6 @@ export default class PacketWire {
103
103
  records,
104
104
  curationTargets: rows.flatMap(({ curationTarget }) => curationTarget === null ? [] : [curationTarget]),
105
105
  attachments: rows.flatMap(({ attachment }) => attachment === null ? [] : [attachment]),
106
- emissions: rows.flatMap(({ emission }) => emission === null ? [] : [emission]),
107
106
  bodied: rows.flatMap(({ bodied }) => bodied === null ? [] : [bodied]),
108
107
  };
109
108
  }
@@ -114,94 +113,17 @@ export default class PacketWire {
114
113
  const s = packet.sections?.find((x) => x.name === name);
115
114
  return typeof s?.content === "string" ? s.content : "";
116
115
  }
117
- // {§packet-wire-envelope} — the packet as a transcript: the system slot, then the user sections in
118
- // order, split after each placed emission row so that row's emission follows as the worker's own
119
- // assistant message. The user contents joined by one blank line equal renderSlot(user) byte for
120
- // byte; the request always closes on a user message.
121
- static packetToWireMessages(packet, emissions) {
122
- const sections = packet.sections ?? [];
123
- const messages = [{ role: "system", content: PacketWire.renderSlot(sections, "system") }];
124
- let pending = [];
125
- for (const section of sections) {
126
- if (section.slot !== "user")
127
- continue;
128
- const rendered = PacketWire.renderSection(section);
129
- if (rendered.length === 0)
130
- continue;
131
- if (section.name !== "log") {
132
- pending.push(rendered);
133
- continue;
134
- }
135
- for (const { content, coordinate } of PacketWire.#logRecords(rendered)) {
136
- pending.push(content);
137
- const frozen = coordinate === null ? undefined : emissions.get(coordinate);
138
- const emission = frozen === undefined ? "" : PacketWire.deliveredEmission(frozen);
139
- // {§emission-row}: an emission of only NOTE and WAIT delivers nothing; its row stands.
140
- if (emission.length === 0)
141
- continue;
142
- messages.push({ role: "user", content: pending.join("\n\n") });
143
- messages.push({ role: "assistant", content: emission });
144
- pending = [];
145
- }
146
- }
147
- const closing = pending.join("\n\n");
148
- if (closing.length === 0 && messages.at(-1)?.role === "assistant")
149
- throw new Error("a request never ends on an emission: nothing follows the last one");
150
- messages.push({ role: "user", content: closing });
151
- return messages;
152
- }
153
- // {§emission-row} — the wire omits NOTE and WAIT blocks, whose rows show them whole; the frozen
154
- // projection keeps every statement. Deliberately a text filter: the projection is TurnOps' own
155
- // rendering, whose fences are longer than any backtick run inside them, so a block is read back by
156
- // its fences alone, whatever era froze it.
157
- static deliveredEmission(frozen) {
158
- const lines = frozen.split("\n");
159
- const kept = [];
160
- for (let index = 0; index < lines.length;) {
161
- const fence = /^`{3,}/u.exec(lines[index])?.[0];
162
- if (fence === undefined)
163
- throw new Error(`an emission block opens with a fence, not ${JSON.stringify(lines[index])}`);
164
- const end = lines.findIndex((line, at) => at > index && (line === fence || line.startsWith(`${fence} <!-- `)));
165
- if (end === -1)
166
- throw new Error("an emission block closes with its own fence");
167
- if (!new RegExp(`^${fence}(?:NOTE|WAIT)\\b`, "u").test(lines[index]))
168
- kept.push(lines.slice(index, end + 1).join("\n"));
169
- index = end + 2;
170
- }
171
- return kept.join("\n\n");
172
- }
173
- // {§emission-row} — the coordinates of the emission rows present in the final log section, in order.
174
- // Every emission row must be announced by the render pass that built the map.
175
- static placedEmissions(sections, emissions) {
176
- const log = sections.find((section) => section.slot === "user" && section.name === "log");
177
- if (log === undefined)
178
- return [];
179
- const placed = [];
180
- for (const { coordinate, leaf } of PacketWire.#logRecords(PacketWire.renderSection(log))) {
181
- if (coordinate === null)
182
- continue;
183
- if (emissions.has(coordinate)) {
184
- if (placed.includes(coordinate))
185
- throw new Error(`log:///${coordinate}/emission appears twice in one log section`);
186
- placed.push(coordinate);
187
- }
188
- else if (leaf === "emission") {
189
- throw new Error(`log:///${coordinate}/emission reached the log section without its emission`);
190
- }
191
- }
192
- return placed;
193
- }
194
- static #logRecords(rendered) {
195
- return rendered.split(/\n\n(?=### log:\/\/\/)/u).map((content) => {
196
- const match = /^### log:\/\/\/(\d+\/\d+\/\d+)(?:\/(\S*))?(?=\s|$)/mu.exec(content);
197
- return { content, coordinate: match?.[1] ?? null, leaf: match?.[2] ?? null };
198
- });
116
+ // {§packet-wire-envelope}: the stored slots are the text envelope, without assistant replay.
117
+ static packetToWireMessages(packet) {
118
+ return [
119
+ { role: "system", content: PacketWire.renderSlot(packet.sections ?? [], "system") },
120
+ { role: "user", content: PacketWire.renderSlot(packet.sections ?? [], "user") },
121
+ ];
199
122
  }
200
123
  // Number a non-READ body line as `<N>:<line>` — `N:` followed by NO separator whitespace
201
124
  // ({§render-rule-line-navigable-prefix}): the leading digit prevents column-zero fence collisions and gives
202
125
  // the model line refs for free (`READ (...) <42-46>`), while the absence of any separator means a
203
- // reproduced line has nothing between `N:` and the content to copy — the hard-tab separator used
204
- // to leak into edit bodies and corrupt indentation. The content's OWN leading whitespace is
126
+ // reproduced line has nothing between `N:` and the content to copy. The content's OWN leading whitespace is
205
127
  // content, preserved verbatim. `N` is left-padded to the body's line-range width so every body
206
128
  // keeps one stable content column; FIND rows pass the complete result-set width so their pages
207
129
  // share a column with the whole set.
@@ -455,7 +377,7 @@ export default class PacketWire {
455
377
  const rx = (typeof e.rx === "string" ? PacketWire.#safeParse(e.rx) : e.rx);
456
378
  const facts = PacketWire.#rowResultFacts(identity, e, rx, bodies[index]);
457
379
  const projected = PacketWire.#rowBody(identity, e, bodies[index], visibility[index], facts);
458
- return PacketWire.#rowAccounting(identity, e, bodies[index], visibility[index], projected, weighContent, options);
380
+ return PacketWire.#rowAccounting(identity, e, visibility[index], projected, weighContent, options);
459
381
  });
460
382
  }
461
383
  static #attrsOf(e) {
@@ -601,11 +523,10 @@ export default class PacketWire {
601
523
  // {§worker-wait-timing} — the accepted bound, not elapsed time or the current configuration.
602
524
  if (op === "WAIT" && e.attrs !== null && typeof e.attrs === "object" && "waiting" in e.attrs) {
603
525
  const seconds = e.attrs.waiting;
604
- if (typeof seconds !== "number" || !Number.isFinite(seconds) || (seconds < 0 && seconds !== -1)) {
526
+ if (typeof seconds !== "number" || !Number.isFinite(seconds) || seconds < 0) {
605
527
  throw new TypeError("A WAIT receipt carries a malformed waiting bound.");
606
528
  }
607
- if (seconds >= 0)
608
- meta.waitSeconds = seconds;
529
+ meta.waitSeconds = seconds;
609
530
  }
610
531
  // An execution's output is a separate stream entry ({§exec-stream}); its address rides in a
611
532
  // `stream` link, distinct from the runtime-owned invocation target.
@@ -774,8 +695,7 @@ export default class PacketWire {
774
695
  };
775
696
  }
776
697
  // The body the row shows: the canonical full body, shared with log READ, log FIND and search
777
- // derivation, whole. Whether a result fit was decided where it landed ({§context-fit}); the packet
778
- // cuts nothing but the emission head ({§emission-row}).
698
+ // derivation, whole. Whether a result fit was decided where it landed ({§context-fit}).
779
699
  static #rowBody(identity, e, fullBody, bodyVisibility, facts) {
780
700
  const { meta, op } = identity;
781
701
  const projectedBody = {
@@ -852,7 +772,7 @@ export default class PacketWire {
852
772
  // The row's native attachment, a landed-unfit arrival's size, and the accounting field that
853
773
  // participates in the row it measures: iterate until its decimal width and therefore the
854
774
  // rendered row's curation weight are stable. {§packet-token-accounting}
855
- static #rowAccounting(identity, e, fullBody, bodyVisibility, projected, weighContent, options) {
775
+ static #rowAccounting(identity, e, bodyVisibility, projected, weighContent, options) {
856
776
  const { meta, op, coordinate, path, target } = identity;
857
777
  const { body, display } = projected;
858
778
  const nativeCandidate = op === "READ" && typeof e.status === "number" && e.status >= 200 && e.status < 300
@@ -868,11 +788,6 @@ export default class PacketWire {
868
788
  const attachment = !(bodyVisibility.totalLines > 0 && bodyVisibility.fullyFolded)
869
789
  ? native
870
790
  : null;
871
- // {§emission-row}: an emission row carries its frozen emission outside its record, and charges what
872
- // the wire delivers of it, as the worker's own message, exactly as a native part is charged.
873
- const emission = LogEntryProjection.isEmission(e) && coordinate !== null
874
- ? { coordinate, content: fullBody.content, weight: weighContent(PacketWire.deliveredEmission(fullBody.content)) }
875
- : null;
876
791
  // {§log-wire-format}: one descriptive heading, the facts, the body.
877
792
  const render = (open, tokens) => {
878
793
  const lines = [`### ${path}${identity.description === null ? "" : ` ${identity.description}`} · ${tokens}`];
@@ -889,18 +804,18 @@ export default class PacketWire {
889
804
  delete meta.tokensAttachment;
890
805
  let tokens = 0;
891
806
  for (let pass = 0; pass < 8; pass += 1) {
892
- const next = weighContent(render(open, tokens)) + (part?.weight ?? 0) + (emission?.weight ?? 0);
807
+ const next = weighContent(render(open, tokens)) + (part?.weight ?? 0);
893
808
  if (next === tokens)
894
809
  return { content: render(open, tokens), tokens };
895
810
  tokens = next;
896
811
  }
897
812
  throw new Error("packet log row accounting did not converge");
898
813
  };
899
- const row = (rendered, part, bodied) => ({ content: rendered.content, curationTarget: { path, tokens: rendered.tokens }, attachment: part, emission, bodied });
814
+ const row = (rendered, part, bodied) => ({ content: rendered.content, curationTarget: { path, tokens: rendered.tokens }, attachment: part, bodied });
900
815
  const whole = converge(display === "open", attachment);
901
816
  // {§context-own-rows-fit} — a row the wall may take carries a body or a native part and is not an
902
- // emission row, whose head-cut program keeps the turn legible.
903
- if (typeof e.id !== "number" || emission !== null || (display !== "open" && attachment === null))
817
+ // emission row, whose folded record carries no body.
818
+ if (typeof e.id !== "number" || LogEntryProjection.isEmission(e) || (display !== "open" && attachment === null))
904
819
  return row(whole, attachment, null);
905
820
  if (!(options.bodiless?.has(e.id) ?? false))
906
821
  return row(whole, attachment, { id: e.id, tokens: whole.tokens });
@@ -953,19 +868,24 @@ export default class PacketWire {
953
868
  }
954
869
  // {§packet-attachment-parts} — the wire form with native parts: user text first, then each accepted
955
870
  // retained native part in observation order.
956
- static async wireMessages(packet, emissions, bytesOf, accepts = () => true) {
957
- const messages = PacketWire.packetToWireMessages(packet, emissions);
958
- // {§packet-attachment-parts} — native parts ride the closing user message.
959
- const closing = messages.at(-1);
960
- const parts = [{ type: "text", text: closing.content }];
961
- for (const attachment of packet.attachments ?? []) {
962
- if (!accepts(attachment.kind))
963
- continue;
871
+ static async wireMessages(packet, bytesOf, accepts = () => true) {
872
+ const messages = PacketWire.packetToWireMessages(packet);
873
+ const attachments = (packet.attachments ?? []).filter(({ kind }) => accepts(kind));
874
+ if (attachments.length === 0)
875
+ return messages;
876
+ // {§previous-emission}: native inputs precede the final section, never follow it.
877
+ const preceding = packet.sections.filter(({ name }) => name !== "previous-emission");
878
+ const previous = packet.sections.find(({ name }) => name === "previous-emission");
879
+ const parts = [{ type: "text", text: PacketWire.renderSlot(preceding, "user") }];
880
+ for (const attachment of attachments) {
964
881
  const bytes = await bytesOf(attachment);
965
882
  parts.push({ type: "text", text: PacketWire.attachmentCaption(attachment) });
966
883
  parts.push({ type: "file", data: bytes, mediaType: attachment.mimetype });
967
884
  }
968
- return parts.length === 1 ? messages : [...messages.slice(0, -1), { role: "user", content: parts }];
885
+ const tail = previous === undefined ? "" : PacketWire.renderSection(previous);
886
+ if (tail.length > 0)
887
+ parts.push({ type: "text", text: `\n\n${tail}` });
888
+ return [messages[0], { role: "user", content: parts }];
969
889
  }
970
890
  // {§packet-attachment-parts} — the part's identity: a native part on the user turn otherwise reads as
971
891
  // an arrival, and the model cannot tell that the READ row is what keeps it in the packet.