@x12i/memorix-descriptors 0.1.0 → 1.0.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 (38) hide show
  1. package/README.md +390 -41
  2. package/dist/admin/create-admin.d.ts.map +1 -1
  3. package/dist/admin/create-admin.js +2 -1
  4. package/dist/admin/create-admin.js.map +1 -1
  5. package/dist/catalox/client.d.ts.map +1 -1
  6. package/dist/catalox/client.js +14 -1
  7. package/dist/catalox/client.js.map +1 -1
  8. package/dist/tests/fixtures.d.ts +54 -0
  9. package/dist/tests/fixtures.d.ts.map +1 -0
  10. package/dist/tests/fixtures.js +79 -0
  11. package/dist/tests/fixtures.js.map +1 -0
  12. package/dist/tests/helpers/live.d.ts +7 -0
  13. package/dist/tests/helpers/live.d.ts.map +1 -0
  14. package/dist/tests/helpers/live.js +31 -0
  15. package/dist/tests/helpers/live.js.map +1 -0
  16. package/dist/tests/integrity.test.d.ts +2 -0
  17. package/dist/tests/integrity.test.d.ts.map +1 -0
  18. package/dist/tests/integrity.test.js +49 -0
  19. package/dist/tests/integrity.test.js.map +1 -0
  20. package/dist/tests/live/catalox.live.test.d.ts +2 -0
  21. package/dist/tests/live/catalox.live.test.d.ts.map +1 -0
  22. package/dist/tests/live/catalox.live.test.js +110 -0
  23. package/dist/tests/live/catalox.live.test.js.map +1 -0
  24. package/dist/tests/mutations.test.d.ts +2 -0
  25. package/dist/tests/mutations.test.d.ts.map +1 -0
  26. package/dist/tests/mutations.test.js +99 -0
  27. package/dist/tests/mutations.test.js.map +1 -0
  28. package/dist/tests/seeds.test.d.ts +2 -0
  29. package/dist/tests/seeds.test.d.ts.map +1 -0
  30. package/dist/tests/seeds.test.js +57 -0
  31. package/dist/tests/seeds.test.js.map +1 -0
  32. package/dist/tests/setup.d.ts +2 -0
  33. package/dist/tests/setup.d.ts.map +1 -0
  34. package/dist/tests/setup.js +6 -0
  35. package/dist/tests/setup.js.map +1 -0
  36. package/dist/tests/validation.test.js +3 -62
  37. package/dist/tests/validation.test.js.map +1 -1
  38. package/package.json +5 -2
package/README.md CHANGED
@@ -2,95 +2,444 @@
2
2
 
3
3
  Write-side control plane for Memorix entity, list, and item descriptors — plus content types, collections, relations, and completion mappings — stored in Catalox and consumed by `@x12i/memorix-retrieval`.
4
4
 
5
- ## Overview
5
+ ## Role in the ecosystem
6
+
7
+ ```
8
+ Hosts (Explorer Admin, CI, CLI, internal tools)
9
+
10
+
11
+ @x12i/memorix-descriptors ← validate, mutate, seed, reconcile (this package)
12
+
13
+ ├─ write ──► @x12i/catalox (descriptor catalogs)
14
+
15
+ └─ read / inventory ──► @x12i/memorix-retrieval (+ optional @x12i/xronox)
16
+ ```
6
17
 
7
18
  | Concern | Package |
8
19
  |--------|---------|
9
- | Load descriptors, compose lists/items, graph, inventory | `@x12i/memorix-retrieval` |
20
+ | Load descriptors, compose lists/items, graph, runtime reads | `@x12i/memorix-retrieval` |
10
21
  | Create/update/delete descriptors and mappings in Catalox | `@x12i/memorix-descriptors` |
22
+ | Write Memorix payload documents to Mongo | `@x12i/memorix-completion` |
23
+
24
+ Canonical contracts: [`docs/MEMORIX-CATALOX-CONTRACTS.md`](docs/MEMORIX-CATALOX-CONTRACTS.md), [`docs/MEMORIX-DATABASE-CONVENTIONS.md`](docs/MEMORIX-DATABASE-CONVENTIONS.md).
11
25
 
12
- This package validates referential integrity across entity ↔ list ↔ item ↔ relation ↔ content type ↔ mapping, supports dry-run on all mutations, and stays compatible with the `catalox-seeds/inputs/` workflow from retrieval.
26
+ ---
13
27
 
14
28
  ## Install
15
29
 
16
30
  ```bash
17
- npm install @x12i/memorix-descriptors @x12i/catalox @x12i/memorix-retrieval @x12i/xronox
31
+ npm install @x12i/memorix-descriptors @x12i/catalox @x12i/memorix-retrieval
32
+ # Optional, for Mongo inventory / reconcile:
33
+ npm install @x12i/xronox
18
34
  ```
19
35
 
