@namzu/sdk 1.1.0 → 1.3.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/CHANGELOG.md +98 -0
- package/dist/bridge/a2a/mapper.d.ts.map +1 -1
- package/dist/bridge/a2a/mapper.js +2 -0
- package/dist/bridge/a2a/mapper.js.map +1 -1
- package/dist/bridge/sse/mapper.d.ts.map +1 -1
- package/dist/bridge/sse/mapper.js +4 -0
- package/dist/bridge/sse/mapper.js.map +1 -1
- package/dist/{runtime/query → constants}/continuation.d.ts +5 -0
- package/dist/constants/continuation.d.ts.map +1 -0
- package/dist/{runtime/query → constants}/continuation.js +5 -0
- package/dist/constants/continuation.js.map +1 -0
- package/dist/constants/index.d.ts +1 -0
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +1 -0
- package/dist/constants/index.js.map +1 -1
- package/dist/manager/run/persistence.d.ts +11 -0
- package/dist/manager/run/persistence.d.ts.map +1 -1
- package/dist/manager/run/persistence.js +30 -1
- package/dist/manager/run/persistence.js.map +1 -1
- package/dist/provider/__tests__/registry.test.d.ts +5 -0
- package/dist/provider/__tests__/registry.test.d.ts.map +1 -1
- package/dist/provider/__tests__/registry.test.js +186 -1
- package/dist/provider/__tests__/registry.test.js.map +1 -1
- package/dist/provider/capabilities.d.ts +27 -0
- package/dist/provider/capabilities.d.ts.map +1 -0
- package/dist/provider/capabilities.js +29 -0
- package/dist/provider/capabilities.js.map +1 -0
- package/dist/provider/index.d.ts +3 -1
- package/dist/provider/index.d.ts.map +1 -1
- package/dist/provider/index.js +2 -1
- package/dist/provider/index.js.map +1 -1
- package/dist/provider/registry.d.ts +81 -1
- package/dist/provider/registry.d.ts.map +1 -1
- package/dist/provider/registry.js +173 -7
- package/dist/provider/registry.js.map +1 -1
- package/dist/public-runtime.d.ts +3 -2
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +2 -2
- package/dist/public-runtime.js.map +1 -1
- package/dist/run/reporter.d.ts.map +1 -1
- package/dist/run/reporter.js +8 -0
- package/dist/run/reporter.js.map +1 -1
- package/dist/runtime/query/__tests__/capability-negotiation.test.d.ts +2 -0
- package/dist/runtime/query/__tests__/capability-negotiation.test.d.ts.map +1 -0
- package/dist/runtime/query/__tests__/capability-negotiation.test.js +184 -0
- package/dist/runtime/query/__tests__/capability-negotiation.test.js.map +1 -0
- package/dist/runtime/query/__tests__/checkpoint-store.test.d.ts +2 -0
- package/dist/runtime/query/__tests__/checkpoint-store.test.d.ts.map +1 -0
- package/dist/runtime/query/__tests__/checkpoint-store.test.js +259 -0
- package/dist/runtime/query/__tests__/checkpoint-store.test.js.map +1 -0
- package/dist/runtime/query/__tests__/checkpoint.test.js +9 -3
- package/dist/runtime/query/__tests__/checkpoint.test.js.map +1 -1
- package/dist/runtime/query/__tests__/orphan-task-turn-end.test.d.ts +2 -0
- package/dist/runtime/query/__tests__/orphan-task-turn-end.test.d.ts.map +1 -0
- package/dist/runtime/query/__tests__/orphan-task-turn-end.test.js +110 -0
- package/dist/runtime/query/__tests__/orphan-task-turn-end.test.js.map +1 -0
- package/dist/runtime/query/checkpoint.d.ts +16 -2
- package/dist/runtime/query/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/checkpoint.js +21 -7
- package/dist/runtime/query/checkpoint.js.map +1 -1
- package/dist/runtime/query/context.d.ts +7 -0
- package/dist/runtime/query/context.d.ts.map +1 -1
- package/dist/runtime/query/context.js +1 -0
- package/dist/runtime/query/context.js.map +1 -1
- package/dist/runtime/query/index.d.ts +20 -0
- package/dist/runtime/query/index.d.ts.map +1 -1
- package/dist/runtime/query/index.js +75 -6
- package/dist/runtime/query/index.js.map +1 -1
- package/dist/runtime/query/iteration/index.d.ts +3 -57
- package/dist/runtime/query/iteration/index.d.ts.map +1 -1
- package/dist/runtime/query/iteration/index.js +246 -735
- package/dist/runtime/query/iteration/index.js.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/checkpoint.js +22 -0
- package/dist/runtime/query/iteration/phases/checkpoint.js.map +1 -1
- package/dist/runtime/query/iteration/phases/context.d.ts +1 -2
- package/dist/runtime/query/iteration/phases/context.d.ts.map +1 -1
- package/dist/runtime/query/iteration/phases/context.js.map +1 -1
- package/dist/runtime/query/iteration/stream-turn.d.ts +35 -0
- package/dist/runtime/query/iteration/stream-turn.d.ts.map +1 -0
- package/dist/runtime/query/iteration/stream-turn.js +341 -0
- package/dist/runtime/query/iteration/stream-turn.js.map +1 -0
- package/dist/runtime/query/replay/list.d.ts +17 -1
- package/dist/runtime/query/replay/list.d.ts.map +1 -1
- package/dist/runtime/query/replay/list.js +21 -4
- package/dist/runtime/query/replay/list.js.map +1 -1
- package/dist/runtime/query/replay/prepare.d.ts +10 -0
- package/dist/runtime/query/replay/prepare.d.ts.map +1 -1
- package/dist/runtime/query/replay/prepare.js +20 -4
- package/dist/runtime/query/replay/prepare.js.map +1 -1
- package/dist/store/index.d.ts +1 -0
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js +1 -0
- package/dist/store/index.js.map +1 -1
- package/dist/store/run/checkpoint-disk.d.ts +28 -0
- package/dist/store/run/checkpoint-disk.d.ts.map +1 -0
- package/dist/store/run/checkpoint-disk.js +55 -0
- package/dist/store/run/checkpoint-disk.js.map +1 -0
- package/dist/types/provider/config.d.ts +51 -0
- package/dist/types/provider/config.d.ts.map +1 -1
- package/dist/types/provider/index.d.ts +1 -1
- package/dist/types/provider/index.d.ts.map +1 -1
- package/dist/types/provider/interface.d.ts +10 -0
- package/dist/types/provider/interface.d.ts.map +1 -1
- package/dist/types/run/checkpoint-store.d.ts +64 -0
- package/dist/types/run/checkpoint-store.d.ts.map +1 -0
- package/dist/types/run/checkpoint-store.js +12 -0
- package/dist/types/run/checkpoint-store.js.map +1 -0
- package/dist/types/run/config.d.ts +27 -0
- package/dist/types/run/config.d.ts.map +1 -1
- package/dist/types/run/events.d.ts +6 -0
- package/dist/types/run/events.d.ts.map +1 -1
- package/dist/types/run/events.js.map +1 -1
- package/dist/types/run/index.d.ts +1 -0
- package/dist/types/run/index.d.ts.map +1 -1
- package/dist/types/run/index.js +1 -0
- package/dist/types/run/index.js.map +1 -1
- package/package.json +1 -1
- package/src/bridge/a2a/mapper.ts +3 -0
- package/src/bridge/sse/mapper.ts +5 -0
- package/src/{runtime/query → constants}/continuation.ts +5 -0
- package/src/constants/index.ts +1 -0
- package/src/manager/run/persistence.ts +34 -1
- package/src/provider/__tests__/registry.test.ts +266 -1
- package/src/provider/capabilities.ts +47 -0
- package/src/provider/index.ts +12 -1
- package/src/provider/registry.ts +202 -7
- package/src/public-runtime.ts +6 -0
- package/src/run/reporter.ts +9 -0
- package/src/runtime/query/__tests__/capability-negotiation.test.ts +248 -0
- package/src/runtime/query/__tests__/checkpoint-store.test.ts +322 -0
- package/src/runtime/query/__tests__/checkpoint.test.ts +15 -6
- package/src/runtime/query/__tests__/orphan-task-turn-end.test.ts +127 -0
- package/src/runtime/query/checkpoint.ts +23 -9
- package/src/runtime/query/context.ts +9 -0
- package/src/runtime/query/index.ts +115 -28
- package/src/runtime/query/iteration/index.ts +298 -905
- package/src/runtime/query/iteration/phases/checkpoint.ts +25 -0
- package/src/runtime/query/iteration/phases/context.ts +1 -3
- package/src/runtime/query/iteration/stream-turn.ts +396 -0
- package/src/runtime/query/replay/list.ts +38 -4
- package/src/runtime/query/replay/prepare.ts +37 -4
- package/src/store/index.ts +1 -0
- package/src/store/run/checkpoint-disk.ts +67 -0
- package/src/types/provider/config.ts +54 -0
- package/src/types/provider/index.ts +3 -0
- package/src/types/provider/interface.ts +11 -0
- package/src/types/run/checkpoint-store.ts +72 -0
- package/src/types/run/config.ts +30 -0
- package/src/types/run/events.ts +13 -0
- package/src/types/run/index.ts +1 -0
- package/dist/runtime/query/continuation.d.ts.map +0 -1
- package/dist/runtime/query/continuation.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,103 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.3.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- d7c683e: Add lazy provider registration: `ProviderRegistry.registerLazy(type, loader, options?)` plus async construction via `ProviderRegistry.createAsync()` / `createProviderAsync()`.
|
|
8
|
+
|
|
9
|
+
Hosts that must not bundle every provider client into every entrypoint can now register a dynamic-import loader instead of an eagerly imported class — no more hand-rolled construction switches outside the registry. Registration never invokes the loader; the first `createAsync()` awaits it, validates the resolved `{ create }` module, and caches the factory. Concurrent first-creates share a single in-flight load, and only success is cached: a rejected load surfaces as the new `LazyProviderLoadError` (original failure on `cause`) and the next create retries.
|
|
10
|
+
|
|
11
|
+
Capabilities integrate with capability negotiation: an optional `options.capabilities` hint lets `getCapabilities(type)` answer before the provider is loaded (no hint ⇒ permissive default), the loaded module's declared capabilities replace the hint, and the constructed instance's own `LLMProvider.capabilities` remain what the query runtime negotiates against.
|
|
12
|
+
|
|
13
|
+
Lazy types are deliberately not constructible through the sync `create()` / `createProvider()` — those throw the new `LazyProviderSyncCreateError` deterministically so sync behavior never depends on load timing. Existing eager `register()` / `create()` behavior is unchanged.
|
|
14
|
+
|
|
15
|
+
## 1.2.0
|
|
16
|
+
|
|
17
|
+
### Minor Changes
|
|
18
|
+
|
|
19
|
+
- cc6b5f3: Pluggable checkpoint persistence with cadence and growth controls.
|
|
20
|
+
|
|
21
|
+
Iteration checkpoints now flow through a new `CheckpointStore` interface
|
|
22
|
+
(`types/run/checkpoint-store.ts`) keyed by the full run scope
|
|
23
|
+
(`tenantId`/`projectId`/`sessionId`/`runId`) instead of a filesystem
|
|
24
|
+
path, so hosts can persist mid-turn resume state in a shared backend
|
|
25
|
+
(e.g. Postgres) that survives machine loss:
|
|
26
|
+
|
|
27
|
+
- `QueryParams.checkpointStore?` injects a store per run (mirrors the
|
|
28
|
+
existing `pathBuilder?` override); the disk layout under the run's
|
|
29
|
+
output directory remains the default via the new exported
|
|
30
|
+
`DiskCheckpointStore` conformance adapter over `RunDiskStore`.
|
|
31
|
+
- `RunPersistenceConfig.checkpointStore?` +
|
|
32
|
+
`RunPersistence.getCheckpointStore()`/`getRunScope()` expose the same
|
|
33
|
+
seam to embedded callers.
|
|
34
|
+
- The replay entry points (`listCheckpoints`, `prepareReplayState`)
|
|
35
|
+
accept an optional `checkpointStore` + `scope` pair; their
|
|
36
|
+
disk-addressed `baseDir` inputs are unchanged.
|
|
37
|
+
- `CheckpointManager` now takes `(store: CheckpointStore, scope:
|
|
38
|
+
CheckpointRunScope)` — a breaking constructor change for direct
|
|
39
|
+
constructions; the query pipeline threads it automatically.
|
|
40
|
+
|
|
41
|
+
Growth control on the run config, byte-identical by default:
|
|
42
|
+
|
|
43
|
+
- `AgentRunConfig.checkpointEvery?` (default 1 = every tool-call
|
|
44
|
+
iteration, today's behavior) checkpoints iterations 1, 1+N, 1+2N, …
|
|
45
|
+
and skips the HITL `iteration_checkpoint` park on off-cadence
|
|
46
|
+
iterations.
|
|
47
|
+
- `AgentRunConfig.pruneKeepLast?` (default undefined = never prune)
|
|
48
|
+
prunes the run's checkpoint set down to the newest N after each
|
|
49
|
+
iteration-checkpoint create.
|
|
50
|
+
|
|
51
|
+
- f1f000c: Provider capability negotiation — degradation is now loud, not silent.
|
|
52
|
+
|
|
53
|
+
`LLMProvider` gains an optional `readonly capabilities?:
|
|
54
|
+
ProviderCapabilities` (with a new `supportsVision?` flag on the type)
|
|
55
|
+
declaring what the DRIVER actually does with a request. Providers that
|
|
56
|
+
declare nothing resolve to the exported
|
|
57
|
+
`PERMISSIVE_PROVIDER_CAPABILITIES` constant (assume everything works —
|
|
58
|
+
exactly the previous behavior), so third-party providers are
|
|
59
|
+
unaffected. `resolveProviderCapabilities(provider)` performs the
|
|
60
|
+
per-field permissive merge.
|
|
61
|
+
|
|
62
|
+
`query()` consults the resolved capabilities before tooling bootstrap:
|
|
63
|
+
|
|
64
|
+
- Tools registered against a `supportsTools: false` driver → a loud
|
|
65
|
+
`log.warn`, a new `capability_warning` run event, and every tool
|
|
66
|
+
surface stripped (no `<available_tools>` prompt section, no `tools`
|
|
67
|
+
request param) so the model is never told about tools it cannot
|
|
68
|
+
call.
|
|
69
|
+
- Image attachments on user messages against a `supportsVision: false`
|
|
70
|
+
driver → `log.warn` + a `capability_warning` run event so the host
|
|
71
|
+
can surface that the images never reach the model.
|
|
72
|
+
- New `QueryParams.strictCapabilities?: boolean` (default `false`)
|
|
73
|
+
throws on either mismatch instead of degrading.
|
|
74
|
+
|
|
75
|
+
`RunEvent` gains the additive `capability_warning` variant
|
|
76
|
+
(`capability: 'tools' | 'vision'`, `providerId`, `message`); the
|
|
77
|
+
SSE/A2A bridges intentionally do not map it to a wire event yet.
|
|
78
|
+
|
|
79
|
+
### Patch Changes
|
|
80
|
+
|
|
81
|
+
- 30c755d: Remove the dead task-notification busy-wait that could hang a run for minutes.
|
|
82
|
+
|
|
83
|
+
When the model ended its turn while the task gateway still listed a running
|
|
84
|
+
agent task, the iteration loop polled an internal `pendingNotifications`
|
|
85
|
+
queue every 250ms for up to `runConfig.timeoutMs` (120s default) — but
|
|
86
|
+
nothing has pushed onto that queue since the `onTaskCompleted` listener was
|
|
87
|
+
removed: every dispatch tool (`create_task`, `continue_task`, `Agent`) is
|
|
88
|
+
blocking and already returns the worker's output as the dispatching
|
|
89
|
+
tool_use's canonical `tool_result`. The wait always injected nothing, then
|
|
90
|
+
re-invoked the model with an unchanged conversation, so runs with an orphaned
|
|
91
|
+
task (an interrupted tool execution, a cancel race) sporadically stalled for
|
|
92
|
+
multiples of the timeout before finishing with the answer they already had.
|
|
93
|
+
|
|
94
|
+
The superseded `<task-notification>` envelope path is now fully torn out
|
|
95
|
+
(`waitAndInjectNotifications`, `injectOneTaskNotification`, the
|
|
96
|
+
`pendingNotifications` queue and its XML/CDATA helpers). End-of-turn
|
|
97
|
+
semantics with orphan running tasks are explicit: the run ends normally
|
|
98
|
+
(`end_turn`) and a warning is logged that the orphans have no delivery path.
|
|
99
|
+
Runs without orphan tasks are byte-identical.
|
|
100
|
+
|
|
3
101
|
## 1.1.0
|
|
4
102
|
|
|
5
103
|
### Minor Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/bridge/a2a/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,cAAc,EAGd,MAAM,0BAA0B,CAAA;AAEjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/bridge/a2a/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,cAAc,EAGd,MAAM,0BAA0B,CAAA;AAEjC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAmLzD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,GAAG,IAAI,CAO3F;AAED,uCAAuC;AACvC,eAAO,MAAM,oBAAoB,yBAAmB,CAAA"}
|
|
@@ -30,6 +30,8 @@ const MAPPING = {
|
|
|
30
30
|
role: 'agent',
|
|
31
31
|
parts: [{ kind: 'text', text: e.error }],
|
|
32
32
|
}),
|
|
33
|
+
// Capability degradation is host-facing diagnostics, not A2A task state.
|
|
34
|
+
capability_warning: null,
|
|
33
35
|
iteration_started: (e, ctx) => statusEvent(e.runId, 'running', false, ctx, {
|
|
34
36
|
role: 'agent',
|
|
35
37
|
parts: [{ kind: 'text', text: `Iteration ${e.iteration} started` }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/bridge/a2a/mapper.ts"],"names":[],"mappings":"AAQA,SAAS,WAAW,CACnB,MAAc,EACd,KAA+C,EAC/C,OAAgB,EAChB,SAAkB,EAClB,OAAoD;IAEpD,OAAO;QACN,MAAM;QACN,SAAS;QACT,MAAM,EAAE;YACP,KAAK;YACL,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC;QACD,KAAK,EAAE,OAAO;KACd,CAAA;AACF,CAAC;AAED,SAAS,aAAa,CACrB,MAAc,EACd,SAA6B,EAC7B,QAA6C;IAE7C,OAAO;QACN,MAAM;QACN,SAAS;QACT,QAAQ;KACR,CAAA;AACF,CAAC;AAMD,MAAM,OAAO,GAET;IACH,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC;IAEpE,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACzB,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE;YACnE,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACzC,CAAC,CAAA;QACF,OAAO,cAAc,CAAA;IACtB,CAAC;IAED,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE;QACzC,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;KACxC,CAAC;IAEH,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC7B,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;QAC3C,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC;KACnE,CAAC;IAEH,cAAc,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC1B,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;QAC9C,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,SAAS;QAC5B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QACzC,QAAQ,EAAE;YACT,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;SAClB;KACD,CAAC;IAEH,qBAAqB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7D,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;YACzD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,SAAS,EAAE,EAAE;gBAClE;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;4BACnC,EAAE,EAAE,EAAE,CAAC,EAAE;4BACT,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,aAAa,EAAE,EAAE,CAAC,aAAa;yBAC/B,CAAC,CAAC;qBACH;oBACD,QAAQ,EAAE,oCAAoC;iBAC9C;aACD;SACD,CAAC,CAAA;IACH,CAAC;IAED,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;QAClD,IAAI,EAAE,OAAO;QACb,KAAK,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE;YAChD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACL,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1B,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;qBACpB,CAAC,CAAC;iBACH;gBACD,QAAQ,EAAE,0BAA0B;aACpC;SACD;KACD,CAAC;IAEH,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;QAClD,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;KAC1D,CAAC;IAEH,mBAAmB,EAAE,IAAI;IACzB,cAAc,EAAE,IAAI;IACpB,qBAAqB,EAAE,IAAI;IAC3B,kBAAkB,EAAE,IAAI;IACxB,YAAY,EAAE,IAAI;IAClB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,IAAI;IACtB,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IAEvB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IAEpB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAElB,qBAAqB,EAAE,IAAI;IAC3B,qBAAqB,EAAE,IAAI;IAE3B,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,iBAAiB,EAAE,IAAI;IAEvB,uEAAuE;IACvE,2EAA2E;IAC3E,sBAAsB;IACtB,kBAAkB,EAAE,IAAI;IACxB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,IAAI;IAEtB,wEAAwE;IACxE,yEAAyE;IACzE,sEAAsE;IACtE,mEAAmE;IACnE,iEAAiE;IACjE,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAC3B,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;YAClD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC1C,CAAC,CAAA;IACH,CAAC;IACD,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,IAAI;IACtB,oBAAoB,EAAE,IAAI;CAC1B,CAAA;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAe,EAAE,SAAkB;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAA;IAC3B,OAAQ,SAA4E,CACnF,KAAK,EACL,SAAS,CACT,CAAA;AACF,CAAC;AAED,uCAAuC;AACvC,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAA"}
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/bridge/a2a/mapper.ts"],"names":[],"mappings":"AAQA,SAAS,WAAW,CACnB,MAAc,EACd,KAA+C,EAC/C,OAAgB,EAChB,SAAkB,EAClB,OAAoD;IAEpD,OAAO;QACN,MAAM;QACN,SAAS;QACT,MAAM,EAAE;YACP,KAAK;YACL,OAAO;YACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC;QACD,KAAK,EAAE,OAAO;KACd,CAAA;AACF,CAAC;AAED,SAAS,aAAa,CACrB,MAAc,EACd,SAA6B,EAC7B,QAA6C;IAE7C,OAAO;QACN,MAAM;QACN,SAAS;QACT,QAAQ;KACR,CAAA;AACF,CAAC;AAMD,MAAM,OAAO,GAET;IACH,WAAW,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,CAAC;IAEpE,aAAa,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACzB,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE;YACnE,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SACzC,CAAC,CAAA;QACF,OAAO,cAAc,CAAA;IACtB,CAAC;IAED,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE;QACzC,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;KACxC,CAAC;IAEH,yEAAyE;IACzE,kBAAkB,EAAE,IAAI;IAExB,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC7B,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;QAC3C,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,CAAC,SAAS,UAAU,EAAE,CAAC;KACnE,CAAC;IAEH,cAAc,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAC1B,aAAa,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE;QAC3B,UAAU,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;QAC9C,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,SAAS;QAC5B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QACzC,QAAQ,EAAE;YACT,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,SAAS,EAAE,CAAC,CAAC,SAAS;YACtB,OAAO,EAAE,CAAC,CAAC,OAAO;SAClB;KACD,CAAC;IAEH,qBAAqB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACjC,MAAM,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7D,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;YACzD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,SAAS,EAAE,EAAE;gBAClE;oBACC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE;wBACL,SAAS,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;4BACnC,EAAE,EAAE,EAAE,CAAC,EAAE;4BACT,IAAI,EAAE,EAAE,CAAC,IAAI;4BACb,aAAa,EAAE,EAAE,CAAC,aAAa;yBAC/B,CAAC,CAAC;qBACH;oBACD,QAAQ,EAAE,oCAAoC;iBAC9C;aACD;SACD,CAAC,CAAA;IACH,CAAC;IAED,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;QAClD,IAAI,EAAE,OAAO;QACb,KAAK,EAAE;YACN,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE;YAChD;gBACC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE;oBACL,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC1B,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,WAAW,EAAE,CAAC,CAAC,WAAW;wBAC1B,QAAQ,EAAE,CAAC,CAAC,QAAQ;qBACpB,CAAC,CAAC;iBACH;gBACD,QAAQ,EAAE,0BAA0B;aACpC;SACD;KACD,CAAC;IAEH,UAAU,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CACtB,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,GAAG,EAAE;QAClD,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;KAC1D,CAAC;IAEH,mBAAmB,EAAE,IAAI;IACzB,cAAc,EAAE,IAAI;IACpB,qBAAqB,EAAE,IAAI;IAC3B,kBAAkB,EAAE,IAAI;IACxB,YAAY,EAAE,IAAI;IAClB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,IAAI;IACtB,gBAAgB,EAAE,IAAI;IACtB,aAAa,EAAE,IAAI;IACnB,aAAa,EAAE,IAAI;IACnB,iBAAiB,EAAE,IAAI;IAEvB,aAAa,EAAE,IAAI;IACnB,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,cAAc,EAAE,IAAI;IAEpB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,IAAI;IAElB,qBAAqB,EAAE,IAAI;IAC3B,qBAAqB,EAAE,IAAI;IAE3B,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,iBAAiB,EAAE,IAAI;IAEvB,uEAAuE;IACvE,2EAA2E;IAC3E,sBAAsB;IACtB,kBAAkB,EAAE,IAAI;IACxB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,IAAI;IAEtB,wEAAwE;IACxE,yEAAyE;IACzE,sEAAsE;IACtE,mEAAmE;IACnE,iEAAiE;IACjE,eAAe,EAAE,IAAI;IACrB,UAAU,EAAE,IAAI;IAChB,iBAAiB,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAC3B,OAAO,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE;YAClD,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;SAC1C,CAAC,CAAA;IACH,CAAC;IACD,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,IAAI;IACtB,oBAAoB,EAAE,IAAI;CAC1B,CAAA;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAe,EAAE,SAAkB;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACrC,IAAI,CAAC,SAAS;QAAE,OAAO,IAAI,CAAA;IAC3B,OAAQ,SAA4E,CACnF,KAAK,EACL,SAAS,CACT,CAAA;AACF,CAAC;AAED,uCAAuC;AACvC,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/bridge/sse/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEzD,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,eAAe,CAAA;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC7B;
|
|
1
|
+
{"version":3,"file":"mapper.d.ts","sourceRoot":"","sources":["../../../src/bridge/sse/mapper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAA;AAEzD,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,eAAe,CAAA;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAC7B;AAkVD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,GAAG,iBAAiB,GAAG,IAAI,CAkB3F;AAED,0CAA0C;AAC1C,eAAO,MAAM,uBAAuB,4BAAsB,CAAA"}
|
|
@@ -131,6 +131,10 @@ const MAPPING = {
|
|
|
131
131
|
},
|
|
132
132
|
run_completed: null,
|
|
133
133
|
run_failed: null,
|
|
134
|
+
// Not mapped to a wire event yet — hosts consume `capability_warning`
|
|
135
|
+
// from the RunEvent stream directly; promoting it to the SSE contract
|
|
136
|
+
// needs a StreamEventType addition first.
|
|
137
|
+
capability_warning: null,
|
|
134
138
|
agent_pending: {
|
|
135
139
|
wire: 'agent.pending',
|
|
136
140
|
transform: (e, runId) => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/bridge/sse/mapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mapper.js","sourceRoot":"","sources":["../../../src/bridge/sse/mapper.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
* that match this constant verbatim, so the run's `result` field
|
|
12
12
|
* concatenates the full multi-turn assistant output instead of only
|
|
13
13
|
* surfacing the trailing continuation chunk.
|
|
14
|
+
*
|
|
15
|
+
* Lives in `constants/` (not `runtime/query/`) because both the
|
|
16
|
+
* runtime iteration loop and `manager/run/persistence.ts` consume
|
|
17
|
+
* it — a manager→runtime import for a string constant would create
|
|
18
|
+
* a manager↔runtime directory cycle.
|
|
14
19
|
*/
|
|
15
20
|
export declare const AUTO_CONTINUATION_USER_MESSAGE = "Continue exactly where you left off. Do not repeat content you already wrote \u2014 pick up at the next token.";
|
|
16
21
|
//# sourceMappingURL=continuation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation.d.ts","sourceRoot":"","sources":["../../src/constants/continuation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,8BAA8B,mHACiE,CAAA"}
|
|
@@ -11,6 +11,11 @@
|
|
|
11
11
|
* that match this constant verbatim, so the run's `result` field
|
|
12
12
|
* concatenates the full multi-turn assistant output instead of only
|
|
13
13
|
* surfacing the trailing continuation chunk.
|
|
14
|
+
*
|
|
15
|
+
* Lives in `constants/` (not `runtime/query/`) because both the
|
|
16
|
+
* runtime iteration loop and `manager/run/persistence.ts` consume
|
|
17
|
+
* it — a manager→runtime import for a string constant would create
|
|
18
|
+
* a manager↔runtime directory cycle.
|
|
14
19
|
*/
|
|
15
20
|
export const AUTO_CONTINUATION_USER_MESSAGE = 'Continue exactly where you left off. Do not repeat content you already wrote — pick up at the next token.';
|
|
16
21
|
//# sourceMappingURL=continuation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"continuation.js","sourceRoot":"","sources":["../../src/constants/continuation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAC1C,2GAA2G,CAAA"}
|
|
@@ -7,6 +7,7 @@ export * from './rag/index.js';
|
|
|
7
7
|
export * from './tools/index.js';
|
|
8
8
|
export * from './telemetry/index.js';
|
|
9
9
|
export * from './agent/index.js';
|
|
10
|
+
export * from './continuation.js';
|
|
10
11
|
export * from './limits.js';
|
|
11
12
|
export * from './bus/index.js';
|
|
12
13
|
export * from './verification/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA"}
|
package/dist/constants/index.js
CHANGED
|
@@ -7,6 +7,7 @@ export * from './rag/index.js';
|
|
|
7
7
|
export * from './tools/index.js';
|
|
8
8
|
export * from './telemetry/index.js';
|
|
9
9
|
export * from './agent/index.js';
|
|
10
|
+
export * from './continuation.js';
|
|
10
11
|
export * from './limits.js';
|
|
11
12
|
export * from './bus/index.js';
|
|
12
13
|
export * from './verification/index.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,uBAAuB,CAAA;AACrC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,yBAAyB,CAAA;AACvC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA"}
|
|
@@ -2,12 +2,14 @@ import { RunDiskStore } from '../../store/run/disk.js';
|
|
|
2
2
|
import { type CostInfo, type TokenUsage } from '../../types/common/index.js';
|
|
3
3
|
import type { RunId, SessionId, TenantId } from '../../types/ids/index.js';
|
|
4
4
|
import type { Message } from '../../types/message/index.js';
|
|
5
|
+
import type { CheckpointRunScope, CheckpointStore } from '../../types/run/checkpoint-store.js';
|
|
5
6
|
import type { EmergencySaveData } from '../../types/run/emergency.js';
|
|
6
7
|
import type { Run, RunPersistenceConfig, StopReason } from '../../types/run/index.js';
|
|
7
8
|
import type { ProjectId, ThreadId } from '../../types/session/ids.js';
|
|
8
9
|
export declare class RunPersistence {
|
|
9
10
|
private run;
|
|
10
11
|
private runStore;
|
|
12
|
+
private checkpointStore;
|
|
11
13
|
private pricing?;
|
|
12
14
|
private log;
|
|
13
15
|
private readonly _sessionId;
|
|
@@ -29,6 +31,15 @@ export declare class RunPersistence {
|
|
|
29
31
|
getRun(): Readonly<Run>;
|
|
30
32
|
getSession(): Readonly<Run>;
|
|
31
33
|
getRunStore(): RunDiskStore;
|
|
34
|
+
/**
|
|
35
|
+
* Checkpoint persistence for this run — the injected
|
|
36
|
+
* {@link CheckpointStore} when the host provided one, otherwise the
|
|
37
|
+
* disk default. Pair with {@link getRunScope} when constructing a
|
|
38
|
+
* `CheckpointManager`.
|
|
39
|
+
*/
|
|
40
|
+
getCheckpointStore(): CheckpointStore;
|
|
41
|
+
/** Full five-layer scope key for this run's checkpoint operations. */
|
|
42
|
+
getRunScope(): CheckpointRunScope;
|
|
32
43
|
getRunDir(): string | null;
|
|
33
44
|
init(): Promise<void>;
|
|
34
45
|
markRunning(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AACtD,OAAO,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAwB,MAAM,6BAA6B,CAAA;AAClG,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AAC3D,OAAO,KAAK,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAC9F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAA;AACrE,OAAO,KAAK,EAAE,GAAG,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrF,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAA;AAKrE,qBAAa,cAAc;IAC1B,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,OAAO,CAAC,CAAc;IAC9B,OAAO,CAAC,GAAG,CAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAW;gBAE1B,MAAM,EAAE,oBAAoB;IAyCxC,IAAI,EAAE,IAAI,KAAK,CAEd;IAED,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,SAAS,IAAI,SAAS,CAEzB;IAED,IAAI,MAAM,sDAET;IAED,IAAI,UAAU,2BAEb;IAED,IAAI,QAAQ,IAAI,OAAO,EAAE,CAExB;IAED,IAAI,UAAU,IAAI,UAAU,CAE3B;IAED,IAAI,QAAQ,IAAI,QAAQ,CAEvB;IAED,IAAI,gBAAgB,IAAI,MAAM,CAE7B;IAED,MAAM,IAAI,QAAQ,CAAC,GAAG,CAAC;IAIvB,UAAU,IAAI,QAAQ,CAAC,GAAG,CAAC;IAI3B,WAAW,IAAI,YAAY;IAI3B;;;;;OAKG;IACH,kBAAkB,IAAI,eAAe;IAIrC,sEAAsE;IACtE,WAAW,IAAI,kBAAkB;IAUjC,SAAS,IAAI,MAAM,GAAG,IAAI;IAIpB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAK3B,WAAW,IAAI,IAAI;IAInB,aAAa,CAAC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI;IAS5C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAO/B,aAAa,IAAI,IAAI;IAMrB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAIvC,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIjC,kBAAkB,IAAI,MAAM;IAK5B,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC,eAAe,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI;IAQxC,OAAO,CAAC,aAAa;IAqCrB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB;IAchD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAc9B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { AUTO_CONTINUATION_USER_MESSAGE } from '../../constants/continuation.js';
|
|
1
2
|
import { EMPTY_TOKEN_USAGE } from '../../constants/limits.js';
|
|
2
|
-
import {
|
|
3
|
+
import { DiskCheckpointStore } from '../../store/run/checkpoint-disk.js';
|
|
3
4
|
import { RunDiskStore } from '../../store/run/disk.js';
|
|
4
5
|
import { accumulateTokenUsage } from '../../types/common/index.js';
|
|
5
6
|
import { ZERO_COST, accumulateCost } from '../../utils/cost.js';
|
|
@@ -7,6 +8,7 @@ import { generateEmergencySaveId } from '../../utils/id.js';
|
|
|
7
8
|
export class RunPersistence {
|
|
8
9
|
run;
|
|
9
10
|
runStore;
|
|
11
|
+
checkpointStore;
|
|
10
12
|
pricing;
|
|
11
13
|
log;
|
|
12
14
|
_sessionId;
|
|
@@ -24,6 +26,14 @@ export class RunPersistence {
|
|
|
24
26
|
baseDir: config.outputDir,
|
|
25
27
|
logger: config.log,
|
|
26
28
|
});
|
|
29
|
+
// Checkpoints go through the injectable seam; the disk layout under
|
|
30
|
+
// `outputDir` (same tree the runStore writes to) stays the default.
|
|
31
|
+
this.checkpointStore =
|
|
32
|
+
config.checkpointStore ??
|
|
33
|
+
new DiskCheckpointStore({
|
|
34
|
+
baseDir: config.outputDir,
|
|
35
|
+
logger: config.log,
|
|
36
|
+
});
|
|
27
37
|
this.run = {
|
|
28
38
|
id: config.runId,
|
|
29
39
|
status: 'idle',
|
|
@@ -84,6 +94,25 @@ export class RunPersistence {
|
|
|
84
94
|
getRunStore() {
|
|
85
95
|
return this.runStore;
|
|
86
96
|
}
|
|
97
|
+
/**
|
|
98
|
+
* Checkpoint persistence for this run — the injected
|
|
99
|
+
* {@link CheckpointStore} when the host provided one, otherwise the
|
|
100
|
+
* disk default. Pair with {@link getRunScope} when constructing a
|
|
101
|
+
* `CheckpointManager`.
|
|
102
|
+
*/
|
|
103
|
+
getCheckpointStore() {
|
|
104
|
+
return this.checkpointStore;
|
|
105
|
+
}
|
|
106
|
+
/** Full five-layer scope key for this run's checkpoint operations. */
|
|
107
|
+
getRunScope() {
|
|
108
|
+
return {
|
|
109
|
+
tenantId: this._tenantId,
|
|
110
|
+
projectId: this._projectId,
|
|
111
|
+
sessionId: this._sessionId,
|
|
112
|
+
runId: this.run.id,
|
|
113
|
+
parentRunId: this.run.parentRunId,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
87
116
|
getRunDir() {
|
|
88
117
|
return this.runStore.getRunDir();
|
|
89
118
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../../src/manager/run/persistence.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,9 +2,14 @@ interface TestProviderConfig {
|
|
|
2
2
|
type: 'test';
|
|
3
3
|
value?: string;
|
|
4
4
|
}
|
|
5
|
+
interface LazyTestProviderConfig {
|
|
6
|
+
type: 'lazytest';
|
|
7
|
+
value?: string;
|
|
8
|
+
}
|
|
5
9
|
declare module '../../types/provider/config.js' {
|
|
6
10
|
interface ProviderConfigRegistry {
|
|
7
11
|
test: TestProviderConfig;
|
|
12
|
+
lazytest: LazyTestProviderConfig;
|
|
8
13
|
}
|
|
9
14
|
}
|
|
10
15
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.test.d.ts","sourceRoot":"","sources":["../../../src/provider/__tests__/registry.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"registry.test.d.ts","sourceRoot":"","sources":["../../../src/provider/__tests__/registry.test.ts"],"names":[],"mappings":"AAoBA,UAAU,kBAAkB;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,UAAU,sBAAsB;IAC/B,IAAI,EAAE,UAAU,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACd;AAED,OAAO,QAAQ,gCAAgC,CAAC;IAC/C,UAAU,sBAAsB;QAC/B,IAAI,EAAE,kBAAkB,CAAA;QACxB,QAAQ,EAAE,sBAAsB,CAAA;KAChC;CACD"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it } from 'vitest';
|
|
2
|
+
import { PERMISSIVE_PROVIDER_CAPABILITIES, resolveProviderCapabilities } from '../capabilities.js';
|
|
2
3
|
import { registerMock } from '../mock-register.js';
|
|
3
4
|
import { MockLLMProvider } from '../mock.js';
|
|
4
|
-
import { DuplicateProviderError, ProviderRegistry, UnknownProviderError, __resetProviderRegistryInternal, } from '../registry.js';
|
|
5
|
+
import { DuplicateProviderError, LazyProviderLoadError, LazyProviderSyncCreateError, ProviderRegistry, UnknownProviderError, __resetProviderRegistryInternal, } from '../registry.js';
|
|
5
6
|
class TestProvider {
|
|
6
7
|
config;
|
|
7
8
|
id = 'test';
|
|
@@ -33,6 +34,39 @@ const TEST_CAPS = {
|
|
|
33
34
|
supportsStreaming: true,
|
|
34
35
|
supportsFunctionCalling: false,
|
|
35
36
|
};
|
|
37
|
+
class LazyTestProvider {
|
|
38
|
+
config;
|
|
39
|
+
capabilities;
|
|
40
|
+
id = 'lazytest';
|
|
41
|
+
name = 'Lazy Test';
|
|
42
|
+
constructor(config, capabilities) {
|
|
43
|
+
this.config = config;
|
|
44
|
+
this.capabilities = capabilities;
|
|
45
|
+
}
|
|
46
|
+
async *chatStream() {
|
|
47
|
+
yield { id: 'x', delta: { content: 'ok' } };
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
const HINT_CAPS = {
|
|
51
|
+
supportsTools: false,
|
|
52
|
+
supportsStreaming: false,
|
|
53
|
+
supportsFunctionCalling: false,
|
|
54
|
+
};
|
|
55
|
+
const MODULE_CAPS = {
|
|
56
|
+
supportsTools: true,
|
|
57
|
+
supportsStreaming: true,
|
|
58
|
+
supportsFunctionCalling: true,
|
|
59
|
+
supportsVision: false,
|
|
60
|
+
};
|
|
61
|
+
function deferred() {
|
|
62
|
+
let resolve;
|
|
63
|
+
let reject;
|
|
64
|
+
const promise = new Promise((res, rej) => {
|
|
65
|
+
resolve = res;
|
|
66
|
+
reject = rej;
|
|
67
|
+
});
|
|
68
|
+
return { promise, resolve, reject };
|
|
69
|
+
}
|
|
36
70
|
describe('ProviderRegistry', () => {
|
|
37
71
|
beforeEach(() => {
|
|
38
72
|
__resetProviderRegistryInternal();
|
|
@@ -114,5 +148,156 @@ describe('ProviderRegistry', () => {
|
|
|
114
148
|
expect(err.name).toBe('DuplicateProviderError');
|
|
115
149
|
});
|
|
116
150
|
});
|
|
151
|
+
describe('registerLazy', () => {
|
|
152
|
+
it('does not invoke the loader at registration time', () => {
|
|
153
|
+
let calls = 0;
|
|
154
|
+
ProviderRegistry.registerLazy('lazytest', async () => {
|
|
155
|
+
calls++;
|
|
156
|
+
return { create: (config) => new LazyTestProvider(config) };
|
|
157
|
+
});
|
|
158
|
+
expect(calls).toBe(0);
|
|
159
|
+
expect(ProviderRegistry.isSupported('lazytest')).toBe(true);
|
|
160
|
+
expect(ProviderRegistry.listTypes()).toContain('lazytest');
|
|
161
|
+
});
|
|
162
|
+
it('throws DuplicateProviderError over an existing eager registration', () => {
|
|
163
|
+
ProviderRegistry.register('test', TestProvider, TEST_CAPS);
|
|
164
|
+
expect(() => ProviderRegistry.registerLazy('test', async () => ({
|
|
165
|
+
create: (config) => new TestProvider(config),
|
|
166
|
+
}))).toThrowError(DuplicateProviderError);
|
|
167
|
+
});
|
|
168
|
+
it('throws DuplicateProviderError over an existing lazy registration', () => {
|
|
169
|
+
const loader = async () => ({
|
|
170
|
+
create: (config) => new LazyTestProvider(config),
|
|
171
|
+
});
|
|
172
|
+
ProviderRegistry.registerLazy('lazytest', loader);
|
|
173
|
+
expect(() => ProviderRegistry.registerLazy('lazytest', loader)).toThrowError(DuplicateProviderError);
|
|
174
|
+
});
|
|
175
|
+
it('replace: true swaps between eager and lazy registrations', async () => {
|
|
176
|
+
ProviderRegistry.register('lazytest', LazyTestProvider, TEST_CAPS);
|
|
177
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({ create: (config) => new LazyTestProvider(config) }), { replace: true });
|
|
178
|
+
expect(() => ProviderRegistry.createProvider({ type: 'lazytest' })).toThrowError(LazyProviderSyncCreateError);
|
|
179
|
+
ProviderRegistry.register('lazytest', LazyTestProvider, TEST_CAPS, { replace: true });
|
|
180
|
+
expect(ProviderRegistry.createProvider({ type: 'lazytest' })).toBeInstanceOf(LazyTestProvider);
|
|
181
|
+
});
|
|
182
|
+
it('sync create()/createProvider() always throws for lazy types, even after load', async () => {
|
|
183
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({
|
|
184
|
+
create: (config) => new LazyTestProvider(config),
|
|
185
|
+
}));
|
|
186
|
+
expect(() => ProviderRegistry.create({ type: 'lazytest' })).toThrowError(LazyProviderSyncCreateError);
|
|
187
|
+
await ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
188
|
+
expect(() => ProviderRegistry.createProvider({ type: 'lazytest' })).toThrowError(LazyProviderSyncCreateError);
|
|
189
|
+
});
|
|
190
|
+
it('unregister removes a lazy registration', () => {
|
|
191
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({
|
|
192
|
+
create: (config) => new LazyTestProvider(config),
|
|
193
|
+
}));
|
|
194
|
+
expect(ProviderRegistry.unregister('lazytest')).toBe(true);
|
|
195
|
+
expect(ProviderRegistry.isSupported('lazytest')).toBe(false);
|
|
196
|
+
});
|
|
197
|
+
});
|
|
198
|
+
describe('createAsync', () => {
|
|
199
|
+
it('first create invokes the loader once; subsequent creates reuse the cached factory', async () => {
|
|
200
|
+
let calls = 0;
|
|
201
|
+
ProviderRegistry.registerLazy('lazytest', async () => {
|
|
202
|
+
calls++;
|
|
203
|
+
return { create: (config) => new LazyTestProvider(config) };
|
|
204
|
+
});
|
|
205
|
+
const first = await ProviderRegistry.createAsync({ type: 'lazytest', value: 'a' });
|
|
206
|
+
const second = await ProviderRegistry.createAsync({ type: 'lazytest', value: 'b' });
|
|
207
|
+
expect(calls).toBe(1);
|
|
208
|
+
expect(first.provider).toBeInstanceOf(LazyTestProvider);
|
|
209
|
+
expect(second.provider).toBeInstanceOf(LazyTestProvider);
|
|
210
|
+
expect(second.provider.config.value).toBe('b');
|
|
211
|
+
});
|
|
212
|
+
it('concurrent first-creates share a single loader invocation', async () => {
|
|
213
|
+
let calls = 0;
|
|
214
|
+
const gate = deferred();
|
|
215
|
+
ProviderRegistry.registerLazy('lazytest', async () => {
|
|
216
|
+
calls++;
|
|
217
|
+
await gate.promise;
|
|
218
|
+
return { create: (config) => new LazyTestProvider(config) };
|
|
219
|
+
});
|
|
220
|
+
const a = ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
221
|
+
const b = ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
222
|
+
gate.resolve();
|
|
223
|
+
const [ra, rb] = await Promise.all([a, b]);
|
|
224
|
+
expect(calls).toBe(1);
|
|
225
|
+
expect(ra.provider).toBeInstanceOf(LazyTestProvider);
|
|
226
|
+
expect(rb.provider).toBeInstanceOf(LazyTestProvider);
|
|
227
|
+
});
|
|
228
|
+
it('loader rejection surfaces as LazyProviderLoadError and the next create retries', async () => {
|
|
229
|
+
let calls = 0;
|
|
230
|
+
ProviderRegistry.registerLazy('lazytest', async () => {
|
|
231
|
+
calls++;
|
|
232
|
+
if (calls === 1) {
|
|
233
|
+
throw new Error('transient network failure');
|
|
234
|
+
}
|
|
235
|
+
return { create: (config) => new LazyTestProvider(config) };
|
|
236
|
+
});
|
|
237
|
+
const failure = await ProviderRegistry.createAsync({ type: 'lazytest' }).catch((err) => err);
|
|
238
|
+
expect(failure).toBeInstanceOf(LazyProviderLoadError);
|
|
239
|
+
expect(failure.providerType).toBe('lazytest');
|
|
240
|
+
expect(failure.cause.message).toBe('transient network failure');
|
|
241
|
+
const { provider } = await ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
242
|
+
expect(calls).toBe(2);
|
|
243
|
+
expect(provider).toBeInstanceOf(LazyTestProvider);
|
|
244
|
+
});
|
|
245
|
+
it('rejects with LazyProviderLoadError when the loader resolves an invalid module shape', async () => {
|
|
246
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({}));
|
|
247
|
+
await expect(ProviderRegistry.createAsync({ type: 'lazytest' })).rejects.toThrowError(LazyProviderLoadError);
|
|
248
|
+
});
|
|
249
|
+
it('works for eagerly registered types too', async () => {
|
|
250
|
+
const { provider, capabilities } = await ProviderRegistry.createAsync({
|
|
251
|
+
type: 'mock',
|
|
252
|
+
model: 'test-model',
|
|
253
|
+
});
|
|
254
|
+
expect(provider).toBeInstanceOf(MockLLMProvider);
|
|
255
|
+
expect(capabilities.supportsStreaming).toBe(true);
|
|
256
|
+
});
|
|
257
|
+
it('rejects with UnknownProviderError for unregistered types', async () => {
|
|
258
|
+
await expect(ProviderRegistry.createAsync({ type: 'nonexistent' })).rejects.toThrowError(UnknownProviderError);
|
|
259
|
+
});
|
|
260
|
+
});
|
|
261
|
+
describe('lazy capabilities', () => {
|
|
262
|
+
it('answers with the registration hint before load, without invoking the loader', () => {
|
|
263
|
+
let calls = 0;
|
|
264
|
+
ProviderRegistry.registerLazy('lazytest', async () => {
|
|
265
|
+
calls++;
|
|
266
|
+
return { create: (config) => new LazyTestProvider(config) };
|
|
267
|
+
}, { capabilities: HINT_CAPS });
|
|
268
|
+
expect(ProviderRegistry.getCapabilities('lazytest')).toEqual(HINT_CAPS);
|
|
269
|
+
expect(calls).toBe(0);
|
|
270
|
+
});
|
|
271
|
+
it('answers permissively before load when no hint was given', () => {
|
|
272
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({
|
|
273
|
+
create: (config) => new LazyTestProvider(config),
|
|
274
|
+
}));
|
|
275
|
+
expect(ProviderRegistry.getCapabilities('lazytest')).toEqual(PERMISSIVE_PROVIDER_CAPABILITIES);
|
|
276
|
+
});
|
|
277
|
+
it('module capabilities replace the hint after load', async () => {
|
|
278
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({
|
|
279
|
+
create: (config) => new LazyTestProvider(config),
|
|
280
|
+
capabilities: MODULE_CAPS,
|
|
281
|
+
}), { capabilities: HINT_CAPS });
|
|
282
|
+
const { capabilities } = await ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
283
|
+
expect(capabilities).toEqual(MODULE_CAPS);
|
|
284
|
+
expect(ProviderRegistry.getCapabilities('lazytest')).toEqual(MODULE_CAPS);
|
|
285
|
+
});
|
|
286
|
+
it('the constructed instance own capabilities win at run time over any hint', async () => {
|
|
287
|
+
const instanceCaps = {
|
|
288
|
+
supportsTools: true,
|
|
289
|
+
supportsStreaming: true,
|
|
290
|
+
supportsFunctionCalling: false,
|
|
291
|
+
supportsVision: false,
|
|
292
|
+
};
|
|
293
|
+
ProviderRegistry.registerLazy('lazytest', async () => ({ create: (config) => new LazyTestProvider(config, instanceCaps) }), { capabilities: HINT_CAPS });
|
|
294
|
+
const { provider } = await ProviderRegistry.createAsync({ type: 'lazytest' });
|
|
295
|
+
// The query runtime negotiates against the instance, not the registry:
|
|
296
|
+
const resolved = resolveProviderCapabilities(provider);
|
|
297
|
+
expect(resolved.supportsTools).toBe(true);
|
|
298
|
+
expect(resolved.supportsFunctionCalling).toBe(false);
|
|
299
|
+
expect(resolved.supportsVision).toBe(false);
|
|
300
|
+
});
|
|
301
|
+
});
|
|
117
302
|
});
|
|
118
303
|
//# sourceMappingURL=registry.test.js.map
|