@plurnk/plurnk-service 1.26.0 → 1.28.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 (293) hide show
  1. package/.env.defaults +16 -25
  2. package/SPEC.md +338 -263
  3. package/dist/build-info.json +1 -1
  4. package/dist/content/body-preview.d.ts +1 -0
  5. package/dist/content/body-preview.d.ts.map +1 -1
  6. package/dist/content/body-preview.js +7 -0
  7. package/dist/content/body-preview.js.map +1 -1
  8. package/dist/content/byte-view.d.ts +19 -2
  9. package/dist/content/byte-view.d.ts.map +1 -1
  10. package/dist/content/byte-view.js +67 -14
  11. package/dist/content/byte-view.js.map +1 -1
  12. package/dist/content/edit-receipt.js +1 -1
  13. package/dist/content/edit-receipt.js.map +1 -1
  14. package/dist/content/line-marker.d.ts +1 -0
  15. package/dist/content/line-marker.d.ts.map +1 -1
  16. package/dist/content/line-marker.js +6 -1
  17. package/dist/content/line-marker.js.map +1 -1
  18. package/dist/content/line-selection.d.ts +3 -1
  19. package/dist/content/line-selection.d.ts.map +1 -1
  20. package/dist/content/line-selection.js +27 -3
  21. package/dist/content/line-selection.js.map +1 -1
  22. package/dist/content/matcher.d.ts +9 -14
  23. package/dist/content/matcher.d.ts.map +1 -1
  24. package/dist/content/matcher.js +51 -45
  25. package/dist/content/matcher.js.map +1 -1
  26. package/dist/content/pattern-edits.d.ts +7 -26
  27. package/dist/content/pattern-edits.d.ts.map +1 -1
  28. package/dist/content/pattern-edits.js +54 -91
  29. package/dist/content/pattern-edits.js.map +1 -1
  30. package/dist/content/read-projector.d.ts +2 -1
  31. package/dist/content/read-projector.d.ts.map +1 -1
  32. package/dist/content/read-projector.js +42 -10
  33. package/dist/content/read-projector.js.map +1 -1
  34. package/dist/content/read-resolve.d.ts.map +1 -1
  35. package/dist/content/read-resolve.js +7 -4
  36. package/dist/content/read-resolve.js.map +1 -1
  37. package/dist/core/AdmittedTurnExecutor.d.ts +3 -1
  38. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  39. package/dist/core/AdmittedTurnExecutor.js +22 -7
  40. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  41. package/dist/core/BudgetReadout.d.ts +4 -4
  42. package/dist/core/BudgetReadout.d.ts.map +1 -1
  43. package/dist/core/BudgetReadout.js +26 -41
  44. package/dist/core/BudgetReadout.js.map +1 -1
  45. package/dist/core/ChannelWrite.d.ts +2 -3
  46. package/dist/core/ChannelWrite.d.ts.map +1 -1
  47. package/dist/core/ChannelWrite.js +21 -22
  48. package/dist/core/ChannelWrite.js.map +1 -1
  49. package/dist/core/ChannelWrite.sql +26 -0
  50. package/dist/core/ContextFit.d.ts +26 -0
  51. package/dist/core/ContextFit.d.ts.map +1 -0
  52. package/dist/core/ContextFit.js +56 -0
  53. package/dist/core/ContextFit.js.map +1 -0
  54. package/dist/core/DataStatementRunner.d.ts.map +1 -1
  55. package/dist/core/DataStatementRunner.js +1 -0
  56. package/dist/core/DataStatementRunner.js.map +1 -1
  57. package/dist/core/Dispatcher.d.ts +15 -2
  58. package/dist/core/Dispatcher.d.ts.map +1 -1
  59. package/dist/core/Dispatcher.js +148 -16
  60. package/dist/core/Dispatcher.js.map +1 -1
  61. package/dist/core/EditMutations.d.ts +5 -5
  62. package/dist/core/EditMutations.d.ts.map +1 -1
  63. package/dist/core/EditMutations.js +44 -50
  64. package/dist/core/EditMutations.js.map +1 -1
  65. package/dist/core/EditSequence.js +2 -2
  66. package/dist/core/EditSequence.js.map +1 -1
  67. package/dist/core/EmissionHead.d.ts +8 -0
  68. package/dist/core/EmissionHead.d.ts.map +1 -0
  69. package/dist/core/EmissionHead.js +29 -0
  70. package/dist/core/EmissionHead.js.map +1 -0
  71. package/dist/core/Engine.d.ts +1 -0
  72. package/dist/core/Engine.d.ts.map +1 -1
  73. package/dist/core/Engine.js +3 -0
  74. package/dist/core/Engine.js.map +1 -1
  75. package/dist/core/InferenceCall.js +2 -2
  76. package/dist/core/InferenceCall.js.map +1 -1
  77. package/dist/core/InferenceCall.sql +1 -0
  78. package/dist/core/LiveSubscription.d.ts +20 -0
  79. package/dist/core/LiveSubscription.d.ts.map +1 -0
  80. package/dist/core/LiveSubscription.js +68 -0
  81. package/dist/core/LiveSubscription.js.map +1 -0
  82. package/dist/core/LiveSubscriptions.d.ts +1 -0
  83. package/dist/core/LiveSubscriptions.d.ts.map +1 -1
  84. package/dist/core/LiveSubscriptions.js +8 -0
  85. package/dist/core/LiveSubscriptions.js.map +1 -1
  86. package/dist/core/LogBody.js +1 -1
  87. package/dist/core/LogBody.js.map +1 -1
  88. package/dist/core/LogEntryProjection.d.ts +1 -0
  89. package/dist/core/LogEntryProjection.d.ts.map +1 -1
  90. package/dist/core/LogEntryProjection.js +9 -0
  91. package/dist/core/LogEntryProjection.js.map +1 -1
  92. package/dist/core/LogWriter.d.ts +42 -0
  93. package/dist/core/LogWriter.d.ts.map +1 -1
  94. package/dist/core/LogWriter.js +11 -5
  95. package/dist/core/LogWriter.js.map +1 -1
  96. package/dist/core/LoopDriver.js +2 -1
  97. package/dist/core/LoopDriver.js.map +1 -1
  98. package/dist/core/LoopLifecycle.d.ts +2 -2
  99. package/dist/core/LoopLifecycle.d.ts.map +1 -1
  100. package/dist/core/LoopLifecycle.js +2 -4
  101. package/dist/core/LoopLifecycle.js.map +1 -1
  102. package/dist/core/LoopLifecycle.sql +1 -6
  103. package/dist/core/MutationEffects.d.ts +1 -3
  104. package/dist/core/MutationEffects.d.ts.map +1 -1
  105. package/dist/core/MutationEffects.js +2 -1
  106. package/dist/core/MutationEffects.js.map +1 -1
  107. package/dist/core/PacketBuilder.d.ts +17 -4
  108. package/dist/core/PacketBuilder.d.ts.map +1 -1
  109. package/dist/core/PacketBuilder.js +80 -120
  110. package/dist/core/PacketBuilder.js.map +1 -1
  111. package/dist/core/PacketBuilder.sql +4 -12
  112. package/dist/core/PatternSelection.d.ts +5 -10
  113. package/dist/core/PatternSelection.d.ts.map +1 -1
  114. package/dist/core/PatternSelection.js +9 -16
  115. package/dist/core/PatternSelection.js.map +1 -1
  116. package/dist/core/ResourceMutations.d.ts +2 -4
  117. package/dist/core/ResourceMutations.d.ts.map +1 -1
  118. package/dist/core/ResourceMutations.js +2 -5
  119. package/dist/core/ResourceMutations.js.map +1 -1
  120. package/dist/core/ResourceSelector.d.ts +2 -2
  121. package/dist/core/ResourceSelector.d.ts.map +1 -1
  122. package/dist/core/ResourceSelector.js +64 -33
  123. package/dist/core/ResourceSelector.js.map +1 -1
  124. package/dist/core/ResourceTransfers.d.ts +2 -4
  125. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  126. package/dist/core/ResourceTransfers.js +74 -50
  127. package/dist/core/ResourceTransfers.js.map +1 -1
  128. package/dist/core/SchemeRegistry.d.ts +1 -0
  129. package/dist/core/SchemeRegistry.d.ts.map +1 -1
  130. package/dist/core/SchemeRegistry.js +11 -9
  131. package/dist/core/SchemeRegistry.js.map +1 -1
  132. package/dist/core/ServiceTeardown.d.ts +3 -2
  133. package/dist/core/ServiceTeardown.d.ts.map +1 -1
  134. package/dist/core/ServiceTeardown.js +17 -8
  135. package/dist/core/ServiceTeardown.js.map +1 -1
  136. package/dist/core/StopDeadline.d.ts +5 -0
  137. package/dist/core/StopDeadline.d.ts.map +1 -0
  138. package/dist/core/StopDeadline.js +20 -0
  139. package/dist/core/StopDeadline.js.map +1 -0
  140. package/dist/core/StrikeRail.d.ts.map +1 -1
  141. package/dist/core/StrikeRail.js +5 -1
  142. package/dist/core/StrikeRail.js.map +1 -1
  143. package/dist/core/ToolResources.d.ts.map +1 -1
  144. package/dist/core/ToolResources.js +11 -2
  145. package/dist/core/ToolResources.js.map +1 -1
  146. package/dist/core/TurnDispositionHandler.d.ts +4 -2
  147. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  148. package/dist/core/TurnDispositionHandler.js +24 -6
  149. package/dist/core/TurnDispositionHandler.js.map +1 -1
  150. package/dist/core/TurnMaterialization.d.ts +6 -2
  151. package/dist/core/TurnMaterialization.d.ts.map +1 -1
  152. package/dist/core/TurnMaterialization.js +64 -16
  153. package/dist/core/TurnMaterialization.js.map +1 -1
  154. package/dist/core/TurnOps.js +7 -7
  155. package/dist/core/TurnOps.js.map +1 -1
  156. package/dist/core/TurnRunner.d.ts +1 -0
  157. package/dist/core/TurnRunner.d.ts.map +1 -1
  158. package/dist/core/TurnRunner.js +155 -160
  159. package/dist/core/TurnRunner.js.map +1 -1
  160. package/dist/core/TurnRunner.sql +2 -2
  161. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  162. package/dist/core/caps/DbSubscriptionCaps.js +13 -19
  163. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  164. package/dist/core/content-hash.d.ts +1 -1
  165. package/dist/core/content-hash.d.ts.map +1 -1
  166. package/dist/core/content-hash.js.map +1 -1
  167. package/dist/core/env-catalog.js +2 -2
  168. package/dist/core/env-catalog.js.map +1 -1
  169. package/dist/core/fork.sql +4 -10
  170. package/dist/core/git-env.d.ts +1 -1
  171. package/dist/core/git-env.d.ts.map +1 -1
  172. package/dist/core/git-env.js +19 -12
  173. package/dist/core/git-env.js.map +1 -1
  174. package/dist/core/git-membership.d.ts.map +1 -1
  175. package/dist/core/git-membership.js +11 -5
  176. package/dist/core/git-membership.js.map +1 -1
  177. package/dist/core/git-state.js +1 -1
  178. package/dist/core/git-state.js.map +1 -1
  179. package/dist/core/mutation-types.d.ts +6 -4
  180. package/dist/core/mutation-types.d.ts.map +1 -1
  181. package/dist/core/operation-target-groups.d.ts +1 -1
  182. package/dist/core/operation-target-groups.d.ts.map +1 -1
  183. package/dist/core/operation-target-groups.js +27 -5
  184. package/dist/core/operation-target-groups.js.map +1 -1
  185. package/dist/core/packet-wire.d.ts +80 -10
  186. package/dist/core/packet-wire.d.ts.map +1 -1
  187. package/dist/core/packet-wire.js +211 -227
  188. package/dist/core/packet-wire.js.map +1 -1
  189. package/dist/core/provider-accounting.d.ts +1 -1
  190. package/dist/core/provider-accounting.d.ts.map +1 -1
  191. package/dist/core/provider-accounting.js +2 -1
  192. package/dist/core/provider-accounting.js.map +1 -1
  193. package/dist/digest/Digest.d.ts.map +1 -1
  194. package/dist/digest/Digest.js +3 -2
  195. package/dist/digest/Digest.js.map +1 -1
  196. package/dist/digest/DigestEvidence.d.ts +1 -0
  197. package/dist/digest/DigestEvidence.d.ts.map +1 -1
  198. package/dist/digest/DigestEvidence.js +6 -0
  199. package/dist/digest/DigestEvidence.js.map +1 -1
  200. package/dist/digest/DigestRender.d.ts +1 -0
  201. package/dist/digest/DigestRender.d.ts.map +1 -1
  202. package/dist/digest/DigestRender.js +107 -48
  203. package/dist/digest/DigestRender.js.map +1 -1
  204. package/dist/digest/DigestRequiem.js +4 -4
  205. package/dist/digest/DigestRequiem.js.map +1 -1
  206. package/dist/digest/digest-rows.d.ts +8 -0
  207. package/dist/digest/digest-rows.d.ts.map +1 -1
  208. package/dist/digest/digest-rows.js.map +1 -1
  209. package/dist/digest/digest.sql +20 -2
  210. package/dist/schemes/Exec.d.ts.map +1 -1
  211. package/dist/schemes/Exec.js +28 -27
  212. package/dist/schemes/Exec.js.map +1 -1
  213. package/dist/schemes/File.d.ts.map +1 -1
  214. package/dist/schemes/File.js +1 -2
  215. package/dist/schemes/File.js.map +1 -1
  216. package/dist/schemes/Log.d.ts.map +1 -1
  217. package/dist/schemes/Log.js +4 -17
  218. package/dist/schemes/Log.js.map +1 -1
  219. package/dist/schemes/TurnSource.js +2 -2
  220. package/dist/schemes/TurnSource.js.map +1 -1
  221. package/dist/schemes/_derivation-use.d.ts +7 -0
  222. package/dist/schemes/_derivation-use.d.ts.map +1 -0
  223. package/dist/schemes/_derivation-use.js +40 -0
  224. package/dist/schemes/_derivation-use.js.map +1 -0
  225. package/dist/schemes/_entry-crud.d.ts +6 -1
  226. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  227. package/dist/schemes/_entry-crud.js.map +1 -1
  228. package/dist/schemes/_entry-find.d.ts.map +1 -1
  229. package/dist/schemes/_entry-find.js +15 -49
  230. package/dist/schemes/_entry-find.js.map +1 -1
  231. package/dist/schemes/_entry-find.sql +0 -11
  232. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  233. package/dist/schemes/_entry-fts.js +9 -3
  234. package/dist/schemes/_entry-fts.js.map +1 -1
  235. package/dist/schemes/_entry-fts.sql +14 -8
  236. package/dist/schemes/_entry-graph.d.ts +5 -8
  237. package/dist/schemes/_entry-graph.d.ts.map +1 -1
  238. package/dist/schemes/_entry-graph.js +33 -72
  239. package/dist/schemes/_entry-graph.js.map +1 -1
  240. package/dist/schemes/_entry-graph.sql +30 -48
  241. package/dist/schemes/_entry-manifest.d.ts +5 -0
  242. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  243. package/dist/schemes/_entry-manifest.js +5 -0
  244. package/dist/schemes/_entry-manifest.js.map +1 -1
  245. package/dist/schemes/_entry-ops.d.ts +1 -1
  246. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  247. package/dist/schemes/_entry-ops.js +4 -11
  248. package/dist/schemes/_entry-ops.js.map +1 -1
  249. package/dist/schemes/_search-index.d.ts +10 -0
  250. package/dist/schemes/_search-index.d.ts.map +1 -1
  251. package/dist/schemes/_search-index.js +33 -1
  252. package/dist/schemes/_search-index.js.map +1 -1
  253. package/dist/schemes/exec-lifetime.d.ts.map +1 -1
  254. package/dist/schemes/exec-lifetime.js +1 -2
  255. package/dist/schemes/exec-lifetime.js.map +1 -1
  256. package/dist/server/Daemon.d.ts +2 -1
  257. package/dist/server/Daemon.d.ts.map +1 -1
  258. package/dist/server/Daemon.js +31 -35
  259. package/dist/server/Daemon.js.map +1 -1
  260. package/dist/server/DrainSupervisor.d.ts +2 -1
  261. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  262. package/dist/server/DrainSupervisor.js +37 -56
  263. package/dist/server/DrainSupervisor.js.map +1 -1
  264. package/dist/server/Functionality.d.ts +1 -1
  265. package/dist/server/Functionality.d.ts.map +1 -1
  266. package/dist/server/Functionality.js +24 -11
  267. package/dist/server/Functionality.js.map +1 -1
  268. package/dist/server/FunctionalityManager.js +2 -2
  269. package/dist/server/FunctionalityManager.js.map +1 -1
  270. package/dist/server/Retention.d.ts.map +1 -1
  271. package/dist/server/Retention.js +7 -3
  272. package/dist/server/Retention.js.map +1 -1
  273. package/dist/server/drain.sql +0 -6
  274. package/dist/server/seam-loop.sql +1 -1
  275. package/dist/service.js +1 -1
  276. package/dist/service.js.map +1 -1
  277. package/docs/env.md +4 -3
  278. package/migrations/013_graph_regions.sql +32 -0
  279. package/migrations/014_stream_timing.sql +4 -0
  280. package/migrations/015_request_evidence.sql +4 -0
  281. package/package.json +34 -34
  282. package/dist/core/KnownToxins.d.ts +0 -4
  283. package/dist/core/KnownToxins.d.ts.map +0 -1
  284. package/dist/core/KnownToxins.js +0 -22
  285. package/dist/core/KnownToxins.js.map +0 -1
  286. package/dist/core/ReasoningView.d.ts +0 -12
  287. package/dist/core/ReasoningView.d.ts.map +0 -1
  288. package/dist/core/ReasoningView.js +0 -40
  289. package/dist/core/ReasoningView.js.map +0 -1
  290. package/dist/server/exec-poll-backoff.d.ts +0 -2
  291. package/dist/server/exec-poll-backoff.d.ts.map +0 -1
  292. package/dist/server/exec-poll-backoff.js +0 -6
  293. package/dist/server/exec-poll-backoff.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelWrite.js","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ChannelWrite.js","sourceRoot":"","sources":["../../src/core/ChannelWrite.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,32 @@ BEGIN
