@plurnk/plurnk-service 4.3.0 → 4.3.1

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 (54) hide show
  1. package/SPEC.md +21 -21
  2. package/dist/build-info.json +1 -1
  3. package/dist/core/Engine.d.ts +3 -1
  4. package/dist/core/Engine.d.ts.map +1 -1
  5. package/dist/core/Engine.js +3 -0
  6. package/dist/core/Engine.js.map +1 -1
  7. package/dist/core/MessageResources.sql +18 -0
  8. package/dist/core/PacketBuilder.d.ts +2 -6
  9. package/dist/core/PacketBuilder.d.ts.map +1 -1
  10. package/dist/core/PacketBuilder.js +33 -26
  11. package/dist/core/PacketBuilder.js.map +1 -1
  12. package/dist/core/PacketBuilder.sql +11 -0
  13. package/dist/core/TokenCalibration.d.ts +4 -2
  14. package/dist/core/TokenCalibration.d.ts.map +1 -1
  15. package/dist/core/TokenCalibration.js +30 -13
  16. package/dist/core/TokenCalibration.js.map +1 -1
  17. package/dist/core/TokenCalibration.sql +7 -17
  18. package/dist/core/ToolResources.d.ts +1 -1
  19. package/dist/core/ToolResources.d.ts.map +1 -1
  20. package/dist/core/ToolResources.js +6 -31
  21. package/dist/core/ToolResources.js.map +1 -1
  22. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  23. package/dist/core/TurnDispositionHandler.js +7 -2
  24. package/dist/core/TurnDispositionHandler.js.map +1 -1
  25. package/dist/core/TurnRunner.d.ts.map +1 -1
  26. package/dist/core/TurnRunner.js +24 -66
  27. package/dist/core/TurnRunner.js.map +1 -1
  28. package/dist/core/packet-wire.d.ts +0 -6
  29. package/dist/core/packet-wire.d.ts.map +1 -1
  30. package/dist/core/packet-wire.js +4 -20
  31. package/dist/core/packet-wire.js.map +1 -1
  32. package/dist/man/plurnk-service.1 +1 -1
  33. package/dist/server/Daemon.d.ts.map +1 -1
  34. package/dist/server/Daemon.js +6 -1
  35. package/dist/server/Daemon.js.map +1 -1
  36. package/dist/server/Functionality.d.ts +4 -1
  37. package/dist/server/Functionality.d.ts.map +1 -1
  38. package/dist/server/Functionality.js +91 -17
  39. package/dist/server/Functionality.js.map +1 -1
  40. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  41. package/dist/server/FunctionalityManager.js +16 -2
  42. package/dist/server/FunctionalityManager.js.map +1 -1
  43. package/dist/server/MessageDelivery.js +1 -1
  44. package/dist/server/MessageDelivery.js.map +1 -1
  45. package/dist/server/WorkerModels.d.ts +6 -2
  46. package/dist/server/WorkerModels.d.ts.map +1 -1
  47. package/dist/server/WorkerModels.js +57 -17
  48. package/dist/server/WorkerModels.js.map +1 -1
  49. package/dist/server/worker-overview.sql +10 -3
  50. package/package.json +15 -15
  51. package/dist/core/ToolInputSchema.d.ts +0 -7
  52. package/dist/core/ToolInputSchema.d.ts.map +0 -1
  53. package/dist/core/ToolInputSchema.js +0 -65
  54. package/dist/core/ToolInputSchema.js.map +0 -1
package/SPEC.md CHANGED
@@ -3540,6 +3540,7 @@ completion is what wakes it and tells it.
3540
3540
  | Fresh operation/parser failure or incomplete emission, without an authored WAIT | Continue before any automatic parking. |
3541
3541
  | Authored WAIT and live work | Park the same loop; message arrival, child or stream settlement, or wait expiry wakes it ({§worker-wait-timing}). |
3542
3542
  | Fresh failure or incomplete emission after an empty WAIT | Continue; the WAIT cannot conceal the failure. |
3543
+ | Authored WAIT with a delivered reply SEND in the turn, results observed, no live work | Complete remaining published Open Messages with the turn's latest reply SEND and conclude with the aggregate message outcome ({§message-completion}). |
3543
3544
  | Any unresolved message | Continue; an operation-free turn receives {§empty-turn} recovery. |
3544
3545
  | Unobserved operation results, failures, child results or stream conclusions | Continue; the next packet presents them. |
3545
3546
  | All messages resolved and results observed, live work remains | Join that work with the configured bounded park. Replies remain delivered. |
@@ -5519,7 +5520,7 @@ A family that ships no file has a header-only document. Registration also
5519
5520
  validates the adapter's taught `add` example against the `add` input schema it
5520
5521
  teaches, so a wrong example fails boot rather than the model.
5521
5522
 
5522
- §functionality-model-mutation **The model's mutations of a Functionality family settle in authored order.** Every manager verb, including inspection, completes before dispatch proceeds; later operations observe earlier successful configuration changes. The invoking operation and its output remain pending until settlement, and never acknowledge merely starting a future commit; settlement reports `active`, `unavailable`, or `authorization-required`, or the exact publication failure. Resource readiness is not execution liveness: a mutation's `202 authorization-required` body remains exact, while the finished manager execution closes with `200`; it does not wait for sign-in. Shell commands, remote tools, WORK/FORK and streaming READ retain their deliberately asynchronous contracts ({§op-synchronous}).
5523
+ §functionality-model-mutation **The model's mutations of a Functionality family settle in authored order.** Every manager verb, including inspection, completes before dispatch proceeds; later operations observe earlier successful configuration changes. The invoking operation and its output remain pending until settlement, and never acknowledge merely starting a future commit; settlement reports `active`, `unavailable`, or the exact publication failure. When a model mutation publishes `authorization-required`, it announces that sign-in requirement and holds at the workspace boundary ({§module-workspace-quiescence}) until a subsequent publication resolves the alias out of `authorization-required`, then streams that settled outcome. Shell commands, remote tools, WORK/FORK and streaming READ retain their deliberately asynchronous contracts ({§op-synchronous}).
5523
5524
 
