@metaobjectsdev/metadata 1.0.3 → 1.0.4

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 (62) hide show
  1. package/dist/core/relationship/derive-m2m-fields.d.ts +3 -1
  2. package/dist/core/relationship/derive-m2m-fields.d.ts.map +1 -1
  3. package/dist/core/relationship/derive-m2m-fields.js +110 -15
  4. package/dist/core/relationship/derive-m2m-fields.js.map +1 -1
  5. package/dist/core/relationship/find-reference.d.ts +21 -5
  6. package/dist/core/relationship/find-reference.d.ts.map +1 -1
  7. package/dist/core/relationship/find-reference.js +29 -10
  8. package/dist/core/relationship/find-reference.js.map +1 -1
  9. package/dist/core/relationship/relationship-definition.embedded.js +8 -8
  10. package/dist/core/relationship/relationship-definition.embedded.js.map +1 -1
  11. package/dist/core/relationship/resolve-relationship-reference.d.ts +27 -0
  12. package/dist/core/relationship/resolve-relationship-reference.d.ts.map +1 -0
  13. package/dist/core/relationship/resolve-relationship-reference.js +84 -0
  14. package/dist/core/relationship/resolve-relationship-reference.js.map +1 -0
  15. package/dist/errors.d.ts +1 -1
  16. package/dist/errors.d.ts.map +1 -1
  17. package/dist/errors.js +10 -0
  18. package/dist/errors.js.map +1 -1
  19. package/dist/index.d.ts +2 -1
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +2 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/library/embedded-library.generated.d.ts +2 -0
  24. package/dist/library/embedded-library.generated.d.ts.map +1 -1
  25. package/dist/library/embedded-library.generated.js +11 -1
  26. package/dist/library/embedded-library.generated.js.map +1 -1
  27. package/dist/library/index.d.ts +2 -0
  28. package/dist/library/index.d.ts.map +1 -0
  29. package/dist/library/index.js +24 -0
  30. package/dist/library/index.js.map +1 -0
  31. package/dist/library/library-sources.d.ts +99 -6
  32. package/dist/library/library-sources.d.ts.map +1 -1
  33. package/dist/library/library-sources.js +165 -43
  34. package/dist/library/library-sources.js.map +1 -1
  35. package/dist/loader/meta-data-loader.d.ts.map +1 -1
  36. package/dist/loader/meta-data-loader.js +6 -1
  37. package/dist/loader/meta-data-loader.js.map +1 -1
  38. package/dist/loader/validation-passes.d.ts +2 -0
  39. package/dist/loader/validation-passes.d.ts.map +1 -1
  40. package/dist/loader/validation-passes.js +162 -22
  41. package/dist/loader/validation-passes.js.map +1 -1
  42. package/dist/parser-core.d.ts.map +1 -1
  43. package/dist/parser-core.js +13 -2
  44. package/dist/parser-core.js.map +1 -1
  45. package/dist/vocabulary-rewrite-yaml.d.ts +2 -0
  46. package/dist/vocabulary-rewrite-yaml.d.ts.map +1 -0
  47. package/dist/vocabulary-rewrite-yaml.js +22 -0
  48. package/dist/vocabulary-rewrite-yaml.js.map +1 -0
  49. package/package.json +7 -7
  50. package/src/core/relationship/derive-m2m-fields.ts +115 -15
  51. package/src/core/relationship/find-reference.ts +34 -11
  52. package/src/core/relationship/relationship-definition.embedded.ts +8 -8
  53. package/src/core/relationship/resolve-relationship-reference.ts +99 -0
  54. package/src/errors.ts +10 -0
  55. package/src/index.ts +6 -1
  56. package/src/library/embedded-library.generated.ts +12 -1
  57. package/src/library/index.ts +23 -0
  58. package/src/library/library-sources.ts +197 -47
  59. package/src/loader/meta-data-loader.ts +7 -1
  60. package/src/loader/validation-passes.ts +181 -23
  61. package/src/parser-core.ts +15 -2
  62. package/src/vocabulary-rewrite-yaml.ts +21 -0
