@memoarchitect/tools 0.8.8 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/README.md +1 -1
  2. package/package.json +3 -3
  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/export.js +1 -1
  7. package/packages/tools/lib/commands/export.js.map +1 -1
  8. package/packages/tools/lib/commands/init.d.ts.map +1 -1
  9. package/packages/tools/lib/commands/init.js +16 -5
  10. package/packages/tools/lib/commands/init.js.map +1 -1
  11. package/packages/tools/lib/commands/rules.d.ts.map +1 -1
  12. package/packages/tools/lib/commands/rules.js +3 -2
  13. package/packages/tools/lib/commands/rules.js.map +1 -1
  14. package/packages/tools/lib/commands/validate.d.ts.map +1 -1
  15. package/packages/tools/lib/commands/validate.js +71 -4
  16. package/packages/tools/lib/commands/validate.js.map +1 -1
  17. package/packages/tools/lib/completeness/tracker.d.ts.map +1 -1
  18. package/packages/tools/lib/completeness/tracker.js +11 -4
  19. package/packages/tools/lib/completeness/tracker.js.map +1 -1
  20. package/packages/tools/lib/dhf/document-registry.js +1 -1
  21. package/packages/tools/lib/dhf/document-registry.js.map +1 -1
  22. package/packages/tools/lib/dhf/query-executor.d.ts +1 -1
  23. package/packages/tools/lib/dhf/query-executor.d.ts.map +1 -1
  24. package/packages/tools/lib/dhf/query-executor.js +4 -4
  25. package/packages/tools/lib/dhf/query-executor.js.map +1 -1
  26. package/packages/tools/lib/dhf/standards-library.d.ts.map +1 -1
  27. package/packages/tools/lib/dhf/standards-library.js +53 -10
  28. package/packages/tools/lib/dhf/standards-library.js.map +1 -1
  29. package/packages/tools/lib/dhf/template-lint.js +1 -1
  30. package/packages/tools/lib/dhf/template-lint.js.map +1 -1
  31. package/packages/tools/lib/language/generated/ast.d.ts +75 -34
  32. package/packages/tools/lib/language/generated/ast.d.ts.map +1 -1
  33. package/packages/tools/lib/language/generated/ast.js +36 -2
  34. package/packages/tools/lib/language/generated/ast.js.map +1 -1
  35. package/packages/tools/lib/language/generated/grammar.d.ts.map +1 -1
  36. package/packages/tools/lib/language/generated/grammar.js +516 -384
  37. package/packages/tools/lib/language/generated/grammar.js.map +1 -1
  38. package/packages/tools/lib/mcp/tools.d.ts.map +1 -1
  39. package/packages/tools/lib/mcp/tools.js +2 -1
  40. package/packages/tools/lib/mcp/tools.js.map +1 -1
  41. package/packages/tools/lib/model/builder.d.ts +2 -0
  42. package/packages/tools/lib/model/builder.d.ts.map +1 -1
  43. package/packages/tools/lib/model/builder.js +303 -42
  44. package/packages/tools/lib/model/builder.js.map +1 -1
  45. package/packages/tools/lib/model/config-loader.d.ts.map +1 -1
  46. package/packages/tools/lib/model/config-loader.js +7 -1
  47. package/packages/tools/lib/model/config-loader.js.map +1 -1
  48. package/packages/tools/lib/model/config.d.ts +9 -0
  49. package/packages/tools/lib/model/config.d.ts.map +1 -1
  50. package/packages/tools/lib/model/identity-registry.d.ts +39 -0
  51. package/packages/tools/lib/model/identity-registry.d.ts.map +1 -0
  52. package/packages/tools/lib/model/identity-registry.js +118 -0
  53. package/packages/tools/lib/model/identity-registry.js.map +1 -0
  54. package/packages/tools/lib/model/native-project.d.ts +6 -0
  55. package/packages/tools/lib/model/native-project.d.ts.map +1 -1
  56. package/packages/tools/lib/model/native-project.js +6 -0
  57. package/packages/tools/lib/model/native-project.js.map +1 -1
  58. package/packages/tools/lib/model/relationship-registry.d.ts.map +1 -1
  59. package/packages/tools/lib/model/relationship-registry.js +22 -0
  60. package/packages/tools/lib/model/relationship-registry.js.map +1 -1
  61. package/packages/tools/lib/model/semantic.d.ts +57 -2
  62. package/packages/tools/lib/model/semantic.d.ts.map +1 -1
  63. package/packages/tools/lib/model/semantic.js +38 -0
  64. package/packages/tools/lib/model/semantic.js.map +1 -1
  65. package/packages/tools/lib/model/short-id.d.ts +22 -4
  66. package/packages/tools/lib/model/short-id.d.ts.map +1 -1
  67. package/packages/tools/lib/model/short-id.js +46 -7
  68. package/packages/tools/lib/model/short-id.js.map +1 -1
  69. package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
  70. package/packages/tools/lib/model/view-deriver.js +71 -22
  71. package/packages/tools/lib/model/view-deriver.js.map +1 -1
  72. package/packages/tools/lib/operations/project-snapshot.d.ts.map +1 -1
  73. package/packages/tools/lib/operations/project-snapshot.js +24 -2
  74. package/packages/tools/lib/operations/project-snapshot.js.map +1 -1
  75. package/packages/tools/lib/protocol/messages.d.ts +29 -0
  76. package/packages/tools/lib/protocol/messages.d.ts.map +1 -1
  77. package/packages/tools/lib/server/config-resolver.d.ts.map +1 -1
  78. package/packages/tools/lib/server/config-resolver.js +6 -1
  79. package/packages/tools/lib/server/config-resolver.js.map +1 -1
  80. package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
  81. package/packages/tools/lib/server/dev-server.js +40 -4
  82. package/packages/tools/lib/server/dev-server.js.map +1 -1
  83. package/packages/tools/lib/server/dhf-doc-store.d.ts.map +1 -1
  84. package/packages/tools/lib/server/dhf-doc-store.js +10 -2
  85. package/packages/tools/lib/server/dhf-doc-store.js.map +1 -1
  86. package/packages/tools/lib/server/package-source.d.ts +20 -1
  87. package/packages/tools/lib/server/package-source.d.ts.map +1 -1
  88. package/packages/tools/lib/server/package-source.js +23 -4
  89. package/packages/tools/lib/server/package-source.js.map +1 -1
  90. package/packages/tools/lib/server/package-writer.d.ts +18 -0
  91. package/packages/tools/lib/server/package-writer.d.ts.map +1 -1
  92. package/packages/tools/lib/server/package-writer.js +58 -5
  93. package/packages/tools/lib/server/package-writer.js.map +1 -1
  94. package/packages/tools/lib/server/persistor.d.ts.map +1 -1
  95. package/packages/tools/lib/server/persistor.js +4 -1
  96. package/packages/tools/lib/server/persistor.js.map +1 -1
  97. package/packages/tools/lib/server/view-layout-store.d.ts.map +1 -1
  98. package/packages/tools/lib/server/view-layout-store.js +6 -3
  99. package/packages/tools/lib/server/view-layout-store.js.map +1 -1
  100. package/packages/tools/lib/validator/behavior-validator.d.ts +3 -5
  101. package/packages/tools/lib/validator/behavior-validator.d.ts.map +1 -1
  102. package/packages/tools/lib/validator/behavior-validator.js +28 -54
  103. package/packages/tools/lib/validator/behavior-validator.js.map +1 -1
  104. package/packages/tools/lib/validator/builtin-rules.js +12 -12
  105. package/packages/tools/lib/validator/builtin-rules.js.map +1 -1
  106. package/packages/tools/lib/validator/constraint-eval.d.ts +39 -2
  107. package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -1
  108. package/packages/tools/lib/validator/constraint-eval.js +104 -4
  109. package/packages/tools/lib/validator/constraint-eval.js.map +1 -1
  110. package/packages/tools/lib/validator/constraint-loader.js +37 -2
  111. package/packages/tools/lib/validator/constraint-loader.js.map +1 -1
  112. package/packages/tools/lib/validator/rule-engine.d.ts +3 -1
  113. package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -1
  114. package/packages/tools/lib/validator/rule-engine.js +4 -2
  115. package/packages/tools/lib/validator/rule-engine.js.map +1 -1
  116. package/packages/tools/src/grammar/memo-sysml.langium +41 -6
