@metaobjectsdev/metadata 0.14.1 → 0.15.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 (142) hide show
  1. package/dist/attr-schema-validate.js +22 -1
  2. package/dist/attr-schema-validate.js.map +1 -1
  3. package/dist/core/attr/meta-attr.d.ts.map +1 -1
  4. package/dist/core/attr/meta-attr.js +2 -0
  5. package/dist/core/attr/meta-attr.js.map +1 -1
  6. package/dist/core/field/field-constants.d.ts +26 -1
  7. package/dist/core/field/field-constants.d.ts.map +1 -1
  8. package/dist/core/field/field-constants.js +29 -0
  9. package/dist/core/field/field-constants.js.map +1 -1
  10. package/dist/core/field/field-definition.embedded.d.ts.map +1 -1
  11. package/dist/core/field/field-definition.embedded.js +28 -0
  12. package/dist/core/field/field-definition.embedded.js.map +1 -1
  13. package/dist/core/field/meta-field.d.ts +12 -3
  14. package/dist/core/field/meta-field.d.ts.map +1 -1
  15. package/dist/core/field/meta-field.js +33 -15
  16. package/dist/core/field/meta-field.js.map +1 -1
  17. package/dist/core/field/validate-field-readonly.d.ts.map +1 -1
  18. package/dist/core/field/validate-field-readonly.js +15 -3
  19. package/dist/core/field/validate-field-readonly.js.map +1 -1
  20. package/dist/core/identity/meta-identity.d.ts +2 -0
  21. package/dist/core/identity/meta-identity.d.ts.map +1 -1
  22. package/dist/core/identity/meta-identity.js +16 -8
  23. package/dist/core/identity/meta-identity.js.map +1 -1
  24. package/dist/core/identity/validate-identity-passthrough.d.ts.map +1 -1
  25. package/dist/core/identity/validate-identity-passthrough.js +9 -1
  26. package/dist/core/identity/validate-identity-passthrough.js.map +1 -1
  27. package/dist/core/object/meta-object.d.ts.map +1 -1
  28. package/dist/core/object/meta-object.js +15 -5
  29. package/dist/core/object/meta-object.js.map +1 -1
  30. package/dist/core/object/validate-discriminator.d.ts.map +1 -1
  31. package/dist/core/object/validate-discriminator.js +17 -2
  32. package/dist/core/object/validate-discriminator.js.map +1 -1
  33. package/dist/core/query/query-constants.d.ts.map +1 -1
  34. package/dist/core/query/query-constants.js +7 -1
  35. package/dist/core/query/query-constants.js.map +1 -1
  36. package/dist/core/relationship/meta-relationship.d.ts.map +1 -1
  37. package/dist/core/relationship/meta-relationship.js +9 -7
  38. package/dist/core/relationship/meta-relationship.js.map +1 -1
  39. package/dist/core/validator/meta-validator.d.ts.map +1 -1
  40. package/dist/core/validator/meta-validator.js +6 -3
  41. package/dist/core/validator/meta-validator.js.map +1 -1
  42. package/dist/core-types.js +2 -2
  43. package/dist/core-types.js.map +1 -1
  44. package/dist/loader/meta-data-loader.d.ts.map +1 -1
  45. package/dist/loader/meta-data-loader.js +4 -0
  46. package/dist/loader/meta-data-loader.js.map +1 -1
  47. package/dist/loader/validation-passes.d.ts.map +1 -1
  48. package/dist/loader/validation-passes.js +97 -39
  49. package/dist/loader/validation-passes.js.map +1 -1
  50. package/dist/loader/validation-registry.d.ts.map +1 -1
  51. package/dist/loader/validation-registry.js +7 -2
  52. package/dist/loader/validation-registry.js.map +1 -1
  53. package/dist/naming.d.ts.map +1 -1
  54. package/dist/naming.js +6 -3
  55. package/dist/naming.js.map +1 -1
  56. package/dist/object-serializer.d.ts.map +1 -1
  57. package/dist/object-serializer.js +6 -2
  58. package/dist/object-serializer.js.map +1 -1
  59. package/dist/parser-core.js +5 -0
  60. package/dist/parser-core.js.map +1 -1
  61. package/dist/persistence/db/db-constants.d.ts +20 -9
  62. package/dist/persistence/db/db-constants.d.ts.map +1 -1
  63. package/dist/persistence/db/db-constants.js +20 -15
  64. package/dist/persistence/db/db-constants.js.map +1 -1
  65. package/dist/persistence/db/db-definition.embedded.d.ts.map +1 -1
  66. package/dist/persistence/db/db-definition.embedded.js +19 -1
  67. package/dist/persistence/db/db-definition.embedded.js.map +1 -1
  68. package/dist/persistence/origin/meta-origin.d.ts.map +1 -1
  69. package/dist/persistence/origin/meta-origin.js +6 -0
  70. package/dist/persistence/origin/meta-origin.js.map +1 -1
  71. package/dist/persistence/source/meta-source.d.ts.map +1 -1
  72. package/dist/persistence/source/meta-source.js +11 -5
  73. package/dist/persistence/source/meta-source.js.map +1 -1
  74. package/dist/persistence/source/validate-source-parameter-ref.d.ts.map +1 -1
  75. package/dist/persistence/source/validate-source-parameter-ref.js +14 -5
  76. package/dist/persistence/source/validate-source-parameter-ref.js.map +1 -1
  77. package/dist/persistence/source/validate-source-physical-names.d.ts.map +1 -1
  78. package/dist/persistence/source/validate-source-physical-names.js +9 -1
  79. package/dist/persistence/source/validate-source-physical-names.js.map +1 -1
  80. package/dist/persistence/source/validate-source-roles.d.ts.map +1 -1
  81. package/dist/persistence/source/validate-source-roles.js +5 -1
  82. package/dist/persistence/source/validate-source-roles.js.map +1 -1
  83. package/dist/presentation/layout/meta-layout.d.ts.map +1 -1
  84. package/dist/presentation/layout/meta-layout.js +12 -6
  85. package/dist/presentation/layout/meta-layout.js.map +1 -1
  86. package/dist/registry-manifest.d.ts +12 -2
  87. package/dist/registry-manifest.d.ts.map +1 -1
  88. package/dist/registry-manifest.js +20 -8
  89. package/dist/registry-manifest.js.map +1 -1
  90. package/dist/serializer-json.d.ts.map +1 -1
  91. package/dist/serializer-json.js +8 -1
  92. package/dist/serializer-json.js.map +1 -1
  93. package/dist/shared/meta-data.d.ts +14 -0
  94. package/dist/shared/meta-data.d.ts.map +1 -1
  95. package/dist/shared/meta-data.js +30 -0
  96. package/dist/shared/meta-data.js.map +1 -1
  97. package/dist/shared/meta-root.d.ts.map +1 -1
  98. package/dist/shared/meta-root.js +8 -2
  99. package/dist/shared/meta-root.js.map +1 -1
  100. package/dist/subtype-rules.js +4 -3
  101. package/dist/subtype-rules.js.map +1 -1
  102. package/dist/super-resolve.d.ts.map +1 -1
  103. package/dist/super-resolve.js +3 -0
  104. package/dist/super-resolve.js.map +1 -1
  105. package/dist/validate-max-occurs.js +5 -0
  106. package/dist/validate-max-occurs.js.map +1 -1
  107. package/package.json +1 -1
  108. package/src/attr-schema-validate.ts +24 -1
  109. package/src/core/attr/meta-attr.ts +2 -0
  110. package/src/core/field/field-constants.ts +34 -0
  111. package/src/core/field/field-definition.embedded.ts +28 -0
  112. package/src/core/field/meta-field.ts +30 -12
  113. package/src/core/field/validate-field-readonly.ts +15 -3
  114. package/src/core/identity/meta-identity.ts +16 -8
  115. package/src/core/identity/validate-identity-passthrough.ts +9 -1
  116. package/src/core/object/meta-object.ts +5 -0
  117. package/src/core/object/validate-discriminator.ts +17 -2
  118. package/src/core/query/query-constants.ts +7 -1
  119. package/src/core/relationship/meta-relationship.ts +9 -7
  120. package/src/core/validator/meta-validator.ts +6 -3
  121. package/src/core-types.ts +2 -2
  122. package/src/loader/meta-data-loader.ts +4 -0
  123. package/src/loader/validation-passes.ts +97 -39
  124. package/src/loader/validation-registry.ts +7 -2
  125. package/src/naming.ts +6 -3
  126. package/src/object-serializer.ts +6 -2
  127. package/src/parser-core.ts +5 -0
  128. package/src/persistence/db/db-constants.ts +20 -15
  129. package/src/persistence/db/db-definition.embedded.ts +19 -1
  130. package/src/persistence/origin/meta-origin.ts +6 -0
  131. package/src/persistence/source/meta-source.ts +11 -5
  132. package/src/persistence/source/validate-source-parameter-ref.ts +14 -5
  133. package/src/persistence/source/validate-source-physical-names.ts +9 -1
  134. package/src/persistence/source/validate-source-roles.ts +5 -1
  135. package/src/presentation/layout/meta-layout.ts +12 -6
  136. package/src/registry-manifest.ts +28 -8
  137. package/src/serializer-json.ts +8 -1
  138. package/src/shared/meta-data.ts +30 -0
  139. package/src/shared/meta-root.ts +4 -0
  140. package/src/subtype-rules.ts +4 -3
  141. package/src/super-resolve.ts +3 -0
  142. package/src/validate-max-occurs.ts +5 -0
