@plurnk/plurnk-service 0.63.0 → 0.68.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 (110) hide show
  1. package/.env.example +124 -68
  2. package/INSTALL.md +69 -0
  3. package/README.md +1 -1
  4. package/SPEC.md +55 -47
  5. package/dist/Paths.js +5 -5
  6. package/dist/Paths.js.map +1 -1
  7. package/dist/core/ChannelWrite.d.ts.map +1 -1
  8. package/dist/core/ChannelWrite.js +17 -0
  9. package/dist/core/ChannelWrite.js.map +1 -1
  10. package/dist/core/ChannelWrite.sql +5 -0
  11. package/dist/core/Dispatcher.d.ts +1 -1
  12. package/dist/core/Dispatcher.d.ts.map +1 -1
  13. package/dist/core/Dispatcher.js +12 -5
  14. package/dist/core/Dispatcher.js.map +1 -1
  15. package/dist/core/Engine.d.ts +1 -0
  16. package/dist/core/Engine.d.ts.map +1 -1
  17. package/dist/core/Engine.js +76 -60
  18. package/dist/core/Engine.js.map +1 -1
  19. package/dist/core/Engine.sql +8 -0
  20. package/dist/core/ExecutorRegistry.js +2 -2
  21. package/dist/core/ExecutorRegistry.js.map +1 -1
  22. package/dist/core/PacketBuilder.js +11 -11
  23. package/dist/core/PacketBuilder.js.map +1 -1
  24. package/dist/core/ProposalLifecycle.js +1 -1
  25. package/dist/core/ProposalLifecycle.js.map +1 -1
  26. package/dist/core/ProviderInstantiate.d.ts +2 -0
  27. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  28. package/dist/core/ProviderInstantiate.js +36 -1
  29. package/dist/core/ProviderInstantiate.js.map +1 -1
  30. package/dist/core/SchemeRegistry.js +2 -2
  31. package/dist/core/SchemeRegistry.js.map +1 -1
  32. package/dist/core/StrikeRail.d.ts +1 -0
  33. package/dist/core/StrikeRail.d.ts.map +1 -1
  34. package/dist/core/StrikeRail.js +12 -1
  35. package/dist/core/StrikeRail.js.map +1 -1
  36. package/dist/core/fork.js +1 -1
  37. package/dist/core/fork.js.map +1 -1
  38. package/dist/core/fork.sql +2 -2
  39. package/dist/core/git-membership.d.ts.map +1 -1
  40. package/dist/core/git-membership.js +18 -6
  41. package/dist/core/git-membership.js.map +1 -1
  42. package/dist/core/git-state.js +2 -2
  43. package/dist/core/git-state.js.map +1 -1
  44. package/dist/core/packet-inject.js +8 -8
  45. package/dist/core/packet-inject.js.map +1 -1
  46. package/dist/core/packet-wire.js +2 -2
  47. package/dist/core/packet-wire.js.map +1 -1
  48. package/dist/core/run-cap.js +3 -3
  49. package/dist/core/run-cap.js.map +1 -1
  50. package/dist/core/run-ops.sql +1 -1
  51. package/dist/core/session-settings.js +3 -3
  52. package/dist/core/session-settings.js.map +1 -1
  53. package/dist/core/teaching.d.ts.map +1 -1
  54. package/dist/core/teaching.js +2 -2
  55. package/dist/core/teaching.js.map +1 -1
  56. package/dist/digest/Digest.js +2 -2
  57. package/dist/digest/Digest.js.map +1 -1
  58. package/dist/schemes/Plurnk.d.ts.map +1 -1
  59. package/dist/schemes/Plurnk.js +8 -19
  60. package/dist/schemes/Plurnk.js.map +1 -1
  61. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  62. package/dist/schemes/_entry-crud.js +10 -4
  63. package/dist/schemes/_entry-crud.js.map +1 -1
  64. package/dist/schemes/_entry-find.d.ts.map +1 -1
  65. package/dist/schemes/_entry-find.js +3 -0
  66. package/dist/schemes/_entry-find.js.map +1 -1
  67. package/dist/schemes/_entry-manifest.d.ts +7 -0
  68. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  69. package/dist/schemes/_entry-manifest.js +87 -33
  70. package/dist/schemes/_entry-manifest.js.map +1 -1
  71. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  72. package/dist/schemes/_entry-ops.js +4 -0
  73. package/dist/schemes/_entry-ops.js.map +1 -1
  74. package/dist/schemes/_entry-semantic.d.ts +2 -1
  75. package/dist/schemes/_entry-semantic.d.ts.map +1 -1
  76. package/dist/schemes/_entry-semantic.js +32 -13
  77. package/dist/schemes/_entry-semantic.js.map +1 -1
  78. package/dist/schemes/_entry-semantic.sql +15 -0
  79. package/dist/schemes/exec-abort.js +1 -1
  80. package/dist/schemes/exec-abort.js.map +1 -1
  81. package/dist/server/ClientConnection.js +2 -2
  82. package/dist/server/ClientConnection.js.map +1 -1
  83. package/dist/server/Daemon.d.ts.map +1 -1
  84. package/dist/server/Daemon.js +7 -6
  85. package/dist/server/Daemon.js.map +1 -1
  86. package/dist/server/methods/loop_inject.js +3 -3
  87. package/dist/server/methods/loop_inject.js.map +1 -1
  88. package/dist/server/methods/loop_run.js +5 -5
  89. package/dist/server/methods/loop_run.js.map +1 -1
  90. package/dist/server/methods/mcp_install.js +4 -4
  91. package/dist/server/methods/mcp_install.js.map +1 -1
  92. package/dist/server/methods/op_copy.js +1 -1
  93. package/dist/server/methods/op_copy.js.map +1 -1
  94. package/dist/server/methods/op_dispatch.js +1 -1
  95. package/dist/server/methods/op_dispatch.js.map +1 -1
  96. package/dist/server/methods/op_edit.js +1 -1
  97. package/dist/server/methods/op_edit.js.map +1 -1
  98. package/dist/server/methods/op_exec.js +1 -1
  99. package/dist/server/methods/op_exec.js.map +1 -1
  100. package/dist/server/methods/op_move.js +1 -1
  101. package/dist/server/methods/op_move.js.map +1 -1
  102. package/dist/server/methods/session_create.js +1 -1
  103. package/dist/server/methods/session_create.js.map +1 -1
  104. package/dist/server/version-info.js +1 -1
  105. package/dist/server/version-info.js.map +1 -1
  106. package/dist/service.d.ts.map +1 -1
  107. package/dist/service.js +34 -16
  108. package/dist/service.js.map +1 -1
  109. package/migrations/0000-00-00.01_schema.sql +1 -0
  110. package/package.json +19 -16