36
+ Peer dependencies: `@x12i/catalox` ≥5, `@x12i/memorix-retrieval` ≥1.6, `@x12i/xronox` ≥3.9 (optional).
37
+
38
+ ---
39
+
20
40
  ## Bootstrap
21
41
 
42
+ ### From a bound Catalox client
43
+
22
44
  ```typescript
23
45
  import { bindCataloxContext, createCataloxFromEnv } from "@x12i/catalox/firebase";
24
- import { createMemorixDescriptorAdmin, resolveMemorixAppId } from "@x12i/memorix-descriptors";
46
+ import {
47
+ createMemorixDescriptorAdmin,
48
+ resolveMemorixAppId,
49
+ } from "@x12i/memorix-descriptors";
25
50
 
26
51
  const { catalox } = createCataloxFromEnv();
27
52
  const bound = bindCataloxContext(catalox, {
28
- appId: resolveMemorixAppId(),
53
+ appId: resolveMemorixAppId(), // CATALOX_APP_ID → MEMORIX_APP_ID → "memorix"
29
54
  actor: { type: "service", id: "memorix-descriptors" },
30
55
  superAdmin: true,
31
56
  });
32
57
 
33
- const admin = createMemorixDescriptorAdmin({ catalox: bound });
58
+ const admin = createMemorixDescriptorAdmin({
59
+ catalox: bound,
60
+ processEnv: process.env,
61
+ });
34
62
  ```
35
63
 
36
- Or from environment (includes optional Xronox for inventory):
64
+ ### From environment
37
65
 
38
66
  ```typescript
39
67
  import { createMemorixDescriptorAdminFromEnv } from "@x12i/memorix-descriptors";
40
68
 
41
69
  const admin = await createMemorixDescriptorAdminFromEnv();
70
+ // Uses GOOGLE_SERVICE_ACCOUNT_BASE64 / ADC for Catalox
71
+ // Uses MONGO_URI + Xronox when set (for reconcile / ensureCollection)
42
72
  ```
43
73
 
44
- ## Register an entity (atomic default list + item)
74
+ ---
75
+
76
+ ## Memorix targets
77
+
78
+ Descriptors are scoped to a **target** (Mongo database role):
79
+
80
+ | Target | Default DB | Identity field | Typical use |
81
+ |--------|------------|----------------|-------------|
82
+ | `entity` | `memorix-entities` | `entityId` | Stable domain objects (assets, groups) |
83
+ | `event` | `memorix-events` | `eventId` | Detections, timeline (vulnerabilities) |
84
+ | `knowledge` | `memorix-knowledge` | `knowledgeId` | Narratives, playbooks, curated facts |
85
+
86
+ This package accepts `target: "knowledge"` on entity descriptors and mappings. Full ecosystem support (retrieval discovery, Xronox presets, env keys) is coordinated via a separate contract bump across packages.
87
+
88
+ ---
89
+
90
+ ## Catalox catalogs
91
+
92
+ Do not introduce parallel catalog ids (per contracts).
93
+
94
+ | Catalog id | Descriptor type | Managed by |
95
+ |------------|-----------------|------------|
96
+ | `memorix-entity-descriptors` | Entity descriptor | ✅ |
97
+ | `memorix-list-descriptors` | List descriptor (entity + workspace) | ✅ |
98
+ | `memorix-item-descriptors` | Item descriptor | ✅ |
99
+ | `memorix-completion-mappings` | Completion source → target maps | ✅ (optional catalog; missing catalog is treated as empty) |
100
+
101
+ App id: `memorix` (override via `CATALOX_APP_ID` / `MEMORIX_APP_ID`).
102
+
103
+ ---
104
+
105
+ ## `MemorixDescriptorAdmin` API
106
+
107
+ All mutating methods accept `DescriptorMutationOptions` and return `DescriptorMutationResult<T>`.
108
+
109
+ ### Mutation options
110
+
111
+ | Option | Description |
112
+ |--------|-------------|
113
+ | `dryRun` | Validate + build projected graph; no Catalox write |
114
+ | `skipMongo` | Skip collection inventory / ensure steps |
115
+ | `scope` | Catalox seed scope (`domains`, `agents`) merged into item data |
116
+ | `allowCreateCollection` | When `true` and Xronox is configured, report `create-required` for missing collections (does not move data) |
117
+ | `cascade` | Property/relation removal updates list/item field sets (default `true`) |
118
+ | `force` | Hard delete / ignore default list-item guards |
119
+ | `mode` | `soft` \| `hard` for `removeEntityDescriptor` |
120
+ | `reason` | Reserved for audit trail (not persisted yet) |
121
+ | `expectedVersion` | Reserved for optimistic concurrency (not enforced yet) |
122
+
123
+ ### Mutation result
45
124
 
