@plurnk/plurnk-service 1.5.0 → 1.6.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 (201) hide show
  1. package/.env.defaults +21 -12
  2. package/INSTALL.md +11 -7
  3. package/SPEC.md +437 -304
  4. package/dist/build-info.json +1 -1
  5. package/dist/content/edit-collision.d.ts +5 -0
  6. package/dist/content/edit-collision.d.ts.map +1 -0
  7. package/dist/content/edit-collision.js +14 -0
  8. package/dist/content/edit-collision.js.map +1 -0
  9. package/dist/content/edit-receipt.d.ts +3 -2
  10. package/dist/content/edit-receipt.d.ts.map +1 -1
  11. package/dist/content/edit-receipt.js +58 -13
  12. package/dist/content/edit-receipt.js.map +1 -1
  13. package/dist/content/index.d.ts +4 -1
  14. package/dist/content/index.d.ts.map +1 -1
  15. package/dist/content/index.js +3 -1
  16. package/dist/content/index.js.map +1 -1
  17. package/dist/content/line-anchors.d.ts +41 -0
  18. package/dist/content/line-anchors.d.ts.map +1 -0
  19. package/dist/content/line-anchors.js +191 -0
  20. package/dist/content/line-anchors.js.map +1 -0
  21. package/dist/content/read-projector.d.ts +7 -1
  22. package/dist/content/read-projector.d.ts.map +1 -1
  23. package/dist/content/read-projector.js +46 -10
  24. package/dist/content/read-projector.js.map +1 -1
  25. package/dist/content/read-resolve.js +3 -3
  26. package/dist/content/read-resolve.js.map +1 -1
  27. package/dist/core/BudgetReadout.d.ts.map +1 -1
  28. package/dist/core/BudgetReadout.js +9 -2
  29. package/dist/core/BudgetReadout.js.map +1 -1
  30. package/dist/core/ChannelWrite.js +1 -1
  31. package/dist/core/ChannelWrite.js.map +1 -1
  32. package/dist/core/Dispatcher.d.ts +13 -3
  33. package/dist/core/Dispatcher.d.ts.map +1 -1
  34. package/dist/core/Dispatcher.js +391 -113
  35. package/dist/core/Dispatcher.js.map +1 -1
  36. package/dist/core/DurableStatement.d.ts.map +1 -1
  37. package/dist/core/DurableStatement.js +2 -0
  38. package/dist/core/DurableStatement.js.map +1 -1
  39. package/dist/core/Engine.d.ts +13 -14
  40. package/dist/core/Engine.d.ts.map +1 -1
  41. package/dist/core/Engine.js +434 -300
  42. package/dist/core/Engine.js.map +1 -1
  43. package/dist/core/Engine.sql +156 -90
  44. package/dist/core/ExecutableTools.d.ts +10 -0
  45. package/dist/core/ExecutableTools.d.ts.map +1 -0
  46. package/dist/core/ExecutableTools.js +41 -0
  47. package/dist/core/ExecutableTools.js.map +1 -0
  48. package/dist/core/ExecutorRegistry.d.ts +3 -3
  49. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  50. package/dist/core/ExecutorRegistry.js +2 -2
  51. package/dist/core/ExecutorRegistry.js.map +1 -1
  52. package/dist/core/LogBody.d.ts +2 -0
  53. package/dist/core/LogBody.d.ts.map +1 -1
  54. package/dist/core/LogBody.js +17 -5
  55. package/dist/core/LogBody.js.map +1 -1
  56. package/dist/core/LogEntryProjection.d.ts +14 -0
  57. package/dist/core/LogEntryProjection.d.ts.map +1 -0
  58. package/dist/core/LogEntryProjection.js +38 -0
  59. package/dist/core/LogEntryProjection.js.map +1 -0
  60. package/dist/core/ModelCall.d.ts +27 -0
  61. package/dist/core/ModelCall.d.ts.map +1 -0
  62. package/dist/core/ModelCall.js +125 -0
  63. package/dist/core/ModelCall.js.map +1 -0
  64. package/dist/core/PacketBuilder.d.ts +10 -10
  65. package/dist/core/PacketBuilder.d.ts.map +1 -1
  66. package/dist/core/PacketBuilder.js +131 -103
  67. package/dist/core/PacketBuilder.js.map +1 -1
  68. package/dist/core/ProblemLog.d.ts.map +1 -1
  69. package/dist/core/ProblemLog.js +1 -0
  70. package/dist/core/ProblemLog.js.map +1 -1
  71. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  72. package/dist/core/ProposalLifecycle.js +3 -4
  73. package/dist/core/ProposalLifecycle.js.map +1 -1
  74. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  75. package/dist/core/ProviderInstantiate.js +23 -6
  76. package/dist/core/ProviderInstantiate.js.map +1 -1
  77. package/dist/core/SchemeRegistry.js +7 -7
  78. package/dist/core/SchemeRegistry.js.map +1 -1
  79. package/dist/core/StrikeRail.d.ts +0 -1
  80. package/dist/core/StrikeRail.d.ts.map +1 -1
  81. package/dist/core/StrikeRail.js +6 -4
  82. package/dist/core/StrikeRail.js.map +1 -1
  83. package/dist/core/caps/CapsResolve.js +1 -1
  84. package/dist/core/caps/CapsResolve.js.map +1 -1
  85. package/dist/core/caps/DbEntryCaps.d.ts +2 -1
  86. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  87. package/dist/core/caps/DbEntryCaps.js +8 -5
  88. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  89. package/dist/core/caps/DbProjectionCaps.d.ts +1 -0
  90. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  91. package/dist/core/caps/DbProjectionCaps.js +29 -0
  92. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  93. package/dist/core/caps/SchemeCtxImpl.d.ts +5 -2
  94. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  95. package/dist/core/caps/SchemeCtxImpl.js +6 -4
  96. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  97. package/dist/core/fork.d.ts.map +1 -1
  98. package/dist/core/fork.js +23 -7
  99. package/dist/core/fork.js.map +1 -1
  100. package/dist/core/fork.sql +33 -12
  101. package/dist/core/git-membership.d.ts.map +1 -1
  102. package/dist/core/git-membership.js +1 -2
  103. package/dist/core/git-membership.js.map +1 -1
  104. package/dist/core/git-state.js +1 -1
  105. package/dist/core/git-state.js.map +1 -1
  106. package/dist/core/packet-wire.d.ts +4 -1
  107. package/dist/core/packet-wire.d.ts.map +1 -1
  108. package/dist/core/packet-wire.js +248 -90
  109. package/dist/core/packet-wire.js.map +1 -1
  110. package/dist/core/provider-accounting.d.ts +24 -0
  111. package/dist/core/provider-accounting.d.ts.map +1 -0
  112. package/dist/core/provider-accounting.js +76 -0
  113. package/dist/core/provider-accounting.js.map +1 -0
  114. package/dist/core/search-gate.d.ts +2 -2
  115. package/dist/core/search-gate.d.ts.map +1 -1
  116. package/dist/core/search-gate.js +8 -8
  117. package/dist/core/search-gate.js.map +1 -1
  118. package/dist/core/token-ruler.js +1 -1
  119. package/dist/core/token-ruler.js.map +1 -1
  120. package/dist/core/turn-scheduler.js +1 -1
  121. package/dist/core/turn-scheduler.js.map +1 -1
  122. package/dist/digest/Digest.d.ts.map +1 -1
  123. package/dist/digest/Digest.js +220 -109
  124. package/dist/digest/Digest.js.map +1 -1
  125. package/dist/digest/digest.sql +40 -18
  126. package/dist/schemes/Exec.d.ts.map +1 -1
  127. package/dist/schemes/Exec.js +111 -101
  128. package/dist/schemes/Exec.js.map +1 -1
  129. package/dist/schemes/File.d.ts +5 -4
  130. package/dist/schemes/File.d.ts.map +1 -1
  131. package/dist/schemes/File.js +24 -22
  132. package/dist/schemes/File.js.map +1 -1
  133. package/dist/schemes/Log.d.ts +11 -0
  134. package/dist/schemes/Log.d.ts.map +1 -1
  135. package/dist/schemes/Log.js +171 -106
  136. package/dist/schemes/Log.js.map +1 -1
  137. package/dist/schemes/Log.sql +48 -32
  138. package/dist/schemes/Prompt.d.ts +3 -3
  139. package/dist/schemes/Prompt.d.ts.map +1 -1
  140. package/dist/schemes/Prompt.js +4 -1
  141. package/dist/schemes/Prompt.js.map +1 -1
  142. package/dist/schemes/Skill.d.ts +4 -4
  143. package/dist/schemes/Skill.d.ts.map +1 -1
  144. package/dist/schemes/Skill.js +3 -0
  145. package/dist/schemes/Skill.js.map +1 -1
  146. package/dist/schemes/Worker.d.ts +4 -4
  147. package/dist/schemes/Worker.d.ts.map +1 -1
  148. package/dist/schemes/Worker.js +9 -5
  149. package/dist/schemes/Worker.js.map +1 -1
  150. package/dist/schemes/_entry-crud.d.ts +0 -1
  151. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  152. package/dist/schemes/_entry-crud.js +15 -9
  153. package/dist/schemes/_entry-crud.js.map +1 -1
  154. package/dist/schemes/_entry-crud.sql +2 -14
  155. package/dist/schemes/_entry-find.d.ts +13 -12
  156. package/dist/schemes/_entry-find.d.ts.map +1 -1
  157. package/dist/schemes/_entry-find.js +33 -28
  158. package/dist/schemes/_entry-find.js.map +1 -1
  159. package/dist/schemes/_entry-find.sql +2 -21
  160. package/dist/schemes/_entry-graph.sql +1 -1
  161. package/dist/schemes/_entry-manifest.d.ts +5 -17
  162. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  163. package/dist/schemes/_entry-manifest.js +28 -24
  164. package/dist/schemes/_entry-manifest.js.map +1 -1
  165. package/dist/schemes/_entry-ops.d.ts +5 -4
  166. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  167. package/dist/schemes/_entry-ops.js +87 -47
  168. package/dist/schemes/_entry-ops.js.map +1 -1
  169. package/dist/schemes/_entry-ops.sql +30 -4
  170. package/dist/schemes/_entry-send.js +4 -4
  171. package/dist/schemes/_entry-send.js.map +1 -1
  172. package/dist/schemes/_search-index.d.ts.map +1 -1
  173. package/dist/schemes/_search-index.js +10 -2
  174. package/dist/schemes/_search-index.js.map +1 -1
  175. package/dist/schemes/exec-abort.js +2 -2
  176. package/dist/schemes/exec-abort.js.map +1 -1
  177. package/dist/server/Daemon.d.ts +1 -1
  178. package/dist/server/Daemon.d.ts.map +1 -1
  179. package/dist/server/Daemon.js +25 -23
  180. package/dist/server/Daemon.js.map +1 -1
  181. package/dist/server/drain.sql +2 -2
  182. package/dist/server/envelope.d.ts +0 -2
  183. package/dist/server/envelope.d.ts.map +1 -1
  184. package/dist/server/envelope.js.map +1 -1
  185. package/dist/server/envelope.sql +2 -2
  186. package/dist/server/lifecycle-recovery.sql +25 -15
  187. package/dist/server/logEntry.d.ts +1 -0
  188. package/dist/server/logEntry.d.ts.map +1 -1
  189. package/dist/server/logEntry.js +13 -1
  190. package/dist/server/logEntry.js.map +1 -1
  191. package/dist/server/logEntry.sql +5 -1
  192. package/migrations/001_schema.sql +603 -207
  193. package/package.json +39 -34
  194. package/dist/core/BudgetOverflow.d.ts +0 -20
  195. package/dist/core/BudgetOverflow.d.ts.map +0 -1
  196. package/dist/core/BudgetOverflow.js +0 -49
  197. package/dist/core/BudgetOverflow.js.map +0 -1
  198. package/dist/core/caps/DbTagCaps.d.ts +0 -10
  199. package/dist/core/caps/DbTagCaps.d.ts.map +0 -1
  200. package/dist/core/caps/DbTagCaps.js +0 -46
  201. package/dist/core/caps/DbTagCaps.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { parsePath } from "@plurnk/plurnk-contracts";
