@plurnk/plurnk-service 0.59.0 → 0.61.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 (123) hide show
  1. package/.env.example +41 -3
  2. package/PLURNK_PERSONALITY.md +61 -0
  3. package/SPEC.md +54 -45
  4. package/dist/core/Dispatcher.d.ts +61 -0
  5. package/dist/core/Dispatcher.d.ts.map +1 -0
  6. package/dist/core/Dispatcher.js +811 -0
  7. package/dist/core/Dispatcher.js.map +1 -0
  8. package/dist/core/Engine.d.ts +10 -45
  9. package/dist/core/Engine.d.ts.map +1 -1
  10. package/dist/core/Engine.js +269 -1489
  11. package/dist/core/Engine.js.map +1 -1
  12. package/dist/core/Engine.sql +55 -12
  13. package/dist/core/ExecutorRegistry.d.ts +2 -1
  14. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  15. package/dist/core/ExecutorRegistry.js +16 -3
  16. package/dist/core/ExecutorRegistry.js.map +1 -1
  17. package/dist/core/PacketBuilder.d.ts +64 -0
  18. package/dist/core/PacketBuilder.d.ts.map +1 -0
  19. package/dist/core/PacketBuilder.js +365 -0
  20. package/dist/core/PacketBuilder.js.map +1 -0
  21. package/dist/core/ProposalLifecycle.d.ts +56 -0
  22. package/dist/core/ProposalLifecycle.d.ts.map +1 -0
  23. package/dist/core/ProposalLifecycle.js +195 -0
  24. package/dist/core/ProposalLifecycle.js.map +1 -0
  25. package/dist/core/SchemeRegistry.d.ts +2 -0
  26. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  27. package/dist/core/SchemeRegistry.js +20 -15
  28. package/dist/core/SchemeRegistry.js.map +1 -1
  29. package/dist/core/StrikeRail.d.ts +27 -0
  30. package/dist/core/StrikeRail.d.ts.map +1 -0
  31. package/dist/core/StrikeRail.js +147 -0
  32. package/dist/core/StrikeRail.js.map +1 -0
  33. package/dist/core/TelemetryChannel.d.ts +37 -0
  34. package/dist/core/TelemetryChannel.d.ts.map +1 -0
  35. package/dist/core/TelemetryChannel.js +77 -0
  36. package/dist/core/TelemetryChannel.js.map +1 -0
  37. package/dist/core/fork.d.ts +1 -0
  38. package/dist/core/fork.d.ts.map +1 -1
  39. package/dist/core/fork.js +17 -4
  40. package/dist/core/fork.js.map +1 -1
  41. package/dist/core/fork.sql +6 -0
  42. package/dist/core/packet-inject.d.ts.map +1 -1
  43. package/dist/core/packet-inject.js +8 -3
  44. package/dist/core/packet-inject.js.map +1 -1
  45. package/dist/core/packet-wire.d.ts +5 -1
  46. package/dist/core/packet-wire.d.ts.map +1 -1
  47. package/dist/core/packet-wire.js +53 -19
  48. package/dist/core/packet-wire.js.map +1 -1
  49. package/dist/core/plurnk-uri.d.ts +2 -0
  50. package/dist/core/plurnk-uri.d.ts.map +1 -1
  51. package/dist/core/plurnk-uri.js +11 -0
  52. package/dist/core/plurnk-uri.js.map +1 -1
  53. package/dist/core/run-cap.js +2 -2
  54. package/dist/core/run-cap.js.map +1 -1
  55. package/dist/core/run-ops.sql +21 -0
  56. package/dist/digest/Digest.d.ts +14 -0
  57. package/dist/digest/Digest.d.ts.map +1 -0
  58. package/dist/digest/Digest.js +321 -0
  59. package/dist/digest/Digest.js.map +1 -0
  60. package/dist/digest/digest.sql +55 -0
  61. package/dist/schemes/Exec.d.ts.map +1 -1
  62. package/dist/schemes/Exec.js +23 -24
  63. package/dist/schemes/Exec.js.map +1 -1
  64. package/dist/schemes/File.js +2 -2
  65. package/dist/schemes/File.js.map +1 -1
  66. package/dist/schemes/Log.d.ts.map +1 -1
  67. package/dist/schemes/Log.js +5 -1
  68. package/dist/schemes/Log.js.map +1 -1
  69. package/dist/schemes/Run.d.ts.map +1 -1
  70. package/dist/schemes/Run.js +27 -27
  71. package/dist/schemes/Run.js.map +1 -1
  72. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  73. package/dist/schemes/_entry-manifest.js +5 -1
  74. package/dist/schemes/_entry-manifest.js.map +1 -1
  75. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  76. package/dist/schemes/_entry-semantic.js +6 -0
  77. package/dist/schemes/_entry-semantic.js.map +1 -1
  78. package/dist/server/ClientConnection.d.ts.map +1 -1
  79. package/dist/server/ClientConnection.js +48 -2
  80. package/dist/server/ClientConnection.js.map +1 -1
  81. package/dist/server/Daemon.d.ts +1 -1
  82. package/dist/server/Daemon.d.ts.map +1 -1
  83. package/dist/server/Daemon.js +29 -3
  84. package/dist/server/Daemon.js.map +1 -1
  85. package/dist/server/drain.sql +14 -0
  86. package/dist/server/methods/auth.d.ts +6 -0
  87. package/dist/server/methods/auth.d.ts.map +1 -0
  88. package/dist/server/methods/auth.js +45 -0
  89. package/dist/server/methods/auth.js.map +1 -0
  90. package/dist/server/methods/mcp_install.d.ts +6 -0
  91. package/dist/server/methods/mcp_install.d.ts.map +1 -0
  92. package/dist/server/methods/mcp_install.js +66 -0
  93. package/dist/server/methods/mcp_install.js.map +1 -0
  94. package/dist/server/methods/op_copy.d.ts.map +1 -1
  95. package/dist/server/methods/op_copy.js +1 -0
  96. package/dist/server/methods/op_copy.js.map +1 -1
  97. package/dist/server/methods/op_dispatch.d.ts.map +1 -1
  98. package/dist/server/methods/op_dispatch.js +1 -0
  99. package/dist/server/methods/op_dispatch.js.map +1 -1
  100. package/dist/server/methods/op_edit.d.ts.map +1 -1
  101. package/dist/server/methods/op_edit.js +1 -0
  102. package/dist/server/methods/op_edit.js.map +1 -1
  103. package/dist/server/methods/op_exec.d.ts.map +1 -1
  104. package/dist/server/methods/op_exec.js +1 -0
  105. package/dist/server/methods/op_exec.js.map +1 -1
  106. package/dist/server/methods/op_move.d.ts.map +1 -1
  107. package/dist/server/methods/op_move.js +1 -0
  108. package/dist/server/methods/op_move.js.map +1 -1
  109. package/dist/server/methods/session_attach.d.ts.map +1 -1
  110. package/dist/server/methods/session_attach.js +4 -0
  111. package/dist/server/methods/session_attach.js.map +1 -1
  112. package/dist/server/methods/session_create.d.ts.map +1 -1
  113. package/dist/server/methods/session_create.js +4 -0
  114. package/dist/server/methods/session_create.js.map +1 -1
  115. package/dist/server/yolo.js +1 -1
  116. package/dist/server/yolo.js.map +1 -1
  117. package/dist/service.d.ts.map +1 -1
  118. package/dist/service.js +6 -0
  119. package/dist/service.js.map +1 -1
  120. package/docs/run.md +7 -3
  121. package/migrations/0000-00-00.01_schema.sql +8 -4
  122. package/package.json +22 -17
  123. package/requirements.md +6 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelemetryChannel.js","sourceRoot":"","sources":["../../src/core/TelemetryChannel.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { Db } from "./Db.ts";
