@metaobjectsdev/metadata 0.23.2 → 0.24.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 (131) hide show
  1. package/dist/attr-schema-validate.d.ts.map +1 -1
  2. package/dist/attr-schema-validate.js +17 -2
  3. package/dist/attr-schema-validate.js.map +1 -1
  4. package/dist/core/field/field-constants.d.ts +18 -5
  5. package/dist/core/field/field-constants.d.ts.map +1 -1
  6. package/dist/core/field/field-constants.js +21 -5
  7. package/dist/core/field/field-constants.js.map +1 -1
  8. package/dist/core/field/field-definition.embedded.d.ts.map +1 -1
  9. package/dist/core/field/field-definition.embedded.js +8 -3
  10. package/dist/core/field/field-definition.embedded.js.map +1 -1
  11. package/dist/core/field/validate-field-mutability.d.ts +22 -0
  12. package/dist/core/field/validate-field-mutability.d.ts.map +1 -0
  13. package/dist/core/field/validate-field-mutability.js +208 -0
  14. package/dist/core/field/validate-field-mutability.js.map +1 -0
  15. package/dist/core/identity/identity-constants.d.ts +12 -0
  16. package/dist/core/identity/identity-constants.d.ts.map +1 -1
  17. package/dist/core/identity/identity-constants.js +15 -0
  18. package/dist/core/identity/identity-constants.js.map +1 -1
  19. package/dist/core/object/object-definition.embedded.js +2 -2
  20. package/dist/core/object/object-definition.embedded.js.map +1 -1
  21. package/dist/core/requirement/meta-requirement.d.ts +1 -2
  22. package/dist/core/requirement/meta-requirement.d.ts.map +1 -1
  23. package/dist/core/requirement/meta-requirement.js +2 -6
  24. package/dist/core/requirement/meta-requirement.js.map +1 -1
  25. package/dist/core/requirement/requirement-constants.d.ts +3 -8
  26. package/dist/core/requirement/requirement-constants.d.ts.map +1 -1
  27. package/dist/core/requirement/requirement-constants.js +2 -9
  28. package/dist/core/requirement/requirement-constants.js.map +1 -1
  29. package/dist/core/requirement/requirement-definition.embedded.d.ts.map +1 -1
  30. package/dist/core/requirement/requirement-definition.embedded.js +8 -46
  31. package/dist/core/requirement/requirement-definition.embedded.js.map +1 -1
  32. package/dist/core/requirement/resolve-claim.d.ts +37 -0
  33. package/dist/core/requirement/resolve-claim.d.ts.map +1 -0
  34. package/dist/core/requirement/resolve-claim.js +83 -0
  35. package/dist/core/requirement/resolve-claim.js.map +1 -0
  36. package/dist/core-types.d.ts.map +1 -1
  37. package/dist/core-types.js +10 -10
  38. package/dist/core-types.js.map +1 -1
  39. package/dist/errors.d.ts +2 -2
  40. package/dist/errors.d.ts.map +1 -1
  41. package/dist/errors.js +16 -2
  42. package/dist/errors.js.map +1 -1
  43. package/dist/index.d.ts +7 -1
  44. package/dist/index.d.ts.map +1 -1
  45. package/dist/index.js +13 -1
  46. package/dist/index.js.map +1 -1
  47. package/dist/library/library-sources.d.ts +11 -0
  48. package/dist/library/library-sources.d.ts.map +1 -1
  49. package/dist/library/library-sources.js +13 -0
  50. package/dist/library/library-sources.js.map +1 -1
  51. package/dist/loader/meta-data-loader.d.ts.map +1 -1
  52. package/dist/loader/meta-data-loader.js +10 -9
  53. package/dist/loader/meta-data-loader.js.map +1 -1
  54. package/dist/loader/validation-passes.js +2 -2
  55. package/dist/loader/validation-passes.js.map +1 -1
  56. package/dist/naming-refs.d.ts.map +1 -1
  57. package/dist/naming-refs.js +2 -3
  58. package/dist/naming-refs.js.map +1 -1
  59. package/dist/parser-core.d.ts.map +1 -1
  60. package/dist/parser-core.js +22 -5
  61. package/dist/parser-core.js.map +1 -1
  62. package/dist/persistence/origin/meta-origin.d.ts +0 -10
  63. package/dist/persistence/origin/meta-origin.d.ts.map +1 -1
  64. package/dist/persistence/origin/meta-origin.js +1 -15
  65. package/dist/persistence/origin/meta-origin.js.map +1 -1
  66. package/dist/persistence/origin/origin-constants.d.ts +2 -4
  67. package/dist/persistence/origin/origin-constants.d.ts.map +1 -1
  68. package/dist/persistence/origin/origin-constants.js +9 -7
  69. package/dist/persistence/origin/origin-constants.js.map +1 -1
  70. package/dist/persistence/origin/origin-definition.embedded.d.ts.map +1 -1
  71. package/dist/persistence/origin/origin-definition.embedded.js +0 -16
  72. package/dist/persistence/origin/origin-definition.embedded.js.map +1 -1
  73. package/dist/registry-manifest.d.ts +9 -4
  74. package/dist/registry-manifest.d.ts.map +1 -1
  75. package/dist/registry-manifest.js +9 -4
  76. package/dist/registry-manifest.js.map +1 -1
  77. package/dist/retired-vocabulary.d.ts +92 -0
  78. package/dist/retired-vocabulary.d.ts.map +1 -0
  79. package/dist/retired-vocabulary.js +204 -0
  80. package/dist/retired-vocabulary.js.map +1 -0
  81. package/dist/super-resolve.d.ts +33 -0
  82. package/dist/super-resolve.d.ts.map +1 -1
  83. package/dist/super-resolve.js +56 -1
  84. package/dist/super-resolve.js.map +1 -1
  85. package/dist/template/prompt-definition.embedded.js +1 -1
  86. package/dist/template/prompt-definition.embedded.js.map +1 -1
  87. package/dist/template/template-constants.d.ts +6 -0
  88. package/dist/template/template-constants.d.ts.map +1 -1
  89. package/dist/template/template-constants.js +24 -1
  90. package/dist/template/template-constants.js.map +1 -1
  91. package/dist/template/template-definition.embedded.d.ts.map +1 -1
  92. package/dist/template/template-definition.embedded.js +34 -21
  93. package/dist/template/template-definition.embedded.js.map +1 -1
  94. package/dist/vocabulary-rewrite.d.ts +33 -0
  95. package/dist/vocabulary-rewrite.d.ts.map +1 -0
  96. package/dist/vocabulary-rewrite.js +310 -0
  97. package/dist/vocabulary-rewrite.js.map +1 -0
  98. package/package.json +6 -1
  99. package/src/attr-schema-validate.ts +17 -2
  100. package/src/core/field/field-constants.ts +24 -5
  101. package/src/core/field/field-definition.embedded.ts +8 -3
  102. package/src/core/field/validate-field-mutability.ts +259 -0
  103. package/src/core/identity/identity-constants.ts +16 -0
  104. package/src/core/object/object-definition.embedded.ts +2 -2
  105. package/src/core/requirement/meta-requirement.ts +1 -7
  106. package/src/core/requirement/requirement-constants.ts +2 -9
  107. package/src/core/requirement/requirement-definition.embedded.ts +8 -46
  108. package/src/core/requirement/resolve-claim.ts +98 -0
  109. package/src/core-types.ts +9 -10
  110. package/src/errors.ts +16 -2
  111. package/src/index.ts +29 -1
  112. package/src/library/library-sources.ts +14 -0
  113. package/src/loader/meta-data-loader.ts +10 -9
  114. package/src/loader/validation-passes.ts +3 -3
  115. package/src/naming-refs.ts +1 -3
  116. package/src/parser-core.ts +27 -5
  117. package/src/persistence/origin/meta-origin.ts +0 -16
  118. package/src/persistence/origin/origin-constants.ts +9 -8
  119. package/src/persistence/origin/origin-definition.embedded.ts +0 -16
  120. package/src/registry-manifest.ts +9 -4
  121. package/src/retired-vocabulary.ts +280 -0
  122. package/src/super-resolve.ts +59 -1
  123. package/src/template/prompt-definition.embedded.ts +1 -1
  124. package/src/template/template-constants.ts +27 -1
  125. package/src/template/template-definition.embedded.ts +34 -21
  126. package/src/vocabulary-rewrite.ts +346 -0
  127. package/dist/core/field/validate-field-readonly.d.ts +0 -9
  128. package/dist/core/field/validate-field-readonly.d.ts.map +0 -1
  129. package/dist/core/field/validate-field-readonly.js +0 -128
  130. package/dist/core/field/validate-field-readonly.js.map +0 -1
  131. package/src/core/field/validate-field-readonly.ts +0 -154