1
+ import { parsePath, TagSignal } from "@plurnk/plurnk-contracts";
2
2
  import { Policy } from "@plurnk/plurnk-execs";
3
3
  import { WebFetcher, WebMaterializationError, } from "@plurnk/plurnk-schemes-http";
4
4
  import WorkspaceSettings from "../core/workspace-settings.js";
@@ -12,7 +12,7 @@ import ExecAbort from "./exec-abort.js";
12
12
  import { entryPathnameOf, renderAddress } from "../core/plurnk-uri.js";
13
13
  import { writeFile, unlink, stat } from "node:fs/promises";
14
14
  import { tmpdir } from "node:os";
15
- import { join, resolve } from "node:path";
15
+ import { isAbsolute, join, resolve } from "node:path";
16
16
  import { CoreSchemeAdapterBase } from "../core/CoreSchemeServices.js";
17
17
  import ErrorDetail from "../core/ErrorDetail.js";
18
18
  import Results, { OperationFailureError } from "../core/results.js";
@@ -20,12 +20,13 @@ import { InvalidOperationResultError, NetworkAddress } from "@plurnk/plurnk-sche
20
20
  import DbProjectionCaps from "../core/caps/DbProjectionCaps.js";
21
21
  import WorkerControlAddress from "../core/WorkerControlAddress.js";