46
125
  ```typescript
47
- const result = await admin.registerEntityDescriptor({
48
- entityName: "impact-stories",
49
- target: "knowledge",
50
- collectionPrefix: "impact-stories",
51
- canonicalContentType: {
52
- key: "narratives",
53
- postfix: "narratives",
54
- collection: "impact-stories-narratives",
55
- },
56
- identity: { idField: "knowledgeId" },
57
- }, { dryRun: true });
58
-
59
- console.log(result.cataloxWrites, result.integrity);
126
+ {
127
+ ok: boolean; // false if validation/integrity errors on the projected graph
128
+ dryRun: boolean;
129
+ data?: T;
130
+ warnings: string[];
131
+ errors: Array<{ code: string; message: string; path?: string }>;
132
+ cataloxWrites: Array<{ catalogId; itemId; action: "create"|"update"|"delete" }>;
133
+ mongoActions?: Array<{ action; database; collection }>;
134
+ integrity: DescriptorIntegrityReport;
135
+ rollbackPlan?: CataloxWriteAction[]; // reserved not populated on failed writes yet
136
+ }
60
137
  ```
61
138
 
139
+ Every mutation validates against a **projected** full descriptor graph (in-memory) before writing.
140
+
141
+ ---
142
+
143
+ ### Integrity & graph
144
+
145
+ | Method | Description |
146
+ |--------|-------------|
147
+ | `validateMemorixDescriptors()` | Load all catalogs + run referential integrity |
148
+ | `getDescriptorGraph()` | Nodes/edges: entities, lists, items, mappings, relations |
149
+ | `getDescriptorGraphMermaid()` | Mermaid diagram string |
150
+ | `loadSnapshot()` | Raw `DescriptorSnapshot` from Catalox |
151
+
152
+ **Integrity checks include:** default list/item ids exist; list fields ⊆ entity properties with `humanReadable: true`; item fields human-readable; content types on properties/lists/items; relation targets; mapping `targetCollection` / `entityType`; forbidden `process.env` in descriptor JSON; dangling relation references.
153
+
154
+ Also exported: `validateDescriptorSnapshot`, `buildDescriptorGraph`, `descriptorGraphToMermaid`.
155
+
156
+ ---
157
+
158
+ ### Entity descriptors
159
+
160
+ | Method | Description |
161
+ |--------|-------------|
162
+ | `registerEntityDescriptor(input)` | Create entity + default `{entity}-main-list` + `{entity}-detail-item` (atomic logical transaction) |
163
+ | `updateEntityDescriptor(entityName, patch)` | Patch defaults, identity, content types, etc. **Cannot** rename `entityName` / `id` |
164
+ | `removeEntityDescriptor(entityName, options?)` | `soft` (default): deprecated flags; `hard` + `force`: delete entity + default list/item |
165
+
166
+ `registerEntityDescriptor` input: `entityName`, `target`, `collectionPrefix`, `canonicalContentType`, optional `identity`, `initialProperties`, `scope`.
167
+
168
+ ---
169
+
170
+ ### Content types & collections
171
+
172
+ Content types live under `entityDescriptor.contentTypes` (each resolves to a Mongo collection).
173
+
174
+ | Method | Description |
175
+ |--------|-------------|
176
+ | `addContentType(entityName, input)` | Add key; at most one `isCanonical: true` |
177
+ | `updateContentType(entityName, key, patch)` | Patch postfix, collection, canonical flag, etc. |
178
+ | `removeContentType(entityName, key)` | Fails if referenced by properties, lists, items, relations, or sole canonical |
179
+ | `resolveCollection(entityName, contentTypeKey)` | Same resolution order as retrieval (explicit → env → `{prefix}-{postfix}`) |
180
+ | `ensureCollection(entityName, contentTypeKey)` | Inventory via Xronox `listCollections` |
181
+ | `planCollectionRename(entityName, contentTypeKey, newName)` | Migration plan only (no data move) |
182
+
183
+ ---
184
+
185
+ ### Properties
186
+
187
+ | Method | Description |
188
+ |--------|-------------|
189
+ | `addProperty(entityName, key, property, options?)` | Validates `source.contentType`; optional `addToDefaultList` / `addToDefaultItem` |
190
+ | `updateProperty(entityName, key, patch)` | Merge patch |
191
+ | `removeProperty(entityName, key, options?)` | Cascades out of list `fields[]` and item `sections[].fields[]` unless `cascade: false`; fails if used in relation join paths |
192
+
193
+ ---
194
+
195
+ ### List descriptors
196
+
197
+ | Method | Description |
198
+ |--------|-------------|
199
+ | `createListDescriptor(input)` | Entity list (`kind` omitted or `"entity"`) or workspace list (`kind: "workspace"`) |
200
+ | `updateListDescriptor(id, patch)` | |
201
+ | `removeListDescriptor(id)` | Blocked if still entity default unless `force` |
202
+ | `setEntityDefaultList(entityName, listDescriptorId)` | Wire `defaultListDescriptorId` with referential checks |
203
+
204
+ ---
205
+
206
+ ### Item descriptors
207
+
208
+ | Method | Description |
209
+ |--------|-------------|
210
+ | `createItemDescriptor(input)` | |
211
+ | `updateItemDescriptor(id, patch)` | |
212
+ | `removeItemDescriptor(id)` | Blocked if still entity default unless `force` |
213
+ | `setEntityDefaultItem(entityName, itemDescriptorId)` | |
214
+
215
+ ---
216
+
217
+ ### Relations
218
+
219
+ Relations live on the **source** entity descriptor under `relations`.
220
+
221
+ | Method | Description |
222
+ |--------|-------------|
223
+ | `addRelation(sourceEntity, relationKey, descriptor)` | Validates target entity + content types |
224
+ | `updateRelation(sourceEntity, relationKey, patch)` | |
225
+ | `removeRelation(sourceEntity, relationKey, options?)` | Cascades `includeRelations` on list/item unless `cascade: false` |
226
+
227
+ `RelationInput`: `targetEntity`, `type`, `source`/`target` `{ contentType, path }`, optional `defaultMode`, `defaultArrayProperty`, `targetFields`.
228
+
229
+ ---
230
+
231
+ ### Completion mappings
232
+
233
+ | Method | Description |
234
+ |--------|-------------|
235
+ | `registerMapping(input)` | Cross-validates `entityType`, `target`, `targetCollection`, field paths |
236
+ | `updateMapping(id, patch)` | |
237
+ | `removeMapping(id)` | |
238
+
239
+ Shape: `MemorixCompletionMapping` (see `src/types/index.ts` and `MEMORIX-DATABASE-CONVENTIONS.md`).
240
+
241
+ ---
242
+
243
+ ### Seed import / export
244
+
245
+ Compatible with `@x12i/memorix-retrieval` `catalox-seeds/inputs/` layout:
246
+
247
+ ```
248
+ catalox-seeds/inputs/
249
+ entity-descriptors/*.json
250
+ list-descriptors/*.json
251
+ item-descriptors/*.json
252
+ mapping-descriptors/*.json # optional
253
+ scope.json
254
+ manifest.json # written on export
255
+ ```
256
+
257
+ | Method | Description |
258
+ |--------|-------------|
259
+ | `buildDescriptorSeedManifest(scope?)` | Build manifest from current Catalox snapshot |
260
+ | `exportDescriptorSeedInputs(dir, scope?)` | Write inputs layout to disk |
261
+ | `importDescriptorSeedInputs(dir, { dryRun?, scope? })` | Validate + upsert |
262
+ | `applyDescriptorSeedManifest(manifest, { dryRun?, force? })` | Upsert manifest items (scope merged into data) |
263
+
264
+ Uses `mergeSeedItemScopeIntoUpsertData` from `@x12i/memorix-retrieval` for apply shape.
265
+
266
+ ---
267
+
268
+ ### Mongo reconciliation
269
+
270
+ | Method | Description |
271
+ |--------|-------------|
272
+ | `reconcileDescriptorsWithMongo()` | Uses `buildMemorixCollectionInventory` from retrieval |
273
+
274
+ Returns `inventory` + `suggestions`:
275
+
276
+ - `ensure-collection` — declared in descriptors, missing in Mongo
277
+ - `empty-declared-collection` — declared but zero documents
278
+ - `create-descriptor-for-orphan` — Mongo collection with no descriptor
279
+
280
+ Descriptors in Catalox remain schema truth; orphans are **suggestions** only (`autoRegisterOrphans` not implemented).
281
+
282
+ Requires `MONGO_URI` and Xronox when calling `createMemorixDescriptorAdminFromEnv`.
283
+
284
+ ---
285
+
62
286
  ## CLI
