run402 4.47.0 → 4.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"gitvault-address.js","sourceRoot":"","sources":["../../src/node/gitvault-address.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitvault-address.js","sourceRoot":"","sources":["../../src/node/gitvault-address.ts"],"names":[],"mappings":"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"}
@@ -171,6 +171,8 @@ export interface GitvaultLockOptions {
171
171
  /** Total wait budget before `GITVAULT_KEYSTORE_LOCKED` (ms). Default 30 s. */
172
172
  timeoutMs?: number;
173
173
  }
174
+ /** The local object cache's recency window (design D3: "genesis + newest N=8 heads + newest carriers"). */
175
+ export declare const GITVAULT_OBJECT_CACHE_WINDOW = 8;
174
176
  /** Default keystore root: `<active profile config dir>/gitvault`. */
175
177
  export declare function getGitvaultKeystoreRoot(): string;
176
178
  /**
@@ -214,6 +216,46 @@ export declare class GitvaultKeystore {
214
216
  saveRepo(repo: Omit<GitvaultRepoFile, "version" | "updated_at">): GitvaultRepoFile;
215
217
  /** Update the dual pins / last ref transaction without touching key material. */
216
218
  updateRepo(repoId: string, patch: Partial<Pick<GitvaultRepoFile, "head_pin" | "materialized_pin" | "verified_prefix" | "last_ref_transaction" | "epoch" | "envelope_recipient_pins" | "k_repo_hex" | "epoch_keys" | "known_pin_manifest">>): GitvaultRepoFile;
219
+ private objectsRepoDir;
220
+ private objectsGenesisPath;
221
+ private objectsHeadsDir;
222
+ private objectsCarriersDir;
223
+ private objectsHeadPath;
224
+ private objectsCarrierPath;
225
+ private readCachedFile;
226
+ private writeCachedFile;
227
+ private decodeCachedBytes;
228
+ /** Genesis is one small object per vault, immutable forever — cached and never evicted. */
229
+ readCachedGenesis(repoId: string): {
230
+ sha256: string;
231
+ bytes: Uint8Array;
232
+ } | null;
233
+ writeCachedGenesis(repoId: string, sha256: string, bytes: Uint8Array): void;
234
+ readCachedHead(repoId: string, generation: string): {
235
+ sha256: string;
236
+ bytes: Uint8Array;
237
+ } | null;
238
+ /** Writes the head, then evicts anything more than {@link GITVAULT_OBJECT_CACHE_WINDOW} generations behind it. */
239
+ writeCachedHead(repoId: string, generation: string, sha256: string, bytes: Uint8Array): void;
240
+ readCachedCarrier(repoId: string, objectId: string): {
241
+ sha256: string;
242
+ bytes: Uint8Array;
243
+ generation: string;
244
+ } | null;
245
+ /** Writes the carrier (keyed by `object_id`, tagged with the generation that referenced it), then sweeps the window. */
246
+ writeCachedCarrier(repoId: string, objectId: string, generation: string, sha256: string, bytes: Uint8Array): void;
247
+ /**
248
+ * Drop heads and carriers more than {@link GITVAULT_OBJECT_CACHE_WINDOW}
249
+ * generations behind `latestGeneration` — genesis is exempt (kept
250
+ * forever). Runs inline on every cache write; also callable directly
251
+ * (`sweepObjectCache`, wired into `repos gc`) as a periodic backstop that
252
+ * catches any orphan a crashed write might have left behind. Best-effort:
253
+ * an unlink failure (e.g. already gone) is silently ignored, matching the
254
+ * cache's own "a miss just refetches" posture.
255
+ */
256
+ private evictObjectCache;
257
+ /** The `repos gc`-time sweep (task 4.2): re-applies the SAME eviction window as an inline write would, for every repo this keystore holds. Safe to call on a repo with no cache directory at all (a no-op). */
258
+ sweepObjectCache(repoId: string): void;
217
259
  /**
218
260
  * Record a COMMITTED epoch rotation (D194, rev 42): advances the local
219
261
  * "current" pointer (`epoch` + `k_repo_hex`) to the new epoch's key AND
@@ -1 +1 @@
1
- {"version":3,"file":"gitvault-keystore.d.ts","sourceRoot":"","sources":["../../src/node/gitvault-keystore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitvault-keystore.d.ts","sourceRoot":"","sources":["../../src/node/gitvault-keystore.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,17 @@ function fail(code, message, context, details) {
37
37
  const O_NOFOLLOW = constants.O_NOFOLLOW ?? 0;
38
38
  const DIR_MODE = 0o700;
39
39
  const FILE_MODE = 0o600;
40
+ /** The local object cache's recency window (design D3: "genesis + newest N=8 heads + newest carriers"). */
41
+ export const GITVAULT_OBJECT_CACHE_WINDOW = 8;
42
+ /** Bare hex16 generation comparison for cache eviction — deliberately NOT `generationToBigInt` (gitvault-publication.ts), which this lower-level module must not import (publication already imports FROM here). Malformed input sorts as "evict" rather than throwing: a corrupt cache entry should never block eviction of everything else. */
43
+ function genToBigInt(generation) {
44
+ try {
45
+ return /^[0-9a-f]{16}$/.test(generation) ? BigInt(`0x${generation}`) : -1n;
46
+ }
47
+ catch {
48
+ return -1n;
49
+ }
50
+ }
40
51
  /** Default keystore root: `<active profile config dir>/gitvault`. */
