@x12i/memorix-metadata 3.2.0 → 3.2.3

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 +86 -86
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +1 -0
  5. package/dist/index.js.map +1 -1
  6. package/dist/platform-interfaces.d.ts +29 -0
  7. package/dist/platform-interfaces.d.ts.map +1 -0
  8. package/dist/platform-interfaces.js +53 -0
  9. package/dist/platform-interfaces.js.map +1 -0
  10. package/dist/resolve.d.ts.map +1 -1
  11. package/dist/resolve.js +111 -0
  12. package/dist/resolve.js.map +1 -1
  13. package/dist/types.d.ts +47 -0
  14. package/dist/types.d.ts.map +1 -1
  15. package/dist/validate.d.ts.map +1 -1
  16. package/dist/validate.js +19 -0
  17. package/dist/validate.js.map +1 -1
  18. package/examples/custom-kinds/acme-ui-tabs.pack.json +62 -62
  19. package/examples/invalid/agent-classification.json +709 -709
  20. package/examples/invalid/broken-binding.json +688 -688
  21. package/examples/invalid/completion-mapping-with-exec-policy.json +659 -659
  22. package/examples/invalid/missing-parent.json +708 -708
  23. package/examples/invalid/operational-kind-root.json +720 -720
  24. package/examples/invalid/pipeline-unknown-service.json +611 -611
  25. package/examples/invalid/relationship-missing-rules.json +624 -624
  26. package/examples/invalid/relationship-with-storage.json +631 -631
  27. package/examples/invalid/service-with-secrets.json +679 -679
  28. package/examples/knowx/normalized/pack.json +338 -11
  29. package/examples/opx/normalized/pack.json +265 -7
  30. package/examples/opx/raw/abstract-types.json +244 -244
  31. package/examples/opx/raw/agents.json +33 -33
  32. package/examples/opx/raw/object-types.json +101 -101
  33. package/examples/opx/raw/pipelines-and-sources.json +264 -233
  34. package/examples/opx/raw/relationship-definitions.json +80 -80
  35. package/examples/opx/raw/view-definitions.json +32 -32
  36. package/examples/opx/raw/write-and-source-mappings.json +223 -223
  37. package/examples/project-opx/normalized/pack.json +1036 -1036
  38. package/package.json +48 -48