63
287
 
288
+ Binary: `memorix-descriptors` (after `npm run build`).
289
+
290
+ | Command | Status |
291
+ |---------|--------|
292
+ | `validate` | ✅ |
293
+ | `reconcile` | ✅ (needs Xronox / `MONGO_URI`) |
294
+ | `graph [--format mermaid]` | ✅ |
295
+ | `entity register --file <json> [--dry-run]` | ✅ |
296
+ | `content-type add <entity> <key> --postfix <p> [--dry-run]` | ✅ |
297
+ | `list create --file <json> [--dry-run]` | ✅ |
298
+ | `list update <id> --file <json> [--dry-run]` | ✅ |
299
+ | `item update <id> --file <json> [--dry-run]` | ✅ |
300
+ | `mapping register --file <json> [--dry-run]` | ✅ |
301
+ | `seed export <dir>` | ✅ |
302
+ | `seed import <dir> [--dry-run]` | ✅ |
303
+
304
+ **Library-only today** (use `MemorixDescriptorAdmin` directly): entity update/remove, property CRUD, content-type update/remove, list/item create/remove, relation CRUD, mapping update/remove, `ensureCollection`, etc.
305
+
64
306
  ```bash
65
307
  npx memorix-descriptors validate
66
- npx memorix-descriptors reconcile
67
308
  npx memorix-descriptors graph --format mermaid
68
309
  npx memorix-descriptors entity register --file ./new-entity.json --dry-run
69
310
  npx memorix-descriptors seed export ./catalox-seeds/inputs
70
311
  npx memorix-descriptors seed import ./catalox-seeds/inputs --dry-run
71
312
  ```
