@x12i/catalox 2.6.0 → 2.7.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.
Files changed (43) hide show
  1. package/README.md +11 -0
  2. package/dist/src/catalox/backup-data.d.ts +37 -0
  3. package/dist/src/catalox/backup-data.d.ts.map +1 -1
  4. package/dist/src/catalox/backup-data.js +95 -2
  5. package/dist/src/catalox/backup-data.js.map +1 -1
  6. package/dist/src/catalox/catalox-gcs-backup-export-manifest.d.ts +13 -0
  7. package/dist/src/catalox/catalox-gcs-backup-export-manifest.d.ts.map +1 -0
  8. package/dist/src/catalox/catalox-gcs-backup-export-manifest.js +82 -0
  9. package/dist/src/catalox/catalox-gcs-backup-export-manifest.js.map +1 -0
  10. package/dist/src/catalox/catalox.d.ts +20 -1
  11. package/dist/src/catalox/catalox.d.ts.map +1 -1
  12. package/dist/src/catalox/catalox.js +32 -1
  13. package/dist/src/catalox/catalox.js.map +1 -1
  14. package/dist/src/catalox/firestore-gcs-transfer.d.ts +4 -0
  15. package/dist/src/catalox/firestore-gcs-transfer.d.ts.map +1 -1
  16. package/dist/src/catalox/firestore-gcs-transfer.js +4 -3
  17. package/dist/src/catalox/firestore-gcs-transfer.js.map +1 -1
  18. package/dist/src/catalox/index.d.ts +5 -3
  19. package/dist/src/catalox/index.d.ts.map +1 -1
  20. package/dist/src/catalox/index.js +5 -3
  21. package/dist/src/catalox/index.js.map +1 -1
  22. package/dist/src/catalox/restore-firestore-backup-from-gcs.d.ts +21 -0
  23. package/dist/src/catalox/restore-firestore-backup-from-gcs.d.ts.map +1 -0
  24. package/dist/src/catalox/restore-firestore-backup-from-gcs.js +310 -0
  25. package/dist/src/catalox/restore-firestore-backup-from-gcs.js.map +1 -0
  26. package/dist/src/catalox/restore-firestore-backup.d.ts +17 -1
  27. package/dist/src/catalox/restore-firestore-backup.d.ts.map +1 -1
  28. package/dist/src/catalox/restore-firestore-backup.js +2 -1
  29. package/dist/src/catalox/restore-firestore-backup.js.map +1 -1
  30. package/dist/src/cli/index.js +83 -2
  31. package/dist/src/cli/index.js.map +1 -1
  32. package/dist/src/contracts/gcs-firestore-transfer.d.ts +14 -0
  33. package/dist/src/contracts/gcs-firestore-transfer.d.ts.map +1 -1
  34. package/dist/src/contracts/index.d.ts +2 -2
  35. package/dist/src/contracts/index.d.ts.map +1 -1
  36. package/dist/src/contracts/index.js.map +1 -1
  37. package/dist/src/contracts/restore.d.ts +57 -2
  38. package/dist/src/contracts/restore.d.ts.map +1 -1
  39. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.d.ts +2 -0
  40. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.d.ts.map +1 -0
  41. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.js +20 -0
  42. package/dist/test/unit/catalox-gcs-backup-export-manifest.test.js.map +1 -0
  43. package/package.json +1 -1
package/README.md CHANGED
@@ -102,6 +102,9 @@ npm run cli -- firestore report-native-layout --app "narrix"
102
102
  |---------|---------|
103
103
  | `firestore backup` | Mirror metadata + native rows to Mongo, Firestore `backup-*`, or GCS NDJSON (`--mode gcs --bucket …`; [`docs/backup.md`](docs/backup.md)). |
104
104
  | `firestore restore-backup` / `undo-restore-backup` | Restore from `backup-*` with undo sidecars ([`docs/restore-firestore-backup.md`](docs/restore-firestore-backup.md)). |
105
+ | `firestore restore-backup-from-gcs` | Restore live Firestore from one `backupData` GCS run (same undo as above). |
106
+ | `firestore prune-gcs-backups` / `delete-gcs-backup-run` | Retention and one-off run folder deletion in GCS. |
107
+ | `firestore gcs-backup-to-export-manifest` | Emit `import-gcs`–compatible manifest JSON from a GCS backup run. |
105
108
  | `firestore report-native-layout` | Legacy vs flat native layout diagnostics. |