@@ -19,10 +19,14 @@ import { FIELD_ATTR_READ_ONLY } from "./field-constants.js";
19
19
  export function validateFieldReadOnly(root) {
20
20
  const errors = [];
21
21
  const warnings = [];
22
- for (const obj of root.ownChildren().filter((c) => c.type === TYPE_OBJECT)) {
22
+ // ADR-0039: root has no super; children()==ownChildren() but resolving is the default.
23
+ for (const obj of root.children().filter((c) => c.type === TYPE_OBJECT)) {
23
24
  const isValueObject = obj.subType === OBJECT_SUBTYPE_VALUE;
24
25
  // 1) WARN_READONLY_VALUE_OBJECT — any @readOnly field child of an object.value.
25
26
  if (isValueObject) {
27
+ // ADR-0039: own — warns on @readOnly DECLARED on this value's own fields
28
+ // (readOnlyFlag reads the explicit own flag; the FR-013 read-only checks
29
+ // are own-vs-super comparisons by design).
26
30
  for (const child of obj.ownChildren()) {
27
31
  if (child.type === TYPE_FIELD && readOnlyFlag(child) === true) {
28
32
  warnings.push({
@@ -38,6 +42,8 @@ export function validateFieldReadOnly(root) {
38
42
  }
39
43
  // 2) ERR_READONLY_DOWNGRADE — read-only-ness can only be upgraded across
40
44
  // extends. Compare own field vs. inherited field's effective @readOnly.
45
+ // ADR-0039: own — the downgrade check compares this object's OWN explicit
46
+ // @readOnly:false against the inherited effective value (own-vs-super by design).
41
47
  for (const ownField of obj.ownChildren().filter((c) => c.type === TYPE_FIELD)) {
42
48
  const ownVal = readOnlyFlag(ownField);
43
49
  if (ownVal !== false)
@@ -71,6 +77,9 @@ export function validateFieldReadOnly(root) {
71
77
  /** Read the explicit @readOnly value from a field's own attrs. Returns
72
78
  * true / false when explicitly set, undefined when absent. */
73
79
  function readOnlyFlag(field) {
80
+ // ADR-0039: own — the FR-013 downgrade rule needs the EXPLICIT own @readOnly on
81
+ // THIS node (detecting an own :false against an inherited :true); resolving would
82
+ // mask the downgrade. Deliberate own-vs-super comparison.
74
83
  const v = field.ownAttr(FIELD_ATTR_READ_ONLY);
75
84
  if (typeof v === "boolean")
76
85
  return v;
@@ -81,6 +90,8 @@ function readOnlyFlag(field) {
81
90
  function inheritedField(obj, name) {
82
91
  let cursor = obj.superResolved;
83
92
  while (cursor !== undefined) {
93
+ // ADR-0039: own — super-chain walk reading each level's OWN fields to find the
94
+ // declaring node (the FR-013 comparison needs the declaring node's own flag).
84
95
  const f = cursor.ownChildren().find((c) => c.type === TYPE_FIELD && c.name === name);
85
96
  if (f !== undefined)
86
97
  return f;
@@ -97,10 +108,11 @@ function primaryAssignedFieldNames(obj) {
97
108
  continue;
98
109
  if (id.subType !== IDENTITY_SUBTYPE_PRIMARY)
99
110
  continue;
100
- const gen = id.ownAttr(IDENTITY_ATTR_GENERATION);
111
+ // ADR-0039: resolving — an identity may inherit @generation / @fields via extends.
112
+ const gen = id.attr(IDENTITY_ATTR_GENERATION);
101
113
  if (gen !== GENERATION_ASSIGNED)
102
114
  continue;
103
- const fields = id.ownAttr(IDENTITY_ATTR_FIELDS);
115
+ const fields = id.attr(IDENTITY_ATTR_FIELDS);
104
116
  if (Array.isArray(fields)) {
105
117
  for (const fName of fields) {
106
118
  if (typeof fName === "string")
@@ -1 +1 @@
1
- {"version":3,"file":"validate-field-readonly.js","sourceRoot":"","sources":["../../../src/core/field/validate-field-readonly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-field-readonly.js","sourceRoot":"","sources":["../../../src/core/field/validate-field-readonly.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,12 @@ import type { MetaRoot } from "../../shared/meta-root.js";
3
3
  /** Strongly-typed identity generation strategies. */
4
4
  export type IdentityGeneration = "increment" | "uuid" | "assigned";
5
5
  export declare class MetaIdentity extends MetaData {
6
+ /** ADR-0039: resolving — @fields may be inherited via extends. */
6
7
  get fields(): string[];
7
8
  /**
8
9
  * Whether the identity enforces uniqueness.
9
10
  * Defaults to true; explicit `@unique: false` makes it a non-unique index.
11
+ * ADR-0039: resolving.
10
12
  */
11
13
  get unique(): boolean;
12
14
  isPrimary(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"meta-identity.d.ts","sourceRoot":"","sources":["../../../src/core/identity/meta-identity.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAarD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,qDAAqD;AACrD,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnE,qBAAa,YAAa,SAAQ,QAAQ;IACxC,IAAI,MAAM,IAAI,MAAM,EAAE,CAGrB;IAED;;;OAGG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,OAAO;IAItB,WAAW,IAAI,OAAO;IAItB,WAAW,IAAI,OAAO;CAGvB;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,IAAI,UAAU,IAAI,kBAAkB,GAAG,SAAS,CAG/C;CACF;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;CAAG;AAE1D;;;;;;;;;;GAUG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,8CAA8C;IAC9C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAGtC;IAED,4EAA4E;IAC5E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAKrC;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;;;;OAMG;IACH,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;IAED,oGAAoG;IACpG,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;IAED;;;;OAIG;IACH,IAAI,YAAY,IAAI,MAAM,EAAE,CAU3B;IAED;;;;;;;;OAQG;IACH,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS;CAsB1D"}
1
+ {"version":3,"file":"meta-identity.d.ts","sourceRoot":"","sources":["../../../src/core/identity/meta-identity.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAarD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAE1D,qDAAqD;AACrD,MAAM,MAAM,kBAAkB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAEnE,qBAAa,YAAa,SAAQ,QAAQ;IACxC,kEAAkE;IAClE,IAAI,MAAM,IAAI,MAAM,EAAE,CAGrB;IAED;;;;OAIG;IACH,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,SAAS,IAAI,OAAO;IAIpB,WAAW,IAAI,OAAO;IAItB,WAAW,IAAI,OAAO;IAItB,WAAW,IAAI,OAAO;CAGvB;AAED;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,YAAY;IACnD,IAAI,UAAU,IAAI,kBAAkB,GAAG,SAAS,CAI/C;CACF;AAED;;;GAGG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;CAAG;AAE1D;;;;;;;;;;GAUG;AACH,qBAAa,qBAAsB,SAAQ,YAAY;IACrD,8CAA8C;IAC9C,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAItC;IAED,4EAA4E;IAC5E,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAKrC;IAED;;;;;;OAMG;IACH,IAAI,OAAO,IAAI,OAAO,CAGrB;IAED;;;;;;OAMG;IACH,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAIjC;IAED,oGAAoG;IACpG,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAIjC;IAED;;;;OAIG;IACH,IAAI,YAAY,IAAI,MAAM,EAAE,CAU3B;IAED;;;;;;;;OAQG;IACH,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS;CAuB1D"}
@@ -5,16 +5,18 @@
5
5
  import { MetaData } from "../../shared/meta-data.js";
6
6
  import { IDENTITY_SUBTYPE_PRIMARY, IDENTITY_SUBTYPE_SECONDARY, IDENTITY_SUBTYPE_REFERENCE, IDENTITY_ATTR_FIELDS, IDENTITY_ATTR_GENERATION, IDENTITY_ATTR_UNIQUE, IDENTITY_REFERENCE_ATTR_REFERENCES, IDENTITY_REFERENCE_ATTR_ENFORCE, IDENTITY_REFERENCE_ATTR_ON_DELETE, IDENTITY_REFERENCE_ATTR_ON_UPDATE, } from "./identity-constants.js";
7
7
  export class MetaIdentity extends MetaData {
8
+ /** ADR-0039: resolving — @fields may be inherited via extends. */
8
9
  get fields() {
9
- const f = this.ownAttr(IDENTITY_ATTR_FIELDS);
10
+ const f = this.attr(IDENTITY_ATTR_FIELDS);
10
11
  return Array.isArray(f) ? f : [];
11
12
  }
12
13
  /**
13
14
  * Whether the identity enforces uniqueness.
14
15
  * Defaults to true; explicit `@unique: false` makes it a non-unique index.
16
+ * ADR-0039: resolving.
15
17
  */
16
18
  get unique() {
17
- return this.ownAttr(IDENTITY_ATTR_UNIQUE) !== false;
19
+ return this.attr(IDENTITY_ATTR_UNIQUE) !== false;
18
20
  }
19
21
  isPrimary() {
20
22
  return this.subType === IDENTITY_SUBTYPE_PRIMARY;
@@ -35,7 +37,8 @@ export class MetaIdentity extends MetaData {
35
37
  */
36
38
  export class MetaPrimaryIdentity extends MetaIdentity {
37
39
  get generation() {
38
- const v = this.ownAttr(IDENTITY_ATTR_GENERATION);
40
+ // ADR-0039: resolving — @generation may be inherited via extends.
41
+ const v = this.attr(IDENTITY_ATTR_GENERATION);
39
42
  return typeof v === "string" ? v : undefined;
40
43
  }
41
44
  }
@@ -59,7 +62,8 @@ export class MetaSecondaryIdentity extends MetaIdentity {
59
62
  export class MetaReferenceIdentity extends MetaIdentity {
60
63
  /** Raw `@references` attr value, unparsed. */
61
64
  get referencesRaw() {
62
- const v = this.ownAttr(IDENTITY_REFERENCE_ATTR_REFERENCES);
65
+ // ADR-0039: resolving — @references may be inherited via extends.
66
+ const v = this.attr(IDENTITY_REFERENCE_ATTR_REFERENCES);
63
67
  return typeof v === "string" ? v : undefined;
64
68
  }
65
69
  /** Target entity name (the bit before the dot, or the whole bare value). */
@@ -78,7 +82,8 @@ export class MetaReferenceIdentity extends MetaIdentity {
78
82
  * block and projection JOIN inference are unaffected.
79
83
  */
80
84
  get enforce() {
81
- return this.ownAttr(IDENTITY_REFERENCE_ATTR_ENFORCE) !== false;
85
+ // ADR-0039: resolving — @enforce may be inherited via extends.
86
+ return this.attr(IDENTITY_REFERENCE_ATTR_ENFORCE) !== false;
82
87
  }
83
88
  /**
84
89
  * Referential action on parent delete, declared directly on the FK-defining
@@ -88,12 +93,14 @@ export class MetaReferenceIdentity extends MetaIdentity {
88
93
  * declared here too rather than only on a sibling relationship node.
89
94
  */
90
95
  get onDelete() {
91
- const v = this.ownAttr(IDENTITY_REFERENCE_ATTR_ON_DELETE);
96
+ // ADR-0039: resolving — @onDelete may be inherited via extends.
97
+ const v = this.attr(IDENTITY_REFERENCE_ATTR_ON_DELETE);
92
98
  return typeof v === "string" && v !== "" ? v : undefined;
93
99
  }
94
100
  /** Referential action on key update, declared directly on the reference. Undefined when not set. */
95
101
  get onUpdate() {
96
- const v = this.ownAttr(IDENTITY_REFERENCE_ATTR_ON_UPDATE);
102
+ // ADR-0039: resolving — @onUpdate may be inherited via extends.
103
+ const v = this.attr(IDENTITY_REFERENCE_ATTR_ON_UPDATE);
97
104
  return typeof v === "string" && v !== "" ? v : undefined;
98
105
  }
99
106
  /**
@@ -141,7 +148,8 @@ export class MetaReferenceIdentity extends MetaIdentity {
141
148
  if (!targetObj)
142
149
  return undefined;
143
150
  const primary = targetObj.primaryIdentity();
144
- const fields = primary?.ownAttr(IDENTITY_ATTR_FIELDS);
151
+ // ADR-0039: resolving — the target's @fields may be inherited via extends.
152
+ const fields = primary?.attr(IDENTITY_ATTR_FIELDS);
145
153
  if (typeof fields === "string")
146
154
  return fields.split(",")[0].trim();
147
155
  if (Array.isArray(fields) && fields.length > 0)
@@ -1 +1 @@
1
- {"version":3,"file":"meta-identity.js","sourceRoot":"","sources":["../../../src/core/identity/meta-identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-identity.js","sourceRoot":"","sources":["../../../src/core/identity/meta-identity.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-identity-passthrough.d.ts","sourceRoot":"","sources":["../../../src/core/identity/validate-identity-passthrough.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK7C;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAE1E;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAEhF;AAcD,uEAAuE;AACvE,MAAM,WAAW,6BAA6B;IAC5C,kDAAkD;IAClD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,gFAAgF;IAChF,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;IAClC,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,GACjB,6BAA6B,GAAG,SAAS,CA6B3C;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAI/E;AAeD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,CA4DxE"}
1
+ {"version":3,"file":"validate-identity-passthrough.d.ts","sourceRoot":"","sources":["../../../src/core/identity/validate-identity-passthrough.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAK7C;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAK1E;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAEhF;AAcD,uEAAuE;AACvE,MAAM,WAAW,6BAA6B;IAC5C,kDAAkD;IAClD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,gFAAgF;IAChF,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;IAClC,sEAAsE;IACtE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,QAAQ,GACjB,6BAA6B,GAAG,SAAS,CA+B3C;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,EAAE,GAAG,SAAS,CAI/E;AAeD;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,CA+DxE"}
@@ -27,6 +27,9 @@ import { IDENTITY_ATTR_FIELDS } from "./identity-constants.js";
27
27
  * undefined when the identity declares no own @fields (the pass-through case).
28
28
  */
29
29
  export function identityOwnFields(identity) {
30
+ // ADR-0039: own — the OWN @fields is read deliberately (paired with
31
+ // identityEffectiveFields below) to detect an explicit author-declared @fields
32
+ // that disagrees with the computed pass-through key.
30
33
  return normalizeFields(identity.ownAttr(IDENTITY_ATTR_FIELDS));
31
34
  }
32
35
  /** Normalize an identity's EFFECTIVE @fields attr (inherits through extends). */
@@ -78,6 +81,8 @@ export function resolveIdentityPassthrough(identity) {
78
81
  continue;
79
82
  }
80
83
  const local = owner
84
+ // ADR-0039: own — a pass-through field must be LOCALLY declared on the
85
+ // projection (it carries the extends ref reaching the entity field).
81
86
  .ownChildren()
82
87
  .find((c) => c.type === TYPE_FIELD && extendsChainReaches(c, entityField));
83
88
  if (local === undefined) {
@@ -117,9 +122,12 @@ function arraysEqual(a, b) {
117
122
  */
118
123
  export function validateIdentityPassthrough(root) {
119
124
  const errors = [];
125
+ // ADR-0039: root has no super; children()==ownChildren() but resolving is the default.
120
126
  for (const obj of root
121
- .ownChildren()
127
+ .children()
122
128
  .filter((c) => c.type === TYPE_OBJECT && c.subType === OBJECT_SUBTYPE_PROJECTION)) {
129
+ // ADR-0039: own — validates the projection's OWN-declared identities (the
130
+ // pass-through subjects; an inherited identity was validated on its declarer).
123
131
  for (const identity of obj
124
132
  .ownChildren()
125
133
  .filter((c) => c.type === TYPE_IDENTITY)) {
@@ -1 +1 @@
1
- {"version":3,"file":"validate-identity-passthrough.js","sourceRoot":"","sources":["../../../src/core/identity/validate-identity-passthrough.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-identity-passthrough.js","sourceRoot":"","sources":["../../../src/core/identity/validate-identity-passthrough.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"meta-object.d.ts","sourceRoot":"","sources":["../../../src/core/object/meta-object.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAkBrD,OAAO,EACL,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,qBAAa,UAAW,SAAQ,QAAQ;IACtC,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAchC;IAED,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;IAIlB,0DAA0D;IAC1D,MAAM,IAAI,SAAS,EAAE;IAMrB,kGAAkG;IAClG,SAAS,IAAI,SAAS,EAAE;IAMxB,8DAA8D;IAC9D,UAAU,IAAI,YAAY,EAAE;IAM5B,gDAAgD;IAChD,aAAa,IAAI,YAAY,EAAE;IAM/B,mDAAmD;IACnD,eAAe,IAAI,YAAY,GAAG,SAAS;IAM3C,4BAA4B;IAC5B,mBAAmB,IAAI,YAAY,EAAE;IAMrC,iFAAiF;IACjF,mBAAmB,IAAI,qBAAqB,EAAE;IAQ9C,iEAAiE;IACjE,aAAa,IAAI,gBAAgB,EAAE;IAMnC,mDAAmD;IACnD,gBAAgB,IAAI,gBAAgB,EAAE;IAMtC,8DAA8D;IAC9D,UAAU,IAAI,aAAa,EAAE;IAM7B,+GAA+G;IAC/G,aAAa,IAAI,aAAa,EAAE;IAMhC,2DAA2D;IAC3D,OAAO,IAAI,UAAU,EAAE;IAMvB,6CAA6C;IAC7C,UAAU,IAAI,UAAU,EAAE;IAM1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAM9C,6EAA6E;IAC7E,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIjD;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,QAAQ,GAAE,mBAAgD,GAAG,MAAM;CAWhF"}
1
+ {"version":3,"file":"meta-object.d.ts","sourceRoot":"","sources":["../../../src/core/object/meta-object.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAkBrD,OAAO,EACL,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AAMpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,qBAAa,UAAW,SAAQ,QAAQ;IACtC,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAchC;IAED,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;IAIlB,0DAA0D;IAC1D,MAAM,IAAI,SAAS,EAAE;IAMrB,kGAAkG;IAClG,SAAS,IAAI,SAAS,EAAE;IAOxB,8DAA8D;IAC9D,UAAU,IAAI,YAAY,EAAE;IAM5B,gDAAgD;IAChD,aAAa,IAAI,YAAY,EAAE;IAO/B,mDAAmD;IACnD,eAAe,IAAI,YAAY,GAAG,SAAS;IAM3C,4BAA4B;IAC5B,mBAAmB,IAAI,YAAY,EAAE;IAMrC,iFAAiF;IACjF,mBAAmB,IAAI,qBAAqB,EAAE;IAQ9C,iEAAiE;IACjE,aAAa,IAAI,gBAAgB,EAAE;IAMnC,mDAAmD;IACnD,gBAAgB,IAAI,gBAAgB,EAAE;IAOtC,8DAA8D;IAC9D,UAAU,IAAI,aAAa,EAAE;IAM7B,+GAA+G;IAC/G,aAAa,IAAI,aAAa,EAAE;IAOhC,2DAA2D;IAC3D,OAAO,IAAI,UAAU,EAAE;IAMvB,6CAA6C;IAC7C,UAAU,IAAI,UAAU,EAAE;IAO1B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAM9C,6EAA6E;IAC7E,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAIjD;;;;;;;;;;;;;;;;OAgBG;IACH,WAAW,CAAC,QAAQ,GAAE,mBAAgD,GAAG,MAAM;CAWhF"}
@@ -37,7 +37,9 @@ export class MetaObject extends MetaData {
37
37
  }
38
38
  /** Own fields only — excludes fields inherited via extends. Java parity: getMetaFields(false). */
39
39
  ownFields() {
40
- return this.cached("ownFields", () => this.ownChildren().filter((c) => c.type === TYPE_FIELD));
40
+ return this.cached("ownFields", () =>
41
+ // ADR-0039: own-accessor definition — the deliberate own-only API twin of fields().
42
+ this.ownChildren().filter((c) => c.type === TYPE_FIELD));
41
43
  }
42
44
  /** All effective identities (own + inherited via extends). */
43
45
  identities() {
@@ -45,7 +47,9 @@ export class MetaObject extends MetaData {
45
47
  }
46
48
  /** Own identities only — excludes inherited. */
47
49
  ownIdentities() {
48
- return this.cached("ownIdentities", () => this.ownChildren().filter((c) => c.type === TYPE_IDENTITY));
50
+ return this.cached("ownIdentities", () =>
51
+ // ADR-0039: own-accessor definition — the deliberate own-only API twin of identities().
52
+ this.ownChildren().filter((c) => c.type === TYPE_IDENTITY));
49
53
  }
50
54
  /** Returns the single primary identity, if any. */
51
55
  primaryIdentity() {
@@ -65,7 +69,9 @@ export class MetaObject extends MetaData {
65
69
  }
66
70
  /** Own relationships only — excludes inherited. */
67
71
  ownRelationships() {
68
- return this.cached("ownRelationships", () => this.ownChildren().filter((c) => c.type === TYPE_RELATIONSHIP));
72
+ return this.cached("ownRelationships", () =>
73
+ // ADR-0039: own-accessor definition — the deliberate own-only API twin of relationships().
74
+ this.ownChildren().filter((c) => c.type === TYPE_RELATIONSHIP));
69
75
  }
70
76
  /** All effective validators (own + inherited via extends). */
71
77
  validators() {
@@ -73,7 +79,9 @@ export class MetaObject extends MetaData {
73
79
  }
74
80
  /** Own validators only — excludes validators inherited via extends. Java parity: getChildren(Class, false). */
75
81
  ownValidators() {
76
- return this.cached("ownValidators", () => this.ownChildren().filter((c) => c.type === TYPE_VALIDATOR));
82
+ return this.cached("ownValidators", () =>
83
+ // ADR-0039: own-accessor definition — the deliberate own-only API twin of validators().
84
+ this.ownChildren().filter((c) => c.type === TYPE_VALIDATOR));
77
85
  }
78
86
  /** All effective layouts (own + inherited via extends). */
79
87
  layouts() {
@@ -81,7 +89,9 @@ export class MetaObject extends MetaData {
81
89
  }
82
90
  /** Own layouts only — excludes inherited. */
83
91
  ownLayouts() {
84
- return this.cached("ownLayouts", () => this.ownChildren().filter((c) => c.type === TYPE_LAYOUT));
92
+ return this.cached("ownLayouts", () =>
93
+ // ADR-0039: own-accessor definition — the deliberate own-only API twin of layouts().
94
+ this.ownChildren().filter((c) => c.type === TYPE_LAYOUT));
85
95
  }
86
96
  findField(name) {
87
97
  return this.cached(`findField:${name}`, () => this.fields().find((f) => f.name === name));
@@ -1 +1 @@
1
- {"version":3,"file":"meta-object.js","sourceRoot":"","sources":["../../../src/core/object/meta-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"meta-object.js","sourceRoot":"","sources":["../../../src/core/object/meta-object.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"validate-discriminator.d.ts","sourceRoot":"","sources":["../../../src/core/object/validate-discriminator.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAoB7C,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,CAsHlE"}
1
+ {"version":3,"file":"validate-discriminator.d.ts","sourceRoot":"","sources":["../../../src/core/object/validate-discriminator.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAoB7C,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU,EAAE,CAgIlE"}
@@ -25,11 +25,15 @@ const NUMERIC_DISCRIMINATOR_SUBTYPES = new Set([
25
25
  ]);
26
26
  export function validateDiscriminator(root) {
27
27
  const errors = [];
28
+ // ADR-0039: root has no super; children()==ownChildren() but resolving is the default.
28
29
  const entities = root
29
- .ownChildren()
30
+ .children()
30
31
  .filter((c) => c.type === TYPE_OBJECT && c.subType === OBJECT_SUBTYPE_ENTITY);
31
32
  // Pass 1: @discriminator on bases — name resolution (own + inherited fields).
32
33
  for (const obj of entities) {
34
+ // ADR-0039: own — @discriminator is declared on the HIERARCHY ROOT only; reading
35
+ // it own distinguishes a root from a subtype (a subtype inherits it, but here we
36
+ // want the entity that DECLARES it). findDiscriminatorRoot walks up separately.
33
37
  const disc = obj.ownAttr(OBJECT_ATTR_DISCRIMINATOR);
34
38
  if (typeof disc !== "string" || disc === "")
35
39
  continue;
@@ -41,6 +45,8 @@ export function validateDiscriminator(root) {
41
45
  }
42
46
  const bindingsByRoot = new Map();
43
47
  for (const obj of entities) {
48
+ // ADR-0039: own — @discriminatorValue is per-subtype; each concrete entity
49
+ // declares its OWN. Reading own detects THIS subtype's declared value.
44
50
  const value = obj.ownAttr(OBJECT_ATTR_DISCRIMINATOR_VALUE);
45
51
  if (typeof value !== "string" || value === "")
46
52
  continue;
@@ -52,7 +58,9 @@ export function validateDiscriminator(root) {
52
58
  continue; // root's own ERR_DISCRIMINATOR_FIELD_NOT_FOUND already fires
53
59
  // Type-match check.
54
60
  if (field.subType === FIELD_SUBTYPE_ENUM) {
55
- const enumValues = field.ownAttr(FIELD_ATTR_VALUES);
61
+ // ADR-0039: resolving — the discriminator field may inherit @values from an
62
+ // abstract enum via extends.
63
+ const enumValues = field.attr(FIELD_ATTR_VALUES);
56
64
  const list = Array.isArray(enumValues) ? enumValues.map(String) : [];
57
65
  if (!list.includes(value)) {
58
66
  errors.push(new ParseError(`object.entity "${obj.name}" @discriminatorValue: "${value}" is not a member of the ` +
@@ -95,6 +103,8 @@ export function validateDiscriminator(root) {
95
103
  for (const obj of entities) {
96
104
  if (obj.isAbstract === true)
97
105
  continue;
106
+ // ADR-0039: own — checks whether THIS entity declares its OWN value / its OWN
107
+ // @discriminator (a root). Resolving would inherit a parent's and mis-classify.
98
108
  if (typeof obj.ownAttr(OBJECT_ATTR_DISCRIMINATOR_VALUE) === "string")
99
109
  continue;
100
110
  if (typeof obj.ownAttr(OBJECT_ATTR_DISCRIMINATOR) === "string")
@@ -112,12 +122,15 @@ export function validateDiscriminator(root) {
112
122
  /** Find a field with the given name on `entity` — own first, then via the
113
123
  * resolved extends chain. Returns the declaring field node (own attrs intact). */
114
124
  function findFieldOnEntity(entity, name) {
125
+ // ADR-0039: own — extends-chain walk returning the DECLARING field node (own
126
+ // children at each level), so callers can read that node's own/effective attrs.
115
127
  for (const child of entity.ownChildren()) {
116
128
  if (child.type === TYPE_FIELD && child.name === name)
117
129
  return child;
118
130
  }
119
131
  let cursor = entity.superResolved;
120
132
  while (cursor !== undefined) {
133
+ // ADR-0039: own — super-chain walk reading each level's OWN fields.
121
134
  for (const child of cursor.ownChildren()) {
122
135
  if (child.type === TYPE_FIELD && child.name === name)
123
136
  return child;
@@ -132,6 +145,8 @@ function findFieldOnEntity(entity, name) {
132
145
  function findDiscriminatorRoot(entity) {
133
146
  let cursor = entity;
134
147
  while (cursor !== undefined) {
148
+ // ADR-0039: own — walks up to find the ancestor that DECLARES @discriminator
149
+ // (the hierarchy root); must read own to locate the physical declaration site.
135
150
  const v = cursor.ownAttr(OBJECT_ATTR_DISCRIMINATOR);
136
151
  if (typeof v === "string" && v !== "") {
137
152
  return { root: cursor, fieldName: v };
@@ -1 +1 @@
1
- {"version":3,"file":"validate-discriminator.js","sourceRoot":"","sources":["../../../src/core/object/validate-discriminator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate-discriminator.js","sourceRoot":"","sources":["../../../src/core/object/validate-discriminator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"query-constants.d.ts","sourceRoot":"","sources":["../../../src/core/query/query-constants.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,aAAa,QAAY,CAAC;AACvC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,aAAa,QAAY,CAAC;AACvC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,cAAc,SAAY,CAAC;AACxC,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAG1C,eAAO,MAAM,iBAAiB,OAAO,CAAC;AACtC,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAExC,eAAO,MAAM,UAAU,yEAGb,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC,CAkB/D,CAAC;AAEX,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAElE;AAOD,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,eAAO,MAAM,eAAe,SAAS,CAAC;AAEtC,eAAO,MAAM,iBAAiB,0BAA6C,CAAC;AAC5E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"query-constants.d.ts","sourceRoot":"","sources":["../../../src/core/query/query-constants.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,aAAa,QAAY,CAAC;AACvC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,aAAa,QAAY,CAAC;AACvC,eAAO,MAAM,YAAY,OAAY,CAAC;AACtC,eAAO,MAAM,cAAc,SAAY,CAAC;AACxC,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAG1C,eAAO,MAAM,iBAAiB,OAAO,CAAC;AACtC,eAAO,MAAM,kBAAkB,QAAQ,CAAC;AAExC,eAAO,MAAM,UAAU,yEAGb,CAAC;AACX,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,QAAQ,EAAE,CAAC,CAwB/D,CAAC;AAEX,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,QAAQ,EAAE,CAElE;AAOD,eAAO,MAAM,cAAc,QAAS,CAAC;AACrC,eAAO,MAAM,eAAe,SAAS,CAAC;AAEtC,eAAO,MAAM,iBAAiB,0BAA6C,CAAC;AAC5E,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FIELD_SUBTYPE_UUID, FIELD_SUBTYPE_CURRENCY, FIELD_SUBTYPE_ENUM } from "../field/field-constants.js";
1
+ import { FIELD_SUBTYPE_UUID, FIELD_SUBTYPE_CURRENCY, FIELD_SUBTYPE_ENUM, FIELD_SUBTYPE_URI, FIELD_SUBTYPE_INET } from "../field/field-constants.js";
2
2
  // Query concern constants — filter operators, sort order values.
3
3
  //
4
4
  // NOTE: `query` is NOT a metamodel node type — it has no subtype, schema, or
@@ -48,6 +48,12 @@ export const OPS_BY_SUBTYPE = {
48
48
  // uuid: identity-comparison ops only — no `like` (not free-text) and no
49
49
  // ordering (`gt`/`lt` are meaningless on a UUID).
50
50
  [FIELD_SUBTYPE_UUID]: [FILTER_OP_EQ, FILTER_OP_NE, FILTER_OP_IN, FILTER_OP_IS_NULL],
51
+ // uri: a URI string — free-text-comparable. Same op band as string (prefix
52
+ // matching with `like` is meaningful for URLs).
53
+ [FIELD_SUBTYPE_URI]: [FILTER_OP_EQ, FILTER_OP_NE, FILTER_OP_IN, FILTER_OP_LIKE, FILTER_OP_IS_NULL],
54
+ // inet: an IP address — identity-comparison ops only (no `like`; ordering
55
+ // gt/lt is not exposed). Same op band as uuid.
56
+ [FIELD_SUBTYPE_INET]: [FILTER_OP_EQ, FILTER_OP_NE, FILTER_OP_IN, FILTER_OP_IS_NULL],
51
57
  };
52
58
  export function opsForSubType(subType) {
53
59
  return OPS_BY_SUBTYPE[subType] ?? [];
@@ -1 +1 @@
1
- {"version":3,"file":"query-constants.js","sourceRoot":"","sources":["../../../src/core/query/query-constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-constants.js","sourceRoot":"","sources":["../../../src/core/query/query-constants.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"meta-relationship.d.ts","sourceRoot":"","sources":["../../../src/core/relationship/meta-relationship.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAWrD,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAGpC;IAED,6DAA6D;IAC7D,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAGlC;IAED,4DAA4D;IAC5D,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAGhC;IAED,+EAA+E;IAC/E,IAAI,cAAc,IAAI,MAAM,GAAG,SAAS,CAGvC;IAED,4EAA4E;IAC5E,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,6GAA6G;IAC7G,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;IAED,8FAA8F;IAC9F,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;CACF"}
1
+ {"version":3,"file":"meta-relationship.d.ts","sourceRoot":"","sources":["../../../src/core/relationship/meta-relationship.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAarD,qBAAa,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAGpC;IAED,6DAA6D;IAC7D,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAGlC;IAED,4DAA4D;IAC5D,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAGhC;IAED,+EAA+E;IAC/E,IAAI,cAAc,IAAI,MAAM,GAAG,SAAS,CAGvC;IAED,4EAA4E;IAC5E,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,6GAA6G;IAC7G,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;IAED,8FAA8F;IAC9F,IAAI,QAAQ,IAAI,MAAM,GAAG,SAAS,CAGjC;CACF"}
@@ -3,38 +3,40 @@
3
3
  // Extends MetaData directly: no model wrapper, no metaOf() indirection.
4
4
  import { MetaData } from "../../shared/meta-data.js";
5
5
  import { RELATIONSHIP_ATTR_CARDINALITY, RELATIONSHIP_ATTR_OBJECT_REF, RELATIONSHIP_ATTR_THROUGH, RELATIONSHIP_ATTR_SOURCE_REF_FIELD, RELATIONSHIP_ATTR_SYMMETRIC, RELATIONSHIP_ATTR_ON_DELETE, RELATIONSHIP_ATTR_ON_UPDATE, } from "./relationship-constants.js";
6
+ // ADR-0039: every getter below uses the RESOLVING attr() accessor — a relationship
7
+ // attr may be inherited from an abstract base via extends.
6
8
  export class MetaRelationship extends MetaData {
7
9
  get cardinality() {
8
- const v = this.ownAttr(RELATIONSHIP_ATTR_CARDINALITY);
10
+ const v = this.attr(RELATIONSHIP_ATTR_CARDINALITY);
9
11
  return typeof v === "string" ? v : undefined;
10
12
  }
11
13
  /** FQN of the target object (e.g., "acme::vehicle::Car"). */
12
14
  get objectRef() {
13
- const v = this.ownAttr(RELATIONSHIP_ATTR_OBJECT_REF);
15
+ const v = this.attr(RELATIONSHIP_ATTR_OBJECT_REF);
14
16
  return typeof v === "string" ? v : undefined;
15
17
  }
16
18
  /** Junction (through) entity name for M:N relationships. */
17
19
  get through() {
18
- const v = this.ownAttr(RELATIONSHIP_ATTR_THROUGH);
20
+ const v = this.attr(RELATIONSHIP_ATTR_THROUGH);
19
21
  return typeof v === "string" ? v : undefined;
20
22
  }
21
23
  /** Source-side FK field on the junction (directed self-join disambiguator). */
22
24
  get sourceRefField() {
23
- const v = this.ownAttr(RELATIONSHIP_ATTR_SOURCE_REF_FIELD);
25
+ const v = this.attr(RELATIONSHIP_ATTR_SOURCE_REF_FIELD);
24
26
  return typeof v === "string" ? v : undefined;
25
27
  }
26
28
  /** Whether this M:N relationship is an undirected (symmetric) self-join. */
27
29
  get symmetric() {
28
- return this.ownAttr(RELATIONSHIP_ATTR_SYMMETRIC) === true;
30
+ return this.attr(RELATIONSHIP_ATTR_SYMMETRIC) === true;
29
31
  }
30
32
  /** Referential action on parent delete. Undefined when not explicitly set (default derives from subtype). */
31
33
  get onDelete() {
32
- const v = this.ownAttr(RELATIONSHIP_ATTR_ON_DELETE);
34
+ const v = this.attr(RELATIONSHIP_ATTR_ON_DELETE);
33
35
  return typeof v === "string" && v !== "" ? v : undefined;
34
36
  }
35
37
  /** Referential action on key update. Undefined when not explicitly set (default: cascade). */
36
38
  get onUpdate() {
37
- const v = this.ownAttr(RELATIONSHIP_ATTR_ON_UPDATE);
39
+ const v = this.attr(RELATIONSHIP_ATTR_ON_UPDATE);
38
40
  return typeof v === "string" && v !== "" ? v : undefined;
39
41
  }
40
42
  }
@@ -1 +1 @@
1
- {"version":3,"file":"meta-relationship.js","sourceRoot":"","sources":["../../../src/core/relationship/meta-relationship.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,yBAAyB,EACzB,kCAAkC,EAClC,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,6BAA6B,CAAC;AAErC,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW;QACb,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACtD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,6DAA6D;IAC7D,IAAI,SAAS;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO;QACT,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,+EAA+E;IAC/E,IAAI,cAAc;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,4EAA4E;IAC5E,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,KAAK,IAAI,CAAC;IAC5D,CAAC;IAED,6GAA6G;IAC7G,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IAED,8FAA8F;IAC9F,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACpD,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;CACF"}
1
+ {"version":3,"file":"meta-relationship.js","sourceRoot":"","sources":["../../../src/core/relationship/meta-relationship.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,EAAE;AACF,wEAAwE;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EACL,6BAA6B,EAC7B,4BAA4B,EAC5B,yBAAyB,EACzB,kCAAkC,EAClC,2BAA2B,EAC3B,2BAA2B,EAC3B,2BAA2B,GAC5B,MAAM,6BAA6B,CAAC;AAErC,mFAAmF;AACnF,2DAA2D;AAC3D,MAAM,OAAO,gBAAiB,SAAQ,QAAQ;IAC5C,IAAI,WAAW;QACb,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACnD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,6DAA6D;IAC7D,IAAI,SAAS;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,4DAA4D;IAC5D,IAAI,OAAO;QACT,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAC/C,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,+EAA+E;IAC/E,IAAI,cAAc;QAChB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/C,CAAC;IAED,4EAA4E;IAC5E,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,KAAK,IAAI,CAAC;IACzD,CAAC;IAED,6GAA6G;IAC7G,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IAED,8FAA8F;IAC9F,IAAI,QAAQ;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACjD,OAAO,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"meta-validator.d.ts","sourceRoot":"","sources":["../../../src/core/validator/meta-validator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAUrD,qBAAa,aAAc,SAAQ,QAAQ;IACzC;;;OAGG;IACH,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAG5B;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAG5B;IAED,UAAU,IAAI,OAAO;IAIrB,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;CAGnB;AAED,0FAA0F;AAC1F,qBAAa,qBAAsB,SAAQ,aAAa;CAAG;AAE3D,gEAAgE;AAChE,qBAAa,mBAAoB,SAAQ,aAAa;CAAG;AAEzD,4CAA4C;AAC5C,qBAAa,kBAAmB,SAAQ,aAAa;IACnD,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAGhC;CACF;AAED,mDAAmD;AACnD,qBAAa,oBAAqB,SAAQ,aAAa;CAAG;AAE1D,yDAAyD;AACzD,qBAAa,kBAAmB,SAAQ,aAAa;CAAG"}
1
+ {"version":3,"file":"meta-validator.d.ts","sourceRoot":"","sources":["../../../src/core/validator/meta-validator.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAUrD,qBAAa,aAAc,SAAQ,QAAQ;IACzC;;;OAGG;IACH,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAI5B;IAED,IAAI,GAAG,IAAI,MAAM,GAAG,SAAS,CAI5B;IAED,UAAU,IAAI,OAAO;IAIrB,QAAQ,IAAI,OAAO;IAInB,OAAO,IAAI,OAAO;CAGnB;AAED,0FAA0F;AAC1F,qBAAa,qBAAsB,SAAQ,aAAa;CAAG;AAE3D,gEAAgE;AAChE,qBAAa,mBAAoB,SAAQ,aAAa;CAAG;AAEzD,4CAA4C;AAC5C,qBAAa,kBAAmB,SAAQ,aAAa;IACnD,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAIhC;CACF;AAED,mDAAmD;AACnD,qBAAa,oBAAqB,SAAQ,aAAa;CAAG;AAE1D,yDAAyD;AACzD,qBAAa,kBAAmB,SAAQ,aAAa;CAAG"}
@@ -10,11 +10,13 @@ export class MetaValidator extends MetaData {
10
10
  * (Pattern moves to MetaRegexValidator; required validators have no extra attrs.)
11
11
  */
12
12
  get min() {
13
- const v = this.ownAttr(VALIDATOR_ATTR_MIN);
13
+ // ADR-0039: resolving — effective bound; a validator may inherit @min via extends.
14
+ const v = this.attr(VALIDATOR_ATTR_MIN);
14
15
  return typeof v === "number" ? v : undefined;
15
16
  }
16
17
  get max() {
17
- const v = this.ownAttr(VALIDATOR_ATTR_MAX);
18
+ // ADR-0039: resolving — effective bound; a validator may inherit @max via extends.
19
+ const v = this.attr(VALIDATOR_ATTR_MAX);
18
20
  return typeof v === "number" ? v : undefined;
19
21
  }
20
22
  isRequired() {
@@ -36,7 +38,8 @@ export class MetaLengthValidator extends MetaValidator {
36
38
  /** Regex validator: carries the pattern. */
37
39
  export class MetaRegexValidator extends MetaValidator {
38
40
  get pattern() {
39
- const v = this.ownAttr(VALIDATOR_ATTR_PATTERN);
41
+ // ADR-0039: resolving — effective @pattern; a validator may inherit it via extends.
42
+ const v = this.attr(VALIDATOR_ATTR_PATTERN);
40
43
  return typeof v === "string" ? v : undefined;
41
44
  }
42
45
  }