2
2
  export default class Fork {
3
+ #private;
3
4
  static fork(db: Db, parentRunId: number, name?: string): Promise<number>;
4
5
  }
5
6
  //# sourceMappingURL=fork.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fork.d.ts","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,IAAI;WACR,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA+DjF"}
1
+ {"version":3,"file":"fork.d.ts","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,IAAI;;WAIR,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CA0EjF"}
package/dist/core/fork.js CHANGED
@@ -9,23 +9,36 @@
9
9
  // "fork = everything-in-common-but-name, then diverges". The §env-delta reconciliation
10
10
  // snapshot is not copied; the branch first-sights its world like any fresh run.
11
11
  export default class Fork {
12
+ // Terminal loop statuses (§lifecycle-terms) — inherited loops outside this set are clamped to 200.
13
+ static #TERMINAL_LOOP = new Set([200, 413, 429, 499, 500, 504, 508]);
12
14
  static async fork(db, parentRunId, name) {
13
15
  const parent = await db.fork_get_run.get({ id: parentRunId });
14
16
  if (parent === undefined)
15
17
  throw new Error(`fork: run ${parentRunId} not found`);
16
- // #248 — name the branch at instantiation (immutable after); default `<parent>-fork`.
17
- const branchName = name ?? `${parent.name}-fork`;
18
+ // #248 — name the branch at instantiation (immutable after). An explicit name wins; the default
19
+ // is `<parent>-fork-<N>` (N = next free), so N self-forks of one parent are individually
20
+ // addressable instead of all colliding on a single `<parent>-fork` (§run-scheme-fork).
21
+ let branchName = name;
22
+ if (branchName === undefined) {
23
+ const existing = await db.fork_count_branches.get({ parent_run_id: parentRunId, name_prefix: `${parent.name}-fork%` });
24
+ branchName = `${parent.name}-fork-${(existing?.n ?? 0) + 1}`;
25
+ }
18
26
  const branch = await db.fork_insert_run.get({
19
27
  session_id: parent.session_id, name: branchName, parent_run_id: parentRunId, origin: parent.origin,
20
28
  });
21
29
  if (branch === undefined)
22
30
  throw new Error("fork: branch run insert returned no row");
23
31
  const branchRunId = branch.id;
24
- // loops → new loops, mapping old id → new id.
32
+ // loops → new loops, mapping old id → new id. A copied loop is INHERITED HISTORY, never the
33
+ // branch's live work (its own loop is enqueued fresh by injectRun) — so a non-terminal status
34
+ // is clamped to terminal (200). Otherwise a fork taken while the parent's loop is mid-flight (102)
35
+ // would carry a frozen-live loop no drain ever advances, falsely marking the branch forever-live
36
+ // to any liveness check (§run-scheme-fork, the premature-terminate gate §send-premature-terminate).
25
37
  const loops = await db.fork_get_loops.all({ run_id: parentRunId });
26
38
  const loopMap = new Map();
27
39
  for (const l of loops) {
28
- const nl = await db.fork_insert_loop.get({ run_id: branchRunId, sequence: l.sequence, status: l.status, prompt: l.prompt, flags: l.flags });
40
+ const status = Fork.#TERMINAL_LOOP.has(l.status) ? l.status : 200;
41
+ const nl = await db.fork_insert_loop.get({ run_id: branchRunId, sequence: l.sequence, status, prompt: l.prompt, flags: l.flags });
29
42
  if (nl === undefined)
30
43
  throw new Error("fork: loop insert returned no row");
31
44
  loopMap.set(l.id, nl.id);
@@ -1 +1 @@
1
- {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fork.js","sourceRoot":"","sources":["../../src/core/fork.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,12 @@ INSERT INTO runs (session_id, name, parent_run_id, origin)
14
14
  VALUES ($session_id, $name, $parent_run_id, $origin)
15
15
  RETURNING id;
16
16
 
17
+ -- PREP: fork_count_branches
18
+ -- How many fork branches the parent already has — for a UNIQUE `<parent>-fork-<N>` default name, so N
19
+ -- self-forks of one parent are individually addressable (KILL/SEND/READ by name) instead of colliding
20
+ -- on a single `<parent>-fork` that run_resolve_by_name would resolve to the newest only (§run-scheme-fork).
21
+ SELECT COUNT(*) AS n FROM runs WHERE parent_run_id = $parent_run_id AND name LIKE $name_prefix;
22
+
17
23
  -- PREP: fork_get_loops
18
24
  SELECT id, sequence, status, prompt, flags
19
25
  FROM loops WHERE run_id = $run_id ORDER BY id;
@@ -1 +1 @@
1
- {"version":3,"file":"packet-inject.d.ts","sourceRoot":"","sources":["../../src/core/packet-inject.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MACc,CAAC;AAE/D,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAI9D,CAAC;AAYF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAG9D,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAU,aAAa,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAKzF,CAAC"}
1
+ {"version":3,"file":"packet-inject.d.ts","sourceRoot":"","sources":["../../src/core/packet-inject.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MACc,CAAC;AAE/D,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAI9D,CAAC;AAcF,eAAO,MAAM,gBAAgB,QAAa,OAAO,CAAC,MAAM,GAAG,IAAI,CAK9D,CAAC;AAGF,eAAO,MAAM,iBAAiB,GAAU,aAAa,MAAM,GAAG,IAAI,KAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAKzF,CAAC"}
@@ -13,7 +13,7 @@ export const readPacketInject = async () => {
13
13
  return null;
14
14
  return readFile(resolveInjectPath(raw), "utf8");
15
15
  };
16
- // Policy sections (## Plurnk System Policy / ## Project Policy) — the client's foot in the privileged
16
+ // Policy sections (## Plurnk Service Policy / ## Project Policy) — the client's foot in the privileged
17
17
  // system zone, distinct from the freeform PLURNK_PACKET_INJECT. A DEFAULT path that's absent is fine
18
18
  // (no section); an EXPLICIT env override that can't be read FAILS HARD (a deliberate-but-broken
19
19
  // setting is a misconfig). Read per-turn for live edits.
@@ -27,9 +27,14 @@ const readPolicy = async (path, explicit) => {
27
27
  return null;
28
28
  }
29
29
  };
30
- // System Policy: PLURNK_POLICY (~-expanded) or the default ~/.plurnk/AGENTS.md.
30
+ // System Policy: PLURNK_POLICY (~-expanded) or the default ~/.plurnk/AGENTS.md. An EXPLICITLY-empty
31
+ // PLURNK_POLICY disables it (undefined → default; "" → off; a path → that file). The test cascade
32
+ // (.env.test) sets it empty so test/demo/live packets never foist the operator's dogfooding policy.
31
33
  export const readSystemPolicy = async () => {
32
- const env = process.env.PLURNK_POLICY?.trim();
34
+ const raw = process.env.PLURNK_POLICY;
35
+ if (raw !== undefined && raw.trim() === "")
36
+ return null; // explicit empty → off (test isolation)
37
+ const env = raw?.trim();
33
38
  return readPolicy(env ? resolveInjectPath(env) : join(homedir(), ".plurnk", "AGENTS.md"), !!env);
34
39
  };
35
40
  // Project Policy: PLURNK_PROJECT (relative to projectRoot, ~-expanded) or <projectRoot>/AGENTS.md.
@@ -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,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,iGAAiG;AACjG,mGAAmG;AACnG,gGAAgG;AAChG,oGAAoG;AACpG,qFAAqF;AACrF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAU,EAAE,CACrD,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,sGAAsG;AACtG,qGAAqG;AACrG,gGAAgG;AAChG,yDAAyD;AACzD,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,gFAAgF;AAChF,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC;IAC9C,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACrG,CAAC,CAAC;AAEF,mGAAmG;AACnG,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,WAA0B,EAA0B,EAAE;IAC1F,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,GAAG,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;IACtF,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACpG,CAAC,CAAC"}
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,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE1C,iGAAiG;AACjG,mGAAmG;AACnG,gGAAgG;AAChG,oGAAoG;AACpG,qFAAqF;AACrF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,GAAW,EAAU,EAAE,CACrD,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AAE/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IACtB,OAAO,QAAQ,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;AACpD,CAAC,CAAC;AAEF,uGAAuG;AACvG,qGAAqG;AACrG,gGAAgG;AAChG,yDAAyD;AACzD,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,oGAAoG;AACpG,kGAAkG;AAClG,oGAAoG;AACpG,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,IAA4B,EAAE;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACtC,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,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACrG,CAAC,CAAC;AAEF,mGAAmG;AACnG,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,WAA0B,EAA0B,EAAE;IAC1F,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAC/C,IAAI,CAAC,GAAG,IAAI,WAAW,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC,CAAC,uCAAuC;IACtF,MAAM,IAAI,GAAG,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1C,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;AACpG,CAAC,CAAC"}
@@ -20,8 +20,12 @@ export default class PacketWire {
20
20
  #private;
21
21
  static renderSlot(sections: SectionView[], slot: "system" | "user"): string;
22
22
  static renderSection(s: SectionView): string;
23
- static previewPrompt(content: string, fullAddr: string, cap: number): string;
23
+ static renderActivePrompts(rows: Array<{
24
+ content: string;
25
+ pathname: string;
26
+ }>, cap: number): string;
24
27
  static renderErrors(errors: unknown): string;
28
+ static renderChildPointers(rows: unknown): string;
25
29
  static renderGit(git: unknown): string;
26
30
  static renderLog(entries: unknown, countTokens: CountTokens): string;
27
31
  static sectionContent(packet: Packet, name: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"packet-wire.d.ts","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"AAiDA,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IAAG,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE;AAC/G,UAAU,MAAM;IAAG,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;CAAE;AAC7C,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,UAAU;;IAK3B,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM;IAY3E,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM;IAU5C,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAS5E,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM;IAM5C,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAMtC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,MAAM;IAQpE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ3D,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAerF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG;QACjE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAChC,MAAM,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChD,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACpD;CA8SJ"}
1
+ {"version":3,"file":"packet-wire.d.ts","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"AAiDA,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,WAAW;IAAG,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE;AAC/G,UAAU,MAAM;IAAG,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;CAAE;AAC7C,KAAK,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,UAAU;;IAK3B,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM;IAY3E,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,WAAW,GAAG,MAAM;IAe5C,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAYnG,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM;IAS5C,MAAM,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM;IAMjD,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAMtC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG,MAAM;IAQpE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAQ3D,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAerF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,GAAG;QACjE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAChC,MAAM,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChD,OAAO,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KACpD;CA8TJ"}
@@ -9,7 +9,7 @@
9
9
  // fenced code blocks for entry bodies, lists for arrays. No invented
10
10
  // separators. Models parse markdown natively.
11
11
  //
12
- // Section headers follow the `## Plurnk System X` convention so the model
12
+ // Section headers follow the `## Plurnk Service X` convention so the model
13
13
  // sees consistent framing across every section it might receive. Sections
14
14
  // with no content are omitted entirely (no empty headers in the wire).
15
15
  import { MimetypeBinary } from "../content/index.js";
@@ -36,14 +36,22 @@ export default class PacketWire {
36
36
  const header = typeof s.header === "string" && s.header.length > 0 ? s.header : null;
37
37
  return (header ? `## ${header}\n\n${s.content}` : s.content).replace(/\n+$/, "");
38
38
  }
39
- // PLURNK_PROMPT_PREVIEW_CHARS caps the prompt body rendered in the prompt
40
- // section a fat prompt replays every turn, so show the first `cap` chars +
41
- // a pointer to the full body (always READable at its own entry, never lost).
42
- // cap < 0 = no cap (full prompt).
43
- static previewPrompt(content, fullAddr, cap) {
44
- if (cap < 0 || content.length <= cap)
45
- return content;
46
- return `${content.slice(0, cap)}\n\n…(prompt preview full body READable at ${fullAddr})`;
39
+ // The Active User Prompts section (§prompt-fold) the OPPOSITE of the errors section:
40
+ // bare HEREDOC bodies, no meta/link line; the heredoc fence (each prompt's own
41
+ // plurnk://prompt/<loop>/<seq> address) IS the link. Every prompt the current loop holds
42
+ // renders in order (typically one; an active loop admits injected prompts). The body is
43
+ // `N:\t` LINE-NUMBERED inside the fence — a SECURITY boundary: numbered, fenced prompt text
44
+ // can't spoof other parts of the packet (a prompt line `## Plurnk Service Errors` reads as
45
+ // `3:\t## …`, plainly inside the prompt, not a real section). A fat prompt replays every turn,
46
+ // so PLURNK_PROMPT_PREVIEW_CHARS caps it: over the cap, render a pointer placeholder instead of
47
+ // the body — the model OPENs/READs the entry to see it whole (never lost). cap < 0 = no cap.
48
+ static renderActivePrompts(rows, cap) {
49
+ return rows.map((r) => {
50
+ const addr = renderAddress("plurnk", r.pathname);
51
+ if (cap >= 0 && r.content.length > cap)
52
+ return `[ Prompt exceeds preview limit. Full content: ${addr} ]`;
53
+ return PacketWire.#wrapHeredocBody(addr, PacketWire.#numberLines(r.content));
54
+ }).join("\n\n");
47
55
  }
48
56
  // The errors section content: the structured telemetry events rendered to
49
57
  // meta lines (+ snippet blocks). "" when empty (the section is omitted). The
@@ -53,6 +61,14 @@ export default class PacketWire {
53
61
  const events = Array.isArray(errors) ? errors : [];
54
62
  return events.length > 0 ? PacketWire.#renderTelemetryErrors(events) : "";
55
63
  }
64
+ // The Child Streams / Child Runs sections (§child-orientation) — the OPPOSITE of advice: terse
65
+ // `* <status> <path>` pointers (same shape as the errors section) to the live things the run holds,
66
+ // so the model SEES its open streams + unconcluded workers each turn and reasons for itself (READ /
67
+ // OPEN / KILL via the path). Orienting state, never an instruction. "" when none → section omitted.
68
+ static renderChildPointers(rows) {
69
+ const items = Array.isArray(rows) ? rows : [];
70
+ return items.map((r) => `* ${String(r.status)} ${String(r.path)}`).join("\n");
71
+ }
56
72
  // The git section content: the working-tree summary. "" when absent.
57
73
  static renderGit(git) {
58
74
  return git === null || git === undefined ? "" : PacketWire.#renderGitState(git);
@@ -82,15 +98,15 @@ export default class PacketWire {
82
98
  }
83
99
  // Measure the curatable log section's budget subtotals from the STRUCTURED
84
100
  // log (the foldable unit), using the provider's tokenizer — meta lines and
85
- // fences included, matching what ships. Feeds the grinder's rollback unit
86
- // (per-turn rollup, oldest-first) and the FOLD unit (heaviest entries) — the
101
+ // fences included, matching what ships. Feeds the per-turn rollup (chronological;
102
+ // the grinder folds the newest turn) and the FOLD unit (heaviest entries) — the
87
103
  // two budget levers the model can pull (§tokenomics {§tokenomics-turn-totals},
88
104
  // {§tokenomics-largest-entries}). Build-time only; the stored log section is
89
105
  // the rendered result. §tokenomics-render-weight-budget
90
106
  static measureLogBudget(entries, countTokens) {
91
107
  const logEntries = Array.isArray(entries) ? entries : [];
92
108
  const logBody = logEntries.length > 0 ? PacketWire.#renderLogEntries(logEntries, countTokens) : "";
93
- const HEAVIEST_COUNT = 10;
109
+ const HEAVIEST_COUNT = 5;
94
110
  const byTurn = new Map();
95
111
  const perEntry = [];
96
112
  for (const e of logEntries) {
@@ -109,7 +125,7 @@ export default class PacketWire {
109
125
  }
110
126
  return {
111
127
  entries: logEntries.length,
112
- tokens: logBody ? countTokens(`## Plurnk System Log\n\n${logBody}`) : 0,
128
+ tokens: logBody ? countTokens(`## Plurnk Service Log\n\n${logBody}`) : 0,
113
129
  byTurn: [...byTurn.entries()]
114
130
  .map(([turn, tokens]) => ({ turn, tokens }))
115
131
  .toSorted((a, b) => {
@@ -201,7 +217,7 @@ export default class PacketWire {
201
217
  }
202
218
  // Render a (scheme, pathname) tuple as the URI the model should SEE.
203
219
  // Null scheme → bare pathname. The `file` scheme never reaches this
204
- // function because Engine.#extractTarget normalizes it to null at the
220
+ // function because Dispatcher.#extractTarget normalizes it to null at the
205
221
  // storage boundary; storage and wire output are uniform on this.
206
222
  static #renderModelUri(scheme, pathname) {
207
223
  const path = pathname ?? "";
@@ -385,7 +401,15 @@ export default class PacketWire {
385
401
  static #renderActionTarget(target) {
386
402
  if (target === null || target === undefined)
387
403
  return null;
388
- const rendered = PacketWire.#renderModelUri(target.scheme, target.pathname);
404
+ // An authority-bearing target (run://<name> — the run IS the authority, §run-scheme;
405
+ // a web host http://host/path) keeps its name in `hostname`. Without it a spawn renders
406
+ // as a bare `run://`, indistinguishable across workers — the model goes blind to what it
407
+ // spawned and re-spawns. Reconstruct the authority form when a hostname is present;
408
+ // namespace schemes (plurnk/known) fold their authority into the path and fall through.
409
+ const host = typeof target.hostname === "string" && target.hostname.length > 0 ? target.hostname : null;
410
+ const rendered = host !== null && typeof target.scheme === "string" && target.scheme.length > 0
411
+ ? `${target.scheme}://${host}${target.port ? `:${target.port}` : ""}${target.pathname ?? ""}`
412
+ : PacketWire.#renderModelUri(target.scheme, target.pathname);
389
413
  if (rendered.length === 0)
390
414
  return null;
391
415
  // The channel fragment (#stdout/#stderr) is part of the address — a stream delta has to
@@ -398,10 +422,20 @@ export default class PacketWire {
398
422
  return `branch \`${git.branch}\`${sync} — ${git.staged} staged, ${git.unstaged} unstaged, ${git.untracked} untracked`;
399
423
  }
400
424
  static #renderTelemetryErrors(errors) {
401
- // One meta line per event. A content-offset NOTICE (e.g. grammar_unenforced) carries a
402
- // `position: {line, column}`; the model resolves that line against its own born-OPEN emission
403
- // (the `model` row, §model-entry) no snippet block.
404
- return errors.map((e) => `* ${PacketWire.#canonicalJson(e)}`).join("\n");
425
+ // Uniform projection off the formal TelemetryEvent envelope (grammar TelemetryEvent.json):
426
+ // render each error by its typed `position`, never by sniffing `kind`. A LogCoordinate is a
427
+ // terse `<status> log:///<coord>` link to the row (the row holds the term + detail); a
428
+ // ContentOffset points the model at the line in its own born-OPEN emission (§model-entry).
429
+ // No JSON dump — the packet teaches, the row carries the body.
430
+ return errors.map((e) => {
431
+ const ev = e;
432
+ const pos = ev.position;
433
+ if (pos?.type === "log-coordinate")
434
+ return `* ${ev.status ?? ""} log:///${pos.coordinate}`.replace(/ +/g, " ");
435
+ if (pos?.type === "content-offset")
436
+ return `* ${ev.kind ?? "error"} ${pos.line}:${pos.column}`;
437
+ return `* ${ev.kind ?? "error"}`;
438
+ }).join("\n");
405
439
  }
406
440
  }
407
441
  //# sourceMappingURL=packet-wire.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packet-wire.js","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"packet-wire.js","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { ParsedPath } from "@plurnk/plurnk-grammar";
2
+ export declare function schemeNameOf(path: ParsedPath | null): string | null;
1
3
  export declare function foldAuthorityIntoPath(hostname: string | null, pathname: string): string;
2
4
  export declare function renderAddress(scheme: string, pathname: string): string;
3
5
  //# sourceMappingURL=plurnk-uri.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plurnk-uri.d.ts","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAcA,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKtE"}
1
+ {"version":3,"file":"plurnk-uri.d.ts","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAKzD,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAKnE;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKtE"}
@@ -11,6 +11,17 @@
11
11
  // A web host (http://en.wikipedia.org/…) is NOT a namespace and never folds — callers that
12
12
  // see other schemes gate the fold on scheme === "plurnk"; the entry layer only ever sees
13
13
  // empty-authority schemes, so it folds unconditionally (a no-op there).
14
+ // Bare paths default to the file scheme per plurnk.md (grammar sysprompt):
15
+ // "Bare paths (no scheme) default to local relative project file paths."
16
+ // file:/// remains an optional explicit form for absolute paths.
17
+ export function schemeNameOf(path) {
18
+ if (path === null)
19
+ return null;
20
+ // http + https are one scheme — the http sibling owns both prefixes (#195).
21
+ if (path.kind === "url")
22
+ return path.scheme === "https" ? "http" : path.scheme;
23
+ return "file"; // local (bare) → file
24
+ }
14
25
  export function foldAuthorityIntoPath(hostname, pathname) {
15
26
  return hostname ? `/${hostname}${pathname}` : pathname;
16
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plurnk-uri.js","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,0FAA0F;AAC1F,wFAAwF;AACxF,gFAAgF;AAChF,EAAE;AACF,uFAAuF;AACvF,4FAA4F;AAC5F,6FAA6F;AAC7F,yFAAyF;AACzF,EAAE;AACF,2FAA2F;AAC3F,yFAAyF;AACzF,wEAAwE;AAExE,MAAM,UAAU,qBAAqB,CAAC,QAAuB,EAAE,QAAgB;IAC3E,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,QAAgB;IAC1D,IAAI,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrF,OAAO,YAAY,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,MAAM,MAAM,QAAQ,EAAE,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"plurnk-uri.js","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,0FAA0F;AAC1F,wFAAwF;AACxF,gFAAgF;AAChF,EAAE;AACF,uFAAuF;AACvF,4FAA4F;AAC5F,6FAA6F;AAC7F,yFAAyF;AACzF,EAAE;AACF,2FAA2F;AAC3F,yFAAyF;AACzF,wEAAwE;AAIxE,2EAA2E;AAC3E,yEAAyE;AACzE,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,IAAuB;IAChD,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,4EAA4E;IAC5E,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAC/E,OAAO,MAAM,CAAC,CAAE,sBAAsB;AAC1C,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAuB,EAAE,QAAgB;IAC3E,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,QAAgB;IAC1D,IAAI,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACrF,OAAO,YAAY,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC;IACrD,CAAC;IACD,OAAO,GAAG,MAAM,MAAM,QAAQ,EAAE,CAAC;AACrC,CAAC"}
@@ -3,8 +3,8 @@
3
3
  // knob; -1 / unset / invalid = no cap. Only concurrency is bounded, never lifetime:
4
4
  // sessions persist for months, so a total-created cap would punish longevity. A
5
5
  // spawn/fork past the ceiling fails hard (508) — no queue, no retry. Checked at the
6
- // two run-creation sites (Run.edit spawn, Engine.#handleRunFork); irc is exempt — it
7
- // targets an existing run and creates nothing.
6
+ // single run-creation site (Dispatcher.#handleRunCopy, which both spawns and forks); irc is
7
+ // exempt — it targets an existing run and creates nothing.
8
8
  export default class RunCap {
9
9
  static async deny(db, sessionId) {
10
10
  const raw = process.env.PLURNK_SESSION_RUNS_MAX_ACTIVE;
@@ -1 +1 @@
1
- {"version":3,"file":"run-cap.js","sourceRoot":"","sources":["../../src/core/run-cap.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,mFAAmF;AACnF,oFAAoF;AACpF,gFAAgF;AAChF,oFAAoF;AACpF,qFAAqF;AACrF,+CAA+C;AAC/C,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,SAAiB;QACvC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;QACvD,MAAM,GAAG,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,SAAS;QAC5D,MAAM,GAAG,GAAG,MAAO,EAAE,CAAC,gBAA+B,CAAC,GAAG,CAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACpG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,sEAAsE,GAAG,GAAG,EAAE,CAAC;QACtI,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
1
+ {"version":3,"file":"run-cap.js","sourceRoot":"","sources":["../../src/core/run-cap.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,mFAAmF;AACnF,oFAAoF;AACpF,gFAAgF;AAChF,oFAAoF;AACpF,4FAA4F;AAC5F,2DAA2D;AAC3D,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,SAAiB;QACvC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC;QACvD,MAAM,GAAG,GAAG,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,CAAC,SAAS;QAC5D,MAAM,GAAG,GAAG,MAAO,EAAE,CAAC,gBAA+B,CAAC,GAAG,CAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC;QACpG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG;YAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,sEAAsE,GAAG,GAAG,EAAE,CAAC;QACtI,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
@@ -13,6 +13,27 @@ ORDER BY id DESC LIMIT 1;
13
13
  -- acting run (ctx.runId) to its name to key its run-scope entries by authority.
14
14
  SELECT name FROM runs WHERE id = $run_id;
15
15
 
16
+ -- PREP: run_deliverable_by_name
17
+ -- The newest run holding this name, with its latest loop's status + terminal message — the
18
+ -- deliverable a sister COLLECTS by READing run://<name> (§run-scheme-collect, the pull side of
19
+ -- the same deliverable the push delta carries). Terminal status → the message is the result (200)
20
+ -- or the abandonment reason; non-terminal → the worker hasn't delivered yet (READ steers to 202).
21
+ SELECT r.id AS run_id, l.status, l.terminal_message
22
+ FROM runs r
23
+ JOIN loops l ON l.run_id = r.id
24
+ WHERE r.session_id = $session_id AND r.name = $name
25
+ ORDER BY r.id DESC, l.sequence DESC
26
+ LIMIT 1;
27
+
28
+ -- PREP: run_live_by_name
29
+ -- The newest run holding this name that is still LIVE (a non-terminal loop, 100/102) —
30
+ -- the spawn gate's collision check. A hit means the name is in use by a running sister
31
+ -- (refuse: 409); no hit means the name is free or held only by a terminated run (reclaim).
32
+ SELECT r.id FROM runs r
33
+ JOIN loops l ON l.run_id = r.id
34
+ WHERE r.session_id = $session_id AND r.name = $name AND l.status IN (100, 102)
35
+ ORDER BY r.id DESC LIMIT 1;
36
+
16
37
  -- PREP: run_count_active
17
38
  -- Runs in a session with a non-terminal loop (status 100 pending / 102 in-progress)
18
39
  -- — "active" for the PLURNK_SESSION_RUNS_MAX_ACTIVE ceiling (run-cap.ts).
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env node
2
+ interface DigestOptions {
3
+ dbPath: string;
4
+ digestDir?: string;
5
+ runId?: number;
6
+ sessionId?: number;
7
+ }
8
+ export default class Digest {
9
+ #private;
10
+ static defaultDbPath(): string;
11
+ static run(opts: DigestOptions): void;
12
+ }
13
+ export {};
14
+ //# sourceMappingURL=Digest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Digest.d.ts","sourceRoot":"","sources":["../../src/digest/Digest.ts"],"names":[],"mappings":";AAiFA,UAAU,aAAa;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;;IA2LvB,MAAM,CAAC,aAAa,IAAI,MAAM;IAS9B,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;CA2ExC"}