72
313
 
73
- ## Catalox catalogs
314
+ ---
74
315
 
75
- | Catalog id | Purpose |
76
- |-----------|---------|
77
- | `memorix-entity-descriptors` | Entity schema root |
78
- | `memorix-list-descriptors` | Tabular views |
79
- | `memorix-item-descriptors` | Record detail layouts |
80
- | `memorix-completion-mappings` | Source → Memorix payload maps |
316
+ ## Explorer / host integration
81
317
 
82
- ## Implementation phases
318
+ | UI surface | API |
319
+ |------------|-----|
320
+ | Entity graph canvas | `getDescriptorGraph`, `reconcileDescriptorsWithMongo` |
321
+ | Add entity wizard | `registerEntityDescriptor` |
322
+ | Column / field editor | `addProperty`, `updateListDescriptor` |
323
+ | Detail layout editor | `updateItemDescriptor` |
324
+ | Collection health | `reconcileDescriptorsWithMongo` |
325
+ | Mapping editor | `registerMapping` |
326
+ | Knowledge tab | Filter entities where `target === "knowledge"` |
83
327
 
84
- - **Phase 1 (current):** bootstrap, validation, entity/content/property CRUD, seeds, dry-run
85
- - **Phase 2:** list/item/relation hardening, cascade rules
86
- - **Phase 3:** mapping catalog + Mongo reconcile
87
- - **Phase 4:** knowledge target contract bump across ecosystem
88
- - **Phase 5:** rename/migrate, audit log, CI seed validation
328
+ Hosts should **read** via `@x12i/memorix-retrieval` and **write** only through this package.
89
329
 
90
- ## Related packages
330
+ ---
331
+
332
+ ## Validation utilities (exported)
333
+
334
+ Re-exported / extended validators (aligned with retrieval rules, plus `knowledge` target):
91
335
 
