@framers/agentos-ext-account-sources 0.9.2 → 0.9.4

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.
@@ -26,8 +26,13 @@ class QuotaLate extends Error {
26
26
  this.retryAt = retryAt;
27
27
  }
28
28
  }
29
- /** Milliseconds after the reservation's clock reading within which an attempt must start its call. */
29
+ /**
30
+ * Milliseconds within which an attempt must start its call, from the clock read once its three budgets hold its weight:
31
+ * their statements run under the project's lock and can take longer than the window.
32
+ */
30
33
  const sendWindowMs = 1000;
34
+ /** The minute budgets' rolling window: a consumed unit leaves it once more than this has passed since its reservation. */
35
+ const minuteMs = 60_000;
31
36
  /** Rows of each table one `compact` call deletes at most. */
32
37
  const compactLimit = 1000;
33
38
  const integer = (n) => Number.isSafeInteger(n) && n >= 0;
@@ -73,7 +78,10 @@ function checkedPolicy(policy) {
73
78
  throw new Error('invalid_source_quota_policy');
74
79
  return Object.freeze(copy);
75
80
  }
76
- /** Combines released meters; this class never reimplements their accounting SQL. */
81
+ /**
82
+ * Combines released meters, which decide every admission and every refund; this class never reimplements their
83
+ * accounting SQL. It reads a minute budget's reservations only to say when a request it refused has room.
84
+ */
77
85
  export class SourceQuota {
78
86
  db;
79
87
  options;
@@ -111,7 +119,7 @@ export class SourceQuota {
111
119
  }
112
120
  meter(tx, prefix, allowance, daily) {
113
121
  return new SqlSpendMeter({ db: tx, tablePrefix: prefix, allowanceFor: () => allowance,
114
- ...(daily ? { periodOf: (now) => String(Math.floor(now / 86_400_000)) } : { windowMs: 60_000 }),
122
+ ...(daily ? { periodOf: (now) => String(Math.floor(now / 86_400_000)) } : { windowMs: minuteMs }),
115
123
  ensureSchema: false, requireShared: true, leaseMs: 120_000, maxAttemptsPerOperation: 1,
116
124
  unknownAfterLease: 'consume', retry: { attempts: 1, baseDelayMs: 0, maxDelayMs: 0, deadlineMs: 1000 } });
117
125
  }
@@ -139,29 +147,36 @@ export class SourceQuota {
139
147
  }
140
148
  const projectId = JSON.stringify([request.projectKey]);
141
149
  const mailboxId = JSON.stringify([request.projectKey, request.mailboxKey]);
150
+ const units = this.policy.weights[request.method];
142
151
  const meters = [
143
- { meter: this.meter(tx, this.t.pm, this.policy.projectMinute, false), accountId: projectId,
144
- reason: 'project_minute', retryAt: now + 60_001 },
145
- { meter: this.meter(tx, this.t.mm, this.policy.mailboxMinute, false), accountId: mailboxId,
146
- reason: 'mailbox_minute', retryAt: now + 60_001 },
147
- { meter: this.meter(tx, this.t.pd, this.policy.projectDay, true), accountId: projectId,
148
- reason: 'project_day', retryAt: dayEnd(now) },
152
+ { meter: this.meter(tx, this.t.pm, this.policy.projectMinute, false), table: this.t.pm,
153
+ allowance: this.policy.projectMinute, accountId: projectId, reason: 'project_minute' },
154
+ { meter: this.meter(tx, this.t.mm, this.policy.mailboxMinute, false), table: this.t.mm,
155
+ allowance: this.policy.mailboxMinute, accountId: mailboxId, reason: 'mailbox_minute' },
156
+ { meter: this.meter(tx, this.t.pd, this.policy.projectDay, true), table: this.t.pd,
157
+ allowance: this.policy.projectDay, accountId: projectId, reason: 'project_day' },
149
158
  ];
150
159
  for (const entry of meters) {
151
160
  const reserved = await entry.meter.reserve({ accountId: entry.accountId,
152
- operationId: request.attemptId, units: this.policy.weights[request.method], now });
161
+ operationId: request.attemptId, units, now });
153
162
  if (reserved.status !== 'reserved') {
154
163
  if (reserved.reason !== 'allowance_exhausted')
155
164
  throw new QuotaDuplicate();
156
165
  // Propagate past the outer transaction: nested adapter calls have no savepoint.
157
- throw new QuotaDeferred(entry.reason, entry.retryAt);
166
+ throw new QuotaDeferred(entry.reason, entry.reason === 'project_day' ? dayEnd(now)
167
+ : await this.minuteRoom(tx, entry.table, entry.accountId, request.attemptId, units, entry.allowance, now));
158
168
  }