22
22
  import JournalTurn from "../core/JournalTurn.js";
23
+ import LogEntryProjection from "../core/LogEntryProjection.js";
23
24
  import { setTimeout as delay } from "node:timers/promises";
24
25
  // Executors are discovered + probed at boot into ExecutorRegistry and reach
25
26
  // the scheme through ctx.executors ({§exec-registry-resolves}). Each runtime tag
26
27
  // resolves to its sibling executor; the scheme itself stays runtime-agnostic.
27
28
  // Extract the local arm of {§exec-target-routing}; non-file schemes are
28
- // classified separately by schemeSourceOf.
29
+ // classified separately by resourceSourceOf.
29
30
  const localPathFromTarget = (target) => {
30
31
  if (target === null)
31
32
  return null;
@@ -39,21 +40,13 @@ const localPathFromTarget = (target) => {
39
40
  // A non-file scheme target is distinct from the local path handled above. The
40
41
  // consumer resolves its content at apply time; executors stay scheme-blind
41
42
  // ({§executor-role}).
42
- const schemeSourceOf = (target) => {
43
+ const resourceSourceOf = (target) => {
43
44
  if (target === null || target.kind !== "url")
44
45
  return null;
45
46
  if (target.scheme === null || target.scheme === "file")
46
47
  return null;
47
48
  return target.raw;
48
49
  };
49
- // {§exec-target-routing} — effect classifies the invocation core is admitting,
50
- // before a scheme-backed source can be materialized. A scheme target with no
51
- // body becomes the command, so the executor has no target. With a body, the
52
- // scheme content becomes a target at run time; its authored address is the
53
- // stable, opaque target-present identity used only for the one effect call.
54
- const effectTargetOf = (authoredTarget, routedTarget, schemeSource, command) => schemeSource !== null && command.length > 0
55
- ? authoredTarget?.raw ?? null
56
- : routedTarget;
57
50
  // EXEC's pathname is <runtime>/<loop_seq>/<turn_seq>/<sequence> (stamped by
58
51
  // Dispatcher.#writeLog). Exec owns this convention, so it — not the client — turns
59
52
  // the pathname into the entry's coordinate, mirrored onto stream payloads so
@@ -96,8 +89,7 @@ export default class Exec extends CoreSchemeAdapterBase {
96
89
  writableBy: ["model", "client"],
97
90
  volatile: true,
98
91
  modelVisible: true,
99
- example: "<<EXEC[sqlite]:SELECT 22.0 / 7.0:EXEC",
100
- documentation: "Runs a command in a runtime — `<<EXEC[runtime](target):command:EXEC` — output streams into the worker's `<runtime>:///<loop>/<turn>/<seq>` entry on the runtime's own channels (a subprocess → stdout/stderr; a computational runtime like sqlite/jq → a JSON `results` channel). A host-effecting command proposes for review before it runs; a read-only/pure one runs ungated. Either way you never fetch the output: the engine surfaces each turn's new stream bytes to you automatically — folded while the command runs, opened when it finishes.",
92
+ documentation: "Runs a registered executable tool — `## EXEC0 [executor] (target) <timeout,poll>\nbody` — using the tool's table-declared target and body 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.",
101
93
  flags: {
102
94
  excludedInAsk: true,
103
95
  },
@@ -202,51 +194,15 @@ export default class Exec extends CoreSchemeAdapterBase {
202
194
  });
203
195
  }
204
196
  // EXEC op handler — the actual model-facing entry point per plurnk.md.
205
- // `<<EXEC[runtime](target):command:EXEC` →
206
- // signal=runtime, target=optional source/program/cwd, body=command.
197
+ // `## EXEC0 [runtime] (target)\nbody` → runtime-owned invocation buckets.
207
198
  //
208
- // Proposes (status=202) with attrs={runtime, cwd, command, pathname}.
199
+ // Proposes (status=202) with attrs={runtime, cwd, body, pathname}.
209
200
  // applyResolution spawns the subprocess; output streams into the
210
201
  // coordinate-stamped <runtime>:///<pathname> entry's stdout/stderr channels
211
202
  // (e.g. sh:///1/1/2, {§exec}). The model READs that entry on a subsequent turn.
212
203
  async exec(statement, ctx) {
213
204
  const core = this.coreContext(ctx);
214
- let command = statement.body ?? "";
215
- // Non-file data sources resolve after acceptance. {§exec-target-routing}
216
- const schemeSource = schemeSourceOf(statement.target);
217
- // A local directory overrides cwd; every other local path remains the
218
- // executor target. {§exec-target-routing}
219
- const workspaceRow = await core.db.envelope_get_workspace.get({ id: core.workspaceId });
220
- const projectRoot = workspaceRow?.project_root ?? null;
221
- const localTarget = localPathFromTarget(statement.target);
222
- let routedTarget = localTarget;
223
- let cwd = projectRoot;
224
- if (localTarget !== null) {
225
- const abs = projectRoot !== null ? resolve(projectRoot, localTarget) : localTarget;
226
- try {
227
- if ((await stat(abs)).isDirectory()) {
228
- cwd = abs;
229
- routedTarget = null;
230
- }
231
- }
232
- catch (cause) {
233
- if (cause?.code !== "ENOENT") {
234
- console.error(`EXEC target classification failed for '${abs}':`, cause);
235
- return Results.failure("scheme:exec", "target-classification-failed", 500, `EXEC target '${localTarget}' could not be inspected: ${ErrorDetail.preview(cause)}`, {}, {
236
- target: localTarget,
237
- stage: "target-classification",
238
- });
239
- }
240
- }
241
- }
242
- // An empty body requires a file/program or scheme command source.
243
- // {§exec-target-routing}
244
- if (command.length === 0 && schemeSource === null && routedTarget === null) {
245
- return Results.failure("scheme:exec", "command-required", 400, "EXEC requires a command body or an executable target.", {}, {
246
- recovery: "Provide a command body or executable target.",
247
- retryable: false,
248
- });
249
- }
205
+ const body = statement.body ?? "";
250
206
  const requested = typeof statement.signal === "string" ? statement.signal : "";
251
207
  const runtime = requested === "" ? "sh" : requested; // empty signal = default shell
252
208
  if (core.executors === undefined)
@@ -293,14 +249,76 @@ export default class Exec extends CoreSchemeAdapterBase {
293
249
  retryable: false,
294
250
  });
295
251
  }
296
- // The local (target) realization the executor receives — its data source
297
- // or program. A directory routes to cwd and a scheme source is resolved
298
- // only after acceptance, so either is null here.
299
- const target = routedTarget;
300
- // Derive one effect from the canonical logical target before any policy
301
- // consumes it, then preserve that fact with the invocation (#107,
302
- // {§executor-effect}). Leaves never receive authored command text.
303
- const effectTarget = effectTargetOf(statement.target, target, schemeSource, command);
252
+ const invocation = resolved.invocation;
253
+ const hasBody = body.length > 0;
254
+ const hasTarget = statement.target !== null;
255
+ const refuse = (code, detail, recovery, extensions = {}) => Results.failure("scheme:exec", code, 400, detail, {}, { runtime, recovery, retryable: false, ...extensions });
256
+ if (invocation.body.required && !hasBody) {
257
+ return refuse("body-required", `Executable tool '${runtime}' requires a ${invocation.body.role} body.`, `Provide the ${invocation.body.role} in the EXEC body.`);
258
+ }
259
+ if (invocation.target === undefined && hasTarget) {
260
+ return refuse("target-not-supported", `Executable tool '${runtime}' does not accept a target.`, `Remove the target and provide the ${invocation.body.role} in the body.`);
261
+ }
262
+ if (invocation.target?.required === true && !hasTarget) {
263
+ return refuse("target-required", `Executable tool '${runtime}' requires a ${invocation.target.role} target.`, `Provide the ${invocation.target.role} in (target).`);
264
+ }
265
+ if (!hasBody && !hasTarget) {
266
+ return refuse("input-required", `Executable tool '${runtime}' requires a body or target.`, `Provide ${invocation.target === undefined ? "a body" : "a body or target"}.`);
267
+ }
268
+ if (invocation.exclusive === true && hasBody && hasTarget) {
269
+ return refuse("input-conflict", `Executable tool '${runtime}' accepts its ${invocation.body.role} body and ${invocation.target?.role ?? "target"} target only as alternatives.`, "Provide either the body or target, not both.");
270
+ }
271
+ const workspaceRow = await core.db.envelope_get_workspace.get({ id: core.workspaceId });
272
+ const projectRoot = workspaceRow?.project_root ?? null;
273
+ let cwd = projectRoot;
274
+ let target = null;
275
+ let resourceSource = null;
276
+ const targetDecl = invocation.target;
277
+ if (statement.target !== null && targetDecl !== undefined) {
278
+ if (targetDecl.kind === "literal") {
279
+ target = statement.target.raw;
280
+ }
281
+ else {
282
+ const localTarget = localPathFromTarget(statement.target);
283
+ if (localTarget !== null) {
284
+ target = localTarget;
285
+ }
286
+ else if (targetDecl.kind === "resource") {
287
+ resourceSource = resourceSourceOf(statement.target);
288
+ if (resourceSource === null) {
289
+ throw new Error(`EXEC '${runtime}' resource target could not be classified`);
290
+ }
291
+ }
292
+ else {
293
+ 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 });
294
+ }
295
+ }
296
+ }
297
+ if (target !== null && targetDecl?.directory === "cwd") {
298
+ const inspected = isAbsolute(target)
299
+ ? target
300
+ : projectRoot === null ? null : resolve(projectRoot, target);
301
+ if (inspected !== null) {
302
+ try {
303
+ if ((await stat(inspected)).isDirectory()) {
304
+ cwd = inspected;
305
+ target = null;
306
+ }
307
+ }
308
+ catch (cause) {
309
+ if (cause?.code !== "ENOENT") {
310
+ console.error(`EXEC target classification failed for '${inspected}':`, cause);
311
+ return Results.failure("scheme:exec", "target-classification-failed", 500, `EXEC target '${target}' could not be inspected: ${ErrorDetail.preview(cause)}`, {}, { target, stage: "target-classification" });
312
+ }
313
+ }
314
+ }
315
+ }
316
+ if (!hasBody && target === null && resourceSource === null) {
317
+ return refuse("input-required", `Executable tool '${runtime}' has no executable body or realized target.`, `Provide a ${invocation.body.role} body or a non-directory target.`);
318
+ }
319
+ // One logical target derives one effect fact before policy consumes it.
320
+ // A non-file resource keeps its exact authored address until materialization.
321
+ const effectTarget = resourceSource ?? target;
304
322
  const effect = resolved.executor.effect(effectTarget);