@@ -103,6 +103,15 @@ class Dispatcher {
103
103
  };
104
104
  }
105
105
  }
106
+ // §fold-open-meta-operations — OPEN/FOLD are render directives, not actions: they change
107
+ // how the world DISPLAYS, never what it is. A successful one leaves NO log row — the next
108
+ // packet's render IS the receipt (the row shows collapsed/expanded), and a curation
109
+ // receipt that itself rents log space made curation self-defeating in the small (the
110
+ // grinder's own mechanical folds were already rowless — one rule for both curators).
111
+ // Failures keep the ordinary op row with their status: errors are signals.
112
+ if ((statement.op === "OPEN" || statement.op === "FOLD") && result.status < 400) {
113
+ return { ...result, rowsWritten: 0 };
114
+ }
106
115
  const logEntryId = await this.#writeLog({ statement, result, runId, loopId, turnId, sequence, origin });
107
116
  onDispatch?.(logEntryId);
108
117
  // Proposal lifecycle (SPEC.md §engine-rails + §methods loop.resolve; §proposal-202-pauses). When a
@@ -649,14 +658,12 @@ class Dispatcher {
649
658
  // Premature terminate (§send-premature-terminate): a terminal SEND[200] is REFUSED 409 — the row
650
659
  // keeps the [200] emission + body (faithful, never erased), the loop never goes terminal. The
651
660
  // decision is the runTurn PRE-DISPATCH snapshot (threaded), so a same-turn fire-and-forget spawn
652
- // isn't miscounted. Two reasons, two terse signals: a live thing the run holds, or a READ
653
- // submitted this turn whose result the model can't have seen (it folds back next turn).
661
+ // isn't miscounted. Runtime-only: a live thing the run holds (a spawned child's status / an open
662
+ // stream), which the parser can never see. Grammar-shape terminals (a SEND after a same-turn
663
+ // READ) are the parser's job to reject (grammar#51), not the engine's.
654
664
  if (status === 200 && prematureRefusal === "live-thing") {
655
665
  return { status: 409, error: "Attempted [200] termination despite active streams or worker runs. You may either hibernate [202] to wait or KILL them before terminating." };
656
666
  }
657
- if (status === 200 && prematureRefusal === "submitted-read") {
658
- return { status: 409, error: "Attempted termination with submitted READ operation(s). SEND[102]; the results arrive next turn." };
659
- }
660
667
  // Groundless hibernation (§send-groundless-hibernate): a SEND[202] alongside a same-turn READ,
661
668
  // with no wake edge — the READ's result folds back on a next turn this park would never reach,
662
669
  // so the model is sleeping on its own unanswered question. Refused 409 on the record, same
@@ -1 +1 @@
1
- {"version":3,"file":"Dispatcher.js","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dispatcher.js","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export default class Engine {
21
21
  period: number;
22
22
  cycles: number;
23
23
  };
24
+ drainDerivations(): Promise<void>;
24
25
  constructor({ db, schemes, mimetypes, streamEventNotify, wakeRunNotify, injectRun, cancelRun, telemetryEventNotify, tokenize }: {
25
26
  db: Db;
26
27
  schemes: SchemeRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAwE,MAAM,wBAAwB,CAAC;AAMpI,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAiB,MAAM,0BAA0B,CAAC;AACpE,OAAO,KAAK,EAAE,EAAE,EAAc,MAAM,SAAS,CAAC;AAO9C,OAAO,KAAK,EAAE,UAAU,EAAuB,MAAM,mBAAmB,CAAC;AACzE,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAelI,OAAsB,EAAE,KAAK,WAAW,EAAwB,MAAM,oBAAoB,CAAC;AAE3F,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEvF,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAmB,MAAM,iBAAiB,CAAC;AAIxF,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AA+BzG,OAAO,KAAK,EAAE,QAAQ,EAAmC,MAAM,0BAA0B,CAAC;AAqC1F,MAAM,CAAC,OAAO,OAAO,MAAM;;IACvB,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,aAAa,CAAC,eAAe,CAAC,GAAG,MAAM;IAInE,MAAM,CAAC,WAAW,CACd,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,EAC9B,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACvB;QAAE,QAAQ,EAAE,KAAK,CAAA;KAAE,GAAG;QAAE,QAAQ,EAAE,IAAI,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;gBA4C/D,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,iBAAiB,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB,EAAE,QAAQ,EAAE,EAAE;QAC5H,EAAE,EAAE,EAAE,CAAC;QACP,OAAO,EAAE,cAAc,CAAC;QACxB,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;QACtC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,SAAS,CAAC,EAAE,eAAe,CAAC;QAC5B,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;QAC5C,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;KACvC;IAsCD,YAAY,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAU/C,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI;IAkCjD,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAgC1L,OAAO,CAAC,EACV,QAAQ,EAAE,QAAQ,EAAE,YAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAC/D,QAAa,EAAE,UAA6B,EAC5C,SAAoE,EACpE,cAAqF,EACrF,MAAgB,EAAE,MAAM,EAAE,UAAU,GACvC,EAAE;QACC,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;QAIxB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QACjD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;KAC7C,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,WAAW,GAAG,kBAAkB,GAAG,iBAAiB,GAAG,cAAc,GAAG,UAAU,GAAG,IAAI,CAAA;KAAE,CAAC;IAiI1K,OAAO,CAAC,EACV,QAAQ,EAAE,QAAQ,EAAE,YAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAgB,EAAE,MAAM,EAAE,UAAU,EACrG,UAAc,EAAE,QAAa,GAChC,EAAE;QACC,QAAQ,EAAE,QAAQ,CAAC;QACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;QACxB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QACjD,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;QAK1C,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,cAAc,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC;IAunB9J,UAAU,IAAI,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAgIhD,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAM3D,IAAI,CAAC,OAAO,EAAE;QAChB,SAAS,EAAE,eAAe,CAAC;QAC3B,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QACjD,MAAM,CAAC,EAAE,UAAU,CAAC;KACvB,GAAG,OAAO,CAAC,cAAc,CAAC;IAM3B,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,IAAI;IAKzE,kBAAkB,IAAI,MAAM,EAAE;IAO9B,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,oBAAoB,KAAK,IAAI,GAAG,IAAI;IAQlE,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYpD,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BxD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAChD;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAC7C;CAqDJ"}
1
+ {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ import Dispatcher from "./Dispatcher.js";
24
24
  const DEFAULT_MAX_STRIKES = 3;
25
25
  const DEFAULT_MAX_COMMANDS = 99;
26
26
  const readMaxStrikes = () => {
27
- const raw = process.env.PLURNK_MAX_STRIKES;
27
+ const raw = process.env.PLURNK_SERVICE_MAX_STRIKES;
28
28
  if (raw === undefined || raw.length === 0)
29
29
  return DEFAULT_MAX_STRIKES;
30
30
  const n = Number.parseInt(raw, 10);
@@ -33,7 +33,7 @@ const readMaxStrikes = () => {
33
33
  return n;
34
34
  };
35
35
  const readMaxCommands = () => {
36
- const raw = process.env.PLURNK_MAX_COMMANDS;
36
+ const raw = process.env.PLURNK_SERVICE_MAX_COMMANDS;
37
37
  if (raw === undefined || raw.length === 0)
38
38
  return DEFAULT_MAX_COMMANDS;
39
39
  const n = Number.parseInt(raw, 10);
@@ -41,11 +41,11 @@ const readMaxCommands = () => {
41
41
  return DEFAULT_MAX_COMMANDS;
42
42
  return n;
43
43
  };
44
- // PLURNK_FILES_ITEMS — the turn-0 manifest preview. null = off (no foist);
44
+ // PLURNK_SERVICE_FILES_ITEMS — the turn-0 manifest preview. null = off (no foist);
45
45
  // -1 = the full manifest; positive N = the first N items. 0 / unset = off.
46
46
  const normalizeFilesItems = (n) => (!Number.isFinite(n) || n === 0 ? null : n < 0 ? -1 : n);
47
47
  const readFilesItems = () => {
48
- const raw = process.env.PLURNK_FILES_ITEMS;
48
+ const raw = process.env.PLURNK_SERVICE_FILES_ITEMS;
49
49
  if (raw === undefined || raw.length === 0)
50
50
  return null;
51
51
  return normalizeFilesItems(Number.parseInt(raw, 10));
@@ -69,9 +69,9 @@ const readPositiveInt = (envVar, fallback) => {
69
69
  return fallback;
70
70
  return n;
71
71
  };
72
- // §operator-config-loop-timeout — the loop's wall-clock budget (PLURNK_LOOP_TIMEOUT).
72
+ // §operator-config-loop-timeout — the loop's wall-clock budget (PLURNK_SERVICE_LOOP_TIMEOUT).
73
73
  const DEFAULT_LOOP_TIMEOUT_MS = 86400000;
74
- const readLoopTimeoutMs = () => readPositiveInt("PLURNK_LOOP_TIMEOUT", DEFAULT_LOOP_TIMEOUT_MS);
74
+ const readLoopTimeoutMs = () => readPositiveInt("PLURNK_SERVICE_LOOP_TIMEOUT", DEFAULT_LOOP_TIMEOUT_MS);
75
75
  // The wall's abort reason — runLoop branches a mid-turn teardown to the 504 terminal on it.
76
76
  const LOOP_TIMEOUT_REASON = "loop_timeout";
77
77
  export default class Engine {
@@ -112,6 +112,24 @@ export default class Engine {
112
112
  // only tightens. A chars/4 heuristic ruler undercounts escaped-JSON logs ~1.5×; calibrating
113
113
  // against the provider's own count makes a real context overflow unreachable past turn 1.
114
114
  #tokenRatios = new Map();
115
+ // §derivation-off-hot-path — the background derivation chain: the per-turn pump and the
116
+ // session warm ride it instead of the turn (a 2-CPU container CPU-embedding a 335-entry
117
+ // ingest starved every loop for ~28min, #316). Serialized (never two pumps interleaved),
118
+ // drained at daemon stop (never racing db close), failures logged (never swallowed).
119
+ // A turn never waits on an embedding; a ~query warms its own candidate slice inline
120
+ // (§semantic-cold-query-full-fidelity), so cold sessions still get full-fidelity search.
121
+ #derivationChain = Promise.resolve();
122
+ #queueDerivation(job) {
123
+ const run = this.#derivationChain.then(job).catch((err) => {
124
+ process.stderr.write(`plurnk-engine: background derivation failed: ${err instanceof Error ? err.message : String(err)}\n`);
125
+ });
126
+ this.#derivationChain = run;
127
+ return run;
128
+ }
129
+ // Awaited by Daemon.stop before the db closes.
130
+ async drainDerivations() {
131
+ await this.#derivationChain;
132
+ }
115
133
  #streamEventNotify;
116
134
  #wakeRunNotify;
117
135
  // Cached plurnk GBNF — read once on the first constrained generate (#189).
@@ -231,7 +249,7 @@ export default class Engine {
231
249
  }
232
250
  return { line, column };
233
251
  }
234
- async runLoop({ provider, messages, requirements = "", sessionId, runId, loopId, maxTurns = 50, maxStrikes = readMaxStrikes(), minCycles = readPositiveInt("PLURNK_MIN_CYCLES", DEFAULT_MIN_CYCLES), maxCyclePeriod = readPositiveInt("PLURNK_MAX_CYCLE_PERIOD", DEFAULT_MAX_CYCLE_PERIOD), origin = "model", signal, onDispatch, }) {
252
+ async runLoop({ provider, messages, requirements = "", sessionId, runId, loopId, maxTurns = 50, maxStrikes = readMaxStrikes(), minCycles = readPositiveInt("PLURNK_SERVICE_MIN_CYCLES", DEFAULT_MIN_CYCLES), maxCyclePeriod = readPositiveInt("PLURNK_SERVICE_MAX_CYCLE_PERIOD", DEFAULT_MAX_CYCLE_PERIOD), origin = "model", signal, onDispatch, }) {
235
253
  const turnIds = [];
236
254
  const suddenDeathThreshold = maxTurns - maxStrikes;
237
255
  // Per-loop AbortController for scheme-side cancellation propagation.
@@ -281,6 +299,16 @@ export default class Engine {
281
299
  const row = await this.#db.engine_loop_status.get({ loop_id: loopId });
282
300
  if (row === undefined)
283
301
  throw new Error(`Engine.runLoop: loop ${loopId} not found`);
302
+ if (row.status === 100) {
303
+ // NOT a terminal — a wake re-queued this loop while its own live drain was
304
+ // between turns (a child concluded in the gap between our 202 write and this
305
+ // check, §run-lifecycle-wake-requeue-not-terminal). The wake's intent is KEEP
306
+ // RUNNING: re-claim atomically and continue — the injected prompt is already
307
+ // this loop's next turn. Returning it as "external" broadcast a QUEUED loop
308
+ // as loop/terminated {finalStatus: 100} — the delegation-flags flake.
309
+ await this.#db.engine_reclaim_queued_loop.run({ loop_id: loopId });
310
+ continue; // claimed (or a racer flipped it first — the re-read decides)
311
+ }
284
312
  if (row.status !== 102) {
285
313
  // Only 202 (Accepted) lets spawns outlive — it IS the async wake
286
314
  // contract (E.4). Every other terminal, 200 included, reaps: "done"
@@ -295,11 +323,11 @@ export default class Engine {
295
323
  cleanup("forceful", "max_turns");
296
324
  return { turnIds, finalStatus: 429, hitMaxTurns: true, reason: "max_turns" };
297
325
  }
298
- // PLURNK_EXEC_WAIT_MS — a post-EXEC breath: if a spawn from the prior turn
326
+ // PLURNK_SERVICE_EXEC_WAIT_MS — a post-EXEC breath: if a spawn from the prior turn
299
327
  // is still in flight, give it a tunable beat to land in THIS turn's packet
300
328
  // before we assemble it. A fixed grace beat, never a wait-for-completion;
301
329
  // 0/unset = off. Abortable with the loop signal.
302
- const execWaitMs = Number(process.env.PLURNK_EXEC_WAIT_MS ?? "0");
330
+ const execWaitMs = Number(process.env.PLURNK_SERVICE_EXEC_WAIT_MS ?? "0");
303
331
  if (execWaitMs > 0) {
304
332
  const execHandler = this.#schemes.get("exec");
305
333
  if (execHandler?.hasActiveSpawns?.(runId) === true)
@@ -401,12 +429,12 @@ export default class Engine {
401
429
  if (seq === 1) {
402
430
  if (runFirstLoop)
403
431
  nextActionIndex = 2; // reserve sequence 1 for the turn-0 echo
404
- // Operator doc READs (PLURNK_MD_<ALIAS>, §actor-boundary-doc-injection). The docs were materialized
432
+ // Operator doc READs (PLURNK_SERVICE_MD_<ALIAS>, §actor-boundary-doc-injection). The docs were materialized
405
433
  // as plurnk:///<entry> entries by the plurnk run (loop_run, via the
406
434
  // §actor-boundary keystone); foist a READ of each into THIS turn-0 so the model
407
435
  // reads them inline. It sees only the READ — the materializing EDIT
408
436
  // lives in the plurnk run's log, never the model's.
409
- // #231 — env docs (PLURNK_MD_*) UNION the session's client docs; foist a READ of
437
+ // #231 — env docs (PLURNK_SERVICE_MD_*) UNION the session's client docs; foist a READ of
410
438
  // each materialized plurnk:///<alias>.md (loop_run materialized the same set).
411
439
  const { mdDocs } = await SessionSettings.read(this.#db, sessionId);
412
440
  // #269 — operator docs are run-once; foist them only on the run's first loop.
@@ -478,8 +506,8 @@ export default class Engine {
478
506
  // this turn's packet reflects them.
479
507
  const fsDivergences = await GitMembership.indexGitMembership(systemCtx);
480
508
  await this.#logFsFictions(sessionId, fsDivergences);
481
- await EntryManifest.maintainDerivations(systemCtx);
482
- // Turn-0 catalog preview (PLURNK_FILES_ITEMS, §actor-boundary-manifest-preview):
509
+ this.#queueDerivation(() => EntryManifest.maintainDerivations(systemCtx)); // §derivation-off-hot-path — the turn proceeds; ~queries warm their own slice
510
+ // Turn-0 catalog preview (PLURNK_SERVICE_FILES_ITEMS, §actor-boundary-manifest-preview):
483
511
  // one FIND(scheme:///**) per scheme that holds entries, foisted into the run's first
484
512
  // model turn so it opens with its catalog (the per-scheme arrays that replaced the
485
513
  // single manifest.json). -1 → each scheme's whole catalog; N → its first N rows
@@ -509,7 +537,7 @@ export default class Engine {
509
537
  // the model orients on IS the docs; doc links are no longer rendered inline (#270).
510
538
  const isPlurnk = schemeName === "plurnk";
511
539
  const isFile = schemeName === "file";
512
- // Only the FILE list is cappable (PLURNK_FILES_ITEMS first-N): the tracked-file
540
+ // Only the FILE list is cappable (PLURNK_SERVICE_FILES_ITEMS first-N): the tracked-file
513
541
  // tree is external and arbitrarily large. Every other scheme — known/unknown
514
542
  // (memory), run (scratch), plurnk (docs) — foists FULL, never truncated: a partial
515
543
  // view of the model's own memory reads as withheld. file at -1, or any non-file
@@ -635,7 +663,7 @@ export default class Engine {
635
663
  const hardPacket = this.#packets.completePacket(requestPacket, { content: "", ops: [], reasoning: null }, null, provider);
636
664
  await this.#db.engine_close_turn.run({
637
665
  id: turnId, status: 413, packet: JSON.stringify(hardPacket),
638
- usage_prompt: 0, usage_completion: 0, usage_cached: 0, usage_cost_pico: 0,
666
+ usage_prompt: 0, usage_completion: 0, usage_reasoning: 0, usage_cached: 0, usage_cost_pico: 0,
639
667
  usage_context_size: provider.contextSize, // #274 — the model's window, even on a hard-413 turn
640
668
  finish_reason: "budget_hard_stop", model: provider.model, meta: "{}",
641
669
  });
@@ -670,32 +698,25 @@ export default class Engine {
670
698
  // generate rides the LOOP signal (already chained from the caller's), so a loop-level
671
699
  // abort — the §operator-config-loop-timeout wall — cancels a stuck provider call, not
672
700
  // just the schemes. Bare runTurn (no runLoop) has no loop entry → the caller's signal.
673
- response = await provider.generate({ messages: modelMessages, runId: String(runId), signal: this.#loopAborts.get(loopId)?.signal ?? signal, grammar: await this.#grammarConstraint(), maxTokens: this.#packets.decodeBudget(), attributions: attributions.length > 0 ? attributions : undefined, client: client ?? undefined }); // §provider-surface-generate §provider-guarantees-single-call §provider-guarantees-signal-wired §attribution-plurnk-namespace-reserved §client-telemetry
701
+ response = await provider.generate({ messages: modelMessages, runId: String(runId), signal: this.#loopAborts.get(loopId)?.signal ?? signal, grammar: await this.#grammarConstraint(), maxTokens: this.#packets.decodeBudget(), strikes: this.#strikes.streak(loopId), attributions: attributions.length > 0 ? attributions : undefined, client: client ?? undefined }); // strikes: first-party routing signal, 0 sent explicitly (#313) // §provider-surface-generate §provider-guarantees-single-call §provider-guarantees-signal-wired §attribution-plurnk-namespace-reserved §client-telemetry
674
702
  if (!signal?.aborted)
675
703
  this.#telemetry.push(sessionId, loopId, { source: "engine:turn", kind: "turn_generated", level: "info", message: "parsing model response" });
676
704
  }
677
705
  catch (err) {
678
- // Every provider error surfaces as telemetry (the client/model sees the cause). #256:
679
- // grammar_unenforced is the one the MODEL can recover from the backend didn't
680
- // constrain the GBNF, so this turn was rejected but a conforming emission next turn is
681
- // accepted: fall through as an empty no-op turn so the strike rail retries. Every other
682
- // kind (rate_limit, network_failure, unauthorized, …) is terminal telemetry'd, then
683
- // propagated to end the loop (rather than only the opaque loop.run rejection).
684
- // NOTE (providers 0.19.0 / #275): only the CONSTRAINED path still throws grammar_unenforced.
685
- // In GBNF-filter mode the provider returns the bytes with a grammar_unenforced telemetry
686
- // event insteadrecovered on the success path below (response.telemetry), no empty turn.
706
+ // §turn-never-blank a ProviderError is an INFRASTRUCTURE failure (auth, network
707
+ // beyond retries, rate limit): no completed exchange exists, so no turn exists
708
+ // telemetry the cause and DIE legibly (the drain writes the loop terminal 500 with
709
+ // the message). Grammar conformance never arrives here: providers 0.32 retired the
710
+ // constrained-path throw a completed exchange ALWAYS returns, bytes in assistant,
711
+ // the conformance verdict riding response.telemetry as an OBSERVATION (the engine's
712
+ // ANTLR parse is the judge; the provider transports and observes, never adjudicates).
713
+ // The old fallback fabricated an empty emission here and laundered a provider
714
+ // adjudication into a model-behavior 422 a state the system otherwise forbids,
715
+ // a record that lied, and days of forensics pointed at the wrong suspect.
687
716
  if (err instanceof ProviderError) {
688
717
  this.#telemetry.push(sessionId, loopId, { source: "provider", kind: err.kind, message: err.message, level: "error" });
689
- if (err.kind !== "grammar_unenforced")
690
- throw err;
691
- response = {
692
- assistant: { content: "", reasoning: null, usage: { prompt: requestPacket.tokens, completion: 0, reasoning: 0, cached: 0, total: requestPacket.tokens }, finishReason: null, model: provider.model },
693
- assistantRaw: null,
694
- };
695
- }
696
- else {
697
- throw err;
698
718
  }
719
+ throw err;
699
720
  }
700
721
  // Engine splits wire-level response: emission (content, reasoning,
701
722
  // parsed ops) → packet.assistant per Packet.json §assistant;
@@ -732,15 +753,12 @@ export default class Engine {
732
753
  // mode the provider no longer THROWS grammar_unenforced — it returns the model's bytes
733
754
  // (here, packetAssistant.content) and attaches the conflict as a telemetry event carrying
734
755
  // the divergence code-point position. Forward each event with a content-offset `line:col`;
735
- // the model resolves it against its own emission — the born-OPEN `model` row (§model-entry),
736
- // not an embedded snippet that would duplicate the emission.
737
- let hadContentOffsetNotice = false;
756
+ // the model resolves it against its own emission — READ the folded `model` mirror row at the
757
+ // cited lines (§model-entry) — not an embedded snippet that would duplicate the emission.
738
758
  for (const event of response.telemetry ?? []) {
739
759
  const located = typeof event.position === "number"
740
760
  ? this.#offsetToLineColumn(packetAssistant.content, event.position)
741
761
  : null;
742
- if (located !== null)
743
- hadContentOffsetNotice = true;
744
762
  this.#telemetry.push(sessionId, loopId, {
745
763
  source: event.source,
746
764
  kind: event.kind,
@@ -772,23 +790,19 @@ export default class Engine {
772
790
  // faithfully (no erasure to 102) and auto-surfaces (status≥400); the loop never goes terminal.
773
791
  // Here we only flag it so the turn stays a continue and the strike couples to the grinder
774
792
  // (steerStruck → turnErrors): a model that won't stop premature-200ing escalates out via the rails.
775
- // A terminal SEND[200] is premature when the run still holds a live thing (open stream/spawn or
776
- // a non-terminal child), OR when the model submitted a READ THIS turn whose result it cannot have
777
- // seen results fold back on the NEXT turn, so terminating now means terminating on data it
778
- // doesn't have (the classic "READ + SEND[200] in one turn" that ends mid-sentence). Both refuse
779
- // 409 + strike; live-thing takes precedence when both hold.
793
+ // Live-thing is RUNTIME state a spawned child's status, an open stream — that the parser can
794
+ // never see, so the engine is the only judge. The grammar-rule shapes (a terminal SEND after a
795
+ // same-turn READ) belong in the parser, not here (grammar#51).
780
796
  let prematureReason;
781
797
  if (sendOp?.signal === 200) {
782
- prematureReason = (await this.#runHoldsLiveThing(runId)) ? "live-thing"
783
- : packetAssistant.ops.some((op) => op.op === "READ") ? "submitted-read"
784
- : undefined;
798
+ prematureReason = (await this.#runHoldsLiveThing(runId)) ? "live-thing" : undefined;
785
799
  }
786
800
  else if (sendOp?.signal === 202) {
787
801
  // §send-groundless-hibernate — a park is refused only when it ORPHANS work: the turn
788
802
  // submitted a READ (its result folds back on a next turn this park may never have) AND no
789
803
  // wake edge exists — nothing held (the pre-dispatch snapshot) and nothing wake-capable
790
- // opened this turn (a spawn takes effect mid-turn, after the snapshot the same
791
- // emission-scan shape as submitted-read). A bare park holding nothing stays LEGAL — the
804
+ // opened this turn (a spawn takes effect mid-turn, after the snapshot). Whether a wake edge
805
+ // exists is RUNTIME state, so this adjudication stays engine-side. A bare park holding nothing stays LEGAL — the
792
806
  // voice door: a sibling irc / operator inject wakes it (§actor-boundary-passive-wake) and
793
807
  // the daemon surfaces it as loop/quiesced (§run-lifecycle-quiesced), so it is never refused.
794
808
  if (packetAssistant.ops.some((op) => op.op === "READ")) {
@@ -827,6 +841,7 @@ export default class Engine {
827
841
  packet: JSON.stringify(packet),
828
842
  usage_prompt: usage.prompt,
829
843
  usage_completion: usage.completion,
844
+ usage_reasoning: usage.reasoning,
830
845
  usage_cached: usage.cached,
831
846
  usage_cost_pico: provider.costFor(usage), // §provider-surface-costfor
832
847
  usage_context_size: provider.contextSize, // #274 — the running model's window (gauge denominator)
@@ -882,7 +897,7 @@ export default class Engine {
882
897
  for (const kind of pendingEngineErrors)
883
898
  await this.#telemetry.mintEngineError(kind, { runId, loopId, turnId, sequence: errSeq++ });
884
899
  // Parse errors carry the parser message + a content-offset line:col (a ContentOffset position),
885
- // resolved against the model's born-OPEN emission (§model-entry) — origin 'model', not engine.
900
+ // resolved against the model's folded mirror row (§model-entry) — origin 'model', not engine.
886
901
  for (const { message, line, column, source } of parseErrors ?? []) {
887
902
  await this.#db.engine_insert_log_entry.get({
888
903
  run_id: runId, loop_id: loopId, turn_id: turnId, sequence: errSeq++,
@@ -890,8 +905,8 @@ export default class Engine {
890
905
  scheme: null, username: null, password: null, hostname: null, port: null,
891
906
  pathname: null, params: null, fragment: null, lineMarker: null,
892
907
  tx: "", mimetype_tx: "text/plain",
893
- // The error carries the parser message + a content-offset `line:col`; the model resolves
894
- // it against its own born-OPEN emission (the `model` row, §model-entry), so no snippet is
908
+ // The error carries the parser message + a content-offset `line:col`; the model READs
909
+ // its own folded mirror row (§model-entry) at the cited lines, so no snippet is
895
910
  // embedded. The derived errors-section pointer stays minimal (status + coordinate).
896
911
  rx: JSON.stringify({ message, position: { type: "content-offset", line, column }, parserSource: source }),
897
912
  mimetype_rx: "application/json",
@@ -899,14 +914,15 @@ export default class Engine {
899
914
  });
900
915
  }
901
916
  // §model-entry — mirror this turn's verbatim emission back as a `model` row, so the NEXT
902
- // packet shows the model exactly what it last produced. Born OPEN when the turn carried an
903
- // emission-level error the model must resolve against its own bytes — a parse error or a
904
- // content-offset NOTICE (grammar_unenforced) both report a line the model reads off this
905
- // row. Folded otherwise (budget-neutral until the model OPENs it). Empty emissions (a
906
- // struck/silent turn) write nothing no prior output to mirror.
917
+ // packet shows the model exactly what it last produced. ALWAYS born FOLDED the old
918
+ // born-OPEN-on-error auto-trigger was conditional helpfulness that bred its own hazards
919
+ // (a 24k-char ramble mirrored open re-injects itself into the next packet: cost,
920
+ // contamination, pressure feedback). An error's line:col resolves the same way anything
921
+ // else does: the model that cares READs the folded row at the lines it wants — and can
922
+ // introspect any prior emission of its own the same way. Empty emissions (a struck/
923
+ // silent turn) write nothing — no prior output to mirror.
907
924
  if (packetAssistant.content.trim().length > 0) {
908
- const hadEmissionError = (parseErrors?.length ?? 0) > 0 || hadContentOffsetNotice;
909
- await this.#dispatcher.writeModelEntry({ verbatim: packetAssistant.content, runId, loopId, turnId, sequence: errSeq++, folded: !hadEmissionError });
925
+ await this.#dispatcher.writeModelEntry({ verbatim: packetAssistant.content, runId, loopId, turnId, sequence: errSeq++, folded: true });
910
926
  }
911
927
  // Zero ops is NOT an error to report — the model knows it emitted
912
928
  // nothing. Strike accounting (engine-internal) treats it as a
@@ -1149,7 +1165,7 @@ export default class Engine {
1149
1165
  defaultChannelFor: (s) => this.#schemes.defaultChannelFor(s),
1150
1166
  pushTelemetry: (event) => this.#telemetry.notify(sessionId, 0, event),
1151
1167
  };
1152
- await EntryManifest.maintainDerivations(ctx);
1168
+ await this.#queueDerivation(() => EntryManifest.maintainDerivations(ctx)); // §derivation-off-hot-path
1153
1169
  }
1154
1170
  // Inject a prompt into the run's currently-executing loop. Writes a
1155
1171
  // plurnk:///prompt/<loop_id>/<next-turn> entry whose body becomes the