@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.
- package/SPEC.md +21 -21
- package/dist/build-info.json +1 -1
- package/dist/core/Engine.d.ts +3 -1
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +3 -0
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/MessageResources.sql +18 -0
- package/dist/core/PacketBuilder.d.ts +2 -6
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +33 -26
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/PacketBuilder.sql +11 -0
- package/dist/core/TokenCalibration.d.ts +4 -2
- package/dist/core/TokenCalibration.d.ts.map +1 -1
- package/dist/core/TokenCalibration.js +30 -13
- package/dist/core/TokenCalibration.js.map +1 -1
- package/dist/core/TokenCalibration.sql +7 -17
- package/dist/core/ToolResources.d.ts +1 -1
- package/dist/core/ToolResources.d.ts.map +1 -1
- package/dist/core/ToolResources.js +6 -31
- package/dist/core/ToolResources.js.map +1 -1
- package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
- package/dist/core/TurnDispositionHandler.js +7 -2
- package/dist/core/TurnDispositionHandler.js.map +1 -1
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +24 -66
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/packet-wire.d.ts +0 -6
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +4 -20
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/man/plurnk-service.1 +1 -1
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +6 -1
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/Functionality.d.ts +4 -1
- package/dist/server/Functionality.d.ts.map +1 -1
- package/dist/server/Functionality.js +91 -17
- package/dist/server/Functionality.js.map +1 -1
- package/dist/server/FunctionalityManager.d.ts.map +1 -1
- package/dist/server/FunctionalityManager.js +16 -2
- package/dist/server/FunctionalityManager.js.map +1 -1
- package/dist/server/MessageDelivery.js +1 -1
- package/dist/server/MessageDelivery.js.map +1 -1
- package/dist/server/WorkerModels.d.ts +6 -2
- package/dist/server/WorkerModels.d.ts.map +1 -1
- package/dist/server/WorkerModels.js +57 -17
- package/dist/server/WorkerModels.js.map +1 -1
- package/dist/server/worker-overview.sql +10 -3
- package/package.json +15 -15
- package/dist/core/ToolInputSchema.d.ts +0 -7
- package/dist/core/ToolInputSchema.d.ts.map +0 -1
- package/dist/core/ToolInputSchema.js +0 -65
- 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
|
|
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
|
|
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
|
|
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 -->
|
|
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" -->
|
|
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
|
|
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
|
|
6192
|
-
- §context-wall-measure **The wall measures the request that will be sent.** The estimate is the packet's weight
|
|
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
|
|
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
|
|
6201
|
-
| The conversion | `
|
|
6202
|
-
| The packet | captures this allowance and its
|
|
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
|
|
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
|
|
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
|
|
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 |
|
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"package":"@plurnk/plurnk-service","version":"4.3.
|
|
1
|
+
{"package":"@plurnk/plurnk-service","version":"4.3.1","revision":"2f0589aa17a79347ff87db4b6d35d6ed689d783f","dirty":false}
|
package/dist/core/Engine.d.ts
CHANGED
|
@@ -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":"AACA,OAAO,KAAK,EAAE,2BAA2B,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,eAAe,EAAE,UAAU,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACzQ,OAAO,KAAK,cAAc,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAiB,MAAM,0BAA0B,CAAC;AAEpE,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAIlC,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD,OAAO,aAAa,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Engine.d.ts","sourceRoot":"","sources":["../../src/core/Engine.ts"],"names":[],"mappings":"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"}
|
package/dist/core/Engine.js
CHANGED
|
@@ -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.
|
package/dist/core/Engine.js.map
CHANGED
|
@@ -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
|
-
|
|
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;
|
|
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
|
|
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,
|
|
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
|
|
173
|
-
const curationBudget = TokenCalibration.capacity(inputCapacity,
|
|
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 =
|
|
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,
|
|
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
|
-
// {§
|
|
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,
|
|
403
|
+
const { budget, offset } = this.#allowanceOf(packet);
|
|
394
404
|
if (budget === null || provider.inputWall === null)
|
|
395
405
|
return null;
|
|
396
|
-
const tokens =
|
|
406
|
+
const tokens = TokenCalibration.estimatedTokens(packet.weight, offset);
|
|
397
407
|
if (tokens <= provider.inputWall)
|
|
398
408
|
return null;
|
|
399
|
-
|
|
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
|
|
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.
|