106
109
  | `firestore migrate-native-catalog-data` | Legacy `catalogData/{id}/items` → flat `catalogData-{id}-items` ([`docs/migration-native-catalog-data.md`](docs/migration-native-catalog-data.md)). |
107
110
  | `firestore export-gcs` / `import-gcs` | NDJSON per collection + optional manifest ([`docs/firestore-gcs-export.md`](docs/firestore-gcs-export.md)). |
@@ -513,6 +516,14 @@ Integration tests are **live-only** (no mocks, no emulators). They require:
513
516
 
514
517
  ## Changelog
515
518
 
519
+ ### 2.7.0
520
+
521
+ - **GCS restore:** **`restoreFirestoreBackupFromGcs`** + CLI **`firestore restore-backup-from-gcs`** — same pre-restore / **`undoFirestoreRestore`** model as mirror restore.
522
+ - **GCS retention:** **`pruneGcsBackupRuns`**, **`deleteCataloxGcsBackupRunObjects`**, CLI **`prune-gcs-backups`**, **`delete-gcs-backup-run`**.
523
+ - **Manifest bridge:** **`cataloxGcsBackupManifestToFirestoreExportManifest`**, CLI **`gcs-backup-to-export-manifest`**, type **`CataloxGcsBackupManifestV1`**; exported **`restoreFirestoreNdjsonStreamToCollection`**.
524
+ - **Reliability:** failed **`backupData` GCS** runs trigger **best-effort** deletion of the partial run folder.
525
+ - **Contracts:** **`RestoreFirestoreMirrorSource`** vs **`RestoreFirestoreBackupSource`** (adds `gcs` for session manifests).
526
+
516
527
  ### 2.6.0
517
528
 
518
529
  - **GCS backup:** `backupData` supports **`mode: "gcs"`** — writes metadata, native catalogs, optional snapshots as **NDJSON** under `gs://{bucket}/{prefix}{timestamp}/` via **`@x12i/helpers/gcs`**, with **`catalox-backup-manifest.json`** per run. Default prefix when omitted: **`catalox-firestore-backups/`**. CLI: **`firestore backup --mode gcs --bucket …`** (`--gcs-prefix` optional).
@@ -1,7 +1,9 @@
1
+ import { Readable } from "node:stream";
1
2
  import { type Firestore } from "firebase-admin/firestore";
2
3
  import { type Db } from "mongodb";
3
4
  import type { CatalogId } from "../contracts/ids.js";
4
5
  import type { BackupDataInput, BackupDataResult } from "../contracts/backup.js";
6
+ import type { PruneGcsBackupRunsInput, PruneGcsBackupRunsResult } from "../contracts/restore.js";
5
7
  import type { CatalogRecord } from "../contracts/catalogs.js";
6
8
  import { CatalogStore } from "../firebase/catalog-store.js";
7
9
  import { BindingStore } from "../firebase/binding-store.js";