@@ -7,7 +7,7 @@
7
7
  //
8
8
  // Extends MetaData directly: no model wrapper, no metaOf() indirection.
9
9
  import { MetaData } from "../../shared/meta-data.js";
10
- import { ORIGIN_PASSTHROUGH_ATTR_FROM, ORIGIN_PASSTHROUGH_ATTR_VIA, ORIGIN_AGGREGATE_ATTR_AGG, ORIGIN_AGGREGATE_ATTR_OF, ORIGIN_AGGREGATE_ATTR_VIA, ORIGIN_COLLECTION_ATTR_VIA, ORIGIN_COMPUTED_ATTR_EXPR, ORIGIN_FIRST_ATTR_OF, ORIGIN_FIRST_ATTR_VIA, ORIGIN_ATTR_ORDER_BY, } from "./origin-constants.js";
10
+ import { ORIGIN_PASSTHROUGH_ATTR_FROM, ORIGIN_PASSTHROUGH_ATTR_VIA, ORIGIN_AGGREGATE_ATTR_AGG, ORIGIN_AGGREGATE_ATTR_OF, ORIGIN_AGGREGATE_ATTR_VIA, ORIGIN_COMPUTED_ATTR_EXPR, ORIGIN_FIRST_ATTR_OF, ORIGIN_FIRST_ATTR_VIA, ORIGIN_ATTR_ORDER_BY, } from "./origin-constants.js";
11
11
  export class MetaOrigin extends MetaData {
12
12
  }
