@metaobjectsdev/metadata 0.6.0-rc.1 → 0.7.0-rc.1

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 (114) hide show
  1. package/README.md +54 -3
  2. package/dist/attr-schema-validate.js +7 -7
  3. package/dist/attr-schema-validate.js.map +1 -1
  4. package/dist/core/export-json.d.ts +6 -7
  5. package/dist/core/export-json.d.ts.map +1 -1
  6. package/dist/core/export-json.js +15 -17
  7. package/dist/core/export-json.js.map +1 -1
  8. package/dist/core/index.d.ts +4 -2
  9. package/dist/core/index.d.ts.map +1 -1
  10. package/dist/core/index.js +6 -2
  11. package/dist/core/index.js.map +1 -1
  12. package/dist/core/parser-yaml.d.ts.map +1 -1
  13. package/dist/core/parser-yaml.js +13 -4
  14. package/dist/core/parser-yaml.js.map +1 -1
  15. package/dist/errors.d.ts +28 -8
  16. package/dist/errors.d.ts.map +1 -1
  17. package/dist/errors.js +31 -5
  18. package/dist/errors.js.map +1 -1
  19. package/dist/index.d.ts +6 -3
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +9 -2
  22. package/dist/index.js.map +1 -1
  23. package/dist/json-path.d.ts +8 -0
  24. package/dist/json-path.d.ts.map +1 -0
  25. package/dist/json-path.js +39 -0
  26. package/dist/json-path.js.map +1 -0
  27. package/dist/loader/meta-data-loader.d.ts +47 -6
  28. package/dist/loader/meta-data-loader.d.ts.map +1 -1
  29. package/dist/loader/meta-data-loader.js +106 -8
  30. package/dist/loader/meta-data-loader.js.map +1 -1
  31. package/dist/loader/meta-data-source.d.ts +6 -2
  32. package/dist/loader/meta-data-source.d.ts.map +1 -1
  33. package/dist/loader/meta-data-source.js +10 -6
  34. package/dist/loader/meta-data-source.js.map +1 -1
  35. package/dist/loader/shortcuts.d.ts +9 -0
  36. package/dist/loader/shortcuts.d.ts.map +1 -0
  37. package/dist/loader/shortcuts.js +19 -0
  38. package/dist/loader/shortcuts.js.map +1 -0
  39. package/dist/loader/sources/directory-source.d.ts +15 -0
  40. package/dist/loader/sources/directory-source.d.ts.map +1 -0
  41. package/dist/loader/sources/directory-source.js +80 -0
  42. package/dist/loader/sources/directory-source.js.map +1 -0
  43. package/dist/loader/sources/file-source.d.ts +12 -0
  44. package/dist/loader/sources/file-source.d.ts.map +1 -0
  45. package/dist/loader/sources/file-source.js +46 -0
  46. package/dist/loader/sources/file-source.js.map +1 -0
  47. package/dist/loader/sources/index.d.ts +5 -0
  48. package/dist/loader/sources/index.d.ts.map +1 -0
  49. package/dist/loader/sources/index.js +5 -0
  50. package/dist/loader/sources/index.js.map +1 -0
  51. package/dist/loader/sources/uri-source.d.ts +9 -0
  52. package/dist/loader/sources/uri-source.d.ts.map +1 -0
  53. package/dist/loader/sources/uri-source.js +42 -0
  54. package/dist/loader/sources/uri-source.js.map +1 -0
  55. package/dist/loader/validation-passes.d.ts.map +1 -1
  56. package/dist/loader/validation-passes.js +27 -27
  57. package/dist/loader/validation-passes.js.map +1 -1
  58. package/dist/naming.d.ts +15 -2
  59. package/dist/naming.d.ts.map +1 -1
  60. package/dist/naming.js +20 -6
  61. package/dist/naming.js.map +1 -1
  62. package/dist/parser-core.d.ts +2 -4
  63. package/dist/parser-core.d.ts.map +1 -1
  64. package/dist/parser-core.js +111 -42
  65. package/dist/parser-core.js.map +1 -1
  66. package/dist/parser-json.d.ts.map +1 -1
  67. package/dist/parser-json.js +10 -2
  68. package/dist/parser-json.js.map +1 -1
  69. package/dist/persistence/source/validate-source-roles.js +2 -2
  70. package/dist/persistence/source/validate-source-roles.js.map +1 -1
  71. package/dist/semantic-diff.d.ts +5 -0
  72. package/dist/semantic-diff.d.ts.map +1 -0
  73. package/dist/semantic-diff.js +49 -0
  74. package/dist/semantic-diff.js.map +1 -0
  75. package/dist/shared/meta-data.d.ts +10 -0
  76. package/dist/shared/meta-data.d.ts.map +1 -1
  77. package/dist/shared/meta-data.js +23 -0
  78. package/dist/shared/meta-data.js.map +1 -1
  79. package/dist/source.d.ts +68 -0
  80. package/dist/source.d.ts.map +1 -0
  81. package/dist/source.js +13 -0
  82. package/dist/source.js.map +1 -0
  83. package/dist/subtype-rules.js +1 -1
  84. package/dist/subtype-rules.js.map +1 -1
  85. package/dist/super-resolve.d.ts +2 -0
  86. package/dist/super-resolve.d.ts.map +1 -1
  87. package/dist/super-resolve.js +1 -1
  88. package/dist/super-resolve.js.map +1 -1
  89. package/package.json +1 -1
  90. package/src/attr-schema-validate.ts +7 -7
  91. package/src/core/export-json.ts +15 -18
  92. package/src/core/index.ts +8 -2
  93. package/src/core/parser-yaml.ts +15 -4
  94. package/src/errors.ts +42 -8
  95. package/src/index.ts +28 -3
  96. package/src/json-path.ts +46 -0
  97. package/src/loader/meta-data-loader.ts +148 -10
  98. package/src/loader/meta-data-source.ts +10 -6
  99. package/src/loader/shortcuts.ts +31 -0
  100. package/src/loader/sources/directory-source.ts +90 -0
  101. package/src/{core → loader/sources}/file-source.ts +3 -3
  102. package/src/loader/sources/index.ts +6 -0
  103. package/src/loader/sources/uri-source.ts +44 -0
  104. package/src/loader/validation-passes.ts +28 -24
  105. package/src/naming.ts +39 -7
  106. package/src/parser-core.ts +113 -43
  107. package/src/parser-json.ts +11 -2
  108. package/src/persistence/source/validate-source-roles.ts +2 -2
  109. package/src/semantic-diff.ts +48 -0
  110. package/src/shared/meta-data.ts +28 -0
  111. package/src/source.ts +61 -0
  112. package/src/subtype-rules.ts +1 -1
  113. package/src/super-resolve.ts +3 -1
  114. package/src/core/file-meta-data-loader.ts +0 -89