@@ -31,6 +33,41 @@ export declare function discoverNativeCatalogIds(fs: Firestore, catalogs: Catalo
31
33
  export declare function pruneMongoBackupRuns(db: Db, createdBeforeIso: string): Promise<number>;
32
34
  /** Exported for tests: `{gcsPrefix|default}/{formatBackupTimestamp}/` without trailing slash (helpers client prefix). */
33
35
  export declare function gcsBackupRunFolder(ts: string, gcsPrefix?: string): string;
36
+ /** Subset of `@x12i/helpers/gcs` client used by Catalox backup / restore / prune. */
37
+ export type CataloxHelpersGcsClient = {
38
+ uploadObject: (objectName: string, body: string | Buffer | Uint8Array | Readable, opts?: {
39
+ contentType?: string;
40
+ resumable?: boolean;
41
+ }) => Promise<void>;
42
+ openReadStream: (objectName: string, opts?: Record<string, unknown>) => Readable;
43
+ readObjectBuffer: (objectName: string, opts?: Record<string, unknown>) => Promise<Buffer>;
44
+ listObjects: (query?: {
45
+ prefix?: string;
46
+ pageToken?: string;
47
+ maxResults?: number;
48
+ delimiter?: string;
49
+ }) => Promise<{
50
+ items?: {
51
+ name?: string;
52
+ }[];
53
+ prefixes?: string[];
54
+ nextPageToken?: string;
55
+ }>;
56
+ objectExists: (objectName: string) => Promise<boolean>;
57
+ deleteObject: (objectName: string) => Promise<void>;
58
+ };
59
+ export declare const CATALOX_GCS_BACKUP_MANIFEST_FILENAME = "catalox-backup-manifest.json";
60
+ /** Same as internal backup client: `prefix` is the logical root prepended to relative object names. */
61
+ export declare function createCataloxHelpersGcsClient(bucket: string, prefixWithoutTrailingSlash: string): CataloxHelpersGcsClient;
62
+ /** Delete every object under one backup run folder (`…/{timestamp}/…`). */
63
+ export declare function deleteCataloxGcsBackupRunObjects(bucket: string, runFolder: string): Promise<{
64
+ deleted: number;
65
+ }>;
66
+ /**
67
+ * Delete oldest GCS backup **run folders** (immediate children of `gcsBasePrefix`) until at most `keepLast` remain.
68
+ * Folder names are sorted lexicographically (compatible with `formatBackupTimestamp` ISO-style tokens).
69
+ */
70
+ export declare function pruneGcsBackupRuns(input: PruneGcsBackupRunsInput): Promise<PruneGcsBackupRunsResult>;
34
71
  export declare function pruneFirebaseVersionedBackups(firestore: Firestore, keepLast: number): Promise<{
35
72
  deleted: string[];
36
73
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"backup-data.d.ts","sourceRoot":"","sources":["../../../src/catalox/backup-data.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,SAAS,EAEf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAe,KAAK,EAAE,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,eAAe,EAAmB,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACjG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAYhE,eAAO,MAAM,4BAA4B,4LAY/B,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG;IAC3B,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;CACxB,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC,OAAa,GAAG,MAAM,CAMtF;AAMD,2GAA2G;AAC3G,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,+CAA+C;AAC/C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAEzE;AA0BD,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAsB,iCAAiC,CACrD,EAAE,EAAE,SAAS,EACb,oBAAoB,EAAE,MAAM,EAC5B,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED,wBAAsB,kCAAkC,CAAC,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS7G;AAED,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,SAAS,EACb,QAAQ,EAAE,aAAa,EAAE,EACzB,IAAI,EAAE;IAAE,QAAQ,EAAE,YAAY,CAAC;IAAC,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACzE,OAAO,CAAC,SAAS,EAAE,CAAC,CAwBtB;AA0PD,uFAAuF;AACvF,wBAAsB,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAK5F;AAcD,yHAAyH;AACzH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAIzE;AA+MD,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAchC;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,cAAc,EACpB,KAAK,EAAE,eAAe,GACrB,OAAO,CAAC,gBAAgB,CAAC,CAwM3B"}
1
+ {"version":3,"file":"backup-data.d.ts","sourceRoot":"","sources":["../../../src/catalox/backup-data.ts"],"names":[],"mappings":"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"}
@@ -346,6 +346,7 @@ export function gcsBackupRunFolder(ts, gcsPrefix) {
346
346
  const base = normalizeBackupGcsBasePrefix(rawGcsPrefix === "" ? "catalox-firestore-backups/" : rawGcsPrefix);
347
347
  return `${base.replace(/\/+$/, "")}${base ? "/" : ""}${ts}`.replace(/\/+$/, "");
348
348
  }
349
+ export const CATALOX_GCS_BACKUP_MANIFEST_FILENAME = "catalox-backup-manifest.json";
349
350
  function createHelpersGcsClient(bucket, prefixWithoutTrailingSlash) {
350
351
  const { createGcsClient } = require("@x12i/helpers/gcs");
351
352
  return createGcsClient({
@@ -353,6 +354,97 @@ function createHelpersGcsClient(bucket, prefixWithoutTrailingSlash) {
353
354
  prefix: prefixWithoutTrailingSlash.replace(/^\/+/, "").replace(/\/+$/, ""),
354
355
  });
355
356
  }
357
+ /** Same as internal backup client: `prefix` is the logical root prepended to relative object names. */
358
+ export function createCataloxHelpersGcsClient(bucket, prefixWithoutTrailingSlash) {
359
+ return createHelpersGcsClient(bucket, prefixWithoutTrailingSlash);
360
+ }
361
+ /** Delete every object under one backup run folder (`…/{timestamp}/…`). */
362
+ export async function deleteCataloxGcsBackupRunObjects(bucket, runFolder) {
363
+ const folder = runFolder.replace(/^\/+/, "").replace(/\/+$/, "");
364
+ if (!folder)
365
+ return { deleted: 0 };
366
+ const gcs = createHelpersGcsClient(bucket, "");
367
+ const listPrefix = `${folder}/`;
368
+ let deleted = 0;
369
+ let pageToken;
370
+ while (true) {
371
+ const page = await gcs.listObjects({
372
+ prefix: listPrefix,
373
+ ...(pageToken !== undefined ? { pageToken } : {}),
374
+ maxResults: 500,
375
+ });
376
+ const items = page.items ?? [];
377
+ for (const it of items) {
378
+ const name = String(it.name ?? "").replace(/^\/+/, "");
379
+ if (!name)
380
+ continue;
381
+ await gcs.deleteObject(name);
382
+ deleted += 1;
383
+ }
384
+ pageToken = page.nextPageToken;
385
+ if (!pageToken)
386
+ break;
387
+ }
388
+ return { deleted };
389
+ }
390
+ /**
391
+ * Delete oldest GCS backup **run folders** (immediate children of `gcsBasePrefix`) until at most `keepLast` remain.
392
+ * Folder names are sorted lexicographically (compatible with `formatBackupTimestamp` ISO-style tokens).
393
+ */
394
+ export async function pruneGcsBackupRuns(input) {
395
+ const issues = [];
396
+ const rawBase = (input.gcsBasePrefix ?? "").trim();
397
+ const base = normalizeBackupGcsBasePrefix(rawBase === "" ? "catalox-firestore-backups/" : rawBase).replace(/\/+$/, "");
398
+ const keepLast = Math.max(0, Math.floor(Number(input.keepLast)));
399
+ if (!input.bucket?.trim()) {
400
+ return { ok: false, deletedRunFolders: [], keptRunFolders: [], issues: [{ code: "missing_bucket", message: "bucket is required" }] };
401
+ }
402
+ if (keepLast < 0) {
403
+ return { ok: false, deletedRunFolders: [], keptRunFolders: [], issues: [{ code: "invalid_keep_last", message: "keepLast must be non-negative" }] };
404
+ }
405
+ const gcs = createHelpersGcsClient(input.bucket.trim(), "");
406
+ const listPrefix = base ? `${base}/` : "";
407
+ try {
408
+ const prefixes = [];
409
+ let pageToken;
410
+ while (true) {
411
+ const page = await gcs.listObjects({
412
+ prefix: listPrefix,
413
+ delimiter: "/",
414
+ ...(pageToken !== undefined ? { pageToken } : {}),
415
+ maxResults: 500,
416
+ });
417
+ for (const p of page.prefixes ?? []) {
418
+ const pref = String(p).replace(/\/+$/, "");
419
+ if (pref)
420
+ prefixes.push(pref);
421
+ }
422
+ pageToken = page.nextPageToken;
423
+ if (!pageToken)
424
+ break;
425
+ }
426
+ const runs = [...new Set(prefixes)].map((p) => String(p).replace(/\/+$/, "")).sort();
427
+ if (runs.length <= keepLast) {
428
+ return { ok: true, deletedRunFolders: [], keptRunFolders: runs, issues: [] };
429
+ }
430
+ const toDelete = runs.slice(0, runs.length - keepLast);
431
+ const keptRunFolders = runs.slice(runs.length - keepLast);
432
+ const deletedRunFolders = [];
433
+ for (const run of toDelete) {
434
+ const { deleted } = await deleteCataloxGcsBackupRunObjects(input.bucket.trim(), run);
435
+ if (deleted > 0)
436
+ deletedRunFolders.push(run);
437
+ }
438
+ return { ok: true, deletedRunFolders, keptRunFolders, issues };
439
+ }
440
+ catch (e) {
441
+ issues.push({
442
+ code: "prune_gcs_failed",
443
+ message: e instanceof Error ? e.message : String(e),
444
+ });
445
+ return { ok: false, deletedRunFolders: [], keptRunFolders: [], issues };
446
+ }
447
+ }
356
448
  async function* ndjsonLinesForFirestoreCollection(col) {
357
449
  let last;
358
450
  while (true) {
@@ -473,11 +565,11 @@ async function runBackupDataGcs(deps, input, nativeCatalogIds) {
473
565
  issues,
474
566
  nativeItemSourceLayoutByCatalogId,
475
567
  };
476
- await gcs.uploadObject("catalox-backup-manifest.json", JSON.stringify(manifestPayload, null, 2), {
568
+ await gcs.uploadObject(CATALOX_GCS_BACKUP_MANIFEST_FILENAME, JSON.stringify(manifestPayload, null, 2), {
477
569
  contentType: "application/json",
478
570
  resumable: false,
479
571
  });
480
- collectionsWritten.push("catalox-backup-manifest.json");
572
+ collectionsWritten.push(CATALOX_GCS_BACKUP_MANIFEST_FILENAME);
481
573
  return {
482
574
  ok: true,
483
575
  mode: "gcs",
@@ -497,6 +589,7 @@ async function runBackupDataGcs(deps, input, nativeCatalogIds) {
497
589
  code: "gcs_backup_failed",
498
590
  message: e instanceof Error ? e.message : String(e),
499
591
  });
592
+ await deleteCataloxGcsBackupRunObjects(bucket, runFolder).catch(() => undefined);
500
593
  return {
501
594
  ok: false,
502
595
  mode: "gcs",
@@ -1 +1 @@
1
- {"version":3,"file":"backup-data.js","sourceRoot":"","sources":["../../../src/catalox/backup-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backup-data.js","sourceRoot":"","sources":["../../../src/catalox/backup-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import type { CataloxGcsBackupManifestV1, FirestoreGcsExportManifestV1 } from "../contracts/gcs-firestore-transfer.js";
2
+ /**
3
+ * Build a **`catalox-firestore-export-manifest.json`**-compatible manifest that points at NDJSON objects
4
+ * produced by **`backupData` mode `gcs`**, so `restoreAllFirestoreCollectionsFromGcsManifest` (or CLI `import-gcs --restore-all`)
5
+ * can restore the same logical data without a dedicated code path.
6
+ *
7
+ * `gcsRunFolder` must match the backup run folder (e.g. `catalox-firestore-backups/2026_04_18T12_00_00Z`).
8
+ * Object paths in the result are **`{gcsRunFolder}/{relative}`** with slashes normalized.
9
+ */
10
+ export declare function cataloxGcsBackupManifestToFirestoreExportManifest(manifest: CataloxGcsBackupManifestV1, gcsRunFolder: string): FirestoreGcsExportManifestV1;
11
+ /** Object key for a synthetic export manifest next to a GCS Catalox backup run. */
12
+ export declare const CATALOX_GCS_BACKUP_AS_EXPORT_MANIFEST_OBJECT = "catalox-firestore-export-manifest.json";
13
+ //# sourceMappingURL=catalox-gcs-backup-export-manifest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-gcs-backup-export-manifest.d.ts","sourceRoot":"","sources":["../../../src/catalox/catalox-gcs-backup-export-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAIvH;;;;;;;GAOG;AACH,wBAAgB,iDAAiD,CAC/D,QAAQ,EAAE,0BAA0B,EACpC,YAAY,EAAE,MAAM,GACnB,4BAA4B,CAqE9B;AAED,mFAAmF;AACnF,eAAO,MAAM,4CAA4C,2CAAiC,CAAC"}
@@ -0,0 +1,82 @@
1
+ import { BACKUP_METADATA_SOURCE_NAMES, firebaseNativeLogical } from "./backup-data.js";
2
+ import { CATALOX_FIRESTORE_GCS_MANIFEST } from "./firestore-gcs-transfer.js";
3
+ /**
4
+ * Build a **`catalox-firestore-export-manifest.json`**-compatible manifest that points at NDJSON objects
5
+ * produced by **`backupData` mode `gcs`**, so `restoreAllFirestoreCollectionsFromGcsManifest` (or CLI `import-gcs --restore-all`)
6
+ * can restore the same logical data without a dedicated code path.
7
+ *
8
+ * `gcsRunFolder` must match the backup run folder (e.g. `catalox-firestore-backups/2026_04_18T12_00_00Z`).
9
+ * Object paths in the result are **`{gcsRunFolder}/{relative}`** with slashes normalized.
10
+ */
11
+ export function cataloxGcsBackupManifestToFirestoreExportManifest(manifest, gcsRunFolder) {
12
+ const folder = gcsRunFolder.replace(/^\/+/, "").replace(/\/+$/, "");
13
+ const prefix = folder ? `${folder}/` : "";
14
+ const cw = manifest.collectionsWritten ?? [];
15
+ const counts = manifest.counts ?? {};
16
+ const entries = [];
17
+ for (const name of BACKUP_METADATA_SOURCE_NAMES) {
18
+ const rel = `metadata/${name}.ndjson`;
19
+ if (!cw.includes(rel))
20
+ continue;
21
+ entries.push({
22
+ firestorePath: name,
23
+ objectPath: `${prefix}${rel}`,
24
+ documentCount: Number(counts[`gcs:meta:${name}`] ?? 0),
25
+ });
26
+ }
27
+ const layouts = manifest.nativeItemSourceLayoutByCatalogId ?? {};
28
+ for (const catalogId of Object.keys(layouts)) {
29
+ const rel = `native/${firebaseNativeLogical(catalogId)}.ndjson`;
30
+ if (!cw.includes(rel))
31
+ continue;
32
+ const layout = layouts[catalogId];
33
+ const firestorePath = layout === "legacy" ? `catalogData/${catalogId}/items` : `catalogData-${catalogId}-items`;
34
+ entries.push({
35
+ firestorePath,
36
+ objectPath: `${prefix}${rel}`,
37
+ documentCount: Number(counts[`gcs:native:${firebaseNativeLogical(catalogId)}`] ?? 0),
38
+ });
39
+ }
40
+ for (const rel of cw) {
41
+ if (!rel.startsWith("snapshots/") || !rel.endsWith(".ndjson"))
42
+ continue;
43
+ const base = rel.slice("snapshots/".length, -".ndjson".length);
44
+ const snapPrefix = "catalogSnapshots--";
45
+ const runPrefix = "catalogSnapshotsRun--";
46
+ if (base.startsWith(snapPrefix) && !base.startsWith(runPrefix)) {
47
+ const catalogId = base.slice(snapPrefix.length);
48
+ const firestorePath = `catalogSnapshots/${catalogId}/items`;
49
+ entries.push({
50
+ firestorePath,
51
+ objectPath: `${prefix}${rel}`,
52
+ documentCount: Number(counts[`gcs:snapshot:catalogSnapshots--${catalogId}`] ?? 0),
53
+ });
54
+ continue;
55
+ }
56
+ if (base.startsWith(runPrefix)) {
57
+ const rest = base.slice(runPrefix.length);
58
+ const delim = rest.lastIndexOf("--");
59
+ if (delim === -1)
60
+ continue;
61
+ const catalogId = rest.slice(0, delim);
62
+ const runId = rest.slice(delim + 2);
63
+ const firestorePath = `catalogSnapshots/${catalogId}/runs/${runId}/items`;
64
+ entries.push({
65
+ firestorePath,
66
+ objectPath: `${prefix}${rel}`,
67
+ documentCount: Number(counts[`gcs:snapshotRun:catalogSnapshotsRun--${catalogId}--${runId}`] ?? 0),
68
+ });
69
+ }
70
+ }
71
+ return {
72
+ catalog: "catalox-firestore-gcs-export",
73
+ version: 1,
74
+ exportedAt: new Date().toISOString(),
75
+ gcsPrefix: prefix,
76
+ objectNamePostfix: "",
77
+ entries,
78
+ };
79
+ }
80
+ /** Object key for a synthetic export manifest next to a GCS Catalox backup run. */
81
+ export const CATALOX_GCS_BACKUP_AS_EXPORT_MANIFEST_OBJECT = CATALOX_FIRESTORE_GCS_MANIFEST;
82
+ //# sourceMappingURL=catalox-gcs-backup-export-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-gcs-backup-export-manifest.js","sourceRoot":"","sources":["../../../src/catalox/catalox-gcs-backup-export-manifest.ts"],"names":[],"mappings":"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"}
@@ -22,7 +22,9 @@ import { StoreAppBindingStore } from "../firebase/store-app-binding-store.js";
22
22
  import type { BackupDataInput, BackupDataResult } from "../contracts/backup.js";
23
23
  import type { ExportAllFirestoreCollectionsToGcsInput, ExportAllFirestoreCollectionsToGcsResult, ExportFirestoreCollectionToGcsInput, ExportFirestoreCollectionToGcsResult, RestoreAllFirestoreCollectionsFromGcsInput, RestoreAllFirestoreCollectionsFromGcsResult, RestoreFirestoreCollectionFromGcsInput, RestoreFirestoreCollectionFromGcsResult } from "../contracts/gcs-firestore-transfer.js";
24
24
  import type { CompareAllFirestoreCollectionsWithGcsManifestInput, CompareAllFirestoreCollectionsWithGcsResult, CompareFirestoreCollectionWithGcsInput, CompareFirestoreCollectionWithGcsResult } from "../contracts/gcs-firestore-compare.js";
25
- import type { RestoreFirestoreBackupInput, RestoreFirestoreBackupResult, UndoFirestoreRestoreInput, UndoFirestoreRestoreResult } from "../contracts/restore.js";
25
+ import type { RestoreFirestoreBackupInput, RestoreFirestoreBackupResult, RestoreFirestoreBackupFromGcsInput, RestoreFirestoreBackupFromGcsResult, PruneGcsBackupRunsInput, PruneGcsBackupRunsResult, UndoFirestoreRestoreInput, UndoFirestoreRestoreResult } from "../contracts/restore.js";
26
+ import type { CataloxGcsBackupManifestV1, FirestoreGcsExportManifestV1 } from "../contracts/gcs-firestore-transfer.js";
27
+ import { runDeleteCataloxGcsBackupRun } from "./restore-firestore-backup-from-gcs.js";
26
28
  import { type MigrateNativeCatalogLayoutInput, type MigrateNativeCatalogLayoutResult } from "../migrations/migrate-native-catalog-layout.js";
27
29
  import { type NativeCatalogLayoutDiagnosticRow } from "./native-catalog-layout-diagnostics.js";
28
30
  export type CataloxDependencies = {
@@ -135,6 +137,23 @@ export declare class Catalox {
135
137
  restoreFirestoreBackup(_context: CataloxContext, input: RestoreFirestoreBackupInput): Promise<RestoreFirestoreBackupResult>;
136
138
  /** Revert a prior `restoreFirestoreBackup` using the manifest and `restoreSessionId__preRestore-*` collections. */
137
139
  undoFirestoreRestore(_context: CataloxContext, input: UndoFirestoreRestoreInput): Promise<UndoFirestoreRestoreResult>;
140
+ /**
141
+ * Restore live Firestore from one **`backupData` GCS** run (`metadata/`, `native/`, optional `snapshots/` NDJSON).
142
+ * Captures pre-restore copies to `{session}__preRestore-*` first; **`undoFirestoreRestore`** works the same as for `restoreFirestoreBackup`.
143
+ */
144
+ restoreFirestoreBackupFromGcs(_context: CataloxContext, input: RestoreFirestoreBackupFromGcsInput): Promise<RestoreFirestoreBackupFromGcsResult>;
145
+ /** Delete oldest GCS Catalox backup **run folders** (children of the base prefix) until `keepLast` newest remain. */
146
+ pruneGcsBackupRuns(_context: CataloxContext, input: PruneGcsBackupRunsInput): Promise<PruneGcsBackupRunsResult>;
147
+ /** Delete every object under one GCS backup run folder (operator cleanup). */
148
+ deleteCataloxGcsBackupRun(_context: CataloxContext, input: {
149
+ gcsBucket: string;
150
+ gcsRunFolder: string;
151
+ }): Promise<Awaited<ReturnType<typeof runDeleteCataloxGcsBackupRun>>>;
152
+ /**
153
+ * Map a **`catalox-backup-manifest.json`** payload into the **`catalox-firestore-export-manifest.json`** shape
154
+ * so `restoreAllFirestoreCollectionsFromGcsManifest` / CLI `import-gcs --restore-all` can consume the same NDJSON objects.
155
+ */
156
+ cataloxGcsBackupManifestToExportManifest(manifest: CataloxGcsBackupManifestV1, gcsRunFolder: string): FirestoreGcsExportManifestV1;
138
157
  /**
139
158
  * For each discovered native catalog: counts in legacy `catalogData/{id}/items` vs flat `catalogData-{id}-items`,
140
159
  * and the resolver layout. Use when the console still shows the **legacy** subcollection `items` under `catalogData/{catalogId}`.
@@ -1 +1 @@
1
- {"version":3,"file":"catalox.d.ts","sourceRoot":"","sources":["../../../src/catalox/catalox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalox.d.ts","sourceRoot":"","sources":["../../../src/catalox/catalox.ts"],"names":[],"mappings":"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"}
@@ -25,8 +25,10 @@ import { RendererSnippetStore } from "../firebase/renderer-snippet-store.js";
25
25
  import { SnapshotStore } from "../firebase/snapshot-store.js";
26
26
  import { StoreAppBindingStore } from "../firebase/store-app-binding-store.js";
27
27
  import { nativeItemsCollectionId } from "../firebase/catalog-data-paths.js";
28
- import { runBackupData } from "./backup-data.js";
28
+ import { runBackupData, pruneGcsBackupRuns } from "./backup-data.js";
29
29
  import { runRestoreFirestoreBackup, runUndoFirestoreRestore } from "./restore-firestore-backup.js";
30
+ import { runRestoreFirestoreBackupFromGcs, runDeleteCataloxGcsBackupRun } from "./restore-firestore-backup-from-gcs.js";
31
+ import { cataloxGcsBackupManifestToFirestoreExportManifest } from "./catalox-gcs-backup-export-manifest.js";
30
32
  import { migrateNativeCatalogLayout as runMigrateNativeCatalogLayout, } from "../migrations/migrate-native-catalog-layout.js";
31
33
  import { reportNativeCatalogLayoutDiagnostics as runReportNativeCatalogLayoutDiagnostics, } from "./native-catalog-layout-diagnostics.js";
32
34
  import { exportAllFirestoreCollectionsToGcs, exportFirestoreCollectionToGcs, restoreAllFirestoreCollectionsFromGcsManifest, restoreFirestoreCollectionFromGcs, } from "./firestore-gcs-transfer.js";
@@ -1056,6 +1058,35 @@ export class Catalox {
1056
1058
  catalogDataIndex: this.deps.catalogDataIndex,
1057
1059
  }, input);
1058
1060
  }
1061
+ /**
1062
+ * Restore live Firestore from one **`backupData` GCS** run (`metadata/`, `native/`, optional `snapshots/` NDJSON).
1063
+ * Captures pre-restore copies to `{session}__preRestore-*` first; **`undoFirestoreRestore`** works the same as for `restoreFirestoreBackup`.
1064
+ */
1065
+ async restoreFirestoreBackupFromGcs(_context, input) {
1066
+ return runRestoreFirestoreBackupFromGcs({
1067
+ firestoreStore: this.deps.firestoreStore,
1068
+ catalogs: this.deps.catalogs,
1069
+ bindings: this.deps.bindings,
1070
+ nativeItems: this.deps.nativeItems,
1071
+ definitions: this.deps.definitions,
1072
+ catalogDataIndex: this.deps.catalogDataIndex,
1073
+ }, input);
1074
+ }
1075
+ /** Delete oldest GCS Catalox backup **run folders** (children of the base prefix) until `keepLast` newest remain. */
1076
+ async pruneGcsBackupRuns(_context, input) {
1077
+ return pruneGcsBackupRuns(input);
1078
+ }
1079
+ /** Delete every object under one GCS backup run folder (operator cleanup). */
1080
+ async deleteCataloxGcsBackupRun(_context, input) {
1081
+ return runDeleteCataloxGcsBackupRun(input);
1082
+ }
1083
+ /**
1084
+ * Map a **`catalox-backup-manifest.json`** payload into the **`catalox-firestore-export-manifest.json`** shape
1085
+ * so `restoreAllFirestoreCollectionsFromGcsManifest` / CLI `import-gcs --restore-all` can consume the same NDJSON objects.
1086
+ */
1087
+ cataloxGcsBackupManifestToExportManifest(manifest, gcsRunFolder) {
1088
+ return cataloxGcsBackupManifestToFirestoreExportManifest(manifest, gcsRunFolder);
1089
+ }
1059
1090
  /**
1060
1091
  * For each discovered native catalog: counts in legacy `catalogData/{id}/items` vs flat `catalogData-{id}-items`,
1061
1092
  * and the resolver layout. Use when the console still shows the **legacy** subcollection `items` under `catalogData/{catalogId}`.