5524
5525
  - These core-owned commands use ordinary proposals and durable execution outputs, but not the background-execution slot pool. Preparation and publication share the family's serialized lane; resident publication uses the lease handoff in {§module-workspace-quiescence}, and context-only families retain their existing scope-local serialization.
5525
5526
  - A preparation failure may publish enabled-but-unavailable state for other mutations, but `replace` rejects it ({§functionality-replacement}); a publication failure never reports a successful mutation. Result observation uses the ordinary execution lifecycle, without a separate deferred-commit queue.
@@ -5778,6 +5779,7 @@ packets or state snapshots.
5778
5779
  - A WORK/FORK child copies the spawning loop's effective spawn model (spawn override ?? model) onto the new worker by value at creation; it retains no live link and begins with no override, so a later parent change affects only that worker's future loops and descendants.
5779
5780
  - The runtime worker and other Plurnk-owned bookkeeping workers run no model loops and own no model selection; the model, spawn-override, and effort controls refuse them with `409 model-worker-required` before any policy row is initialized or written.
5780
5781
  - An explicit model, spawn-override, or effort change while the worker holds any queued, running, or parked loop is a precise `409 worker-loop-active` ({§worker-lifecycle-live}), independent of a process-local drain; the policy write checks liveness atomically, including selections carried by new prompts. Reasserting unchanged settings is not a change. Select after concluding or cancelling the unfinished tasks.
5782
+ - An explicit change to a model whose calibrated curation budget ({§tokenomics-calibrated-readout}) cannot hold the worker's current context is refused with a precise `413 context-exceeds-model-budget` naming the current context tokens, the target model, and its budget; curate below that budget or select a larger model.
5781
5783
 
5782
5784
  A client-created branch copies the source worker's durable model, spawn
5783
5785
  override, and effort by value alongside its history. It retains no
@@ -6000,10 +6002,9 @@ FORK is 404 `fork-unaddressed`.
6000
6002
  | {§context-over-budget-row} | Over budget is a row and a request, not an ending. |
6001
6003
  | {§context-wall} | The context wall is the provider's window, and only it ends a loop. |
6002
6004
  | {§context-wall-measure} | The wall measures the request that will be sent. |
6003
- | {§context-own-rows-fit} | The model's own rows take the same receipt. |
6004
6005
  | {§tokenomics-weight-stored-at-write} | Curation weight, stored at write. |
6005
6006
  | {§tokenomics-render-weight-budget} | Packet curation budget. |
6006
- | {§tokenomics-calibrated-readout} | The calibrated readout converts capacity, never content costs; one factor per loop. |
6007
+ | {§tokenomics-calibrated-readout} | The calibrated readout translates capacity by measured evidence, never extrapolating unmeasured content. |
6007
6008
  | {§tokenomics-window-partition} | The window partition: one capacity derivation, no service-side token budget. |
6008
6009
  | {§tokenomics-window-unpollable-deliberate} | An unpollable window is deliberate: unknown provider capacity stays unknown. |
6009
6010
  | {§tokenomics-client-gauge} | Clients receive curation and physical occupancy as separate pairs. |
@@ -6072,7 +6073,6 @@ envelope ({§share-packet-names}); it is not a serialized HTTP capture.
6072
6073
  | Placement | Put one assistant message holding the turn's surviving operations, in program order, immediately before the turn's first surviving receipt; that turn's receipts, fan-out included, and the records between them follow together in the user role, so the model sees each past response as the batch it wrote. Preserve receipt chronology and concrete fan-out targets. No history is collected at the end. `none` adds no assistant section; filtering never makes `latest` fall back. |
6073
6074
  | Curation | A retired operation row loses its replay; retiring one fan-out receipt leaves the operation with its surviving receipts. A body-trimmed authored row is not replayed: its ordinary receipt shows the remaining body. Retiring the emission row removes that turn's replay, not its operation results or immutable source. No legend or separate NOTE-curation path exists. |
6074
6075
  | Authority | Core assembles these chronological sections before the trusted whole-list transform ({§packet-extension-transform}); this is presentation of admitted work, not additional execution or inference. |
6075
- | Capacity | At the hard context wall, omit the selected history whole before suppressing result bodies or native parts ({§context-own-rows-fit}). Unpaired receipts regain their ordinary request facts and authored bodies. Omission lasts through rebuilds of that request; the next request decides afresh. No source, receipt, or stored historical packet changes. |
6076
6076
  | Accounting | The first paired receipt's displayed curation weight includes its assistant operation once. Packet accounting measures each actual message once. The emission row charges only its own record. |
6077
6077
 
6078
6078
  §paired-receipt A paired receipt names its operand and reports execution information, not a second copy of its request.
@@ -6151,23 +6151,21 @@ time of measurement.
6151
6151
  | Provider generation envelope | Provider response grant and optional reasoning subset, in provider tokens | Before every logical request | The reservation includes hidden reasoning; its strict reasoning subset is never additive. The response grant follows {§provider-flexed-allowance}. |
6152
6152
  | Provider usage and cost | Provider-reported input/output/cache/reasoning tokens and monetary evidence | After every physical request | Durable physical-request forensics under {§provider-usage}; never curation state or a preflight estimate. |
6153
6153
 
6154
- §context-admission **Context admission fits one request through the room: estimated, then measured.** Core fits the packet to the wall on its estimate, marks it over budget, then has the provider measure the exact request before it is sent. Shedding is the same at both measures, and only a packet that cannot fit even as receipts ends its loop.
6154
+ §context-admission **Context admission fits one request through the room: estimated, then measured.** Core checks the packet against the wall on its calibrated estimate, marks an over-budget packet with one error row, then has the provider assess the exact request before it is sent. The daemon never hides, folds, or strips stored rows or emission history to make a packet smaller; a packet over the wall by either measure ends its loop.
6155
6155
 
