@duetso/agent 0.1.188 → 0.1.190

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/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duetso/agent",
3
- "version": "0.1.188",
3
+ "version": "0.1.190",
4
4
  "description": "An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration",
5
5
  "keywords": [
6
6
  "agent",
@@ -8,11 +8,11 @@ export interface EmbeddingBackfillWorkerOptions {
8
8
  /** Path to append progress lines to. Optional; when omitted the worker logs nothing. */
9
9
  logPath?: string;
10
10
  /**
11
- * Idle delay between outer drain ticks in milliseconds. Defaults to
12
- * 10s, which gives a peer duet CLI room to acquire the lock between
13
- * drains. Tests override this to drive several ticks per second.
11
+ * Delay before retrying a drain that could not run because the
12
+ * cross-process lock was busy, in milliseconds. Defaults to 10s,
13
+ * which gives the peer duet CLI holding the lock room to finish.
14
14
  */
15
- idleSleepMs?: number;
15
+ retrySleepMs?: number;
16
16
  /**
17
17
  * Backoff after a failed drain in milliseconds. Defaults to 60s.
18
18
  * Tests override this so a transient-error case does not block the
@@ -38,16 +38,26 @@ export interface EmbeddingBackfillWorkerOptions {
38
38
  }
39
39
  export declare class EmbeddingBackfillWorker {
40
40
  private readonly options;
41
- private readonly idleSleepMs;
41
+ private readonly retrySleepMs;
42
42
  private readonly errorSleepMs;
43
43
  private readonly attemptCooldownMs;
44
44
  private readonly logMaxBytes;
45
45
  private readonly recentAttempts;
46
46
  private abortController?;
47
47
  private runningPromise?;
48
+ private pendingKick;
49
+ private wakeFromSleep?;
50
+ private stopped;
48
51
  constructor(options: EmbeddingBackfillWorkerOptions);
49
- /** Start the background loop. Idempotent — a second call is a no-op. */
52
+ /** Start a drain loop. Idempotent — a second call while running is a no-op. */
50
53
  start(): void;
54
+ /**
55
+ * Signal that new observations were written. Restarts the drain loop
56
+ * if it has exited, or schedules one more drain (and cuts any backoff
57
+ * sleep short) if it is still running. Called by the storage write
58
+ * helpers via `MemorySession.onWrite`.
59
+ */
60
+ kick(): void;
51
61
  /**
52
62
  * Stop the loop and wait for the in-flight tick (if any) to settle.
53
63
  * Because each tick awaits a `session.withDb`, this transitively waits
@@ -55,6 +65,16 @@ export declare class EmbeddingBackfillWorker {
55
65
  */
56
66
  stop(): Promise<void>;
57
67
  private run;
68
+ private drain;
69
+ /**
70
+ * True when unembedded rows exist that `selectBatch` could not see
71
+ * because every one of them is inside the attempt cooldown. Only
72
+ * worth querying when the cooldown exclusion list is non-empty — an
73
+ * empty list means the empty batch already proved a full drain.
74
+ */
75
+ private hasCooledBacklog;
76
+ /** Backoff sleep that resolves early on abort or on `kick()`. */
77
+ private sleep;
58
78
  private selectBatch;
59
79
  /**
60
80
  * Return the ids currently inside the attempt-cooldown window and
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-worker.d.ts","sourceRoot":"","sources":["../../../src/memory/embedding-worker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAuClD,MAAM,WAAW,8BAA8B;IAC7C,sEAAsE;IACtE,OAAO,EAAE,aAAa,CAAC;IACvB,+EAA+E;IAC/E,KAAK,EAAE,OAAO,CAAC;IACf,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IAKrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAgB;gBAE3B,OAAO,EAAE,8BAA8B;IAQnD,wEAAwE;IACxE,KAAK,IAAI,IAAI;IAMb;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAOb,GAAG;YAsCH,WAAW;IAyBzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;YAcV,YAAY;IAqC1B,OAAO,CAAC,GAAG;CA+BZ"}
1
+ {"version":3,"file":"embedding-worker.d.ts","sourceRoot":"","sources":["../../../src/memory/embedding-worker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AA+ClD,MAAM,WAAW,8BAA8B;IAC7C,sEAAsE;IACtE,OAAO,EAAE,aAAa,CAAC;IACvB,+EAA+E;IAC/E,KAAK,EAAE,OAAO,CAAC;IACf,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;OAMG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;IACzD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IAKrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,eAAe,CAAC,CAAkB;IAC1C,OAAO,CAAC,cAAc,CAAC,CAAgB;IAIvC,OAAO,CAAC,WAAW,CAAS;IAI5B,OAAO,CAAC,aAAa,CAAC,CAAa;IAGnC,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,8BAA8B;IAQnD,+EAA+E;IAC/E,KAAK,IAAI,IAAI;IAeb;;;;;OAKG;IACH,IAAI,IAAI,IAAI;IAUZ;;;;OAIG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YASb,GAAG;YA8BH,KAAK;IAyBnB;;;;;OAKG;YACW,gBAAgB;IAY9B,iEAAiE;IACjE,OAAO,CAAC,KAAK;YAkBC,WAAW;IAyBzB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;YAcV,YAAY;IAqC1B,OAAO,CAAC,GAAG;CA+BZ"}
@@ -1,28 +1,36 @@
1
1
  import { appendFileSync, mkdirSync, renameSync, statSync } from "node:fs";
2
2
  import { dirname } from "node:path";
3
3
  /**
4
- * Background worker that fills missing embeddings while the CLI is
5
- * running. Started by `loadStoredMemory()`, stopped on dispose. Never
6
- * blocks a turn: the observer/reflector can write a new row and return
7
- * to the user immediately; the embedding lands within a few seconds in
8
- * the background, after which the row becomes hybrid-retrievable.
4
+ * Background worker that fills missing embeddings. Started by
5
+ * `loadStoredMemory()` to drain any backlog left by prior runs, then
6
+ * event-driven: it stops once the backlog is empty and is re-kicked by
7
+ * the storage write helpers when new observations land. Never blocks a
8
+ * turn: the observer/reflector can write a new row and return to the
9
+ * user immediately; the embedding lands within seconds in the
10
+ * background, after which the row becomes hybrid-retrievable.
9
11
  *
10
- * Tick shape:
12
+ * Drain shape:
11
13
  * 1. Acquire the memory session via one `withDb`. Inside that open,
12
14
  * drain unembedded rows in `BATCH_SIZE` chunks until a select
13
15
  * returns zero rows, then exit `withDb` so the cross-process lock
14
16
  * releases shortly after via the session's idle-close timer.
15
- * 2. Sleep `IDLE_SLEEP_MS` between ticks. Long enough that a peer
16
- * duet CLI can acquire the lock between drains, short enough that
17
- * a newly-written observation becomes searchable within seconds.
18
- * 3. On error (rate limit, transient network), back off for
19
- * `ERROR_SLEEP_MS` before retrying.
17
+ * 2. If the drain came back empty and no `kick()` arrived meanwhile,
18
+ * the loop exits. A perpetual idle tick is deliberately avoided:
19
+ * each tick re-opens WASM Postgres once the session idle-closes,
20
+ * which burned a steady ~8% CPU per resident CLI when several
21
+ * sessions sat parked in a sandbox.
22
+ * 3. When the only unembedded rows are inside the per-id attempt
23
+ * cooldown, retry after `ATTEMPT_COOLDOWN_MS` instead of exiting
24
+ * so a churned row still gets re-embedded eventually.
25
+ * 4. On error (rate limit, transient network), back off for
26
+ * `ERROR_SLEEP_MS` before retrying. A lock-busy `withDb` skip
27
+ * retries after `RETRY_SLEEP_MS`.
20
28
  *
21
29
  * Failure modes are local: any error inside the loop logs and resumes
22
30
  * after a backoff. The worker never throws to the caller.
23
31
  */
24
32
  const BATCH_SIZE = 50;
25
- const DEFAULT_IDLE_SLEEP_MS = 10_000;
33
+ const DEFAULT_RETRY_SLEEP_MS = 10_000;
26
34
  const DEFAULT_ERROR_SLEEP_MS = 60_000;
27
35
  // Cap how often a single observation may be re-embedded. The production
28
36
  // memory store can churn rows (the reflector deletes and re-inserts a
@@ -39,7 +47,7 @@ const ERROR_BODY_LOG_MAX = 200;
39
47
  const DEFAULT_LOG_MAX_BYTES = 1024 * 1024;
40
48
  export class EmbeddingBackfillWorker {
41
49
  options;
42
- idleSleepMs;
50
+ retrySleepMs;
43
51
  errorSleepMs;
44
52
  attemptCooldownMs;
45
53
  logMaxBytes;
@@ -50,19 +58,57 @@ export class EmbeddingBackfillWorker {
50
58
  recentAttempts = new Map();
51
59
  abortController;
52
60
  runningPromise;
61
+ // Set by `kick()` while a drain is in flight so the loop runs one
62
+ // more drain instead of exiting on an empty result, closing the race
63
+ // where a write lands between the final select and the loop exit.
64
+ pendingKick = false;
65
+ // Resolver for the currently in-flight backoff sleep, when any.
66
+ // `kick()` invokes it so a new write cuts a cooldown/retry/error
67
+ // backoff short instead of waiting it out.
68
+ wakeFromSleep;
69
+ // Set by `stop()` so a late `kick()` (a write racing dispose) cannot
70
+ // restart the loop against a session that is about to close.
71
+ stopped = false;
53
72
  constructor(options) {
54
73
  this.options = options;
55
- this.idleSleepMs = options.idleSleepMs ?? DEFAULT_IDLE_SLEEP_MS;
74
+ this.retrySleepMs = options.retrySleepMs ?? DEFAULT_RETRY_SLEEP_MS;
56
75
  this.errorSleepMs = options.errorSleepMs ?? DEFAULT_ERROR_SLEEP_MS;
57
76
  this.attemptCooldownMs = options.attemptCooldownMs ?? DEFAULT_ATTEMPT_COOLDOWN_MS;
58
77
  this.logMaxBytes = options.logMaxBytes ?? DEFAULT_LOG_MAX_BYTES;
59
78
  }
60
- /** Start the background loop. Idempotent — a second call is a no-op. */
79
+ /** Start a drain loop. Idempotent — a second call while running is a no-op. */
61
80
  start() {
62
81
  if (this.runningPromise)
63
82
  return;
64
- this.abortController = new AbortController();
65
- this.runningPromise = this.run(this.abortController.signal);
83
+ this.stopped = false;
84
+ const controller = new AbortController();
85
+ this.abortController = controller;
86
+ this.runningPromise = this.run(controller.signal).finally(() => {
87
+ if (this.abortController !== controller)
88
+ return;
89
+ this.runningPromise = undefined;
90
+ this.abortController = undefined;
91
+ // A kick that landed between the loop's final empty-drain check
92
+ // and this cleanup would otherwise be lost; restart to honor it.
93
+ if (this.pendingKick && !controller.signal.aborted)
94
+ this.start();
95
+ });
96
+ }
97
+ /**
98
+ * Signal that new observations were written. Restarts the drain loop
99
+ * if it has exited, or schedules one more drain (and cuts any backoff
100
+ * sleep short) if it is still running. Called by the storage write
101
+ * helpers via `MemorySession.onWrite`.
102
+ */
103
+ kick() {
104
+ if (this.stopped)
105
+ return;
106
+ this.pendingKick = true;
107
+ if (this.runningPromise) {
108
+ this.wakeFromSleep?.();
109
+ return;
110
+ }
111
+ this.start();
66
112
  }
67
113
  /**
68
114
  * Stop the loop and wait for the in-flight tick (if any) to settle.
@@ -70,50 +116,99 @@ export class EmbeddingBackfillWorker {
70
116
  * for any open the worker holds to drain and the lock to release.
71
117
  */
72
118
  async stop() {
119
+ this.stopped = true;
73
120
  this.abortController?.abort();
121
+ // The finally attached in start() clears abortController and
122
+ // runningPromise once the loop settles, so awaiting is all the
123
+ // cleanup stop needs.
74
124
  await this.runningPromise;
75
- this.abortController = undefined;
76
- this.runningPromise = undefined;
77
125
  }
78
126
  async run(signal) {
79
127
  while (!signal.aborted) {
128
+ this.pendingKick = false;
80
129
  try {
81
- // One withDb per tick: drain everything that's currently
130
+ // One withDb per drain: embed everything that's currently
82
131
  // outstanding while we hold the lock, then exit so the
83
132
  // session can idle-close and another duet CLI can take a
84
133
  // turn. A returned `undefined` means the lock could not be
85
- // acquired in time — fall through to the idle sleep and
86
- // retry the same tick later.
87
- await this.options.session.withDb(async (db) => {
88
- while (!signal.aborted) {
89
- const batch = await this.selectBatch(db);
90
- if (batch.length === 0)
91
- return;
92
- // Stamp the attempt before we await the embedding so a
93
- // failure mid-call still counts as an attempt and the same
94
- // ids do not get retried in a tight loop on the next drain.
95
- const attemptAt = Date.now();
96
- for (const row of batch)
97
- this.recentAttempts.set(row.id, attemptAt);
98
- const result = await this.options.embed(batch.map((row) => row.content));
99
- if (result.embeddings.length !== batch.length) {
100
- throw new Error(`Embedding response length (${result.embeddings.length}) did not match batch size (${batch.length})`);
101
- }
102
- await this.persistBatch(db, batch, result.embeddings, result.model);
103
- this.log(`Embedded ${batch.length} observations`);
104
- }
105
- });
134
+ // acquired in time — retry after a short sleep.
135
+ const outcome = await this.options.session.withDb((db) => this.drain(db, signal));
106
136
  if (signal.aborted)
107
137
  return;
108
- await sleep(this.idleSleepMs, signal);
138
+ if (outcome === "drained") {
139
+ if (!this.pendingKick)
140
+ return;
141
+ continue;
142
+ }
143
+ // "cooling": the only unembedded rows were attempted recently.
144
+ // Retry once the cooldown can have expired rather than exiting,
145
+ // so a churned row is not stranded until the next write kick.
146
+ await this.sleep(outcome === "cooling" ? this.attemptCooldownMs : this.retrySleepMs, signal);
109
147
  }
110
148
  catch (error) {
111
149
  if (signal.aborted)
112
150
  return;
113
151
  this.log(`Embedding batch failed: ${summarizeError(error)}`);
114
- await sleep(this.errorSleepMs, signal);
152
+ await this.sleep(this.errorSleepMs, signal);
153
+ }
154
+ }
155
+ }
156
+ async drain(db, signal) {
157
+ while (!signal.aborted) {
158
+ const batch = await this.selectBatch(db);
159
+ if (batch.length === 0) {
160
+ return (await this.hasCooledBacklog(db)) ? "cooling" : "drained";
161
+ }
162
+ // Stamp the attempt before we await the embedding so a
163
+ // failure mid-call still counts as an attempt and the same
164
+ // ids do not get retried in a tight loop on the next drain.
165
+ const attemptAt = Date.now();
166
+ for (const row of batch)
167
+ this.recentAttempts.set(row.id, attemptAt);
168
+ const result = await this.options.embed(batch.map((row) => row.content));
169
+ if (result.embeddings.length !== batch.length) {
170
+ throw new Error(`Embedding response length (${result.embeddings.length}) did not match batch size (${batch.length})`);
115
171
  }
172
+ await this.persistBatch(db, batch, result.embeddings, result.model);
173
+ this.log(`Embedded ${batch.length} observations`);
116
174
  }
175
+ // Aborted mid-drain; the caller returns on the aborted signal
176
+ // before reading this, so the value only needs to typecheck.
177
+ return "cooling";
178
+ }
179
+ /**
180
+ * True when unembedded rows exist that `selectBatch` could not see
181
+ * because every one of them is inside the attempt cooldown. Only
182
+ * worth querying when the cooldown exclusion list is non-empty — an
183
+ * empty list means the empty batch already proved a full drain.
184
+ */
185
+ async hasCooledBacklog(db) {
186
+ if (this.collectCooledIds().length === 0)
187
+ return false;
188
+ const result = await db.query(`SELECT EXISTS(
189
+ SELECT 1 FROM observations o
190
+ LEFT JOIN observation_embeddings e ON e.observation_id = o.id
191
+ WHERE e.observation_id IS NULL
192
+ ) AS pending`);
193
+ return result.rows[0]?.pending ?? false;
194
+ }
195
+ /** Backoff sleep that resolves early on abort or on `kick()`. */
196
+ sleep(ms, signal) {
197
+ return new Promise((resolve) => {
198
+ if (signal.aborted || this.pendingKick) {
199
+ resolve();
200
+ return;
201
+ }
202
+ const finish = () => {
203
+ clearTimeout(timer);
204
+ signal.removeEventListener("abort", finish);
205
+ this.wakeFromSleep = undefined;
206
+ resolve();
207
+ };
208
+ const timer = setTimeout(finish, ms);
209
+ this.wakeFromSleep = finish;
210
+ signal.addEventListener("abort", finish, { once: true });
211
+ });
117
212
  }
118
213
  async selectBatch(db) {
119
214
  // LEFT JOIN over the embeddings table is the cheapest way to pick
@@ -236,22 +331,4 @@ function summarizeError(error) {
236
331
  return collapsed;
237
332
  return `${collapsed.slice(0, ERROR_BODY_LOG_MAX)}… (truncated ${collapsed.length - ERROR_BODY_LOG_MAX} chars)`;
238
333
  }
239
- function sleep(ms, signal) {
240
- return new Promise((resolve) => {
241
- if (signal.aborted) {
242
- resolve();
243
- return;
244
- }
245
- const timer = setTimeout(() => {
246
- signal.removeEventListener("abort", onAbort);
247
- resolve();
248
- }, ms);
249
- const onAbort = () => {
250
- clearTimeout(timer);
251
- signal.removeEventListener("abort", onAbort);
252
- resolve();
253
- };
254
- signal.addEventListener("abort", onAbort, { once: true });
255
- });
256
- }
257
334
  //# sourceMappingURL=embedding-worker.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"embedding-worker.js","sourceRoot":"","sources":["../../../src/memory/embedding-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"embedding-worker.js","sourceRoot":"","sources":["../../../src/memory/embedding-worker.ts"],"names":[],"mappings":"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"}
@@ -46,6 +46,7 @@ export declare class MemorySession {
46
46
  private readonly idleCloseMs;
47
47
  private readonly lockWaitBudgetMs;
48
48
  private readonly onWarn?;
49
+ private readonly writeListeners;
49
50
  private db;
50
51
  private lockPath;
51
52
  private opening;
@@ -62,6 +63,21 @@ export declare class MemorySession {
62
63
  * propagate.
63
64
  */
64
65
  withDb<T>(fn: (db: PGlite) => Promise<T>): Promise<T | undefined>;
66
+ /**
67
+ * Subscribe to observation-write notifications. The storage write
68
+ * helpers call `notifyWrite()` after landing new observation rows;
69
+ * `loadStoredMemory` uses this to kick the embedding backfill worker
70
+ * awake instead of having it poll the database on a timer. Returns an
71
+ * unsubscribe function.
72
+ */
73
+ onWrite(listener: () => void): () => void;
74
+ /**
75
+ * Notify subscribers that observation rows were written. Called by
76
+ * the storage write helpers after a successful write so background
77
+ * consumers (the embedding backfill worker) wake event-driven rather
78
+ * than polling.
79
+ */
80
+ notifyWrite(): void;
65
81
  /**
66
82
  * Wait for any in-flight `withDb` to drain, cancel a pending idle
67
83
  * close, then close the handle and release the lock. Subsequent
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/memory/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,aAAa,CAAC;AAWrB,MAAM,WAAW,oBAAoB;IACnC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,WAAW,EAAE,iBAAiB,CAAC;IAC/B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA4B;IAEpD,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAA4B;gBAEjC,IAAI,EAAE,oBAAoB;IAQtC;;;;;;OAMG;IACG,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IA0BvE;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAMhB,UAAU;YAYV,UAAU;YAqBV,eAAe;IAO7B,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,eAAe;YAOT,QAAQ;CAevB"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/memory/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAGL,KAAK,iBAAiB,EAIvB,MAAM,aAAa,CAAC;AAWrB,MAAM,WAAW,oBAAoB;IACnC,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,WAAW,EAAE,iBAAiB,CAAC;IAC/B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAoB;IAChD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAA4B;IAEpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAyB;IACxD,OAAO,CAAC,EAAE,CAAqB;IAC/B,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAA4B;gBAEjC,IAAI,EAAE,oBAAoB;IAQtC;;;;;;OAMG;IACG,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;IA0BvE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAKzC;;;;;OAKG;IACH,WAAW,IAAI,IAAI;IAKnB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAMhB,UAAU;YAYV,UAAU;YAqBV,eAAe;IAO7B,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,eAAe;YAOT,QAAQ;CAevB"}
@@ -25,6 +25,7 @@ export class MemorySession {
25
25
  idleCloseMs;
26
26
  lockWaitBudgetMs;
27
27
  onWarn;
28
+ writeListeners = new Set();
28
29
  db;
29
30
  lockPath;
30
31
  opening;
@@ -75,6 +76,29 @@ export class MemorySession {
75
76
  }
76
77
  }
77
78
  }
79
+ /**
80
+ * Subscribe to observation-write notifications. The storage write
81
+ * helpers call `notifyWrite()` after landing new observation rows;
82
+ * `loadStoredMemory` uses this to kick the embedding backfill worker
83
+ * awake instead of having it poll the database on a timer. Returns an
84
+ * unsubscribe function.
85
+ */
86
+ onWrite(listener) {
87
+ this.writeListeners.add(listener);
88
+ return () => this.writeListeners.delete(listener);
89
+ }
90
+ /**
91
+ * Notify subscribers that observation rows were written. Called by
92
+ * the storage write helpers after a successful write so background
93
+ * consumers (the embedding backfill worker) wake event-driven rather
94
+ * than polling.
95
+ */
96
+ notifyWrite() {
97
+ if (this.disposed)
98
+ return;
99
+ for (const listener of this.writeListeners)
100
+ listener();
101
+ }
78
102
  /**
79
103
  * Wait for any in-flight `withDb` to drain, cancel a pending idle
80
104
  * close, then close the handle and release the lock. Subsequent
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/memory/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/memory/session.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/memory/storage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAK9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iGAAiG;IACjG,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,kBAAkB,CAAC;QAC1B,QAAQ,EAAE,2BAA2B,CAAC;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,EACtC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,uBAAuB,CAAC,CAwElC;AAMD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,CAAC,GAC1D,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAYlC;AAED;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,SAAS,WAAW,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAiBtC;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,SAAS,WAAW,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC,CAcf;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,2BAA2B,CAAC,CAmBtC;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,SAAS,MAAM,EAAE,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAQf"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../src/memory/storage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAK9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGrD;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,aAAa,GAAG,SAAS,CAAC;IACnC,KAAK,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iGAAiG;IACjG,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,kBAAkB,CAAC;QAC1B,QAAQ,EAAE,2BAA2B,CAAC;QACtC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACnE;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACpC;AAED,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,EACtC,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,uBAAuB,CAAC,CA6ElC;AAMD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,WAAW,GAAG,YAAY,CAAC,GAC1D,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAalC;AAED;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,SAAS,WAAW,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC,CAqBf;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,0BAA0B,EAAE,MAAM,CAAC;CACpC;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,2BAA2B,CAAC,CAiBtC;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,aAAa,EACtB,YAAY,EAAE,SAAS,WAAW,EAAE,GACnC,OAAO,CAAC,IAAI,CAAC,CAgBf;AAED,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,2BAA2B,CAAC,CAmBtC;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,SAAS,MAAM,EAAE,EACtB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -26,11 +26,13 @@ export async function loadStoredMemory(memoryPath, cwd, options = {}) {
26
26
  },
27
27
  ...(options.onWarn ? { onWarn: options.onWarn } : {}),
28
28
  });
29
- // The backfill worker runs whenever the CLI is up. Observers and
30
- // reflectors write rows during turns; embeddings catch up in the
31
- // background within a few batches, never blocking the foreground.
32
- // Skipping the worker (no `embed` option) is intentional for tests
33
- // and one-shot tools that do not call recall_memory.
29
+ // The backfill worker drains any embedding backlog left by prior
30
+ // runs at startup, then stops until a write kicks it: observers and
31
+ // reflectors write rows during turns, the write helpers call
32
+ // `session.notifyWrite()`, and the embedding lands within seconds in
33
+ // the background. Skipping the worker (no `embed` option) is
34
+ // intentional for tests and one-shot tools that do not call
35
+ // recall_memory.
34
36
  const worker = options.embed
35
37
  ? new EmbeddingBackfillWorker({
36
38
  session,
@@ -38,7 +40,10 @@ export async function loadStoredMemory(memoryPath, cwd, options = {}) {
38
40
  logPath: options.embeddingLogPath ?? defaultEmbeddingLogPath(),
39
41
  })
40
42
  : undefined;
41
- worker?.start();
43
+ if (worker) {
44
+ session.onWrite(() => worker.kick());
45
+ worker.start();
46
+ }
42
47
  // Eager probe: open + run migrations once at startup. This keeps
43
48
  // the "fail fast on corruption" property of the old eager loader
44
49
  // (an unreadable dataDir is quarantined and onRecover is called
@@ -98,6 +103,8 @@ export async function appendObservation(session, input) {
98
103
  await upsertObservation(db, observation);
99
104
  return observation;
100
105
  });
106
+ if (result)
107
+ session.notifyWrite();
101
108
  return result;
102
109
  }
103
110
  /**
@@ -110,7 +117,7 @@ export async function appendObservation(session, input) {
110
117
  */
111
118
  export async function replaceSessionObservations(session, sessionId, observations) {
112
119
  const ids = observations.map((observation) => observation.id);
113
- await session.withDb(async (db) => {
120
+ const wrote = await session.withDb(async (db) => {
114
121
  await db.transaction(async (tx) => {
115
122
  if (ids.length === 0) {
116
123
  await tx.query("DELETE FROM observations WHERE session_id = $1", [sessionId]);
@@ -122,7 +129,12 @@ export async function replaceSessionObservations(session, sessionId, observation
122
129
  await upsertObservation(tx, observation);
123
130
  }
124
131
  });
132
+ return true;
125
133
  });
134
+ // Pure deletes need no embedding work, so only upserted rows kick
135
+ // the backfill worker.
136
+ if (wrote && observations.length > 0)
137
+ session.notifyWrite();
126
138
  }
127
139
  /**
128
140
  * Read every observation in the durable store, regardless of session id,
@@ -154,7 +166,7 @@ export async function readAllObservations(session) {
154
166
  */
155
167
  export async function replaceAllObservations(session, observations) {
156
168
  const ids = observations.map((observation) => observation.id);
157
- await session.withDb(async (db) => {
169
+ const wrote = await session.withDb(async (db) => {
158
170
  await db.transaction(async (tx) => {
159
171
  if (ids.length === 0) {
160
172
  await tx.query("DELETE FROM observations");
@@ -166,7 +178,10 @@ export async function replaceAllObservations(session, observations) {
166
178
  await upsertObservation(tx, observation);
167
179
  }
168
180
  });
181
+ return true;
169
182
  });
183
+ if (wrote && observations.length > 0)
184
+ session.notifyWrite();
170
185
  }
171
186
  export async function readSessionObservations(session, sessionId) {
172
187
  const result = await session.withDb(async (db) => {
@@ -1 +1 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/memory/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AA2ChC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAsC,EACtC,GAAW,EACX,UAAmC,EAAE;IAErC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC;QAChC,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE;YACX,8DAA8D;YAC9D,iEAAiE;YACjE,iEAAiE;YACjE,2CAA2C;YAC3C,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACjB,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D;QACD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC,CAAC;IAEH,iEAAiE;IACjE,iEAAiE;IACjE,kEAAkE;IAClE,mEAAmE;IACnE,qDAAqD;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK;QAC1B,CAAC,CAAC,IAAI,uBAAuB,CAAC;YAC1B,OAAO;YACP,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,gBAAgB,IAAI,uBAAuB,EAAE;SAC/D,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,EAAE,KAAK,EAAE,CAAC;IAEhB,iEAAiE;IACjE,iEAAiE;IACjE,gEAAgE;IAChE,gEAAgE;IAChE,kEAAkE;IAClE,uDAAuD;IACvD,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,CAAC;IAErC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,8DAA8D;QAC9D,gEAAgE;QAChE,iEAAiE;QACjE,6DAA6D;QAC7D,6DAA6D;QAC7D,8CAA8C;QAC9C,IAAI,CAAC;YACH,MAAM,wBAAwB,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK;gBAChC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ;gBACtC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,KAAK,SAAS;oBAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE;oBAC9C,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;YAC7D,6DAA6D;YAC7D,mDAAmD;QACrD,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,MAAM,EAAE,IAAI,EAAE,CAAC;QACrB,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAsB,EACtB,KAA2D;IAE3D,MAAM,WAAW,GAAgB;QAC/B,GAAG,KAAK;QACR,EAAE,EAAE,cAAc,EAAE;QACpB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;KACvB,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACzC,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAsB,EACtB,SAAiB,EACjB,YAAoC;IAEpC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAChC,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,EAAE,CAAC,KAAK,CAAC,gDAAgD,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,KAAK,CACZ,+EAA+E,EAC/E,CAAC,SAAS,EAAE,GAAG,CAAC,CACjB,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAeD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAChC;;;+BAGyB,CAC1B,CAAC;QACF,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5D,OAAO;YACL,YAAY;YACZ,0BAA0B,EAAE,cAAc,CACxC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClE;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAsB,EACtB,YAAoC;IAEpC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAChC,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,EAAE,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,KAAK,CAAC,2DAA2D,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAsB,EACtB,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAChC;;;;+BAIyB,EACzB,CAAC,SAAS,CAAC,CACZ,CAAC;QACF,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5D,OAAO;YACL,YAAY;YACZ,0BAA0B,EAAE,cAAc,CACxC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClE;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAsB,EACtB,GAAsB,EACtB,GAAW;IAEX,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC7B,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAChC,MAAM,EAAE,CAAC,KAAK,CAAC,sEAAsE,EAAE;YACrF,GAAG;YACH,GAAG;SACJ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,QAA6C,EAC7C,WAAwB;IAExB,MAAM,QAAQ,CAAC,KAAK,CAClB;;;;;;;;;;;;;;;;qCAgBiC,EACjC;QACE,WAAW,CAAC,EAAE;QACd,WAAW,CAAC,SAAS;QACrB,WAAW,CAAC,UAAU;QACtB,WAAW,CAAC,SAAS,IAAI,IAAI;QAC7B,WAAW,CAAC,IAAI;QAChB,WAAW,CAAC,YAAY;QACxB,WAAW,CAAC,cAAc,IAAI,IAAI;QAClC,WAAW,CAAC,YAAY,IAAI,IAAI;QAChC,WAAW,CAAC,SAAS,IAAI,IAAI;QAC7B,WAAW,CAAC,QAAQ;QACpB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;QAClC,WAAW,CAAC,OAAO;QACnB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;KACjC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,GAAW;IAClD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AAC7B,CAAC;AAkBD,SAAS,gBAAgB,CAAC,GAAmB;IAC3C,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAA0B;QAC5D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAa;KAC5C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../../src/memory/storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAIjC,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AA2ChC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAsC,EACtC,GAAW,EACX,UAAmC,EAAE;IAErC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;QAC5B,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACjE,CAAC;IAED,MAAM,YAAY,GAAG,iBAAiB,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC;QAChC,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE;YACX,8DAA8D;YAC9D,iEAAiE;YACjE,iEAAiE;YACjE,2CAA2C;YAC3C,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;gBACjB,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;YAC1B,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/D;QACD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtD,CAAC,CAAC;IAEH,iEAAiE;IACjE,oEAAoE;IACpE,6DAA6D;IAC7D,qEAAqE;IACrE,6DAA6D;IAC7D,4DAA4D;IAC5D,iBAAiB;IACjB,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK;QAC1B,CAAC,CAAC,IAAI,uBAAuB,CAAC;YAC1B,OAAO;YACP,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,OAAO,CAAC,gBAAgB,IAAI,uBAAuB,EAAE;SAC/D,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,MAAM,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAED,iEAAiE;IACjE,iEAAiE;IACjE,gEAAgE;IAChE,gEAAgE;IAChE,kEAAkE;IAClE,uDAAuD;IACvD,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,CAAC;IAErC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,8DAA8D;QAC9D,gEAAgE;QAChE,iEAAiE;QACjE,6DAA6D;QAC7D,6DAA6D;QAC7D,8CAA8C;QAC9C,IAAI,CAAC;YACH,MAAM,wBAAwB,CAAC;gBAC7B,OAAO;gBACP,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,KAAK;gBAChC,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ;gBACtC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,KAAK,SAAS;oBAC7C,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE;oBAC9C,CAAC,CAAC,EAAE,CAAC;aACR,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;YAC7D,6DAA6D;YAC7D,mDAAmD;QACrD,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,MAAM,EAAE,IAAI,EAAE,CAAC;QACrB,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC,CAAC;IACF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,uBAAuB;IAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAC;AACjE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAsB,EACtB,KAA2D;IAE3D,MAAM,WAAW,GAAgB;QAC/B,GAAG,KAAK;QACR,EAAE,EAAE,cAAc,EAAE;QACpB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;KACvB,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QACzC,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC,CAAC;IACH,IAAI,MAAM;QAAE,OAAO,CAAC,WAAW,EAAE,CAAC;IAClC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,OAAsB,EACtB,SAAiB,EACjB,YAAoC;IAEpC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC9C,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,EAAE,CAAC,KAAK,CAAC,gDAAgD,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAChF,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,KAAK,CACZ,+EAA+E,EAC/E,CAAC,SAAS,EAAE,GAAG,CAAC,CACjB,CAAC;YACJ,CAAC;YACD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,kEAAkE;IAClE,uBAAuB;IACvB,IAAI,KAAK,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,WAAW,EAAE,CAAC;AAC9D,CAAC;AAeD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAChC;;;+BAGyB,CAC1B,CAAC;QACF,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5D,OAAO;YACL,YAAY;YACZ,0BAA0B,EAAE,cAAc,CACxC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClE;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAsB,EACtB,YAAoC;IAEpC,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC9C,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YAChC,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrB,MAAM,EAAE,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC7C,CAAC;iBAAM,CAAC;gBACN,MAAM,EAAE,CAAC,KAAK,CAAC,2DAA2D,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;YACrF,CAAC;YACD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,MAAM,iBAAiB,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,IAAI,KAAK,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,WAAW,EAAE,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAsB,EACtB,SAAiB;IAEjB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAC/C,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAChC;;;;+BAIyB,EACzB,CAAC,SAAS,CAAC,CACZ,CAAC;QACF,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5D,OAAO;YACL,YAAY;YACZ,0BAA0B,EAAE,cAAc,CACxC,YAAY,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClE;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,0BAA0B,EAAE,CAAC,EAAE,CAAC;AACvE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAsB,EACtB,GAAsB,EACtB,GAAW;IAEX,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAC7B,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QAChC,MAAM,EAAE,CAAC,KAAK,CAAC,sEAAsE,EAAE;YACrF,GAAG;YACH,GAAG;SACJ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,QAA6C,EAC7C,WAAwB;IAExB,MAAM,QAAQ,CAAC,KAAK,CAClB;;;;;;;;;;;;;;;;qCAgBiC,EACjC;QACE,WAAW,CAAC,EAAE;QACd,WAAW,CAAC,SAAS;QACrB,WAAW,CAAC,UAAU;QACtB,WAAW,CAAC,SAAS,IAAI,IAAI;QAC7B,WAAW,CAAC,IAAI;QAChB,WAAW,CAAC,YAAY;QACxB,WAAW,CAAC,cAAc,IAAI,IAAI;QAClC,WAAW,CAAC,YAAY,IAAI,IAAI;QAChC,WAAW,CAAC,SAAS,IAAI,IAAI;QAC7B,WAAW,CAAC,QAAQ;QACpB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;QAClC,WAAW,CAAC,OAAO;QACnB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;KACjC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAY,EAAE,GAAW;IAClD,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AAC7B,CAAC;AAkBD,SAAS,gBAAgB,CAAC,GAAmB;IAC3C,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,GAAG,CAAC,UAAU;QACzB,UAAU,EAAE,GAAG,CAAC,YAAY;QAC5B,GAAG,CAAC,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,YAAY,EAAE,GAAG,CAAC,aAAa;QAC/B,GAAG,CAAC,GAAG,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChF,GAAG,CAAC,GAAG,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,GAAG,CAAC,GAAG,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAA0B;QAC5D,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAa;KAC5C,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/catalog.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,mBAAmB,GACnB,YAAY,GACZ,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,QAAQ,EAAE,YAAY,CAAC;IACvB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,EAAE,YAAY,CAAC;IACvB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;CACnB;AAeD,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,kBAAkB,EASvD,CAAC;AA6IF,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAQ/F;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEtE;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAErE;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,sBAAsB,EAAE,CAQvF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAI3F;AASD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAqB/E;AAED,+EAA+E;AAC/E,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAMhD,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEjE;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEhE"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/catalog.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GACpB,cAAc,GACd,mBAAmB,GACnB,YAAY,GACZ,WAAW,GACX,QAAQ,CAAC;AAEb,MAAM,WAAW,kBAAkB;IACjC,oFAAoF;IACpF,QAAQ,EAAE,YAAY,CAAC;IACvB,yFAAyF;IACzF,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,EAAE,YAAY,CAAC;IACvB,iFAAiF;IACjF,SAAS,EAAE,MAAM,CAAC;CACnB;AAeD,eAAO,MAAM,iBAAiB,aAAa,CAAC;AAC5C,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAEvD;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,SAAS,kBAAkB,EASvD,CAAC;AA2JF,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAQ/F;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEtE;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAErE;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,sBAAsB,EAAE,CAQvF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAI3F;AASD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAqB/E;AAED,+EAA+E;AAC/E,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAMhD,CAAC;AAEF,gFAAgF;AAChF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEjE;AAED,0EAA0E;AAC1E,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAEhE"}
@@ -139,6 +139,20 @@ const MODEL_DEFINITIONS = [
139
139
  // above 262144 even though pi-ai's catalog advertises 384000.
140
140
  maxOutputTokens: 262144,
141
141
  },
142
+ {
143
+ // Anthropic's Claude Fable 5 is routed through the duet/vercel gateways
144
+ // under the `anthropic/claude-fable-5` model id. pi-ai's catalog does not
145
+ // ship it yet, so resolution clones the Opus 4.8 gateway entry (identical
146
+ // anthropic-messages transport, 1M context, 128k output cap) until it does;
147
+ // see `resolveMissingModel` in duet-gateway.ts.
148
+ shorthand: "fable-5",
149
+ aliases: ["claude-fable-5", "anthropic/claude-fable-5"],
150
+ modelsByProvider: {
151
+ "duet-gateway": "anthropic/claude-fable-5",
152
+ "vercel-ai-gateway": "anthropic/claude-fable-5",
153
+ anthropic: "claude-fable-5",
154
+ },
155
+ },
142
156
  {
143
157
  // Zhipu's GLM 4.7 is routed through the duet/vercel gateways under the
144
158
  // `zai/glm-4.7` model id and through OpenRouter as `z-ai/glm-4.7`. We do not
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/model-resolution/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../../src/model-resolution/catalog.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,14 @@ export declare function getDuetGatewayBaseUrl(): string;
31
31
  * set for explicit `vercel-ai-gateway:*` pins.
32
32
  */
33
33
  export declare function resolveDuetGatewayModel(modelId: string): Model<any> | undefined;
34
+ /**
35
+ * Clone a known sibling on the same provider to build a Model pi-ai has not
36
+ * shipped yet; returns undefined when the provider/modelId pair is not a
37
+ * pending clone. The `duet-gateway` path (above) and the
38
+ * `vercel-ai-gateway`/`anthropic` paths in resolver.ts share it. Delete the
39
+ * Fable 5 entries once pi-ai ships them and the catalog resolves directly.
40
+ */
41
+ export declare function resolveMissingModel(provider: string, modelId: string): Model<any> | undefined;
34
42
  /**
35
43
  * Resolve the API key for a provider, including the project-local
36
44
  * `duet-gateway` provider that pi-ai's built-in env-key map does not
@@ -1 +1 @@
1
- {"version":3,"file":"duet-gateway.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/duet-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAM3E;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAEvD,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAU/E;AAkBD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK1E"}
1
+ {"version":3,"file":"duet-gateway.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/duet-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0B,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAM3E;;;;;;;;;;;;;GAaG;AAEH,eAAO,MAAM,wBAAwB,iBAAiB,CAAC;AAEvD,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAU/E;AA4BD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,SAAS,CAK7F;AASD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAK1E"}
@@ -50,7 +50,35 @@ function resolveDuetGatewayUpstream(modelId) {
50
50
  if (modelId.startsWith(OPENAI_MODEL_PREFIX)) {
51
51
  return getModel("openai", modelId.slice(OPENAI_MODEL_PREFIX.length));
52
52
  }
53
- return getModel("vercel-ai-gateway", modelId);
53
+ return (getModel("vercel-ai-gateway", modelId) ??
54
+ resolveMissingModel("vercel-ai-gateway", modelId));
55
+ }
56
+ /**
57
+ * Opus 4.8 siblings cloned to synthesize Claude Fable 5, which the Duet/Vercel
58
+ * gateways and Anthropic direct already serve but pi-ai's catalog has not
59
+ * shipped. Fable 5 reuses Opus 4.8's anthropic-messages transport, 1M context
60
+ * window, and 128k output cap unchanged, so swapping the id yields a correct
61
+ * spec. Keyed by the provider the sibling loads from; the `duet-gateway` route
62
+ * resolves through the `vercel-ai-gateway` catalog so it needs no entry. `to`
63
+ * scopes the clone to Fable 5 so other catalog-missing ids are not rewritten.
64
+ */
65
+ const FABLE_5_CLONE_SOURCES = {
66
+ "vercel-ai-gateway": { from: "anthropic/claude-opus-4.8", to: "anthropic/claude-fable-5" },
67
+ anthropic: { from: "claude-opus-4-8", to: "claude-fable-5" },
68
+ };
69
+ /**
70
+ * Clone a known sibling on the same provider to build a Model pi-ai has not
71
+ * shipped yet; returns undefined when the provider/modelId pair is not a
72
+ * pending clone. The `duet-gateway` path (above) and the
73
+ * `vercel-ai-gateway`/`anthropic` paths in resolver.ts share it. Delete the
74
+ * Fable 5 entries once pi-ai ships them and the catalog resolves directly.
75
+ */
76
+ export function resolveMissingModel(provider, modelId) {
77
+ const clone = FABLE_5_CLONE_SOURCES[provider];
78
+ if (!clone || modelId !== clone.to)
79
+ return undefined;
80
+ const sibling = getModel(provider, clone.from);
81
+ return sibling ? { ...sibling, id: modelId, name: modelId } : undefined;
54
82
  }
55
83
  function getDuetGatewayBaseUrlForModel(model) {
56
84
  if (model.api === "openai-completions" || model.api === "openai-responses") {
@@ -1 +1 @@
1
- {"version":3,"file":"duet-gateway.js","sourceRoot":"","sources":["../../../src/model-resolution/duet-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAc,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAC1C,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAEtC;;;;;;;;;;;;;GAaG;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEvD,MAAM,UAAU,qBAAqB;IACnC,OAAO,GAAG,qBAAqB,EAAE,GAAG,YAAY,EAAE,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAEhC,OAAO;QACL,GAAG,QAAQ;QACX,QAAQ,EAAE,cAAc;QACxB,EAAE,EAAE,OAAO;QACX,OAAO,EAAE,6BAA6B,CAAC,QAAQ,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IACjD,IAAI,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC5C,OAAO,QAAQ,CAAC,QAAe,EAAE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAQ,CAEpE,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC,mBAA0B,EAAE,OAAc,CAA2B,CAAC;AACxF,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAiB;IACtD,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,IAAI,KAAK,CAAC,GAAG,KAAK,kBAAkB,EAAE,CAAC;QAC3E,OAAO,GAAG,qBAAqB,EAAE,KAAK,CAAC;IACzC,CAAC;IACD,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,YAAY,CAAC,QAA8C,CAAC,CAAC;AACtE,CAAC"}
1
+ {"version":3,"file":"duet-gateway.js","sourceRoot":"","sources":["../../../src/model-resolution/duet-gateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAc,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAC1C,MAAM,mBAAmB,GAAG,SAAS,CAAC;AAEtC;;;;;;;;;;;;;GAaG;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEvD,MAAM,UAAU,qBAAqB;IACnC,OAAO,GAAG,qBAAqB,EAAE,GAAG,YAAY,EAAE,CAAC;AACrD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,QAAQ,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAEhC,OAAO;QACL,GAAG,QAAQ;QACX,QAAQ,EAAE,cAAc;QACxB,EAAE,EAAE,OAAO;QACX,OAAO,EAAE,6BAA6B,CAAC,QAAQ,CAAC;KACjD,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,OAAe;IACjD,IAAI,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC5C,OAAO,QAAQ,CAAC,QAAe,EAAE,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAQ,CAEpE,CAAC;IAChB,CAAC;IACD,OAAO,CACJ,QAAQ,CAAC,mBAA0B,EAAE,OAAc,CAA4B;QAChF,mBAAmB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAClD,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,qBAAqB,GAAiD;IAC1E,mBAAmB,EAAE,EAAE,IAAI,EAAE,2BAA2B,EAAE,EAAE,EAAE,0BAA0B,EAAE;IAC1F,SAAS,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,EAAE,gBAAgB,EAAE;CAC7D,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,OAAe;IACnE,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,CAAC,EAAE;QAAE,OAAO,SAAS,CAAC;IACrD,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAe,EAAE,KAAK,CAAC,IAAW,CAA2B,CAAC;IACvF,OAAO,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAiB;IACtD,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,IAAI,KAAK,CAAC,GAAG,KAAK,kBAAkB,EAAE,CAAC;QAC3E,OAAO,GAAG,qBAAqB,EAAE,KAAK,CAAC;IACzC,CAAC;IACD,OAAO,qBAAqB,EAAE,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB;IACpD,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,YAAY,CAAC,QAA8C,CAAC,CAAC;AACtE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAoB1E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3E;;;;;GAKG;AAEH,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5C,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAsB1D;AAiBD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,eAAe,CAOjB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,eAAe,CAEjB;AAoED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAO3E"}
1
+ {"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/model-resolution/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,KAAK,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAoB1E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE3E;;;;;GAKG;AAEH,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,SAAS,EAAE,MAAM,CAAC;IAClB,0FAA0F;IAC1F,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5C,2EAA2E;IAC3E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kFAAkF;IAClF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CA4B1D;AAiBD;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,eAAe,CAOjB;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,GACtB,eAAe,CAEjB;AAoED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAO3E"}
@@ -1,5 +1,5 @@
1
1
  import { findEnvKeys, getModel } from "@earendil-works/pi-ai";
2
- import { resolveDuetGatewayModel } from "./duet-gateway.js";
2
+ import { resolveDuetGatewayModel, resolveMissingModel } from "./duet-gateway.js";
3
3
  import { canonicalizeModelName, canonicalizeProviderModelId, clampModelOutputTokens, DEFAULT_CLI_MEMORY_MODEL, DEFAULT_CLI_MODEL, getModelCandidates, getProviderDefaultModel, getProviderMemoryModel, isKnownShorthand, isProviderPinnedModelName, PROVIDER_ORDER, resolveProviderShorthand, } from "./catalog.js";
4
4
  export { DEFAULT_CLI_MEMORY_MODEL, DEFAULT_CLI_MODEL } from "./catalog.js";
5
5
  export function resolveModelName(model) {
@@ -21,7 +21,11 @@ export function resolveModelName(model) {
21
21
  }
22
22
  return clampModelOutputTokens(resolved);
23
23
  }
24
- return clampModelOutputTokens(getModel(provider, modelId));
24
+ // getModel returns undefined for models the upstream catalog has not shipped
25
+ // yet; fall back to a synthesized clone (e.g. Fable 5) before forwarding.
26
+ // clampModelOutputTokens forwards a missing model untouched at runtime.
27
+ const resolved = getModel(provider, modelId) ?? resolveMissingModel(provider, modelId);
28
+ return clampModelOutputTokens(resolved);
25
29
  }
26
30
  function isKnownProvider(provider) {
27
31
  return PROVIDER_ORDER.some((entry) => entry.provider === provider);
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/model-resolution/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/model-resolution/resolver.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duetso/agent",
3
- "version": "0.1.188",
3
+ "version": "0.1.190",
4
4
  "description": "An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration",
5
5
  "keywords": [
6
6
  "agent",