305
323
  // cwd is the workspace project_root unless target routing selected a
306
324
  // directory override. {§exec-target-routing}, {§executor-sinks}
@@ -317,21 +335,20 @@ export default class Exec extends CoreSchemeAdapterBase {
317
335
  const turnScoped = typeof marks?.[0] === "number" && marks[0] === 0;
318
336
  const pollSec = typeof marks?.[1] === "number" && marks[1] >= 0 ? Math.floor(marks[1]) : undefined;
319
337
  const attrs = {
320
- runtime, cwd, command, target, pathname: "", effect,
321
- ...(schemeSource !== null ? { schemeSource } : {}),
338
+ runtime, cwd, body, target, pathname: "", effect,
339
+ ...(resourceSource !== null ? { resourceSource } : {}),
322
340
  ...(timeoutSec !== undefined ? { timeoutSec } : {}),
323
341
  ...(turnScoped ? { turnScoped: true } : {}),
324
342
  ...(pollSec !== undefined ? { pollSec } : {}),
325
343
  };
326
- // Body shown to client during proposal review — `$ command` is the
327
- // most-readable summary regardless of runtime.
328
- const preview = runtime !== "" ? `[${runtime}] ${command}` : `$ ${command}`;
344
+ const previewInput = body !== "" ? body : statement.target?.raw ?? "";
345
+ const preview = runtime !== "" ? `[${runtime}] ${previewInput}` : `$ ${previewInput}`;
329
346
  return { status: 202, body: preview, attrs }; // host runtime proposes with 202 — {§exec-host-proposes}
330
347
  }