6156
6156
  ```mermaid
6157
6157
  flowchart TD
6158
6158
  build["Build the packet at the budget"] --> wall{"Estimate over the wall?"}
6159
- wall -- yes --> shed["Shed: the emission history whole, then the newest rows bodiless"]
6160
- shed --> wall
6159
+ wall -- yes --> overflow["window-overflow 413, no inference request"]
6161
6160
  wall -- no --> over{"Over budget, no row yet?"}
6162
6161
  over -- yes --> row["One over-budget row at the head of the turn"]
6163
6162
  row --> wall
6164
6163
  over -- no --> assess{"The provider assesses the exact request"}
6165
6164
  assess -- "admit or defer" --> send["Send"]
6166
- assess -- "exact refusal" --> shed
6167
- shed -. "nothing left to take" .-> overflow["window-overflow 413, no inference request"]
6165
+ assess -- "exact refusal" --> overflow
6168
6166
  ```
6169
6167
 
6170
- - §context-budget **The context budget is one room for the whole packet.** The budget is the provider's input capacity through the loop's calibration, `floor(inputCapacity / factor)` ({§tokenomics-calibrated-readout}), and it bounds the whole packet — teaching, catalog, log and gauge together. Nothing on the service panel sizes a part of it: no projection share or preview page. When the loop's first response fixes its factor, the budget follows it either way; a room that shrinks under the model is announced by the over-budget row ({§context-over-budget-row}), never hidden by keeping a larger figure.
6168
+ - §context-budget **The context budget is one room for the whole packet.** The budget is the provider's input capacity translated by the loop's calibration offset, `max(0, inputCapacity + offset)` ({§tokenomics-calibrated-readout}), and it bounds the whole packet — teaching, catalog, log and gauge together. Nothing on the service panel sizes a part of it: no projection share or preview page. When a settled emission updates the offset, the budget follows it either way; a room that shrinks under the model is announced by the over-budget row ({§context-over-budget-row}), never hidden by keeping a larger figure.
6171
6169
  - §context-gauge **One gauge.** Every packet carries one `## Context` section holding one JSON object: `tokens`, the packet's weight as rendered, `budget`, the known room, and `percent`, `floor(100 × tokens / budget)` over the gauge's own final figures, so the share never disagrees with the counts beside it; a zero budget states no share. Only when the packet without an inventory strictly exceeds `PLURNK_SERVICE_BUDGET_PRESSURE` of its budget does `largest` name the `PLURNK_SERVICE_BUDGET_LARGEST_ITEMS` heaviest retained log rows as `{path, tokens}`, ranked by weight then path. Unknown budget omits `budget`, `percent` and `largest`. The final `tokens` includes the inventory; over budget, its full configured count remains available for curation ({§context-over-budget-row}). Each log row heading carries its own `tokens`. The gauge is state: it never presents `budget − tokens` as response allowance and carries no mandate.
6172
6170
  - §context-fit **One rule: whole if it fits, otherwise as much as fits, then its size and address.** A result the model asked for — a READ without a scope, a FIND, an exec result delivered on close — arrives complete when its weight fits within `budget − tokens` as of that turn, less the room the turn still owes — one receipt's measured weight for each result still to land in it and the emission record that answers it, so that the receipts of a batch and the answer always fit. Otherwise the complete result stays where it was read from and the row is a `413` receipt naming the result's size, its weight, the remaining budget, and the two verbs: `READ` a range, or `KILL` first. Result cuts are named where they happen: the first page of what came back unasked in size ({§markerless-first-page}) and the cut at the room in the receipt.
6173
6171
 
@@ -6188,18 +6186,17 @@ flowchart TD
6188
6186
  | Shown once | in the packet it describes, then retired from the projection as a no-match KILL receipt is ({§log-kill-meta-operation}): it stays durable and readable at its coordinate, and a later packet that is over carries its own row |
6189
6187
  | Hides nothing | nothing is hidden to make the packet smaller; the response grant is the window's remainder above the provider's output floor ({§provider-output-floor}) |
6190
6188
 
6191
- - §context-wall **The context wall is the provider's window, and only it ends a loop.** The wall is the provider's physical input limit: `maxInputTokens`, and the context window less the output floor ({§provider-output-floor}). A request over the wall sheds ({§context-own-rows-fit}) and is measured again ({§context-wall-measure}); a packet that cannot fit even as receipts ends its loop with the exact `engine/context/window-overflow` 413 Problem, and no inference request is made. An unknown window has no wall ({§tokenomics-window-unpollable-deliberate}).
6192
- - §context-wall-measure **The wall measures the request that will be sent.** The estimate is the packet's weight through its calibration factor ({§tokenomics-calibrated-readout}) and is never assumed to overestimate. A packet that fits by the estimate is assessed by the provider as the exact wire request ({§provider-capacity-admission}): an admission sends it; an exact refusal is the wall's verdict, and the request sheds by the refusal's excess and is assessed again. A provider that can only estimate defers, and the upstream provider is then the capacity oracle: its refusal ends the loop with the provider's own 413.
6193
- - §context-own-rows-fit **The model's own rows take the same receipt.** When a request is over the wall by either measure ({§context-wall-measure}), its newest rows that still carry a body or a native part — NOTEs, receipts, delivered results, pictures — render bodiless in the fit rule's receipt shape, newest first and only as many as it takes for the request to fit: the heading, the facts, and `size`, the lines and tokens of what the row stood for. The optional emission history has already been omitted whole ({§emission-history}); an emission record has no body to take. A row whose receipt would weigh no less than its body stays whole. Every body stays stored and readable at its address, the verbs restore the room ({§context-verbs}), and each packet decides afresh from its own newest rows. The daemon chooses nothing to summarize and hides nothing silently.
6189
+ - §context-wall **The context wall is the provider's window, and only it ends a loop.** The wall is the provider's physical input limit: `maxInputTokens`, and the context window less the output floor ({§provider-output-floor}). A packet that exceeds the wall by either measure ({§context-wall-measure}) ends its loop with the exact `engine/context/window-overflow` 413 Problem, and no inference request is made. An unknown window has no wall ({§tokenomics-window-unpollable-deliberate}).
6190
+ - §context-wall-measure **The wall measures the request that will be sent.** The estimate is the packet's weight translated by its calibration offset, `max(0, weight − offset)` ({§tokenomics-calibrated-readout}), and is never assumed to overestimate. A packet that fits by the estimate is assessed by the provider as the exact wire request ({§provider-capacity-admission}): an admission sends it; an exact refusal is the wall's verdict and ends the loop. A provider that can only estimate defers, and the upstream provider is then the capacity oracle: its refusal ends the loop with the provider's own 413.
6194
6191
  - §tokenomics-weight-stored-at-write **Curation weight, stored at write.** `entry_channels.weight` weighs the complete channel content. `log_entries.weight` weighs the complete canonical `LogBody` content before coordinate and packet presentation; persistence `tx`/`rx` envelopes contribute nothing merely by existing, and proposal settlement recomputes the value when the canonical result changes. Bodyless rows therefore weigh zero. The stored number is a stable content-depth measurement, not a provider-token prediction. `entry_channels.lines` is the channel's line count beside it, a stored generated column SQLite keeps on every write as the persisted mirror of {§logical-line-count} (a trailing newline terminates the last line; empty content has none), so a catalog lists extent without reading bodies.
