@memoarchitect/tools 0.10.8 → 0.11.2

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 (61) hide show
  1. package/README.md +1 -1
  2. package/package.json +2 -2
  3. package/packages/tools/lib/analysis/dsm.d.ts.map +1 -1
  4. package/packages/tools/lib/analysis/dsm.js +9 -4
  5. package/packages/tools/lib/analysis/dsm.js.map +1 -1
  6. package/packages/tools/lib/commands/dev.d.ts.map +1 -1
  7. package/packages/tools/lib/commands/dev.js +23 -1
  8. package/packages/tools/lib/commands/dev.js.map +1 -1
  9. package/packages/tools/lib/completeness/tracker.d.ts.map +1 -1
  10. package/packages/tools/lib/completeness/tracker.js +11 -4
  11. package/packages/tools/lib/completeness/tracker.js.map +1 -1
  12. package/packages/tools/lib/dhf/query-executor.d.ts +1 -1
  13. package/packages/tools/lib/dhf/query-executor.d.ts.map +1 -1
  14. package/packages/tools/lib/dhf/query-executor.js +4 -4
  15. package/packages/tools/lib/dhf/query-executor.js.map +1 -1
  16. package/packages/tools/lib/dhf/template-lint.js +1 -1
  17. package/packages/tools/lib/dhf/template-lint.js.map +1 -1
  18. package/packages/tools/lib/mcp/tools.d.ts.map +1 -1
  19. package/packages/tools/lib/mcp/tools.js +2 -1
  20. package/packages/tools/lib/mcp/tools.js.map +1 -1
  21. package/packages/tools/lib/model/builder.d.ts.map +1 -1
  22. package/packages/tools/lib/model/builder.js +223 -9
  23. package/packages/tools/lib/model/builder.js.map +1 -1
  24. package/packages/tools/lib/model/parser-utils.d.ts +2 -0
  25. package/packages/tools/lib/model/parser-utils.d.ts.map +1 -1
  26. package/packages/tools/lib/model/parser-utils.js +30 -4
  27. package/packages/tools/lib/model/parser-utils.js.map +1 -1
  28. package/packages/tools/lib/model/semantic.d.ts +61 -2
  29. package/packages/tools/lib/model/semantic.d.ts.map +1 -1
  30. package/packages/tools/lib/model/semantic.js +38 -0
  31. package/packages/tools/lib/model/semantic.js.map +1 -1
  32. package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
  33. package/packages/tools/lib/model/view-deriver.js +66 -20
  34. package/packages/tools/lib/model/view-deriver.js.map +1 -1
  35. package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
  36. package/packages/tools/lib/server/dev-server.js +40 -4
  37. package/packages/tools/lib/server/dev-server.js.map +1 -1
  38. package/packages/tools/lib/server/package-source.d.ts +20 -1
  39. package/packages/tools/lib/server/package-source.d.ts.map +1 -1
  40. package/packages/tools/lib/server/package-source.js +23 -4
  41. package/packages/tools/lib/server/package-source.js.map +1 -1
  42. package/packages/tools/lib/server/package-writer.d.ts +18 -0
  43. package/packages/tools/lib/server/package-writer.d.ts.map +1 -1
  44. package/packages/tools/lib/server/package-writer.js +58 -5
  45. package/packages/tools/lib/server/package-writer.js.map +1 -1
  46. package/packages/tools/lib/server/persistor.d.ts.map +1 -1
  47. package/packages/tools/lib/server/persistor.js +4 -1
  48. package/packages/tools/lib/server/persistor.js.map +1 -1
  49. package/packages/tools/lib/validator/behavior-validator.d.ts +3 -5
  50. package/packages/tools/lib/validator/behavior-validator.d.ts.map +1 -1
  51. package/packages/tools/lib/validator/behavior-validator.js +28 -54
  52. package/packages/tools/lib/validator/behavior-validator.js.map +1 -1
  53. package/packages/tools/lib/validator/builtin-rules.d.ts.map +1 -1
  54. package/packages/tools/lib/validator/builtin-rules.js +14 -9
  55. package/packages/tools/lib/validator/builtin-rules.js.map +1 -1
  56. package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -1
  57. package/packages/tools/lib/validator/constraint-eval.js +4 -0
  58. package/packages/tools/lib/validator/constraint-eval.js.map +1 -1
  59. package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -1
  60. package/packages/tools/lib/validator/rule-engine.js +9 -2
  61. package/packages/tools/lib/validator/rule-engine.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/model/builder.ts"],"names":[],"mappings":"AAgGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAGR,SAAS,EAET,UAAU,EAGb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,KAAK,EAAE,eAAe,EAA6B,MAAM,wBAAwB,CAAC;AAGzF;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,uDAAuD;IACvD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,+DAA+D;IAC/D,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,2EAA2E;IAC3E,UAAU,CAAC,EAAE,eAAe,CAAC;CAChC;AAsGD;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,SAAS,EAAE,cAAc,EAAE,EAC3B,MAAM,EAAE,UAAU,EAClB,WAAW,GAAE,UAAU,EAAO,EAC9B,UAAU,CAAC,EAAE,iBAAiB,GAC/B,SAAS,CA+NX;AAqxBD,qFAAqF;AACrF,eAAO,MAAM,oBAAoB,mBAAmB,CAAC"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/model/builder.ts"],"names":[],"mappings":"AAgGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,KAAK,EAIR,SAAS,EAET,UAAU,EAIb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAIxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAIvE,OAAO,KAAK,EAAE,eAAe,EAA6B,MAAM,wBAAwB,CAAC;AAGzF;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,uDAAuD;IACvD,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,+DAA+D;IAC/D,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IAC5C,2EAA2E;IAC3E,UAAU,CAAC,EAAE,eAAe,CAAC;CAChC;AAsGD;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,SAAS,EAAE,cAAc,EAAE,EAC3B,MAAM,EAAE,UAAU,EAClB,WAAW,GAAE,UAAU,EAAO,EAC9B,UAAU,CAAC,EAAE,iBAAiB,GAC/B,SAAS,CAwRX;AAi5BD,qFAAqF;AACrF,eAAO,MAAM,oBAAoB,mBAAmB,CAAC"}