41
52
  export function getGitvaultKeystoreRoot() {
42
53
  return join(getConfigDir(), "gitvault");
@@ -306,6 +317,125 @@ export class GitvaultKeystore {
306
317
  return full;
307
318
  });
308
319
  }
320
+ // ── local immutable-object cache (gitvault-client-round-trips design D3) ──
321
+ //
322
+ // `<rootDir>/<repo_id>/objects/` — beside the repo file above, NOT inside
323
+ // it: genesis bytes, admitted head bytes, and carrier (ref_state /
324
+ // retention_roots) ciphertext this principal has already fetched and
325
+ // verified once. Holds ONLY ciphertext and signed public objects — never
326
+ // decrypted plaintext, key material, or key envelopes. This class stores
327
+ // and retrieves bytes alongside the sha256 they were verified against; it
328
+ // does not itself re-verify anything — every caller (`GitvaultVault`)
329
+ // re-checks a cache hit against the SAME pin/receipt it would check
330
+ // network bytes against before trusting it, so a stale or tampered entry
331
+ // can only ever be discarded and refetched, never silently trusted. A
332
+ // missing or corrupt cache file reads back as `null` (a plain cache miss),
333
+ // never a thrown error — the cache is a pure accelerator, and its absence
334
+ // degrades to exactly today's network-fetch behavior.
335
+ objectsRepoDir(repoId) {
336
+ if (!GITVAULT_SRC_RE.test(repoId))
337
+ fail("GITVAULT_BAD_REPO_ID", `not a src_ id: ${repoId}`, "resolving gitvault object cache path");
338
+ return join(this.rootDir, repoId, "objects");
339
+ }
340
+ objectsGenesisPath(repoId) { return join(this.objectsRepoDir(repoId), "genesis.json"); }
341
+ objectsHeadsDir(repoId) { return join(this.objectsRepoDir(repoId), "heads"); }
342
+ objectsCarriersDir(repoId) { return join(this.objectsRepoDir(repoId), "carriers"); }
343
+ objectsHeadPath(repoId, generation) { return join(this.objectsHeadsDir(repoId), `${generation}.json`); }
344
+ objectsCarrierPath(repoId, objectId) { return join(this.objectsCarriersDir(repoId), `${objectId}.json`); }
345
+ readCachedFile(path) {
346
+ const text = readFileNoFollow(path);
347
+ if (!text)
348
+ return null;
349
+ try {
350
+ const parsed = JSON.parse(text);
351
+ return typeof parsed === "object" && parsed !== null ? parsed : null;
352
+ }
353
+ catch {
354
+ return null;
355
+ }
356
+ }
357
+ writeCachedFile(path, data) {
358
+ writeFileAtomic0600(path, JSON.stringify(data));
359
+ }
360
+ decodeCachedBytes(data) {
361
+ if (!data || typeof data.sha256 !== "string" || typeof data.bytes_base64 !== "string")
362
+ return null;
363
+ try {
364
+ return { sha256: data.sha256, bytes: new Uint8Array(Buffer.from(data.bytes_base64, "base64")) };
365
+ }
366
+ catch {
367
+ return null;
368
+ }
369
+ }
370
+ /** Genesis is one small object per vault, immutable forever — cached and never evicted. */
371
+ readCachedGenesis(repoId) {
372
+ return this.decodeCachedBytes(this.readCachedFile(this.objectsGenesisPath(repoId)));
373
+ }
374
+ writeCachedGenesis(repoId, sha256, bytes) {
375
+ this.writeCachedFile(this.objectsGenesisPath(repoId), { sha256, bytes_base64: Buffer.from(bytes).toString("base64") });
376
+ }
377
+ readCachedHead(repoId, generation) {
378
+ return this.decodeCachedBytes(this.readCachedFile(this.objectsHeadPath(repoId, generation)));
379
+ }
380
+ /** Writes the head, then evicts anything more than {@link GITVAULT_OBJECT_CACHE_WINDOW} generations behind it. */
381
+ writeCachedHead(repoId, generation, sha256, bytes) {
382
+ this.writeCachedFile(this.objectsHeadPath(repoId, generation), { sha256, bytes_base64: Buffer.from(bytes).toString("base64") });
383
+ this.evictObjectCache(repoId, generation);
384
+ }
385
+ readCachedCarrier(repoId, objectId) {
386
+ const data = this.readCachedFile(this.objectsCarrierPath(repoId, objectId));
387
+ const decoded = this.decodeCachedBytes(data);
388
+ if (!decoded || typeof data?.generation !== "string")
389
+ return null;
390
+ return { ...decoded, generation: data.generation };
391
+ }
392
+ /** Writes the carrier (keyed by `object_id`, tagged with the generation that referenced it), then sweeps the window. */
393
+ writeCachedCarrier(repoId, objectId, generation, sha256, bytes) {
394
+ this.writeCachedFile(this.objectsCarrierPath(repoId, objectId), { sha256, bytes_base64: Buffer.from(bytes).toString("base64"), generation });
395
+ this.evictObjectCache(repoId, generation);
396
+ }
397
+ /**
398
+ * Drop heads and carriers more than {@link GITVAULT_OBJECT_CACHE_WINDOW}
399
+ * generations behind `latestGeneration` — genesis is exempt (kept
400
+ * forever). Runs inline on every cache write; also callable directly
401
+ * (`sweepObjectCache`, wired into `repos gc`) as a periodic backstop that
402
+ * catches any orphan a crashed write might have left behind. Best-effort:
403
+ * an unlink failure (e.g. already gone) is silently ignored, matching the
404
+ * cache's own "a miss just refetches" posture.
405
+ */
406
+ evictObjectCache(repoId, latestGeneration) {
407
+ const cutoff = genToBigInt(latestGeneration) - BigInt(GITVAULT_OBJECT_CACHE_WINDOW - 1);
408
+ const pruneDir = (dir, generationOf) => {
409
+ if (!existsSync(dir))
410
+ return;
411
+ for (const entry of readdirSync(dir)) {
412
+ if (!entry.endsWith(".json"))
413
+ continue;
414
+ const gen = generationOf(entry);
415
+ if (gen === null || genToBigInt(gen) < cutoff) {
416
+ try {
417
+ unlinkSync(join(dir, entry));
418
+ }
419
+ catch { /* already gone — fine */ }
420
+ }
421
+ }
422
+ };
423
+ pruneDir(this.objectsHeadsDir(repoId), (entry) => {
424
+ const gen = entry.slice(0, -".json".length);
425
+ return /^[0-9a-f]{16}$/.test(gen) ? gen : null;
426
+ });
427
+ pruneDir(this.objectsCarriersDir(repoId), (entry) => {
428
+ const data = this.readCachedFile(join(this.objectsCarriersDir(repoId), entry));
429
+ return typeof data?.generation === "string" ? data.generation : null;
430
+ });
431
+ }
432
+ /** The `repos gc`-time sweep (task 4.2): re-applies the SAME eviction window as an inline write would, for every repo this keystore holds. Safe to call on a repo with no cache directory at all (a no-op). */
433
+ sweepObjectCache(repoId) {
434
+ const repo = this.readRepo(repoId);
435
+ const newest = repo?.materialized_pin?.generation ?? repo?.head_pin?.generation ?? null;
436
+ if (newest)
437
+ this.evictObjectCache(repoId, newest);
438
+ }
309
439
  /**
310
440
  * Record a COMMITTED epoch rotation (D194, rev 42): advances the local
311
441
  * "current" pointer (`epoch` + `k_repo_hex`) to the new epoch's key AND
@@ -1 +1 @@
1
- {"version":3,"file":"gitvault-keystore.js","sourceRoot":"","sources":["../../src/node/gitvault-keystore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACzL,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EACL,cAAc,EACd,eAAe,EACf,kCAAkC,EAClC,gCAAgC,EAChC,cAAc,EACd,UAAU,EACV,uBAAuB,EACvB,oBAAoB,EACpB,aAAa,EACb,uBAAuB,EACvB,yBAAyB,EACzB,sBAAsB,EACtB,UAAU,EACV,eAAe,EACf,iBAAiB,EACjB,WAAW,EACX,oBAAoB,EACpB,aAAa,GACd,MAAM,kCAAkC,CAAC;AA4J1C,SAAS,IAAI,CAAC,IAAY,EAAE,OAAe,EAAE,OAAe,EAAE,OAAiB;IAC7E,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;AAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC;AACvB,MAAM,SAAS,GAAG,KAAK,CAAC;AAExB,qEAAqE;AACrE,MAAM,UAAU,uBAAuB;IACrC,OAAO,IAAI,CAAC,YAAY,EAAE,EAAE,UAAU,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC;YAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;gBAAS,CAAC;YAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,yEAAyE;IAC3E,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,IAAY;IAC5D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,SAAS,CAAC,GAAG,CAAC,CAAC;IACf,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC;QACzD,IAAI,CAAC,2BAA2B,EAAE,wCAAwC,IAAI,EAAE,EAAE,gCAAgC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAChI,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACzH,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,UAAU,EAAE,SAAS,CAAC,CAAC;IAC5G,IAAI,CAAC;QACH,SAAS,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACpB,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IACD,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,CAAC;AAChB,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,IAAI,EAAE,CAAC;IACP,IAAI,CAAC;QACH,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC;QACxB,IAAI,CAAC,2BAA2B,EAAE,uCAAuC,IAAI,EAAE,EAAE,gCAAgC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/H,CAAC;IACD,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,SAAkB;IACjD,MAAM,QAAQ,GAAgC,EAAE,CAAC;IACjD,IAAI,EAAE,CAAC;IACP,IAAI,CAAC;QACH,EAAE,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,EAAE,CAAC,cAAc,EAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,KAAK,CAAC;QAC7B,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACjD,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,2BAA2B,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnH,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,EAAE,CAAC,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC,CAAC;IACjI,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,gFAAgF;AAEhF,MAAM,OAAO,gBAAgB;IAClB,OAAO,CAAS;IACR,GAAG,CAAa;IAChB,iBAAiB,CAAU;IAE5C,YAAY,UAAmC,EAAE;QAC/C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,uBAAuB,EAAE,CAAC;QAC5D,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,KAAK,CAAC;IAC9D,CAAC;IAED,2EAA2E;IAC3E,MAAM,CAAC,IAAI,CAAC,UAAmC,EAAE;QAC/C,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACzC,KAAK,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,UAAU,CAAC;YAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QAC3F,MAAM,QAAQ,GAAG,EAAE,CAAC,gBAAgB,EAAE,CAAC;QACvC,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;YAChD,IAAI,CAAC,+BAA+B,EAAE,2CAA2C,EAAE,2BAA2B,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAChI,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,YAAY,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC1E,IAAI,QAAQ,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC9D,IAAI,WAAW,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IACpE,IAAI,UAAU,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAClE,IAAI,YAAY,KAAa,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACtE,QAAQ,CAAC,MAAc;QACrB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,sBAAsB,EAAE,kBAAkB,MAAM,EAAE,EAAE,8BAA8B,CAAC,CAAC;QAC5H,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC;IAC/C,CAAC;IACD,mBAAmB,CAAC,MAAc;QAChC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,sBAAsB,EAAE,kBAAkB,MAAM,EAAE,EAAE,iCAAiC,CAAC,CAAC;QAC/H,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,MAAM,wBAAwB,CAAC,CAAC;IACnE,CAAC;IAED,yBAAyB;IAEzB,gGAAgG;IAChG,gBAAgB;QACd,MAAM,QAAQ,GAAgC,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,GAAY,EAAE,EAAE;YAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,OAAO;YAClD,QAAQ,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QACzC,CAAC,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACnD,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACjB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpB,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC3B,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;wBAAE,SAAS;oBACtC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,KAAK,CAAC,CAAC;gBAChD,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAChF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,kBAAkB;IAElB,qEAAqE;IACrE,KAAK,CAAC,KAAyB,EAAE,MAAe,EAAE,OAAiC;QACjF,MAAM,KAAK,GAAuB,EAAE,EAAE,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9J,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,IAAI,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,2BAA2B,EAAE,kDAAkD,EAAE,8BAA8B,CAAC,CAAC;QACxH,CAAC;QACD,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,QAAQ,GAAG,UAAU,EAAE,SAAS,CAAC,CAAC;QAC5H,IAAI,CAAC;YACH,SAAS,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5C,SAAS,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;gBAAS,CAAC;YACT,SAAS,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;IACH,CAAC;IAED,wCAAwC;IACxC,YAAY;QACV,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAuB,CAAC,CAAC;IACtG,CAAC;IAED,iBAAiB;IAEjB,YAAY;QACV,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAyB,CAAC;QACxD,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ,EAAE,CAAC;YACtH,IAAI,CAAC,2BAA2B,EAAE,oDAAoD,EAAE,2BAA2B,CAAC,CAAC;QACvH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,uEAAuE;IACvE,cAAc;QACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG,sBAAsB,EAAE,CAAC;QACzC,MAAM,UAAU,GAAG,yBAAyB,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAyB;YACrC,OAAO,EAAE,CAAC;YACV,gBAAgB,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;YAC1C,cAAc,EAAE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC;YAC/C,mBAAmB,EAAE,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC;YACtD,0BAA0B,EAAE,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC;YAC9D,iBAAiB,EAAE,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC;YACrD,sBAAsB,EAAE,aAAa,CAAC,UAAU,CAAC,UAAU,CAAC;YAC5D,UAAU,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;SAChD,CAAC;QACF,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAClC,IAAI,CAAC,4BAA4B,EAAE,4DAA4D,EAAE,4BAA4B,CAAC,CAAC;QACjI,CAAC;QACD,mBAAmB,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,kBAAkB,EAAE,SAAS,EAAE,EAAE,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAC1J,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,0FAA0F;IAC1F,cAAc,CAAC,WAAiC,IAAI,CAAC,eAAe,EAAE;QACpE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;YAAE,OAAO,IAAI,CAAC;QAC5C,MAAM,EAAE,GAAG,sBAAsB,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACzE,IAAI,aAAa,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YAClE,IAAI,CAAC,2BAA2B,EAAE,gEAAgE,EAAE,8BAA8B,CAAC,CAAC;QACtI,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,6EAA6E;IAC7E,iBAAiB,CAAC,WAAiC,IAAI,CAAC,eAAe,EAAE;QACvE,IAAI,CAAC,QAAQ,CAAC,0BAA0B;YAAE,OAAO,IAAI,CAAC;QACtD,MAAM,EAAE,GAAG,yBAAyB,CAAC,UAAU,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACtF,IAAI,aAAa,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YACrE,IAAI,CAAC,2BAA2B,EAAE,kEAAkE,EAAE,iCAAiC,CAAC,CAAC;QAC3I,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,eAAe;QACrB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,IAAI,CAAC,qBAAqB,EAAE,kCAAkC,EAAE,2BAA2B,EAAE,EAAE,SAAS,EAAE,gCAAgC,EAAE,CAAC,CAAC;QACvJ,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,mBAAmB;IAEnB,QAAQ,CAAC,MAAc;QACrB,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACrD,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;QACpD,IAAI,MAAM,CAAC,OAAO,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC/F,IAAI,CAAC,2BAA2B,EAAE,SAAS,MAAM,6CAA6C,EAAE,4BAA4B,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;QACrJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,WAAW;QACT,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,OAAO,EAAE,CAAC;QAC1C,OAAO,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAClJ,CAAC;IAED,oEAAoE;IACpE,QAAQ,CAAC,IAAsD;QAC7D,MAAM,IAAI,GAAqB,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,UAAU,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QACxG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;YACnC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;QAC7G,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iFAAiF;IACjF,UAAU,CAAC,MAAc,EAAE,KAA+M;QACxO,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,6BAA6B,EAAE,oBAAoB,MAAM,EAAE,EAAE,6BAA6B,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACrI,MAAM,IAAI,GAAqB,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YAC1G,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,mBAAmB,CAAC,MAAc,EAAE,KAAoD;QACtF,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE;YACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACvC,IAAI,CAAC,QAAQ;gBAAE,IAAI,CAAC,6BAA6B,EAAE,oBAAoB,MAAM,EAAE,EAAE,mCAAmC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3I,MAAM,SAAS,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC;YACrI,MAAM,IAAI,GAAqB,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,KAAK,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;YACjL,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,IAAI,CAAC,KAAK,CAAC,yBAAyB,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,iBAAiB,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAChI,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0BAA0B;IAE1B,mBAAmB,CAAC,OAAgC;QAClD,6EAA6E;QAC7E,gDAAgD;QAChD,mBAAmB,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjG,IAAI,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACrG,CAAC;IAED,mBAAmB,CAAC,MAAc;QAChC,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAA6B,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,CAAC;IAED,sBAAsB;IAEtB;;;;OAIG;IACH,YAAY,CAAI,MAAc,EAAE,EAAW,EAAE,UAA+B,EAAE;QAC5E,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;QAChD,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,EAAE,EAAE,CAAC;QACxC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,GAAG,IAAI,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,SAAS,CAAC;YACR,IAAI,CAAC;gBACH,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACvC,MAAM;YACR,CAAC;YAAC,OAAO,CAAU,EAAE,CAAC;gBACpB,IAAK,CAA2B,CAAC,IAAI,KAAK,QAAQ;oBAAE,MAAM,CAAC,CAAC;gBAC5D,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC;oBAAE,SAAS;gBACnE,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;oBAC3B,IAAI,CAAC,0BAA0B,EAAE,sCAAsC,MAAM,EAAE,EAAE,8BAA8B,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBACvJ,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;gBAC9B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,uBAAuB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClI,CAAC;QAAC,MAAM,CAAC;YACP,8BAA8B;QAChC,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC;gBAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC5D,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAEgB,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAElC,gBAAgB,CAAC,OAAe,EAAE,MAAc,EAAE,YAAoB;QAC5E,IAAI,QAA4B,CAAC;QACjC,IAAI,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7B,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC;YAC9B,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;YAC5D,IAAI,KAAK;gBAAE,QAAQ,GAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAsB,CAAC,GAAG,CAAC;QACpE,CAAC;QAAC,MAAM,CAAC;YACP,2CAA2C;QAC7C,CAAC;QACD,MAAM,SAAS,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5F,IAAI,GAAG,GAAG,YAAY,IAAI,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,cAAc,CAAC,OAAO,CAAC,CAAC;gBACxB,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,QAAQ,IAAI,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACrG,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,yBAAyB;IAEzB;;;OAGG;IACH,MAAM,CAAC,MAAc,EAAE,qBAA8B;QACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,KAA4B,CAAC;QACjC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,gCAAgC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;QAChK,CAAC;aAAM,IAAI,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC;YAC7B,wEAAwE;YACxE,iEAAiE;YACjE,KAAK,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;QACnE,CAAC;aAAM,IAAI,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAC7B,KAAK,GAAG,QAAQ,CAAC,0BAA0B;gBACzC,CAAC,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,WAAW,EAAE,uBAAuB,EAAE;gBACpF,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,gCAAgC,EAAE,WAAW,EAAE,kCAAkC,EAAE,CAAC;QAC5J,CAAC;aAAM,IAAI,QAAQ,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YAC1D,KAAK,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;QACnE,CAAC;aAAM,IAAI,qBAAqB,KAAK,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,KAAK,qBAAqB,EAAE,CAAC;YACxG,KAAK,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,EAAE,CAAC;QAC7E,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAK,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,qBAAqB,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;QAClE,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,uBAAuB,CAAC,KAK7B;QACC,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ;YAAE,IAAI,CAAC,qBAAqB,EAAE,kCAAkC,EAAE,+BAA+B,EAAE,EAAE,SAAS,EAAE,gCAAgC,EAAE,CAAC,CAAC;QACjK,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,qBAAqB,EAAE,kCAAkC,EAAE,+BAA+B,EAAE,EAAE,SAAS,EAAE,gCAAgC,EAAE,CAAC,CAAC;QAClK,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;QACpC,IAAI,CAAC,oBAAoB,CAAC,OAA0C,EAAE,OAAO,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACtG,IAAI,CAAC,4BAA4B,EAAE,yCAAyC,EAAE,+BAA+B,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/I,CAAC;QACD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,yBAAyB,EAAE,0DAA0D,EAAE,+BAA+B,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QACjL,CAAC;QACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAA0C,CAAC,CAAC;QACjF,MAAM,OAAO,GAAG,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpF,IAAI,KAAK,GAA0C,yBAAyB,CAAC;QAC7E,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,yBAAyB,EAAE,iEAAiE,EAAE,+BAA+B,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC9K,CAAC;YACD,KAAK,GAAG,SAAS,CAAC;QACpB,CAAC;QACD,IAAI,QAAQ,CAAC,qBAAqB,KAAK,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YACvE,IAAI,CAAC,qCAAqC,EAAE,uDAAuD,EAAE,+BAA+B,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,EAAE,CAAC,CAAC;QACnM,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAChH,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;YACzB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC;YAC7B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,cAAc,EAAE,UAAU;YAC1B,QAAQ,EAAE,IAAI;YACd,oBAAoB,EAAE,IAAI;YAC1B,UAAU,EAAE,wBAAwB;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,6BAA6B,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,qEAAqE;IACrE,eAAe;QACb,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAC/B,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAC;QACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,EAAE,CAAC;YACpG,IAAI,CAAC,2BAA2B,EAAE,qCAAqC,EAAE,2BAA2B,CAAC,CAAC;QACxG,CAAC;QACD,OAAO;YACL,mBAAmB,EAAE,EAAE,CAAC,mBAAmB;YAC3C,sBAAsB,EAAE,EAAE,CAAC,sBAAsB;YACjD,mBAAmB,EAAE,OAAO,CAAC,EAAE,CAAC,gBAAgB,CAAC;YACjD,sBAAsB,EAAE,OAAO,CAAC,EAAE,CAAC,0BAA0B,CAAC;SAC/D,CAAC;IACJ,CAAC;CACF;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,GAAW;IAC3B,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAQ,CAA2B,CAAC,IAAI,KAAK,OAAO,CAAC;IACvD,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC1C,wFAAwF;IACxF,IAAI,UAAU,CAAC,KAAK,CAAC;QAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACzC,SAAS,CAAC,OAAO,CAAC,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"gitvault-keystore.js","sourceRoot":"","sources":["../../src/node/gitvault-keystore.ts"],"names":[],"mappings":"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"}
@@ -400,6 +400,22 @@ export interface GitvaultMaintenanceLease {
400
400
  hard_deadline_at: string | null;
401
401
  }
402
402
  export interface GitvaultTransport extends GitvaultCreationTransport {
403
+ /**
404
+ * Read N independent carrier objects (ref_state, retention_roots, WAL/
405
+ * checkpoint packs — anything `object-reads`-addressed, never a
406
+ * generation-addressed head/admission) in ONE presigned batch (gitvault-
407
+ * client-round-trips design D2): one `object-reads` POST naming every
408
+ * path, then the resulting GETs issued with bounded concurrency. Order in
409
+ * the result array matches `paths`; a missing object is `null` at its
410
+ * index, the same "absent" reading {@link GitvaultCreationTransport.getObject}
411
+ * gives for one object. Callers that need exactly one object still use
412
+ * {@link GitvaultCreationTransport.getObject} — this is for the plural
413
+ * case only, so a single-object caller never pays a batch's overhead.
414
+ */
415
+ getObjects(request: {
416
+ repo_id: string;
417
+ paths: string[];
418
+ }): Promise<Array<Uint8Array | null>>;
403
419
  listHeads(request: GitvaultHeadsListingRequest & {
404
420
  repo_id: string;
405
421
  }): Promise<GitvaultHeadsListingPage>;