6195
6192
  - §tokenomics-render-weight-budget **Packet curation budget.** `tokens` measures the *complete assembled packet* after section transforms and readout substitution, each rendered message (including {§emission-history}) and native attachments; it is not a sum of stored row weights ({§tokenomics-weight-stored-at-write}). Core measures minimum-width probes, monotonically expands fields that do not fit, then right-aligns final values into those widths; final substitution is length-invariant and the displayed total equals the stored request weight. Receipt, FIND-item, pressure-inventory, total, and ceiling figures all use the same curation ruler. A `SUM` of stored content weights measures a different artifact and cannot substitute for packet render weight.
6196
- - §tokenomics-calibrated-readout **The calibrated readout converts capacity, never content costs; one factor per loop.** A sample is a settled emission response pairing its request's measured packet weight with the provider-reported prompt count, both positive. Calibration never changes stored weights, rendered receipt costs, or the immutable request history ({§tokenomics-agnostic-ruler}).
6193
+ - §tokenomics-calibrated-readout **The calibrated readout translates capacity by measured evidence, never extrapolating unmeasured content.** A sample is a settled emission response pairing its request's measured packet weight with the provider-reported prompt count, both positive. Calibration never changes stored weights, rendered receipt costs, or the immutable request history ({§tokenomics-agnostic-ruler}).
6197
6194
 
6198
6195
  | Fact | Rule |
6199
6196
  | --- | --- |
6200
- | The factor | a loop's first sample from the answering model fixes the conversion factor `reported / weight` for the rest of that loop; until then the loop's packets use that model's most recently fixed factor, from any loop or worker, and a model that has none uses 1; the budget therefore changes at most once in a loop, when its first response settles |
6201
- | The conversion | `floor(inputCapacity / factor)` converts provider capacity into curation units, the budget ({§context-budget}); the same factor converts the packet's weight into the wall's estimate ({§context-wall-measure}); zero means no whole curation unit fits, and unknown input capacity remains `null` |
6202
- | The packet | captures this allowance and its factor once for its readout, pressure inventory, wall estimate, and persisted client gauge; later responses cannot change that packet's allowance |
6197
+ | The offset | a loop's latest settled sample from the answering model fixes the additive offset `weight − reported` for its next packet; until the loop settles one of its own, its packets use that model's most recent sample from any loop or worker, and a model that has none uses `0` |
6198
+ | The conversion | `max(0, inputCapacity + offset)` converts provider capacity into curation units, the budget ({§context-budget}), crediting only the tokens saved on the measured packet while budgeting unmeasured growth 1:1; `max(0, weight − offset)` converts the packet's weight into the wall's estimate ({§context-wall-measure}); zero means no room fits, and unknown input capacity remains `null` |
6199
+ | The packet | captures this allowance and its offset once for its readout, pressure inventory, wall estimate, and persisted client gauge; later responses cannot change that packet's allowance |
6203
6200
 
6204
6201
  - §tokenomics-window-partition **The window partition: one capacity derivation, no service-side token budget.** The provider owns model limits, the configured output reservation, and each call's response grant. Its resolved `inputCapacity` supplies the physical denominator exposed to clients and the boundary conversion into curation units ({§tokenomics-calibrated-readout}). Core shapes context in curation units; provider request-shaped evidence alone admits or rejects physical I/O. Local and custom deployments tune context window, total output budget and optional reasoning subset at their owning layers.
6205
6202
  - §tokenomics-window-unpollable-deliberate **An unpollable window is deliberate: unknown provider capacity stays unknown.** When the provider cannot derive `inputCapacity`, there is no budget: the gauge carries `tokens` alone, every result arrives whole, and the provider remains the capacity oracle ({§provider-capacity-admission}). Core never invents a stand-in.
@@ -6235,7 +6232,7 @@ execute, enter model history, or become a later request's successful output.
6235
6232
  | 200 | Messages answered, results observed, held work settled |
6236
6233
  | 499 | Worker-scope or client cancellation |
6237
6234
  | 429 | Turn allowance exhausted |
6238
- | 413 | A result that does not fit ({§context-fit}), a packet over the budget ({§context-over-budget-row}: a row; the request still goes), a packet that cannot fit the window even as receipts ({§context-wall}), or an upstream provider's own refusal ({§context-wall-measure}) |
6235
+ | 413 | A result that does not fit ({§context-fit}), a packet over the budget ({§context-over-budget-row}: a row; the request still goes), a packet that exceeds the window ({§context-wall}), or an upstream provider's own refusal ({§context-wall-measure}) |
6239
6236
  | 500 / 508 | Strike threshold or invalid-emission exhaustion / crossing strike caused by a cycle |