@@ -1 +1 @@
1
- {"version":3,"file":"meta-data.d.ts","sourceRoot":"","sources":["../../src/shared/meta-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-data.d.ts","sourceRoot":"","sources":["../../src/shared/meta-data.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,13 @@ export class MetaData {
37
37
  // Registry-supplied coarse value type — set by the registry factory at node
38
38
  // construction (for field/attr nodes). Read via MetaField/MetaAttr.dataType.
39
39
  _dataType;
40
+ // ADR-0009 provenance. Always populated; defaults to `{ format: "code" }`
41
+ // for programmatic construction (tests, factories, in-code builders). The
42
+ // JSON parser overwrites via setSource() during tree walk; future phases
43
+ // (overlay merge, super resolution) may overwrite with merged/resolved
44
+ // variants. Excluded from canonical JSON serialization — loader-derived
45
+ // state, not metadata.
46
+ _source = { format: "code" };
40
47
  // Per-instance read cache: only populated once the node is frozen.
41
48
  _cache = new Map();
42
49
  constructor(typeId, name) {
@@ -132,6 +139,22 @@ export class MetaData {
132
139
  this._dataType = dt;
133
140
  }
134
141
  // ---------------------------------------------------------------------------
142
+ // source (ADR-0009 provenance)
143
+ // ---------------------------------------------------------------------------
144
+ /** Provenance envelope for this node. Always populated. See ADR-0009. */
145
+ get source() {
146
+ return this._source;
147
+ }
148
+ /**
149
+ * Loader-internal: assign provenance. Called by parser and merge phases as
150
+ * they build the tree. Honors the frozen-guard like other setters.
151
+ * @internal
152
+ */
153
+ setSource(s) {
154
+ this._assertNotFrozen();
155
+ this._source = s;
156
+ }
157
+ // ---------------------------------------------------------------------------
135
158
  // isAbstract
136
159
  // ---------------------------------------------------------------------------
137
160
  setIsAbstract(val) {
@@ -1 +1 @@
1
- {"version":3,"file":"meta-data.js","sourceRoot":"","sources":["../../src/shared/meta-data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-data.js","sourceRoot":"","sources":["../../src/shared/meta-data.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,68 @@
1
+ /** Discriminated union over the provenance variants a metadata node or error
2
+ * can carry. See ADR-0009 §Decision for the canonical shape. */
3
+ export type ErrorSource = {
4
+ format: "json";
5
+ files: [string];
6
+ jsonPath: string;
7
+ } | {
8
+ format: "yaml";
9
+ files: [string];
10
+ jsonPath: string;
11
+ yamlPosition?: {
12
+ line: number;
13
+ col: number;
14
+ };
15
+ } | {
16
+ format: "merged";
17
+ files: string[];
18
+ jsonPath: string;
19
+ contributors: Contributor[];
20
+ } | {
21
+ format: "resolved";
22
+ files: string[];
23
+ jsonPath?: string;
24
+ referrer?: string;
25
+ target?: string;
26
+ } | {
27
+ format: "database";
28
+ dbLocation: {
29
+ table: string;
30
+ id: string;
31
+ };
32
+ jsonPath?: string;
33
+ } | {
34
+ format: "code";
35
+ caller?: string;
36
+ };
37
+ export interface Contributor {
38
+ file: string;
39
+ role: "overlay-base" | "overlay-extension" | "extends-base" | "extends-extension";
40
+ }
41
+ export interface NodeContext {
42
+ type?: string;
43
+ subtype?: string;
44
+ name?: string;
45
+ fqn?: string;
46
+ }
47
+ /** Envelope shape every loader error conforms to. */
48
+ export interface LoaderError {
49
+ code: string;
50
+ message: string;
51
+ source: ErrorSource;
52
+ suggestions?: string[];
53
+ fixture?: string;
54
+ node?: NodeContext;
55
+ }
56
+ /** Warning envelope — same shape as LoaderError but a `WARN_*` code. */
57
+ export interface LoaderWarning {
58
+ code: string;
59
+ message: string;
60
+ source: ErrorSource;
61
+ suggestions?: string[];
62
+ fixture?: string;
63
+ node?: NodeContext;
64
+ }
65
+ /** Canonical synthetic envelope for programmatic / test-constructed nodes.
66
+ * `caller` is an optional human label (e.g. "QueriesTest.makePost"). */
67
+ export declare function codeSource(caller?: string): ErrorSource;
68
+ //# sourceMappingURL=source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.d.ts","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"AAQA;iEACiE;AACjE,MAAM,MAAM,WAAW,GACnB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,MAAM,CAAC,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAClD,YAAY,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GAChD;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IACpD,YAAY,EAAE,WAAW,EAAE,CAAA;CAAE,GAC/B;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACtC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,cAAc,GAAG,mBAAmB,GAAG,cAAc,GAAG,mBAAmB,CAAC;CACnF;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,qDAAqD;AACrD,MAAM,WAAW,WAAW;IAE1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,wEAAwE;AACxE,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;yEACyE;AACzE,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAEvD"}
package/dist/source.js ADDED
@@ -0,0 +1,13 @@
1
+ // server/typescript/packages/metadata/src/source.ts
2
+ //
3
+ // FR5a — Loader error envelope + source-on-node (ADR-0009).
4
+ //
5
+ // Cross-port-aligned types: every metaobjects port emits the same envelope
6
+ // shape so a tool consuming errors from multiple language ports can compare
7
+ // them byte-identically.
8
+ /** Canonical synthetic envelope for programmatic / test-constructed nodes.
9
+ * `caller` is an optional human label (e.g. "QueriesTest.makePost"). */
10
+ export function codeSource(caller) {
11
+ return caller ? { format: "code", caller } : { format: "code" };
12
+ }
13
+ //# sourceMappingURL=source.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source.js","sourceRoot":"","sources":["../src/source.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,EAAE;AACF,4DAA4D;AAC5D,EAAE;AACF,2EAA2E;AAC3E,4EAA4E;AAC5E,yBAAyB;AAkDzB;yEACyE;AACzE,MAAM,UAAU,UAAU,CAAC,MAAe;IACxC,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAClE,CAAC"}
@@ -18,7 +18,7 @@ function walk(model, errors, warnings) {
18
18
  const hasPrimary = model.children().some((c) => c.type === TYPE_IDENTITY && c.subType === IDENTITY_SUBTYPE_PRIMARY);
19
19
  if (model.subType === OBJECT_SUBTYPE_VALUE && hasPrimary) {
20
20
  errors.push(new ParseError(`value object '${model.fqn()}' must not have a primary identity ` +
21
- `(use subType: "entity" for records with identity)`, { code: "ERR_SUBTYPE_RULE_VIOLATION" }));
21
+ `(use subType: "entity" for records with identity)`, { code: "ERR_SUBTYPE_RULE_VIOLATION", source: model.source }));
22
22
  }
23
23
  else if (model.subType === OBJECT_SUBTYPE_ENTITY &&
24
24
  !hasPrimary &&
@@ -1 +1 @@
1
- {"version":3,"file":"subtype-rules.js","sourceRoot":"","sources":["../src/subtype-rules.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,EAAE;AACF,6DAA6D;AAC7D,kFAAkF;AAClF,yEAAyE;AAGzE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAO3C,MAAM,UAAU,oBAAoB,CAAC,IAAc;IACjD,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,IAAI,CAAC,KAAe,EAAE,MAAoB,EAAE,QAAkB;IACrE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,KAAK,wBAAwB,CAC1E,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,KAAK,oBAAoB,IAAI,UAAU,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CACT,IAAI,UAAU,CACZ,iBAAiB,KAAK,CAAC,GAAG,EAAE,qCAAqC;gBAC/D,mDAAmD,EACrD,EAAE,IAAI,EAAE,4BAA4B,EAAE,CACvC,CACF,CAAC;QACJ,CAAC;aAAM,IACL,KAAK,CAAC,OAAO,KAAK,qBAAqB;YACvC,CAAC,UAAU;YACX,CAAC,KAAK,CAAC,UAAU,EACjB,CAAC;YACD,QAAQ,CAAC,IAAI,CACX,kBAAkB,KAAK,CAAC,GAAG,EAAE,4BAA4B;gBACvD,mDAAmD,CACtD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"subtype-rules.js","sourceRoot":"","sources":["../src/subtype-rules.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,EAAE;AACF,6DAA6D;AAC7D,kFAAkF;AAClF,yEAAyE;AAGzE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,mCAAmC,CAAC;AAO3C,MAAM,UAAU,oBAAoB,CAAC,IAAc;IACjD,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,IAAI,CAAC,KAAe,EAAE,MAAoB,EAAE,QAAkB;IACrE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QAC/B,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,KAAK,wBAAwB,CAC1E,CAAC;QACF,IAAI,KAAK,CAAC,OAAO,KAAK,oBAAoB,IAAI,UAAU,EAAE,CAAC;YACzD,MAAM,CAAC,IAAI,CACT,IAAI,UAAU,CACZ,iBAAiB,KAAK,CAAC,GAAG,EAAE,qCAAqC;gBAC/D,mDAAmD,EACrD,EAAE,IAAI,EAAE,4BAA4B,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAC7D,CACF,CAAC;QACJ,CAAC;aAAM,IACL,KAAK,CAAC,OAAO,KAAK,qBAAqB;YACvC,CAAC,UAAU;YACX,CAAC,KAAK,CAAC,UAAU,EACjB,CAAC;YACD,QAAQ,CAAC,IAAI,CACX,kBAAkB,KAAK,CAAC,GAAG,EAAE,4BAA4B;gBACvD,mDAAmD,CACtD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;QACxC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;AACH,CAAC"}
@@ -17,6 +17,8 @@ export interface DeferredSuperFailure {
17
17
  nodeFqn: string;
18
18
  /** The raw super ref string that didn't resolve. */
19
19
  ref: string;
20
+ /** ADR-0009 provenance envelope of the referencing node (FR5a). */
21
+ source: import("./source.js").ErrorSource;
20
22
  }
21
23
  /**
22
24
  * Walk the tree and resolve every node's superRef against the full root.
@@ -1 +1 @@
1
- {"version":3,"file":"super-resolve.d.ts","sourceRoot":"","sources":["../src/super-resolve.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAwBtD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,QAAQ,GACb,QAAQ,GAAG,SAAS,CAsCtB;AAMD,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,oBAAoB,EAAE,CAkB5E"}
1
+ {"version":3,"file":"super-resolve.d.ts","sourceRoot":"","sources":["../src/super-resolve.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAwBtD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,QAAQ,GACb,QAAQ,GAAG,SAAS,CAsCtB;AAMD,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,GAAG,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,MAAM,EAAE,OAAO,aAAa,EAAE,WAAW,CAAC;CAC3C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,oBAAoB,EAAE,CAkB5E"}
@@ -109,7 +109,7 @@ export function resolveDeferredSupers(root) {
109
109
  }
110
110
  }
111
111
  else {
112
- failures.push({ nodeFqn: node.fqn(), ref: node.superRef });
112
+ failures.push({ nodeFqn: node.fqn(), ref: node.superRef, source: node.source });
113
113
  }
114
114
  });
115
115
  return failures;
@@ -1 +1 @@
1
- {"version":3,"file":"super-resolve.js","sourceRoot":"","sources":["../src/super-resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"super-resolve.js","sourceRoot":"","sources":["../src/super-resolve.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaobjectsdev/metadata",
3
- "version": "0.6.0-rc.1",
3
+ "version": "0.7.0-rc.1",
4
4
  "description": "Metamodel loader, types, and constants for the MetaObjects standard.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -100,7 +100,7 @@ function validateNode(
100
100
  errors.push(
101
101
  new ParseError(
102
102
  `Common attr '${ca.name}' conflicts with per-type attr on ${typeKey}`,
103
- { code: "ERR_PROVIDER_ATTR_CONFLICT" },
103
+ { code: "ERR_PROVIDER_ATTR_CONFLICT", source: node.source },
104
104
  ),
105
105
  );
106
106
  reportedConflicts.add(typeKey);
@@ -126,7 +126,7 @@ function validateNode(
126
126
  errors.push(
127
127
  new ParseError(
128
128
  `${nodeLabel(node)} is missing required attribute '@${spec.name}'`,
129
- { code: "ERR_MISSING_REQUIRED_ATTR" },
129
+ { code: "ERR_MISSING_REQUIRED_ATTR", source: node.source },
130
130
  ),
131
131
  );
132
132
  }
@@ -145,7 +145,7 @@ function validateNode(
145
145
  const valueErrors = inst.validateValue(value);
146
146
  if (valueErrors.length > 0) {
147
147
  for (const ve of valueErrors) {
148
- errors.push(new ParseError(`${nodeLabel(node)} ${ve.message}`, { code: "ERR_BAD_ATTR_VALUE" }));
148
+ errors.push(new ParseError(`${nodeLabel(node)} ${ve.message}`, { code: "ERR_BAD_ATTR_VALUE", source: node.source }));
149
149
  }
150
150
  continue; // type wrong → skip allowedValues
151
151
  }
@@ -159,7 +159,7 @@ function validateNode(
159
159
  `${nodeLabel(node)} attribute '@${inst.name}' has value ` +
160
160
  `'${String(value)}' which is not one of the allowed values: ` +
161
161
  `${spec.allowedValues.map((v) => String(v)).join(", ")}`,
162
- { code: "ERR_BAD_ATTR_VALUE" },
162
+ { code: "ERR_BAD_ATTR_VALUE", source: node.source },
163
163
  ),
164
164
  );
165
165
  }
@@ -180,7 +180,7 @@ function validateNode(
180
180
  errors.push(
181
181
  new ParseError(
182
182
  `${nodeLabel(node)} must declare at least one value in '@${FIELD_ATTR_VALUES}'.`,
183
- { code: "ERR_BAD_ATTR_VALUE" },
183
+ { code: "ERR_BAD_ATTR_VALUE", source: node.source },
184
184
  ),
185
185
  );
186
186
  } else {
@@ -194,14 +194,14 @@ function validateNode(
194
194
  `${nodeLabel(node)} attribute '@${FIELD_ATTR_VALUES}' member '${member}' ` +
195
195
  `is not a valid identifier (must match ${ENUM_MEMBER_PATTERN.source}). ` +
196
196
  `Non-identifier-safe member strings require a symbol↔value mapping (deferred).`,
197
- { code: "ERR_BAD_ATTR_VALUE" },
197
+ { code: "ERR_BAD_ATTR_VALUE", source: node.source },
198
198
  ),
199
199
  );
200
200
  } else if (seen.has(member)) {
201
201
  errors.push(
202
202
  new ParseError(
203
203
  `${nodeLabel(node)} attribute '@${FIELD_ATTR_VALUES}' has duplicate member '${member}'.`,
204
- { code: "ERR_BAD_ATTR_VALUE" },
204
+ { code: "ERR_BAD_ATTR_VALUE", source: node.source },
205
205
  ),
206
206
  );
207
207
  } else {
@@ -10,13 +10,12 @@
10
10
  // - Content errors (parse/validation failures) are collected in errors[] and
11
11
  // returned in the result — they do NOT throw. `json` is still produced from
12
12
  // whatever tree the Loader returned (Loader always returns a valid MetaData).
13
- // - I/O failures (missing/unreadable directory) are caught by
14
- // `loadFromDirectory` and returned in its `errors[]`; `loadAndExportJson`
15
- // surfaces them unchanged in `ExportResult.errors`. It does not throw for
16
- // directory or metadata problems.
13
+ // - I/O failures (missing/unreadable directory) surface as collected errors
14
+ // via MetaDataLoader.fromDirectory; `loadAndExportJson` surfaces them
15
+ // unchanged in `ExportResult.errors`. It does not throw for directory or
16
+ // metadata problems.
17
17
 
18
- import { FileMetaDataLoader } from "./file-meta-data-loader.js";
19
- import type { LoadOptions } from "../loader/meta-data-loader.js";
18
+ import { MetaDataLoader, type LoadOptions } from "../loader/meta-data-loader.js";
20
19
  import { canonicalSerialize } from "../serializer-json.js";
21
20
 
22
21
  // ---------------------------------------------------------------------------
@@ -39,28 +38,26 @@ export interface ExportResult {
39
38
  * Load all metadata under `dir` and export the entire model as one flattened
40
39
  * canonical-JSON document.
41
40
  *
42
- * Internally constructs a fresh `FileMetaDataLoader` (using the default registry
43
- * composed via `composeRegistry(coreProviders)`), calls `loadDirectory`, then serializes the
44
- * resulting tree with `canonicalSerialize`.
41
+ * Routes through `MetaDataLoader.fromDirectory` (using the default registry
42
+ * composed via `composeRegistry(coreProviders)` when none supplied), then
43
+ * serializes the resulting tree with `canonicalSerialize`.
45
44
  *
46
45
  * @param dir Absolute or relative path to the directory containing `meta.*.json` files.
47
- * @param opts Optional loader options forwarded to the `FileMetaDataLoader` constructor
48
- * (registry, freeze, strict). The `exclude` glob list can be
49
- * supplied as `opts.exclude` — see `FileMetaDataLoader.loadDirectory`.
46
+ * @param opts Optional loader options (registry, freeze, strict). The
47
+ * `exclude` glob list can be supplied as `opts.exclude`.
50
48
  */
51
49
  export async function loadAndExportJson(
52
50
  dir: string,
53
51
  opts?: LoadOptions & { exclude?: string[] },
54
52
  ): Promise<ExportResult> {
55
- const { exclude, ...loaderOpts } = opts ?? {};
56
- const loader = new FileMetaDataLoader(loaderOpts);
57
- // Only pass the exclude option when defined, to satisfy exactOptionalPropertyTypes.
58
- const dirOpts = exclude !== undefined ? { exclude } : undefined;
59
- const result = await loader.loadDirectory(dir, dirOpts);
53
+ const result = await MetaDataLoader.fromDirectory(dir, opts);
60
54
  const json = canonicalSerialize(result.root);
61
55
  return {
62
56
  json,
63
57
  errors: result.errors,
64
- warnings: result.warnings,
58
+ // FR5a: LoadResult.warnings is now LoaderWarning[]; ExportResult preserves
59
+ // its public string[] shape (callers print warnings as text). Extract the
60
+ // message for back-compat.
61
+ warnings: result.warnings.map((w) => w.message),
65
62
  };
66
63
  }
package/src/core/index.ts CHANGED
@@ -5,8 +5,14 @@
5
5
  // load-and-export convenience. The root `@metaobjectsdev/metadata` entry is
6
6
  // browser-safe and imports none of this. See the package README.
7
7
 
8
- export { FileSource } from "./file-source.js";
9
- export { FileMetaDataLoader } from "./file-meta-data-loader.js";
8
+ // Source impls the node:fs-backed MetaDataSource implementations. Live
9
+ // under `loader/sources/`; re-exported here so server-side consumers can pull
10
+ // them from the same `/core` entry that already houses the YAML parser.
11
+ export { FileSource } from "../loader/sources/file-source.js";
12
+ export { DirectorySource } from "../loader/sources/directory-source.js";
13
+ export type { DirectoryOptions } from "../loader/sources/directory-source.js";
14
+ export { UriSource } from "../loader/sources/uri-source.js";
15
+
10
16
  export { parseYaml } from "./parser-yaml.js";
11
17
  export { loadAndExportJson } from "./export-json.js";
12
18
  export type { ExportResult } from "./export-json.js";
@@ -7,10 +7,21 @@
7
7
 
8
8
  import { parse as parseYamlText } from "yaml";
9
9
  import { ParseError } from "../errors.js";
10
- import { buildTree, errOpts } from "../parser-core.js";
10
+ import { buildTree } from "../parser-core.js";
11
11
  import type { ParseOptions, ParseResult } from "../parser-core.js";
12
+ import type { ErrorSource } from "../source.js";
12
13
  import { desugar } from "./yaml-desugar.js";
13
14
 
15
+ /** FR5a / ADR-0009 — build a YAML-source envelope rooted at "$".
16
+ * yamlPosition is FR5b territory and not populated here. */
17
+ function yamlSource(sourceName: string | undefined): ErrorSource {
18
+ return {
19
+ format: "yaml",
20
+ files: [sourceName ?? "<unknown>"],
21
+ jsonPath: "$",
22
+ };
23
+ }
24
+
14
25
  export function parseYaml(content: string, opts: ParseOptions): ParseResult {
15
26
  // Strip UTF-8 BOM if present (consistent with parseJson).
16
27
  const normalizedContent =
@@ -24,7 +35,7 @@ export function parseYaml(content: string, opts: ParseOptions): ParseResult {
24
35
  } catch (err) {
25
36
  throw new ParseError(
26
37
  `Invalid YAML: ${(err as Error).message}`,
27
- { ...errOpts(opts.sourceName), code: "ERR_MALFORMED_YAML" },
38
+ { code: "ERR_MALFORMED_YAML", source: yamlSource(opts.sourceName) },
28
39
  );
29
40
  }
30
41
 
@@ -37,7 +48,7 @@ export function parseYaml(content: string, opts: ParseOptions): ParseResult {
37
48
  const first = desugarErrors[0]!;
38
49
  throw new ParseError(
39
50
  first.message,
40
- { ...errOpts(opts.sourceName), code: first.code ?? "ERR_MALFORMED_YAML" },
51
+ { code: first.code ?? "ERR_MALFORMED_YAML", source: yamlSource(opts.sourceName) },
41
52
  );
42
53
  }
43
54
 
@@ -50,8 +61,8 @@ export function parseYaml(content: string, opts: ParseOptions): ParseResult {
50
61
  const desugarParseErrors = desugarErrors.map(
51
62
  (e) =>
52
63
  new ParseError(e.message, {
53
- ...errOpts(opts.sourceName),
54
64
  code: e.code ?? "ERR_MALFORMED_YAML",
65
+ source: yamlSource(opts.sourceName),
55
66
  }),
56
67
  );
57
68
  return {
package/src/errors.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  // Typed error classes for the metadata parser.
2
2
 
3
+ import type { ErrorSource, LoaderError, NodeContext } from "./source.js";
4
+
3
5
  /** Stable, language-neutral error codes — mirrors fixtures/conformance/ERROR-CODES.json. */
4
6
  // NOTE: The following codes are forward-declared (no emitting site in the current
5
7
  // TS parser/loader — the condition is not yet detected):
@@ -55,20 +57,52 @@ export const ERROR_CODES = [
55
57
 
56
58
  export type ErrorCode = (typeof ERROR_CODES)[number];
57
59
 
58
- export class ParseError extends Error {
59
- readonly source: string | undefined;
60
- readonly path: string | undefined; // logical path within the JSON, e.g. "metadata.children[2].field"
61
- readonly code: ErrorCode | undefined;
60
+ /**
61
+ * Loader error carrying the ADR-0009 LoaderError envelope.
62
+ *
63
+ * Public shape (FR5a):
64
+ * new ParseError(message, { code, source, suggestions?, fixture?, node? })
65
+ *
66
+ * - `code` and `source` are required.
67
+ * - `source` is the ErrorSource discriminated union (json/yaml/merged/resolved/
68
+ * database/code) — the same envelope every cross-language port emits.
69
+ * - `suggestions[]`, `fixture`, `node` are optional per ADR-0009 §RECOMMENDED;
70
+ * FR5a does not populate them, FR5b–FR5e may.
71
+ *
72
+ * Legacy fields (`path?: string`, `source?: string`) were superseded by the
73
+ * envelope's `jsonPath` and `files` and have been dropped — see CHANGELOG.
74
+ */
75
+ export class ParseError extends Error implements LoaderError {
76
+ readonly code: ErrorCode;
77
+ readonly source: ErrorSource;
78
+ readonly suggestions?: string[];
79
+ readonly fixture?: string;
80
+ readonly node?: NodeContext;
62
81
 
63
82
  constructor(
64
83
  message: string,
65
- opts?: { source?: string; path?: string; code?: ErrorCode },
84
+ opts: {
85
+ code: ErrorCode;
86
+ source: ErrorSource;
87
+ suggestions?: string[];
88
+ fixture?: string;
89
+ node?: NodeContext;
90
+ },
66
91
  ) {
67
92
  super(message);
68
93
  this.name = "ParseError";
69
- this.source = opts?.source;
70
- this.path = opts?.path;
71
- this.code = opts?.code;
94
+ this.code = opts.code;
95
+ this.source = opts.source;
96
+ // exactOptionalPropertyTypes: only assign when defined.
97
+ if (opts.suggestions !== undefined) {
98
+ (this as { suggestions?: string[] }).suggestions = opts.suggestions;
99
+ }
100
+ if (opts.fixture !== undefined) {
101
+ (this as { fixture?: string }).fixture = opts.fixture;
102
+ }
103
+ if (opts.node !== undefined) {
104
+ (this as { node?: NodeContext }).node = opts.node;
105
+ }
72
106
  }
73
107
  }
74
108
 
package/src/index.ts CHANGED
@@ -150,13 +150,37 @@ export { resolveSuperRef } from "./super-resolve.js";
150
150
  // Loader hierarchy
151
151
  export { MetaDataLoader } from "./loader/meta-data-loader.js";
152
152
  export type { LoadOptions, LoadResult, LoadingState } from "./loader/meta-data-loader.js";
153
- export { InMemorySource } from "./loader/meta-data-source.js";
153
+ export { InMemoryStringSource } from "./loader/meta-data-source.js";
154
154
  export type { MetaDataSource, MetaDataFormat } from "./loader/meta-data-source.js";
155
155
 
156
+ // Module-level loader shortcuts — delegate to MetaDataLoader.from* static
157
+ // factories. The shortcuts honor the ergonomic per-port pattern (TS and
158
+ // Python expose both class statics AND module-level functions); Java/C# stay
159
+ // class-only. Browser safety is preserved: the underlying sources are
160
+ // loaded via dynamic import inside MetaDataLoader.from*.
161
+ export {
162
+ loadDirectory,
163
+ loadUris,
164
+ loadString,
165
+ } from "./loader/shortcuts.js";
166
+
156
167
  // Errors
157
168
  export { ParseError, MetaModelError, ERROR_CODES } from "./errors.js";
158
169
  export type { ErrorCode } from "./errors.js";
159
170
 
171
+ // FR5a — loader error envelope + source-on-node (ADR-0009).
172
+ // Re-exported from the package root so consumers that catch + repackage
173
+ // ParseErrors (or narrow on `err.source.format === "json"`) can import the
174
+ // envelope types alongside the runtime discriminator.
175
+ export type {
176
+ ErrorSource,
177
+ LoaderError,
178
+ LoaderWarning,
179
+ NodeContext,
180
+ Contributor,
181
+ } from "./source.js";
182
+ export { codeSource } from "./source.js";
183
+
160
184
  // Attribute-schema validation pass (Phase A3)
161
185
  export { validateAttrSchema } from "./attr-schema-validate.js";
162
186
  export type { AttrSchemaValidationResult } from "./attr-schema-validate.js";
@@ -164,9 +188,10 @@ export type { AttrSchemaValidationResult } from "./attr-schema-validate.js";
164
188
  // Naming — hoisted from runtime-ts in v0.2.3 so multiple consumers (runtime-ts, migrate-ts, codegen-ts)
165
189
  // share identical name resolution. See spec §4.1.
166
190
  export {
167
- toSnakeCase, pluralize,
191
+ toSnakeCase, toKebabCase, pluralize,
192
+ applyColumnNamingStrategy, DEFAULT_COLUMN_NAMING_STRATEGY,
168
193
  resolveTableName, resolveColumnName, resolveTableSchema,
169
194
  buildNameMap,
170
195
  stripPackage,
171
196
  } from "./naming.js";
172
- export type { EntityNameMap } from "./naming.js";
197
+ export type { EntityNameMap, ColumnNamingStrategy } from "./naming.js";
@@ -0,0 +1,46 @@
1
+ // server/typescript/packages/metadata/src/json-path.ts
2
+ //
3
+ // FR5a / ADR-0009 — Canonical JSONPath builder.
4
+ //
5
+ // Construction rules (cross-port-aligned):
6
+ // - Root is `$`.
7
+ // - Object keys matching /^[A-Za-z_][A-Za-z0-9_]*$/ use dot notation: `.foo`.
8
+ // - All other keys use single-quoted bracket form: `['my-key']`, `['@attr']`.
9
+ // - Array indices use bracket form: `[N]`.
10
+ // - No trailing dots, no whitespace.
11
+
12
+ const IDENT_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
13
+
14
+ type Segment =
15
+ | { kind: "key"; value: string }
16
+ | { kind: "index"; value: number };
17
+
18
+ export class JsonPathBuilder {
19
+ private readonly segments: Segment[] = [];
20
+
21
+ pushKey(key: string): void {
22
+ this.segments.push({ kind: "key", value: key });
23
+ }
24
+
25
+ pushIndex(idx: number): void {
26
+ this.segments.push({ kind: "index", value: idx });
27
+ }
28
+
29
+ pop(): void {
30
+ this.segments.pop();
31
+ }
32
+
33
+ toString(): string {
34
+ let out = "$";
35
+ for (const seg of this.segments) {
36
+ if (seg.kind === "index") {
37
+ out += `[${seg.value}]`;
38
+ } else if (IDENT_RE.test(seg.value)) {
39
+ out += `.${seg.value}`;
40
+ } else {
41
+ out += `['${seg.value.replace(/'/g, "\\'")}']`;
42
+ }
43
+ }
44
+ return out;
45
+ }
46
+ }