@@ -665,6 +681,20 @@ export interface GitvaultHttpTransportOptions {
665
681
  /** Wire shape: every vault-scoped route is `/gitvault/v1/vaults/:vault_id/...`; `vault_id` is the `repo_id` unless a mapping is supplied (D185). */
666
682
  vaultIdFor?: (repoId: string) => string;
667
683
  }
684
+ /**
685
+ * Independent reads/PUTs within one gitvault step run at this concurrency
686
+ * (design D2) — "browser-era origin etiquette", well within what S3/the
687
+ * gateway tolerate, and it keeps in-flight memory bounded by ~6×frame size.
688
+ * Chain-ordered steps (the head-chain walk, admission, readback) never call
689
+ * this — they stay strictly sequential.
690
+ */
691
+ export declare const GITVAULT_TRANSPORT_CONCURRENCY = 6;
692
+ /**
693
+ * Run `fn` over `items` with at most `limit` in flight at once, preserving
694
+ * result order regardless of completion order. A plain worker-pool: `limit`
695
+ * workers each pull the next unclaimed index until the queue is empty.
696
+ */
697
+ export declare function mapBounded<T, R>(items: readonly T[], limit: number, fn: (item: T, index: number) => Promise<R>): Promise<R[]>;
668
698
  /**
669
699
  * The `fetch`-backed transport over the SDK kernel. Presigned PUTs carry
670
700
  * `If-None-Match: *` (create-only — the bucket policy demands it) and the
@@ -696,6 +726,12 @@ export declare const gitvaultPaths: {
696
726
  /** `recipient-pins/<pin_manifest_version>.json` (D197, rev 42) — version-addressed, plaintext-structured, writer-signed. */