6240
6237
  | 504 | Loop timeout or exec-timeout restamp |
6241
6238
 
@@ -6465,7 +6462,6 @@ of section weights for the rendered request weight.
6465
6462
  | structured `EDIT` receipt or textual `COPY`/`MOVE` effects | complete receipt-owned join context |
6466
6463
  | every other nonempty body | the model's own: complete; what it did not author: its first page ({§markerless-first-page}); then {§context-fit} |
6467
6464
  | the `reasoning` row | the optional reasoning preview under {§reasoning-row} |
6468
- | a row the wall took | its size and address, no body and no native part ({§context-own-rows-fit}) |
6469
6465
  | bodyless row | heading and any facts; no coordinate lines; `tokens` includes any selected native part |
6470
6466
 
6471
6467
  §markerless-first-page **What the model did not ask for in size arrives as its first page.** A READ or FIND without a scope, a stream delivered when a command closes, a peer worker's message, an environment delta, an extension's body and a rejected emission shown back all arrive as their first page: `PLURNK_SERVICE_PREVIEW_LINES` lines and at most `PLURNK_SERVICE_PREVIEW_CHARS` characters, in the projection's own units — lines of text, bytes of a byte view ({§read-bytes}), results of a FIND — with one fact in one notation stating the page and the whole, `<1,100> of 4812 lines` (`range` on a retrieval, `preview` on a stored body, {§packet-extent-metadata}). No operation carries a page size of its own.