@@ -291,11 +291,78 @@ export function buildMemoModel(documents, config, parseErrors = [], registries)
291
291
  incoming.set(rel.targetId, []);
292
292
  incoming.get(rel.targetId).push(rel);
293
293
  }
294
+ // A local definition has already resolved its own ontology kind; usages
295
+ // typed by it inherit that kind, including through a local definition chain.
296
+ if (registries?.kindRegistry) {
297
+ const byName = new Map();
298
+ for (const [id, el] of elements) {
299
+ if (!byName.has(id))
300
+ byName.set(id, el);
301
+ if (el.name && !byName.has(el.name))
302
+ byName.set(el.name, el);
303
+ }
304
+ const known = (kind) => Boolean(registries.kindRegistry?.getKind(kind));
305
+ for (let pass = 0; pass < 16; pass++) {
306
+ let progressed = false;
307
+ for (const el of elements.values()) {
308
+ if (!el.kind || known(el.kind))
309
+ continue;
310
+ const def = byName.get(el.kind.split('::').pop());
311
+ if (def && def !== el && def.kind && def.kind !== el.kind) {
312
+ el.kind = def.kind;
313
+ if (def.layer && (!el.layer || el.layer === 'unknown'))
314
+ el.layer = def.layer;
315
+ progressed = true;
316
+ }
317
+ }
318
+ if (!progressed)
319
+ break;
320
+ }
321
+ }
322
+ const unresolvedReferences = [];
323
+ const reachableCache = new Map();
324
+ const reachableNames = (packageName, seen = new Set()) => {
325
+ if (seen.has(packageName))
326
+ return new Set();
327
+ seen.add(packageName);
328
+ const pkg = registry.getPackage(packageName);
329
+ if (!pkg)
330
+ return new Set();
331
+ const names = new Set(pkg.elementIds);
332
+ for (const imported of pkg.imports) {
333
+ if (imported.isWildcard) {
334
+ for (const name of reachableNames(imported.packageName, seen))
335
+ names.add(name);
336
+ }
337
+ else if (imported.namedImport)
338
+ names.add(imported.namedImport);
339
+ }
340
+ return names;
341
+ };
342
+ for (const [elementId, el] of elements) {
343
+ for (const [key, value] of Object.entries(el.attributes)) {
344
+ if (!key.endsWith('Type') || !value.includes('::'))
345
+ continue;
346
+ const parts = value.split('::');
347
+ const leaf = parts.pop().split('.')[0];
348
+ const packageName = parts.join('::');
349
+ if (!registry.getPackage(packageName))
350
+ continue;
351
+ const names = reachableCache.get(packageName) ?? reachableNames(packageName);
352
+ reachableCache.set(packageName, names);
353
+ if (!names.has(leaf)) {
354
+ unresolvedReferences.push({ elementId, elementName: el.name ?? elementId,
355
+ elementKind: el.kind ?? 'Element', reference: value, packageName,
356
+ missingName: leaf, file: el.file ?? '' });
357
+ }
358
+ }
359
+ }
294
360
  return {
295
361
  elements,
296
362
  relationships,
297
363
  errors,
298
364
  packages: collectPackages(registry),
365
+ unresolvedReferences,
299
366
  elementsByKind,
300
367
  elementsByLayer,
301
368
  relationshipsByType,
@@ -407,7 +474,10 @@ function extractFromPackage(pkg, filePath, parentPackage, config, elements, defe
407
474
  break;
408
475
  case 'UseCaseDeclaration': {
409
476
  const useCase = member;
410
- if (!useCase.isDefinition) {
477
+ if (useCase.isDefinition) {
478
+ extractDefinitionElement({ name: useCase.name, specialization: useCase.specialization, body: useCase.body ?? useCase.usageBody }, 'use case', filePath, packageName, config, elements, registry, registries);
479
+ }
480
+ else {
411
481
  extractUsage({ name: useCase.name, type: useCase.type, body: useCase.usageBody }, 'use case', filePath, packageName, config, elements, registry, registries);
412
482
  }
413
483
  break;
@@ -430,6 +500,9 @@ function extractFromPackage(pkg, filePath, parentPackage, config, elements, defe
430
500
  case 'ViewUsage':
431
501
  extractUsage(member, 'view', filePath, packageName, config, elements, registry, registries);
432
502
  break;
503
+ case 'ViewpointUsage':
504
+ extractViewpointUsage(member, filePath, packageName, config, elements, registry, registries);
505
+ break;
433
506
  case 'ConnectionUsage':
434
507
  // Defer connection resolution until all elements are extracted
435
508
  deferredConnections.push({
@@ -514,10 +587,24 @@ function extractFromPackage(pkg, filePath, parentPackage, config, elements, defe
514
587
  case 'PortDefinition':
515
588
  case 'InterfaceDefinition':
516
589
  case 'ConnectionDefinition':
590
+ extractDefinitionElement(member, DEFINITION_CONSTRUCTS[member.$type], filePath, packageName, config, elements, registry, registries);
517
591
  extractDefinitionPorts(member, filePath, packageName, config, elements, registry, registries);
592
+ // A definition's body is composition: `part def Pump { part
593
+ // motor : Motor; }` is what a BDD draws and what an IBD looks
594
+ // inside. Nested usages become elements owned by the
595
+ // definition, exactly as they do under a part usage.
596
+ extractNestedParts(member, filePath, packageName, config, elements, registry, registries);
597
+ break;
598
+ case 'RequirementDefinition':
599
+ case 'VerificationDefinition':
600
+ case 'StateDefinition':
601
+ case 'AttributeDefinition':
602
+ case 'EnumDefinition':
603
+ extractDefinitionElement(member, DEFINITION_CONSTRUCTS[member.$type], filePath, packageName, config, elements, registry, registries);
518
604
  break;
519
- // Other definitions (viewpoint def, view def, etc.) inside packages are
520
- // ontology-level — we don't extract them as model elements in device projects
605
+ // A `view def` / `viewpoint def` stays out: those are presentation
606
+ // apparatus, read through the viewpoint tree rather than as model
607
+ // content.
521
608
  }
522
609
  }
523
610
  }
@@ -529,6 +616,8 @@ function extractUsage(usage, construct, filePath, packageName, config, elements,
529
616
  ? resolveKindDef(typeName, config, registries)
530
617
  : { kindDef: undefined, resolvedKind: 'Unknown' };
531
618
  const attributes = extractAttributes(usage.body);
619
+ if (typeName)
620
+ attributes.usageType = typeName;
532
621
  const doc = extractDocComment(usage.body);
533
622
  // A view's `expose <path>;` members declare its element membership
534
623
  // natively — SysML v2's own visibility mechanism, in place of the MEMO
@@ -728,13 +817,30 @@ function extractActionDefinition(actionDef, filePath, packageName, config, eleme
728
817
  const attributes = extractAttributes(bodyMembers);
729
818
  const doc = extractDocComment(bodyMembers);
730
819
  const behaviorKind = actionDef.behaviorKind ?? 'action';
820
+ // `action def AcquireSensorData :> FunctionalAction` defines a
821
+ // FunctionalAction. Stamping it `ActionDefinition` named the SysML
822
+ // METACLASS as though it were a MEMO kind — the ontology declares no such
823
+ // kind, so every project action def landed in the explorer's "not in
824
+ // ontology" bucket, and a validator had to look it up by that literal.
825
+ // The metaclass is what `construct` and `isDefinition` say; the kind is
826
+ // what the definition specializes.
827
+ const superType = actionDef.specialization?.superType;
828
+ const resolved = superType ? resolveKindDef(superType, config, registries) : undefined;
829
+ const ontologyKind = resolved?.kindDef && resolved.kindDef.layer && resolved.kindDef.layer !== 'unknown'
830
+ ? resolved
831
+ : undefined;
731
832
  const element = {
732
833
  id,
733
834
  name: id,
734
- kind: behaviorKind === 'operator' ? 'OperatorDefinition'
735
- : behaviorKind === 'function' ? 'FunctionDefinition' : 'ActionDefinition',
835
+ // Only where nothing resolves does the metaclass stand in, and there it
836
+ // is the truthful answer: this is a SysML ActionDefinition and nothing
837
+ // more is known about it.
838
+ kind: ontologyKind?.resolvedKind
839
+ ?? (behaviorKind === 'operator' ? 'OperatorDefinition'
840
+ : behaviorKind === 'function' ? 'FunctionDefinition' : 'ActionDefinition'),
736
841
  construct: 'action',
737
- layer: 'behavior',
842
+ isDefinition: true,
843
+ layer: ontologyKind?.kindDef?.layer ?? 'behavior',
738
844
  file: filePath,
739
845
  package: packageName || undefined,
740
846
  attributes: { ...attributes, behaviorKind },
@@ -820,6 +926,7 @@ function extractItemDefinition(itemDef, filePath, packageName, config, elements,
820
926
  name: id,
821
927
  kind: kindDef?.layer && kindDef.layer !== 'unknown' ? resolvedKind : 'ItemDefinition',
822
928
  construct: 'item',
929
+ isDefinition: true,
823
930
  layer: kindDef?.layer && kindDef.layer !== 'unknown' ? kindDef.layer : 'behavior',
824
931
  file: filePath,
825
932
  package: packageName || undefined,
@@ -844,6 +951,72 @@ function extractItemDefinition(itemDef, filePath, packageName, config, elements,
844
951
  * or a state. So the native form was the only correct one, and it was the one
845
952
  * that did not work.
846
953
  */
954
+ /**
955
+ * The SysML construct each definition declares, in the spelling its usages
956
+ * carry — a `part def` and a `part` are the same construct, one defining and
957
+ * one using.
958
+ */
959
+ const DEFINITION_CONSTRUCTS = {
960
+ PartDefinition: 'part',
961
+ PortDefinition: 'port',
962
+ InterfaceDefinition: 'interface',
963
+ ConnectionDefinition: 'connection',
964
+ RequirementDefinition: 'requirement',
965
+ VerificationDefinition: 'verification',
966
+ StateDefinition: 'state',
967
+ AttributeDefinition: 'attribute',
968
+ EnumDefinition: 'enumeration',
969
+ };
970
+ /**
971
+ * A definition the PROJECT declares, as a model element.
972
+ *
973
+ * `part def Pump :> LogicalComponent` defines a Pump. It was registered as a
974
+ * kind and nothing else, so no view could select it and no BDD or IBD could
975
+ * draw it — which is most of what a definition is for. It is an element now,
976
+ * and its usages read beneath it: a usage's `kind` is the definition's name,
977
+ * which is the link every explorer already follows.
978
+ *
979
+ * The kind it carries is the ONTOLOGY kind it specializes, so a view, a
980
+ * viewpoint filter and a palette that admit `LogicalComponent` admit the
981
+ * definition of one without being edited. `isDefinition` is what tells the two
982
+ * apart afterwards — a definition is a type, not an instance of one, and
983
+ * anything counting instances must say so.
984
+ *
985
+ * This is only ever project content: the ontology's own definitions are read
986
+ * by the kind registry and are never parsed into the model.
987
+ */
988
+ function extractDefinitionElement(definition, construct, filePath, packageName, config, elements, registry, registries) {
989
+ const id = definition.name;
990
+ if (!id || elements.has(id))
991
+ return;
992
+ // A `library package` is how a project writes ontology-style content: its
993
+ // definitions are types for other models to use, not this model's content.
994
+ // The user's distinction exactly — model definitions become elements,
995
+ // library ones stay kinds, which is what they already were.
996
+ if (registry.isLibraryPackage(packageName))
997
+ return;
998
+ const superType = definition.specialization?.superType;
999
+ const { kindDef, resolvedKind } = superType
1000
+ ? resolveKindDef(superType, config, registries)
1001
+ : { kindDef: undefined, resolvedKind: undefined };
1002
+ const attributes = extractAttributes(definition.body ?? []);
1003
+ const doc = extractDocComment(definition.body ?? []);
1004
+ elements.set(id, {
1005
+ id,
1006
+ name: attributes['name'] || attributes['title'] || id,
1007
+ // A definition that specializes nothing the ontology knows is still a
1008
+ // definition; it says so rather than borrowing a kind it has not got.
1009
+ kind: resolvedKind ?? `${construct.charAt(0).toUpperCase()}${construct.slice(1)}Definition`,
1010
+ construct,
1011
+ layer: kindDef?.layer || 'unknown',
1012
+ file: filePath,
1013
+ package: packageName || undefined,
1014
+ attributes,
1015
+ doc,
1016
+ isDefinition: true,
1017
+ });
1018
+ registry.registerElement(id, packageName);
1019
+ }
847
1020
  function extractDefinitionPorts(def, filePath, packageName, config, elements, registry, registries) {
848
1021
  const ownerId = def.name;
849
1022
  const body = def.body || [];
@@ -943,7 +1116,12 @@ function extractNestedPackages(owner, filePath, packageName, config, elements, r
943
1116
  });
944
1117
  for (const grouped of pm.members ?? []) {
945
1118
  const gm = grouped;
946
- const isPart = gm.$type === 'PartMember';
1119
+ // `part btnBack : UIElement;` parses as a PartMember and
1120
+ // `part btnBack : UIElement { … }` as a PartUsage — the same
1121
+ // declaration with and without a body. Accepting only the first
1122
+ // dropped every grouped element that declares anything, which is
1123
+ // most of them.
1124
+ const isPart = gm.$type === 'PartMember' || gm.$type === 'PartUsage';
947
1125
  const isItem = gm.$type === 'ItemUsage' && !gm.direction;
948
1126
  if (!isPart && !isItem)
949
1127
  continue;
@@ -961,6 +1139,34 @@ function extractNestedPackages(owner, filePath, packageName, config, elements, r
961
1139
  }
962
1140
  /** The kind a nested grouping package becomes, distinct from a namespace package. */
963
1141
  export const ELEMENT_PACKAGE_KIND = 'ElementPackage';
1142
+ /**
1143
+ * A `viewpoint` usage, and any viewpoint declared inside it.
1144
+ *
1145
+ * A viewpoint nests for system-of-systems modelling: the viewpoint that frames
1146
+ * the whole system of systems declares one viewpoint per constituent system,
1147
+ * which is how ISO 42010 composes a description of a description. Native SysML
1148
+ * already permits it (`ViewpointUsage` is a `UsageBodyMember`) and the grammar
1149
+ * already parsed it — nothing extracted it, so a nested viewpoint became no
1150
+ * element at all and every consumer saw one flat list.
1151
+ *
1152
+ * The nested viewpoint carries its parent in `owner`, the same way a nested
1153
+ * part does. Unlike a part, no `composes` edge is synthesized: a viewpoint is
1154
+ * not a `part` construct, and framing is not containment of hardware.
1155
+ */
1156
+ function extractViewpointUsage(usage, filePath, packageName, config, elements, registry, registries, ownerId) {
1157
+ if (!usage.name)
1158
+ return;
1159
+ extractUsage({ name: usage.name, type: usage.type, body: usage.body }, 'viewpoint', filePath, packageName, config, elements, registry, registries);
1160
+ const element = elements.get(usage.name);
1161
+ if (element && ownerId)
1162
+ element.owner = ownerId;
1163
+ for (const member of usage.body || []) {
1164
+ const nested = member;
1165
+ if (nested.$type !== 'ViewpointUsage')
1166
+ continue;
1167
+ extractViewpointUsage(nested, filePath, packageName, config, elements, registry, registries, usage.name);
1168
+ }
1169
+ }
964
1170
  /**
965
1171
  * Extract an ActionUsage, including nested actions, flows, and successions.
966
1172
  * Supports both typed (action name : Type;) and composite (action name { ... }) forms.
@@ -1132,7 +1338,15 @@ function resolveConnection(conn, filePath, packageName, config, elements, relati
1132
1338
  * mismatch on whichever edge happened to carry a different item from its
1133
1339
  * parent's.
1134
1340
  *
1135
- * Walk the path through `owner` and take the deepest real element.
1341
+ * Walk the path through the parent link and take the deepest real element.
1342
+ *
1343
+ * A nested part or port records its parent in `owner`; a nested ACTION records
1344
+ * it in `parentAction`, because the two are set by separate extraction paths.
1345
+ * Reading only `owner` broke the walk at the first hop of every function path:
1346
+ * `flow from fnDeliverTherapy.fnMeterFluid.fnMeasureDelivered to …` became a
1347
+ * self-loop on `fnDeliverTherapy`, which is a plausible-looking edge pointing
1348
+ * at the wrong function — the exact failure the comment above describes, one
1349
+ * field away from where it was fixed for ports.
1136
1350
  */
1137
1351
  function resolveEndpoint(ref, elements) {
1138
1352
  const parts = ref.split('.');
@@ -1140,7 +1354,7 @@ function resolveEndpoint(ref, elements) {
1140
1354
  let i = 1;
1141
1355
  while (i < parts.length) {
1142
1356
  const child = elements.get(parts[i]);
1143
- if (!child || child.owner !== id)
1357
+ if (!child || (child.owner !== id && child.parentAction !== id))
1144
1358
  break;
1145
1359
  id = parts[i];
1146
1360
  i++;