331
348
  async applyResolution(args, ctx) {
332
349
  const core = this.coreContext(ctx);
333
350
  const attrs = args.attrs;
334
- let command = typeof attrs.command === "string" ? attrs.command : "";
351
+ const body = typeof attrs.body === "string" ? attrs.body : "";
335
352
  const pathname = attrs.pathname;
336
353
  const runtime = (typeof attrs.runtime === "string" && attrs.runtime !== "") ? attrs.runtime : "sh";
337
354
  const cwd = (typeof attrs.cwd === "string" && attrs.cwd.length > 0) ? attrs.cwd : null;
@@ -343,12 +360,11 @@ export default class Exec extends CoreSchemeAdapterBase {
343
360
  if (!EffectPolicy.isEffect(effect)) {
344
361
  throw new InvalidOperationResultError("The accepted EXEC proposal is missing its canonical effect fact.");
345
362
  }
346
- // Resolve a scheme target after acceptance: empty body uses the content
347
- // as the command; otherwise a temporary file becomes the data target.
348
- // {§exec-target-routing}
363
+ // Every non-file resource becomes a temporary executor target after
364
+ // acceptance; body presence never changes the target's role.
349
365
  let tempPath = null;
350
- if (attrs.schemeSource !== undefined) {
351
- const sourceTarget = parsePath(attrs.schemeSource);
366
+ if (attrs.resourceSource !== undefined) {
367
+ const sourceTarget = parsePath(attrs.resourceSource);
352
368
  if (sourceTarget?.kind !== "url" || sourceTarget.scheme === null || sourceTarget.scheme === "file") {
353
369
  throw new InvalidOperationResultError("The accepted EXEC proposal has an invalid scheme source address.");
354
370
  }
@@ -372,22 +388,12 @@ export default class Exec extends CoreSchemeAdapterBase {
372
388
  retryable: false,
373
389
  });
374
390
  }
375
- if (command.length === 0) {
376
- command = content;
377
- }
378
- else {
379
- tempPath = join(tmpdir(), `plurnk-exec-${core.workspaceId}-${pathname.replace(/[^a-zA-Z0-9]/g, "-")}`);
380
- await writeFile(tempPath, content, "utf8");
381
- target = tempPath;
382
- }
391
+ tempPath = join(tmpdir(), `plurnk-exec-${core.workspaceId}-${pathname.replace(/[^a-zA-Z0-9]/g, "-")}`);
392
+ await writeFile(tempPath, content, "utf8");
393
+ target = tempPath;
383
394
  }
384
- // {§exec-target-routing} — a local file target is itself the program, so
385
- // its body may be empty; no target and no command remains invalid.
386
- if (command.length === 0 && target === null) {
387
- if (attrs.schemeSource !== undefined) {
388
- return Results.failure("scheme:exec", "source-command-empty", 422, "The EXEC source resolved to an empty command.", { outcome: "scheme_source_command_empty" }, { retryable: false });
389
- }
390
- throw new InvalidOperationResultError("The accepted EXEC proposal has neither a command nor a target.");
395
+ if (body.length === 0 && target === null) {
396
+ throw new InvalidOperationResultError("The accepted EXEC proposal has neither a body nor a realized target.");
391
397
  }
392
398
  // Resolve the runtime's executor from the boot registry, then seed
393
399
  // channels from its declared topology ({§executor-channels}). Each executor declares its own
@@ -409,7 +415,7 @@ export default class Exec extends CoreSchemeAdapterBase {
409
415
  state: decl.defaultState ?? "active",
410
416
  };
411
417
  }
412
- const seed = { channels: seedChannels, tags: [] };
418
+ const seed = { channels: seedChannels };
413
419
  // {§exec} — the stream entry's scheme IS the runtime tag (sh/node), so it addresses by
414
420
  // tag authority (sh:///l/t/s). The engine registers each runtime tag → this handler.
415
421
  const { entryId } = await EntryCrud.writeEntry(pathname, seed, core, runtime, core.workerId);
@@ -424,7 +430,7 @@ export default class Exec extends CoreSchemeAdapterBase {
424
430
  }
425
431
  const subscriptionId = await ChannelWrite.openSubscription(core.db, {
426
432
  workerId: core.workerId, entryId, scheme: runtime,
427
- handle: runtime !== "" ? `${runtime}: ${command}` : command,
433
+ handle: runtime !== "" ? `${runtime}: ${body !== "" ? body : target ?? ""}` : body,
428
434
  pollSeconds: typeof attrs.pollSec === "number" ? attrs.pollSec : null, // {§exec-poll} — hibernation wake cadence
429
435
  turnScoped: attrs.turnScoped === true, // {§exec-poll} — `<0>` reaped at the next pre-turn
430
436
  });
@@ -452,7 +458,7 @@ export default class Exec extends CoreSchemeAdapterBase {
452
458
  });
