@x12i/memorix-retrieval 1.32.0 → 1.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -488,7 +488,7 @@ npm run build
488
488
  npm test
489
489
  ```
490
490
 
491
- Live checks (require `.env` with `MONGO_URI` and Catalox/Firestore credentials):
491
+ Live checks (require `.env` with `MONGO_URI` and Mongo Catalox credentials):
492
492
 
493
493
  ```bash
494
494
  npm run mongo:check-collections
@@ -1,21 +1,20 @@
1
- import { type Catalox } from "@x12i/catalox";
1
+ import type { Catalox } from "@x12i/catalox";
2
2
  export type EnsureMemorixDescriptorsProvisionedOptions = {
3
3
  appId: string;
4
4
  catalox: Catalox;
5
5
  processEnv?: NodeJS.ProcessEnv;
6
- /** Skip auto-provision (tests or explicit host control). */
6
+ /** Skip readiness probe side effects (tests or explicit host control). */
7
7
  skip?: boolean;
8
8
  };
9
9
  export type EnsureMemorixDescriptorsProvisionedResult = {
10
10
  provisioned: boolean;
11
- source: "mongo-existing" | "legacy-firestore-migration" | "unavailable";
11
+ source: "mongo-existing" | "unavailable";
12
12
  entityDescriptorCount: number;
13
13
  warnings: string[];
14
14
  };
15
15
  /**
16
- * Ensures descriptor metadata is readable for `appId` on the Mongo Catalox store.
17
- * When Mongo is empty but legacy Firestore Catalox still holds data for the same
18
- * app, copies catalogs/bindings/items automatically (idempotent).
16
+ * Probes whether descriptor metadata is readable for `appId` on the Mongo Catalox store.
17
+ * Does not migrate from any other backend publish descriptors via seed apply / Catalox Manager.
19
18
  */
20
19
  export declare function ensureMemorixDescriptorsProvisioned(options: EnsureMemorixDescriptorsProvisionedOptions): Promise<EnsureMemorixDescriptorsProvisionedResult>;
21
20
  //# sourceMappingURL=catalox-descriptor-provision.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalox-descriptor-provision.d.ts","sourceRoot":"","sources":["../../src/client/catalox-descriptor-provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,OAAO,EAGb,MAAM,eAAe,CAAC;AA2LvB,MAAM,MAAM,0CAA0C,GAAG;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,yCAAyC,GAAG;IACtD,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,gBAAgB,GAAG,4BAA4B,GAAG,aAAa,CAAC;IACxE,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AA+KF;;;;GAIG;AACH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,yCAAyC,CAAC,CAmFpD"}