107
107
  UPDATE workers SET wake_revision = wake_revision + 1 WHERE id = NEW.worker_id;
108
108
  END;
109
109
 
110
+ -- INIT: subscriptions_output_clock
111
+ -- {§child-orientation}: silence starts at opening, including streams with no output yet.
112
+ DROP TRIGGER IF EXISTS subscriptions_output_clock;
113
+ CREATE TRIGGER subscriptions_output_clock
114
+ AFTER INSERT ON subscriptions
115
+ BEGIN
116
+ UPDATE subscriptions SET output_changed_at = NEW.opened_at WHERE id = NEW.id;
117
+ END;
118
+
119
+ -- INIT: subscriptions_output_changed
120
+ -- Content and its clock commit together. State/metadata writes and identical
121
+ -- content do not count; publication chooses which channels the worker observes.
122
+ DROP TRIGGER IF EXISTS subscriptions_output_changed;
123
+ CREATE TRIGGER subscriptions_output_changed
124
+ INSTEAD OF UPDATE OF content ON entry_channels
125
+ WHEN NEW.content IS NOT OLD.content
126
+ BEGIN
127
+ UPDATE subscriptions
128
+ SET output_changed_at = strftime('%Y-%m-%dT%H:%M:%fZ', 'now')
129
+ WHERE entry_id = NEW.entry_id AND closed_at IS NULL
130
+ AND EXISTS (
131
+ SELECT 1 FROM subscription_publications sp
132
+ WHERE sp.subscription_id = subscriptions.id AND sp.channel = NEW.name
133
+ );
134
+ END;
135
+
110
136
  -- INIT: subscriptions_settle_channels
