@plurnk/plurnk-service 1.14.2 → 1.16.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 (308) hide show
  1. package/.env.defaults +2 -2
  2. package/SPEC.md +243 -173
  3. package/digest-sql/curation/curation.sql +1 -1
  4. package/dist/build-info.json +1 -1
  5. package/dist/content/byte-view.d.ts +14 -0
  6. package/dist/content/byte-view.d.ts.map +1 -0
  7. package/dist/content/byte-view.js +33 -0
  8. package/dist/content/byte-view.js.map +1 -0
  9. package/dist/content/edit-receipt.d.ts.map +1 -1
  10. package/dist/content/edit-receipt.js +12 -1
  11. package/dist/content/edit-receipt.js.map +1 -1
  12. package/dist/content/line-marker.d.ts +2 -1
  13. package/dist/content/line-marker.d.ts.map +1 -1
  14. package/dist/content/line-marker.js +1 -0
  15. package/dist/content/line-marker.js.map +1 -1
  16. package/dist/content/matcher.d.ts +1 -0
  17. package/dist/content/matcher.d.ts.map +1 -1
  18. package/dist/content/matcher.js +1 -0
  19. package/dist/content/matcher.js.map +1 -1
  20. package/dist/content/read-projector.d.ts +4 -1
  21. package/dist/content/read-projector.d.ts.map +1 -1
  22. package/dist/content/read-projector.js +80 -3
  23. package/dist/content/read-projector.js.map +1 -1
  24. package/dist/core/AdmittedTurnExecutor.d.ts +43 -0
  25. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -0
  26. package/dist/core/AdmittedTurnExecutor.js +245 -0
  27. package/dist/core/AdmittedTurnExecutor.js.map +1 -0
  28. package/dist/core/BareBatchRunner.d.ts +26 -0
  29. package/dist/core/BareBatchRunner.d.ts.map +1 -0
  30. package/dist/core/BareBatchRunner.js +104 -0
  31. package/dist/core/BareBatchRunner.js.map +1 -0
  32. package/dist/core/BudgetReadout.d.ts +1 -1
  33. package/dist/core/BudgetReadout.d.ts.map +1 -1
  34. package/dist/core/BudgetReadout.js +42 -47
  35. package/dist/core/BudgetReadout.js.map +1 -1
  36. package/dist/core/CapabilityResolver.d.ts +2 -1
  37. package/dist/core/CapabilityResolver.d.ts.map +1 -1
  38. package/dist/core/CapabilityResolver.js +8 -9
  39. package/dist/core/CapabilityResolver.js.map +1 -1
  40. package/dist/core/ChannelWrite.d.ts +1 -1
  41. package/dist/core/ChannelWrite.d.ts.map +1 -1
  42. package/dist/core/DataStatementRunner.d.ts +35 -0
  43. package/dist/core/DataStatementRunner.d.ts.map +1 -0
  44. package/dist/core/DataStatementRunner.js +252 -0
  45. package/dist/core/DataStatementRunner.js.map +1 -0
  46. package/dist/core/Dispatcher.d.ts +8 -3
  47. package/dist/core/Dispatcher.d.ts.map +1 -1
  48. package/dist/core/Dispatcher.js +88 -738
  49. package/dist/core/Dispatcher.js.map +1 -1
  50. package/dist/core/EditMutations.d.ts +39 -0
  51. package/dist/core/EditMutations.d.ts.map +1 -0
  52. package/dist/core/EditMutations.js +418 -0
  53. package/dist/core/EditMutations.js.map +1 -0
  54. package/dist/core/Engine.d.ts +2 -23
  55. package/dist/core/Engine.d.ts.map +1 -1
  56. package/dist/core/Engine.js +18 -240
  57. package/dist/core/Engine.js.map +1 -1
  58. package/dist/core/Engine.sql +24 -23
  59. package/dist/core/KillHandler.d.ts +32 -0
  60. package/dist/core/KillHandler.d.ts.map +1 -0
  61. package/dist/core/KillHandler.js +179 -0
  62. package/dist/core/KillHandler.js.map +1 -0
  63. package/dist/core/LogVisibility.d.ts +1 -1
  64. package/dist/core/LogVisibility.d.ts.map +1 -1
  65. package/dist/core/LogVisibility.js +3 -4
  66. package/dist/core/LogVisibility.js.map +1 -1
  67. package/dist/core/LogWriter.d.ts +42 -0
  68. package/dist/core/LogWriter.d.ts.map +1 -0
  69. package/dist/core/LogWriter.js +136 -0
  70. package/dist/core/LogWriter.js.map +1 -0
  71. package/dist/core/LoopDriver.d.ts +46 -0
  72. package/dist/core/LoopDriver.d.ts.map +1 -0
  73. package/dist/core/LoopDriver.js +263 -0
  74. package/dist/core/LoopDriver.js.map +1 -0
  75. package/dist/core/LoopLifecycle.d.ts +2 -1
  76. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  77. package/dist/core/MembershipMaterialization.d.ts +7 -0
  78. package/dist/core/MembershipMaterialization.d.ts.map +1 -0
  79. package/dist/core/MembershipMaterialization.js +283 -0
  80. package/dist/core/MembershipMaterialization.js.map +1 -0
  81. package/dist/core/MutationEffects.d.ts +29 -0
  82. package/dist/core/MutationEffects.d.ts.map +1 -0
  83. package/dist/core/MutationEffects.js +318 -0
  84. package/dist/core/MutationEffects.js.map +1 -0
  85. package/dist/core/OverflowTurn.d.ts +4 -4
  86. package/dist/core/OverflowTurn.d.ts.map +1 -1
  87. package/dist/core/OverflowTurn.js +6 -7
  88. package/dist/core/OverflowTurn.js.map +1 -1
  89. package/dist/core/PacketBuilder.d.ts.map +1 -1
  90. package/dist/core/PacketBuilder.js +31 -9
  91. package/dist/core/PacketBuilder.js.map +1 -1
  92. package/dist/core/ResourceMutations.d.ts +12 -36
  93. package/dist/core/ResourceMutations.d.ts.map +1 -1
  94. package/dist/core/ResourceMutations.js +27 -1351
  95. package/dist/core/ResourceMutations.js.map +1 -1
  96. package/dist/core/ResourceSelector.d.ts +21 -0
  97. package/dist/core/ResourceSelector.d.ts.map +1 -0
  98. package/dist/core/ResourceSelector.js +233 -0
  99. package/dist/core/ResourceSelector.js.map +1 -0
  100. package/dist/core/ResourceTransfers.d.ts +55 -0
  101. package/dist/core/ResourceTransfers.d.ts.map +1 -0
  102. package/dist/core/ResourceTransfers.js +525 -0
  103. package/dist/core/ResourceTransfers.js.map +1 -0
  104. package/dist/core/SchemeRegistry.js +2 -2
  105. package/dist/core/SchemeRegistry.js.map +1 -1
  106. package/dist/core/SendBroadcastHandler.d.ts +40 -0
  107. package/dist/core/SendBroadcastHandler.d.ts.map +1 -0
  108. package/dist/core/SendBroadcastHandler.js +159 -0
  109. package/dist/core/SendBroadcastHandler.js.map +1 -0
  110. package/dist/core/StoredPacket.d.ts +11 -0
  111. package/dist/core/StoredPacket.d.ts.map +1 -1
  112. package/dist/core/StoredPacket.js +22 -1
  113. package/dist/core/StoredPacket.js.map +1 -1
  114. package/dist/core/StrikeRail.d.ts.map +1 -1
  115. package/dist/core/StrikeRail.js +19 -9
  116. package/dist/core/StrikeRail.js.map +1 -1
  117. package/dist/core/TokenCalibration.d.ts +16 -0
  118. package/dist/core/TokenCalibration.d.ts.map +1 -0
  119. package/dist/core/TokenCalibration.js +35 -0
  120. package/dist/core/TokenCalibration.js.map +1 -0
  121. package/dist/core/ToolResources.d.ts.map +1 -1
  122. package/dist/core/ToolResources.js +15 -12
  123. package/dist/core/ToolResources.js.map +1 -1
  124. package/dist/core/TurnMaterialization.d.ts +37 -0
  125. package/dist/core/TurnMaterialization.d.ts.map +1 -0
  126. package/dist/core/TurnMaterialization.js +296 -0
  127. package/dist/core/TurnMaterialization.js.map +1 -0
  128. package/dist/core/TurnOps.d.ts.map +1 -1
  129. package/dist/core/TurnOps.js +6 -8
  130. package/dist/core/TurnOps.js.map +1 -1
  131. package/dist/core/TurnRunner.d.ts +15 -27
  132. package/dist/core/TurnRunner.d.ts.map +1 -1
  133. package/dist/core/TurnRunner.js +76 -670
  134. package/dist/core/TurnRunner.js.map +1 -1
  135. package/dist/core/WorkerControlHandler.d.ts +15 -0
  136. package/dist/core/WorkerControlHandler.d.ts.map +1 -0
  137. package/dist/core/WorkerControlHandler.js +89 -0
  138. package/dist/core/WorkerControlHandler.js.map +1 -0
  139. package/dist/core/attachments.d.ts +14 -0
  140. package/dist/core/attachments.d.ts.map +1 -0
  141. package/dist/core/attachments.js +18 -0
  142. package/dist/core/attachments.js.map +1 -0
  143. package/dist/core/fork.d.ts.map +1 -1
  144. package/dist/core/fork.js +0 -4
  145. package/dist/core/fork.js.map +1 -1
  146. package/dist/core/fork.sql +5 -16
  147. package/dist/core/git-membership.d.ts +15 -0
  148. package/dist/core/git-membership.d.ts.map +1 -1
  149. package/dist/core/git-membership.js +4 -273
  150. package/dist/core/git-membership.js.map +1 -1
  151. package/dist/core/git-state.d.ts +2 -1
  152. package/dist/core/git-state.d.ts.map +1 -1
  153. package/dist/core/mutation-types.d.ts +102 -0
  154. package/dist/core/mutation-types.d.ts.map +1 -0
  155. package/dist/core/mutation-types.js +2 -0
  156. package/dist/core/mutation-types.js.map +1 -0
  157. package/dist/core/operation-target-groups.js +1 -1
  158. package/dist/core/operation-target-groups.js.map +1 -1
  159. package/dist/core/packet-wire.d.ts +7 -6
  160. package/dist/core/packet-wire.d.ts.map +1 -1
  161. package/dist/core/packet-wire.js +96 -68
  162. package/dist/core/packet-wire.js.map +1 -1
  163. package/dist/core/plurnk-uri.d.ts +0 -1
  164. package/dist/core/plurnk-uri.d.ts.map +1 -1
  165. package/dist/core/plurnk-uri.js +1 -1
  166. package/dist/core/plurnk-uri.js.map +1 -1
  167. package/dist/core/statement-primary.d.ts +4 -0
  168. package/dist/core/statement-primary.d.ts.map +1 -0
  169. package/dist/core/statement-primary.js +3 -0
  170. package/dist/core/statement-primary.js.map +1 -0
  171. package/dist/core/teaching-corpus.d.ts +0 -1
  172. package/dist/core/teaching-corpus.d.ts.map +1 -1
  173. package/dist/core/teaching-corpus.js +0 -9
  174. package/dist/core/teaching-corpus.js.map +1 -1
  175. package/dist/core/turn-scheduler.js +3 -3
  176. package/dist/core/turn-scheduler.js.map +1 -1
  177. package/dist/core/turn-signals.d.ts +15 -0
  178. package/dist/core/turn-signals.d.ts.map +1 -0
  179. package/dist/core/turn-signals.js +19 -0
  180. package/dist/core/turn-signals.js.map +1 -0
  181. package/dist/core/worker-settings.d.ts +0 -1
  182. package/dist/core/worker-settings.d.ts.map +1 -1
  183. package/dist/core/worker-settings.js +1 -1
  184. package/dist/core/worker-settings.js.map +1 -1
  185. package/dist/digest/Digest.d.ts +3 -16
  186. package/dist/digest/Digest.d.ts.map +1 -1
  187. package/dist/digest/Digest.js +10 -958
  188. package/dist/digest/Digest.js.map +1 -1
  189. package/dist/digest/DigestRender.d.ts +12 -0
  190. package/dist/digest/DigestRender.d.ts.map +1 -0
  191. package/dist/digest/DigestRender.js +641 -0
  192. package/dist/digest/DigestRender.js.map +1 -0
  193. package/dist/digest/DigestRequiem.d.ts +13 -0
  194. package/dist/digest/DigestRequiem.d.ts.map +1 -0
  195. package/dist/digest/DigestRequiem.js +332 -0
  196. package/dist/digest/DigestRequiem.js.map +1 -0
  197. package/dist/digest/digest-rows.d.ts +303 -0
  198. package/dist/digest/digest-rows.d.ts.map +1 -0
  199. package/dist/digest/digest-rows.js +2 -0
  200. package/dist/digest/digest-rows.js.map +1 -0
  201. package/dist/digest/digest.sql +1 -7
  202. package/dist/observe/api.d.ts +0 -2
  203. package/dist/observe/api.d.ts.map +1 -1
  204. package/dist/observe/api.js +2 -2
  205. package/dist/observe/api.js.map +1 -1
  206. package/dist/observe/metrics.d.ts +0 -1
  207. package/dist/observe/metrics.d.ts.map +1 -1
  208. package/dist/observe/metrics.js +0 -1
  209. package/dist/observe/metrics.js.map +1 -1
  210. package/dist/schemes/Exec.d.ts +4 -1
  211. package/dist/schemes/Exec.d.ts.map +1 -1
  212. package/dist/schemes/Exec.js +89 -48
  213. package/dist/schemes/Exec.js.map +1 -1
  214. package/dist/schemes/ExecOutputScheme.d.ts +2 -1
  215. package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
  216. package/dist/schemes/ExecOutputScheme.js +3 -3
  217. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  218. package/dist/schemes/File.d.ts +4 -1
  219. package/dist/schemes/File.d.ts.map +1 -1
  220. package/dist/schemes/File.js +100 -13
  221. package/dist/schemes/File.js.map +1 -1
  222. package/dist/schemes/Log.d.ts +4 -5
  223. package/dist/schemes/Log.d.ts.map +1 -1
  224. package/dist/schemes/Log.js +26 -118
  225. package/dist/schemes/Log.js.map +1 -1
  226. package/dist/schemes/Log.sql +1 -66
  227. package/dist/schemes/Prompt.js +1 -1
  228. package/dist/schemes/Prompt.js.map +1 -1
  229. package/dist/schemes/Worker.d.ts.map +1 -1
  230. package/dist/schemes/Worker.js +1 -13
  231. package/dist/schemes/Worker.js.map +1 -1
  232. package/dist/schemes/_entry-crud.d.ts +3 -1
  233. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  234. package/dist/schemes/_entry-crud.js +18 -3
  235. package/dist/schemes/_entry-crud.js.map +1 -1
  236. package/dist/schemes/_entry-find.d.ts +4 -2
  237. package/dist/schemes/_entry-find.d.ts.map +1 -1
  238. package/dist/schemes/_entry-find.js +79 -10
  239. package/dist/schemes/_entry-find.js.map +1 -1
  240. package/dist/schemes/_entry-manifest.d.ts +1 -2
  241. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  242. package/dist/schemes/_entry-ops.d.ts +2 -1
  243. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  244. package/dist/schemes/_entry-ops.js +20 -2
  245. package/dist/schemes/_entry-ops.js.map +1 -1
  246. package/dist/schemes/_entry-semantic.d.ts +1 -0
  247. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  248. package/dist/schemes/_entry-semantic.js +3 -0
  249. package/dist/schemes/_entry-semantic.js.map +1 -1
  250. package/dist/schemes/_entry-semantic.sql +2 -2
  251. package/dist/schemes/_entry-send.d.ts +0 -1
  252. package/dist/schemes/_entry-send.d.ts.map +1 -1
  253. package/dist/schemes/_entry-send.js +5 -80
  254. package/dist/schemes/_entry-send.js.map +1 -1
  255. package/dist/schemes/exec-runtime.d.ts +7 -0
  256. package/dist/schemes/exec-runtime.d.ts.map +1 -0
  257. package/dist/schemes/exec-runtime.js +2 -0
  258. package/dist/schemes/exec-runtime.js.map +1 -0
  259. package/dist/server/ClientReads.d.ts +34 -0
  260. package/dist/server/ClientReads.d.ts.map +1 -0
  261. package/dist/server/ClientReads.js +210 -0
  262. package/dist/server/ClientReads.js.map +1 -0
  263. package/dist/server/Daemon.d.ts +12 -22
  264. package/dist/server/Daemon.d.ts.map +1 -1
  265. package/dist/server/Daemon.js +31 -362
  266. package/dist/server/Daemon.js.map +1 -1
  267. package/dist/server/DaemonModule.d.ts +6 -5
  268. package/dist/server/DaemonModule.d.ts.map +1 -1
  269. package/dist/server/DrainSupervisor.d.ts +3 -2
  270. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  271. package/dist/server/DrainSupervisor.js +7 -3
  272. package/dist/server/DrainSupervisor.js.map +1 -1
  273. package/dist/server/Functionality.d.ts +0 -12
  274. package/dist/server/Functionality.d.ts.map +1 -1
  275. package/dist/server/Functionality.js.map +1 -1
  276. package/dist/server/FunctionalityManager.d.ts +0 -1
  277. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  278. package/dist/server/FunctionalityManager.js +3 -3
  279. package/dist/server/FunctionalityManager.js.map +1 -1
  280. package/dist/server/MembersFunctionality.d.ts +2 -13
  281. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  282. package/dist/server/MembersFunctionality.js +4 -4
  283. package/dist/server/MembersFunctionality.js.map +1 -1
  284. package/dist/server/SkillsFunctionality.d.ts +1 -7
  285. package/dist/server/SkillsFunctionality.d.ts.map +1 -1
  286. package/dist/server/SkillsFunctionality.js +3 -3
  287. package/dist/server/SkillsFunctionality.js.map +1 -1
  288. package/dist/server/WorkerModelResolver.d.ts +17 -0
  289. package/dist/server/WorkerModelResolver.d.ts.map +1 -0
  290. package/dist/server/WorkerModelResolver.js +166 -0
  291. package/dist/server/WorkerModelResolver.js.map +1 -0
  292. package/dist/server/daemon-results.d.ts +5 -0
  293. package/dist/server/daemon-results.d.ts.map +1 -0
  294. package/dist/server/daemon-results.js +7 -0
  295. package/dist/server/daemon-results.js.map +1 -0
  296. package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
  297. package/dist/server/dispatch-as-plurnk.js +4 -6
  298. package/dist/server/dispatch-as-plurnk.js.map +1 -1
  299. package/dist/server/logEntry.d.ts +0 -1
  300. package/dist/server/logEntry.d.ts.map +1 -1
  301. package/dist/server/logEntry.js +1 -13
  302. package/dist/server/logEntry.js.map +1 -1
  303. package/dist/server/logEntry.sql +1 -5
  304. package/dist/server/loopDocs.d.ts.map +1 -1
  305. package/dist/server/loopDocs.js +11 -2
  306. package/dist/server/loopDocs.js.map +1 -1
  307. package/migrations/001_schema.sql +30 -347
  308. package/package.json +30 -30