92
- - `@x12i/memorix-retrieval` read/composition layer
93
- - `@x12i/catalox` — descriptor storage
94
- - `@x12i/memorix-completion` payload document writes
336
+ - `validateMemorixEntityDescriptor`, `validateMemorixListDescriptor`, `validateMemorixEntityListDescriptor`, `validateMemorixItemDescriptor`
337
+ - `validatePropertyDescriptor`, `assertListFieldsHumanReadable`
338
+ - `defaultListDescriptorId`, `defaultItemDescriptorId`, `singularizeEntityName`, `isKebabCase`
339
+ - `DescriptorValidationError`
340
+
341
+ ---
342
+
343
+ ## Environment variables
344
+
345
+ See [`.env.example`](.env.example).
346
+
347
+ | Variable | Purpose |
348
+ |----------|---------|
349
+ | `GOOGLE_SERVICE_ACCOUNT_BASE64` | Catalox / Firestore (recommended) |
350
+ | `FIREBASE_PROJECT_ID`, `FIRESTORE_DATABASE_ID` | Firestore |
351
+ | `CATALOX_APP_ID` / `MEMORIX_APP_ID` | App namespace (default `memorix`) |
352
+ | `MONGO_URI` | Xronox for reconcile / `ensureCollection` |
353
+ | `MEMORIX_ENTITIES_DB`, `MEMORIX_EVENTS_DB`, `MEMORIX_KNOWLEDGE_DB` | DB names |
354
+ | `MEMORIX_*_COLLECTION_<ENTITY>` | Per-entity collection overrides |
355
+ | `FIRESTORE_LIVE_TESTS=1` | Enable live integration tests |
356
+
357
+ ---
358
+
359
+ ## Tests
360
+
361
+ ```bash
362
+ npm test # unit tests only (no Firestore)
363
+ npm run test:live # integration tests (reads .env, needs FIRESTORE_LIVE_TESTS=1)
364
+ npm run test:all # both
365
+ ```
366
+
367
+ Live tests: Firestore connectivity, validate deployed graph, load smoke entity (`MEMORIX_SMOKE_ENTITY`, default `assets`), catalog listing, graph, collection resolve, dry-run `addProperty`. Reconcile live test requires `MONGO_URI`.
368
+
369
+ ---
370
+
371
+ ## Gap analysis (spec vs implementation)
372
+
373
+ ### Implemented ✅
374
+
375
+ | Area | Coverage |
376
+ |------|----------|
377
+ | Bootstrap | `createMemorixDescriptorAdmin`, `createMemorixDescriptorAdminFromEnv` |
378
+ | Entity lifecycle | Register (atomic list+item), update, soft/hard remove |
379
+ | Content types | Add, update, remove with referential guards |
380
+ | Collections | Resolve, ensure (inventory), rename **plan** |
381
+ | Properties | Add, update, remove with list/item cascade |
382
+ | List / item descriptors | Full CRUD + set default list/item |
383
+ | Relations | Add, update, remove with list/item cascade |
384
+ | Mappings | CRUD + cross-validation (`memorix-completion-mappings`) |
385
+ | Integrity engine | Full-graph validation, dangling refs, forbidden patterns |
386
+ | Descriptor graph | Build + Mermaid export |
387
+ | Seeds | Export/import/manifest; compatible with retrieval inputs layout |
388
+ | Reconcile | Inventory + suggestions via retrieval |
389
+ | Dry-run | All mutations |
390
+ | Targets | `entity`, `event`, `knowledge` in types and entity validation |
391
+ | CLI | Core read + seed + partial write commands |
392
+ | Tests | Unit + live Catalox suite |
393
+
394
+ ### Partial ⚠️
395
+
396
+ | Item | Notes |
397
+ |------|------|
398
+ | Mongo collection create | `ensureCollection` reports `exists` / `missing` / `create-required`; does not call a create API (Xronox has no `createCollection` in adapter) |
399
+ | Mutation `ok` flag | Also reflects **post-mutation graph integrity**; legacy descriptor issues can make `ok: false` even when the mutation plan is valid |
400
+ | Logical transactions | Validate-then-write in order; **no automatic rollback** on mid-way Catalox failure |
401
+ | `rollbackPlan` | Type exists; not populated on failure |
402
+ | `reason` / audit log | Option exists; not persisted |
403
+ | `expectedVersion` | Option exists; optimistic concurrency not enforced |
404
+ | CLI | Subset of library API; most mutations are programmatic only |
405
+ | Knowledge ecosystem | Accepted in this package; retrieval/Xronox/env presets need coordinated release |
406
+ | Completion mappings catalog | Gracefully empty if catalog not seeded in Catalox yet |
407
+
408
+ ### Not implemented yet ❌ (planned later phases)
409
+
410
+ | Item | Spec phase |
411
+ |------|------------|
412
+ | `renameEntityDescriptor(from, to)` | Phase 5 |
413
+ | Multi-item Catalox rollback / compensating writes | Phase 5 |
414
+ | Audit log of change sets | Phase 5 |
415
+ | `autoRegisterOrphans` on reconcile | Phase 3 policy |
416
+ | Delegate `memorix-retrieval` `catalox:seed:*` npm scripts to this CLI | Phase 5 |
417
+ | CI seed validation on descriptor PRs | Phase 5 |
418
+ | Impact report command (standalone) | Use `validateMemorixDescriptors` + `removeEntityDescriptor` dry-run today |
419
+
420
+ ### Explicit non-goals (v1)
421
+
422
+ - Writing Memorix **payload** documents (stays in `@x12i/memorix-completion`)
423
+ - Replacing Catalox storage or building Explorer UI
424
+ - Runtime list/item composition (stays in `@x12i/memorix-retrieval`)
425
+
426
+ ---
427
+
428
+ ## Implementation status by phase
429
+
430
+ | Phase | Focus | Status |
431
+ |-------|--------|--------|
432
+ | **1** | Bootstrap, validation, entity/content/property CRUD, seeds, dry-run | ✅ Done |
433
+ | **2** | List/item/relation CRUD, cascades, graph | ✅ Done |
434
+ | **3** | Mappings catalog, Mongo reconcile | ✅ Core done; `autoRegisterOrphans` pending |
435
+ | **4** | Knowledge target across ecosystem | ⚠️ This package ready; coordinated bump pending |
436
+ | **5** | Rename/migrate, audit, rollback, CLI parity, CI seeds | ❌ Not started |
437
+
438
+ ---
439
+
440
+ ## Related packages
95
441
 
