@animalabs/agent-framework 0.33.0 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +136 -8
- package/dist/src/agent.d.ts +25 -4
- package/dist/src/agent.d.ts.map +1 -1
- package/dist/src/agent.js +68 -13
- package/dist/src/agent.js.map +1 -1
- package/dist/src/append-all.d.ts +5 -0
- package/dist/src/append-all.d.ts.map +1 -0
- package/dist/src/append-all.js +8 -0
- package/dist/src/append-all.js.map +1 -0
- package/dist/src/context-options.d.ts +9 -6
- package/dist/src/context-options.d.ts.map +1 -1
- package/dist/src/context-options.js +13 -8
- package/dist/src/context-options.js.map +1 -1
- package/dist/src/cut-off-round.js +4 -4
- package/dist/src/dendrite/registry.d.ts.map +1 -1
- package/dist/src/dendrite/registry.js +4 -2
- package/dist/src/dendrite/registry.js.map +1 -1
- package/dist/src/failure-text.d.ts +36 -0
- package/dist/src/failure-text.d.ts.map +1 -0
- package/dist/src/failure-text.js +89 -0
- package/dist/src/failure-text.js.map +1 -0
- package/dist/src/framework.d.ts +94 -30
- package/dist/src/framework.d.ts.map +1 -1
- package/dist/src/framework.js +987 -284
- package/dist/src/framework.js.map +1 -1
- package/dist/src/gate/event-gate.d.ts +40 -6
- package/dist/src/gate/event-gate.d.ts.map +1 -1
- package/dist/src/gate/event-gate.js +66 -25
- package/dist/src/gate/event-gate.js.map +1 -1
- package/dist/src/gate/reply-judge.d.ts +4 -0
- package/dist/src/gate/reply-judge.d.ts.map +1 -1
- package/dist/src/gate/reply-judge.js +12 -3
- package/dist/src/gate/reply-judge.js.map +1 -1
- package/dist/src/gate/suppression-review.js +2 -2
- package/dist/src/gate/suppression-review.js.map +1 -1
- package/dist/src/gate/types.d.ts +7 -0
- package/dist/src/gate/types.d.ts.map +1 -1
- package/dist/src/heartbeat/heartbeat.js +1 -1
- package/dist/src/heartbeat/heartbeat.js.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/inference-bounds.d.ts +2 -1
- package/dist/src/inference-bounds.d.ts.map +1 -1
- package/dist/src/inference-bounds.js +9 -6
- package/dist/src/inference-bounds.js.map +1 -1
- package/dist/src/mcpl/channel-registry.d.ts +57 -13
- package/dist/src/mcpl/channel-registry.d.ts.map +1 -1
- package/dist/src/mcpl/channel-registry.js +136 -24
- package/dist/src/mcpl/channel-registry.js.map +1 -1
- package/dist/src/mcpl/modern-connection.d.ts +109 -15
- package/dist/src/mcpl/modern-connection.d.ts.map +1 -1
- package/dist/src/mcpl/modern-connection.js +593 -86
- package/dist/src/mcpl/modern-connection.js.map +1 -1
- package/dist/src/mcpl/protocol-family.d.ts +3 -1
- package/dist/src/mcpl/protocol-family.d.ts.map +1 -1
- package/dist/src/mcpl/protocol-family.js +15 -9
- package/dist/src/mcpl/protocol-family.js.map +1 -1
- package/dist/src/mcpl/server-connection.d.ts +37 -18
- package/dist/src/mcpl/server-connection.d.ts.map +1 -1
- package/dist/src/mcpl/server-connection.js +31 -16
- package/dist/src/mcpl/server-connection.js.map +1 -1
- package/dist/src/mcpl/tool-presence.d.ts.map +1 -1
- package/dist/src/mcpl/tool-presence.js +10 -6
- package/dist/src/mcpl/tool-presence.js.map +1 -1
- package/dist/src/mcpl/toolset-host.d.ts.map +1 -1
- package/dist/src/mcpl/toolset-host.js +7 -6
- package/dist/src/mcpl/toolset-host.js.map +1 -1
- package/dist/src/mcpl/toolsets-module.d.ts.map +1 -1
- package/dist/src/mcpl/toolsets-module.js +2 -1
- package/dist/src/mcpl/toolsets-module.js.map +1 -1
- package/dist/src/mcpl/types.d.ts +25 -4
- package/dist/src/mcpl/types.d.ts.map +1 -1
- package/dist/src/mcpl/types.js.map +1 -1
- package/dist/src/modules/discord/index.js +1 -1
- package/dist/src/modules/discord/index.js.map +1 -1
- package/dist/src/modules/health/index.js +2 -2
- package/dist/src/modules/health/index.js.map +1 -1
- package/dist/src/modules/history/semantic.js +3 -3
- package/dist/src/modules/history/semantic.js.map +1 -1
- package/dist/src/modules/workspace/index.d.ts.map +1 -1
- package/dist/src/modules/workspace/index.js +4 -3
- package/dist/src/modules/workspace/index.js.map +1 -1
- package/dist/src/modules/workspace/observe.d.ts.map +1 -1
- package/dist/src/modules/workspace/observe.js +2 -1
- package/dist/src/modules/workspace/observe.js.map +1 -1
- package/dist/src/modules/workspace/reconcile.d.ts.map +1 -1
- package/dist/src/modules/workspace/reconcile.js +3 -2
- package/dist/src/modules/workspace/reconcile.js.map +1 -1
- package/dist/src/notice-tags.d.ts +10 -8
- package/dist/src/notice-tags.d.ts.map +1 -1
- package/dist/src/notice-tags.js +10 -8
- package/dist/src/notice-tags.js.map +1 -1
- package/dist/src/presentation.d.ts +2 -1
- package/dist/src/presentation.d.ts.map +1 -1
- package/dist/src/presentation.js +4 -2
- package/dist/src/presentation.js.map +1 -1
- package/dist/src/reasoning-loss.d.ts +5 -0
- package/dist/src/reasoning-loss.d.ts.map +1 -0
- package/dist/src/reasoning-loss.js +8 -0
- package/dist/src/reasoning-loss.js.map +1 -0
- package/dist/src/recovery/offline-branch.d.ts.map +1 -1
- package/dist/src/recovery/offline-branch.js +5 -4
- package/dist/src/recovery/offline-branch.js.map +1 -1
- package/dist/src/recovery/recover-cli.js +2 -1
- package/dist/src/recovery/recover-cli.js.map +1 -1
- package/dist/src/sent-rows.js +1 -1
- package/dist/src/supplied-text.d.ts +1 -1
- package/dist/src/supplied-text.js +3 -3
- package/dist/src/supplied-text.js.map +1 -1
- package/dist/src/thinking-drops.d.ts +2 -0
- package/dist/src/thinking-drops.d.ts.map +1 -1
- package/dist/src/thinking-drops.js.map +1 -1
- package/dist/src/tool-presentation.d.ts.map +1 -1
- package/dist/src/tool-presentation.js +38 -9
- package/dist/src/tool-presentation.js.map +1 -1
- package/dist/src/tune-out/coordinator.d.ts +13 -4
- package/dist/src/tune-out/coordinator.d.ts.map +1 -1
- package/dist/src/tune-out/coordinator.js +33 -16
- package/dist/src/tune-out/coordinator.js.map +1 -1
- package/dist/src/tune-out/tools.d.ts.map +1 -1
- package/dist/src/tune-out/tools.js +2 -1
- package/dist/src/tune-out/tools.js.map +1 -1
- package/dist/src/types/agent.d.ts +39 -5
- package/dist/src/types/agent.d.ts.map +1 -1
- package/dist/src/types/framework.d.ts +43 -8
- package/dist/src/types/framework.d.ts.map +1 -1
- package/dist/src/types/inference-log.d.ts +1 -0
- package/dist/src/types/inference-log.d.ts.map +1 -1
- package/dist/src/types/trace.d.ts +64 -4
- package/dist/src/types/trace.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/agent.ts +71 -14
- package/src/append-all.ts +6 -0
- package/src/context-options.ts +18 -8
- package/src/cut-off-round.ts +4 -4
- package/src/dendrite/registry.ts +4 -2
- package/src/failure-text.ts +88 -0
- package/src/framework.ts +1018 -293
- package/src/gate/event-gate.ts +90 -26
- package/src/gate/reply-judge.ts +12 -3
- package/src/gate/suppression-review.ts +2 -2
- package/src/gate/types.ts +7 -0
- package/src/heartbeat/heartbeat.ts +1 -1
- package/src/index.ts +1 -0
- package/src/inference-bounds.ts +11 -6
- package/src/mcpl/channel-registry.ts +160 -31
- package/src/mcpl/modern-connection.ts +629 -91
- package/src/mcpl/protocol-family.ts +15 -9
- package/src/mcpl/server-connection.ts +28 -15
- package/src/mcpl/tool-presence.ts +10 -5
- package/src/mcpl/toolset-host.ts +7 -6
- package/src/mcpl/toolsets-module.ts +2 -1
- package/src/mcpl/types.ts +25 -4
- package/src/modules/discord/index.ts +1 -1
- package/src/modules/health/index.ts +2 -2
- package/src/modules/history/semantic.ts +3 -3
- package/src/modules/workspace/index.ts +4 -3
- package/src/modules/workspace/observe.ts +2 -1
- package/src/modules/workspace/reconcile.ts +3 -2
- package/src/notice-tags.ts +11 -8
- package/src/presentation.ts +4 -2
- package/src/reasoning-loss.ts +7 -0
- package/src/recovery/offline-branch.ts +5 -4
- package/src/recovery/recover-cli.ts +2 -1
- package/src/sent-rows.ts +1 -1
- package/src/supplied-text.ts +3 -3
- package/src/thinking-drops.ts +2 -0
- package/src/tool-presentation.ts +34 -9
- package/src/tune-out/coordinator.ts +32 -15
- package/src/tune-out/tools.ts +2 -1
- package/src/types/agent.ts +36 -5
- package/src/types/framework.ts +44 -8
- package/src/types/inference-log.ts +1 -0
- package/src/types/trace.ts +66 -4
package/README.md
CHANGED
|
@@ -152,6 +152,25 @@ A turn keeps the messages it opened with whole: at a start that opens a turn, th
|
|
|
152
152
|
|
|
153
153
|
Before inference, modules and MCPL hooks can inject additional context via `gatherContext()`. An `afterUser` injection is stored in the agent's window, as the message `compile()` would have placed after the last user message, so it stays where the agent saw it: the replies after it keep their thinking, and the cache keeps the turns before it. A source's unchanged content isn't stored again while the copy the agent will read as current has it whole: the one its last request held, or a newer one a start stored whose compile then didn't record (it threw, or the start failed before it); once a fold has summarized it or the strategy's window has passed it, it's stored again, as one more row. Where a changed one lands right after the agent's own latest message, with no one else's message between, `[Continue]` still ends the request, after it. A stored row is history to the strategy, capped, sharded, budgeted and folded like any message. Its metadata carries `system: true`, `kind: 'context-injection'` and `contextInjection: { agent, namespace, contentHash, part, parts }`, which `storedInjectionMarkOf` reads, and every other agent's view leaves it out. A module's injection can set `placedEachCompile: true` to be placed by `compile()` at each start instead, near the end, at the cost of the thinking of every reply after its old place.
|
|
154
154
|
|
|
155
|
+
#### Legacy reasoning-loss notices
|
|
156
|
+
|
|
157
|
+
Rows marked with both `metadata.system === true` and
|
|
158
|
+
`metadata.kind === 'reasoning-loss'` are omitted from the agent's compiled
|
|
159
|
+
context and compression inputs only. Stored history is unchanged: history
|
|
160
|
+
`extract`, `search` and around-message lookup still return these notices
|
|
161
|
+
verbatim, and tool output or previously written summaries can reintroduce their
|
|
162
|
+
text. Selection never matches notice text.
|
|
163
|
+
|
|
164
|
+
Hosts opening the same stores should use the package's
|
|
165
|
+
`residentViewFilter(message, agentName)` or
|
|
166
|
+
`subconsciousViewFilter(message, agentName)` rather than copy the view rules.
|
|
167
|
+
On context-manager releases up to at least 0.25.1, a hidden first source can place that
|
|
168
|
+
summary after newer messages; a hidden first or last source makes it permanently
|
|
169
|
+
unmergeable and absent from history overview until anima-research/context-manager#369 or equivalent lands. The release that raises the context-manager dependency floor to a version
|
|
170
|
+
containing that fix should remove this migration limit and the migration test
|
|
171
|
+
`todo`. See the
|
|
172
|
+
[release note](changelog.d/973-reasoning-loss.fixed.md).
|
|
173
|
+
|
|
155
174
|
### Persistence
|
|
156
175
|
|
|
157
176
|
All state is persisted in a [Chronicle](https://github.com/antra-tess/chronicle) store:
|
|
@@ -307,18 +326,19 @@ A pattern that matches no tool is reported once, as a console line and an
|
|
|
307
326
|
A pattern that could name a server's tools is not judged until that server
|
|
308
327
|
has listed them, so late connects and reconnects don't cause early reports.
|
|
309
328
|
|
|
310
|
-
#### Modern MCP servers
|
|
329
|
+
#### Modern MCP servers
|
|
311
330
|
|
|
312
|
-
The same `mcplServers` list also takes servers that speak modern MCP
|
|
313
|
-
|
|
314
|
-
configuration chooses the family, and
|
|
331
|
+
The same `mcplServers` list also takes servers that speak modern MCP,
|
|
332
|
+
reached through the official SDK client: revision `2026-07-28`, and over
|
|
333
|
+
HTTP the 2025 revisions too. The configuration chooses the family, and a
|
|
334
|
+
stdio server speaks `2026-07-28` alone:
|
|
315
335
|
|
|
316
336
|
| Configuration | Family | Transport |
|
|
317
337
|
|---|---|---|
|
|
318
338
|
| `url: 'ws://…'` / `'wss://…'` | MCPL (MCP `2024-11-05`) | WebSocket (`token` / `accessProvider` as `?token=`, or as bearer with `tokenTransport: 'header'`) |
|
|
319
|
-
| `url: 'http://…'` / `'https://…'` | modern MCP | Streamable HTTP (`token` / `accessProvider` as bearer) |
|
|
339
|
+
| `url: 'http://…'` / `'https://…'` | modern MCP (`2026-07-28`, `2025-11-25`, `2025-06-18` or `2025-03-26`, negotiated) | Streamable HTTP (`token` / `accessProvider` as bearer) |
|
|
320
340
|
| `command` | MCPL | stdio |
|
|
321
|
-
| `command` + `protocol: 'modern'` | modern MCP | stdio |
|
|
341
|
+
| `command` + `protocol: 'modern'` | modern MCP (`2026-07-28`) | stdio |
|
|
322
342
|
|
|
323
343
|
```typescript
|
|
324
344
|
{
|
|
@@ -419,6 +439,114 @@ revisions the server says it supports ("none listed" for an empty list), or its
|
|
|
419
439
|
and when the list includes `2026-07-28` it says to configure the server with
|
|
420
440
|
`protocol: 'modern'` (stdio) or reach it over http(s).
|
|
421
441
|
|
|
442
|
+
Over HTTP the revision is negotiated at each connect. The client asks
|
|
443
|
+
`server/discover` first and connects at `2026-07-28` when the server offers
|
|
444
|
+
it. A server that doesn't gets the 2025 `initialize` handshake, which asks
|
|
445
|
+
for `2025-11-25` and accepts `2025-11-25`, `2025-06-18` or `2025-03-26` in
|
|
446
|
+
the answer.
|
|
447
|
+
`listMcplServers()` shows the revision it settles on as `protocolVersion`,
|
|
448
|
+
and its `family` stays `modern`. On a 2025 revision:
|
|
449
|
+
- List changes arrive on the session's standalone stream, which is kept
|
|
450
|
+
open while the session lives, whether or not the server issues a session
|
|
451
|
+
id, unless the server answers its first open with a status that won't
|
|
452
|
+
pass: a 405, which says it offers no stream, a 501 or 505, a 4xx other
|
|
453
|
+
than 408, 409 and 429, or a redirect the SDK doesn't follow, such as one
|
|
454
|
+
off the server's origin. With a `token` or `accessProvider` set, a 401
|
|
455
|
+
first gets one more try, after the SDK refreshes the credential.
|
|
456
|
+
Such an open isn't tried again, and the session's list changes don't
|
|
457
|
+
arrive. A failure to open it that may pass is reported as the
|
|
458
|
+
connection's `error` and tried again, and a stream that drops is
|
|
459
|
+
reopened: the first try waits the server's `retry` hint, or the first
|
|
460
|
+
step of the connection's backoff when it gave none or a hint of 0, and a
|
|
461
|
+
try after a failed one waits the longer of the hint and the connection's
|
|
462
|
+
backoff.
|
|
463
|
+
Its first open, once the connection is up, and a reopen that missed what
|
|
464
|
+
came meanwhile each relist the tools of a server that announces list
|
|
465
|
+
changes, since a change announced while no stream was open never
|
|
466
|
+
arrives.
|
|
467
|
+
- A request's stream that the server closes after a priming event is
|
|
468
|
+
resumed for as long as the request lives. Its cancellation at the
|
|
469
|
+
deadline stops the resume too. A stream cut again before it carried a
|
|
470
|
+
new event id can't be resumed: the SDK sends its resume without the id
|
|
471
|
+
(modelcontextprotocol/typescript-sdk#2499), which the server can't match
|
|
472
|
+
to the call's stream, so the call doesn't get its answer, and fails as
|
|
473
|
+
`no-response`, at the latest at its deadline.
|
|
474
|
+
A call whose stream ends unanswered with nothing to resume from fails
|
|
475
|
+
then, as `no-response`, not at its deadline.
|
|
476
|
+
- The server ends the session by answering 404 to a request that carried
|
|
477
|
+
its id (except the stream's first open, whose 404 can also mean the
|
|
478
|
+
server has no GET route). A call whose POST met the 404 fails as
|
|
479
|
+
`error-response` with `data.httpStatus` 404, and isn't replayed. A call
|
|
480
|
+
whose stream the server's restart cut is `no-response`, since the server
|
|
481
|
+
may have run it. A session that had answered a request gets a new one at
|
|
482
|
+
once, whatever `reconnect` says: the connection emits `close` while its
|
|
483
|
+
`willReconnect` reads true, then `reconnect`, and the framework keeps the
|
|
484
|
+
server and its tools and relists. If the new session can't start,
|
|
485
|
+
`reconnect` decides, as for any lost connection, and a revision verdict
|
|
486
|
+
stops it for good, as on any reconnect. Without `reconnect`, that failure
|
|
487
|
+
emits a second `close`, while `willReconnect` reads false: the server is
|
|
488
|
+
gone. An answered session that ended less than the base interval
|
|
489
|
+
(`reconnectIntervalMs`) after it started gets a new one at once only if
|
|
490
|
+
the last session restarted that way had lived the interval, or there was
|
|
491
|
+
none: a server restarted once soon after a connect costs a restart, not
|
|
492
|
+
the server. A second such young end in a row is a failed connect, as is
|
|
493
|
+
a session's end before it answered anything: it emits `reconnect-failed`
|
|
494
|
+
and `close`, and follows `reconnect` with a growing backoff. So a load
|
|
495
|
+
balancer without sticky sessions, or a rolling upgrade that lands a
|
|
496
|
+
connect on an old node and its requests on a new one, shows up as a
|
|
497
|
+
failing server, with the framework's alert at the fifth attempt, when its
|
|
498
|
+
sessions end within the interval. A deployment whose sessions each live
|
|
499
|
+
longer restarts at most once an interval, and each restart costs the
|
|
500
|
+
calls in flight: the client can't tell a balancer that moves a session's
|
|
501
|
+
requests from a server that restarts. Once the framework's `stop()` has
|
|
502
|
+
begun, an ended session isn't started again, and a new one already
|
|
503
|
+
connecting doesn't come up.
|
|
504
|
+
- A server that moves to `2026-07-28` in place is followed, since the
|
|
505
|
+
session's end brings a new connect, which negotiates afresh. Two more
|
|
506
|
+
answers end a 2025 session, with a session id or without: a 400 carrying
|
|
507
|
+
JSON-RPC `-32022` to any request, as the SDK's 2026 handler answers 2025
|
|
508
|
+
traffic it refuses (`legacy: 'reject'`), and a 405 to a GET for one of
|
|
509
|
+
the session's streams after the server had served it (the standalone
|
|
510
|
+
stream's reopen, or a request stream's resume with its event id), as that
|
|
511
|
+
handler answers a 2025 session it serves statelessly (its default). A call
|
|
512
|
+
refused with `-32022` fails as `error-response` with the server's data,
|
|
513
|
+
its code in the host's log, and isn't replayed. Its words say the server
|
|
514
|
+
refused the session's revision, so the request didn't run, and whether
|
|
515
|
+
this host is reconnecting. A server that keeps serving a 2025 revision
|
|
516
|
+
statelessly to a connection that never had a standalone stream isn't
|
|
517
|
+
followed, unless its upgrade cut a call's stream, whose resume with its
|
|
518
|
+
event id then meets the 405: that connection stays on 2025 until its next
|
|
519
|
+
connect.
|
|
520
|
+
- Each session the server holds by its id is ended with a `DELETE` when the
|
|
521
|
+
connection lets it go, waiting at most 3 s: at `close()`, and so `stop()`
|
|
522
|
+
or a disconnect, a connect in flight included, and when a connect fails
|
|
523
|
+
after its `initialize` was answered. A session the server let go, with a
|
|
524
|
+
404, a `-32022` or such a 405, gets none.
|
|
525
|
+
|
|
526
|
+
On `2026-07-28` too, a dropped stream's retries follow that timing. They
|
|
527
|
+
stop after two failed tries, the SDK's default, on every stream: a listen
|
|
528
|
+
stream that can't be resumed is reopened, with a relist, and a call whose
|
|
529
|
+
stream can't be resumed fails then, as `no-response`, rather than at its
|
|
530
|
+
deadline.
|
|
531
|
+
|
|
532
|
+
A server over HTTP that this client can't negotiate a revision with fails
|
|
533
|
+
with `McplProtocolVersionError`, naming what each side speaks, and is not
|
|
534
|
+
retried: the SDK's own refusal, after which it negotiates no further (a
|
|
535
|
+
`-32022` whose list names a revision from `2026-07-28` on that this client
|
|
536
|
+
doesn't speak, even if the list also names a 2025 revision it does, which
|
|
537
|
+
the message then says); a discovery or `-32022` error that lists no
|
|
538
|
+
revision in common, once the server has also refused the `initialize`
|
|
539
|
+
tried after it (`rejected`); or an `initialize` answered with a revision
|
|
540
|
+
the 2025 handshake doesn't accept, or with none (`mismatch`). `2026-07-28` is
|
|
541
|
+
negotiated through `server/discover` alone, so it isn't accepted from
|
|
542
|
+
`initialize`. An `initialize` that fails without an answer, such as a
|
|
543
|
+
timeout, is no verdict, and is retried as any failed connect is. The
|
|
544
|
+
error's `offeredRevisions` lists the revisions this client offered, and
|
|
545
|
+
`offered` is the first of them. `2024-11-05` isn't one of them over HTTP:
|
|
546
|
+
its HTTP binding was HTTP+SSE, another transport. Over stdio, a discovery
|
|
547
|
+
answer that lists revisions without `2026-07-28` is a verdict too, even one
|
|
548
|
+
the SDK can't read as a DiscoverResult.
|
|
549
|
+
|
|
422
550
|
Server and transport text the framework records has the server's configured credentials replaced, in both engines. That covers connection traces, console lines, stderr traces, ops alerts, and a tool call's failure as its caller, the model and the `tool:failed` trace get it. The credentials are those the configuration holds and those its dials sent: from the url as each dial sends it (a WebSocket dial sets the token in the query, which writes the whole query again, form-encoded, and an access provider's token can be in it; with `tokenTransport: 'header'` it sets none), credential-like path segments and query names, credential-shaped or credential-named query values, and a WebSocket url's userinfo, in their encoded and decoded forms, replaced wherever they occur; every non-empty query parameter as its whole `name=value`, where no letter or digit adjoins it; the static `token`, and each token an access provider handed a dial, the newest sixteen, raw and url-encoded; and a stdio server's `env` values whose names have a part ending in a credential word, such as `GITHUB_TOKEN`, `PGPASSWORD` or `SESSION_COOKIE`, raw and url-encoded. A stdio server's command and arguments aren't derived. Standalone strings shorter than eight characters stay unchanged because they may be ordinary words; short query values are still removed with their parameter names. Treat a submitted configuration as immutable while the server uses it: apply changes with `restartMcplServer(id, newConfig)`. Secrets neither the configuration holds nor a dial sent remain outside this filtering. A JSON-RPC tool answer's result passes through as sent. No error a host's own call gets, whether thrown, rejected with or in an error answer's data, carries a credential this filtering replaces, whoever wrote its words: a server's words are redacted, then bounded, where an error is built from them, the strings in an error answer's data are redacted, and an error a library raised, such as a failed modern connect's, is handed on as its name and its redacted words alone. A stdio child that couldn't be started is refused with Node's words redacted, stopping before Node's quote of a value it refused at once, and a cause that keeps Node's error's name, those words and its `code`. With a configuration that can't be read, the server's words and data are withheld. A failed handshake's `stderrTail` is the end of the server's stderr, with every credential of up to 14,336 characters that reaches into it replaced whole. A number in an error answer's data is matched as JavaScript reads it, so one with more significant digits than a double holds has lost its last digits before it's matched. A close's or a cleanup's failure carries the transports' own words, a child's pid, its server's id and the wait it was given. A connection's events are inputs to the framework's records, which redact them.
|
|
423
551
|
|
|
424
552
|
#### Feature sets
|
|
@@ -785,7 +913,7 @@ A model call that stops making progress is cut, so an agent isn't held by a prov
|
|
|
785
913
|
- **A resident's streamed call**, and an MCPL server's streamed inference request, get membrane's progress bounds where the adapter's stream reports content (`AnthropicAdapter`, `BedrockAdapter`). Before content, a call ends 60 s after its send, or, once a thinking block has started, at the later of that and the block's allowance, its `max_tokens` at 87 tokens a second. Once content has begun, it ends after 150 s without a provider event, or after the block's allowance when the last event was a thinking block's start and the allowance is longer. Membrane's README gives the rules whole.
|
|
786
914
|
- **Every streamed call the framework makes** also gets a flat bound from its last provider event: the larger of a setup term plus that allowance and 1,862 s (`FLAT_MINIMUM_MS`). The setup term is the larger of the before-content and between-events bounds, 150 s by default. So on an adapter with progress bounds the flat bound never runs out first. On one without, such as `OpenAICompatibleAdapter`, it's the only progress bound, and an SSE keepalive comment doesn't restart it, though a data frame that parses as an event does, a provider's own ping object included.
|
|
787
915
|
- **A whole non-streamed call**, a compression's, the reply judge's, or an MCPL server's non-streamed inference request, ends the setup term plus its allowance after its send, or, when it names no `max_tokens`, at the larger of the setup term and the flat minimum, unless its caller passed a `progressTimeoutMs` of its own. Its caller gets the `timeout` error. The event gate's own 20 s judge timeout ends the reply judge's call first at the defaults. Context-manager takes a cut compression call as a transient failure: the lane pauses and tries again, so compression that never lands within its bound shows as a lane that keeps pausing, not as a failed turn, and is a reason to raise the bound. On an adapter whose `complete()` streams under the hood, such as membrane's OpenAI Responses adapter in subscription mode, membrane renews the bound at each parsed provider event, so there it runs from the last event, as a stream's flat bound does.
|
|
788
|
-
- **A turn's call a bound cuts** fails as a `timeout`, and `DefaultErrorPolicy` gives it one fresh call, 1 s later, whatever other failures its turn had, except in a turn sent again after its retries ran out, before one of its rounds has run or had its tool calls cut off, whose failures get no retries. A fresh call that's cut too, with no other failure between, ends the turn, and its `[inference-failed]` note says the call timed out, that the call was made again and timed out again, and
|
|
916
|
+
- **A turn's call a bound cuts** fails as a `timeout`, and `DefaultErrorPolicy` gives it one fresh call, 1 s later, whatever other failures its turn had, except in a turn sent again after its retries ran out, before one of its rounds has run or had its tool calls cut off, whose failures get no retries. A fresh call that's cut too, with no other failure between, ends the turn, and its `[inference-failed]` note says the call timed out, that the call was made again and timed out again, and, for a bound's cut, the reason, which names the bound that ran out and the host's setting for it. A deadline expiry membrane throws (the Anthropic adapter's own watchdogs, the SDK's request timeout, a runtime's fetch timeout on a silent connection) counts the same toward the fresh call and the turn's end, and its note gives no reason: the note gives one only for a bound's cut, a stream's abort or context-manager's refusal of a compile. A bound's cut isn't `retryable`, so a host's own `errorPolicy` that retries only retryable errors gives it no fresh call; an expiry membrane throws stays `retryable`, as membrane made it.
|
|
789
917
|
- **A stream that keeps sending content** isn't ended by any of these, since content is progress.
|
|
790
918
|
|
|
791
919
|
These bounds don't replace the deadlines below them: a silent connection still meets the runtime's own fetch timeout (360 s on Bun 1.4.4) and, on `AnthropicAdapter`, the adapter's 600 s first-event and idle watchdogs, so on a silent connection a bound raised past those is met by them first.
|
|
@@ -819,7 +947,7 @@ The non-streaming path uses `AbortSignal` forwarded to `membrane.stream()`, whic
|
|
|
819
947
|
|
|
820
948
|
A turn whose stream is cancelled this way, or by `agent.cancelStream()`, ends as a stop, whether the stream reports the cancel as `aborted`, as an `error`, or by just closing: one `inference:aborted` carrying the caller's reason (`user` when none was given), a `[turn-interrupted]` note in the agent's context, and never `inference:exhausted`, which is for failed inferences. A stream that membrane aborts on its own, at a deadline or on an error (reason `timeout` or `error`), is a failed inference. `stop()` and an operator's quiesce abandon end a turn as a stop too, with their own reasons, `shutdown` and `quiesce_abandoned`, and write no note, except the `[speech-not-posted]` notice when the turn's rounds left speech unposted (XML tool mode, or a membrane without `roundContent`; see below). A stopped stream still writes its inference-log row, with `success: false`.
|
|
821
949
|
|
|
822
|
-
A caller's stop and an operator's quiesce abandon also reach a turn that has no live stream: one running its modules' `gatherContext`, its MCPL hooks or its compile, one waiting to retry a failed inference or compile (`abortInference()` and an operator's abandon end the wait, and a stop through `Agent.cancelStream()` waits for it to run out), and one whose tool-result guard is waiting to retry after a refusal, which holds only the round's finished stream. The turn ends at its next check, before it sends anything more, as a stop on a live stream ends it, and a turn whose compile fails after the stop ends at the failure, before a provider hold, the error policy's retry or `inference:exhausted`. A caller's stop leaves the note saying the turn was stopped before it sent anything or before it finished, and an operator's abandon leaves none, except the `[speech-not-posted]` notice when the turn's rounds left speech unposted. `abortInference()` returns `true` for such a turn. In the guard's wait, `stop()` ends the turn as a stop with reason `shutdown`, and an operator's abandon ends it as the abandon, even when a caller's stop came first; with both, it ends as `stop()`'s. `stop()` drops a turn in its hooks, its compile or a wait to retry before it sends anything, as before, and drops one whose compile fails while it runs, once a caller's stop has reached it, rather than ending it as that stop. While the failure of a turn's stream is reported (`inference:failed`), the agent no longer holds that stream, so `abortInference()` from a listener reports `false`. A failure to build a turn's request is reported while the turn's check is still ahead, so there `abortInference()` reports `true`, and the turn ends at that check. A caller's stop made where no check of a turn is ahead stops nothing, and doesn't end the agent's next turn: while the agent is idle, while a turn finishes its last delivery, and while a non-streaming turn's tool results wait to start the turn's next call. A turn whose continuation (a budget restart's, or a tool-result guard's retry) waits to start, or whose failed call a provider-capacity hold or a provider's stated wait keeps for its retry, is ended by `abortInference()`, by an operator's quiesce abandon and by `stop()`: the continuation or retry is dropped, and the turn ends with the caller's reason, `quiesce_abandoned` or `shutdown`. After `abortInference()` or an abandon, wakes that arrived meanwhile still run (after the abandon, once the host resumes): those a hold keeps beside the retry, and those the scheduler merged into the retry's or the continuation's start before that start began, which the stop or the abandon puts back in the queue. A stop through `Agent.cancelStream()` stops nothing there.
|
|
950
|
+
A caller's stop and an operator's quiesce abandon also reach a turn that has no live stream: one running its modules' `gatherContext`, its MCPL hooks or its compile, one waiting to retry a failed inference or compile (`abortInference()` and an operator's abandon end the wait, and a stop through `Agent.cancelStream()` waits for it to run out), and one whose tool-result guard is waiting to retry after a refusal, which holds only the round's finished stream. The turn ends at its next check, before it sends anything more, as a stop on a live stream ends it, and a turn whose compile fails after the stop ends at the failure, before a provider hold, the error policy's retry or `inference:exhausted`. A caller's stop leaves the note saying the turn was stopped before it sent anything or before it finished, and an operator's abandon leaves none, except the `[speech-not-posted]` notice when the turn's rounds left speech unposted. `abortInference()` returns `true` for such a turn. In the guard's wait, `stop()` ends the turn as a stop with reason `shutdown`, and an operator's abandon ends it as the abandon, even when a caller's stop came first; with both, it ends as `stop()`'s. `stop()` drops a turn in its hooks, its compile or a wait to retry before it sends anything, as before, and drops one whose compile fails while it runs, once a caller's stop has reached it, rather than ending it as that stop. While the failure of a turn's stream is reported (`inference:failed`), the agent no longer holds that stream, so `abortInference()` from a listener reports `false`. A failure to build a turn's request is reported while the turn's check is still ahead, so there `abortInference()` reports `true`, and the turn ends at that check. A caller's stop made where no check of a turn is ahead stops nothing, and doesn't end the agent's next turn: while the agent is idle, except for a turn a budget hold keeps (below), while a turn finishes its last delivery, and while a non-streaming turn's tool results wait to start the turn's next call. A turn whose continuation (a budget restart's, or a tool-result guard's retry) waits to start, or whose failed call a provider-capacity hold or a provider's stated wait keeps for its retry, is ended by `abortInference()`, by an operator's quiesce abandon and by `stop()`: the continuation or retry is dropped, and the turn ends with the caller's reason, `quiesce_abandoned` or `shutdown`. After `abortInference()` or an abandon, wakes that arrived meanwhile still run (after the abandon, once the host resumes): those a hold keeps beside the retry, and those the scheduler merged into the retry's or the continuation's start before that start began, which the stop or the abandon puts back in the queue. A stop through `Agent.cancelStream()` stops nothing there. A turn a budget hold keeps waiting for compression is idle: `abortInference()` and `stop()` end it with one `inference:aborted`, and after `abortInference()` the wakes that joined it go back in the queue; a quiesce has nothing of it to abandon. Once released, a first start is a queued wake until its start begins, which `abortInference()` leaves to run, and a continuation is a queued continuation, which it ends.
|
|
823
951
|
|
|
824
952
|
In XML tool mode, or with a membrane that gives a tool round no `roundContent`, such a round's speech reaches a channel only when its stream completes. When the stream ends any other way (a failure, a stop, a tool that ends the turn, an error policy's retry, a context-budget or tool-result-guard restart, a quiesce abandon or `stop()`), the rounds' words are already in the agent's context, and a `[speech-not-posted]` notice tells the agent that nothing it wrote before its tool calls in those rounds was posted, so it can send what should go out again. It's written once for those rounds: where the turn ends, or before a retry's or a restart's request is sent. A turn its own `skip_reply` ends, a silent turn, a round still waiting on its tools when its stream ends (which never reaches the context) and the rounds of a stream that completes get none. In XML tool mode with thinking on, a round whose text was only thinking gets the notice too, since the framework has only the round's raw text there. A failed turn's `[inference-failed]` note says that its earlier rounds ran when any round reached the context with its results, and that a round's tool calls were started and may have taken effect when any of its streams ended before that round's results came back; a caller's stop says the latter in its `[turn-interrupted]` note too. A turn that fails, or that a caller stops, writes no `[delivered]` receipt, so when its rounds' plain speech was delivered live (native tool mode, in locus or hybrid routing), its `[inference-failed]` note, or the stop's `[turn-interrupted]` note, says that speech was handed on for delivery as written and that no `[delivered]` line was written for it. When some of its speech was still being routed as the turn ended, the note also says it may yet be posted and to check the channel before sending it again. A delivery that finished undelivered gets neither: a channel delivery's `[discord-send-failed]` note, or a refused `>>>` envelope's bounce, already says what happened. A quiesce abandon and `stop()` write neither note.
|
|
825
953
|
|
package/dist/src/agent.d.ts
CHANGED
|
@@ -78,6 +78,11 @@ export interface StartStreamResult {
|
|
|
78
78
|
* far in sent order, with this request's head (context-manager's `noteRequestSent`). Present only where the
|
|
79
79
|
* model binds its thinking and the context manager keeps a record it can be told of. */
|
|
80
80
|
noteRequestSent?: (rows: readonly SentRow[]) => boolean;
|
|
81
|
+
/** Tells the context manager which stored bodies' thinking the provider dropped from a call of this stream, by the
|
|
82
|
+
* ids `placeDrops` gives for a `reply` drop, with the compile the stream was built from (context-manager's
|
|
83
|
+
* `noteThinkingDropped`), so, once the context manager takes the note, its record leaves them without their
|
|
84
|
+
* thinking from the next compile on. Present only where `noteRequestSent` is. */
|
|
85
|
+
noteThinkingDropped?: (messageIds: readonly MessageId[]) => boolean;
|
|
81
86
|
/** The stored bodies the request's compile carried, by each body's first message id (its provenance's raw bodies).
|
|
82
87
|
* Absent when the compile reports no provenance. */
|
|
83
88
|
carriedBodies?: ReadonlySet<MessageId>;
|
|
@@ -238,6 +243,7 @@ export declare class Agent {
|
|
|
238
243
|
* the next change.
|
|
239
244
|
*/
|
|
240
245
|
private liveBudgetEpoch;
|
|
246
|
+
private contextSettingsChangeCount;
|
|
241
247
|
/**
|
|
242
248
|
* Counts changes of the descent (each arm of one, the same target included,
|
|
243
249
|
* a reset, a cancel, a settle). A settle proves its target only to a
|
|
@@ -362,6 +368,10 @@ export declare class Agent {
|
|
|
362
368
|
* doubles working while making the new capability optional at runtime. */
|
|
363
369
|
private getHotContextSettings;
|
|
364
370
|
private updateHotContextSettings;
|
|
371
|
+
/** How many times the live budget, its descent target or the hot context
|
|
372
|
+
* settings have changed.
|
|
373
|
+
* @internal For the framework's budget holds; not a host API. */
|
|
374
|
+
contextSettingsChanges(): number;
|
|
365
375
|
getRuntimeSettings(): AgentRuntimeSettingsSnapshot;
|
|
366
376
|
getRuntimeSettingsOverrides(): AgentRuntimeSettingsOverrides;
|
|
367
377
|
/**
|
|
@@ -719,8 +729,8 @@ export declare class Agent {
|
|
|
719
729
|
/**
|
|
720
730
|
* A host's hook, called with each committing compile's `thinkingStrip` (never a dry run's) and the key of the
|
|
721
731
|
* branch it read (`branchKey`), as the compile returns, whether or not its request is then sent, since the
|
|
722
|
-
* context manager's binding record takes the strip either way. One that throws is logged.
|
|
723
|
-
*
|
|
732
|
+
* context manager's binding record takes the strip either way. One that throws is logged. It is observational only;
|
|
733
|
+
* the framework does not write agent-facing reasoning-loss notices.
|
|
724
734
|
*/
|
|
725
735
|
onThinkingStrip?: (strip: ThinkingStrip, branch: string) => void;
|
|
726
736
|
/**
|
|
@@ -748,6 +758,16 @@ export declare class Agent {
|
|
|
748
758
|
contentHash: string;
|
|
749
759
|
whole: boolean;
|
|
750
760
|
} | undefined;
|
|
761
|
+
/** Set the unsent point where it isn't set, as a start's plan does: a row
|
|
762
|
+
* stored after it counts as in no request until a compile built to send.
|
|
763
|
+
* @internal For the framework's budget holds; not a host API. */
|
|
764
|
+
markUnsentPoint(): void;
|
|
765
|
+
/** The ids of this agent's stored injections, of every namespace, stored
|
|
766
|
+
* on its branch since its last compile built to send and in its window
|
|
767
|
+
* where it's presented, in the record's order, a sharded body's first
|
|
768
|
+
* shard first: the rows unsentInjection counts, which no request has
|
|
769
|
+
* carried. Reads only, so an unset point gives none. */
|
|
770
|
+
unsentInjectionRows(): MessageId[];
|
|
751
771
|
/** Record which of this agent's stored injections a compile built to send
|
|
752
772
|
* rendered. Another agent's stored rows never reach this agent's compile,
|
|
753
773
|
* since every compile of a shared store leaves them out by its view
|
|
@@ -875,8 +895,9 @@ export declare class Agent {
|
|
|
875
895
|
* other model, since thinking is off there.
|
|
876
896
|
*/
|
|
877
897
|
private requestThinking;
|
|
878
|
-
/** The stream's way to tell the context manager what its later rounds sent, with the head its compile was given
|
|
879
|
-
* where the agent's model binds its thinking
|
|
898
|
+
/** The stream's way to tell the context manager what its later rounds sent, with the head its compile was given,
|
|
899
|
+
* and which stored bodies' thinking the provider dropped: where the agent's model binds its thinking
|
|
900
|
+
* (context-manager's `noteRequestSent` and `noteThinkingDropped`). */
|
|
880
901
|
private requestNotes;
|
|
881
902
|
/**
|
|
882
903
|
* The binding a compile of this agent is told of (bindingCompileOptions), and a preview of its context too: the
|
package/dist/src/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/src/agent.js
CHANGED
|
@@ -17,6 +17,7 @@ import { CONTINUE_ROW, continueTurn, indexRequestOnlyRows, renderRequestOnlyRows
|
|
|
17
17
|
import { randomUUID } from 'node:crypto';
|
|
18
18
|
import { resolveClockConfig } from './clock-rows.js';
|
|
19
19
|
import { nonErrorResultText, truncateForHistory, DEFAULT_TOOL_RESULT_INLINE_MAX_CHARS, } from './tool-result-history.js';
|
|
20
|
+
import { appendAll } from './append-all.js';
|
|
20
21
|
/** The render stats of the dry compile behind each request a dry run
|
|
21
22
|
* assembled (`assembleActivationRequest` with `dryRun`), by that request.
|
|
22
23
|
* A request that is sent has none here. Read through the framework's
|
|
@@ -253,6 +254,7 @@ export class Agent {
|
|
|
253
254
|
* the next change.
|
|
254
255
|
*/
|
|
255
256
|
liveBudgetEpoch = 0;
|
|
257
|
+
contextSettingsChangeCount = 0;
|
|
256
258
|
/**
|
|
257
259
|
* Counts changes of the descent (each arm of one, the same target included,
|
|
258
260
|
* a reset, a cancel, a settle). A settle proves its target only to a
|
|
@@ -493,7 +495,18 @@ export class Agent {
|
|
|
493
495
|
if (typeof manager.updateHotContextSettings !== 'function') {
|
|
494
496
|
throw new Error('The active context strategy does not support live context settings');
|
|
495
497
|
}
|
|
496
|
-
|
|
498
|
+
const settings = (s) => JSON.stringify([s?.tailTokens, s?.transitionPaceTokens, s?.preparedWindowTokens]);
|
|
499
|
+
const before = settings(this.getHotContextSettings());
|
|
500
|
+
const status = manager.updateHotContextSettings(update);
|
|
501
|
+
if (settings(status) !== before)
|
|
502
|
+
this.contextSettingsChangeCount++;
|
|
503
|
+
return status;
|
|
504
|
+
}
|
|
505
|
+
/** How many times the live budget, its descent target or the hot context
|
|
506
|
+
* settings have changed.
|
|
507
|
+
* @internal For the framework's budget holds; not a host API. */
|
|
508
|
+
contextSettingsChanges() {
|
|
509
|
+
return this.contextSettingsChangeCount;
|
|
497
510
|
}
|
|
498
511
|
getRuntimeSettings() {
|
|
499
512
|
const hot = this.getHotContextSettings();
|
|
@@ -556,6 +569,8 @@ export class Agent {
|
|
|
556
569
|
this.liveBudgetEpoch++;
|
|
557
570
|
if (armed || target !== this.contextBudgetTargetTokens)
|
|
558
571
|
this.descentEpoch++;
|
|
572
|
+
if (budget !== this.contextBudgetTokens || target !== this.contextBudgetTargetTokens)
|
|
573
|
+
this.contextSettingsChangeCount++;
|
|
559
574
|
this.contextBudgetTokens = budget;
|
|
560
575
|
this.contextBudgetTargetTokens = target;
|
|
561
576
|
}
|
|
@@ -596,7 +611,7 @@ export class Agent {
|
|
|
596
611
|
}
|
|
597
612
|
finally {
|
|
598
613
|
this.compilesRunning.delete(started);
|
|
599
|
-
const earliest =
|
|
614
|
+
const earliest = [...this.compilesRunning].reduce((min, start) => Math.min(min, start), Infinity);
|
|
600
615
|
for (const [budget, start] of this.latestEndedStart) {
|
|
601
616
|
if (start < earliest)
|
|
602
617
|
this.latestEndedStart.delete(budget);
|
|
@@ -1344,8 +1359,8 @@ export class Agent {
|
|
|
1344
1359
|
/**
|
|
1345
1360
|
* A host's hook, called with each committing compile's `thinkingStrip` (never a dry run's) and the key of the
|
|
1346
1361
|
* branch it read (`branchKey`), as the compile returns, whether or not its request is then sent, since the
|
|
1347
|
-
* context manager's binding record takes the strip either way. One that throws is logged.
|
|
1348
|
-
*
|
|
1362
|
+
* context manager's binding record takes the strip either way. One that throws is logged. It is observational only;
|
|
1363
|
+
* the framework does not write agent-facing reasoning-loss notices.
|
|
1349
1364
|
*/
|
|
1350
1365
|
onThinkingStrip;
|
|
1351
1366
|
/**
|
|
@@ -1372,12 +1387,9 @@ export class Agent {
|
|
|
1372
1387
|
unsentInjection(namespace) {
|
|
1373
1388
|
let newest;
|
|
1374
1389
|
try {
|
|
1375
|
-
const
|
|
1376
|
-
const since = this.unsentSince.get(branch);
|
|
1390
|
+
const since = this.unsentSince.get(branchKey(this.contextManager.currentBranchRef()));
|
|
1377
1391
|
if (since === undefined) {
|
|
1378
|
-
|
|
1379
|
-
const top = count > 0 ? this.contextManager.getMessageWindow(count - 1, 1, { resolveBlobs: false }).messages[0]?.sequence ?? 0 : 0;
|
|
1380
|
-
this.unsentSince.set(branch, top);
|
|
1392
|
+
this.markUnsentPoint();
|
|
1381
1393
|
return undefined;
|
|
1382
1394
|
}
|
|
1383
1395
|
scan: for (let end = this.contextManager.getMessageCount(); end > 0;) {
|
|
@@ -1418,6 +1430,45 @@ export class Agent {
|
|
|
1418
1430
|
}
|
|
1419
1431
|
return newest && { contentHash: newest.contentHash, whole: newest.held.size === newest.parts };
|
|
1420
1432
|
}
|
|
1433
|
+
/** Set the unsent point where it isn't set, as a start's plan does: a row
|
|
1434
|
+
* stored after it counts as in no request until a compile built to send.
|
|
1435
|
+
* @internal For the framework's budget holds; not a host API. */
|
|
1436
|
+
markUnsentPoint() {
|
|
1437
|
+
const branch = branchKey(this.contextManager.currentBranchRef());
|
|
1438
|
+
if (this.unsentSince.has(branch))
|
|
1439
|
+
return;
|
|
1440
|
+
const count = this.contextManager.getMessageCount();
|
|
1441
|
+
const top = count > 0 ? this.contextManager.getMessageWindow(count - 1, 1, { resolveBlobs: false }).messages[0]?.sequence ?? 0 : 0;
|
|
1442
|
+
this.unsentSince.set(branch, top);
|
|
1443
|
+
}
|
|
1444
|
+
/** The ids of this agent's stored injections, of every namespace, stored
|
|
1445
|
+
* on its branch since its last compile built to send and in its window
|
|
1446
|
+
* where it's presented, in the record's order, a sharded body's first
|
|
1447
|
+
* shard first: the rows unsentInjection counts, which no request has
|
|
1448
|
+
* carried. Reads only, so an unset point gives none. */
|
|
1449
|
+
unsentInjectionRows() {
|
|
1450
|
+
const ids = [];
|
|
1451
|
+
const since = this.unsentSince.get(branchKey(this.contextManager.currentBranchRef()));
|
|
1452
|
+
if (since === undefined)
|
|
1453
|
+
return ids;
|
|
1454
|
+
const presented = this.contextManager.windowMode?.() === 'presented';
|
|
1455
|
+
scan: for (let end = this.contextManager.getMessageCount(); end > 0;) {
|
|
1456
|
+
const span = Math.min(end, 64);
|
|
1457
|
+
const { messages } = this.contextManager.getMessageWindow(end - span, span, { resolveBlobs: false });
|
|
1458
|
+
for (let i = messages.length - 1; i >= 0; i--) {
|
|
1459
|
+
const row = messages[i];
|
|
1460
|
+
if (row.sequence <= since)
|
|
1461
|
+
break scan;
|
|
1462
|
+
if (storedInjectionMarkOf(row.metadata)?.agent !== this.name)
|
|
1463
|
+
continue;
|
|
1464
|
+
if (presented && this.contextManager.windowStatusOf(row.id) !== 'in')
|
|
1465
|
+
continue;
|
|
1466
|
+
ids.push(row.id);
|
|
1467
|
+
}
|
|
1468
|
+
end -= span;
|
|
1469
|
+
}
|
|
1470
|
+
return ids.reverse();
|
|
1471
|
+
}
|
|
1421
1472
|
/** Record which of this agent's stored injections a compile built to send
|
|
1422
1473
|
* rendered. Another agent's stored rows never reach this agent's compile,
|
|
1423
1474
|
* since every compile of a shared store leaves them out by its view
|
|
@@ -1678,7 +1729,7 @@ export class Agent {
|
|
|
1678
1729
|
// inferring, sends the same ones.
|
|
1679
1730
|
unguardedResults ??= this._state.status === 'ready' && !guardedResults
|
|
1680
1731
|
? this.buildToolResultMessages(this._state.toolResults) : [];
|
|
1681
|
-
messages
|
|
1732
|
+
appendAll(messages, unguardedResults);
|
|
1682
1733
|
return {
|
|
1683
1734
|
messages: this.toolResultGuard.prepareRequest(messages, true),
|
|
1684
1735
|
system: this.buildSystemPrompt(systemInjections),
|
|
@@ -1993,8 +2044,9 @@ export class Agent {
|
|
|
1993
2044
|
const own = this.thinking !== null && typeof this.thinking === 'object' ? this.thinking : { enabled: false };
|
|
1994
2045
|
return { ...own, blockBinding: { prefixMismatchBehavior: 'drop_block' } };
|
|
1995
2046
|
}
|
|
1996
|
-
/** The stream's way to tell the context manager what its later rounds sent, with the head its compile was given
|
|
1997
|
-
* where the agent's model binds its thinking
|
|
2047
|
+
/** The stream's way to tell the context manager what its later rounds sent, with the head its compile was given,
|
|
2048
|
+
* and which stored bodies' thinking the provider dropped: where the agent's model binds its thinking
|
|
2049
|
+
* (context-manager's `noteRequestSent` and `noteThinkingDropped`). */
|
|
1998
2050
|
requestNotes(binding, compiled) {
|
|
1999
2051
|
const identity = binding.identity;
|
|
2000
2052
|
// Each note names the compile the stream was built from, so a note can't vouch for this stream under a record a
|
|
@@ -2004,7 +2056,10 @@ export class Agent {
|
|
|
2004
2056
|
if (!identity || compileId === undefined)
|
|
2005
2057
|
return {};
|
|
2006
2058
|
const cm = this.contextManager;
|
|
2007
|
-
return {
|
|
2059
|
+
return {
|
|
2060
|
+
noteRequestSent: (rows) => cm.noteRequestSent(rows, identity, compileId),
|
|
2061
|
+
noteThinkingDropped: (messageIds) => cm.noteThinkingDropped(messageIds, compileId),
|
|
2062
|
+
};
|
|
2008
2063
|
}
|
|
2009
2064
|
/**
|
|
2010
2065
|
* The binding a compile of this agent is told of (bindingCompileOptions), and a preview of its context too: the
|