package/README.md CHANGED
@@ -1,86 +1,86 @@
1
- # `@x12i/memorix-metadata`
2
-
3
- Declarative **metadata contracts**, **multi-agent effective resolution**, and **metadata-only abstract unions** for Memorix.
4
-
5
- This package is the **law** layer (what agents, types, views, mappings, and pipelines *are*). It does not install packs into Mongo, read subject records, or serve HTTP.
6
-
7
- ## Install
8
-
9
- ```bash
10
- npm install @x12i/memorix-metadata@3.0.2
11
- ```
12
-
13
- | Audience | Use this package? |
14
- |----------|-------------------|
15
- | Remote app | Usually **no** — call `memorix-service` `/api/metadata` |
16
- | Pack authors / platform engineers | **Yes** — validate packs, resolve effective metadata in-process |
17
- | “Install a pack into an org” | Use `@x12i/memorix-metadata-runtime` (or HTTP install routes) |
18
-
19
- ## What it covers
20
-
21
- Built-in kinds (via `METADATA_KIND_IDS` / Catalox catalogs):
22
-
23
- `agents` · `object-types` · `abstract-types` · `abstract-bindings` · `relationship-definitions` · `mappings` · `views` · `writes` · `sources` · `services` · `pipelines` · `schedules` · `kind-declarations`
24
-
25
- Plus **namespaced custom kinds** (`kindDeclarations` + `extensions`) — store/resolve only; engines do not execute them.
26
-
27
- ## Core API
28
-
29
- ```ts
30
- import {
31
- validateMetadataPack,
32
- assertValidMetadataPack,
33
- resolveEffectiveMetadata,
34
- resolveMultiAgentMetadata,
35
- resolveAbstractBindingsFromPack,
36
- buildEffectiveMetadataTopology,
37
- normalizeOpxPackBundle,
38
- METADATA_KIND_IDS,
39
- isValidCustomKindId,
40
- } from "@x12i/memorix-metadata";
41
- ```
42
-
43
- | Function | Role |
44
- |----------|------|
45
- | `validateMetadataPack` / `assertValidMetadataPack` | Structural + cross-ref validation of a pack |
46
- | `resolveEffectiveMetadata` / `resolveMultiAgentMetadata` | Merge `agentIds[]` inheritance into effective definitions |
47
- | `resolveAbstractBindings*` | Plan abstract → concrete property paths (virtual only) |
48
- | `buildEffectiveMetadataTopology` | Project concrete OT↔OT / feed / pipeline-derived graph (no new authoring kinds) |
49
- | `normalizeOpxPackBundle` | Normalize opx-pack style JSON into a pack |
50
- | `fingerprintDefinition` | Stable fingerprints for install/diff |
51
-
52
- ## Quick example
53
-
54
- ```ts
55
- import { validateMetadataPack, resolveEffectiveMetadata } from "@x12i/memorix-metadata";
56
-
57
- const pack = /* MetadataPack */;
58
- const { ok, issues } = validateMetadataPack(pack);
59
- if (!ok) throw new Error(issues.map((i) => i.message).join("; "));
60
-
61
- const effective = resolveEffectiveMetadata({
62
- packsByAgentId: { opx: pack },
63
- agentIds: ["opx"],
64
- });
65
- // effective.effective → definitions with provenance; conflicts reported, not silent
66
- ```
67
-
68
- Custom-kind example pack: [`examples/custom-kinds/acme-ui-tabs.pack.json`](./examples/custom-kinds/acme-ui-tabs.pack.json)
69
-
70
- ## Boundaries
71
-
72
- | Need | Use instead |
73
- |------|-------------|
74
- | Install / publish into Catalox + effective client | `@x12i/memorix-metadata-runtime` |
75
- | HTTP for operators / remote apps | `@x12i/memorix-service` `/api/metadata` |
76
- | Subject record I/O | `@x12i/memorix-data` / `/api/data` |
77
-
78
- Abstracts stay **virtual** — no abstract collections and no abstract `recordId`.
79
-
80
- **Relationships** are authored on abstracts; concrete OT↔OT edges come from `buildEffectiveMetadataTopology` (HTTP: `GET /api/metadata/topology`). Sources/streams **feed** object types; services appear on an OT neighborhood only when a pipeline invokes them and a mapping on that pipeline lands on an OT.
81
-
82
- ## Docs
83
-
84
- - Practical: [`documentation/metadata.md`](../documentation/metadata.md) · [`documentation/packages/memorix-metadata.md`](../documentation/packages/memorix-metadata.md)
85
- - Ebook: [Metadata, Agents, Abstracts](../memorix-docs/05-metadata-agents-abstracts/)
86
- - Hub: [https://docs.memorix.x12i.com](https://docs.memorix.x12i.com)
1
+ # `@x12i/memorix-metadata`
2
+
3
+ Declarative **metadata contracts**, **multi-agent effective resolution**, and **metadata-only abstract unions** for Memorix.
4
+
5
+ This package is the **law** layer (what agents, types, views, mappings, and pipelines *are*). It does not install packs into Mongo, read subject records, or serve HTTP.
6
+
7
+ ## Install
8
+
9
+ ```bash
10
+ npm install @x12i/memorix-metadata@3.0.2
11
+ ```
12
+
13
+ | Audience | Use this package? |
14
+ |----------|-------------------|
15
+ | Remote app | Usually **no** — call `memorix-service` `/api/metadata` |
16
+ | Pack authors / platform engineers | **Yes** — validate packs, resolve effective metadata in-process |
17
+ | “Install a pack into an org” | Use `@x12i/memorix-metadata-runtime` (or HTTP install routes) |
18
+
19
+ ## What it covers
20
+
21
+ Built-in kinds (via `METADATA_KIND_IDS` / Catalox catalogs):
22
+
23
+ `agents` · `object-types` · `abstract-types` · `abstract-bindings` · `relationship-definitions` · `mappings` · `views` · `writes` · `sources` · `services` · `pipelines` · `schedules` · `kind-declarations`
24
+
25
+ Plus **namespaced custom kinds** (`kindDeclarations` + `extensions`) — store/resolve only; engines do not execute them.
26
+
27
+ ## Core API
28
+
29
+ ```ts
30
+ import {
31
+ validateMetadataPack,
32
+ assertValidMetadataPack,
33
+ resolveEffectiveMetadata,
34
+ resolveMultiAgentMetadata,
35
+ resolveAbstractBindingsFromPack,
36
+ buildEffectiveMetadataTopology,
37
+ normalizeOpxPackBundle,
38
+ METADATA_KIND_IDS,
39
+ isValidCustomKindId,
40
+ } from "@x12i/memorix-metadata";
41
+ ```
42
+
43
+ | Function | Role |
44
+ |----------|------|
45
+ | `validateMetadataPack` / `assertValidMetadataPack` | Structural + cross-ref validation of a pack |
46
+ | `resolveEffectiveMetadata` / `resolveMultiAgentMetadata` | Merge `agentIds[]` inheritance into effective definitions |
47
+ | `resolveAbstractBindings*` | Plan abstract → concrete property paths (virtual only) |
48
+ | `buildEffectiveMetadataTopology` | Project concrete OT↔OT / feed / pipeline-derived graph (no new authoring kinds) |
49
+ | `normalizeOpxPackBundle` | Normalize opx-pack style JSON into a pack |
50
+ | `fingerprintDefinition` | Stable fingerprints for install/diff |
51
+
52
+ ## Quick example
53
+
54
+ ```ts
55
+ import { validateMetadataPack, resolveEffectiveMetadata } from "@x12i/memorix-metadata";
56
+
57
+ const pack = /* MetadataPack */;
58
+ const { ok, issues } = validateMetadataPack(pack);
59
+ if (!ok) throw new Error(issues.map((i) => i.message).join("; "));
60
+
61
+ const effective = resolveEffectiveMetadata({
62
+ packsByAgentId: { opx: pack },
63
+ agentIds: ["opx"],
64
+ });
65
+ // effective.effective → definitions with provenance; conflicts reported, not silent
66
+ ```
67
+
68
+ Custom-kind example pack: [`examples/custom-kinds/acme-ui-tabs.pack.json`](./examples/custom-kinds/acme-ui-tabs.pack.json)
69
+
70
+ ## Boundaries
71
+
72
+ | Need | Use instead |
73
+ |------|-------------|
74
+ | Install / publish into Catalox + effective client | `@x12i/memorix-metadata-runtime` |
75
+ | HTTP for operators / remote apps | `@x12i/memorix-service` `/api/metadata` |
76
+ | Subject record I/O | `@x12i/memorix-data` / `/api/data` |
77
+
78
+ Abstracts stay **virtual** — no abstract collections and no abstract `recordId`.
79
+
80
+ **Relationships** are authored on abstracts; concrete OT↔OT edges come from `buildEffectiveMetadataTopology` (HTTP: `GET /api/metadata/topology`). Sources/streams **feed** object types; services appear on an OT neighborhood only when a pipeline invokes them and a mapping on that pipeline lands on an OT.
81
+
82
+ ## Docs
83
+
84
+ - Practical: [`documentation/metadata.md`](../documentation/metadata.md) · [`documentation/packages/memorix-metadata.md`](../documentation/packages/memorix-metadata.md)
85
+ - Ebook: [Metadata, Agents, Abstracts](../memorix-docs/05-metadata-agents-abstracts/)
86
+ - Hub: [https://docs.memorix.x12i.com](https://docs.memorix.x12i.com)
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export { PLATFORM_INTERFACE_IDS, PLATFORM_INTERFACE_BY_CATEGORY, PLATFORM_INTERFACES, PLATFORM_INTERFACE_ID_SET, isPlatformInterfaceId, platformInterfaceForCategory, requiredBindingsForInterface, type PlatformInterfaceId, type PlatformInterfaceProperty, type PlatformInterfaceSpec, } from "./platform-interfaces.js";
1
2
  export { METADATA_KIND_IDS, METADATA_KIND_REGISTRY, FORBIDDEN_OPERATIONAL_KIND_IDS, isMetadataKindId, isForbiddenOperationalKindId, getMetadataKind, type MetadataKindId, type MetadataKindSpec, } from "./kinds.js";
2
3
  export { EXTENSIONS_CATALOG_ID, CUSTOM_KIND_ID_PATTERN, isCustomKindIdShape, isValidCustomKindId, validateAgainstItemSchema, } from "./custom-kinds.js";
3
4
  export type * from "./types.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,GAC9B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,yBAAyB,GAC/B,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,EAC5B,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,GAC3B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,EACf,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAE3B,mBAAmB,YAAY,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,EAC3B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EACzB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,6BAA6B,EAClC,KAAK,wBAAwB,GAC9B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,cAAc,GACpB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,EAC5B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,yBAAyB,GAC/B,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ export { PLATFORM_INTERFACE_IDS, PLATFORM_INTERFACE_BY_CATEGORY, PLATFORM_INTERFACES, PLATFORM_INTERFACE_ID_SET, isPlatformInterfaceId, platformInterfaceForCategory, requiredBindingsForInterface, } from "./platform-interfaces.js";
1
2
  export { METADATA_KIND_IDS, METADATA_KIND_REGISTRY, FORBIDDEN_OPERATIONAL_KIND_IDS, isMetadataKindId, isForbiddenOperationalKindId, getMetadataKind, } from "./kinds.js";
2
3
  export { EXTENSIONS_CATALOG_ID, CUSTOM_KIND_ID_PATTERN, isCustomKindIdShape, isValidCustomKindId, validateAgainstItemSchema, } from "./custom-kinds.js";
3
4
  export { parentIdsOf } from "./types.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,GAGhB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,GAQ5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,GAQjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,GAO7B,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC9B,mBAAmB,EACnB,yBAAyB,EACzB,qBAAqB,EACrB,4BAA4B,EAC5B,4BAA4B,GAI7B,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,8BAA8B,EAC9B,gBAAgB,EAChB,4BAA4B,EAC5B,eAAe,GAGhB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,aAAa,EACb,aAAa,EACb,gBAAgB,GACjB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,uBAAuB,EACvB,+BAA+B,EAC/B,gBAAgB,EAChB,wBAAwB,EACxB,2BAA2B,GAQ5B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,GAQjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,8BAA8B,EAC9B,4BAA4B,GAO7B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Sealed platform interfaces Entity / Event / Knowledge.
3
+ * Injected into every effective-metadata result. Packs cannot redefine these ids.
4
+ */
5
+ export declare const PLATFORM_INTERFACE_IDS: readonly ["Entity", "Event", "Knowledge"];
6
+ export type PlatformInterfaceId = (typeof PLATFORM_INTERFACE_IDS)[number];
7
+ export declare const PLATFORM_INTERFACE_BY_CATEGORY: {
8
+ readonly entity: "Entity";
9
+ readonly event: "Event";
10
+ readonly knowledge: "Knowledge";
11
+ };
12
+ export type PlatformInterfaceProperty = {
13
+ id: string;
14
+ valueType: string;
15
+ required: boolean;
16
+ defaultPath: string;
17
+ };
18
+ export type PlatformInterfaceSpec = {
19
+ id: PlatformInterfaceId;
20
+ category: "entity" | "event" | "knowledge";
21
+ meaning: string;
22
+ properties: PlatformInterfaceProperty[];
23
+ };
24
+ export declare const PLATFORM_INTERFACES: readonly PlatformInterfaceSpec[];
25
+ export declare const PLATFORM_INTERFACE_ID_SET: Set<string>;
26
+ export declare function isPlatformInterfaceId(id: string): id is PlatformInterfaceId;
27
+ export declare function platformInterfaceForCategory(dataCategory: string): PlatformInterfaceId | null;
28
+ export declare function requiredBindingsForInterface(id: PlatformInterfaceId): PlatformInterfaceProperty[];
29
+ //# sourceMappingURL=platform-interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-interfaces.d.ts","sourceRoot":"","sources":["../src/platform-interfaces.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,sBAAsB,2CAA4C,CAAC;AAChF,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,eAAO,MAAM,8BAA8B;;;;CAIjC,CAAC;AAEX,MAAM,MAAM,yBAAyB,GAAG;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,EAAE,EAAE,mBAAmB,CAAC;IACxB,QAAQ,EAAE,QAAQ,GAAG,OAAO,GAAG,WAAW,CAAC;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,yBAAyB,EAAE,CAAC;CACzC,CAAC;AAEF,eAAO,MAAM,mBAAmB,EAAE,SAAS,qBAAqB,EA2B/D,CAAC;AAEF,eAAO,MAAM,yBAAyB,aAA0C,CAAC;AAEjF,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,EAAE,IAAI,mBAAmB,CAE3E;AAED,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,MAAM,GACnB,mBAAmB,GAAG,IAAI,CAK5B;AAED,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,mBAAmB,GAAG,yBAAyB,EAAE,CAGjG"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Sealed platform interfaces Entity / Event / Knowledge.
3
+ * Injected into every effective-metadata result. Packs cannot redefine these ids.
4
+ */
5
+ export const PLATFORM_INTERFACE_IDS = ["Entity", "Event", "Knowledge"];
6
+ export const PLATFORM_INTERFACE_BY_CATEGORY = {
7
+ entity: "Entity",
8
+ event: "Event",
9
+ knowledge: "Knowledge",
10
+ };
11
+ export const PLATFORM_INTERFACES = [
12
+ {
13
+ id: "Entity",
14
+ category: "entity",
15
+ meaning: "Concrete business subject stored in the entity universe",
16
+ properties: [{ id: "title", valueType: "string", required: true, defaultPath: "concept.title" }],
17
+ },
18
+ {
19
+ id: "Event",
20
+ category: "event",
21
+ meaning: "Concrete business subject stored in the event universe",
22
+ properties: [
23
+ { id: "title", valueType: "string", required: true, defaultPath: "concept.title" },
24
+ {
25
+ id: "occurredAt",
26
+ valueType: "datetime",
27
+ required: true,
28
+ defaultPath: "_system.observedAt",
29
+ },
30
+ ],
31
+ },
32
+ {
33
+ id: "Knowledge",
34
+ category: "knowledge",
35
+ meaning: "Concrete business subject stored in the knowledge universe",
36
+ properties: [{ id: "title", valueType: "string", required: true, defaultPath: "concept.title" }],
37
+ },
38
+ ];
39
+ export const PLATFORM_INTERFACE_ID_SET = new Set(PLATFORM_INTERFACE_IDS);
40
+ export function isPlatformInterfaceId(id) {
41
+ return PLATFORM_INTERFACE_ID_SET.has(id);
42
+ }
43
+ export function platformInterfaceForCategory(dataCategory) {
44
+ if (dataCategory === "entity" || dataCategory === "event" || dataCategory === "knowledge") {
45
+ return PLATFORM_INTERFACE_BY_CATEGORY[dataCategory];
46
+ }
47
+ return null;
48
+ }
49
+ export function requiredBindingsForInterface(id) {
50
+ const spec = PLATFORM_INTERFACES.find((s) => s.id === id);
51
+ return spec ? [...spec.properties] : [];
52
+ }
53
+ //# sourceMappingURL=platform-interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-interfaces.js","sourceRoot":"","sources":["../src/platform-interfaces.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,WAAW,CAAU,CAAC;AAGhF,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CACd,CAAC;AAgBX,MAAM,CAAC,MAAM,mBAAmB,GAAqC;IACnE;QACE,EAAE,EAAE,QAAQ;QACZ,QAAQ,EAAE,QAAQ;QAClB,OAAO,EAAE,yDAAyD;QAClE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;KACjG;IACD;QACE,EAAE,EAAE,OAAO;QACX,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,wDAAwD;QACjE,UAAU,EAAE;YACV,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;YAClF;gBACE,EAAE,EAAE,YAAY;gBAChB,SAAS,EAAE,UAAU;gBACrB,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,oBAAoB;aAClC;SACF;KACF;IACD;QACE,EAAE,EAAE,WAAW;QACf,QAAQ,EAAE,WAAW;QACrB,OAAO,EAAE,4DAA4D;QACrE,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC;KACjG;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAS,sBAAsB,CAAC,CAAC;AAEjF,MAAM,UAAU,qBAAqB,CAAC,EAAU;IAC9C,OAAO,yBAAyB,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,YAAoB;IAEpB,IAAI,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,OAAO,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;QAC1F,OAAO,8BAA8B,CAAC,YAAY,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,EAAuB;IAClE,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
package/dist/resolve.js CHANGED
@@ -5,6 +5,7 @@ import { KIND_TO_PACK_FIELD, PACK_DEFINITION_KINDS } from "./kind-fields.js";
5
5
  import { isMetadataKindId } from "./kinds.js";
6
6
  import { parentIdsOf, } from "./types.js";
7
7
  import { validateMetadataPack } from "./validate.js";
8
+ import { isPlatformInterfaceId, PLATFORM_INTERFACES, platformInterfaceForCategory, } from "./platform-interfaces.js";
8
9
  function defId(def) {
9
10
  return typeof def.id === "string" ? def.id : "";
10
11
  }
@@ -399,6 +400,103 @@ function workingMapToPack(map, agentId, agentsIndex) {
399
400
  }
400
401
  return pack;
401
402
  }
403
+ function hostContentType(def) {
404
+ const raw = Array.isArray(def.contentTypes) ? def.contentTypes : [];
405
+ for (const ct of raw) {
406
+ const id = typeof ct === "string" ? ct : String(ct.id ?? "");
407
+ if (id && id !== "relationships")
408
+ return id;
409
+ }
410
+ return "snapshots";
411
+ }
412
+ function injectPlatformInterfaces(merged, selectedAgentId) {
413
+ const issues = [];
414
+ for (const spec of PLATFORM_INTERFACES) {
415
+ const key = `abstract-types:${spec.id}`;
416
+ const existing = merged.get(key);
417
+ if (existing && existing.definition.platformOwned !== true) {
418
+ issues.push({
419
+ code: "META-PLATFORM-RESERVED",
420
+ message: `Pack redefined reserved platform interface "${spec.id}"`,
421
+ path: ["abstractTypes", spec.id],
422
+ });
423
+ }
424
+ }
425
+ if (issues.length)
426
+ return issues;
427
+ const membersByIface = {
428
+ Entity: [],
429
+ Event: [],
430
+ Knowledge: [],
431
+ };
432
+ for (const entry of merged.values()) {
433
+ if (entry.kind !== "object-types")
434
+ continue;
435
+ if (typeof entry.id === "string" && isPlatformInterfaceId(entry.id)) {
436
+ issues.push({
437
+ code: "META-PLATFORM-RESERVED",
438
+ message: `object type id "${entry.id}" is a reserved platform interface`,
439
+ path: ["objectTypes", entry.id],
440
+ });
441
+ continue;
442
+ }
443
+ const cat = String(entry.definition.dataCategory ?? "");
444
+ const iface = platformInterfaceForCategory(cat);
445
+ if (!iface)
446
+ continue;
447
+ const declared = Array.isArray(entry.definition.implements)
448
+ ? entry.definition.implements.map((v) => String(v))
449
+ : [];
450
+ const impl = declared.length ? declared : [iface];
451
+ if (!impl.includes(iface))
452
+ impl.push(iface);
453
+ entry.definition.implements = impl;
454
+ const hostCt = hostContentType(entry.definition);
455
+ const spec = PLATFORM_INTERFACES.find((s) => s.id === iface);
456
+ const custom = Array.isArray(entry.definition.interfaceBindings)
457
+ ? entry.definition.interfaceBindings
458
+ : [];
459
+ membersByIface[iface].push({
460
+ objectType: entry.id,
461
+ contentType: hostCt,
462
+ properties: spec.properties.map((p) => {
463
+ const override = custom.find((b) => String(b.interfaceId) === iface && String(b.property) === p.id);
464
+ return {
465
+ abstractProperty: p.id,
466
+ contentType: String(override?.contentType ?? hostCt),
467
+ propertyPath: String(override?.propertyPath ?? p.defaultPath),
468
+ };
469
+ }),
470
+ });
471
+ }
472
+ for (const spec of PLATFORM_INTERFACES) {
473
+ const members = membersByIface[spec.id];
474
+ const definition = {
475
+ id: spec.id,
476
+ name: spec.id,
477
+ meaning: spec.meaning,
478
+ category: spec.category,
479
+ platformOwned: true,
480
+ properties: spec.properties.map((p) => ({
481
+ id: p.id,
482
+ valueType: p.valueType,
483
+ required: p.required,
484
+ })),
485
+ members,
486
+ union: members.length > 1,
487
+ };
488
+ merged.set(`abstract-types:${spec.id}`, {
489
+ kind: "abstract-types",
490
+ id: spec.id,
491
+ definition,
492
+ fingerprint: fingerprintDefinition(definition),
493
+ definedByAgentId: "memorix-platform",
494
+ inheritancePath: ["memorix-platform"],
495
+ selectedAgentId,
496
+ });
497
+ }
498
+ return issues;
499
+ }
402
500
  function entryToEffective(entry) {
403
501
  return {
404
502
  kind: entry.kind,
@@ -521,6 +619,19 @@ export function resolveEffectiveMetadata(input) {
521
619
  };
522
620
  }
523
621
  const merged = mergeResult.map;
622
+ const platformIssues = injectPlatformInterfaces(merged, collapsedAgentIds[0] ?? "effective");
623
+ if (platformIssues.length) {
624
+ return {
625
+ ok: false,
626
+ selectedAgentIds: selectedUnique,
627
+ collapsedAgentIds,
628
+ issues: [...issues, ...platformIssues],
629
+ conflicts,
630
+ referenceIssues: [],
631
+ effective: [],
632
+ effectivePack: null,
633
+ };
634
+ }
524
635
  const effective = [...merged.values()]
525
636
  .map(entryToEffective)
526
637
  .sort((a, b) => a.kind.localeCompare(b.kind) || a.id.localeCompare(b.id));
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -49,10 +49,25 @@ export type ObjectTypeFieldSpec = {
49
49
  objectType: string;
50
50
  };
51
51
  };
52
+ export type ObjectTypeInterfaceBinding = {
53
+ interfaceId: string;
54
+ property: string;
55
+ /** Hosting content type; defaults to the first content type that is not `relationships`. */
56
+ contentType?: string;
57
+ propertyPath: string;
58
+ };
52
59
  export type ObjectTypeDefinition = {
53
60
  id: string;
54
61
  name: string;
55
62
  dataCategory: string;
63
+ /**
64
+ * Platform and domain interfaces this OT implements.
65
+ * Must include Entity, Event, or Knowledge matching `dataCategory`.
66
+ * Omitted ⇒ defaulted to the category interface during validation/resolve.
67
+ */
68
+ implements?: string[];
69
+ /** Overrides default platform-interface property paths. */
70
+ interfaceBindings?: ObjectTypeInterfaceBinding[];
56
71
  abstractTypes?: string[];
57
72
  contentTypes: ContentTypeSpec[];
58
73
  /** Optional declared concrete fields for metadata-only path/type checks. */
@@ -105,6 +120,8 @@ export type AbstractTypeDefinition = {
105
120
  name: string;
106
121
  meaning: string;
107
122
  category: string;
123
+ /** True only on platform-injected Entity/Event/Knowledge. Packs must omit this. */
124
+ platformOwned?: boolean;
108
125
  properties?: AbstractPropertyDefinition[];
109
126
  /** Concrete object types that participate + how each fills abstract properties. */
110
127
  members?: AbstractMemberBinding[];
@@ -189,6 +206,22 @@ export type ViewDefinition = {
189
206
  columns?: string[];
190
207
  sections?: string[];
191
208
  extends?: string;
209
+ /**
210
+ * Remembered abstract-property fetch (list views). Property names match abstract
211
+ * bindings (`title`, `status`), not concrete `data.*` paths.
212
+ */
213
+ properties?: string[];
214
+ filter?: Array<{
215
+ field: string;
216
+ op: string;
217
+ value?: unknown;
218
+ }> | Record<string, unknown>;
219
+ sort?: Array<{
220
+ field: string;
221
+ direction: "asc" | "desc";
222
+ }>;
223
+ /** Default page size when the caller omits limit (1–200). */
224
+ limit?: number;
192
225
  };
193
226
  export type WriteDefinition = {
194
227
  id: string;
@@ -303,6 +336,13 @@ export type SourceDefinition = {
303
336
  * Source packs use `"source"`; targets use DestinationDefinition.role.
304
337
  */
305
338
  role?: "source" | "target";
339
+ /**
340
+ * Pinned MGC release hash at bind time. Fail closed on drift
341
+ * (`CONNECTOR_DEFINITION_HASH_MISMATCH`). Do not embed definition JSON.
342
+ */
343
+ definitionHash?: string;
344
+ /** Non-secret fields from the installed definition `configuration.fields`. */
345
+ configuration?: Record<string, unknown>;
306
346
  };
307
347
  /**
308
348
  * Outbound destination for target connectors (generic connectors deliver path).
@@ -314,6 +354,11 @@ export type DestinationDefinition = {
314
354
  kind: string;
315
355
  connectorRef: string;
316
356
  connectorVersion?: string;
357
+ /**
358
+ * Pinned MGC release hash at bind time. Fail closed on drift
359
+ * (`CONNECTOR_DEFINITION_HASH_MISMATCH`).
360
+ */
361
+ definitionHash?: string;
317
362
  credentialRef?: string;
318
363
  /** Remote target host base URL (POST /v1/deliver). */
319
364
  hostBaseUrl?: string;
@@ -322,6 +367,8 @@ export type DestinationDefinition = {
322
367
  role?: "target";
323
368
  /** Optional mapping / stream labels for the deliver envelope. */
324
369
  config?: Record<string, unknown>;
370
+ /** Non-secret fields from the installed definition `configuration.fields`. */
371
+ configuration?: Record<string, unknown>;
325
372
  };
326
373
  /**
327
374
  * `agent` (default): subject I/O speaks only abstracts.