159
169
  const settled = await entry.meter.settle({ operationId: request.attemptId, outcome: 'consumed', now });
160
170
  if (settled.status !== 'settled' || settled.state !== 'consumed')
161
171
  throw new Error('source_quota_settle_failed');
162
172
  }
163
- const permit = { token: randomUUID(), sendBy: now + sendWindowMs,
164
- expiresAt: now + sendWindowMs + this.policy.timeoutMs + this.policy.slotGraceMs, timeoutMs: this.policy.timeoutMs };
173
+ // The send window opens once the three budgets hold the weight, at a second reading of the clock: one counted from
174
+ // the first reading would close while their statements were still running on a slow database. The record below
175
+ // and the commit stay inside the window: no reading can follow a commit inside its own transaction, and the start's
176
+ // reading, which closes the window, is the one that catches a process that stalled after the commit.
177
+ const opened = Math.max(now, await this.now(tx));
178
+ const permit = { token: randomUUID(), sendBy: opened + sendWindowMs,
179
+ expiresAt: opened + sendWindowMs + this.policy.timeoutMs + this.policy.slotGraceMs, timeoutMs: this.policy.timeoutMs };
165
180
  await tx.run(`INSERT INTO ${this.t.attempts}(attempt_id,project_key,mailbox_key,token,send_by,expires_at)
166
181
  VALUES($1,$2,$3,$4,$5,$6)`, [request.attemptId, request.projectKey, request.mailboxKey,
167
182
  permit.token, permit.sendBy, permit.expiresAt]);
@@ -169,7 +184,7 @@ export class SourceQuota {
169
184
  });
170
185
  }