@@ -7290,7 +7286,7 @@ Every Problem code core mints is named here under its family ({§problem-error-c
7290
7286
  | code | status | condition |
7291
7287
  |---|---:|---|
7292
7288
  | `result-exceeds-budget` | 413 | A result exceeds the remaining log budget; detail names its size, delivered portion, and a smaller selection or curation ({§context-fit}). |
7293
- | `window-overflow` | 413 | The packet cannot fit the model's window even as receipts ({§context-wall}). |
7289
+ | `window-overflow` | 413 | The packet exceeds the model's window ({§context-wall}). |
7294
7290
  | `packet-exceeds-budget` | 413 | Context exceeds budget; the curation mandate is the pinned sentence below ({§context-over-budget-row}). |
7295
7291
  | `loop-timeout` | 504 | The loop exhausted its active execution allowance. |
7296
7292
  | `strike-threshold` | 508 / 500 | Repetition crossed the strike threshold (508), or another strike source crossed it (500), under {§engine-rails}. |
@@ -7431,6 +7427,10 @@ lists the schemes the workspace registers, and rebuilds the address into nothing
7431
7427
  | `state-not-json` | 400 | Worker module state is not JSON-serializable. |
7432
7428
  | `workspace-busy` | 409 | Workspace *id* is running an operation or another capability change. Recovery: Settle the current operation and retry the capability change. |
7433
7429
  | `not-configured` | 501 | No provider is configured for this worker. Recovery: Select a model for this worker, or set `PLURNK_MODEL=<provider/model>` as the service default; that provider's API key must be in the service's environment. |
7430
+ | `provider-unavailable` | 503 | *route* is unavailable, followed by the provider's instantiation failure when present. |
7431
+ | `effort-unsupported` | 409 | *route* does not support effort '*effort*'. Recovery: Select one of the provider's supported efforts: *supported*. ({§worker-effort}) |
7432
+ | `effort-invalid` | 400 | The effort is invalid. Recovery: Select a valid effort: off, adaptive, low, medium, high, xhigh, max. ({§worker-effort}) |
7433
+ | `context-exceeds-model-budget` | 413 | Current context (*tokens* tokens) does not fit in *route* (budget: *budget* tokens). Recovery: Curate context below *budget* tokens or select a larger model. ({§worker-model-selection}) |
7434
7434
  | `model-worker-required` | 404 | No model worker exists for prompt injection (or to fork). |
7435
7435
  | `name-conflict` | 409 | The worker name is taken. Recovery: Choose another worker name. |
7436
7436
  | `offset-channel-required` | 400 | Recovery: Select the channel to read from the offset. |
@@ -7457,7 +7457,7 @@ lists the schemes the workspace registers, and rebuilds the address into nothing
7457
7457
  | Context exceeds budget. YOU MUST ONLY KILL, MOVE or NOTE this turn. | the over-budget row ({§context-over-budget-row}) |
7458
7458
  | YOU MUST persist all new facts, ideas, and plans in NOTEs on every turn. The turn continued without a NOTE. | a continuing or parked model turn without a NOTE ({§continued-without-note}) |
7459
7459
  | Each directive in the notice table | a notice of the model's own output ({§notice-directive}) |
7460
- | Context window overflow: the packet cannot fit the model's window even as receipts. | the wall ({§context-wall}) |
7460
+ | Context window overflow: the packet exceeds the model's window. | the wall ({§context-wall}) |
7461
7461
  | No recipient implements the requested interaction. | The worker's owner is not interactive or does not declare the required client tool ({§client-interaction-routing}). |
7462
7462
  | Nobody is present to answer. Decide from what you already have, or conclude stating what you could not resolve. | dispatch of an interaction tool the worker's owner would not receive ({§owner-interaction-ring}) |
7463
7463
  | Worker name '*name*' must match `[A-Za-z0-9][A-Za-z0-9_-]{0,62}`. Recovery: Use 1–63 ASCII letters, digits, '_' or '-', starting with a letter or digit. | an invalid worker name |
@@ -1 +1 @@
1
- {"package":"@plurnk/plurnk-service","version":"4.3.0","revision":"d2647f7ec0d352b276714f22a93267aac04634b3","dirty":false}
1
+ {"package":"@plurnk/plurnk-service","version":"4.3.1","revision":"2f0589aa17a79347ff87db4b6d35d6ed689d783f","dirty":false}
@@ -7,6 +7,7 @@ import type { RegistryEntry, RuntimeRegistryRegistration } from "./ExecutorRegis
7
7
  import type { EngineNotifications } from "./notifications.ts";
8
8
  import type { MessageOpener } from "./ChannelWrite.ts";
9
9
  import LoopLifecycle from "./LoopLifecycle.ts";
10
+ import PacketBuilder from "./PacketBuilder.ts";
10
11
  import type { ProposalPendingEvent } from "./ProposalLifecycle.ts";
11
12
  import { type ClientInteractionPendingEvent } from "./ClientInteractions.ts";
12
13
  import type { ClientEntryAcquisition, DispatchContext, DispatchResult } from "./Dispatcher.ts";
@@ -26,7 +27,7 @@ export type WorkspaceTurnStarting = (args: {
26
27
  workerId: number;
27
28
  loopId: number;
28
29
  }) => Promise<readonly Notice[] | void>;
29
- import type { ProviderAccounting } from "@plurnk/plurnk-providers";
30
+ import type { Provider, ProviderAccounting } from "@plurnk/plurnk-providers";
30
31
  import type { RuntimeSchemeFacet } from "@plurnk/plurnk-schemes";
31
32
  import LoopDriver from "./LoopDriver.ts";
32
33
  type ModuleRuntimeRegistration = RuntimeRegistryRegistration & {
@@ -88,6 +89,7 @@ export default class Engine {
88
89
  pathname: string;
89
90
  content: string;
90
91
  }>>;
92
+ workerCurationOverflow(workerId: number, provider: Provider): ReturnType<PacketBuilder["workerCurationOverflow"]>;
91
93
  cancelSubscription(subscriptionId: number): Promise<boolean>;
92
94
  subscriptionConcluded(subscriptionId: number): Promise<void>;
93
95
  reapLoopStreams(loopId: number): Promise<number[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
@@ -420,6 +420,9 @@ export default class Engine {
420
420
  referenceEntries(workspaceId) {
421
421
  return this.#packets.referenceEntries(workspaceId);
422
422
  }
423
+ workerCurationOverflow(workerId, provider) {
424
+ return this.#packets.workerCurationOverflow(workerId, provider);
425
+ }
423
426
  // {§env-delta-log-pull} — materialize one closed interval of the ambient
424
427
  // occurrence journal into this worker's self-contained log. #67 owns only
425
428
  // the remaining model-facing actor-name projection.
@@ -1 +1 @@
1
- {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Engine.js","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,24 @@ SELECT CASE WHEN COUNT(*) > 0 AND MIN(c.status) = 499 THEN 499 ELSE 200 END AS s
57
57
  FROM message_completions c JOIN loop_messages m ON m.id = c.message_id
58
58
  WHERE m.loop_id = $loop_id;
59
59
 
60
+ -- PREP: message_complete_turn_on_wait
61
+ -- {§wait-obligation-matrix} {§message-completion}: a turn with a resolved reply SEND and an idle WAIT
62
+ -- completes the loop's remaining published Open Messages.
63
+ INSERT INTO message_completions (message_id, response_id, status)
64
+ SELECT m.id, reply.id, COALESCE(json_extract(reply.rx, '$.completion'), 200)
65
+ FROM unanswered_messages m
66
+ JOIN (
67
+ SELECT id, rx FROM log_entries
68
+ WHERE turn_id = $turn_id
69
+ AND op = 'SEND' AND origin = 'model' AND state = 'resolved'
70
+ AND status_rx BETWEEN 200 AND 299
71
+ AND source IS NULL AND inherited_history = 0
72
+ AND json_valid(rx) AND json_array_length(rx, '$.answers') > 0
73
+ ORDER BY id DESC
74
+ LIMIT 1
75
+ ) reply
76
+ WHERE m.loop_id = $loop_id AND m.log_entry_id IS NOT NULL;
77
+
60
78
  -- INIT: message_complete_on_reply
61
79
  DROP TRIGGER IF EXISTS message_complete_on_reply;
62
80
  CREATE TRIGGER message_complete_on_reply
@@ -3,7 +3,6 @@ import type { Db } from "./Db.ts";
3
3
  import type SchemeRegistry from "./SchemeRegistry.ts";
4
4
  import type ExecutorRegistry from "./ExecutorRegistry.ts";
5
5
  import type { GitStatus } from "./git-state.ts";
6
- import { type BodiedLogRow } from "./packet-wire.ts";
7
6
  import type { RequestPacket } from "./StoredPacket.ts";
8
7
  import { type ChatMessage, type Provider, type ProviderRequestCapacity } from "@plurnk/plurnk-providers";
9
8
  export type { ChatMessage } from "@plurnk/plurnk-providers";
@@ -12,7 +11,6 @@ export interface WindowOverflow {
12
11
  readonly budget: number | null;
13
12
  readonly wall: number;
14
13
  readonly excess: number;
15
- readonly excessWeight: number;
16
14
  }
17
15
  export interface CurationOverflow {
18
16
  readonly weight: number;
@@ -32,8 +30,7 @@ export default class PacketBuilder {
32
30
  content: string;
33
31
  }>): void;
34
32
  curationBudgetFor(packet: RequestPacket): number | null;
35
- bodiedRowsOf(packet: RequestPacket): readonly BodiedLogRow[];
36
- buildRequestPacket({ initialMessages, recap, workspaceId, workerId, loopId, currentTurnSeq, provider, gitStatus, notices, transientOpenLogEntryId, turnId, bodiless, omitEmissionHistory, }: {
33
+ buildRequestPacket({ initialMessages, recap, workspaceId, workerId, loopId, currentTurnSeq, provider, gitStatus, notices, transientOpenLogEntryId, turnId, }: {
37
34
  initialMessages: ChatMessage[];
38
35
  recap?: string;
39
36
  gitStatus: GitStatus | null;
@@ -45,8 +42,6 @@ export default class PacketBuilder {
45
42
  notices?: readonly Notice[];
46
43
  transientOpenLogEntryId?: number | null;
47
44
  turnId?: number | null;
48
- bodiless?: ReadonlySet<number>;
49
- omitEmissionHistory?: boolean;
50
45
  }): Promise<RequestPacket>;
51
46
  recordObservations(packet: RequestPacket): Promise<void>;
52
47
  referenceEntries(workspaceId: number): Promise<Array<{
@@ -54,6 +49,7 @@ export default class PacketBuilder {
54
49
  content: string;
55
50
  }>>;
56
51
  curationOverflow(packet: RequestPacket): CurationOverflow | null;
52
+ workerCurationOverflow(workerId: number, provider: Provider): Promise<CurationOverflow | null>;
57
53
  windowOverflow(packet: RequestPacket, provider: {
58
54
  readonly inputWall: number | null;
59
55
  }): WindowOverflow | null;
@@ -1 +1 @@
1
- {"version":3,"file":"PacketBuilder.d.ts","sourceRoot":"","sources":["../../src/core/PacketBuilder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAgBhD,OAAmB,EAAE,KAAK,YAAY,EAAqB,MAAM,kBAAkB,CAAC;AAEpF,OAAO,KAAK,EAAoB,aAAa,EAAuB,MAAM,mBAAmB,CAAC;AAG9F,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,QAAQ,EAAE,KAAK,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AA4E1H,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAI5D,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CAC3B;AAID,MAAM,CAAC,OAAO,OAAO,aAAa;;IAiB9B,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;QACpC,EAAE,EAAE,EAAE,CAAC;QACP,OAAO,EAAE,cAAc,CAAC;QACxB,SAAS,EAAE,MAAM,gBAAgB,GAAG,SAAS,CAAC;KACjD,EAKA;IAED,yBAAyB,CAAC,SAAS,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAEhI;IAED,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAEtD;IASD,YAAY,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,YAAY,EAAE,CAI3D;IAIK,kBAAkB,CAAC,EACrB,eAAe,EAAE,KAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAY,EAC7G,uBAA8B,EAC9B,MAAa,EACb,QAAQ,EACR,mBAA2B,GAC9B,EAAE;QACC,eAAe,EAAE,WAAW,EAAE,CAAC;QAE/B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC;QAC5B,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAEtD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,EAAE,QAAQ,CAAC;QAInB,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;QAG5B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAEvB,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAE/B,mBAAmB,CAAC,EAAE,OAAO,CAAC;KACjC,GAAG,OAAO,CAAC,aAAa,CAAC,CAoMzB;IAEK,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAO7D;IAIK,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAsCjG;IAID,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,gBAAgB,GAAG,IAAI,CAM/D;IAID,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,cAAc,GAAG,IAAI,CAO5G;IAID,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,GAAG,cAAc,GAAG,IAAI,CAa7F;IAKK,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC9E,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;KACtB,CAAC,CAAC,CASF;CAiBJ"}
1
+ {"version":3,"file":"PacketBuilder.d.ts","sourceRoot":"","sources":["../../src/core/PacketBuilder.ts"],"names":[],"mappings":"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"}
@@ -95,11 +95,9 @@ const compactDefinitionTables = (markdown) => {
95
95
  // curation stays in scoped KILL; what fits was decided where each row landed ({§context-fit}).
96
96
  export default class PacketBuilder {
97
97
  #db;
98
- // {§tokenomics-calibrated-readout} — admission and client gauges consume the allowance and the factor
98
+ // {§tokenomics-calibrated-readout} — admission and client gauges consume the allowance and the offset
99
99
  // captured before this request can change model evidence.
100
100
  #allowances = new WeakMap();
101
- // {§context-own-rows-fit} — the rows of each built packet the wall may still take, newest last.
102
- #bodiedRows = new WeakMap();
103
101
  #streamObservations = new WeakMap();
104
102
  #schemes;
105
103
  // Boot-discovered runtime executors, late-injected on Engine after daemon
@@ -127,16 +125,9 @@ export default class PacketBuilder {
127
125
  throw new Error("the packet was not built by this PacketBuilder");
128
126
  return allowance;
129
127
  }
130
- // {§context-own-rows-fit} — the packet's rows still carrying a body or a native part, in row order.
131
- bodiedRowsOf(packet) {
132
- const rows = this.#bodiedRows.get(packet.sections);
133
- if (rows === undefined)
134
- throw new Error("bodiedRowsOf: the packet was not built by this PacketBuilder");
135
- return rows;
136
- }
137
128
  // {§packet-stored-shape} — assemble the system/user request before the
138
129
  // provider call; complete the same record with the provider response.
139
- async buildRequestPacket({ initialMessages, recap = "", workspaceId, workerId, loopId, currentTurnSeq, provider, gitStatus, notices = [], transientOpenLogEntryId = null, turnId = null, bodiless, omitEmissionHistory = false, }) {
130
+ async buildRequestPacket({ initialMessages, recap = "", workspaceId, workerId, loopId, currentTurnSeq, provider, gitStatus, notices = [], transientOpenLogEntryId = null, turnId = null, }) {
140
131
  await CapabilityPolicies.layers(this.#db, workspaceId);
141
132
  const byRole = (role) => initialMessages.filter((m) => m.role === role).map((m) => chatMessageText(m)).join("\n\n");
142
133
  // Resource references are discovered through Turn0, not injected. {§schemes-directory}
@@ -169,8 +160,8 @@ export default class PacketBuilder {
169
160
  // {§context-budget} — one room: the provider's input capacity in curation weight, bounding the
170
161
  // whole packet. Nothing here sizes a part of it.
171
162
  const inputCapacity = provider.inputCapacity;
172
- const factor = inputCapacity === null ? 1 : await TokenCalibration.forLoop(this.#db, provider.model, loopId);
173
- const curationBudget = TokenCalibration.capacity(inputCapacity, factor);
163
+ const offset = inputCapacity === null ? 0 : await TokenCalibration.forLoop(this.#db, provider.model, loopId);
164
+ const curationBudget = TokenCalibration.capacity(inputCapacity, offset);
174
165
  const budgetReadout = BudgetReadout.draft(curationBudget);
175
166
  // The canonical default order, trust boundary, and cache-locality bias are
176
167
  // specified at {§packet-cache-monotone}. Budget placeholders resolve only
@@ -215,7 +206,7 @@ export default class PacketBuilder {
215
206
  // {§emission-history}: the emission row selects the program; durable receipt ordinals
216
207
  // locate its operations without moving incoming observations or reasoning receipts.
217
208
  const history = Knob.choice("PLURNK_SERVICE_EMISSION_HISTORY", ["none", "latest", "all"]);
218
- const programs = omitEmissionHistory || history === "none" ? [] : await this.#db.engine_emission_history.all({
209
+ const programs = history === "none" ? [] : await this.#db.engine_emission_history.all({
219
210
  loop_id: loopId, current_turn_seq: currentTurnSeq, latest_only: history === "latest" ? 1 : 0,
220
211
  });
221
212
  const { operations, paired, turns } = OperationHistory.project(log, programs);
@@ -224,7 +215,6 @@ export default class PacketBuilder {
224
215
  const renderedLog = PacketWire.renderLogWithAccounting(log, weighContent, {
225
216
  projectRoot: workspaceRow?.project_root ?? null,
226
217
  acceptedAttachmentKinds: new Set(acceptedKinds(provider.inputModalities)),
227
- ...(bodiless === undefined ? {} : { bodiless }),
228
218
  paired,
229
219
  });
230
220
  const nativeRows = new Map(renderedLog.attachments.map((attachment) => [attachment.coordinate, attachment]));
@@ -316,9 +306,7 @@ export default class PacketBuilder {
316
306
  .reduce((sum, { content }) => sum + weighContent(content), 0);
317
307
  // {§packet-attachment-parts}: all text is already in the ordered messages.
318
308
  const packet = { weight: renderWeight + attachmentsWeight, sections, attributions: [], attachments };
319
- this.#allowances.set(packet.sections, { budget: curationBudget, factor });
320
- // {§context-own-rows-fit} — a transformed log is one item the wall cannot take row by row.
321
- this.#bodiedRows.set(packet.sections, unchangedLog ? renderedLog.bodied : []);
309
+ this.#allowances.set(packet.sections, { budget: curationBudget, offset });
322
310
  this.#streamObservations.set(packet.sections, openChannels);
323
311
  return packet;
324
312
  }
@@ -387,20 +375,40 @@ export default class PacketBuilder {
387
375
  return null;
388
376
  return { weight, budget, excess: weight - budget };
389
377
  }
390
- // {§context-wall-measure} — the estimate: the packet's weight through its own calibration factor against
378
+ // {§worker-model-selection} — measure the worker's current curated context against a candidate
379
+ // provider's budget before admitting a model switch. Null when the worker has not yet built a
380
+ // packet or the candidate model's input capacity is unknown.
381
+ async workerCurationOverflow(workerId, provider) {
382
+ if (provider.inputCapacity === null)
383
+ return null;
384
+ const latest = await this.#db.engine_worker_latest_packet.get({ worker_id: workerId });
385
+ if (latest === undefined)
386
+ return null;
387
+ // oxlint-disable-next-line typescript/no-unsafe-type-assertion -- {§validation-topology}: turns.packet is a stored RequestPacket
388
+ const stored = JSON.parse(latest.packet);
389
+ const packet = await this.buildRequestPacket({
390
+ initialMessages: [{ role: "system", content: PacketWire.sectionContent(stored, "definition") }],
391
+ workspaceId: latest.workspace_id,
392
+ workerId,
393
+ loopId: latest.loop_id,
394
+ currentTurnSeq: 1,
395
+ provider,
396
+ gitStatus: null,
397
+ });
398
+ return this.curationOverflow(packet);
399
+ }
400
+ // {§context-wall-measure} — the estimate: the packet's weight through its own calibration offset against
391
401
  // the provider's input wall; null without a wall or a budget: an unknown window has no wall.
392
402
  windowOverflow(packet, provider) {
393
- const { budget, factor } = this.#allowanceOf(packet);
403
+ const { budget, offset } = this.#allowanceOf(packet);
394
404
  if (budget === null || provider.inputWall === null)
395
405
  return null;
396
- const tokens = Math.ceil(packet.weight * factor);
406
+ const tokens = TokenCalibration.estimatedTokens(packet.weight, offset);
397
407
  if (tokens <= provider.inputWall)
398
408
  return null;
399
- const excessWeight = packet.weight - Math.floor(provider.inputWall / factor);
400
- return { tokens, budget, wall: provider.inputWall, excess: tokens - provider.inputWall, excessWeight };
409
+ return { tokens, budget, wall: provider.inputWall, excess: tokens - provider.inputWall };
401
410
  }
402
- // {§context-wall-measure} — the provider's exact refusal of the wire request, in the packet's own terms:
403
- // the excess it names, shed at the ratio it measured for this packet. Null unless the provider refused.
411
+ // {§context-wall-measure} — the provider's exact refusal of the wire request. Null unless the provider refused.
404
412
  exactOverflow(packet, capacity) {
405
413
  if (capacity.decision !== "reject")
406
414
  return null;
@@ -414,7 +422,6 @@ export default class PacketBuilder {
414
422
  budget: this.curationBudgetFor(packet),
415
423
  wall: inputWall,
416
424
  excess,
417
- excessWeight: Math.ceil(excess * packet.weight / prompt.tokens),
418
425
  };
419
426
  }
420
427
  // Every prior-turn operation failure is durable before packet assembly.