453
459
  const tail = this.#runExecutor({
454
460
  executor: resolved.executor,
455
- runtime, command, cwd, target, ctx: core, pathname,
461
+ runtime, body, cwd, target, ctx: core, pathname,
456
462
  entryId, subscriptionId, signal: controller.signal, controller, tempPath,
457
463
  timeoutSec: typeof attrs.timeoutSec === "number" ? attrs.timeoutSec : null,
458
464
  });
@@ -476,7 +482,7 @@ export default class Exec extends CoreSchemeAdapterBase {
476
482
  // notify's reported state to "closed" before the chunk event fires
477
483
  // as "active." Chain through a single promise queue to serialize.
478
484
  async #runExecutor(opts) {
479
- const { executor, runtime, command, cwd, target, ctx, pathname, entryId, subscriptionId, signal, controller, timeoutSec, tempPath } = opts;
485
+ const { executor, runtime, body, cwd, target, ctx, pathname, entryId, subscriptionId, signal, controller, timeoutSec, tempPath } = opts;
480
486
  const db = ctx.db;
481
487
  const coordinate = coordinateFromPathname(pathname);
482
488
  // grammar 0.74.20 EXEC `<T>` — kill the spawn after T seconds. unref'd so a pending timer never
@@ -564,8 +570,8 @@ export default class Exec extends CoreSchemeAdapterBase {
564
570
  throw new Error(web.bodyOutcome.failure?.detail
565
571
  ?? `entry(): '${path.slice(0, 80)}' produced no readable body`);
566
572
  }
567
- const prior = await EntryCrud.readEntry(pathname, ctx, scheme);
568
- const tags = [...new Set([...(prior.entry?.tags ?? []), ...opts.tags])];
573
+ const tags = TagSignal.applied(opts.tags.map((tag) => `+${tag}`)).add;
574
+ const tagSignal = tags.map((tag) => `+${tag}`);
569
575
  // {§exec-entry-sink}/{§html-materialization} The shared
570
576
  // materializer owns the decisive projection and its provenance.
571
577
  const channels = WebFetcher.materializedChannels(web, content === null && fetchAddress !== null
@@ -574,7 +580,7 @@ export default class Exec extends CoreSchemeAdapterBase {
574
580
  const decisive = web.body.content;
575
581
  const source = web.html?.content ?? decisive;
576
582
  const causalSource = await resolveCallerSource();
577
- const written = Results.assert(await EntryCrud.writeEntry(pathname, { channels, tags }, ctx, scheme));
583
+ const written = Results.assert(await EntryCrud.writeEntry(pathname, { channels }, ctx, scheme));
578
584
  if (narration === null) {
579
585
  const worker = await db.envelope_get_worker_by_name.get({ workspace_id: ctx.workspaceId, name: "plurnk" })
580
586
  ?? await db.envelope_insert_worker.get({ workspace_id: ctx.workspaceId, name: "plurnk", origin: "plurnk" });
@@ -594,21 +600,23 @@ export default class Exec extends CoreSchemeAdapterBase {
594
600
  };
595
601
  }
596
602
  const sequence = narration.seq++;
603
+ const narrationAttrs = { kind: "entry_materialized" };
597
604
  if (written.problem !== undefined) {
598
- Results.attachInstance(written, `log:///${narration.loopSeq}/${narration.turnSeq}/${sequence}/EDIT`);
605
+ const coordinate = LogEntryProjection.coordinate(`${narration.loopSeq}/${narration.turnSeq}/${sequence}`, { origin: "plurnk", op: "EDIT", attrs: narrationAttrs });
606
+ Results.attachInstance(written, `log:///${coordinate}`);
599
607
  }
600
- await db.engine_insert_log_entry.get({
608
+ const logRow = await db.engine_insert_log_entry.get({
601
609
  worker_id: narration.workerId, loop_id: narration.loopId, turn_id: narration.turnId, sequence,
602
- // signal carries the tags — the SAME slot a model's EDIT[tags] uses, so the
610
+ // signal carries additive tag terms through the same slot a model's EDIT uses, so the
603
611
  // ambient row renders its tags natively everywhere (packet meta line, digest).
604
- origin: "plurnk", source: causalSource, op: "EDIT", suffix: "", signal: JSON.stringify(tags),
612
+ origin: "plurnk", source: causalSource, model_call_id: null,
613
+ op: "EDIT", suffix: "", signal: JSON.stringify(tagSignal),
605
614
  scheme, username: null, password: null, hostname: null, port: null,
606
615
  pathname, query: null, fragment: null, lineMarker: null,
607
616
  tx: JSON.stringify({ op: "EDIT", body: source }), mimetype_tx: "application/json",
608
617
  rx: JSON.stringify(written.problem === undefined
609
618
  ? {
610
619
  ...written,
611
- tags,
612
620
  span: decisive.split("\n").map((l, n) => `${n + 1}:${l}`).join("\n"),
613
621
  }
614
622
  : written),
@@ -616,8 +624,10 @@ export default class Exec extends CoreSchemeAdapterBase {
616
624
  status_rx: written.status, tokens: ctx.tokenize?.(decisive) ?? 0, state: "resolved", outcome: null,
617
625
  // Durable provenance for clients/forensics. This is machine
618
626
  // ambience, not a human/model action waterfall item.
619
- attrs: JSON.stringify({ tags, kind: "entry_materialized" }),
627
+ attrs: JSON.stringify(narrationAttrs),
620
628
  });
629
+ if (logRow === undefined)
630
+ throw new Error("entry(): log insert returned no row");
621
631
  if (written.problem !== undefined)
622
632
  throw new OperationFailureError(written);
623
633
  return renderAddress(scheme, pathname);
@@ -629,7 +639,7 @@ export default class Exec extends CoreSchemeAdapterBase {
629
639
  try {
630
640
  try {
631
641
  const reported = await executor.run({
632
- runtime, command, cwd, target, signal,
642
+ runtime, body, cwd, target, signal,
633
643
  entry: entrySink,
634
644
  env: ExecEnv.scoped(), // SPEC {§exec} {§exec-env-scoped} — never plurnk's own secrets
635
645
  write: (channel, chunk, mimetype) => enqueue(() => ChannelWrite.appendToChannel(db, {
@@ -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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"}
@@ -1,11 +1,11 @@
1
- import type { EditStatement, FindStatement, ParsedPath } from "@plurnk/plurnk-contracts";
1
+ import type { FindStatement, ParsedPath } from "@plurnk/plurnk-contracts";
2
2
  import type { SchemeManifest } 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 EntryAddress, type ProposalApplyResult } from "@plurnk/plurnk-schemes";
8
+ import { type EntryAddress, type ResolvedEditStatement, type ProposalApplyResult } from "@plurnk/plurnk-schemes";
9
9
  import type { EditBatchReceipt } from "../content/index.ts";
10
10
  type EditResult = SchemeResultBase & {
11
11
  body?: string;
@@ -17,6 +17,7 @@ type ApplyArgs = {
17
17
  path?: string;
18
18
  canonical?: string;
19
19
  patched?: string;
20
+ mimetype?: string;
20
21
  editReceipt?: EditBatchReceipt;
21
22
  deletePath?: string;
22
23
  baseSig?: string | null;
@@ -32,8 +33,8 @@ export default class File extends CoreSchemeAdapterBase {
32
33
  resolveEntryAddress(target: ParsedPath, ctx: CoreSchemeCallContext): Promise<EntryAddress | null>;
33
34
  find(statement: FindStatement, ctx: CoreSchemeCallContext): Promise<FindResult>;
34
35
  readEntry(pathname: string, ctx: CoreSchemeCallContext): Promise<ReadEntryResult>;
35
- editBatch(statements: readonly EditStatement[], ctx: CoreSchemeCallContext): Promise<EditResult>;
36
- edit(statement: EditStatement, ctx: CoreSchemeCallContext): Promise<EditResult>;
36
+ editBatch(statements: readonly ResolvedEditStatement[], ctx: CoreSchemeCallContext): Promise<EditResult>;
37
+ edit(statement: ResolvedEditStatement, ctx: CoreSchemeCallContext): Promise<EditResult>;
37
38
  writeEntry(pathname: string, entry: EntryData, ctx: CoreSchemeCallContext): Promise<WriteEntryResult>;
38
39
  applyResolution(args: ApplyArgs, ctx: CoreSchemeCallContext): Promise<ApplyResult>;
39
40
  deleteEntry(pathname: string, ctx: CoreSchemeCallContext): Promise<DeleteEntryResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"File.d.ts","sourceRoot":"","sources":["../../src/schemes/File.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAIzF,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,yBAAyB,CAAC;AAGnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EACH,KAAK,YAAY,EAGjB,KAAK,mBAAmB,EAC3B,MAAM,wBAAwB,CAAC;AAmBhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,KAAK,UAAU,GAAG,gBAAgB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACvG,KAAK,SAAS,GAAG;IAAE,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC1N,KAAK,WAAW,GAAG,mBAAmB,CAAC;AAmCvC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,qBAAqB;;IACnD,MAAM,CAAC,QAAQ,EAAE,cAAc,CAY7B;IA4BI,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOtG;IAEK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAMpF;IAKK,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAQtF;IA+KK,SAAS,CAAC,UAAU,EAAE,SAAS,aAAa,EAAE,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAmHrG;IAEK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAEpF;IAQK,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+B1G;IASK,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CA4JvF;IAMK,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAkB1F;IAEK,aAAa,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAe5B;CACJ"}
1
+ {"version":3,"file":"File.d.ts","sourceRoot":"","sources":["../../src/schemes/File.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAI1E,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,yBAAyB,CAAC;AAGnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAgB,EAAE,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEpE,OAAO,EACH,KAAK,YAAY,EAEjB,KAAK,qBAAqB,EAE1B,KAAK,mBAAmB,EAC3B,MAAM,wBAAwB,CAAC;AAsBhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,KAAK,UAAU,GAAG,gBAAgB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACvG,KAAK,SAAS,GAAG;IAAE,KAAK,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7O,KAAK,WAAW,GAAG,mBAAmB,CAAC;AAmCvC,MAAM,CAAC,OAAO,OAAO,IAAK,SAAQ,qBAAqB;;IACnD,MAAM,CAAC,QAAQ,EAAE,cAAc,CAa7B;IA4BI,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOtG;IAEK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAMpF;IAKK,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,CAQtF;IA+KK,SAAS,CAAC,UAAU,EAAE,SAAS,qBAAqB,EAAE,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAyH7G;IAEK,IAAI,CAAC,SAAS,EAAE,qBAAqB,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAE5F;IAQK,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+B1G;IASK,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC,CAsJvF;IAMK,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAkB1F;IAEK,aAAa,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,iBAAiB,CAAC,CAe5B;CACJ"}