13
13
  /**
@@ -57,20 +57,6 @@ export class MetaAggregateOrigin extends MetaOrigin {
57
57
  return typeof v === "string" ? v : undefined;
58
58
  }
59
59
  }
60
- /**
61
- * Collection origin — the (array) field's value is a relationship-derived
62
- * array of nested view-objects (FR-004 R4). Carries `@via` (required): the
63
- * dotted relationship path the collection walks (e.g. "Author.posts"), or a
64
- * wildcard-prefixed selector for a package-spanning collection (e.g. "*.User").
65
- */
66
- export class MetaCollectionOrigin extends MetaOrigin {
67
- /** The dotted relationship path (or wildcard selector) this collection is sourced from. */
68
- get via() {
69
- // ADR-0039: own — origin.* never inherits (ADR-0029), so own is correct.
70
- const v = this.ownAttr(ORIGIN_COLLECTION_ATTR_VIA);
71
- return typeof v === "string" ? v : undefined;
72
- }
73
- }
74
60
  /**
75
61
  * Computed origin (#195) — a row-level value computed from the base entity's own
76
62
  * fields via a structured expression tree (`@expr`). No related rows, no `@via`.
@@ -1 +1 @@
1
- {"version":3,"file":"meta-origin.js","sourceRoot":"","sources":["../../../src/persistence/origin/meta-origin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-origin.js","sourceRoot":"","sources":["../../../src/persistence/origin/meta-origin.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,13 @@
1
1
  export declare const ORIGIN_SUBTYPE_PASSTHROUGH = "passthrough";
2
2
  export declare const ORIGIN_SUBTYPE_AGGREGATE = "aggregate";
3
- export declare const ORIGIN_SUBTYPE_COLLECTION = "collection";
4
3
  export declare const ORIGIN_SUBTYPE_COMPUTED = "computed";
5
4
  export declare const ORIGIN_SUBTYPE_FIRST = "first";
6
- export declare const ORIGIN_SUBTYPES: readonly ["base", "passthrough", "aggregate", "collection", "computed", "first"];
5
+ export declare const ORIGIN_SUBTYPES: readonly ["base", "passthrough", "aggregate", "computed", "first"];
7
6
  export type OriginSubType = (typeof ORIGIN_SUBTYPES)[number];
8
- export declare const ASSEMBLY_ORIGIN_SUBTYPES: readonly ["aggregate", "computed", "collection", "first"];
7
+ export declare const ASSEMBLY_ORIGIN_SUBTYPES: readonly ["aggregate", "computed", "first"];
9
8
  export declare const ORIGIN_PASSTHROUGH_ATTR_FROM = "from";
10
9
  export declare const ORIGIN_PASSTHROUGH_ATTR_VIA = "via";
11
10
  export declare const ORIGIN_PASSTHROUGH_ATTR_CONVERT = "convert";
12
- export declare const ORIGIN_COLLECTION_ATTR_VIA = "via";
13
11
  export declare const ORIGIN_AGGREGATE_ATTR_AGG = "agg";
14
12
  export declare const ORIGIN_AGGREGATE_ATTR_OF = "of";
15
13
  export declare const ORIGIN_AGGREGATE_ATTR_VIA = "via";
@@ -1 +1 @@
1
- {"version":3,"file":"origin-constants.d.ts","sourceRoot":"","sources":["../../../src/persistence/origin/origin-constants.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,wBAAwB,cAAgB,CAAC;AACtD,eAAO,MAAM,yBAAyB,eAAgB,CAAC;AAIvD,eAAO,MAAM,uBAAuB,aAAgB,CAAC;AACrD,eAAO,MAAM,oBAAoB,UAAgB,CAAC;AAElD,eAAO,MAAM,eAAe,kFAOlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAO7D,eAAO,MAAM,wBAAwB,2DAK3B,CAAC;AAGX,eAAO,MAAM,4BAA4B,SAAS,CAAC;AACnD,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAIlD,eAAO,MAAM,+BAA+B,YAAY,CAAC;AAKzD,eAAO,MAAM,0BAA0B,QAAQ,CAAC;AAGhD,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAC/C,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAM/C,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAIrD,eAAO,MAAM,oBAAoB,aAAc,CAAC;AAChD,eAAO,MAAM,oBAAoB,YAAa,CAAC;AAG/C,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAIhD,eAAO,MAAM,oBAAoB,OAAW,CAAC;AAC7C,eAAO,MAAM,qBAAqB,QAAW,CAAC;AAC9C,eAAO,MAAM,wBAAwB,WAAW,CAAC;AASjD,eAAO,MAAM,mBAAmB,gDAAiD,CAAC;AAClF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAGrE,eAAO,MAAM,OAAO,QAAY,CAAC;AACjC,eAAO,MAAM,OAAO,QAAY,CAAC;AACjC,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,yEAKpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"origin-constants.d.ts","sourceRoot":"","sources":["../../../src/persistence/origin/origin-constants.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,0BAA0B,gBAAgB,CAAC;AACxD,eAAO,MAAM,wBAAwB,cAAgB,CAAC;AAatD,eAAO,MAAM,uBAAuB,aAAgB,CAAC;AACrD,eAAO,MAAM,oBAAoB,UAAgB,CAAC;AAElD,eAAO,MAAM,eAAe,oEAMlB,CAAC;AACX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAO7D,eAAO,MAAM,wBAAwB,6CAI3B,CAAC;AAGX,eAAO,MAAM,4BAA4B,SAAS,CAAC;AACnD,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAIlD,eAAO,MAAM,+BAA+B,YAAY,CAAC;AAGzD,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAC/C,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAC9C,eAAO,MAAM,yBAAyB,QAAQ,CAAC;AAM/C,eAAO,MAAM,4BAA4B,WAAW,CAAC;AAIrD,eAAO,MAAM,oBAAoB,aAAc,CAAC;AAChD,eAAO,MAAM,oBAAoB,YAAa,CAAC;AAG/C,eAAO,MAAM,yBAAyB,SAAS,CAAC;AAIhD,eAAO,MAAM,oBAAoB,OAAW,CAAC;AAC7C,eAAO,MAAM,qBAAqB,QAAW,CAAC;AAC9C,eAAO,MAAM,wBAAwB,WAAW,CAAC;AASjD,eAAO,MAAM,mBAAmB,gDAAiD,CAAC;AAClF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAGrE,eAAO,MAAM,OAAO,QAAY,CAAC;AACjC,eAAO,MAAM,OAAO,QAAY,CAAC;AACjC,eAAO,MAAM,WAAW,YAAY,CAAC;AAErC,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,yEAKpB,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -10,7 +10,15 @@ import { SUBTYPE_BASE } from "../../shared/base-types.js";
10
10
  // ---------------------------------------------------------------------------
11
11
  export const ORIGIN_SUBTYPE_PASSTHROUGH = "passthrough";
12
12
  export const ORIGIN_SUBTYPE_AGGREGATE = "aggregate";
13
- export const ORIGIN_SUBTYPE_COLLECTION = "collection";
13
+ // FR-037 R2 `collection` is RESERVED, NOT REGISTERED. It duplicated
14
+ // `origin.aggregate @agg: collect` on a strictly smaller attr set (@via only —
15
+ // no @filter, no @orderBy, no @distinct), and nothing dispatched on it: its last
16
+ // real consumer, the payload-VO typing edge, was deleted in 0.20.16 (#270) for
17
+ // being actively wrong. Re-entry bar (ADR-0007 Amendment 2): a member enters the
18
+ // registry only when a shipping consumer dispatches on it. The designated
19
+ // re-entry shape is `@agg: collect` with `@of` made OPTIONAL (absent = whole-
20
+ // object rollup, typed by the field's declared @objectRef + isArray), NOT a
21
+ // restored subtype.
14
22
  // #195 — computed: a row-level value from the base entity's own fields via a
15
23
  // structured @expr tree (no related rows). first: the single related row picked
16
24
  // by @orderBy along @via, projecting @of (argmax-then-project).
@@ -20,7 +28,6 @@ export const ORIGIN_SUBTYPES = [
20
28
  SUBTYPE_BASE,
21
29
  ORIGIN_SUBTYPE_PASSTHROUGH,
22
30
  ORIGIN_SUBTYPE_AGGREGATE,
23
- ORIGIN_SUBTYPE_COLLECTION,
24
31
  ORIGIN_SUBTYPE_COMPUTED,
25
32
  ORIGIN_SUBTYPE_FIRST,
26
33
  ];
@@ -32,7 +39,6 @@ export const ORIGIN_SUBTYPES = [
32
39
  export const ASSEMBLY_ORIGIN_SUBTYPES = [
33
40
  ORIGIN_SUBTYPE_AGGREGATE,
34
41
  ORIGIN_SUBTYPE_COMPUTED,
35
- ORIGIN_SUBTYPE_COLLECTION,
36
42
  ORIGIN_SUBTYPE_FIRST,
37
43
  ];
38
44
  // passthrough attrs
@@ -42,10 +48,6 @@ export const ORIGIN_PASSTHROUGH_ATTR_VIA = "via";
42
48
  // (#185). Suppresses ERR_PASSTHROUGH_TYPE_MISMATCH. Acknowledgement only — it
43
49
  // does NOT generate a cast; real type-converting projections are origin.computed (#195/#159).
44
50
  export const ORIGIN_PASSTHROUGH_ATTR_CONVERT = "convert";
45
- // collection attrs — a relationship-derived array of nested view-objects
46
- // (FR-004 R4). @via is the dotted relationship path (optionally wildcard-
47
- // prefixed, e.g. "*.User", for a package-spanning collection).
48
- export const ORIGIN_COLLECTION_ATTR_VIA = "via";
49
51
  // aggregate attrs
50
52
  export const ORIGIN_AGGREGATE_ATTR_AGG = "agg";
51
53
  export const ORIGIN_AGGREGATE_ATTR_OF = "of";
@@ -1 +1 @@
1
- {"version":3,"file":"origin-constants.js","sourceRoot":"","sources":["../../../src/persistence/origin/origin-constants.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,8EAA8E;AAC9E,oDAAoD;AACpD,EAAE;AACF,4EAA4E;AAC5E,6DAA6D;AAC7D,+DAA+D;AAC/D,EAAE;AACF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC;AACxD,MAAM,CAAC,MAAM,wBAAwB,GAAK,WAAW,CAAC;AACtD,MAAM,CAAC,MAAM,yBAAyB,GAAI,YAAY,CAAC;AACvD,6EAA6E;AAC7E,gFAAgF;AAChF,gEAAgE;AAChE,MAAM,CAAC,MAAM,uBAAuB,GAAM,UAAU,CAAC;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAS,OAAO,CAAC;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY;IACZ,0BAA0B;IAC1B,wBAAwB;IACxB,yBAAyB;IACzB,uBAAuB;IACvB,oBAAoB;CACZ,CAAC;AAGX,6EAA6E;AAC7E,4EAA4E;AAC5E,wDAAwD;AACxD,6EAA6E;AAC7E,yEAAyE;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,wBAAwB;IACxB,uBAAuB;IACvB,yBAAyB;IACzB,oBAAoB;CACZ,CAAC;AAEX,oBAAoB;AACpB,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AACnD,MAAM,CAAC,MAAM,2BAA2B,GAAI,KAAK,CAAC;AAClD,gFAAgF;AAChF,8EAA8E;AAC9E,8FAA8F;AAC9F,MAAM,CAAC,MAAM,+BAA+B,GAAG,SAAS,CAAC;AAEzD,yEAAyE;AACzE,0EAA0E;AAC1E,+DAA+D;AAC/D,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,CAAC;AAEhD,kBAAkB;AAClB,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAI,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,kFAAkF;AAClF,kFAAkF;AAClF,wEAAwE;AACxE,4EAA4E;AAC5E,2EAA2E;AAC3E,MAAM,CAAC,MAAM,4BAA4B,GAAG,QAAQ,CAAC;AACrD,8EAA8E;AAC9E,0EAA0E;AAC1E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAI,UAAU,CAAC;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAI,SAAS,CAAC;AAE/C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEhD,8EAA8E;AAC9E,oCAAoC;AACpC,MAAM,CAAC,MAAM,oBAAoB,GAAO,IAAI,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAM,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,QAAQ,CAAC;AAEjD,iCAAiC;AACjC,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAC;AAGlF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,OAAO,GAAO,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAO,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,GAAG,mBAAmB;IACtB,OAAO;IACP,OAAO;IACP,WAAW;CACH,CAAC"}
1
+ {"version":3,"file":"origin-constants.js","sourceRoot":"","sources":["../../../src/persistence/origin/origin-constants.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,8EAA8E;AAC9E,oDAAoD;AACpD,EAAE;AACF,4EAA4E;AAC5E,6DAA6D;AAC7D,+DAA+D;AAC/D,EAAE;AACF,8EAA8E;AAE9E,MAAM,CAAC,MAAM,0BAA0B,GAAG,aAAa,CAAC;AACxD,MAAM,CAAC,MAAM,wBAAwB,GAAK,WAAW,CAAC;AACtD,sEAAsE;AACtE,+EAA+E;AAC/E,iFAAiF;AACjF,+EAA+E;AAC/E,iFAAiF;AACjF,0EAA0E;AAC1E,8EAA8E;AAC9E,4EAA4E;AAC5E,oBAAoB;AACpB,6EAA6E;AAC7E,gFAAgF;AAChF,gEAAgE;AAChE,MAAM,CAAC,MAAM,uBAAuB,GAAM,UAAU,CAAC;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAS,OAAO,CAAC;AAElD,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,YAAY;IACZ,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;CACZ,CAAC;AAGX,6EAA6E;AAC7E,4EAA4E;AAC5E,wDAAwD;AACxD,6EAA6E;AAC7E,yEAAyE;AACzE,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,wBAAwB;IACxB,uBAAuB;IACvB,oBAAoB;CACZ,CAAC;AAEX,oBAAoB;AACpB,MAAM,CAAC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AACnD,MAAM,CAAC,MAAM,2BAA2B,GAAI,KAAK,CAAC;AAClD,gFAAgF;AAChF,8EAA8E;AAC9E,8FAA8F;AAC9F,MAAM,CAAC,MAAM,+BAA+B,GAAG,SAAS,CAAC;AAEzD,kBAAkB;AAClB,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,MAAM,CAAC,MAAM,wBAAwB,GAAI,IAAI,CAAC;AAC9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAC/C,kFAAkF;AAClF,kFAAkF;AAClF,wEAAwE;AACxE,4EAA4E;AAC5E,2EAA2E;AAC3E,MAAM,CAAC,MAAM,4BAA4B,GAAG,QAAQ,CAAC;AACrD,8EAA8E;AAC9E,0EAA0E;AAC1E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAI,UAAU,CAAC;AAChD,MAAM,CAAC,MAAM,oBAAoB,GAAI,SAAS,CAAC;AAE/C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEhD,8EAA8E;AAC9E,oCAAoC;AACpC,MAAM,CAAC,MAAM,oBAAoB,GAAO,IAAI,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAM,KAAK,CAAC;AAC9C,MAAM,CAAC,MAAM,wBAAwB,GAAG,QAAQ,CAAC;AAEjD,iCAAiC;AACjC,EAAE;AACF,kFAAkF;AAClF,gFAAgF;AAChF,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAU,CAAC;AAGlF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,OAAO,GAAO,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,OAAO,GAAO,KAAK,CAAC;AACjC,MAAM,CAAC,MAAM,WAAW,GAAG,SAAS,CAAC;AAErC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,GAAG,mBAAmB;IACtB,OAAO;IACP,OAAO;IACP,WAAW;CACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"origin-definition.embedded.d.ts","sourceRoot":"","sources":["../../../src/persistence/origin/origin-definition.embedded.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,eAAO,MAAM,iBAAiB,EAAE,kBAuL/B,CAAC"}
1
+ {"version":3,"file":"origin-definition.embedded.d.ts","sourceRoot":"","sources":["../../../src/persistence/origin/origin-definition.embedded.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,eAAO,MAAM,iBAAiB,EAAE,kBAuK/B,CAAC"}
@@ -106,22 +106,6 @@ export const ORIGIN_DEFINITION = {
106
106
  }
107
107
  ]
108
108
  },
109
- {
110
- "type": "origin",
111
- "subType": "collection",
112
- "description": "A relationship-derived array of nested view-objects: walks @via to produce the collection (e.g. 'Author.posts'), or a wildcard selector for a package-spanning collection.",
113
- "whenToUse": "A projection needs an array of nested child view-objects (a parent with its children inline). Declare it instead of hand-assembling the nested query + mapping.",
114
- "children": [
115
- {
116
- "type": "attr",
117
- "subType": "string",
118
- "name": "via",
119
- "min": 1,
120
- "max": 1,
121
- "description": "Dotted relationship path the collection walks to produce an array of nested view-objects (e.g. 'Author.posts'), or a wildcard selector for a package-spanning collection (e.g. '*.User')."
122
- }
123
- ]
124
- },
125
109
  {
126
110
  "type": "origin",
127
111
  "subType": "computed",
@@ -1 +1 @@
1
- {"version":3,"file":"origin-definition.embedded.js","sourceRoot":"","sources":["../../../src/persistence/origin/origin-definition.embedded.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"origin-definition.embedded.js","sourceRoot":"","sources":["../../../src/persistence/origin/origin-definition.embedded.ts"],"names":[],"mappings":"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"}
@@ -64,11 +64,16 @@ interface ManifestType {
64
64
  * manifest (the byte-exact bill of materials), NOT a per-provider or per-file marker:
65
65
  * every port emits the same string, asserted by registry-conformance. Pre-1.0 the
66
66
  * vocabulary is still `0.x` (semver = unstable, may change) but largely settled going
67
- * into the quiet period, so this is `"0.9"` (near-final); the 1.0 cut (readiness G1)
68
- * freezes it to `"1.0"`. Decoupled from every package line — it is the spec version,
69
- * not a package version.
67
+ * into the quiet period; the 1.0 cut (readiness G1) freezes it to `"1.0"`. Decoupled
68
+ * from every package line — it is the spec version, not a package version.
69
+ *
70
+ * The current value is the declaration below and nothing else. Do not restate it in
71
+ * prose: `scripts/check-metamodel-version.mjs --set` rewrites the declaration, so any
72
+ * copy in a comment goes stale on the very next bump (it said `"0.9"` here while the
73
+ * constant read `"0.10"`). Bump with that script — never by hand — so the manifest and
74
+ * all four port constants move together.
70
75
  */