@@ -652,7 +652,16 @@ function parseNodeInto(nodeData, target, accumRoot, inheritedContextPkg, registr
652
652
  // "merged"` envelope. Last-writer-wins is preserved for non-conflicting
653
653
  // cases (one side unset, same value, etc.) — those carry through to the
654
654
  // existing applyInlineAttrsAndUnknownKeys logic below.
655
- if (fr5cActive && preMergeAttrSnapshot !== undefined) {
655
+ //
656
+ // FR-043 Amendment 2 — `overlay: true` LICENSES the override. The conflict error
657
+ // exists to catch two files that collided without knowing about each other; the flag
658
+ // is the author saying "I know about the other declaration and I mean to change it".
659
+ // The loader already treats the flag specially (find-or-throw versus create-or-find),
660
+ // so honouring it here makes it mean ONE thing rather than two. An unmarked
661
+ // redeclaration still merges and still errors, which is the case FR5c was written for.
662
+ if (fr5cActive &&
663
+ preMergeAttrSnapshot !== undefined &&
664
+ nodeData[RESERVED_KEY_OVERLAY] !== true) {
656
665
  detectAttrMergeConflicts(target, nodeData, preMergeAttrSnapshot, newContributorFile, errors, path);
657
666
  }
658
667
  // Apply inline attrs (not reserved keys — those stay on the existing model)
@@ -727,7 +736,9 @@ function parseNodeInto(nodeData, target, accumRoot, inheritedContextPkg, registr
727
736
  * non-empty value. If so, emit ERR_MERGE_CONFLICT with a `format: "merged"`
728
737
  * envelope naming both contributors. The merge itself proceeds (existing
729
738
  * last-writer-wins) so the loader sees one canonical tree; the error
730
- * surfaces the conflict so a consumer can fix the metadata. */
739
+ * surfaces the conflict so a consumer can fix the metadata.
740
+ *
741
+ * NOT called for an `overlay: true` declaration — see the call site. */
731
742
  function detectAttrMergeConflicts(target, nodeData, preAttrs, newContributorFile, errors, path) {
732
743
  const existingFiles = "files" in target.source ? [...target.source.files] : [];
733
744
  function isEmptyValue(v) {
@@ -1 +1 @@
1
- {"version":3,"file":"parser-core.js","sourceRoot":"","sources":["../src/parser-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser-core.js","sourceRoot":"","sources":["../src/parser-core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { rewriteYamlDocument, type YamlRewriteResult } from "./core/vocabulary-rewrite-yaml.js";
2
+ //# sourceMappingURL=vocabulary-rewrite-yaml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary-rewrite-yaml.d.ts","sourceRoot":"","sources":["../src/vocabulary-rewrite-yaml.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,mBAAmB,EAAE,KAAK,iBAAiB,EAAE,MAAM,mCAAmC,CAAC"}
@@ -0,0 +1,22 @@
1
+ // @metaobjectsdev/metadata/vocabulary-rewrite-yaml — the YAML arm of `meta upgrade`.
2
+ //
3
+ // The implementation stays under `core/`, beside the canonical-JSON rewriter it mirrors.
4
+ // This file exists so the SUBPATH NAME mirrors the layout under `src/`, which is what
5
+ // `tsconfig.scripts.json`'s `@metaobjectsdev/metadata/*` → `src/*` mapping requires.
6
+ //
7
+ // Nesting is NOT the problem — the `*` matches across `/`, which is why
8
+ // `@metaobjectsdev/codegen-ts/templates/entity-file` resolves to
9
+ // `src/templates/entity-file.ts` perfectly well. The problem was a subpath NAMED
10
+ // `vocabulary-rewrite-yaml` whose source sat at `src/core/vocabulary-rewrite-yaml.ts`:
11
+ // the substitution yields `src/vocabulary-rewrite-yaml`, and that is not where the module
12
+ // is. Renaming the export to `./core/vocabulary-rewrite-yaml` would also have satisfied
13
+ // the rule and was the cheaper edit, but this package is published and that subpath is
14
+ // public API, so the name stays and the layout moves to meet it.
15
+ //
16
+ // When the mapping misses, tsc falls through to `node_modules` and reads `dist/` — present
17
+ // for anyone who has built, absent on a fresh CI checkout where the `gates` lane runs
18
+ // `bun install` and never builds. `./library` shipped that way and took the lane down;
19
+ // this one had not been imported from anywhere `scripts/` typechecks, so it was latent.
20
+ // `cli/test/subpath-resolves-under-scripts-paths.test.ts` now gates the class.
21
+ export { rewriteYamlDocument } from "./core/vocabulary-rewrite-yaml.js";
22
+ //# sourceMappingURL=vocabulary-rewrite-yaml.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vocabulary-rewrite-yaml.js","sourceRoot":"","sources":["../src/vocabulary-rewrite-yaml.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,yFAAyF;AACzF,sFAAsF;AACtF,qFAAqF;AACrF,EAAE;AACF,wEAAwE;AACxE,iEAAiE;AACjE,iFAAiF;AACjF,uFAAuF;AACvF,0FAA0F;AAC1F,wFAAwF;AACxF,uFAAuF;AACvF,iEAAiE;AACjE,EAAE;AACF,2FAA2F;AAC3F,sFAAsF;AACtF,uFAAuF;AACvF,wFAAwF;AACxF,+EAA+E;AAC/E,OAAO,EAAE,mBAAmB,EAA0B,MAAM,mCAAmC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metaobjectsdev/metadata",
3
- "version": "1.0.3",
3
+ "version": "1.0.4",
4
4
  "description": "Metamodel loader, types, and constants for the MetaObjects standard.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -17,9 +17,9 @@
17
17
  "default": "./dist/core/index.js"
18
18
  },
19
19
  "./library": {
20
- "bun": "./src/library/library-sources.ts",
21
- "types": "./dist/library/library-sources.d.ts",
22
- "default": "./dist/library/library-sources.js"
20
+ "bun": "./src/library/index.ts",
21
+ "types": "./dist/library/index.d.ts",
22
+ "default": "./dist/library/index.js"
23
23
  },
24
24
  "./constants": {
25
25
  "bun": "./src/constants.ts",
@@ -27,9 +27,9 @@
27
27
  "default": "./dist/constants.js"
28
28
  },
29
29
  "./vocabulary-rewrite-yaml": {
30
- "bun": "./src/core/vocabulary-rewrite-yaml.ts",
31
- "types": "./dist/core/vocabulary-rewrite-yaml.d.ts",
32
- "default": "./dist/core/vocabulary-rewrite-yaml.js"
30
+ "bun": "./src/vocabulary-rewrite-yaml.ts",
31
+ "types": "./dist/vocabulary-rewrite-yaml.d.ts",
32
+ "default": "./dist/vocabulary-rewrite-yaml.js"
33
33
  }
34
34
  },
35
35
  "files": [
@@ -17,12 +17,35 @@
17
17
  // two references are taken in declaration order (sourceField = first,
18
18
  // targetField = second). Resolution unions both at read time.
19
19
  // Ambiguous (source == target, neither @sourceRefField nor @symmetric) → throw.
20
+ //
21
+ // "source" above means the relationship's SUBJECT, and under `extends` there are two
22
+ // legitimate names for it. Every caller walks the RESOLVING `obj.relationships()`
23
+ // (codegen-ts's relation-resolver, runtime-ts's n2m-resolver, docs-site's link-graph)
24
+ // and passes the entity it is ITERATING, which for an inherited relationship is not
25
+ // the one that declared it. So the DECLARING entity is resolved here from `rel.parent`
26
+ // (same shape as the #368 loader fix, validation-passes' `declaringEntity = rel.parent
27
+ // ?? obj`), and the passed `source` is kept alongside it rather than discarded: a
28
+ // junction FK usually references the CONCRETE entity, because the abstract base has no
29
+ // table, while @objectRef on an inherited self-join names the base. Both are accepted,
30
+ // for the self-join classification and the hetero reference match alike. `source` is
31
+ // also the fallback when `rel` has no entity parent, which keeps the exported signature
32
+ // unchanged. Not covered: a junction reference naming an entity strictly BETWEEN the
33
+ // base and the navigating entity in a deeper hierarchy.
34
+ //
35
+ // The subject comparison is made on RESOLVED OBJECT IDENTITY, not on stripped
36
+ // short names, matching the Java reference (M2MFields.java). Bare-name equality
37
+ // cannot tell `a::NodeBase` from `b::NodeBase`, so once the subject set held two
38
+ // names a genuine CROSS-PACKAGE hetero M:N whose target shares a short name with
39
+ // the subject read as a self-join and refused to derive. Scoped deliberately to
40
+ // this one predicate — every other name comparison in this file is untouched.
20
41
 
21
42
  import type { MetaObject } from "../object/meta-object.js";
22
43
  import type { MetaRoot } from "../../shared/meta-root.js";
23
44
  import type { MetaRelationship } from "./meta-relationship.js";
24
45
  import type { MetaReferenceIdentity } from "../identity/meta-identity.js";
25
46
  import { stripPackage } from "../../naming.js";
47
+ import { TYPE_OBJECT } from "../../shared/base-types.js";
48
+ import { PACKAGE_SEPARATOR } from "../../shared/structural.js";
26
49
 
27
50
  /** Thrown when a M:N relationship's junction FK fields cannot be derived. */
28
51
  export class M2MDerivationError extends Error {
@@ -45,12 +68,36 @@ function refFkField(ref: MetaReferenceIdentity): string | undefined {
45
68
  return ref.fields[0];
46
69
  }
47
70
 
71
+ /**
72
+ * The root entity a reference name denotes, or undefined. Mirrors the Java
73
+ * reference's `M2MFields.findObject` exactly: a FULLY-QUALIFIED name (one
74
+ * containing "::") resolves EXACTLY on the object's package-folded key, never a
75
+ * bare-tail fallback; a bare name matches a short name, first match wins (the
76
+ * bare-collision case is the deferred follow-up Java records as issue #174).
77
+ *
78
+ * This exists so the SUBJECT comparison below can be made on object IDENTITY the
79
+ * way Java's already is. A bare-name compare cannot tell `a::NodeBase` from
80
+ * `b::NodeBase`, which made a genuine cross-package hetero M:N read as a
81
+ * self-join the moment the subject set held two names.
82
+ */
83
+ function findEntity(root: MetaRoot, name: string | undefined): MetaObject | undefined {
84
+ if (name === undefined || name === "") return undefined;
85
+ const objects = root.objects();
86
+ if (name.includes(PACKAGE_SEPARATOR)) {
87
+ return objects.find((o) => o.resolutionKey() === name);
88
+ }
89
+ const bare = stripPackage(name);
90
+ return objects.find((o) => o.name === bare);
91
+ }
92
+
48
93
  /**
49
94
  * Derive the source/target junction FK fields for a M:N relationship.
50
95
  *
51
96
  * @param rel the M:N relationship (carries @objectRef + @through + optional
52
97
  * @sourceRefField / @symmetric)
53
- * @param source the entity declaring `rel`
98
+ * @param source the entity the caller is navigating from. Accepted alongside
99
+ * `rel.parent` as a name for the relationship's subject, and used
100
+ * as the declaring entity when `rel` has no entity parent.
54
101
  * @param root the loaded model root (to find the junction entity)
55
102
  * @throws M2MDerivationError when the junction is missing/malformed or the
56
103
  * self-join is ambiguous.
@@ -60,10 +107,21 @@ export function deriveM2MFields(
60
107
  source: MetaObject,
61
108
  root: MetaRoot,
62
109
  ): M2MFields {
110
+ // The entity that DECLARES `rel` — see the header note. `rel.parent` is the
111
+ // owning entity for both an own declaration and an inherited one (an unmodified
112
+ // inherited child is the SAME node object, reused in place by
113
+ // MetaData._effectiveChildren; an override is a genuinely different node whose
114
+ // parent is the overriding entity, which is also correct).
115
+ const relParent = rel.parent;
116
+ const declaringEntity: MetaObject =
117
+ relParent !== undefined && relParent.type === TYPE_OBJECT
118
+ ? (relParent as MetaObject)
119
+ : source;
120
+
63
121
  const throughName = rel.through;
64
122
  if (throughName === undefined) {
65
123
  throw new M2MDerivationError(
66
- `relationship "${source.name}.${rel.name}" is missing @through (required for M:N derivation)`,
124
+ `relationship "${declaringEntity.name}.${rel.name}" is missing @through (required for M:N derivation)`,
67
125
  );
68
126
  }
69
127
  // @through may be package-qualified (FQN); findObject is keyed by bare name,
@@ -76,37 +134,79 @@ export function deriveM2MFields(
76
134
  : undefined);
77
135
  if (junction === undefined) {
78
136
  throw new M2MDerivationError(
79
- `relationship "${source.name}.${rel.name}" @through "${throughName}" does not resolve to an entity`,
137
+ `relationship "${declaringEntity.name}.${rel.name}" @through "${throughName}" does not resolve to an entity`,
80
138
  );
81
139
  }
82
140
 
83
141
  const targetName = rel.objectRef;
84
142
  if (targetName === undefined) {
85
143
  throw new M2MDerivationError(
86
- `relationship "${source.name}.${rel.name}" is missing @objectRef (the M:N target)`,
144
+ `relationship "${declaringEntity.name}.${rel.name}" is missing @objectRef (the M:N target)`,
87
145
  );
88
146
  }
89
147
 
90
148
  const refs = junction.referenceIdentities();
91
149
  if (refs.length !== 2) {
92
150
  throw new M2MDerivationError(
93
- `junction "${throughName}" for relationship "${source.name}.${rel.name}" must declare exactly two ` +
151
+ `junction "${throughName}" for relationship "${declaringEntity.name}.${rel.name}" must declare exactly two ` +
94
152
  `identity.reference children (found ${refs.length})`,
95
153
  );
96
154
  }
97
155
 
98
- const isSelfJoin = stripPackage(targetName) === source.name;
156
+ // The relationship's SUBJECT the entity the M:N hangs off. Under `extends`
157
+ // there are two legitimate names for it and BOTH occur in real models:
158
+ // * the DECLARING entity (rel.parent) — what @objectRef names for a self-join
159
+ // declared on an abstract base, and what a junction reference names when the
160
+ // author points the FK at the base type;
161
+ // * the NAVIGATING entity (`source`) — the concrete entity the caller is
162
+ // iterating, which is what a junction FK usually references, because that is
163
+ // the entity with the physical table.
164
+ // Accepting either is what makes the derivation independent of which entity's
165
+ // effective view reached the relationship. (Not covered: a junction reference
166
+ // naming an entity strictly BETWEEN the declaring base and the navigating
167
+ // entity in a deeper hierarchy — no model does that, and widening to the whole
168
+ // super chain would make the "must declare one identity.reference to ..." error
169
+ // unfalsifiable.)
170
+ const subjectNames = declaringEntity.name === source.name
171
+ ? [declaringEntity.name]
172
+ : [declaringEntity.name, source.name];
173
+ const subjectLabel = subjectNames.map((n) => `"${n}"`).join(" or ");
174
+ // Compared by resolved object IDENTITY, matching the Java reference. A
175
+ // stripPackage() compare cannot distinguish `a::NodeBase` from `b::NodeBase`,
176
+ // so with two names in the set a genuine cross-package hetero M:N read as a
177
+ // self-join and refused to derive.
178
+ const isSubject = (entity: MetaObject | undefined): boolean =>
179
+ entity !== undefined && (entity === declaringEntity || entity === source);
180
+ const isSubjectName = (name: string | undefined): boolean =>
181
+ name !== undefined && subjectNames.includes(stripPackage(name));
182
+
183
+ // Defensive bare fallback when @objectRef does not resolve — loader validation
184
+ // normally guarantees it does. Same carve-out the Java reference makes.
185
+ const targetEntityNode = findEntity(root, targetName);
186
+ const isSelfJoin = targetEntityNode !== undefined
187
+ ? isSubject(targetEntityNode)
188
+ : isSubjectName(targetName);
99
189
 
100
190
  if (!isSelfJoin) {
101
- // Hetero: match each reference by the entity it resolves to.
102
- const sourceRef = refs.find((r) => r.targetEntity !== undefined && stripPackage(r.targetEntity) === source.name);
103
- const targetRef = refs.find((r) => r.targetEntity !== undefined && stripPackage(r.targetEntity) === stripPackage(targetName));
191
+ // Hetero: match each reference by the ENTITY OBJECT it resolves to.
192
+ const sourceRef = refs.find((r) => isSubject(findEntity(root, r.targetEntity)));
193
+ // Identity here too. The two searches are INDEPENDENT nothing excludes
194
+ // sourceRef from this one, unlike the directed self-join branch below — so a
195
+ // bare compare could match the SOURCE-side reference again whenever the
196
+ // target's short name equals the source's, and silently return (srcFk, srcFk).
197
+ // Structurally unreachable while isSelfJoin was also bare (a colliding short
198
+ // name forced the self-join branch); making only isSelfJoin identity-based
199
+ // broke that invariant. Java matches identity on both sides (findRefToSubject
200
+ // + findRefToObject) and never had the hole.
201
+ const targetRef = targetEntityNode !== undefined
202
+ ? refs.find((r) => findEntity(root, r.targetEntity) === targetEntityNode)
203
+ : refs.find((r) => r.targetEntity !== undefined && stripPackage(r.targetEntity) === stripPackage(targetName));
104
204
  const sourceField = sourceRef ? refFkField(sourceRef) : undefined;
105
205
  const targetField = targetRef ? refFkField(targetRef) : undefined;
106
206
  if (sourceField === undefined || targetField === undefined) {
107
207
  throw new M2MDerivationError(
108
- `junction "${throughName}" for relationship "${source.name}.${rel.name}" must declare one ` +
109
- `identity.reference to "${source.name}" and one to "${stripPackage(targetName)}"`,
208
+ `junction "${throughName}" for relationship "${declaringEntity.name}.${rel.name}" must declare one ` +
209
+ `identity.reference to ${subjectLabel} and one to "${stripPackage(targetName)}"`,
110
210
  );
111
211
  }
112
212
  return { sourceField, targetField };
@@ -119,7 +219,7 @@ export function deriveM2MFields(
119
219
  const b = refFkField(refs[1]!);
120
220
  if (a === undefined || b === undefined) {
121
221
  throw new M2MDerivationError(
122
- `symmetric junction "${throughName}" for "${source.name}.${rel.name}" has a reference with no @fields`,
222
+ `symmetric junction "${throughName}" for "${declaringEntity.name}.${rel.name}" has a reference with no @fields`,
123
223
  );
124
224
  }
125
225
  return { sourceField: a, targetField: b };
@@ -128,7 +228,7 @@ export function deriveM2MFields(
128
228
  const sourceRefField = rel.sourceRefField;
129
229
  if (sourceRefField === undefined) {
130
230
  throw new M2MDerivationError(
131
- `self-join relationship "${source.name}.${rel.name}" through "${throughName}" is ambiguous: ` +
231
+ `self-join relationship "${declaringEntity.name}.${rel.name}" through "${throughName}" is ambiguous: ` +
132
232
  `set @sourceRefField (directed) or @symmetric (undirected)`,
133
233
  );
134
234
  }
@@ -137,7 +237,7 @@ export function deriveM2MFields(
137
237
  const sourceRef = refs.find((r) => refFkField(r) === sourceRefField);
138
238
  if (sourceRef === undefined) {
139
239
  throw new M2MDerivationError(
140
- `@sourceRefField "${sourceRefField}" on "${source.name}.${rel.name}" does not match any ` +
240
+ `@sourceRefField "${sourceRefField}" on "${declaringEntity.name}.${rel.name}" does not match any ` +
141
241
  `identity.reference FK field on junction "${throughName}"`,
142
242
  );
143
243
  }
@@ -145,7 +245,7 @@ export function deriveM2MFields(
145
245
  const targetField = targetRef ? refFkField(targetRef) : undefined;
146
246
  if (targetField === undefined) {
147
247
  throw new M2MDerivationError(
148
- `junction "${throughName}" for "${source.name}.${rel.name}" has no distinct target-side reference`,
248
+ `junction "${throughName}" for "${declaringEntity.name}.${rel.name}" has no distinct target-side reference`,
149
249
  );
150
250
  }
151
251
  return { sourceField: sourceRefField, targetField };
@@ -20,25 +20,48 @@ export interface ReferenceLookup {
20
20
  }
21
21
 
22
22
  /**
23
- * Find an identity.reference on either `a` or `b` whose @references targets the
24
- * other side. Returns undefined if neither side declares one.
23
+ * Every identity.reference on `a` or `b` whose @references targets the other
24
+ * side, `a` walked first. Comparison is package-insensitive: `@references` may
25
+ * be a bare entity name ("User") or a fully-qualified one ("pkg::User"); both
26
+ * match `other.name`.
25
27
  *
26
- * Comparison is package-insensitive: `@references` may be a bare entity name
27
- * ("User") or a fully-qualified one ("pkg::User"); both match `other.name`.
28
- *
29
- * If both sides declare references targeting each other (rare, but legal for
30
- * mutual 1:1), returns the first found, walking `a` first.
28
+ * #368: an entity may legally declare more than one identity.reference onto
29
+ * the same target (e.g. Match.homeTeamRef and Match.awayTeamRef both -> Team).
30
+ * Callers that must not silently guess which one is meant enumerate here and
31
+ * report the ambiguity themselves; see also `findReferenceBetween`, which
32
+ * keeps the historical first-match contract for callers that legitimately
33
+ * expect at most one reference between the pair.
31
34
  */
32
- export function findReferenceBetween(
35
+ export function findReferencesBetween(
33
36
  a: MetaObject,
34
37
  b: MetaObject,
35
- ): ReferenceLookup | undefined {
38
+ ): ReferenceLookup[] {
39
+ const found: ReferenceLookup[] = [];
36
40
  for (const [holder, other] of [[a, b], [b, a]] as const) {
37
41
  for (const ref of holder.referenceIdentities()) {
38
42
  if (stripPackage(ref.targetEntity) === other.name) {
39
- return { holder, other, referenceIdentity: ref };
43
+ found.push({ holder, other, referenceIdentity: ref });
40
44
  }
41
45
  }
42
46
  }
43
- return undefined;
47
+ return found;
48
+ }
49
+
50
+ /**
51
+ * Find an identity.reference on either `a` or `b` whose @references targets the
52
+ * other side. Returns undefined if neither side declares one.
53
+ *
54
+ * Delegates to `findReferencesBetween` and returns its first entry — kept for
55
+ * backward compatibility (this is exported public API) and for the mutual-1:1
56
+ * case where both sides declare references targeting each other. #368: two
57
+ * references onto the SAME target are also legal and indistinguishable from
58
+ * here — a caller that must not guess which one is meant should call
59
+ * `findReferencesBetween` directly and handle ambiguity explicitly rather than
60
+ * relying on this function's first-match behaviour.
61
+ */
62
+ export function findReferenceBetween(
63
+ a: MetaObject,
64
+ b: MetaObject,
65
+ ): ReferenceLookup | undefined {
66
+ return findReferencesBetween(a, b)[0];
44
67
  }