@@ -1 +1 @@
1
- {"version":3,"file":"package-source.js","sourceRoot":"","sources":["../../src/server/package-source.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,4EAA4E;AAC5E,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,6CAA6C;AAC7C,gFAAgF;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAErD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC;AAgB7B,4EAA4E;AAC5E,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAc;IAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,CAAC;IAEjC,MAAM,KAAK,GAAqB,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,CAAC,IAAS,EAAE,MAAc,EAAQ,EAAE;QAC9C,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACtC,IAAI,MAAM,CAAC,KAAK,KAAK,oBAAoB;gBAAE,SAAS;YACpD,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;YACzE,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC5B,IAAI,GAAG,EAAE,CAAC;gBACN,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;gBACzB,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBACpC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;gBACjD,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,OAAO,GAAG,SAAS,EAAE,CAAC;oBAC1C,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;gBACpG,CAAC;YACL,CAAC;YACD,KAAK,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACjC,CAAC;IACL,CAAC,CAAC;IACF,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;IAC7C,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,MAAsB,EAAE,IAAY;IAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;IAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;SAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACpD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtD,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,KAAK,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AAC3F,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,KAAa,EAAE,GAAW,EAAE,WAAmB;IAC1F,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5G,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,UAAU,CAAC,MAAc,EAAE,KAAa,EAAE,GAAW;IACjE,MAAM,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAChD,IAAI,EAAE,GAAG,GAAG,CAAC;IACb,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;QAAE,EAAE,IAAI,CAAC,CAAC;IAClF,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI;QAAE,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACpD,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,MAAM,CAAC,IAAY;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SACrD,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"package-source.js","sourceRoot":"","sources":["../../src/server/package-source.ts"],"names":[],"mappings":"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"}
@@ -74,6 +74,24 @@ export declare function deletePackage(cwd: string, request: {
74
74
  file: string;
75
75
  qualifiedName: string;
76
76
  }): Promise<PackageWriteResult>;
77
+ /**
78
+ * Move a nested declaration into a grouping package beside it.
79
+ *
80
+ * Addressed by qualified name rather than by IR identity, for the same reason
81
+ * the package operations are: the IR does not ingest a declaration nested in a
82
+ * usage body, so it has no identity to quote — and a name path IS an address,
83
+ * because two members of one namespace cannot share a name.
84
+ *
85
+ * The move stays inside one file. A grouping package groups what its OWNER
86
+ * declares, so a member arriving from another file would be a containment
87
+ * change wearing a grouping change's clothes; `moveElementToPackage` is the
88
+ * operation for that.
89
+ */
90
+ export declare function moveIntoGroupingPackage(cwd: string, request: {
91
+ file: string;
92
+ qualifiedName: string;
93
+ targetPackage: string;
94
+ }): Promise<PackageWriteResult>;
77
95
  /**
78
96
  * Move one element's declaration into another package.
79
97
  *
@@ -1 +1 @@
1
- {"version":3,"file":"package-writer.d.ts","sourceRoot":"","sources":["../../src/server/package-writer.ts"],"names":[],"mappings":"AA0BA,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,yBAAyB,CAAC;AAMjC;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,QAGA,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,2BAA2B,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,kBAAkB,CAAC,CA8B7B;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/D,OAAO,CAAC,kBAAkB,CAAC,CAqC7B;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC7B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACL,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACtB,GACF,OAAO,CAAC,kBAAkB,CAAC,CA2D7B;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,kBAAkB,CAAC,CA8B7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACL,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,EACD,KAAK,EAAE,eAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAyD7B"}
1
+ {"version":3,"file":"package-writer.d.ts","sourceRoot":"","sources":["../../src/server/package-writer.ts"],"names":[],"mappings":"AA0BA,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,yBAAyB,CAAC;AAMjC;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,QAGA,CAAC;AAEvC,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,wEAAwE;IACxE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,2BAA2B,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAKD;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzD,OAAO,CAAC,kBAAkB,CAAC,CAgC7B;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/D,OAAO,CAAC,kBAAkB,CAAC,CAqC7B;AAED;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAC7B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACL,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACtB,GACF,OAAO,CAAC,kBAAkB,CAAC,CA2D7B;AAED;;;;;;;GAOG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GACjD,OAAO,CAAC,kBAAkB,CAAC,CA8B7B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CACzC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GACxE,OAAO,CAAC,kBAAkB,CAAC,CAsC7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACtC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE;IACL,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B,EACD,KAAK,EAAE,eAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAyD7B"}
@@ -25,7 +25,7 @@ import { resolve } from 'node:path';
25
25
  import { parseText } from '../model/parser-utils.js';
26
26
  import { requireIrIdentity, resolveDeclarationByIdentity, StaleIrIdentityError, } from '../model/ir-identity.js';
27
27
  import { commitSource } from './persistor.js';
28
- import { dedent, insertIntoBody, locatePackages, removeLine, spliceIndented, } from './package-source.js';
28
+ import { dedent, insertIntoBody, locateContainers, locatePackages, removeLine, spliceIndented, } from './package-source.js';
29
29
  /**
30
30
  * Why a package rename or delete is only a text edit.
31
31
  *
@@ -55,15 +55,17 @@ export async function createPackage(cwd, request) {
55
55
  const qualifiedName = parent ? `${parent}::${name}` : name;
56
56
  const absolute = resolve(cwd, file);
57
57
  const source = existsSync(absolute) ? readFileSync(absolute, 'utf8') : '';
58
- const existing = await locatePackages(source);
59
- if (existing.some(pkg => pkg.qualifiedName === qualifiedName)) {
58
+ // Containers, not only packages: a grouping package is declared inside a
59
+ // usage body, so the parent named here may be the part being grouped.
60
+ const existing = await locateContainers(source);
61
+ if (existing.some(pkg => pkg.isPackage && pkg.qualifiedName === qualifiedName)) {
60
62
  return { success: false, filePaths: [], error: `Package "${qualifiedName}" already exists in ${file}.` };
61
63
  }
62
64
  let updated;
63
65
  if (parent) {
64
- const target = existing.find(pkg => pkg.qualifiedName === parent);
66
+ const target = existing.find(container => container.qualifiedName === parent);
65
67
  if (!target) {
66
- return { success: false, filePaths: [], error: `${file} does not declare package "${parent}".` };
68
+ return { success: false, filePaths: [], error: `${file} does not declare "${parent}".` };
67
69
  }
68
70
  updated = insertIntoBody(source, target, `package ${name} {\n}\n`);
69
71
  }
@@ -223,6 +225,57 @@ export async function deletePackage(cwd, request) {
223
225
  ...(lifted ? { warnings: [{ code: 'package-edit-is-text-only', message: PACKAGE_EDIT_IS_TEXT_ONLY }] } : {}),
224
226
  };
225
227
  }
228
+ /**
229
+ * Move a nested declaration into a grouping package beside it.
230
+ *
231
+ * Addressed by qualified name rather than by IR identity, for the same reason
232
+ * the package operations are: the IR does not ingest a declaration nested in a
233
+ * usage body, so it has no identity to quote — and a name path IS an address,
234
+ * because two members of one namespace cannot share a name.
235
+ *
236
+ * The move stays inside one file. A grouping package groups what its OWNER
237
+ * declares, so a member arriving from another file would be a containment
238
+ * change wearing a grouping change's clothes; `moveElementToPackage` is the
239
+ * operation for that.
240
+ */
241
+ export async function moveIntoGroupingPackage(cwd, request) {
242
+ const { file, qualifiedName, targetPackage } = request;
243
+ const absolute = resolve(cwd, file);
244
+ if (!existsSync(absolute))
245
+ return { success: false, filePaths: [], error: `${file} does not exist.` };
246
+ const source = readFileSync(absolute, 'utf8');
247
+ const containers = await locateContainers(source);
248
+ const moved = containers.find(container => container.qualifiedName === qualifiedName);
249
+ if (!moved) {
250
+ return { success: false, filePaths: [], error: `${file} does not declare "${qualifiedName}".` };
251
+ }
252
+ const target = containers.find(container => container.qualifiedName === targetPackage);
253
+ if (!target || !target.isPackage) {
254
+ return { success: false, filePaths: [], error: `${file} does not declare package "${targetPackage}".` };
255
+ }
256
+ // A declaration cannot be filed inside itself, and a package inside the
257
+ // declaration being moved would be spliced away with it.
258
+ if (target.start >= moved.start && target.end <= moved.end) {
259
+ return {
260
+ success: false, filePaths: [],
261
+ error: `"${targetPackage}" is declared inside "${qualifiedName}"; a declaration cannot group itself.`,
262
+ };
263
+ }
264
+ const declaration = dedent(source.slice(moved.start, moved.end).replace(/\s+$/, ''));
265
+ const withoutElement = removeLine(source, moved.start, moved.end);
266
+ // The removal shifted every offset after it, so the target is located
267
+ // again in the text the insertion will actually be applied to.
268
+ const relocated = (await locateContainers(withoutElement))
269
+ .find(container => container.qualifiedName === targetPackage);
270
+ if (!relocated) {
271
+ return { success: false, filePaths: [], error: `Removing "${qualifiedName}" would leave "${targetPackage}" unreachable.` };
272
+ }
273
+ const updated = insertIntoBody(withoutElement, relocated, `${declaration}\n`);
274
+ const committed = await commitSource(absolute, file, updated);
275
+ if (!committed.success)
276
+ return { success: false, filePaths: [], error: committed.error };
277
+ return { success: true, filePaths: [file], qualifiedName: targetPackage };
278
+ }
226
279
  /**
227
280
  * Move one element's declaration into another package.
228
281
  *
@@ -1 +1 @@
1
- {"version":3,"file":"package-writer.js","sourceRoot":"","sources":["../../src/server/package-writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-writer.js","sourceRoot":"","sources":["../../src/server/package-writer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"persistor.d.ts","sourceRoot":"","sources":["../../src/server/persistor.ts"],"names":[],"mappings":"AA4BA,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,yBAAyB,CAAC;AAGjC,8DAA8D;AAC9D,eAAO,MAAM,oBAAoB,gCAAgC,CAAC;AAElE,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,QAGI,CAAC;AAErC;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACnC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,EAC5B,KAAK,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,kBAAkB,CAAC,CAyE7B;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAC9B,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAC5D,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAc/C"}
1
+ {"version":3,"file":"persistor.d.ts","sourceRoot":"","sources":["../../src/server/persistor.ts"],"names":[],"mappings":"AA6BA,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,yBAAyB,CAAC;AAGjC,8DAA8D;AAC9D,eAAO,MAAM,oBAAoB,gCAAgC,CAAC;AAElE,MAAM,WAAW,mBAAmB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;OAQG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,mDAAmD;AACnD,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,mBAAmB,QAGI,CAAC;AAErC;;;;;;;GAOG;AACH,wBAAsB,iBAAiB,CACnC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,mBAAmB,EAC5B,KAAK,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,kBAAkB,CAAC,CA2E7B;AAED;;;;;;GAMG;AACH,wBAAsB,YAAY,CAC9B,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAC5D,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAc/C"}
@@ -25,6 +25,7 @@ import { existsSync, mkdirSync, readFileSync, renameSync, unlinkSync, writeFileS
25
25
  import { dirname, resolve } from 'node:path';
26
26
  import { generateUsage } from '../serializer/sysml-generator.js';
27
27
  import { parseText } from '../model/parser-utils.js';
28
+ import { usageKeyword } from '../model/semantic.js';
28
29
  import { requireIrIdentity, resolveDeclarationByIdentity, StaleIrIdentityError, } from '../model/ir-identity.js';
29
30
  import { insertIntoBody, locatePackages } from './package-source.js';
30
31
  /** Default home for an element the request does not place. */
@@ -65,7 +66,9 @@ export async function saveElementToFile(cwd, element, index) {
65
66
  id: element.id,
66
67
  name: element.name,
67
68
  kind: element.kind,
68
- construct: element.construct || 'part',
69
+ // Normalized at the boundary: a caller holding a kind definition has
70
+ // `part def`, and this text is a USAGE. See `usageKeyword`.
71
+ construct: usageKeyword(element.construct),
69
72
  layer: element.layer || '',
70
73
  doc: element.doc || '',
71
74
  attributes: element.attributes || {},
@@ -1 +1 @@
1
- {"version":3,"file":"persistor.js","sourceRoot":"","sources":["../../src/server/persistor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistor.js","sourceRoot":"","sources":["../../src/server/persistor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"view-layout-store.d.ts","sourceRoot":"","sources":["../../src/server/view-layout-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAUnD,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CAO/E;AAMD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI,CAgB7F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAelE;AAeD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CA+B7G;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAO1G"}
1
+ {"version":3,"file":"view-layout-store.d.ts","sourceRoot":"","sources":["../../src/server/view-layout-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAEtE,eAAO,MAAM,qBAAqB,gBAAgB,CAAC;AAUnD,sEAAsE;AACtE,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,MAAM,CAO/E;AAMD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,aAAa,GAAG,IAAI,CAgB7F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAelE;AAeD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,IAAI,CAkC7G;AAED,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAO1G"}
@@ -20,7 +20,7 @@ export function loadViewLayout(projectRoot, diagram) {
20
20
  if (existsSync(companion)) {
21
21
  try {
22
22
  const artifact = parse(readFileSync(companion, 'utf8'));
23
- if (artifact.format === 'memo.viewlayout/v1' || artifact.format === 'memo.sysmlview/v2')
23
+ if (artifact.format === 'memo.viewlayout/v2' || artifact.format === 'memo.viewlayout/v1' || artifact.format === 'memo.sysmlview/v2')
24
24
  return artifact.layouts?.[diagram.id] ?? null;
25
25
  if (artifact.format === 'memo.sysmlview/v1' && artifact.diagramId === diagram.id)
26
26
  return artifact.layout ?? null;
@@ -71,7 +71,7 @@ function readViewLayouts(path) {
71
71
  return {};
72
72
  try {
73
73
  const existing = parse(readFileSync(path, 'utf8'));
74
- if (existing.format === 'memo.viewlayout/v1' || existing.format === 'memo.sysmlview/v2')
74
+ if (existing.format === 'memo.viewlayout/v2' || existing.format === 'memo.viewlayout/v1' || existing.format === 'memo.sysmlview/v2')
75
75
  return existing.layouts ?? {};
76
76
  if (existing.diagramId && existing.layout)
77
77
  return { [existing.diagramId]: existing.layout };
@@ -109,7 +109,10 @@ export function saveViewLayout(projectRoot, diagram, layout) {
109
109
  }
110
110
  mkdirSync(dirname(path), { recursive: true });
111
111
  const artifact = {
112
- format: 'memo.viewlayout/v1',
112
+ // v2 records each node's coordinate frame (`parent`). v1 files still
113
+ // load — a node with no recorded frame is left where it is rather than
114
+ // rebased on a guess — and are rewritten as v2 on the next save.
115
+ format: 'memo.viewlayout/v2',
113
116
  ...(diagram.sourceFile ? { viewSource: diagram.sourceFile } : {}),
114
117
  layouts: { ...existingLayouts, [diagram.id]: layout },
115
118
  };
@@ -1 +1 @@
1
- {"version":3,"file":"view-layout-store.js","sourceRoot":"","sources":["../../src/server/view-layout-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-layout-store.js","sourceRoot":"","sources":["../../src/server/view-layout-store.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,10 @@
1
1
  import type { MemoModel } from '../model/semantic.js';
2
2
  import type { Violation } from './types.js';
3
3
  /**
4
- * Run behavior-specific structural validation.
4
+ * Check every flow's payload against the parameters at its ends.
5
5
  *
6
- * Checks:
7
- * 1. Unallocated ActionUsage — warning if an action usage has no allocatedTo
8
- * 2. Orphan ActionUsage — warning if an action has no flow or succession edges
9
- * 3. Incompatible flow types — error if flow source/target params don't match flow item
6
+ * An error, not a warning: a flow of something the source never emits or the
7
+ * target never accepts is not an omission, it is a contradiction.
10
8
  */
11
9
  export declare function validateBehavior(model: MemoModel): Violation[];
12
10
  //# sourceMappingURL=behavior-validator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"behavior-validator.d.ts","sourceRoot":"","sources":["../../src/validator/behavior-validator.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAgC,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,CA+G9D"}
1
+ {"version":3,"file":"behavior-validator.d.ts","sourceRoot":"","sources":["../../src/validator/behavior-validator.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,SAAS,EAAgC,MAAM,sBAAsB,CAAC;AACpF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS,EAAE,CAmE9D"}
@@ -1,69 +1,43 @@
1
1
  // ─── Behavior Validator ──────────────────────────────────────────────────────
2
2
  //
3
- // Built-in structural checks for behavior elements (actions, flows, successions).
4
- // These complement the config-driven closure rules with checks that require
5
- // deeper structural analysis of the model.
3
+ // One check: a flow's payload against the parameters at its ends.
4
+ //
5
+ // There were three. The other two invented rules a validator has no business
6
+ // inventing — "an action is allocated" and "an action is sequenced" are claims
7
+ // about a METHODOLOGY, and MEMO declares those in the ontology, where a rule
8
+ // carries its own subject set, severity, rationale, and can be tailored by a
9
+ // project. Written here instead, they applied to every action usage in the
10
+ // model, so an operative scenario and a flow step were reported as defects for
11
+ // not being wired like a function. CR-MED-022 and CR-ONT-074 already required
12
+ // the allocation, properly scoped; CR-MED-023 now requires the connection.
13
+ //
14
+ // This one stays because it is neither: it is a TYPE check, and it is not the
15
+ // ontology's to make. SysIDE — the compiler of record — accepts a flow whose
16
+ // payload matches neither end's parameters (measured, not assumed), and the
17
+ // constraint grammar cannot compare a flow's item type against the direction
18
+ // and type of a parameter on the action at each end.
6
19
  // ─────────────────────────────────────────────────────────────────────────────
7
20
  /**
8
- * Run behavior-specific structural validation.
21
+ * Check every flow's payload against the parameters at its ends.
9
22
  *
10
- * Checks:
11
- * 1. Unallocated ActionUsage — warning if an action usage has no allocatedTo
12
- * 2. Orphan ActionUsage — warning if an action has no flow or succession edges
13
- * 3. Incompatible flow types — error if flow source/target params don't match flow item
23
+ * An error, not a warning: a flow of something the source never emits or the
24
+ * target never accepts is not an omission, it is a contradiction.
14
25
  */
15
26
  export function validateBehavior(model) {
16
27
  const violations = [];
17
- const actionUsages = model.elementsByKind.get('ActionUsage') || [];
18
- // Build a lookup: action definition ID/name → parameters
28
+ // A flow endpoint resolves its parameters through its definition, so the
29
+ // definitions are indexed by both id and name — a usage names its def in
30
+ // `actionType`, and older content names it by display name.
19
31
  const defParams = new Map();
20
- const actionDefs = model.elementsByKind.get('ActionDefinition') || [];
21
- for (const def of actionDefs) {
22
- if (def.parameters && def.parameters.length > 0) {
23
- defParams.set(def.id, def.parameters);
24
- defParams.set(def.name, def.parameters);
25
- }
26
- }
27
- // Composite actions (those with nested action steps) are allocated and
28
- // connected through their children — exempt from BV-001/BV-002
29
- const compositeIds = new Set();
30
- for (const el of model.elements.values()) {
31
- if (el.parentAction)
32
- compositeIds.add(el.parentAction);
33
- }
34
- for (const action of actionUsages) {
35
- if (compositeIds.has(action.id))
32
+ for (const element of model.elements.values()) {
33
+ if (element.construct !== 'action' || !element.isDefinition)
36
34
  continue;
37
- // 1. Unallocated action usage
38
- if (!action.allocatedTo) {
39
- violations.push({
40
- ruleId: 'BV-001',
41
- description: `Action "${action.name}" is not allocated to any structural element`,
42
- severity: 'warning',
43
- elementId: action.id,
44
- elementKind: action.kind,
45
- elementName: action.name,
46
- layer: action.layer,
47
- });
48
- }
49
- // 2. Orphan action — no flow or succession edges
50
- const outgoing = model.outgoing.get(action.id) || [];
51
- const incoming = model.incoming.get(action.id) || [];
52
- const allRels = [...outgoing, ...incoming];
53
- const hasFlowOrSuccession = allRels.some(r => r.type === 'flow' || r.type === 'succession');
54
- if (!hasFlowOrSuccession) {
55
- violations.push({
56
- ruleId: 'BV-002',
57
- description: `Action "${action.name}" is not connected by any flow or succession`,
58
- severity: 'warning',
59
- elementId: action.id,
60
- elementKind: action.kind,
61
- elementName: action.name,
62
- layer: action.layer,
63
- });
35
+ if (element.parameters && element.parameters.length > 0) {
36
+ defParams.set(element.id, element.parameters);
37
+ defParams.set(element.name, element.parameters);
64
38
  }
65
39
  }
66
- // 3. Incompatible flow types — check that flow item matches parameter types
40
+ // Check that the flow item matches the parameter types at both ends.
67
41
  // Flow endpoints are action usages. Resolve each to its definition via the
68
42
  // actionType attribute stored during build.
69
43
  for (const rel of model.relationships) {
@@ -1 +1 @@
1
- {"version":3,"file":"behavior-validator.js","sourceRoot":"","sources":["../../src/validator/behavior-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"behavior-validator.js","sourceRoot":"","sources":["../../src/validator/behavior-validator.ts"],"names":[],"mappings":"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"}
@@ -26,20 +26,20 @@
26
26
  // puts a rule on this list. Conflating them double-counted it.
27
27
  // ─────────────────────────────────────────────────────────────────────────────
28
28
  export const BUILTIN_RULES = [
29
+ // BV-001 (an action is allocated) and BV-002 (an action is sequenced) were
30
+ // here and are not rules a validator should be inventing: both are
31
+ // methodology claims, and the ontology declares those — CR-MED-022 and
32
+ // CR-ONT-074 for the allocation, CR-MED-023 for the connection. Declared
33
+ // there they carry a subject set, a rationale, and the tailorability this
34
+ // list exists to admit these rules lack.
29
35
  {
30
- id: 'BV-001', name: 'ActionAllocatedRule', validator: 'behavior', severity: 'warning',
36
+ id: 'BV-003', name: 'FlowPayloadMatchesParametersRule', validator: 'behavior', severity: 'error',
31
37
  tailorable: false,
32
- description: 'An action usage is allocated to a structural element.',
33
- },
34
- {
35
- id: 'BV-002', name: 'ActionSequencedRule', validator: 'behavior', severity: 'warning',
36
- tailorable: false,
37
- description: 'An action participates in a succession or flow.',
38
- },
39
- {
40
- id: 'BV-003', name: 'BehaviorReferenceResolvableRule', validator: 'behavior', severity: 'error',
41
- tailorable: false,
42
- description: 'A succession or flow references an action that exists.',
38
+ // What it actually checks. The old description said it verified that a
39
+ // flow references an action that exists, which is neither what the code
40
+ // does nor something that can fail: an unresolvable end never becomes a
41
+ // relationship in the first place.
42
+ description: 'A flow\u2019s payload matches an output parameter at its source and an input parameter at its target.',
43
43
  },
44
44
  {
45
45
  id: 'VW-001', name: 'ViewExposesContentRule', validator: 'views', severity: 'warning',
@@ -1 +1 @@
1
- {"version":3,"file":"builtin-rules.js","sourceRoot":"","sources":["../../src/validator/builtin-rules.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,gFAAgF;AAChF,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,uCAAuC;AACvC,EAAE;AACF,qEAAqE;AACrE,+EAA+E;AAC/E,wEAAwE;AACxE,2DAA2D;AAC3D,EAAE;AACF,6EAA6E;AAC7E,yEAAyE;AACzE,gFAAgF;AAChF,8DAA8D;AAC9D,EAAE;AACF,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,+DAA+D;AAC/D,gFAAgF;AAgBhF,MAAM,CAAC,MAAM,aAAa,GAA2B;IACjD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS;QACrF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,uDAAuD;KACvE;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,qBAAqB,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS;QACrF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,iDAAiD;KACjE;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,iCAAiC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO;QAC/F,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,wDAAwD;KACxE;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;QACrF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,4CAA4C;KAC5D;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;QACjF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,yDAAyD;KACzE;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO;QACxF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,wEAAwE;KACxF;CACJ,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,MAAM,gBAAgB,GAAsB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"builtin-rules.js","sourceRoot":"","sources":["../../src/validator/builtin-rules.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,EAAE;AACF,gFAAgF;AAChF,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,gFAAgF;AAChF,8EAA8E;AAC9E,uCAAuC;AACvC,EAAE;AACF,qEAAqE;AACrE,+EAA+E;AAC/E,wEAAwE;AACxE,2DAA2D;AAC3D,EAAE;AACF,6EAA6E;AAC7E,yEAAyE;AACzE,gFAAgF;AAChF,8DAA8D;AAC9D,EAAE;AACF,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAC/E,8EAA8E;AAC9E,+EAA+E;AAC/E,+DAA+D;AAC/D,gFAAgF;AAgBhF,MAAM,CAAC,MAAM,aAAa,GAA2B;IACjD,2EAA2E;IAC3E,mEAAmE;IACnE,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,yCAAyC;IACzC;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,kCAAkC,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO;QAChG,UAAU,EAAE,KAAK;QACjB,uEAAuE;QACvE,wEAAwE;QACxE,wEAAwE;QACxE,mCAAmC;QACnC,WAAW,EAAE,uGAAuG;KACvH;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;QACrF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,4CAA4C;KAC5D;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS;QACjF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,yDAAyD;KACzE;IACD;QACI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,6BAA6B,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO;QACxF,UAAU,EAAE,KAAK;QACjB,WAAW,EAAE,wEAAwE;KACxF;CACJ,CAAC;AAEF,kDAAkD;AAClD,MAAM,CAAC,MAAM,gBAAgB,GAAsB,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { MemoModel } from '../model/semantic.js';
1
+ import type { MemoModel, MemoElement } from '../model/semantic.js';
2
2
  import type { Violation } from './types.js';
3
3
  import type { ConstraintExpr } from '../language/generated/ast.js';
4
4
  import type { KindRegistry } from '../model/kind-registry.js';
@@ -40,7 +40,7 @@ export declare function evaluateNativeConstraint(constraint: NativeConstraint, m
40
40
  * This is the shared core used by both the string entry point (above) and the
41
41
  * ontology loader, which compiles `constraint def` bodies via {@link langiumExprToNode}.
42
42
  */
43
- export declare function evaluateConstraintNode(meta: ConstraintMeta, ast: ConstraintNode, model: MemoModel, kindRegistry?: KindRegistry): Violation[];
43
+ export declare function evaluateConstraintNode(meta: ConstraintMeta, ast: ConstraintNode, model: MemoModel, kindRegistry?: KindRegistry, inScope?: (element: MemoElement) => boolean): Violation[];
44
44
  type CmpOp = '==' | '!=' | '>=' | '<=' | '>' | '<';
45
45
  type ArithOp = '+' | '-' | '*' | '/';
46
46
  type Node = {
@@ -82,6 +82,43 @@ type Node = {
82
82
  | {
83
83
  kind: 'conformsTo';
84
84
  kindName: string;
85
+ }
86
+ /**
87
+ * Transitive DIRECTIONAL navigation from the current element.
88
+ *
89
+ * The bare relation-name segment is bidirectional on purpose (see
90
+ * `navigate`), which is right for "is this hazard mitigated" but useless
91
+ * for a chain: from a requirement, `derivesFrom` returns its drivers AND
92
+ * everything derived from it in one undifferentiated collection, so no rule
93
+ * can ask "what is upstream of this".
94
+ *
95
+ * These are the additive directional tokens `navigate`'s comment
96
+ * prescribes. `upstream` walks incoming edges (this element as target),
97
+ * `downstream` walks outgoing edges (this element as source); both are
98
+ * transitive and both exclude the element itself, so a cycle terminates
99
+ * rather than hanging.
100
+ */
101
+ | {
102
+ kind: 'reach';
103
+ relationshipType: string;
104
+ direction: 'upstream' | 'downstream';
105
+ }
106
+ /** True when two collections share at least one element, compared by id. */
107
+ | {
108
+ kind: 'intersects';
109
+ target: Node;
110
+ other: Node;
111
+ }
112
+ /**
113
+ * A feature chain hanging off an arbitrary expression rather than off a
114
+ * bare identifier root — `downstream(derivesFrom).satisfiedBy`. Without it
115
+ * a directional walk is a dead end: you can reach the ancestors but not
116
+ * navigate on from them, and the trace rules need exactly that second hop.
117
+ */
118
+ | {
119
+ kind: 'chain';
120
+ target: Node;
121
+ segments: string[];
85
122
  } | {
86
123
  kind: 'method';
87
124
  target: Node;