96
- See `docs/MEMORIX-CATALOX-CONTRACTS.md` and `docs/MEMORIX-DATABASE-CONVENTIONS.md` for canonical contracts.
442
+ - **@x12i/memorix-retrieval** read/composition layer (discover, fetchList, fetchItem, collection inventory)
443
+ - **@x12i/catalox** — descriptor storage and native catalog APIs
444
+ - **@x12i/memorix-completion** — Memorix payload document writes (not descriptors)
445
+ - **@x12i/xronox** — optional Mongo inventory for reconcile and `ensureCollection`
@@ -1 +1 @@
1
- {"version":3,"file":"create-admin.d.ts","sourceRoot":"","sources":["../../src/admin/create-admin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EACzB,wBAAwB,EACxB,aAAa,EACb,6BAA6B,EAC9B,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACf,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,WAAW,EACX,cAAc,EACd,cAAc,EACd,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,aAAa,EACb,aAAa,EACd,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EACL,2BAA2B,EAG3B,0BAA0B,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAGtE,MAAM,MAAM,mCAAmC,GAAG;IAChD,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IAErC,0BAA0B,IAAI,OAAO,CAAC,OAAO,mBAAmB,EAAE,yBAAyB,CAAC,CAAC;IAC7F,kBAAkB,IAAI,OAAO,CAAC,OAAO,uBAAuB,EAAE,eAAe,CAAC,CAAC;IAC/E,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7C,wBAAwB,CACtB,KAAK,EAAE,6BAA6B,EACpC,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC;IAC/C,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACvC,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAC7C,sBAAsB,CACpB,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IAE7C,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,gBAAgB,EACvB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IACrC,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAChC,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACxC,iBAAiB,CACf,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACxC,iBAAiB,CAAC,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC;IACpG,gBAAgB,CACd,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;IACvC,oBAAoB,CAClB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;IAEpD,WAAW,CACT,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,aAAa,EACvB,OAAO,CAAC,EAAE,yBAAyB,GAAG;QACpC,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,GACA,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;IAClC,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,EAC7B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IACrC,cAAc,CACZ,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAErC,oBAAoB,CAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAE3C,oBAAoB,CAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC3C,oBAAoB,CAClB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAE3C,WAAW,CACT,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,aAAa,EACzB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,WAAW,CAAC,CAAC;IAClC,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,OAAO,CAAC,aAAa,CAAC,EAC7B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IACrC,cAAc,CACZ,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAErC,eAAe,CACb,KAAK,EAAE,wBAAwB,EAC/B,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACtC,aAAa,CACX,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,CAAC,wBAAwB,CAAC,EACxC,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IACpC,aAAa,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,yBAAyB,GAClC,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IAEpC,2BAA2B,CAAC,KAAK,CAAC,EAAE,OAAO,mBAAmB,EAAE,gBAAgB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACnH,0BAA0B,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,mBAAmB,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7G,0BAA0B,CACxB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,mBAAmB,EAAE,gBAAgB,CAAA;KAAE,GACnF,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC;IACjD,2BAA2B,CACzB,QAAQ,EAAE,sBAAsB,EAChC,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,GAC9C,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC;IAElD,6BAA6B,IAAI,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC;IAClF,YAAY,IAAI,OAAO,CAAC,OAAO,mBAAmB,EAAE,kBAAkB,CAAC,CAAC;CACzE,CAAC;AAEF,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mCAAmC,GAC3C,sBAAsB,CAsGxB;AAED,MAAM,MAAM,0CAA0C,GAAG;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IAC/B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB,CAAC;AAEF,wBAAsB,mCAAmC,CACvD,OAAO,GAAE,0CAA+C,GACvD,OAAO,CAAC,sBAAsB,CAAC,CA2BjC"}
1
+ {"version":3,"file":"create-admin.d.ts","sourceRoot":"","sources":["../../src/admin/create-admin.ts"],"names":[],"mappings":"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"}
@@ -83,7 +83,8 @@ export async function createMemorixDescriptorAdminFromEnv(options = {}) {
83
83
  superAdmin: true,
84
84
  });
85
85
  let xronox = options.xronox;