71
- export declare const METAMODEL_VERSION = "0.9";
76
+ export declare const METAMODEL_VERSION = "0.10";
72
77
  /** The full canonical manifest. All collections are sorted for byte-stability. */
73
78
  interface RegistryManifest {
74
79
  /** The Metamodel spec version (first key — a header). See {@link METAMODEL_VERSION}. */
@@ -1 +1 @@
1
- {"version":3,"file":"registry-manifest.d.ts","sourceRoot":"","sources":["../src/registry-manifest.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAyC,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzF,OAAO,EAEL,eAAe,EAGhB,MAAM,mCAAmC,CAAC;AAE3C,+EAA+E;AAC/E,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,oGAAoG;IACpG,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,mGAAmG;IACnG,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qEAAqE;AACrE,UAAU,aAAa;IACrB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,kGAAkG;IAClG,YAAY,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACzC,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4FAA4F;IAC5F,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,gGAAgG;AAChG,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,iFAAiF;IACjF,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,QAAQ,CAAC;AAEvC,kFAAkF;AAClF,UAAU,gBAAgB;IACxB,wFAAwF;IACxF,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,YAAY,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAuHD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,QAAQ,EAAG,UAAmB,CAAC;AACrC,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,OAAO,QAAQ,CAAC;AAEnE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAEpE;AA6BD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,CAqC9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAGnE"}
1
+ {"version":3,"file":"registry-manifest.d.ts","sourceRoot":"","sources":["../src/registry-manifest.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAyC,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzF,OAAO,EAEL,eAAe,EAGhB,MAAM,mCAAmC,CAAC;AAE3C,+EAA+E;AAC/E,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,oGAAoG;IACpG,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,mGAAmG;IACnG,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,mFAAmF;IACnF,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qEAAqE;AACrE,UAAU,aAAa;IACrB,+CAA+C;IAC/C,SAAS,EAAE,MAAM,CAAC;IAClB,kGAAkG;IAClG,YAAY,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IACzC,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,uEAAuE;IACvE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,4FAA4F;IAC5F,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,6FAA6F;IAC7F,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,gGAAgG;AAChG,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sDAAsD;IACtD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,iFAAiF;IACjF,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,+FAA+F;IAC/F,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,SAAS,CAAC;AAExC,kFAAkF;AAClF,UAAU,gBAAgB;IACxB,wFAAwF;IACxF,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,WAAW,EAAE,YAAY,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAuHD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,QAAQ,EAAG,UAAmB,CAAC;AACrC,MAAM,MAAM,kBAAkB,GAAG,eAAe,GAAG,OAAO,QAAQ,CAAC;AAEnE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAEpE;AA6BD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,CAqC9E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAGnE"}
@@ -34,11 +34,16 @@ import { EXCLUDED_PER_TYPE_ATTRS, ExclusionReason, isExcludedTypeSubType, manife
34
34
  * manifest (the byte-exact bill of materials), NOT a per-provider or per-file marker:
35
35
  * every port emits the same string, asserted by registry-conformance. Pre-1.0 the
36
36
  * vocabulary is still `0.x` (semver = unstable, may change) but largely settled going
37
- * into the quiet period, so this is `"0.9"` (near-final); the 1.0 cut (readiness G1)
38
- * freezes it to `"1.0"`. Decoupled from every package line — it is the spec version,
39
- * not a package version.
37
+ * into the quiet period; the 1.0 cut (readiness G1) freezes it to `"1.0"`. Decoupled
38
+ * from every package line — it is the spec version, not a package version.
39
+ *
40
+ * The current value is the declaration below and nothing else. Do not restate it in
41
+ * prose: `scripts/check-metamodel-version.mjs --set` rewrites the declaration, so any
42
+ * copy in a comment goes stale on the very next bump (it said `"0.9"` here while the
43
+ * constant read `"0.10"`). Bump with that script — never by hand — so the manifest and
44
+ * all four port constants move together.
40
45
  */
41
- export const METAMODEL_VERSION = "0.9";
46
+ export const METAMODEL_VERSION = "0.10";
42
47
  /** ASCII-string compare so the sort is locale-independent and byte-stable across ports. */
43
48
  function compareStrings(a, b) {
44
49
  return a < b ? -1 : a > b ? 1 : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"registry-manifest.js","sourceRoot":"","sources":["../src/registry-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry-manifest.js","sourceRoot":"","sources":["../src/registry-manifest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ /** What a reader needs at the moment their load fails. */
2
+ export interface RetirementNote {
3
+ /** The release that retired it. */
4
+ readonly since: string;
5
+ /** One line: what it was, and why it went. */
6
+ readonly why: string;
7
+ /** The vocabulary that replaced it, when something did. */
8
+ readonly replacedBy?: string;
9
+ /** Repo-relative migration guide. */
10
+ readonly migration?: string;
11
+ }
12
+ /**
13
+ * The mechanical fix, when one exists.
14
+ *
15
+ * ABSENT MEANS JUDGMENT — `@status: abandoned` can be resolved by deleting the node, by
16
+ * retyping it, or by fixing the residue it describes, and only a human knows which. A tool
17
+ * that guessed would emit metadata that LOADS and means something different, which is worse
18
+ * than refusing: the adopter would believe the migration finished.
19
+ */
20
+ export type VocabularyRewrite =
21
+ /** The attribute name changed; the value is untouched. */
22
+ {
23
+ readonly kind: "renameAttr";
24
+ readonly to: string;
25
+ }
26
+ /** The attribute went away with no replacement — drop it. */
27
+ | {
28
+ readonly kind: "dropAttr";
29
+ }
30
+ /**
31
+ * Both the name and the value changed (`@readOnly: true` → `@mutability: "readOnly"`).
32
+ *
33
+ * `otherwise` is REQUIRED, and that is the point. The attribute is retired for EVERY
34
+ * value it could hold, so an entry that names only the value it can rewrite has said
35
+ * nothing about the rest — and the rewriter's only honest options are to drop them or to
36
+ * refuse them. Leaving it implicit is how `@readOnly: false` came to be silently skipped:
37
+ * the entry's prose said "treated as a drop", the code fell through to `continue`, and
38
+ * `meta upgrade` exited 0 on a file that still would not load.
39
+ */
40
+ | {
41
+ readonly kind: "renameAttrValue";
42
+ readonly toAttr: string;
43
+ readonly fromValue: unknown;
44
+ readonly toValue: unknown;
45
+ /** What happens to every value other than `fromValue`. */
46
+ readonly otherwise: "drop" | "refuse";
47
+ };
48
+ /** One retirement. `subType: "*"` means every subtype of `type`. */
49
+ export interface RetiredEntry extends RetirementNote {
50
+ readonly type: string;
51
+ /** `*` for every subtype of `type`, else the exact subtype. */
52
+ readonly subType: string;
53
+ /** Retired ATTRIBUTE name (no `@`), when the attribute itself went. */
54
+ readonly attr?: string;
55
+ /** Retired VALUES of a surviving attribute, when only some members went. */
56
+ readonly attrValues?: readonly string[];
57
+ /** Set when the SUBTYPE itself was retired (`attr`/`attrValues` absent). */
58
+ readonly isSubTypeRetirement?: boolean;
59
+ /** How `meta upgrade` fixes it. Absent ⇒ the human decides; the tool refuses and
60
+ * prints `migration`. */
61
+ readonly rewrite?: VocabularyRewrite;
62
+ }
63
+ export declare const RETIRED_VOCABULARY: readonly RetiredEntry[];
64
+ /**
65
+ * True when `entry` governs `typeKey` (`"<type>.<subType>"`).
66
+ *
67
+ * Exported because the rewriter scopes every occurrence with the SAME rule. It used to
68
+ * carry its own copy, and a scoping rule that lives in two files is one that will be fixed
69
+ * in one of them.
70
+ */
71
+ export declare function scopeMatches(entry: RetiredEntry, typeKey: string): boolean;
72
+ /** The reader-facing half of an entry, without the matching machinery. */
73
+ export declare function note(entry: RetiredEntry): RetirementNote;
74
+ /**
75
+ * The attribute NAME itself was retired for this type. Returns undefined for an attr whose
76
+ * name is unknown here — a typo must keep reporting as a typo.
77
+ *
78
+ * An entry carrying `attrValues` is a VALUE retirement on a surviving attribute, so it is
79
+ * deliberately not matched here: `@status` is still perfectly good vocabulary.
80
+ */
81
+ export declare function retiredAttr(typeKey: string, attrName: string): RetirementNote | undefined;
82
+ /** A specific VALUE of a surviving attribute was retired. */
83
+ export declare function retiredAttrValue(typeKey: string, attrName: string, value: unknown): RetirementNote | undefined;
84
+ /** The SUBTYPE itself was retired (`origin.collection`). */
85
+ export declare function retiredSubType(type: string, subType: string): RetirementNote | undefined;
86
+ /**
87
+ * The sentence appended to a failing diagnostic. Kept here rather than at each call site so
88
+ * all three failure sites word a retirement identically — an adopter who has seen one
89
+ * recognises the next.
90
+ */
91
+ export declare function retirementHint(n: RetirementNote): string;
92
+ //# sourceMappingURL=retired-vocabulary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retired-vocabulary.d.ts","sourceRoot":"","sources":["../src/retired-vocabulary.ts"],"names":[],"mappings":"AAgCA,0DAA0D;AAC1D,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,qCAAqC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,iBAAiB;AAC3B,0DAA0D;AACxD;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CAAE;AACtD,6DAA6D;GAC3D;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAA;CAAE;AAC/B;;;;;;;;;GASG;GACD;IACE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,0DAA0D;IAC1D,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,QAAQ,CAAC;CACvC,CAAC;AAEN,oEAAoE;AACpE,MAAM,WAAW,YAAa,SAAQ,cAAc;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,CAAC,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC;8BAC0B;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,iBAAiB,CAAC;CACtC;AAID,eAAO,MAAM,kBAAkB,EAAE,SAAS,YAAY,EA6GrD,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAK1E;AAED,0EAA0E;AAC1E,wBAAgB,IAAI,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CAOxD;AAQD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAIzF;AAED,6DAA6D;AAC7D,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,OAAO,GACb,cAAc,GAAG,SAAS,CAK5B;AAED,4DAA4D;AAC5D,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAExF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,cAAc,GAAG,MAAM,CASxD"}
@@ -0,0 +1,204 @@
1
+ // server/typescript/packages/metadata/src/retired-vocabulary.ts
2
+ //
3
+ // Vocabulary this project USED to register, and what to do instead.
4
+ //
5
+ // WHY THIS EXISTS (#337). Under ADR-0023 the registry is strict and sealed, so retired
6
+ // vocabulary fails the load — correctly. But the message it failed with said the attribute
7
+ // was "not declared by any registered provider", which tells an author their metadata is
8
+ // malformed when the truth is that the vocabulary was retired ON PURPOSE, in a named
9
+ // release, with a written migration. An adopter read that error, concluded the tool had a
10
+ // registration bug, filed it as one, and argued against a decision whose reasoning they had
11
+ // never seen — because nothing in the error pointed at it. The migration guide answered
12
+ // their objection precisely. They never found it.
13
+ //
14
+ // THIS CHANGES NO LOAD OUTCOME. Retired vocabulary still fails, with the same error code,
15
+ // at the same site. Only the message gains a sentence. That is deliberate: making any of
16
+ // these load again would undo an adjudicated breaking change, and a "helpful" shim is how a
17
+ // retirement quietly stops being one.
18
+ //
19
+ // SCOPE IS BY TYPE, NEVER BY BARE NAME. `@unique` is retired on `identity.secondary` and
20
+ // perfectly live on a field; a name-only match would brand a valid declaration as retired,
21
+ // which is worse than the generic message it replaces. Every entry names the type it
22
+ // applies to, and `*` means "every subtype of this type" — never "every type".
23
+ //
24
+ // A GENUINE TYPO MUST STAY GENERIC. This map is consulted only after the normal check has
25
+ // already decided to fail, and it returns undefined for anything it does not recognise, so
26
+ // `@maxLenght` still reports as an unknown attribute. The map speaks only where it KNOWS.
27
+ //
28
+ // CROSS-PORT: this is a DIAGNOSTIC, not registered vocabulary — it affects no registry
29
+ // manifest and no load outcome, so it carries no registry-conformance obligation. The other
30
+ // four ports fail identically today, just with the generic message; mirroring this map is a
31
+ // per-port ergonomics follow-up, not a conformance gap.
32
+ const REQUIREMENT_MIGRATION = "docs/features/migrations/verified-by-retirement.md";
33
+ export const RETIRED_VOCABULARY = [
34
+ // ── 0.24.0: `@violation` is renamed `@counterexample` ──
35
+ //
36
+ // Pure rename — no semantics change. The field always held a static falsifiability test
37
+ // ("what would contradict this"), authored once, never a state. `@violation` READ as a
38
+ // status, and did so to the person who approved the vocabulary, who asked whether it
39
+ // meant "we know this requirement is currently violated". A name that misleads its own
40
+ // owner has earned replacing.
41
+ //
42
+ // Fully mechanical, which is the point: adopters migrate with `meta upgrade --apply`
43
+ // rather than a hand sweep. This entry is the first real user of that tool.
44
+ {
45
+ type: "requirement", subType: "*", attr: "violation",
46
+ since: "0.24.0",
47
+ why: "it named a static falsifiability test but read as a status — 'this requirement " +
48
+ "is in violation' — which is not what the field has ever held",
49
+ replacedBy: "@counterexample",
50
+ migration: "docs/features/migrations/violation-to-counterexample.md",
51
+ rewrite: { kind: "renameAttr", to: "counterexample" },
52
+ },
53
+ // ── FR-038: the requirement vocabulary becomes prescriptive-only (0.24.0) ──
54
+ {
55
+ type: "requirement", subType: "*", attr: "verifiedBy",
56
+ since: "0.24.0",
57
+ why: "it asked you to name a test, and verify could only check that the NAME occurred " +
58
+ "somewhere in your test sources — never that the named test verified the claim",
59
+ migration: REQUIREMENT_MIGRATION,
60
+ // Nothing replaced it, so the fix is removal. Safe to automate: the attribute drove no
61
+ // behaviour anyone else can observe.
62
+ rewrite: { kind: "dropAttr" },
63
+ },
64
+ {
65
+ type: "requirement", subType: "*", attr: "supersededBy",
66
+ since: "0.24.0",
67
+ why: "a requirement is prescriptive — it states what should be true and is never a " +
68
+ "journal of what happened",
69
+ migration: REQUIREMENT_MIGRATION,
70
+ rewrite: { kind: "dropAttr" },
71
+ },
72
+ {
73
+ type: "requirement", subType: "*", attr: "status",
74
+ attrValues: ["abandoned", "superseded"],
75
+ since: "0.24.0",
76
+ why: "retiring a capability is DELETING its requirement; version control holds that it " +
77
+ "existed, and `notes` on a surviving entry holds what a reader still needs",
78
+ migration: REQUIREMENT_MIGRATION,
79
+ },
80
+ // ── FR-037 R1: @readOnly becomes the @mutability enum (0.24.0) ──
81
+ {
82
+ type: "field", subType: "*", attr: "readOnly",
83
+ since: "0.24.0",
84
+ why: "a boolean could not express write-once, so the axis became an enum",
85
+ replacedBy: "@mutability",
86
+ migration: "docs/features/migrations/readonly-to-mutability.md",
87
+ // Key AND value: `@readOnly: true` becomes `@mutability: "readOnly"`. `@readOnly: false`
88
+ // was the default and simply goes away — hence `otherwise: "drop"` rather than inventing
89
+ // a mutability the author never stated. Both arms must be stated: the attribute is
90
+ // deregistered for every value, so an unhandled arm is a file that still fails to load
91
+ // after a run that reported success.
92
+ rewrite: {
93
+ kind: "renameAttrValue",
94
+ toAttr: "mutability",
95
+ fromValue: true,
96
+ toValue: "readOnly",
97
+ otherwise: "drop",
98
+ },
99
+ },
100
+ // ── FR-037 R2: origin.collection retires to reserved-not-registered (0.24.0) ──
101
+ {
102
+ type: "origin", subType: "collection", isSubTypeRetirement: true,
103
+ since: "0.24.0",
104
+ why: "it duplicated `origin.aggregate @agg: collect` on a strictly smaller attribute " +
105
+ "set, and nothing dispatched on it",
106
+ replacedBy: "origin.aggregate @agg: collect",
107
+ migration: "docs/features/migrations/origin-collection-retirement.md",
108
+ },
109
+ // ── ADR-0040: uniqueness lives in the TYPE, not an attribute (0.15.1) ──
110
+ {
111
+ type: "identity", subType: "secondary", attr: "unique",
112
+ since: "0.15.1",
113
+ why: "`identity.secondary` is now always a unique alternate key — uniqueness is encoded " +
114
+ "in the type, so the attribute had nothing left to say",
115
+ replacedBy: "index.lookup (for a NON-unique retrieval index)",
116
+ migration: "docs/features/migrations/identity-secondary-to-index-lookup.md",
117
+ },
118
+ // ── Metamodel 1.0: @dbColumnType slim-and-derive (0.15.0) ──
119
+ {
120
+ type: "field", subType: "*", attr: "dbColumnType",
121
+ attrValues: ["uuid_array", "text_array"],
122
+ since: "0.15.0",
123
+ why: "array-ness is DERIVED from `isArray`, so an array-flavoured physical type restated " +
124
+ "something the model already knew",
125
+ replacedBy: "isArray: true on the field",
126
+ // On a VALUE-scoped entry, `dropAttr` means "drop it when the value is one of the
127
+ // retired ones" — never unconditionally. `@dbColumnType: jsonb` is live vocabulary on
128
+ // the same attribute, and removing it would silently change the column type.
129
+ //
130
+ // Safe because the attribute said nothing the model did not already know: the field
131
+ // carrying `uuid_array` necessarily has `isArray: true`, which is where array-ness now
132
+ // comes from. There is no guide for this one, so without the rewrite an adopter would
133
+ // be told it is retired and given nowhere to go — which is what the dead-end test that
134
+ // caught this exists to prevent.
135
+ rewrite: { kind: "dropAttr" },
136
+ },
137
+ ];
138
+ /**
139
+ * True when `entry` governs `typeKey` (`"<type>.<subType>"`).
140
+ *
141
+ * Exported because the rewriter scopes every occurrence with the SAME rule. It used to
142
+ * carry its own copy, and a scoping rule that lives in two files is one that will be fixed
143
+ * in one of them.
144
+ */
145
+ export function scopeMatches(entry, typeKey) {
146
+ const dot = typeKey.indexOf(".");
147
+ if (dot < 0)
148
+ return false;
149
+ if (entry.type !== typeKey.slice(0, dot))
150
+ return false;
151
+ return entry.subType === "*" || entry.subType === typeKey.slice(dot + 1);
152
+ }
153
+ /** The reader-facing half of an entry, without the matching machinery. */
154
+ export function note(entry) {
155
+ return {
156
+ since: entry.since,
157
+ why: entry.why,
158
+ ...(entry.replacedBy !== undefined ? { replacedBy: entry.replacedBy } : {}),
159
+ ...(entry.migration !== undefined ? { migration: entry.migration } : {}),
160
+ };
161
+ }
162
+ /** First entry satisfying `match`, as a note. The three lookups below differ only in it. */
163
+ function noted(match) {
164
+ const hit = RETIRED_VOCABULARY.find(match);
165
+ return hit === undefined ? undefined : note(hit);
166
+ }
167
+ /**
168
+ * The attribute NAME itself was retired for this type. Returns undefined for an attr whose
169
+ * name is unknown here — a typo must keep reporting as a typo.
170
+ *
171
+ * An entry carrying `attrValues` is a VALUE retirement on a surviving attribute, so it is
172
+ * deliberately not matched here: `@status` is still perfectly good vocabulary.
173
+ */
174
+ export function retiredAttr(typeKey, attrName) {
175
+ return noted((e) => e.attr === attrName && e.attrValues === undefined && scopeMatches(e, typeKey));
176
+ }
177
+ /** A specific VALUE of a surviving attribute was retired. */
178
+ export function retiredAttrValue(typeKey, attrName, value) {
179
+ if (typeof value !== "string")
180
+ return undefined;
181
+ return noted((e) => e.attr === attrName && e.attrValues?.includes(value) === true && scopeMatches(e, typeKey));
182
+ }
183
+ /** The SUBTYPE itself was retired (`origin.collection`). */
184
+ export function retiredSubType(type, subType) {
185
+ return noted((e) => e.isSubTypeRetirement === true && e.type === type && e.subType === subType);
186
+ }
187
+ /**
188
+ * The sentence appended to a failing diagnostic. Kept here rather than at each call site so
189
+ * all three failure sites word a retirement identically — an adopter who has seen one
190
+ * recognises the next.
191
+ */
192
+ export function retirementHint(n) {
193
+ // Sentences are built WITHOUT their terminator and punctuated once at the end. The
194
+ // previous form appended a period to each fragment and then repaired the doubling with a
195
+ // global `".." → "."` — which would silently rewrite an ellipsis, or a `../` in a
196
+ // migration path, inside the user-facing load error.
197
+ const parts = [`retired in ${n.since} — ${n.why}`];
198
+ if (n.replacedBy !== undefined)
199
+ parts.push(`Use ${n.replacedBy} instead`);
200
+ if (n.migration !== undefined)
201
+ parts.push(`Migration: ${n.migration}`);
202
+ return `${parts.join(". ")}.`;
203
+ }
204
+ //# sourceMappingURL=retired-vocabulary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retired-vocabulary.js","sourceRoot":"","sources":["../src/retired-vocabulary.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,39 @@ export interface ReferrerScope {
18
18
  * shipped top-level extends behavior.
19
19
  */
20
20
  export declare function isChildTargetingRef(ref: string): boolean;
21
+ /**
22
+ * Whether a dotted `extends` target is acceptable for the extending node.
23
+ *
24
+ * Type must match exactly. Subtype must match too — with ONE exception, on identities
25
+ * (#310). For an identity, subtype equality was answering the wrong question: it read as
26
+ * "the same kind of thing", but ADR-0040 encodes uniqueness in the TYPE, so `primary` and
27
+ * `secondary` are both UNIQUE KEYS and differ only in which one the entity nominated as
28
+ * its main handle. Borrowing a key borrows uniqueness, not that nomination — so a read
29
+ * model may key off a business key the entity models as `identity.secondary` while never
30
+ * surfacing its surrogate `identity.primary` at all.
31
+ *
32
+ * The gate was never written for identities in the first place: its only conformance
33
+ * fixture is `error-extends-entity-field-type-mismatch`, a `field.uuid` extending a
34
+ * `field.string`. For a FIELD, subtype IS the datatype and inheriting across it is
35
+ * incoherent; for an identity, subtype is a ROLE. A field-shape rule was generalized onto
36
+ * a role axis without a fixture ever exercising it.
37
+ *
38
+ * `identity.reference` is excluded on both sides: a foreign key is not unique, so it can
39
+ * never back a borrowed key — and a set-membership test says that once, rather than
40
+ * enumerating the legal pairs.
41
+ *
42
+ * EXPORTED because there are two doors: this module's deferred resolution and
43
+ * `parser-core`'s eager check. They had independent copies of the boolean, so a change to
44
+ * one silently left the other enforcing the old rule on whichever path a given loader
45
+ * configuration takes.
46
+ */
47
+ export declare function extendsTargetCompatible(node: MetaData, target: MetaData): boolean;
48
+ /**
49
+ * The one wording for `ERR_EXTENDS_TARGET_MISMATCH`, shared by both doors and mirrored in
50
+ * the other three ports. States the exception, so an author who hits it on a `field` is
51
+ * not left wondering why their identity case was allowed.
52
+ */
53
+ export declare const EXTENDS_TARGET_MISMATCH_RULE: string;
21
54
  /**
22
55
  * Resolve a single super reference string against a tree.
23
56
  *