171
186
  async begin(request, permit) {
172
- await this.db.transaction(async (tx) => {
187
+ const late = await this.db.transaction(async (tx) => {
173
188
  const project = await this.project(tx, request.projectKey);
174
189
  const now = await this.now(tx);
175
190
  const mailbox = await tx.get(`SELECT retry_at FROM ${this.t.mailboxes}
@@ -181,12 +196,43 @@ export class SourceQuota {
181
196
  WHERE attempt_id=$1 AND project_key=$2 AND mailbox_key=$3 AND token=$4
182
197
  AND started=FALSE AND finished=FALSE AND send_by>=$5 AND expires_at>$5`, [request.attemptId, request.projectKey, request.mailboxKey, permit.token, now]);
183
198
  if (updated.changes === 1)
184
- return;
199
+ return null;
185
200
  // This run's own attempt, still unstarted, missed only the time conditions: its send window closed before the start.
186
201
  const unstarted = await tx.get(`SELECT attempt_id FROM ${this.t.attempts}
187
202
  WHERE attempt_id=$1 AND project_key=$2 AND mailbox_key=$3 AND token=$4 AND started=FALSE AND finished=FALSE`, [request.attemptId, request.projectKey, request.mailboxKey, permit.token]);
188
- throw unstarted ? new QuotaLate(now + sendWindowMs) : new QuotaDuplicate();
203
+ if (!unstarted)
204
+ throw new QuotaDuplicate();
205
+ // Nothing was sent and only this run holds the attempt's token, so the three budgets take its units back here,
206
+ // under the project's lock, through the core meters' own refund of a consumed reservation (`replaced`).
207
+ for (const meter of [this.meter(tx, this.t.pm, this.policy.projectMinute, false),
208
+ this.meter(tx, this.t.mm, this.policy.mailboxMinute, false), this.meter(tx, this.t.pd, this.policy.projectDay, true)]) {
209
+ const refunded = await meter.settle({ operationId: request.attemptId, outcome: 'replaced', now });
210
+ if (refunded.status !== 'settled' || refunded.state !== 'released')
211
+ throw new Error('source_quota_refund_failed');
212
+ }
213
+ return now + sendWindowMs;
189
214
  });
215
+ if (late !== null)
216
+ throw new QuotaLate(late);
217
+ }
218
+ /**
219
+ * When a minute budget that refused `units` has room for them: a minute and a millisecond after the reservation of the
220
+ * consumed units whose leaving the window, the earliest first, frees enough, read from the core meter's reservations
221
+ * without the refused attempt's own. Units still reserved never leave the window by age, so with them in the way, or
222
+ * for more units than the budget holds, it answers a minute and a millisecond from now.
223
+ */
224
+ async minuteRoom(tx, table, accountId, attemptId, units, allowance, now) {
225
+ const held = await tx.all(`SELECT state,reserved_at,units FROM ${table}_reservations WHERE account_id=$1 AND period='window'
226
+ AND operation_id<>$2 AND (state='reserved' OR (state='consumed' AND reserved_at>=$3)) ORDER BY reserved_at`, [accountId, attemptId, now - minuteMs]);
227
+ let left = held.reduce((sum, row) => sum + Number(row.units), 0);
228
+ for (const row of held) {
229
+ if (row.state !== 'consumed')
230
+ continue;
231
+ left -= Number(row.units);
232
+ if (left + units <= allowance)
233
+ return Number(row.reserved_at) + minuteMs + 1;
234
+ }
235
+ return now + minuteMs + 1;
190
236
  }
191
237
  async release(request, permit) {
192
238
  await this.db.transaction(async (tx) => {
@@ -197,7 +243,8 @@ export class SourceQuota {
197
243
  }
198
244
  /**
199
245
  * Consume weighted capacity and call the transport once. No inline HTTP retries: a retry, after a deferral or a
200
- * `late` answer among others, is a new `run` with a new attempt id.
246
+ * `late` answer among others, is a new `run` with a new attempt id. A failure to release the attempt's slot behind
247
+ * what `send` threw never replaces it; behind a completed call it is `storage_unavailable`.
201
248
  */
202
249
  async run(request, send, parent) {
203
250
  if (parent?.aborted)
@@ -220,6 +267,7 @@ export class SourceQuota {
220
267
  parent?.addEventListener('abort', abort, { once: true });
221
268
  let timer;
222
269
  let began = false;
270
+ let failed = false;
223
271
  try {
224
272
  try {
225
273
  await this.begin(request, permit);
@@ -243,16 +291,23 @@ export class SourceQuota {
243
291
  throw new SourceSyncFault(parent?.aborted ? 'cancelled' : 'network');
244
292
  return { kind: 'completed', value };
245
293
  }
294
+ catch (error) {
295
+ failed = true;
296
+ throw error;
297
+ }
246
298
  finally {
247
299
  if (timer !== undefined)
248
300
  clearTimeout(timer);
249
301
  parent?.removeEventListener('abort', abort);
250
- // Request units remain consumed even if begin, transport, parsing or cleanup fails.
302
+ // Request units remain consumed even if begin, transport, parsing or cleanup fails. A release that fails behind
303
+ // what `send` threw never replaces it: a refused grant has to reach the coordinator as `grant_rejected`, which
304
+ // fences the grant, not as `storage_unavailable`, which only schedules a retry. Behind a completed call it is
305
+ // still a storage failure, and the slot frees at its expiry either way.
251
306
  try {
252
307
  await this.release(request, permit);
253
308
  }
254
309
  catch {
255
- if (began)
310
+ if (began && !failed)
256
311
  throw new SourceSyncFault('storage_unavailable');
257
312
  }
258
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SourceQuota.js","sourceRoot":"","sources":["../../src/sync/SourceQuota.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SourceQuota.js","sourceRoot":"","sources":["../../src/sync/SourceQuota.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAiF7C,MAAM,aAAc,SAAQ,KAAK;IACV;IAAoC;IAAzD,YAAqB,MAAyB,EAAW,OAAe;QAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAAtF,WAAM,GAAN,MAAM,CAAmB;QAAW,YAAO,GAAP,OAAO,CAAQ;IAAoC,CAAC;CAC9G;AACD,MAAM,cAAe,SAAQ,KAAK;IAAG,gBAAgB,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;CAAE;AACzF,MAAM,SAAU,SAAQ,KAAK;IAAwB;IAArB,YAAqB,OAAe;QAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAA9C,YAAO,GAAP,OAAO,CAAQ;IAAgC,CAAC;CAAE;AACvG;;;GAGG;AACH,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,0HAA0H;AAC1H,MAAM,QAAQ,GAAG,MAAM,CAAC;AACxB,6DAA6D;AAC7D,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,OAAO,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1E,MAAM,GAAG,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC;AAC7F,MAAM,MAAM,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC;AACxF,SAAS,MAAM,CAAC,MAAM,GAAG,sBAAsB;IAC7C,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC3F,OAAO,EAAE,QAAQ,EAAE,IAAI,MAAM,YAAY,EAAE,SAAS,EAAE,IAAI,MAAM,aAAa;QAC3E,QAAQ,EAAE,IAAI,MAAM,YAAY,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,EAAE,EAAE,EAAE,GAAG,MAAM,KAAK,EAAE,CAAC;AACnG,CAAC;AACD;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAM,GAAG,sBAAsB;IAC/D,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACzB,OAAO;QACL,8BAA8B,CAAC,CAAC,QAAQ,yFAAyF;QACjI,8BAA8B,CAAC,CAAC,SAAS;+EACkC;QAC3E,8BAA8B,CAAC,CAAC,QAAQ;;sFAE0C;QAClF,+BAA+B,MAAM,eAAe,CAAC,CAAC,QAAQ,mCAAmC;QACjG,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9D,CAAC;AACJ,CAAC;AACD,SAAS,aAAa,CAAC,MAAyB;IAC9C,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI;QACpE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IACpG,MAAM,IAAI,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa;QACrF,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC5E,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS;QAC1E,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;IACrE,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,kBAAkB;QAC/F,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACxF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,MAAM;WACpE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,WAAW,GAAG,OAAO;WAC/D,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB;QAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACvG,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;;GAGG;AACH,MAAM,OAAO,WAAW;IAQO;IAAqC;IAPjD,CAAC,CAA4B;IAC7B,MAAM,CAAoB;IAC1B,WAAW,CAAS;IACrC;;;OAGG;IACH,YAA6B,EAAkB,EAAmB,OAA2B;QAAhE,OAAE,GAAF,EAAE,CAAgB;QAAmB,YAAO,GAAP,OAAO,CAAoB;QAC3F,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACtH,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAAC,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAClF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IACO,KAAK,CAAC,GAAG,CAAC,EAAkB;QAClC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzD,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CACpB,2EAA2E,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,qBAAqB;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC5F,OAAO,CAAC,CAAC;IACX,CAAC;IACO,KAAK,CAAC,OAAO,CAAC,EAAkB,EAAE,UAAkB;QAC1D,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAClE,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,QAAQ,2DAA2D,EACpG,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,GAAG,CAAa,+BAA+B,IAAI,CAAC,CAAC,CAAC,QAAQ,kCAAkC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QACrI,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,WAAW;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAC7F,OAAO,GAAG,CAAC;IACb,CAAC;IACO,KAAK,CAAC,EAAkB,EAAE,MAAc,EAAE,SAAiB,EAAE,KAAc;QACjF,OAAO,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS;YACnF,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;YACzG,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;YACtF,iBAAiB,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IAC7G,CAAC;IACO,KAAK,CAAC,OAAO,CAAC,OAA2B;QAC/C,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;eACtE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QACxG,OAAO,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3F,IAAI,MAAM,EAAE,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,CAAC,CAAC,QAAQ,sBAAsB,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAAE,MAAM,IAAI,cAAc,EAAE,CAAC;YACnI,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAgC,wBAAwB,IAAI,CAAC,CAAC,CAAC,SAAS;gDAC1D,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACtF,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;YACnF,IAAI,OAAO,GAAG,GAAG;gBAAE,MAAM,IAAI,aAAa,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YACrE,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,GAAG,CACxB,sCAAsC,IAAI,CAAC,CAAC,CAAC,QAAQ,4DAA4D,EACjH,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;YAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;YACxE,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBACnD,MAAM,IAAI,aAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACtG,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBACnD,MAAM,IAAI,aAAa,CAAC,qBAAqB,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACtG,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAC3E,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG;gBACb,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;oBACpF,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAyB,EAAE;gBACjG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;oBACpF,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAyB,EAAE;gBACjG,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE;oBAChF,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,aAAsB,EAAE;aAC5F,CAAC;YACF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS;oBACrE,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBAChD,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACnC,IAAI,QAAQ,CAAC,MAAM,KAAK,qBAAqB;wBAAE,MAAM,IAAI,cAAc,EAAE,CAAC;oBAC1E,gFAAgF;oBAChF,MAAM,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;wBAChF,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC/G,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;gBACvG,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,KAAK,KAAK,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAClH,CAAC;YACD,mHAAmH;YACnH,+GAA+G;YAC/G,oHAAoH;YACpH,qGAAqG;YACrG,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACjD,MAAM,MAAM,GAAW,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,YAAY;gBACzE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACzH,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,QAAQ;kCACf,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU;gBACpF,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;YACpD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IACO,KAAK,CAAC,KAAK,CAAC,OAA2B,EAAE,MAAc;QAC7D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAA0B,EAAE;YAC1E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YAAC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3F,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAgC,wBAAwB,IAAI,CAAC,CAAC,CAAC,SAAS;gDAC1D,EAAE,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACtF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;YAChF,IAAI,IAAI,GAAG,GAAG;gBAAE,MAAM,IAAI,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;YAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,QAAQ;;+EAEmB,EACvE,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;YAClF,IAAI,OAAO,CAAC,OAAO,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YACvC,qHAAqH;YACrH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,CAAC,CAAC,QAAQ;oHACsC,EAC5G,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7E,IAAI,CAAC,SAAS;gBAAE,MAAM,IAAI,cAAc,EAAE,CAAC;YAC3C,+GAA+G;YAC/G,wGAAwG;YACxG,KAAK,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC;gBAC9E,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;gBACxH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;gBAClG,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACpH,CAAC;YACD,OAAO,GAAG,GAAG,YAAY,CAAC;QAC5B,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD;;;;;OAKG;IACK,KAAK,CAAC,UAAU,CAAC,EAAkB,EAAE,KAAa,EAAE,SAAiB,EAAE,SAAiB,EAC9F,KAAa,EAAE,SAAiB,EAAE,GAAW;QAC7C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,GAAG,CACvB,uCAAuC,KAAK;mHACiE,EAC7G,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC;QAC1C,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QACjE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,GAAG,CAAC,KAAK,KAAK,UAAU;gBAAE,SAAS;YACvC,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC1B,IAAI,IAAI,GAAG,KAAK,IAAI,SAAS;gBAAE,OAAO,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,QAAQ,GAAG,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,GAAG,GAAG,QAAQ,GAAG,CAAC,CAAC;IAC5B,CAAC;IACO,KAAK,CAAC,OAAO,CAAC,OAA2B,EAAE,MAAc;QAC/D,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACrC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,QAAQ;8CACE,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QACvH,CAAC,CAAC,CAAC;IACL,CAAC;IACD;;;;OAIG;IACH,KAAK,CAAC,GAAG,CAAI,OAA2B,EAAE,IAAyC,EACjF,MAAoB;QACpB,IAAI,MAAM,EAAE,OAAO;YAAE,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;QAC5D,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YAAC,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAC7C,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,KAAK,YAAY,aAAa;gBAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;YAC9G,IAAI,KAAK,YAAY,cAAc;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;YAClE,IAAI,KAAK,YAAY,eAAe;gBAAE,MAAM,KAAK,CAAC;YAClD,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACvC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,IAAI,KAAgD,CAAC;QACrD,IAAI,KAAK,GAAG,KAAK,CAAC;QAAC,IAAI,MAAM,GAAG,KAAK,CAAC;QACtC,IAAI,CAAC;YACH,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAAC,KAAK,GAAG,IAAI,CAAC;YAAC,CAAC;YACxD,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,KAAK,YAAY,aAAa;oBAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9G,IAAI,KAAK,YAAY,SAAS;oBAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;gBAChF,IAAI,KAAK,YAAY,cAAc;oBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;gBAClE,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,MAAM,EAAE,OAAO;gBAAE,MAAM,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC;YAC5D,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAC5C,iFAAiF;YACjF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACpG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QACtC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,IAAI,CAAC;YAAC,MAAM,KAAK,CAAC;QAC7B,CAAC;gBAAS,CAAC;YACT,IAAI,KAAK,KAAK,SAAS;gBAAE,YAAY,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5C,gHAAgH;YAChH,+GAA+G;YAC/G,8GAA8G;YAC9G,wEAAwE;YACxE,IAAI,CAAC;gBAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAAC,CAAC;YAC5C,MAAM,CAAC;gBAAC,IAAI,KAAK,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;YAAC,CAAC;QACnF,CAAC;IACH,CAAC;IACD,wFAAwF;IACxF,KAAK,CAAC,KAAK,CAAC,KAAoE,EAAE,OAAe;QAC/F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;eACnF,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,qBAAqB;YAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;QACzG,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBACrC,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;gBACzC,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBACnC,MAAM,EAAE,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,QAAQ,0DAA0D,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;gBACjI,CAAC;qBAAM,CAAC;oBACN,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,SAAS;mFAC6B,IAAI,CAAC,CAAC,CAAC,SAAS,8BAA8B,EACrH,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;QAAC,CAAC;IAC/D,CAAC;IACD;;;OAGG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;gBAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAAC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,UAAU,CAAC,CAAC;gBAC7E,MAAM,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,QAAQ,gDAAgD,IAAI,CAAC,CAAC,CAAC,QAAQ,oDAAoD,YAAY,uBAAuB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACxO,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,SAAS,4EAA4E,IAAI,CAAC,CAAC,CAAC,SAAS,+BAA+B,YAAY,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;gBACjP,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBAAC,IAAI,YAAY,GAAG,CAAC,CAAC;gBAAC,IAAI,OAAO,GAAG,CAAC,CAAC;gBAC9E,KAAK,MAAM,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC;oBAC9E,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;oBACxH,wGAAwG;oBACxG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;oBAClE,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC;oBAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC;oBAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClH,CAAC;gBACD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,YAAY,CAAC,EAAE,CAAC;YACvG,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YAAC,MAAM,IAAI,eAAe,CAAC,qBAAqB,CAAC,CAAC;QAAC,CAAC;IAC/D,CAAC;CACF;AAED,kFAAkF;AAClF,MAAM,UAAU,aAAa,CAAC,GAAW,EAAE,OAAe,EAAE,UAAyB,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;IAC3G,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC;WACxE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC;QAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;IACzG,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,GAAG,IAAI,CAAC;gBAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;YACvG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,GAAG,IAAI,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,KAAK;gBAAE,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,qBAAqB;QAAE,MAAM,IAAI,eAAe,CAAC,kBAAkB,CAAC,CAAC;IAC9F,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -233,7 +233,8 @@ export declare class SourceRevocations<Prepared = unknown> implements SourceSync
233
233
  * @returns What `work` answered.
234
234
  * @throws {SourceSyncFault} `rate_limited` while another worker holds the lease, with its expiry as `retryAt`;
235
235
  * `grant_rejected` for a stale handle, a lost lease or a disconnect; `cancelled` when `parent` aborted first;
236
- * `storage_unavailable` for any other failure. A provider refusal (`OAuthGrantRefused`) passes through.
236
+ * `storage_unavailable` for any other failure, a failure to delete the lease behind a result included; one behind
237
+ * what `work` threw never replaces it. A provider refusal (`OAuthGrantRefused`) passes through.
237
238
  */
238
239
  withGrant<T>(handle: SourceSyncHandle, work: (tokens: SealedTokenStore, signal: AbortSignal) => Promise<T>, parent?: AbortSignal): Promise<T>;
239
240
  private expireQueue;
@@ -1 +1 @@
1
- {"version":3,"file":"SourceRevocations.d.ts","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SourceRevocations.d.ts","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"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"}
@@ -379,7 +379,8 @@ export class SourceRevocations {
379
379
  * @returns What `work` answered.
380
380
  * @throws {SourceSyncFault} `rate_limited` while another worker holds the lease, with its expiry as `retryAt`;
381
381
  * `grant_rejected` for a stale handle, a lost lease or a disconnect; `cancelled` when `parent` aborted first;
382
- * `storage_unavailable` for any other failure. A provider refusal (`OAuthGrantRefused`) passes through.
382
+ * `storage_unavailable` for any other failure, a failure to delete the lease behind a result included; one behind
383
+ * what `work` threw never replaces it. A provider refusal (`OAuthGrantRefused`) passes through.
383
384
  */
384
385
  async withGrant(handle, work, parent) {
385
386
  if (parent?.aborted)
@@ -427,12 +428,14 @@ export class SourceRevocations {
427
428
  set: (key, sealed) => guarded((store) => store.set(key, sealed)),
428
429
  delete: (key) => guarded((store) => store.delete(key)),
429
430
  };
431
+ let failed = false;
430
432
  try {
431
433
  const result = await work(new SealedTokenStore(values, this.options.keys, { namespace: sourceGrantNamespace(scope) }), controller.signal);
432
434
  await guarded(async () => true);
433
435
  return result;
434
436
  }
435
437
  catch (error) {
438
+ failed = true;
436
439
  if (error instanceof SourceSyncFault || error instanceof OAuthGrantRefused)
437
440
  throw error;
438
441
  throw new SourceSyncFault('storage_unavailable');
@@ -440,10 +443,18 @@ export class SourceRevocations {
440
443
  finally {
441
444
  clearTimeout(timer);
442
445
  parent?.removeEventListener('abort', abort);
443
- await this.stored(async () => {
446
+ // The lease is this worker's own and expires on its own within 30 seconds, so a deletion that fails behind what
447
+ // `work` threw never replaces it: a refused grant has to reach the coordinator as `grant_rejected`, which fences
448
+ // the grant, not as `storage_unavailable`, which only schedules a retry. Behind a result it is still a storage
449
+ // failure.
450
+ try {
444
451
  await this.db.run(`DELETE FROM ${this.t.grants}
445
- WHERE tenant_id=$1 AND owner_id=$2 AND connection_id=$3 AND token=$4`, [...fields(scope), token]);
446
- });
452
+ WHERE tenant_id=$1 AND owner_id=$2 AND connection_id=$3 AND token=$4`, [...fields(scope), token]);
453
+ }
454
+ catch {
455
+ if (!failed)
456
+ throw new SourceSyncFault('storage_unavailable');
457
+ }
447
458
  }
448
459
  }
449
460
  async expireQueue() {
@@ -1 +1 @@
1
- {"version":3,"file":"SourceRevocations.js","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SourceRevocations.js","sourceRoot":"","sources":["../../src/sync/SourceRevocations.ts"],"names":[],"mappings":"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"}