@@ -1,4 +1,4 @@
1
- import { parsePath, PathSyntax, TagSignal } from "@plurnk/plurnk-contracts";
1
+ import { parsePath, PathSyntax } from "@plurnk/plurnk-contracts";
2
2
  import { WebFetcher, WebMaterializationError, } from "@plurnk/plurnk-schemes-http";
3
3
  import EffectPolicy from "./EffectPolicy.js";
4
4
  import EntryCrud from "./_entry-crud.js";
@@ -23,6 +23,7 @@ import LogEntryProjection from "../core/LogEntryProjection.js";
23
23
  import LogBody from "../core/LogBody.js";
24
24
  import { setTimeout as delay } from "node:timers/promises";
25
25
  import ExecScheduler from "./ExecScheduler.js";
26
+ import { execRouteOf } from "./exec-runtime.js";
26
27
  // Executors are discovered + probed at boot into ExecutorRegistry and reach
27
28
  // the scheme through ctx.executors ({§exec-registry-resolves}). Each runtime tag
28
29
  // resolves to its sibling executor; the scheme itself stays runtime-agnostic.
@@ -52,14 +53,15 @@ const resourceSourceOf = (target) => {
52
53
  // Dispatcher.#writeLog). Exec owns this convention, so it — not the client — turns
53
54
  // the pathname into the entry's coordinate, mirrored onto stream payloads so
54
55
  // clients read fields instead of parsing the URI. The
55
- // coordinate is the trailing three segments (runtime-agnostic); a pathname that
56
- // isn't a numeric triple yields undefined (no coordinate on the wire).
56
+ // coordinate is the numeric triple before the `/EXEC` op segment ({§log-coordinate-hierarchy}:
57
+ // every item address is loop/turn/item/OP); any other pathname yields undefined (no
58
+ // coordinate on the wire).
57
59
  // {§notifications-stream-event-on-channel-change}, {§notifications-stream-concluded}
58
60
  const coordinateFromPathname = (pathname) => {
59
61
  const seg = pathname.split("/").filter(Boolean);
60
- if (seg.length < 3)
62
+ if (seg.length < 4 || seg.at(-1) !== "EXEC")
61
63
  return undefined;
62
- const [loop_seq, turn_seq, sequence] = seg.slice(-3).map(Number);
64
+ const [loop_seq, turn_seq, sequence] = seg.slice(-4, -1).map(Number);
63
65
  if (![loop_seq, turn_seq, sequence].every(Number.isInteger))
64
66
  return undefined;
65
67
  return { loop_seq, turn_seq, sequence };
@@ -85,7 +87,7 @@ export default class Exec extends CoreSchemeAdapterBase {
85
87
  // The slot contract, stated when a resource source cannot be read: the resource IS the
86
88
  // program and the body its stdin; a command belongs beneath a targetless heading.
87
89
  static sourceRecovery(source, upstream) {
88
- const contract = `\`## EXEC0 (${source})\` runs that resource as the program (its content is the program; the body is its stdin). To run a command in the workspace, write it beneath a targetless \`## EXEC0\`.`;
90
+ const contract = `\`### EXEC0 (${source})\` runs that resource as the program (its content is the program; the body is its stdin). To run a command in the workspace, write it beneath a targetless \`### EXEC0\`.`;
89
91
  return typeof upstream === "string" && upstream.length > 0 ? `${contract} ${upstream}` : contract;
90
92
  }
91
93
  static manifest = {
@@ -99,7 +101,8 @@ export default class Exec extends CoreSchemeAdapterBase {
99
101
  writableBy: ["model", "client"],
100
102
  volatile: true,
101
103
  modelVisible: true,
102
- documentation: "Runs a registered executable tool — `## EXEC0 [executor] (target) <timeout minutes,poll minutes>\nbody` — using its `worker://~/_plurnk/tools/` invocation contract. Output streams into the worker's `<executor>:///<loop>/<turn>/<seq>` entry on that tool's own channels. A host-effecting invocation proposes for review before it runs; a read-only or pure one runs ungated. Either way you never fetch the output: the engine surfaces each turn's new stream bytes automatically — folded while it runs, opened when it finishes.",
104
+ metadataModifier: true,
105
+ documentation: "Runs a registered executable tool — `### EXEC0 [executor] (program) <timeout minutes,poll minutes>\nbody` — using its `worker://~/_plurnk/tools/` invocation contract. Output streams into the worker's `<executor>:///<loop>/<turn>/<seq>` entry on that tool's own channels. A host-effecting invocation proposes for review before it runs; a read-only or pure one runs ungated. Either way you never fetch the output: the engine surfaces each turn's new stream bytes automatically — folded while it runs, opened when it finishes.",
103
106
  };
104
107
  // The web-fetch the entry sink calls on content:null ({§exec-entry-sink}).
105
108
  // Default = schemes-http's checked WebFetcher; injectable for tests.
@@ -130,18 +133,30 @@ export default class Exec extends CoreSchemeAdapterBase {
130
133
  // teardown itself rides the worker's cancellation scope (the spawn's
131
134
  // ctx.signal), so even a spawn registering after the cancel self-aborts.
132
135
  hasActiveSpawns(workerId) {
133
- for (const { workerId: r } of this.#activeAborts.values())
134
- if (r === workerId)
136
+ for (const { workerId: r, detached } of this.#activeAborts.values())
137
+ if (r === workerId && !detached)
135
138
  return true;
136
139
  return false;
137
140
  }
141
+ // {§exec-timeout} — a `<-1>` spawn is nobody's obligation: terminals, joins, and optimistic
142
+ // settlement look past it.
143
+ isDetachedSpawn(subscriptionId) {
144
+ return this.#activeAborts.get(subscriptionId)?.detached === true;
145
+ }
146
+ // {§exec-timeout} — a `<-1>` spawn ends with the daemon: nothing else ever aborts it, so the
147
+ // stop sequence reaps it (bounded housekeeping) before the streaming drain barrier.
148
+ abortDetached() {
149
+ for (const { controller, detached } of this.#activeAborts.values())
150
+ if (detached)
151
+ controller.abort(ExecAbort.teardownReason());
152
+ }
138
153
  // {§worker-optimistic-settlement} — wait on exactly the spawns initiated by
139
154
  // this turn, ending immediately when all settle and never extending the
140
155
  // opportunity to streams inherited from an earlier turn.
141
156
  async settleTurnSpawns(workerId, turnId, timeoutMs, signal) {
142
157
  signal?.throwIfAborted();
143
158
  const pending = [...this.#activeAborts.entries()]
144
- .filter(([, active]) => active.workerId === workerId && active.turnId === turnId)
159
+ .filter(([, active]) => active.workerId === workerId && active.turnId === turnId && !active.detached)
145
160
  .map(([subscriptionId]) => {
146
161
  const spawn = this.#activeSpawns.get(subscriptionId);
147
162
  if (spawn === undefined) {
@@ -168,11 +183,11 @@ export default class Exec extends CoreSchemeAdapterBase {
168
183
  }
169
184
  // {§stream-control} — active KILL routes through the live controller;
170
185
  // terminal and missing outcomes resolve from the durable subscription.
171
- async kill(pathname, signal, ctx, scheme = "exec") {
186
+ async kill(pathname, scope, ctx, scheme = "exec") {
172
187
  const core = this.coreContext(ctx);
173
188
  for (const entry of this.#activeAborts.values()) {
174
189
  if (entry.workerId === core.workerId && entry.pathname === pathname) {
175
- entry.controller.abort(ExecAbort.killReason(signal));
190
+ entry.controller.abort(ExecAbort.killReason(null));
176
191
  return { status: 200 };
177
192
  }
178
193
  }
@@ -204,26 +219,28 @@ export default class Exec extends CoreSchemeAdapterBase {
204
219
  });
205
220
  }
206
221
  // EXEC op handler — the actual model-facing entry point per plurnk.md.
207
- // `## EXEC0 [runtime] (target)\nbody` → runtime-owned invocation buckets.
222
+ // `### EXEC0 [runtime] (target)\nbody` → runtime-owned invocation buckets.
208
223
  //
209
224
  // Proposes (status=202) with attrs={runtime, cwd, body, pathname}.
210
225
  // applyResolution spawns the subprocess; output streams into the
211
226
  // coordinate-stamped <runtime>:///<pathname> entry's stdout/stderr channels
212
- // (e.g. sh:///1/1/2, {§exec}). The model READs that entry on a subsequent turn.
227
+ // (e.g. sh:///1/1/2/EXEC, {§exec}). The model READs that entry on a subsequent turn.
213
228
  async exec(statement, ctx) {
214
229
  const core = this.coreContext(ctx);
215
230
  const body = statement.body ?? "";
216
- const requested = typeof statement.signal === "string" ? statement.signal : "";
217
- const runtime = requested === "" ? "sh" : requested; // empty signal = default shell
218
231
  if (core.executors === undefined)
219
232
  throw new Error("exec dispatched without an executor registry");
233
+ // {§exec-executor-slot}: the bracket names the executor; the path is its program.
234
+ const route = execRouteOf(statement);
235
+ const runtime = route.runtime;
220
236
  // {§exec-registry-resolves} — a non-empty tag selects exactly one registered executable
221
237
  // tool. Unknown tags are not reinterpreted as shell command words: that would make the
222
238
  // executed command differ from the authored body. Bare EXEC remains the default-shell form.
223
239
  const resolved = core.executors.entry(runtime, core.functionalityWorkerId);
224
240
  if (resolved === undefined) {
225
- return Results.failure("scheme:exec", "runtime-not-registered", 501, `Executable tool '${runtime}' is not registered for this worker.`, {}, {
241
+ return Results.failure("scheme:exec", "executor-not-registered", 400, `\`[${runtime}]\` names no registered executor for this worker. Executors are taught under \`worker://~/_plurnk/tools/\`; a bare \`### EXEC0\` is the shell.`, {}, {
226
242
  requestedRuntime: runtime,
243
+ executors: core.executors.availableRuntimes(core.functionalityWorkerId),
227
244
  retryable: false,
228
245
  });
229
246
  }
@@ -235,7 +252,7 @@ export default class Exec extends CoreSchemeAdapterBase {
235
252
  });
236
253
  }
237
254
  const registry = core.executors.toolRegistry(runtime, core.functionalityWorkerId);
238
- const exactTarget = statement.target?.raw ?? null;
255
+ const exactTarget = route.target === null ? null : route.target.raw;
239
256
  const registeredTool = registry?.tools.find((tool) => tool.target === exactTarget);
240
257
  if (registry !== null && registeredTool === undefined) {
241
258
  const availableTargets = registry.tools.map((tool) => tool.target);
@@ -252,7 +269,8 @@ export default class Exec extends CoreSchemeAdapterBase {
252
269
  }
253
270
  const invocation = registeredTool?.invocation ?? resolved.invocation;
254
271
  const hasBody = body.length > 0;
255
- const hasTarget = statement.target !== null;
272
+ const execTarget = route.target;
273
+ const hasTarget = execTarget !== null;
256
274
  const refuse = (code, detail, recovery, extensions = {}) => Results.failure("scheme:exec", code, 400, detail, {}, { runtime, recovery, retryable: false, ...extensions });
257
275
  if (invocation.body.required && !hasBody) {
258
276
  return refuse("body-required", `Executable tool '${runtime}' requires a ${invocation.body.role} body.`, `Provide the ${invocation.body.role} in the EXEC body.`);
@@ -277,55 +295,79 @@ export default class Exec extends CoreSchemeAdapterBase {
277
295
  let target = null;
278
296
  let resourceSource = null;
279
297
  const targetDecl = invocation.target;
280
- if (statement.target !== null && targetDecl !== undefined) {
298
+ if (execTarget !== null && targetDecl !== undefined) {
281
299
  if (targetDecl.kind === "literal") {
282
- target = statement.target.raw;
300
+ target = execTarget.raw;
283
301
  }
284
302
  else {
285
- const localTarget = localPathFromTarget(statement.target);
303
+ const localTarget = localPathFromTarget(execTarget);
286
304
  if (localTarget !== null) {
287
305
  target = localTarget;
288
306
  }
289
- else if (targetDecl.kind === "resource") {
290
- resourceSource = resourceSourceOf(statement.target);
307
+ else if (targetDecl.kind === "resource" || targetDecl.kind === "script") {
308
+ resourceSource = resourceSourceOf(execTarget);
291
309
  if (resourceSource === null) {
292
310
  throw new Error(`EXEC '${runtime}' resource target could not be classified`);
293
311
  }
294
312
  }
295
313
  else {
296
- return refuse("target-kind-invalid", `Executable tool '${runtime}' accepts only a local or file:// ${targetDecl.role} target.`, `Use a local or file:// ${targetDecl.role} target.`, { target: statement.target.raw, targetKind: targetDecl.kind });
314
+ return refuse("target-kind-invalid", `Executable tool '${runtime}' accepts only a local or file:// ${targetDecl.role} target.`, `Use a local or file:// ${targetDecl.role} target.`, { target: execTarget.raw, targetKind: targetDecl.kind });
297
315
  }
298
316
  }
299
317
  }
300
- // {§exec-target-routing} — a relative target resolves against the directory the
301
- // command would run in: the project root, or the shell's own cwd when the
302
- // workspace has none. A target that is neither a directory nor a script file
303
- // is refused before anything spawns — a command belongs in the body.
318
+ // {§exec-executor-slot} — the path names the program; `{cwd=<directory>}` names where it
319
+ // runs. A relative directory resolves against the project root, or the shell's own cwd
320
+ // when the workspace has none.
304
321
  const runRoot = projectRoot ?? process.cwd();
305
- if (target !== null && targetDecl?.directory === "cwd") {
306
- const inspected = isAbsolute(target) ? target : resolve(runRoot, target);
322
+ // Metadata on a resource-address target belongs to the source scheme ({§exec-target-routing});
323
+ // on a local program it names the working directory and nothing else.
324
+ for (const block of resourceSource === null ? statement.metadata ?? [] : []) {
325
+ const named = /^cwd=(.+)$/.exec(block.trim());
326
+ if (named === null) {
327
+ return refuse("metadata-unsupported", `EXEC accepts only \`{cwd=<directory>}\` metadata; got \`{${block}}\`.`, "Name the working directory as `{cwd=sub}`; everything else belongs in the body.", { metadata: block });
328
+ }
329
+ const inspected = isAbsolute(named[1]) ? named[1] : resolve(runRoot, named[1]);
330
+ let isDirectory = false;
307
331
  try {
308
- if ((await stat(inspected)).isDirectory()) {
309
- cwd = inspected;
310
- target = null;
311
- }
332
+ isDirectory = (await stat(inspected)).isDirectory();
333
+ }
334
+ catch (cause) {
335
+ if (cause?.code !== "ENOENT")
336
+ throw cause;
337
+ }
338
+ if (!isDirectory) {
339
+ return refuse("cwd-not-found", `EXEC working directory '${named[1]}' is not an existing directory.`, "Name an existing directory in `{cwd=…}`.", { cwd: named[1] });
340
+ }
341
+ cwd = inspected;
342
+ }
343
+ // A `script` target must be an existing file; other kinds pass through as declared.
344
+ if (target !== null && targetDecl?.kind === "script") {
345
+ const inspected = isAbsolute(target) ? target : resolve(cwd, target);
346
+ let kind = "missing";
347
+ try {
348
+ kind = (await stat(inspected)).isDirectory() ? "directory" : "file";
312
349
  }
313
350
  catch (cause) {
314
351
  if (cause?.code !== "ENOENT") {
315
352
  console.error(`EXEC target classification failed for '${inspected}':`, cause);
316
353
  return Results.failure("scheme:exec", "target-classification-failed", 500, `EXEC target '${target}' could not be inspected: ${ErrorDetail.preview(cause)}`, {}, { target, stage: "target-classification" });
317
354
  }
355
+ }
356
+ if (kind === "directory") {
357
+ return refuse("target-not-a-program", `EXEC target '${target}' is a directory, not a program.`, "Run in a directory with `{cwd=<directory>}` and put the command in the body.", { target });
358
+ }
359
+ if (kind === "missing") {
318
360
  // The target is not a script here, but it may be a registered tool of another
319
- // runtime — say so first; that is what exists (#388).
361
+ // executor — say so first; that is what exists (#388).
320
362
  const executors = core.executors;
321
363
  const ownerRuntimes = executors === undefined
322
364
  ? []
323
365
  : executors.availableRuntimes(core.functionalityWorkerId)
324
366
  .filter((tag) => executors.toolRegistry(tag, core.functionalityWorkerId)?.tools.some((tool) => tool.target === target) === true);
325
367
  const recovery = ownerRuntimes.length === 0
326
- ? "Use an existing directory or script as the target, or place a shell command beneath targetless `## EXEC0`."
327
- : `Run the registered tool with \`## EXEC0 [${ownerRuntimes[0]}] (${target})\`.`;
328
- return refuse("target-not-found", "The EXEC target does not resolve as a directory, script, or registered tool for this runtime.", recovery, { target, ...(ownerRuntimes.length === 0 ? {} : { toolRuntimes: ownerRuntimes }) });
368
+ ? "Name an existing script as the program, or place a shell command beneath a bare `### EXEC0`."
369
+ : `Run the registered tool with \`### EXEC0 [${ownerRuntimes[0]}] (${target})\`.`;
370
+ return refuse("target-not-found", "The EXEC program does not resolve as a script or a registered tool for this executor.", recovery, { target, ...(ownerRuntimes.length === 0 ? {} : { toolRuntimes: ownerRuntimes }) });
329
371
  }
330
372
  }
331
373
  if (!hasBody && target === null && resourceSource === null) {
@@ -348,15 +390,17 @@ export default class Exec extends CoreSchemeAdapterBase {
348
390
  const marks = statement.lineMarker?.marks;
349
391
  const timeoutSec = typeof marks?.[0] === "number" && marks[0] > 0 ? Math.floor(marks[0]) * 60 : undefined;
350
392
  const turnScoped = typeof marks?.[0] === "number" && marks[0] === 0;
393
+ const detached = typeof marks?.[0] === "number" && marks[0] === -1;
351
394
  const pollSec = typeof marks?.[1] === "number" && marks[1] >= 0 ? Math.floor(marks[1]) * 60 : undefined;
352
395
  const attrs = {
353
396
  runtime, cwd, body, target, pathname: "", effect,
354
397
  ...(resourceSource !== null ? { resourceSource } : {}),
355
398
  ...(timeoutSec !== undefined ? { timeoutSec } : {}),
356
399
  ...(turnScoped ? { turnScoped: true } : {}),
400
+ ...(detached ? { detached: true } : {}),
357
401
  ...(pollSec !== undefined ? { pollSec } : {}),
358
402
  };
359
- const previewInput = body !== "" ? body : statement.target?.raw ?? "";
403
+ const previewInput = body !== "" ? body : execTarget?.raw ?? "";
360
404
  const preview = runtime !== "" ? `[${runtime}] ${previewInput}` : `$ ${previewInput}`;
361
405
  return { status: 202, body: preview, attrs }; // host runtime proposes with 202 — {§exec-host-proposes}
362
406
  }
@@ -387,7 +431,6 @@ export default class Exec extends CoreSchemeAdapterBase {
387
431
  op: "READ",
388
432
  delimiter: "",
389
433
  annotation: null,
390
- signal: null,
391
434
  target: sourceTarget,
392
435
  metadata: args.metadata === null ? null : [...args.metadata],
393
436
  lineMarker: { marks: [1, -1] },
@@ -460,7 +503,9 @@ export default class Exec extends CoreSchemeAdapterBase {
460
503
  });
461
504
  const controller = new AbortController();
462
505
  let unlink = () => { };
463
- if (core.signal !== undefined) {
506
+ // {§exec-timeout} — `<-1>` outlives the loop: it never binds to the loop's teardown; only KILL,
507
+ // the worker's total reap, and daemon shutdown end it.
508
+ if (core.signal !== undefined && attrs.detached !== true) {
464
509
  const parent = core.signal;
465
510
  // The spawn's kill binds to its loop's cancellation epoch (ctx.signal —
466
511
  // captured here, stable for the loop). The parent only aborts on FORCEFUL loop
@@ -476,7 +521,7 @@ export default class Exec extends CoreSchemeAdapterBase {
476
521
  if (parent.aborted)
477
522
  controller.abort(ExecAbort.teardownReason());
478
523
  }
479
- this.#activeAborts.set(subscriptionId, { workerId: core.workerId, turnId: core.turnId, pathname, runtime, effect, controller, unlink });
524
+ this.#activeAborts.set(subscriptionId, { workerId: core.workerId, turnId: core.turnId, pathname, runtime, effect, controller, unlink, detached: attrs.detached === true });
480
525
  this.liveSubscriptions().register(subscriptionId, {
481
526
  cancel: () => controller.abort(ExecAbort.teardownReason()),
482
527
  });
@@ -623,8 +668,6 @@ export default class Exec extends CoreSchemeAdapterBase {
623
668
  throw new Error(web.bodyOutcome.failure?.detail
624
669
  ?? `entry(): '${path.slice(0, 80)}' produced no readable body`);
625
670
  }
626
- const tags = TagSignal.applied(opts.tags.map((tag) => `+${tag}`)).add;
627
- const tagSignal = tags.map((tag) => `+${tag}`);
628
671
  // {§exec-entry-sink}/{§html-materialization} The shared
629
672
  // materializer owns the decisive projection and its provenance.
630
673
  const channels = WebFetcher.materializedChannels(web, content === null && fetchAddress !== null
@@ -677,10 +720,8 @@ export default class Exec extends CoreSchemeAdapterBase {
677
720
  }
678
721
  const logRow = await db.engine_insert_log_entry.get({
679
722
  worker_id: narration.workerId, loop_id: narration.loopId, turn_id: narration.turnId, sequence,
680
- // signal carries additive tag terms through the same slot a model's EDIT uses, so the
681
- // ambient row renders its tags natively everywhere (packet meta line, digest).
682
723
  origin: "_plurnk", source: causalSource, model_call_id: null,
683
- op: "EDIT", delimiter: "", signal: JSON.stringify(tagSignal),
724
+ op: "EDIT", delimiter: "", signal: null,
684
725
  scheme, username: null, password: null,
685
726
  hostname: address === null ? null : parsed.hostname,
686
727
  port: address === null ? null : parsed.port,
@@ -1 +1 @@
1
- {"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@ import type { CoreEntryAddress, CoreSchemeCallContext } from "../core/CoreScheme
9
9
  import { type SchemeResultBase } from "../core/results.ts";
10
10
  import type { RuntimeSchemeFacet } from "../server/DaemonModule.ts";
11
11
  import type { EntryAddress, RepresentationPreparationRequest, RepresentationPreparationResult } from "@plurnk/plurnk-schemes";
12
+ import type { TextLineMarker } from "@plurnk/plurnk-contracts";
12
13
  export default class ExecOutputScheme extends CoreSchemeAdapterBase {
13
14
  #private;
14
15
  constructor(executor: Executor, exec: Exec, facet?: RuntimeSchemeFacet);
@@ -17,6 +18,6 @@ export default class ExecOutputScheme extends CoreSchemeAdapterBase {
17
18
  prepareRepresentation(request: RepresentationPreparationRequest, ctx: CoreSchemeCallContext): Promise<RepresentationPreparationResult>;
18
19
  find(statement: FindStatement, ctx: CoreSchemeCallContext): Promise<FindResult>;
19
20
  readEntry(pathname: string, ctx: CoreSchemeCallContext): Promise<ReadEntryResult>;
20
- kill(pathname: string, signal: number | null, ctx: CoreSchemeCallContext): Promise<SchemeResultBase>;
21
+ kill(pathname: string, scope: TextLineMarker | null, ctx: CoreSchemeCallContext): Promise<SchemeResultBase>;
21
22
  }
22
23
  //# sourceMappingURL=ExecOutputScheme.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecOutputScheme.d.ts","sourceRoot":"","sources":["../../src/schemes/ExecOutputScheme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAkB,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC7F,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,KAAK,EACR,YAAY,EACZ,gCAAgC,EAChC,+BAA+B,EAElC,MAAM,wBAAwB,CAAC;AAoBhC,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,qBAAqB;;IAK/D,YAAY,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,kBAAkB,EAKrE;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAmBK,mBAAmB,CACrB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,IAAI,CAAC,CAkCpE;IAEK,qBAAqB,CACvB,OAAO,EAAE,gCAAgC,EACzC,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,+BAA+B,CAAC,CAG1C;IAEK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAgBpF;IAKK,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAGtF;IAIK,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAIzG;CACJ"}
1
+ {"version":3,"file":"ExecOutputScheme.d.ts","sourceRoot":"","sources":["../../src/schemes/ExecOutputScheme.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAkB,EAAE,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC7F,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,OAAO,KAAK,EACR,YAAY,EACZ,gCAAgC,EAChC,+BAA+B,EAElC,MAAM,wBAAwB,CAAC;AAGhC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAkB/D,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,qBAAqB;;IAK/D,YAAY,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,EAAE,kBAAkB,EAKrE;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAmBK,mBAAmB,CACrB,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,IAAI,CAAC,CAkCpE;IAEK,qBAAqB,CACvB,OAAO,EAAE,gCAAgC,EACzC,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,+BAA+B,CAAC,CAG1C;IAEK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAgBpF;IAKK,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAGtF;IAIK,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,GAAG,IAAI,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAIhH;CACJ"}
@@ -9,7 +9,7 @@ import { renderAddress } from "../core/plurnk-uri.js";
9
9
  // {§stream-owner-scoped} — a stream 404 discloses nothing about existence; it may still say what
10
10
  // the address space IS: loop coordinates, the caller's own streams unqualified, a descendant's by
11
11
  // worker name, and a tool's own ids as arguments rather than addresses (#392).
12
- const streamAddressSpace = (scheme) => `\`${scheme}:///<loop>/<turn>/<item>\` addresses this runtime's result streams — your own without a qualifier, another worker's as \`${scheme}://<worker>/…\`. A tool's own ids are arguments: \`## EXEC0 [${scheme}] (<tool>)\` with the id in the body.`;
12
+ const streamAddressSpace = (scheme) => `\`${scheme}:///<loop>/<turn>/<item>/EXEC\` addresses this runtime's result streams — your own without a qualifier, another worker's as \`${scheme}://<worker>/…\`. A tool's own ids are arguments: \`### EXEC0 [<executor>] (<tool>)\` with the id in the body.`;
13
13
  // {§executor-scheme-output} An executor is a scheme; its output lives at <tag>://. Each discovered
14
14
  // executor registers this face under its runtime tag, so READ/FIND <tag>://<coord>
15
15
  // read PRIOR output, scoped to the tag's stored entries via the executor's OWN
@@ -96,10 +96,10 @@ export default class ExecOutputScheme extends CoreSchemeAdapterBase {
96
96
  }
97
97
  // Process-KILL by coordinate — the spawn-abort state (#activeAborts) lives on the
98
98
  // one Exec handler, so the per-tag face delegates to it.
99
- async kill(pathname, signal, ctx) {
99
+ async kill(pathname, scope, ctx) {
100
100
  // The face names its own tag: the terminal status of a finished stream lives under the
101
101
  // runtime scheme (`sh:///…`), so a second KILL answers 410, never a 404 under `exec`.
102
- return this.#exec.kill(pathname, signal, ctx, this.#executor.manifest.name);
102
+ return this.#exec.kill(pathname, scope, ctx, this.#executor.manifest.name);
103
103
  }
104
104
  }
105
105
  //# sourceMappingURL=ExecOutputScheme.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecOutputScheme.js","sourceRoot":"","sources":["../../src/schemes/ExecOutputScheme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExecOutputScheme.js","sourceRoot":"","sources":["../../src/schemes/ExecOutputScheme.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import type { FindStatement, ParsedPath } from "@plurnk/plurnk-contracts";
2
- import type { SchemeManifest } from "../core/scheme-types.ts";
2
+ import type { SchemeManifest, PlurnkSchemeContext } from "../core/scheme-types.ts";
3
3
  import type { FindResult } from "./_entry-find.ts";
4
4
  import type { ReadEntryResult, EntryData, WriteEntryResult, DeleteEntryResult } from "./_entry-crud.ts";
5
5
  import { CoreSchemeAdapterBase } from "../core/CoreSchemeServices.ts";
6
6
  import type { CoreSchemeCallContext } from "../core/CoreSchemeServices.ts";
7
7
  import { type SchemeResultBase } from "../core/results.ts";
8
+ import type { ByteSource } from "../content/byte-view.ts";
8
9
  import { type EntryAddress, type ResolvedEditStatement, type ProposalApplyResult } from "@plurnk/plurnk-schemes";
9
10
  import type { EditBatchReceipt } from "../content/index.ts";
10
11
  type EditResult = SchemeResultBase & {
@@ -33,6 +34,8 @@ export default class File extends CoreSchemeAdapterBase {
33
34
  resolveEntryAddress(target: ParsedPath, ctx: CoreSchemeCallContext): Promise<EntryAddress | null>;
34
35
  find(statement: FindStatement, ctx: CoreSchemeCallContext): Promise<FindResult>;
35
36
  readEntry(pathname: string, ctx: CoreSchemeCallContext): Promise<ReadEntryResult>;
37
+ byteSource(pathname: string, core: Pick<PlurnkSchemeContext, "db" | "workspaceId">): ByteSource;
38
+ missRefusal(pathname: string, core: PlurnkSchemeContext, fields: Record<string, null>): Promise<SchemeResultBase | null>;
36
39
  editBatch(statements: readonly ResolvedEditStatement[], ctx: CoreSchemeCallContext): Promise<EditResult>;
37
40
  edit(statement: ResolvedEditStatement, ctx: CoreSchemeCallContext): Promise<EditResult>;
38
41
  writeEntry(pathname: string, entry: EntryData, ctx: CoreSchemeCallContext): Promise<WriteEntryResult>;