1
+ {"version":3,"file":"catalox-descriptor-provision.d.ts","sourceRoot":"","sources":["../../src/client/catalox-descriptor-provision.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAgB,MAAM,eAAe,CAAC;AAM3D,MAAM,MAAM,0CAA0C,GAAG;IACvD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,0EAA0E;IAC1E,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,yCAAyC,GAAG;IACtD,WAAW,EAAE,OAAO,CAAC;IACrB,MAAM,EAAE,gBAAgB,GAAG,aAAa,CAAC;IACzC,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AA2FF;;;GAGG;AACH,wBAAsB,mCAAmC,CACvD,OAAO,EAAE,0CAA0C,GAClD,OAAO,CAAC,yCAAyC,CAAC,CA0BpD"}
@@ -1,160 +1,6 @@
1
- import { applyCataloxSeedPreset, } from "@x12i/catalox";
2
- import { encodeCatalogItemDataForCatalox, MEMORIX_COMPLETION_MAPPINGS_CATALOG, MEMORIX_INVENTORY_POLICIES_CATALOG, MEMORIX_ITEM_DESCRIPTORS_CATALOG, MEMORIX_LIST_DESCRIPTORS_CATALOG, MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG, MEMORIX_WRITE_DESCRIPTORS_CATALOG, } from "@x12i/memorix-descriptors";
3
- import { DebugLogAbstract } from "@x12i/logxer";
4
- import { fieldEvidence } from "@x12i/logxer/diagnostics";
5
- import { LEGACY_LIST_DESCRIPTORS_CATALOG, MEMORIX_LEGACY_ENTITY_DESCRIPTORS_CATALOG, } from "../descriptors/catalog-ids.js";
6
- import { memorixRetrievalLogger } from "../logging/logger.js";
1
+ import { MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG } from "@x12i/memorix-descriptors";
2
+ import { MEMORIX_LEGACY_ENTITY_DESCRIPTORS_CATALOG } from "../descriptors/catalog-ids.js";
7
3
  const PROVISION_ACTOR = { type: "service", id: "memorix-retrieval-provision" };
8
- const LEGACY_CATALOG_REMAP = {
9
- [MEMORIX_LEGACY_ENTITY_DESCRIPTORS_CATALOG]: MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG,
10
- [LEGACY_LIST_DESCRIPTORS_CATALOG]: MEMORIX_LIST_DESCRIPTORS_CATALOG,
11
- };
12
- const FIRESTORE_EXPORT_CATALOG_IDS = [
13
- MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG,
14
- MEMORIX_LEGACY_ENTITY_DESCRIPTORS_CATALOG,
15
- MEMORIX_LIST_DESCRIPTORS_CATALOG,
16
- LEGACY_LIST_DESCRIPTORS_CATALOG,
17
- MEMORIX_ITEM_DESCRIPTORS_CATALOG,
18
- MEMORIX_COMPLETION_MAPPINGS_CATALOG,
19
- MEMORIX_INVENTORY_POLICIES_CATALOG,
20
- MEMORIX_WRITE_DESCRIPTORS_CATALOG,
21
- ];
22
- const NATIVE_CATALOG_DEFAULTS = {
23
- [MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG]: {
24
- catalogId: MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG,
25
- name: "Memorix entity descriptors",
26
- catalogType: "memorix",
27
- sourceMode: "native",
28
- native: { type: "native" },
29
- },
30
- [MEMORIX_LIST_DESCRIPTORS_CATALOG]: {
31
- catalogId: MEMORIX_LIST_DESCRIPTORS_CATALOG,
32
- name: "Memorix list descriptors",
33
- catalogType: "memorix",
34
- sourceMode: "native",
35
- native: { type: "native" },
36
- },
37
- [MEMORIX_ITEM_DESCRIPTORS_CATALOG]: {
38
- catalogId: MEMORIX_ITEM_DESCRIPTORS_CATALOG,
39
- name: "Memorix item descriptors",
40
- catalogType: "memorix",
41
- sourceMode: "native",
42
- native: { type: "native" },
43
- },
44
- [MEMORIX_COMPLETION_MAPPINGS_CATALOG]: {
45
- catalogId: MEMORIX_COMPLETION_MAPPINGS_CATALOG,
46
- name: "Memorix completion mappings",
47
- catalogType: "memorix",
48
- sourceMode: "native",
49
- native: { type: "native" },
50
- },
51
- [MEMORIX_INVENTORY_POLICIES_CATALOG]: {
52
- catalogId: MEMORIX_INVENTORY_POLICIES_CATALOG,
53
- name: "Memorix inventory policies",
54
- catalogType: "memorix",
55
- sourceMode: "native",
56
- native: { type: "native" },
57
- },
58
- [MEMORIX_WRITE_DESCRIPTORS_CATALOG]: {
59
- catalogId: MEMORIX_WRITE_DESCRIPTORS_CATALOG,
60
- name: "Memorix write descriptors",
61
- catalogType: "memorix",
62
- sourceMode: "native",
63
- native: { type: "native" },
64
- },
65
- };
66
- const PROVISION_CATALOG_DESCRIPTOR_SEEDS = {
67
- [MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG]: {
68
- itemIdField: "id",
69
- titleField: "entityName",
70
- queryableFields: [
71
- { key: "id", label: "Id" },
72
- { key: "entityName", label: "Entity name" },
73
- { key: "target", label: "Target" },
74
- ],
75
- },
76
- [MEMORIX_LIST_DESCRIPTORS_CATALOG]: {
77
- itemIdField: "id",
78
- titleField: "title",
79
- queryableFields: [
80
- { key: "id", label: "Id" },
81
- { key: "entity", label: "Entity" },
82
- { key: "title", label: "Title" },
83
- ],
84
- },
85
- [MEMORIX_ITEM_DESCRIPTORS_CATALOG]: {
86
- itemIdField: "id",
87
- titleField: "title",
88
- queryableFields: [
89
- { key: "id", label: "Id" },
90
- { key: "entity", label: "Entity" },
91
- { key: "title", label: "Title" },
92
- ],
93
- },
94
- [MEMORIX_COMPLETION_MAPPINGS_CATALOG]: {
95
- itemIdField: "id",
96
- titleField: "name",
97
- queryableFields: [
98
- { key: "id", label: "Id" },
99
- { key: "name", label: "Name" },
100
- { key: "objectType", label: "Object type" },
101
- ],
102
- },
103
- [MEMORIX_INVENTORY_POLICIES_CATALOG]: {
104
- itemIdField: "id",
105
- titleField: "id",
106
- queryableFields: [{ key: "id", label: "Id" }],
107
- },
108
- [MEMORIX_WRITE_DESCRIPTORS_CATALOG]: {
109
- itemIdField: "id",
110
- titleField: "title",
111
- queryableFields: [
112
- { key: "id", label: "Id" },
113
- { key: "entity", label: "Entity" },
114
- { key: "title", label: "Title" },
115
- ],
116
- },
117
- };
118
- const PROVISION_CATALOG_CAPABILITIES = {
119
- canList: true,
120
- canGet: true,
121
- canCreate: true,
122
- canEdit: true,
123
- canDelete: true,
124
- canImport: true,
125
- canExport: true,
126
- canSync: false,
127
- canValidate: true,
128
- canViewReferences: true,
129
- };
130
- function buildProvisionCatalogDescriptor(catalogId, label, seed) {
131
- return {
132
- catalogId,
133
- descriptorVersion: "1",
134
- mode: "replace",
135
- descriptor: {
136
- catalogId,
137
- label,
138
- sourceMode: "native",
139
- status: "active",
140
- capabilities: { ...PROVISION_CATALOG_CAPABILITIES },
141
- queryableFields: seed.queryableFields.map((field) => ({
142
- key: field.key,
143
- label: field.label,
144
- type: "string",
145
- indexed: true,
146
- filterable: true,
147
- listVisible: true,
148
- detailVisible: true,
149
- })),
150
- identity: {
151
- itemIdStrategy: "natural",
152
- itemIdField: seed.itemIdField,
153
- titleField: seed.titleField,
154
- },
155
- },
156
- };
157
- }
158
4
  function isCatalogAccessDenied(err) {
159
5
  const message = err instanceof Error ? err.message : String(err);
160
6
  const name = err instanceof Error ? err.name : "";
@@ -224,94 +70,14 @@ async function probeMongoDescriptorReadiness(catalox, appId) {
224
70
  throw err;
225
71
  }
226
72
  }
227
- async function exportLegacyFirestoreCatalogs(appId) {
228
- const { createCataloxFromEnv } = await import("@x12i/catalox/firebase");
229
- const { catalox } = createCataloxFromEnv();
230
- const bound = catalox.withContext({
231
- appId,
232
- superAdmin: true,
233
- actor: PROVISION_ACTOR,
234
- });
235
- const byTarget = new Map();
236
- for (const sourceCatalogId of FIRESTORE_EXPORT_CATALOG_IDS) {
237
- const items = await listAllCatalogItems(bound, sourceCatalogId);
238
- if (items.length === 0)
239
- continue;
240
- const targetCatalogId = LEGACY_CATALOG_REMAP[sourceCatalogId] ?? sourceCatalogId;
241
- const existing = byTarget.get(targetCatalogId) ?? [];
242
- const seen = new Set(existing.map((item) => item.id));
243
- for (const item of items) {
244
- if (seen.has(item.id))
245
- continue;
246
- seen.add(item.id);
247
- existing.push(item);
248
- }
249
- byTarget.set(targetCatalogId, existing);
250
- }
251
- return byTarget;
252
- }
253
- function buildProvisionManifest(appId, catalogsById) {
254
- const catalogs = [];
255
- const descriptors = [];
256
- const items = [];
257
- const bindings = [];
258
- // Create + bind every descriptor catalog kind, even when the legacy export
259
- // had zero items for it. Hosts frequently populate only a subset (e.g. only
260
- // object-type descriptors); the sibling catalogs must still exist as valid,
261
- // readable, empty native catalogs so `loadDescriptorSnapshot()` — which reads
262
- // all of them — never hits a missing/unbound catalog.
263
- for (const catalogId of Object.keys(NATIVE_CATALOG_DEFAULTS)) {
264
- const catalogSpec = NATIVE_CATALOG_DEFAULTS[catalogId];
265
- const descriptorSeed = PROVISION_CATALOG_DESCRIPTOR_SEEDS[catalogId];
266
- if (!catalogSpec || !descriptorSeed)
267
- continue;
268
- catalogs.push(catalogSpec);
269
- descriptors.push(buildProvisionCatalogDescriptor(catalogId, catalogSpec.name, descriptorSeed));
270
- bindings.push({
271
- appId,
272
- catalogId,
273
- access: { canRead: true, canWrite: true, canAdmin: true },
274
- });
275
- const catalogItems = catalogsById.get(catalogId) ?? [];
276
- for (const item of catalogItems) {
277
- const data = { ...item.data };
278
- if (!data.id)
279
- data.id = item.id;
280
- items.push({
281
- catalogId,
282
- data: encodeCatalogItemDataForCatalox(catalogId, data),
283
- });
284
- }
285
- }
286
- return {
287
- presetVersion: 1,
288
- id: `memorix-descriptor-provision-${appId}`,
289
- name: "Memorix descriptor auto-provision",
290
- description: "Auto-migrated Memorix descriptor catalogs from legacy Catalox storage into Mongo.",
291
- catalogs,
292
- descriptors,
293
- bindings,
294
- items,
295
- };
296
- }
297
73
  /**
298
- * Ensures descriptor metadata is readable for `appId` on the Mongo Catalox store.
299
- * When Mongo is empty but legacy Firestore Catalox still holds data for the same
300
- * app, copies catalogs/bindings/items automatically (idempotent).
74
+ * Probes whether descriptor metadata is readable for `appId` on the Mongo Catalox store.
75
+ * Does not migrate from any other backend publish descriptors via seed apply / Catalox Manager.
301
76
  */
302
77
  export async function ensureMemorixDescriptorsProvisioned(options) {
303
78
  const warnings = [];
304
79
  const { appId, catalox } = options;
305
- if (options.skip) {
306
- const probe = await probeMongoDescriptorReadiness(catalox, appId);
307
- return {
308
- provisioned: probe.ready,
309
- source: probe.ready ? "mongo-existing" : "unavailable",
310
- entityDescriptorCount: probe.entityCount,
311
- warnings,
312
- };
313
- }
314
- let probe = await probeMongoDescriptorReadiness(catalox, appId);
80
+ const probe = await probeMongoDescriptorReadiness(catalox, appId);
315
81
  if (probe.ready) {
316
82
  return {
317
83
  provisioned: true,
@@ -320,56 +86,12 @@ export async function ensureMemorixDescriptorsProvisioned(options) {
320
86
  warnings,
321
87
  };
322
88
  }
323
- memorixRetrievalLogger.info("Memorix descriptor Mongo store empty — checking legacy Catalox", {
324
- appId,
325
- debugKind: DebugLogAbstract.EVENT,
326
- });
327
- let legacyCatalogs;
328
- try {
329
- legacyCatalogs = await exportLegacyFirestoreCatalogs(appId);
330
- }
331
- catch (err) {
332
- const message = err instanceof Error ? err.message : String(err);
333
- warnings.push(`Legacy Catalox export unavailable: ${message}`);
334
- memorixRetrievalLogger.warn("Legacy Catalox descriptor export failed", {
335
- appId,
336
- debugKind: DebugLogAbstract.EVENT,
337
- evidence: [fieldEvidence("error", message)],
338
- });
339
- return {
340
- provisioned: false,
341
- source: "unavailable",
342
- entityDescriptorCount: 0,
343
- warnings,
344
- };
345
- }
346
- const entityItems = legacyCatalogs.get(MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG) ?? [];
347
- if (entityItems.length === 0) {
348
- warnings.push("Legacy Catalox has no entity/object-type descriptors to migrate");
349
- return {
350
- provisioned: false,
351
- source: "unavailable",
352
- entityDescriptorCount: 0,
353
- warnings,
354
- };
355
- }
356
- const manifest = buildProvisionManifest(appId, legacyCatalogs);
357
- await applyCataloxSeedPreset(catalox, { appId, superAdmin: true, actor: PROVISION_ACTOR }, {
358
- manifest,
359
- });
360
- probe = await probeMongoDescriptorReadiness(catalox, appId);
361
- if (!probe.ready) {
362
- warnings.push("Descriptor auto-provision completed but Mongo still reports zero entity descriptors");
89
+ if (!options.skip) {
90
+ warnings.push("Mongo Catalox has no entity/object-type descriptors for this appId — apply descriptor seeds or publish via Catalox Manager");
363
91
  }
364
- memorixRetrievalLogger.info("Memorix descriptors auto-provisioned from legacy Catalox", {
365
- appId,
366
- entityDescriptorCount: probe.entityCount,
367
- migratedCatalogs: manifest.catalogs.map((catalog) => catalog.catalogId),
368
- debugKind: DebugLogAbstract.EVENT,
369
- });
370
92
  return {
371
- provisioned: probe.ready,
372
- source: "legacy-firestore-migration",
93
+ provisioned: false,
94
+ source: "unavailable",
373
95
  entityDescriptorCount: probe.entityCount,
374
96
  warnings,
375
97
  };
@@ -1 +1 @@
1
- {"version":3,"file":"catalox-descriptor-provision.js","sourceRoot":"","sources":["../../src/client/catalox-descriptor-provision.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalox-descriptor-provision.js","sourceRoot":"","sources":["../../src/client/catalox-descriptor-provision.ts"],"names":[],"mappings":"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"}
@@ -1,46 +1,6 @@
1
1
  import { beforeEach, describe, expect, it, vi } from "vitest";
2
2
  import { MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG } from "@x12i/memorix-descriptors";
3
3
  import { ensureMemorixDescriptorsProvisioned } from "../client/catalox-descriptor-provision.js";
4
- const applyCataloxSeedPreset = vi.fn();
5
- const createCataloxFromEnv = vi.fn();
6
- vi.mock("@x12i/catalox", async (importOriginal) => {
7
- const actual = await importOriginal();
8
- return {
9
- ...actual,
10
- applyCataloxSeedPreset: (...args) => applyCataloxSeedPreset(...args),
11
- };
12
- });
13
- vi.mock("@x12i/catalox/firebase", () => ({
14
- createCataloxFromEnv: (...args) => createCataloxFromEnv(...args),
15
- }));
16
- const assetsEntityDescriptor = {
17
- id: "assets",
18
- entityName: "assets",
19
- target: "entity",
20
- defaultListDescriptorId: "assets-main-list",
21
- defaultItemDescriptorId: "asset-detail-item",
22
- collectionPrefix: "assets",
23
- identity: {
24
- allowedIdFields: ["entityId", "eventId"],
25
- requiredExactlyOne: true,
26
- defaultIdField: "entityId",
27
- },
28
- defaults: {
29
- canonicalContentType: "snapshots",
30
- dataRoot: "data",
31
- effectiveDatePath: "capturedAt",
32
- fallbackEffectiveDatePaths: [],
33
- },
34
- contentTypes: {
35
- snapshots: {
36
- postfix: "snapshots",
37
- collection: "assets-snapshots",
38
- isCanonical: true,
39
- },
40
- },
41
- properties: {},
42
- relations: {},
43
- };
44
4
  function mongoCataloxWithCounts(counts) {
45
5
  return {
46
6
  withContext: vi.fn(() => ({
@@ -55,29 +15,9 @@ function mongoCataloxWithCounts(counts) {
55
15
  })),
56
16
  };
57
17
  }
58
- function firestoreCataloxFixture() {
59
- return {
60
- withContext: vi.fn(() => ({
61
- listCatalogItems: vi.fn(async (catalogId) => {
62
- if (catalogId === MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG) {
63
- return {
64
- listOutcome: "ok",
65
- items: [{ itemId: "assets", data: assetsEntityDescriptor }],
66
- total: 1,
67
- };
68
- }
69
- return { listOutcome: "ok", items: [], total: 0 };
70
- }),
71
- })),
72
- };
73
- }
74
18
  describe("ensureMemorixDescriptorsProvisioned", () => {
75
19
  beforeEach(() => {
76
- applyCataloxSeedPreset.mockReset();
77
- createCataloxFromEnv.mockReset();
78
- applyCataloxSeedPreset.mockResolvedValue({
79
- applied: { catalogsCreated: [], catalogsSkippedExisting: [], descriptors: [], bindings: [], items: [] },
80
- });
20
+ vi.clearAllMocks();
81
21
  });
82
22
  it("returns mongo-existing when entity descriptors are already present", async () => {
83
23
  const catalox = mongoCataloxWithCounts({
@@ -90,74 +30,29 @@ describe("ensureMemorixDescriptorsProvisioned", () => {
90
30
  expect(result.source).toBe("mongo-existing");
91
31
  expect(result.provisioned).toBe(true);
92
32
  expect(result.entityDescriptorCount).toBe(3);
93
- expect(createCataloxFromEnv).not.toHaveBeenCalled();
94
- expect(applyCataloxSeedPreset).not.toHaveBeenCalled();
33
+ expect(result.warnings).toEqual([]);
95
34
  });
96
- it("migrates legacy Firestore descriptors into Mongo when Mongo is empty", async () => {
97
- let mongoEntityCount = 0;
98
- const catalox = {
99
- withContext: vi.fn(() => ({
100
- listCatalogItems: vi.fn(async (catalogId) => {
101
- const count = catalogId === MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG ? mongoEntityCount : 0;
102
- return {
103
- listOutcome: "ok",
104
- items: Array.from({ length: count }, () => ({
105
- itemId: "assets",
106
- data: assetsEntityDescriptor,
107
- })),
108
- total: count,
109
- };
110
- }),
111
- })),
112
- };
113
- createCataloxFromEnv.mockReturnValue({ catalox: firestoreCataloxFixture() });
114
- applyCataloxSeedPreset.mockImplementation(async () => {
115
- mongoEntityCount = 1;
116
- return {
117
- applied: {
118
- catalogsCreated: [MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG],
119
- catalogsSkippedExisting: [],
120
- descriptors: [],
121
- bindings: [MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG],
122
- items: ["assets"],
123
- },
124
- };
125
- });
35
+ it("returns unavailable when Mongo has no entity descriptors", async () => {
36
+ const catalox = mongoCataloxWithCounts({});
126
37
  const result = await ensureMemorixDescriptorsProvisioned({
127
38
  appId: "graphs-studio",
128
39
  catalox: catalox,
129
40
  });
130
- expect(result.source).toBe("legacy-firestore-migration");
131
- expect(result.provisioned).toBe(true);
132
- expect(result.entityDescriptorCount).toBe(1);
133
- expect(createCataloxFromEnv).toHaveBeenCalledOnce();
134
- expect(applyCataloxSeedPreset).toHaveBeenCalledOnce();
135
- const manifest = applyCataloxSeedPreset.mock.calls[0]?.[2]?.manifest;
136
- // Every descriptor catalog kind is created + bound, even the empty ones,
137
- // so a sibling catalog with no items can't fail the snapshot load later.
138
- expect(manifest.descriptors.length).toBeGreaterThanOrEqual(6);
139
- expect(manifest.catalogs.length).toBe(manifest.bindings.length);
140
- expect(manifest.catalogs.length).toBe(manifest.descriptors.length);
141
- const objectTypeDescriptor = manifest.descriptors.find((entry) => entry.catalogId === MEMORIX_OBJECT_TYPE_DESCRIPTORS_CATALOG);
142
- expect(objectTypeDescriptor?.descriptor.identity).toEqual({
143
- itemIdStrategy: "natural",
144
- itemIdField: "id",
145
- titleField: "entityName",
146
- });
147
- expect(manifest.items.some((item) => item.data.id === "assets")).toBe(true);
41
+ expect(result.source).toBe("unavailable");
42
+ expect(result.provisioned).toBe(false);
43
+ expect(result.entityDescriptorCount).toBe(0);
44
+ expect(result.warnings[0]).toContain("no entity/object-type descriptors");
148
45
  });
149
- it("returns unavailable when legacy export fails", async () => {
46
+ it("still reports unavailable under skip when Mongo is empty", async () => {
150
47
  const catalox = mongoCataloxWithCounts({});
151
- createCataloxFromEnv.mockImplementation(() => {
152
- throw new Error("Missing Firebase credentials");
153
- });
154
48
  const result = await ensureMemorixDescriptorsProvisioned({
155
49
  appId: "graphs-studio",
156
50
  catalox: catalox,
51
+ skip: true,
157
52
  });
158
53
  expect(result.source).toBe("unavailable");
159
54
  expect(result.provisioned).toBe(false);
160
- expect(result.warnings[0]).toContain("Legacy Catalox export unavailable");
55
+ expect(result.warnings).toEqual([]);
161
56
  });
162
57
  });
163
58
  //# sourceMappingURL=catalox-descriptor-provision.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalox-descriptor-provision.test.js","sourceRoot":"","sources":["../../src/tests/catalox-descriptor-provision.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalox-descriptor-provision.test.js","sourceRoot":"","sources":["../../src/tests/catalox-descriptor-provision.test.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ const { client, cataloxBound, appId } = await createMemorixRetrievalStackFromEnv
14
14
  });
15
15
  ```
16
16
 
17
- Uses `createMemorixCataloxFromEnv` + `ensureMemorixDescriptorsProvisioned` + `createCataloxAdapterFromBound` + `createMemorixRetrievalFromEnv` in one call. App id resolves from option → `CATALOX_APP_ID` → `MEMORIX_APP_ID` → `memorix`. Catalox metadata is stored in Mongo (`MEMORIX_CATALOX_DB`, default `memorix-catalox`) on `MONGO_URI`. On first connect after upgrade, legacy Firestore descriptor catalogs (when present) are copied into Mongo automatically hosts do not configure storage backends.
17
+ Uses `createMemorixCataloxFromEnv` + `ensureMemorixDescriptorsProvisioned` + `createCataloxAdapterFromBound` + `createMemorixRetrievalFromEnv` in one call. App id resolves from option → `CATALOX_APP_ID` → `MEMORIX_APP_ID` → `memorix`. Catalox metadata is stored in Mongo (`MEMORIX_CATALOX_DB`, default `memorix-catalox`) on `MONGO_URI`. `ensureMemorixDescriptorsProvisioned` only probes Mongo readiness publish descriptors via seed apply or Catalox Manager. Firestore is not used for Memorix Catalox (FuncX may still use Firestore for its own catalogs).
18
18
 
19
19
  ## Entity discovery
20
20
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@x12i/memorix-retrieval",
3
- "version": "1.32.0",
3
+ "version": "1.33.0",
4
4
  "description": "Read-side runtime data tier for Memorix: inventory, lists, items, slices, graph, and health",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",