86
- if (!xronox) {
86
+ const mongoUri = processEnv.MONGO_URI?.trim();
87
+ if (!xronox && mongoUri) {
87
88
  try {
88
89
  const { createMemorixXronoxFromEnv } = await import("@x12i/memorix-retrieval");
89
90
  xronox = await createMemorixXronoxFromEnv({ processEnv });
@@ -1 +1 @@
1
- {"version":3,"file":"create-admin.js","sourceRoot":"","sources":["../../src/admin/create-admin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-admin.js","sourceRoot":"","sources":["../../src/admin/create-admin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/catalox/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,CAAC,EAAE,gBAAgB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CA0B9B;AAED,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAMzC;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,CAAC,EAAE,gBAAgB,GACvB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/catalox/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAQ1D,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC;AAE9C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B,CAAC;AAEF,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,CAAC,EAAE,gBAAgB,GACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAGzB;AAED,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAkC9B;AAOD,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAMzC;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,KAAK,CAAC,EAAE,gBAAgB,GACvB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,kBAAkB,EAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,eAAO,MAAM,eAAe;;;;;CAKlB,CAAC"}
@@ -9,7 +9,16 @@ export async function listAllCatalogItems(catalox, catalogId) {
9
9
  let offset = 0;
10
10
  const limit = 200;
11
11
  for (;;) {
12
- const page = await catalox.listCatalogItems(catalogId, { limit, offset });
12
+ let page;
13
+ try {
14
+ page = await catalox.listCatalogItems(catalogId, { limit, offset });
15
+ }
16
+ catch (err) {
17
+ if (isCatalogNotFoundError(err)) {
18
+ return [];
19
+ }
20
+ throw err;
21
+ }
13
22
  if (page.listOutcome === "mapping_blocked") {
14
23
  break;
15
24
  }
@@ -29,6 +38,10 @@ export async function listAllCatalogItems(catalox, catalogId) {
29
38
  }
30
39
  return items;
31
40
  }
41
+ function isCatalogNotFoundError(err) {
42
+ const message = err instanceof Error ? err.message : String(err);
43
+ return message.includes("Catalog not found");
44
+ }
32
45
  export async function getCatalogItemData(catalox, catalogId, itemId) {
33
46
  const result = await catalox.getCatalogItem(catalogId, itemId);
34
47
  if (result.outcome === "not_found" || result.outcome === "mapping_blocked") {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/catalox/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mCAAmC,EACnC,kCAAkC,EAClC,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,mBAAmB,CAAC;AAS3B,MAAM,UAAU,kBAAkB,CAChC,IAA6B,EAC7B,KAAwB;IAExB,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,OAA2B,EAC3B,SAAiB;IAEjB,MAAM,KAAK,GAAwB,EAAE,CAAC;IACtC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,KAAK,GAAG,GAAG,CAAC;IAElB,SAAS,CAAC;QACR,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1E,IAAI,IAAI,CAAC,WAAW,KAAK,iBAAiB,EAAE,CAAC;YAC3C,MAAM;QACR,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;gBACvB,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAA4B;aACnD,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;YAClD,MAAM;QACR,CAAC;QACD,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAA2B,EAC3B,SAAiB,EACjB,MAAc;IAEd,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/D,IAAI,MAAM,CAAC,OAAO,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;QAC3E,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;AAC7D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA2B,EAC3B,SAAiB,EACjB,IAA6B,EAC7B,KAAwB;IAExB,MAAM,OAAO,CAAC,uBAAuB,CACnC,SAAS,EACT,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA2B,EAC3B,SAAiB,EACjB,MAAc;IAEd,MAAM,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,MAAM,EAAE,kCAAkC;IAC1C,IAAI,EAAE,gCAAgC;IACtC,IAAI,EAAE,gCAAgC;IACtC,OAAO,EAAE,mCAAmC;CACpC,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/catalox/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import type { DescriptorSnapshot } from "../types/index.js";
2
+ export declare const assetsEntityFixture: {
3
+ readonly id: "assets";
4
+ readonly entityName: "assets";
5
+ readonly target: "entity";
6
+ readonly defaultListDescriptorId: "assets-main-list";
7
+ readonly defaultItemDescriptorId: "asset-detail-item";
8
+ readonly collectionPrefix: "assets";
9
+ readonly identity: {
10
+ readonly allowedIdFields: readonly ["entityId", "eventId"];
11
+ readonly requiredExactlyOne: true;
12
+ readonly defaultIdField: "entityId";
13
+ };
14
+ readonly defaults: {
15
+ readonly canonicalContentType: "snapshots";
16
+ readonly dataRoot: "data";
17
+ readonly effectiveDatePath: "capturedAt";
18
+ readonly fallbackEffectiveDatePaths: readonly [];
19
+ };
20
+ readonly contentTypes: {
21
+ readonly snapshots: {
22
+ readonly postfix: "snapshots";
23
+ readonly collection: "assets-snapshots";
24
+ readonly isCanonical: true;
25
+ };
26
+ readonly analysis: {
27
+ readonly postfix: "analysis";
28
+ readonly collection: "assets-analysis";
29
+ readonly isCanonical: false;
30
+ };
31
+ };
32
+ readonly properties: {
33
+ readonly ipAddress: {
34
+ readonly label: "IP Address";
35
+ readonly source: {
36
+ readonly contentType: "snapshots";
37
+ readonly path: "data.ip_address";
38
+ };
39
+ readonly humanReadable: true;
40
+ };
41
+ readonly hostName: {
42
+ readonly label: "Host Name";
43
+ readonly source: {
44
+ readonly contentType: "snapshots";
45
+ readonly path: "data.xdr.host_name";
46
+ };
47
+ readonly humanReadable: false;
48
+ };
49
+ };
50
+ readonly relations: {};
51
+ };
52
+ export declare function sampleSnapshot(): DescriptorSnapshot;
53
+ export declare function emptySnapshot(): DescriptorSnapshot;
54
+ //# sourceMappingURL=fixtures.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/tests/fixtures.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CtB,CAAC;AAEX,wBAAgB,cAAc,IAAI,kBAAkB,CAyBnD;AAED,wBAAgB,aAAa,IAAI,kBAAkB,CAOlD"}