111
137
  -- Subscription settlement is the single atomic transition that closes the
112
138
  -- lifecycle and installs current terminal producer evidence on every channel.
@@ -0,0 +1,26 @@
1
+ import type { RangeExtent } from "@plurnk/plurnk-contracts";
2
+ import type { DispatchResult } from "./Dispatcher.ts";
3
+ export interface ContextFit {
4
+ remaining(): Promise<number | null>;
5
+ }
6
+ export declare const RECEIPT_RESERVE = 160;
7
+ export declare const reserved: (fit: ContextFit, pending: number) => ContextFit;
8
+ export interface ResultSize {
9
+ readonly unit: RangeExtent["unit"];
10
+ readonly total: number;
11
+ }
12
+ export declare const resultSize: (result: {
13
+ readonly range?: RangeExtent;
14
+ readonly content?: unknown;
15
+ }) => ResultSize;
16
+ export declare const RESULT_EXCEEDS_BUDGET = "https://problems.plurnk.xyz/engine/context/result-exceeds-budget";
17
+ export declare const unfitResult: (fields: Readonly<Record<string, unknown>>, size: ResultSize, tokens: number, remaining: number, verb?: "READ" | "FIND", delivered?: number) => DispatchResult;
18
+ export declare const resultPrefix: <T extends {
19
+ readonly content: string;
20
+ }>(result: T, count: number) => T;
21
+ export declare const isContextReceipt: (result: {
22
+ readonly problem?: {
23
+ readonly type?: unknown;
24
+ };
25
+ }) => boolean;
26
+ //# sourceMappingURL=ContextFit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextFit.d.ts","sourceRoot":"","sources":["../../src/core/ContextFit.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKtD,MAAM,WAAW,UAAU;IACvB,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACvC;AAQD,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,eAAO,MAAM,QAAQ,QAAS,UAAU,WAAW,MAAM,KAAG,UAK3D,CAAC;AAEF,MAAM,WAAW,UAAU;IACvB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAC1B;AAKD,eAAO,MAAM,UAAU,WAAY;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,KAAG,UAIjG,CAAC;AAKF,eAAO,MAAM,qBAAqB,qEAAqE,CAAC;AAExG,eAAO,MAAM,WAAW,WACZ,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QACnC,UAAU,UACR,MAAM,aACH,MAAM,SACX,MAAM,GAAG,MAAM,yBAEtB,cASF,CAAC;AAKF,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,UAAU,CAAC,SAAS,MAAM,KAAG,CAgB/F,CAAC;AAIF,eAAO,MAAM,gBAAgB,WAAY;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAAE,KAAG,OAC5C,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { TextCoordinates } from "@plurnk/plurnk-mimetypes";
2
+ import Results from "./results.js";
3
+ // {§context-fit} — the room a turn still owes before one more result may land whole: one receipt's
4
+ // measured weight for each result still to land in the same turn, and the head of the emission that
5
+ // answers the packet. A bodiless receipt row is a heading, a status, a Problem type and detail, a
6
+ // size and a path: as the log renders one it weighs under 160, and that is the reserve. It sizes no
7
+ // result; it only decides where in a batch the room runs out, so the receipts of the rest and the
8
+ // answer always fit.
9
+ export const RECEIPT_RESERVE = 160;
10
+ export const reserved = (fit, pending) => pending <= 0 ? fit : {
11
+ remaining: async () => {
12
+ const remaining = await fit.remaining();
13
+ return remaining === null ? null : Math.max(0, remaining - pending * RECEIPT_RESERVE);
14
+ },
15
+ };
16
+ // The size of a result in its projection's own units: the span its range returned when it carries one
17
+ // — a scoped READ's receipt names the lines the scope selected, not the resource's — the whole range
18
+ // otherwise, its lines without one.
19
+ export const resultSize = (result) => {
20
+ const { range } = result;
21
+ if (range !== undefined)
22
+ return { unit: range.unit, total: range.returned === undefined ? range.total : range.returned[1] - range.returned[0] + 1 };
23
+ return { unit: "line", total: typeof result.content === "string" ? TextCoordinates.logicalLines(result.content).length : 0 };
24
+ };
25
+ // {§context-fit} — a result the model asked for that does not fit: a `413` receipt naming the result's
26
+ // size, its tokens, the remaining budget, the units it delivered above the receipt, and the two verbs.
27
+ // The complete result stays where it was read from.
28
+ export const RESULT_EXCEEDS_BUDGET = "https://problems.plurnk.xyz/engine/context/result-exceeds-budget";
29
+ export const unfitResult = (fields, size, tokens, remaining, verb = "READ", delivered = 0) => Results.failure("engine:context", "result-exceeds-budget", 413, `${size.total} ${size.unit}${size.total === 1 ? "" : "s"}, ${tokens} tokens; ${remaining} tokens remain: `
30
+ + `${delivered > 0 ? `${delivered} ${size.unit}${delivered === 1 ? "" : "s"} delivered; ` : ""}`
31
+ + `${verb === "FIND" ? "FIND with a scope" : "READ a range"}, or KILL first.`, fields, { [`${size.unit}s`]: size.total, tokens, remaining, ...(delivered > 0 ? { delivered } : {}) });
32
+ // {§context-fit} — the first `count` lines of a READ result as a result of its own: the content cut at
33
+ // the line boundary, the per-line anchors and source ordinals cut with it, and the returned range closed
34
+ // on the last line delivered. The rest of the result is what the receipt names.
35
+ export const resultPrefix = (result, count) => {
36
+ const lines = TextCoordinates.logicalLines(result.content);
37
+ const last = lines[count - 1];
38
+ if (count < 1 || last === undefined)
39
+ throw new RangeError(`resultPrefix: ${count} of ${lines.length} lines`);
40
+ const view = result;
41
+ const ordinals = view.lineOrdinals?.slice(0, count);
42
+ const returned = view.range?.returned;
43
+ return {
44
+ ...result,
45
+ content: result.content.slice(0, last.end),
46
+ ...(view.lineAnchors === undefined ? {} : { lineAnchors: view.lineAnchors.slice(0, count) }),
47
+ ...(ordinals === undefined ? {} : { lineOrdinals: ordinals }),
48
+ ...(view.range === undefined || returned === undefined
49
+ ? {}
50
+ : { range: { ...view.range, returned: [returned[0], ordinals === undefined ? returned[0] + count - 1 : ordinals[count - 1]] } }),
51
+ };
52
+ };
53
+ // {§context-fit} — the receipt is an outcome, never a broken program: an internal turn that fails on
54
+ // operation errors lets it stand.
55
+ export const isContextReceipt = (result) => result.problem?.type === RESULT_EXCEEDS_BUDGET;
56
+ //# sourceMappingURL=ContextFit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextFit.js","sourceRoot":"","sources":["../../src/core/ContextFit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,OAAO,MAAM,cAAc,CAAC;AAUnC,mGAAmG;AACnG,oGAAoG;AACpG,kGAAkG;AAClG,oGAAoG;AACpG,kGAAkG;AAClG,qBAAqB;AACrB,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,CAAC;AAEnC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAe,EAAE,OAAe,EAAc,EAAE,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3F,SAAS,EAAE,KAAK,IAAI,EAAE;QAClB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,SAAS,EAAE,CAAC;QACxC,OAAO,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,eAAe,CAAC,CAAC;IAC1F,CAAC;CACJ,CAAC;AAOF,sGAAsG;AACtG,qGAAqG;AACrG,oCAAoC;AACpC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAoE,EAAc,EAAE;IAC3G,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;IACzB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IACpJ,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjI,CAAC,CAAC;AAEF,uGAAuG;AACvG,uGAAuG;AACvG,oDAAoD;AACpD,MAAM,CAAC,MAAM,qBAAqB,GAAG,kEAAkE,CAAC;AAExG,MAAM,CAAC,MAAM,WAAW,GAAG,CACvB,MAAyC,EACzC,IAAgB,EAChB,MAAc,EACd,SAAiB,EACjB,IAAI,GAAoB,MAAM,EAC9B,SAAS,GAAG,CAAC,EACC,EAAE,CAAC,OAAO,CAAC,OAAO,CAChC,gBAAgB,EAChB,uBAAuB,EACvB,GAAG,EACH,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,MAAM,YAAY,SAAS,kBAAkB;MACpG,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE;MAC9F,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,kBAAkB,EACjF,MAAM,EACN,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAChG,CAAC;AAEF,uGAAuG;AACvG,yGAAyG;AACzG,gFAAgF;AAChF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAyC,MAAS,EAAE,KAAa,EAAK,EAAE;IAChG,MAAM,KAAK,GAAG,eAAe,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,KAAK,GAAG,CAAC,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,UAAU,CAAC,iBAAiB,KAAK,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;IAC7G,MAAM,IAAI,GAAG,MAAmI,CAAC;IACjJ,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC;IACtC,OAAO;QACH,GAAG,MAAM;QACT,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC;QAC1C,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC;QAC5F,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;QAC7D,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS;YAClD,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAE,CAAqB,EAAE,EAAE,CAAC;KAC5J,CAAC;AACN,CAAC,CAAC;AAEF,qGAAqG;AACrG,kCAAkC;AAClC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,MAA0D,EAAW,EAAE,CACpG,MAAM,CAAC,OAAO,EAAE,IAAI,KAAK,qBAAqB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"DataStatementRunner.d.ts","sourceRoot":"","sources":["../../src/core/DataStatementRunner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,UAAU,EAAiB,MAAM,0BAA0B,CAAC;AACzF,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AAItD,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7E,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAA+B,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,KAAK,sBAAsB,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAgB,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAsB5G,MAAM,CAAC,OAAO,OAAO,mBAAmB;;IAOpC,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,OAAO,EAAE,EAAE;QACrG,OAAO,EAAE,cAAc,CAAC;QACxB,iBAAiB,EAAE,iBAAiB,CAAC;QACrC,uBAAuB,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,EAAE,UAAU,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,sBAAsB,CAAC;YAAC,QAAQ,EAAE,cAAc,CAAC;YAAC,GAAG,EAAE,mBAAmB,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;SAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClO,yBAAyB,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,EAAE,UAAU,CAAC;YAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAAC;YAAC,QAAQ,EAAE,cAAc,CAAC;YAAC,GAAG,EAAE,mBAAmB,CAAC;YAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;SAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACjU,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,cAAc,CAAC;KACzK,EAMA;IA+CK,GAAG,CACL,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,EAAE,cAAc,EACzB,GAAG,EAAE,mBAAmB,GACzB,OAAO,CAAC,cAAc,CAAC,CAgFzB;CAiMJ"}
1
+ {"version":3,"file":"DataStatementRunner.d.ts","sourceRoot":"","sources":["../../src/core/DataStatementRunner.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,UAAU,EAAiB,MAAM,0BAA0B,CAAC;AACzF,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AAItD,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAK7E,OAAO,KAAK,iBAAiB,MAAM,wBAAwB,CAAC;AAG5D,OAAO,EAA+B,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,KAAK,sBAAsB,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAgB,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAsB5G,MAAM,CAAC,OAAO,OAAO,mBAAmB;;IAOpC,YAAY,EAAE,OAAO,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,yBAAyB,EAAE,OAAO,EAAE,EAAE;QACrG,OAAO,EAAE,cAAc,CAAC;QACxB,iBAAiB,EAAE,iBAAiB,CAAC;QACrC,uBAAuB,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,EAAE,UAAU,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,sBAAsB,CAAC;YAAC,QAAQ,EAAE,cAAc,CAAC;YAAC,GAAG,EAAE,mBAAmB,CAAC;YAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;SAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;QAClO,yBAAyB,EAAE,CAAC,IAAI,EAAE;YAAE,MAAM,EAAE,UAAU,CAAC;YAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAAC;YAAC,YAAY,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,sBAAsB,GAAG,aAAa,CAAC;YAAC,QAAQ,EAAE,cAAc,CAAC;YAAC,GAAG,EAAE,mBAAmB,CAAC;YAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;YAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;SAAE,KAAK,OAAO,CAAC,sBAAsB,CAAC,CAAC;QACjU,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,KAAK,cAAc,CAAC;KACzK,EAMA;IA+CK,GAAG,CACL,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,SAAS,EAAE,cAAc,EACzB,GAAG,EAAE,mBAAmB,GACzB,OAAO,CAAC,cAAc,CAAC,CAgFzB;CAkMJ"}
@@ -184,6 +184,7 @@ class DataStatementRunner {
184
184
  target,
185
185
  identity: resolved.identity ?? target,
186
186
  representation: resolved.representation,
187
+ context: ctx,
187
188
  ...(resolved.visibleLines === undefined ? {} : { visibleLines: resolved.visibleLines }),
188
189
  mimetypes: ctx.mimetypes,
189
190
  ...(ctx.weigh === undefined ? {} : { weigh: ctx.weigh }),
@@ -1 +1 @@
1
- {"version":3,"file":"DataStatementRunner.js","sourceRoot":"","sources":["../../src/core/DataStatementRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataStatementRunner.js","sourceRoot":"","sources":["../../src/core/DataStatementRunner.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { BareStatement, CapabilityProjection, ParsedPath, PlurnkStatement, ReadStatement } from "@plurnk/plurnk-contracts";
1
+ import type { BareStatement, CapabilityProjection, DispositionStatement, ParsedPath, PlurnkStatement, ReadStatement } from "@plurnk/plurnk-contracts";
2
2
  import type { Mimetypes } from "@plurnk/plurnk-mimetypes";
3
3
  import type { Db } from "./Db.ts";
4
4
  import type SchemeRegistry from "./SchemeRegistry.ts";
@@ -12,6 +12,7 @@ import type LiveSubscriptions from "./LiveSubscriptions.ts";
12
12
  import LoopLifecycle from "./LoopLifecycle.ts";
13
13
  import { type ExecSource } from "./CoreSchemeServices.ts";
14
14
  import { type SchemeCtx, type SchemeHandler, type SchemeResult } from "@plurnk/plurnk-schemes";
15
+ import { type ContextFit } from "./ContextFit.ts";
15
16
  import EntryAddressBinding, { type EntryAddressResolution as PreparedRepresentation } from "./EntryAddressBinding.ts";
16
17
  import type EditSequence from "./EditSequence.ts";
17
18
  export type DispatchContext = {
@@ -33,6 +34,7 @@ export type DispatchContext = {
33
34
  readonly index: number;
34
35
  readonly count: number;
35
36
  };
37
+ fit?: ContextFit;
36
38
  };
37
39
  export type DispatchResult = SchemeResult;
38
40
  export interface ResolvedClientEntryAddress {
@@ -100,6 +102,17 @@ export default class Dispatcher {
100
102
  turnId: number;
101
103
  sequence: number;
102
104
  }): Promise<number>;
105
+ writeReasoning({ reasoning, workerName, loopSeq, turnSeq, workerId, loopId, turnId, sequence, fit }: {
106
+ reasoning: string;
107
+ workerName: string;
108
+ loopSeq: number;
109
+ turnSeq: number;
110
+ workerId: number;
111
+ loopId: number;
112
+ turnId: number;
113
+ sequence: number;
114
+ fit: ContextFit | undefined;
115
+ }): Promise<number | null>;
103
116
  prepareBarePrompt(context: Pick<DispatchContext, "workspaceId" | "workerId" | "loopId" | "turnId" | "sequence" | "origin"> & {
104
117
  statement: BareStatement;
105
118
  }): Promise<{
@@ -115,7 +128,7 @@ export default class Dispatcher {
115
128
  loopId: number;
116
129
  turnId: number;
117
130
  origin: WriterTier;
118
- }, wait: boolean, finalResponse: boolean): Promise<number>;
131
+ }, waits: readonly DispositionStatement[], finalResponse: boolean): Promise<number>;
119
132
  hasLiveWork(loopId: number): Promise<boolean>;
120
133
  }
121
134
  //# sourceMappingURL=Dispatcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dispatcher.d.ts","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dispatcher.d.ts","sourceRoot":"","sources":["../../src/core/Dispatcher.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,9 @@ import ResourceSelector from "./ResourceSelector.js";
21
21
  import { primaryTargetOf } from "./statement-primary.js";
22
22
  import LogBody from "./LogBody.js";
23
23
  import LogVisibility from "./LogVisibility.js";
24
+ import PacketWire from "./packet-wire.js";
25
+ import { reserved, resultPrefix, resultSize, unfitResult } from "./ContextFit.js";
26
+ import { TextCoordinates } from "@plurnk/plurnk-mimetypes";
24
27
  import EntryAddressBinding from "./EntryAddressBinding.js";
25
28
  import WorkerControlHandler from "./WorkerControlHandler.js";
26
29
  import WorkerControlAddress from "./WorkerControlAddress.js";
@@ -96,7 +99,6 @@ class Dispatcher {
96
99
  this.#resourceMutations = new ResourceMutations({
97
100
  schemes,
98
101
  liveSubscriptions,
99
- run: (schemeName, statement, ctx) => this.#dataRun.run(schemeName, statement, ctx),
100
102
  checkWritable: (statement, origin, workspaceId) => this.#checkWritable(statement, origin, workspaceId),
101
103
  checkCapabilities: (statement, ctx) => this.#checkCapabilities(statement, ctx),
102
104
  editTargetIdentity: (statement, workspaceId, workerId) => this.#editTargetIdentity(statement, workspaceId, workerId),
@@ -257,11 +259,13 @@ class Dispatcher {
257
259
  // records the model's KILL. Schemes that implement kill() (streams) take the scope themselves;
258
260
  // the log's scoped KILL is curation.
259
261
  #scopedEntryEdits = new WeakMap();
262
+ // {§log-kill-distillation} — the NOTE a log KILL's body becomes, keyed so its row names what it distilled.
263
+ #distillations = new WeakMap();
260
264
  #scopedEntryEdit(statement, workspaceId) {
261
265
  if (statement.op === "EDIT")
262
266
  return statement;
263
267
  // {§kill-scope-entry} a scoped KILL of an entry empties the span; {§kill-pattern} a KILL with
264
- // a matcher removes every whole line the pattern selects, inside its scope when one is given.
268
+ // a matcher removes each selected span, inside its scope when one is given.
265
269
  // Both are emptying EDITs; the log and every scheme with its own kill() keep their own path.
266
270
  if (statement.op !== "KILL" || (statement.lineMarker === null && statement.matcher === null))
267
271
  return null;
@@ -285,11 +289,13 @@ class Dispatcher {
285
289
  position: statement.position,
286
290
  };
287
291
  this.#scopedEntryEdits.set(statement, edit);
288
- if (statement.matcher !== null)
289
- this.#resourceMutations.markLineDeletion(edit);
290
292
  return edit;
291
293
  }
292
294
  async dispatch(context) {
295
+ // {§safe-uri-target-groups} — a group never reaches dispatch unexpanded.
296
+ if ((context.statement.op === "READ" || context.statement.op === "KILL") && context.statement.group !== undefined) {
297
+ throw new Error(`Dispatcher.dispatch: a ${context.statement.op} target group is expanded before dispatch`);
298
+ }
293
299
  await this.#operationEvent(context, "started");
294
300
  await this.#noticeFilePaths(context);
295
301
  const result = await this.#dispatch(context);
@@ -344,8 +350,37 @@ class Dispatcher {
344
350
  result = this.#resourceMutations.withMergeFacts(edit, result);
345
351
  this.#resourceMutations.settleEdit(edit, result);
346
352
  }
353
+ // {§log-kill-distillation} — a log KILL's body is the model's own NOTE row whatever the kill's
354
+ // outcome: written after the kill's receipt at the next sequence, so it never falls inside the
355
+ // kill's own selection, and kept when the kill misses, because what the model wrote about its
356
+ // environment is the model's to retire, never the daemon's to drop.
357
+ const distillation = _a.#distillationOf(context.statement);
358
+ if (distillation !== null) {
359
+ const note = { op: "NOTE", aside: null, metadata: null, target: null, lineMarker: null, body: distillation, position: context.statement.position };
360
+ this.#distillations.set(note, context.statement.target.raw);
361
+ const noteContext = { ...context, statement: note, sequence: context.sequence + 1 };
362
+ delete noteContext.fanout;
363
+ await ResourceBindings.using(this.#schemes, this.#buildSchemeCtx(noteContext), (ctx) => this.#dispatchOne(noteContext, ctx));
364
+ result = Results.assert({ ...result, rowsWritten: (result.rowsWritten ?? 1) + 1 });
365
+ }
347
366
  return result;
348
367
  }
368
+ // {§matcher-refusal} — a matcher the parser could not read refuses its one operation with the parser's
369
+ // diagnostic and working form: the operation's own row, soft on the rail, never a contract strike.
370
+ static #unreadableMatcher(statement) {
371
+ const matchers = statement.op === "COPY" || statement.op === "MOVE"
372
+ ? [statement.source.matcher, statement.destination.matcher]
373
+ : ["matcher" in statement ? statement.matcher : null];
374
+ const unreadable = matchers.find((matcher) => matcher !== null && matcher !== undefined && matcher.dialect === "unreadable");
375
+ if (unreadable === undefined || unreadable === null || unreadable.dialect !== "unreadable")
376
+ return null;
377
+ return Results.failure("grammar:matcher", "unreadable-pattern", 400, unreadable.message, {}, { stage: "matcher", recovery: unreadable.recovery, retryable: false });
378
+ }
379
+ static #distillationOf(statement) {
380
+ if (statement.op !== "KILL" || schemeNameOf(statement.target) !== "log" || typeof statement.body !== "string")
381
+ return null;
382
+ return statement.body.trim() === "" ? null : statement.body;
383
+ }
349
384
  static #globTarget(target) {
350
385
  return target !== null && PathSyntax.hasGlob(target.kind === "url" ? target.pathname : target.raw);
351
386
  }
@@ -353,16 +388,12 @@ class Dispatcher {
353
388
  // ordinary FIND over the same target (unlogged; a matcher FIND when there is one, the catalog
354
389
  // otherwise; its resource page bounds the fan-out), and each is read as an ordinary exact READ
355
390
  // with the authored scope and matcher and its own receipt row, so every rendered line keeps its
356
- // path, ordinal and anchor. No path: one 204 receipt on the authored glob. A resource dialect
357
- // (`~`, `&`) selects resources, not lines, so that READ is the FIND survey.
391
+ // path, ordinal and anchor. No path: one 204 receipt on the authored glob.
358
392
  async #fanOutRead(context, statement) {
359
393
  const survey = {
360
394
  op: "FIND", aside: statement.aside, target: statement.target, metadata: statement.metadata,
361
395
  matcher: statement.matcher, lineMarker: null, body: null, position: statement.position,
362
396
  };
363
- if (statement.matcher?.dialect === "fts" || statement.matcher?.dialect === "graph") {
364
- return this.#dispatch({ ...context, statement: survey });
365
- }
366
397
  const found = await ResourceBindings.using(this.#schemes, this.#buildSchemeCtx(context), (ctx) => this.#dataRun.run(schemeNameOf(statement.target), survey, ctx));
367
398
  const paths = found.status < 300
368
399
  ? (found.results ?? []).flatMap((item) => Array.isArray(item) && !("items" in item[0]) ? [item[0].path] : [])
@@ -403,7 +434,8 @@ class Dispatcher {
403
434
  let result;
404
435
  let curationPlan = null;
405
436
  const denial = this.#checkWritable(statement, origin, workspaceId)
406
- ?? await this.#checkCapabilities(statement, schemeCtx);
437
+ ?? await this.#checkCapabilities(statement, schemeCtx)
438
+ ?? _a.#unreadableMatcher(statement);
407
439
  if (denial !== null) {
408
440
  result = denial;
409
441
  }
@@ -431,12 +463,13 @@ class Dispatcher {
431
463
  if (coordinate === undefined)
432
464
  throw new Error(`NOTE has no turn coordinate for ${turnId}`);
433
465
  const workerName = await WorkerName.forId(this.#db, workerId);
434
- result = { status: 200, resource: renderAddress({ scheme: "note", authority: workerName, pathname: `/${coordinate.loop_seq}/${coordinate.turn_seq}/${sequence}` }) };
466
+ const distilled = this.#distillations.get(statement);
467
+ result = { ...(distilled === undefined ? {} : { attrs: { distilled } }), status: 200, resource: renderAddress({ scheme: "note", authority: workerName, pathname: `/${coordinate.loop_seq}/${coordinate.turn_seq}/${sequence}` }) };
435
468
  }
436
469
  else if (TurnDisposition.is(statement)) {
437
470
  // {§turn-disposition} — WAIT is the park; whatever it names is its label in the
438
- // row, never a join: the next wake is a message, a child's end, a stream's close.
439
- result = await this.#disposition.handle({ workerId, loopId, turnId, origin });
471
+ // row, never a selected waker; arrivals or its duration end the park.
472
+ result = await this.#disposition.handle({ workerId, loopId, turnId, origin }, statement);
440
473
  }
441
474
  else if (statement.op === "KILL" && schemeNameOf(statement.target) === "log") {
442
475
  const curation = await this.#runLogCuration(statement, schemeCtx, context.logSelectionMaxId);
@@ -489,6 +522,7 @@ class Dispatcher {
489
522
  }
490
523
  }
491
524
  }
525
+ result = await this.#fitResult(context, statement, result);
492
526
  // {§configuration-repair-path}: decide admission before persisting a proposed row.
493
527
  let autoAccept = false;
494
528
  if (_a.#isProposal(statement, result)) {
@@ -594,6 +628,59 @@ class Dispatcher {
594
628
  await this.#notifySettled(context, logEntryId);
595
629
  return result;
596
630
  }
631
+ // {§context-fit} — a result the model asked for arrives whole when it fits the remaining budget;
632
+ // otherwise the row is its size and address — a READ of lines above the longest prefix of them that
633
+ // fits — and the result stays where it was read from.
634
+ async #fitResult(context, statement, result) {
635
+ if (context.fit === undefined || (statement.op !== "READ" && statement.op !== "FIND"))
636
+ return result;
637
+ if (result.status >= 300 || typeof result.content !== "string" || result.content.length === 0)
638
+ return result;
639
+ const remaining = await context.fit.remaining();
640
+ if (remaining === null)
641
+ return result;
642
+ const tokens = await this.#rowTokens(context, statement, result);
643
+ if (tokens <= remaining)
644
+ return result;
645
+ const size = resultSize(result);
646
+ const range = result.range;
647
+ const retained = statement.op === "READ"
648
+ ? { content: null, mimetype: null, channel: result.channel ?? null, ...(range === undefined ? {} : { range }) }
649
+ : { ...(range === undefined ? {} : { range }), ...Object.fromEntries(["matchingPathCount", "matchLocationCount", "itemsWeightTotal"].flatMap((key) => key in result ? [[key, result[key]]] : [])) };
650
+ const receipt = (delivered) => unfitResult(retained, size, tokens, remaining, statement.op, delivered);
651
+ if (statement.op !== "READ" || size.unit !== "line")
652
+ return receipt(0);
653
+ const whole = result;
654
+ const withPrefix = (count) => {
655
+ const prefix = resultPrefix(whole, count);
656
+ const carried = Object.fromEntries(["content", "mimetype", "startLine", "lineAnchors", "lineNumberWidth", "lineOrdinals", "matches", "range"]
657
+ .flatMap((key) => prefix[key] === undefined ? [] : [[key, prefix[key]]]));
658
+ return { ...receipt(count), ...carried };
659
+ };
660
+ // The longest prefix whose row, in its receipt shape, fits: the whole is known not to.
661
+ let fits = 0;
662
+ let bound = TextCoordinates.logicalLines(whole.content).length - 1;
663
+ while (fits < bound) {
664
+ const probe = Math.ceil((fits + bound) / 2);
665
+ if (await this.#rowTokens(context, statement, withPrefix(probe)) <= remaining)
666
+ fits = probe;
667
+ else
668
+ bound = probe - 1;
669
+ }
670
+ return fits === 0 ? receipt(0) : withPrefix(fits);
671
+ }
672
+ // The tokens the row would charge the packet, rendered as the log renders it ({§context-fit}).
673
+ async #rowTokens({ workspaceId, workerId, loopId, turnId, sequence, origin }, statement, result) {
674
+ const record = await this.#logWriter.record({ statement, result, workspaceId, workerId, loopId, turnId, sequence, origin, curationPlan: null, modelCallId: null });
675
+ const seqs = await this.#db.engine_loop_turn_seqs.get({ loop_id: loopId, turn_id: turnId });
676
+ if (seqs === undefined)
677
+ throw new Error(`Dispatcher.#rowTokens: loop_turn_seqs returned no row for loop=${loopId} turn=${turnId}`);
678
+ const row = {
679
+ ...record, id: null, loop_seq: seqs.loop_seq, turn_seq: seqs.turn_seq,
680
+ folded: LogVisibility.serialize(LogVisibility.OPEN), producer: origin === "model" ? "model" : "_plurnk",
681
+ };
682
+ return PacketWire.rowTokens(PacketWire.entryView(row), this.#weighContent, { projectRoot: await this.#workspaceRoot(workspaceId) });
683
+ }
597
684
  async #notifySettled(context, logEntryId) {
598
685
  await context.onSettled?.(logEntryId);
599
686
  await this.#notify.operationSettledNotify?.(context.workspaceId, logEntryId);
@@ -611,7 +698,7 @@ class Dispatcher {
611
698
  const schemeCtx = this.#buildSchemeCtx({ workspaceId, workerId, loopId, turnId: 0, origin });
612
699
  return ResourceBindings.using(this.#schemes, schemeCtx, async (ctx) => {
613
700
  try {
614
- const denial = await this.#checkCapabilities(statement, ctx);
701
+ const denial = await this.#checkCapabilities(statement, ctx) ?? _a.#unreadableMatcher(statement);
615
702
  return denial ?? await this.#dataRun.run(schemeNameOf(statement.target), statement, ctx);
616
703
  }
617
704
  catch (error) {
@@ -963,6 +1050,51 @@ class Dispatcher {
963
1050
  throw new Error("Dispatcher.writeEmission: insert returned no row");
964
1051
  return row.id;
965
1052
  }
1053
+ // {§reasoning-row} — the model's own reasoning, landed as the harness's READ of the turn's reasoning
1054
+ // source immediately before the emission row, whole, only when the packet has room for it after
1055
+ // everything else this turn lands; without room, no row and nothing else changes.
1056
+ async writeReasoning({ reasoning, workerName, loopSeq, turnSeq, workerId, loopId, turnId, sequence, fit }) {
1057
+ if (reasoning.length === 0)
1058
+ return null;
1059
+ const pathname = `/${loopSeq}/${turnSeq}`;
1060
+ const statement = {
1061
+ op: "READ", aside: null, metadata: null, lineMarker: null, matcher: null, body: null, position: UNKNOWN_POSITION,
1062
+ target: {
1063
+ kind: "url", raw: `reasoning://${workerName}${pathname}`, scheme: "reasoning",
1064
+ username: null, password: null, hostname: workerName, port: null, pathname, query: null, fragment: null,
1065
+ },
1066
+ };
1067
+ const durableAttrs = { kind: "reasoning" };
1068
+ const tx = JSON.stringify(DurableStatement.project(statement));
1069
+ const rx = JSON.stringify({ status: 200, content: reasoning, mimetype: "text/markdown" });
1070
+ const weight = LogBody.weight({
1071
+ op: "READ", attrs: durableAttrs, tx, rx, mimetypeTx: "application/json", mimetypeRx: "application/json",
1072
+ }, this.#weighContent);
1073
+ if (fit !== undefined) {
1074
+ // One receipt's reserve keeps the room the emission row's head needs ({§context-fit}).
1075
+ const remaining = await reserved(fit, 1).remaining();
1076
+ if (remaining !== null && weight > remaining)
1077
+ return null;
1078
+ }
1079
+ const row = await this.#db.engine_insert_log_entry.get({
1080
+ worker_id: workerId, loop_id: loopId, turn_id: turnId, sequence,
1081
+ origin: "_plurnk", source: null, model_call_id: null,
1082
+ op: "READ", signal: null,
1083
+ scheme: "reasoning", username: null, password: null, hostname: workerName, port: null,
1084
+ pathname, query: null, fragment: null, lineMarker: null,
1085
+ tx, mimetype_tx: "application/json",
1086
+ rx,
1087
+ mimetype_rx: "application/json",
1088
+ status_rx: 200,
1089
+ weight,
1090
+ state: "resolved", outcome: null,
1091
+ attrs: JSON.stringify(durableAttrs),
1092
+ initial_folded: LogVisibility.serialize(LogVisibility.OPEN),
1093
+ });
1094
+ if (row === undefined)
1095
+ throw new Error("Dispatcher.writeReasoning: insert returned no row");
1096
+ return row.id;
1097
+ }
966
1098
  // {§worker-spawn-prompt-resource} WORK and FORK overload their slot by scheme: a `worker://`
967
1099
  // path is always the child's address (and keeps the address rules); a path of any other scheme
968
1100
  // is read whole and becomes the child's prompt, composed with the body as BARE's combined form.
@@ -1079,8 +1211,8 @@ class Dispatcher {
1079
1211
  const rows = await this.#db.engine_open_messages.all({ loop_id: loopId });
1080
1212
  return rows.map((row) => row.path);
1081
1213
  }
1082
- async settleProgram(ctx, wait, finalResponse) {
1083
- return this.#disposition.settle(ctx, wait, finalResponse);
1214
+ async settleProgram(ctx, waits, finalResponse) {
1215
+ return this.#disposition.settle(ctx, waits, finalResponse);
1084
1216
  }
1085
1217
  // {§send-premature-terminate}: judge observation boundaries after the whole program settles.
1086
1218
  async #pendingSet(workerId, turnId, loopId) {