697
727
  readonly pinManifest: (pinManifestVersion: string) => string;
698
728
  };
729
+ export interface GitvaultRestoreMarker {
730
+ generation: string;
731
+ head_sha256: string;
732
+ }
733
+ /** Read this target directory's `restored_through` marker, or `null` when nothing was ever restored into it. */
734
+ export declare function readGitvaultRestoreMarker(targetRepoDir: string): Promise<GitvaultRestoreMarker | null>;
699
735
  export interface GitvaultVaultOptions {
700
736
  keystore: GitvaultKeystore;
701
737
  transport: GitvaultTransport;
@@ -812,6 +848,18 @@ export interface GitvaultPushOptions {
812
848
  cutoff?: GitvaultCutoffOptions;
813
849
  /** Built lazily at head-sign time — the deploy lane may still be computing the plan digest. */
814
850
  capture_binding?: GitvaultCaptureBinding | (() => Promise<GitvaultCaptureBinding | null> | GitvaultCaptureBinding | null);
851
+ /**
852
+ * A caller-supplied base (gitvault-client-round-trips design D1) — used
853
+ * VERBATIM for the first attempt instead of calling {@link GitvaultVault.materialize}
854
+ * again. Only meaningful for a base the caller JUST materialized from this
855
+ * same vault instance (e.g. one `list → push` protocol exchange sharing
856
+ * one snapshot for both `expected_old` derivation and the push itself) —
857
+ * supplying a stale base is always SAFE (admission is CAS on generation;
858
+ * a stale base only makes a conflict more likely, never an incorrect
859
+ * admission), just not the round-trip win. A conflict retry re-materializes
860
+ * from storage exactly as when no base is supplied at all.
861
+ */
862
+ base?: GitvaultMaterializedState;
815
863
  }
816
864
  export interface GitvaultPublishResult {
817
865
  generation: string;
@@ -1012,17 +1060,70 @@ export declare class GitvaultVault {
1012
1060
  decryptValidate?: boolean;
1013
1061
  strict?: boolean;
1014
1062
  }): Promise<GitvaultVerifiedState>;
1063
+ /**
1064
+ * Read one NEWLY-LISTED head's raw bytes, trying the local cache first
1065
+ * (design D3), re-verified against `expectedSha256` — the SAME check
1066
+ * network bytes get. Safe to cache-serve ONLY because a caller here
1067
+ * always supplies a hash a FRESH `listHeads` call just reported as
1068
+ * current — the cache never substitutes for that freshness check, it just
1069
+ * avoids re-downloading bytes a live listing already vouched for. A cache
1070
+ * miss or a hash mismatch (never trusted, always falls through) fetches
1071
+ * from the network and, on a match, refreshes the cache entry. Returns
1072
+ * whatever the network returned on a final miss too (including `null`) —
1073
+ * callers keep their own existing absent/mismatch handling unchanged.
1074
+ *
1075
+ * Deliberately NOT used by {@link readHead}: that call verifies the
1076
+ * PINNED generation is STILL held by the server, with no fresh listing
1077
+ * involved — its entire purpose is detecting server-side loss/rollback,
1078
+ * which a cache read can never observe. That call always goes live.
1079
+ */
1080
+ private readCachedHeadBytes;
1081
+ /**
1082
+ * Confirm the server STILL holds the pinned generation, unchanged —
1083
+ * ALWAYS a live network read (see {@link readCachedHeadBytes}'s doc
1084
+ * comment for why this specific check is not cacheable: it exists to
1085
+ * detect server-side loss, which a cache can never observe). A
1086
+ * successful read still WARMS the cache afterward — later reads of this
1087
+ * SAME generation via the chain walk or restore benefit from it; only
1088
+ * THIS call's own read is exempt.
1089
+ */
1015
1090
  private readHead;
1016
1091
  /**
1017
- * Decrypt one encrypted carrier object by its receipt; any failure is
1018
- * `CHAIN_UNUSABLE`. `keyOverride` supplies the exact `(epoch, k_repo)` this
1019
- * carrier was sealed under REQUIRED for any generation that is not
1020
- * necessarily under `this.epoch()`/`this.kRepo()` (this principal's
1021
- * CURRENT pointer), which is exactly the case across an epoch rotation;
1022
- * omitted call sites (checkpoint/prune paths untouched by this fold) keep
1023
- * the prior CURRENT-pointer behavior unchanged.
1092
+ * Decrypt + verify one carrier's already-fetched ciphertext frame; any
1093
+ * failure is `CHAIN_UNUSABLE`. Split out of {@link openCarrier} so a
1094
+ * caller that fetched the frame itself (a cache hit, or one leg of a
1095
+ * batched read) can reuse the same decode + identity/signature checks.
1096
+ *
1097
+ * `keyOverride` supplies the exact `(epoch, k_repo)` this carrier was
1098
+ * sealed under REQUIRED for any generation that is not necessarily
1099
+ * under `this.epoch()`/`this.kRepo()` (this principal's CURRENT
1100
+ * pointer), which is exactly the case across an epoch rotation; omitted
1101
+ * call sites (checkpoint/prune paths untouched by this fold) keep the
1102
+ * prior CURRENT-pointer behavior unchanged.
1103
+ */
1104
+ private decodeCarrierFrame;
1105
+ /**
1106
+ * Fetch (network) + decrypt one carrier object by its receipt; any
1107
+ * failure is `CHAIN_UNUSABLE`. Design D3: `ref_state`/`retention_roots`
1108
+ * ciphertext is cached beside the keystore's per-repo state, re-verified
1109
+ * against `receipt.ciphertext_sha256` on every use — a hit skips the
1110
+ * network read entirely. `checkpoint_manifest` is never cached (outside
1111
+ * D3's table). The cache write derives its generation tag from the
1112
+ * DECODED object's own `generation` field, so no caller needs to thread
1113
+ * one through by hand.
1024
1114
  */
1025
1115
  private openCarrier;
1116
+ /**
1117
+ * `materialize`'s ref_state + retention_roots read, batched (design D2):
1118
+ * cache-check both first, then ONE `getObjects` call (one presigned batch
1119
+ * + concurrent GETs) for whichever missed, instead of two independent
1120
+ * presign-then-GET round trips. Falls through to zero network calls when
1121
+ * both are cache-warm. `keyOverride` is the epoch/k_repo the CARRYING
1122
+ * HEAD sealed both carriers under (D194) — both always share one head, so
1123
+ * one override serves both, unlike the WAL/checkpoint pack loops in
1124
+ * {@link restoreObjectsInto} which span many heads and many epochs.
1125
+ */
1126
+ private openMaterializeCarriers;
1026
1127
  /**
1027
1128
  * Verify to newest, then decrypt + apply its carriers — advancing the
1028
1129
  * materialized pin. `options.persist` (default `true`) is forwarded to
@@ -1201,7 +1302,14 @@ export declare class GitvaultVault {
1201
1302
  * next state from the winner.
1202
1303
  */
1203
1304
  private publishGeneration;
1204
- /** The complete push: verify → materialize → evaluate → pack → upload → head → admit (409: re-apply to the winner, retry) → read back → advance pins. */
1305
+ /**
1306
+ * The complete push: verify → materialize → evaluate → pack → upload → head → admit (409: re-apply to the winner, retry) → read back → advance pins.
1307
+ *
1308
+ * `options.base` (design D1), when supplied, is used VERBATIM for the
1309
+ * first attempt instead of a fresh {@link materialize} call — a conflict
1310
+ * retry always re-materializes from storage, exactly as when no base is
1311
+ * supplied.
1312
+ */
1205
1313
  push(options: GitvaultPushOptions): Promise<GitvaultPublishResult>;
1206
1314
  /**
1207
1315
  * A REAL preview of what {@link push} would publish (kychee-com/run402#565)
@@ -1448,6 +1556,20 @@ export declare class GitvaultVault {
1448
1556
  * Pull the newest checkpoint (if any) and every later WAL pack into
1449
1557
  * `targetRepoDir` (an initialized repository), then verify every canonical
1450
1558
  * ref + the HEAD target resolves. Returns the materialized refs.
1559
+ *
1560
+ * Design D5 (gitvault-client-round-trips): incremental above the local
1561
+ * `restored_through` marker (this target directory's own local git
1562
+ * config, read/written by {@link readGitvaultRestoreMarker}/{@link
1563
+ * writeGitvaultRestoreMarker}) — replaying only the WAL packs of
1564
+ * generations above it — WHEN the walk from newest back to the marker is
1565
+ * plain WAL the entire way. The moment that walk crosses a
1566
+ * checkpoint-bearing, repair, or transition head (checked BEFORE
1567
+ * including a head, so the marker-boundary and wholesale-boundary checks
1568
+ * share one pass), this falls back to the ORIGINAL wholesale walk below —
1569
+ * re-fetching any head already visited during the aborted attempt is a
1570
+ * cache hit (design D3), never a second network round trip. Coverage
1571
+ * verification and retained-refs reconciliation run UNCHANGED on both
1572
+ * paths; the marker only advances after they both succeed.
1451
1573
  */
1452
1574
  restoreObjectsInto(targetRepoDir: string): Promise<{
1453
1575
  refs: GitvaultRefMap;