sysmledgraph 0.7.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 (309) hide show
  1. package/README.md +71 -0
  2. package/dist/bin/cli.d.ts +6 -0
  3. package/dist/bin/cli.d.ts.map +1 -0
  4. package/dist/bin/cli.js +61 -0
  5. package/dist/bin/cli.js.map +1 -0
  6. package/dist/mcp/index.d.ts +3 -0
  7. package/dist/mcp/index.d.ts.map +1 -0
  8. package/dist/mcp/index.js +8 -0
  9. package/dist/mcp/index.js.map +1 -0
  10. package/dist/src/cli/commands.d.ts +22 -0
  11. package/dist/src/cli/commands.d.ts.map +1 -0
  12. package/dist/src/cli/commands.js +87 -0
  13. package/dist/src/cli/commands.js.map +1 -0
  14. package/dist/src/discovery/find-sysml.d.ts +16 -0
  15. package/dist/src/discovery/find-sysml.d.ts.map +1 -0
  16. package/dist/src/discovery/find-sysml.js +30 -0
  17. package/dist/src/discovery/find-sysml.js.map +1 -0
  18. package/dist/src/discovery/load-order.d.ts +11 -0
  19. package/dist/src/discovery/load-order.d.ts.map +1 -0
  20. package/dist/src/discovery/load-order.js +85 -0
  21. package/dist/src/discovery/load-order.js.map +1 -0
  22. package/dist/src/graph/connection.d.ts +6 -0
  23. package/dist/src/graph/connection.d.ts.map +1 -0
  24. package/dist/src/graph/connection.js +7 -0
  25. package/dist/src/graph/connection.js.map +1 -0
  26. package/dist/src/graph/graph-store.d.ts +37 -0
  27. package/dist/src/graph/graph-store.d.ts.map +1 -0
  28. package/dist/src/graph/graph-store.js +108 -0
  29. package/dist/src/graph/graph-store.js.map +1 -0
  30. package/dist/src/graph/schema.d.ts +13 -0
  31. package/dist/src/graph/schema.d.ts.map +1 -0
  32. package/dist/src/graph/schema.js +21 -0
  33. package/dist/src/graph/schema.js.map +1 -0
  34. package/dist/src/index.d.ts +14 -0
  35. package/dist/src/index.d.ts.map +1 -0
  36. package/dist/src/index.js +14 -0
  37. package/dist/src/index.js.map +1 -0
  38. package/dist/src/indexer/indexer.d.ts +20 -0
  39. package/dist/src/indexer/indexer.d.ts.map +1 -0
  40. package/dist/src/indexer/indexer.js +56 -0
  41. package/dist/src/indexer/indexer.js.map +1 -0
  42. package/dist/src/indexer/pipeline-phases.d.ts +8 -0
  43. package/dist/src/indexer/pipeline-phases.d.ts.map +1 -0
  44. package/dist/src/indexer/pipeline-phases.js +14 -0
  45. package/dist/src/indexer/pipeline-phases.js.map +1 -0
  46. package/dist/src/mcp/resources/context.d.ts +6 -0
  47. package/dist/src/mcp/resources/context.d.ts.map +1 -0
  48. package/dist/src/mcp/resources/context.js +45 -0
  49. package/dist/src/mcp/resources/context.js.map +1 -0
  50. package/dist/src/mcp/resources/schema.d.ts +6 -0
  51. package/dist/src/mcp/resources/schema.d.ts.map +1 -0
  52. package/dist/src/mcp/resources/schema.js +14 -0
  53. package/dist/src/mcp/resources/schema.js.map +1 -0
  54. package/dist/src/mcp/server.d.ts +8 -0
  55. package/dist/src/mcp/server.d.ts.map +1 -0
  56. package/dist/src/mcp/server.js +175 -0
  57. package/dist/src/mcp/server.js.map +1 -0
  58. package/dist/src/mcp/tools/clean-index.d.ts +12 -0
  59. package/dist/src/mcp/tools/clean-index.d.ts.map +1 -0
  60. package/dist/src/mcp/tools/clean-index.js +22 -0
  61. package/dist/src/mcp/tools/clean-index.js.map +1 -0
  62. package/dist/src/mcp/tools/context.d.ts +14 -0
  63. package/dist/src/mcp/tools/context.d.ts.map +1 -0
  64. package/dist/src/mcp/tools/context.js +51 -0
  65. package/dist/src/mcp/tools/context.js.map +1 -0
  66. package/dist/src/mcp/tools/cypher.d.ts +13 -0
  67. package/dist/src/mcp/tools/cypher.d.ts.map +1 -0
  68. package/dist/src/mcp/tools/cypher.js +25 -0
  69. package/dist/src/mcp/tools/cypher.js.map +1 -0
  70. package/dist/src/mcp/tools/generate-map.d.ts +13 -0
  71. package/dist/src/mcp/tools/generate-map.d.ts.map +1 -0
  72. package/dist/src/mcp/tools/generate-map.js +96 -0
  73. package/dist/src/mcp/tools/generate-map.js.map +1 -0
  74. package/dist/src/mcp/tools/impact.d.ts +14 -0
  75. package/dist/src/mcp/tools/impact.d.ts.map +1 -0
  76. package/dist/src/mcp/tools/impact.js +47 -0
  77. package/dist/src/mcp/tools/impact.js.map +1 -0
  78. package/dist/src/mcp/tools/index-db-graph.d.ts +14 -0
  79. package/dist/src/mcp/tools/index-db-graph.d.ts.map +1 -0
  80. package/dist/src/mcp/tools/index-db-graph.js +32 -0
  81. package/dist/src/mcp/tools/index-db-graph.js.map +1 -0
  82. package/dist/src/mcp/tools/list-indexed.d.ts +9 -0
  83. package/dist/src/mcp/tools/list-indexed.d.ts.map +1 -0
  84. package/dist/src/mcp/tools/list-indexed.js +14 -0
  85. package/dist/src/mcp/tools/list-indexed.js.map +1 -0
  86. package/dist/src/mcp/tools/query.d.ts +14 -0
  87. package/dist/src/mcp/tools/query.d.ts.map +1 -0
  88. package/dist/src/mcp/tools/query.js +47 -0
  89. package/dist/src/mcp/tools/query.js.map +1 -0
  90. package/dist/src/mcp/tools/rename.d.ts +19 -0
  91. package/dist/src/mcp/tools/rename.d.ts.map +1 -0
  92. package/dist/src/mcp/tools/rename.js +46 -0
  93. package/dist/src/mcp/tools/rename.js.map +1 -0
  94. package/dist/src/parser/lsp-client.d.ts +52 -0
  95. package/dist/src/parser/lsp-client.d.ts.map +1 -0
  96. package/dist/src/parser/lsp-client.js +230 -0
  97. package/dist/src/parser/lsp-client.js.map +1 -0
  98. package/dist/src/parser/lsp-server-path.d.ts +10 -0
  99. package/dist/src/parser/lsp-server-path.d.ts.map +1 -0
  100. package/dist/src/parser/lsp-server-path.js +29 -0
  101. package/dist/src/parser/lsp-server-path.js.map +1 -0
  102. package/dist/src/parser/symbols.d.ts +13 -0
  103. package/dist/src/parser/symbols.d.ts.map +1 -0
  104. package/dist/src/parser/symbols.js +150 -0
  105. package/dist/src/parser/symbols.js.map +1 -0
  106. package/dist/src/parser/sysml-mcp-client.d.ts +109 -0
  107. package/dist/src/parser/sysml-mcp-client.d.ts.map +1 -0
  108. package/dist/src/parser/sysml-mcp-client.js +185 -0
  109. package/dist/src/parser/sysml-mcp-client.js.map +1 -0
  110. package/dist/src/storage/clean.d.ts +15 -0
  111. package/dist/src/storage/clean.d.ts.map +1 -0
  112. package/dist/src/storage/clean.js +44 -0
  113. package/dist/src/storage/clean.js.map +1 -0
  114. package/dist/src/storage/list.d.ts +9 -0
  115. package/dist/src/storage/list.d.ts.map +1 -0
  116. package/dist/src/storage/list.js +12 -0
  117. package/dist/src/storage/list.js.map +1 -0
  118. package/dist/src/storage/location.d.ts +22 -0
  119. package/dist/src/storage/location.d.ts.map +1 -0
  120. package/dist/src/storage/location.js +36 -0
  121. package/dist/src/storage/location.js.map +1 -0
  122. package/dist/src/storage/registry.d.ts +14 -0
  123. package/dist/src/storage/registry.d.ts.map +1 -0
  124. package/dist/src/storage/registry.js +59 -0
  125. package/dist/src/storage/registry.js.map +1 -0
  126. package/dist/src/symbol-to-graph/mapping.d.ts +17 -0
  127. package/dist/src/symbol-to-graph/mapping.d.ts.map +1 -0
  128. package/dist/src/symbol-to-graph/mapping.js +102 -0
  129. package/dist/src/symbol-to-graph/mapping.js.map +1 -0
  130. package/dist/src/types.d.ts +40 -0
  131. package/dist/src/types.d.ts.map +1 -0
  132. package/dist/src/types.js +35 -0
  133. package/dist/src/types.js.map +1 -0
  134. package/dist/src/worker/client.d.ts +21 -0
  135. package/dist/src/worker/client.d.ts.map +1 -0
  136. package/dist/src/worker/client.js +126 -0
  137. package/dist/src/worker/client.js.map +1 -0
  138. package/dist/src/worker/gateway.d.ts +79 -0
  139. package/dist/src/worker/gateway.d.ts.map +1 -0
  140. package/dist/src/worker/gateway.js +93 -0
  141. package/dist/src/worker/gateway.js.map +1 -0
  142. package/dist/src/worker/graph-worker.d.ts +7 -0
  143. package/dist/src/worker/graph-worker.d.ts.map +1 -0
  144. package/dist/src/worker/graph-worker.js +91 -0
  145. package/dist/src/worker/graph-worker.js.map +1 -0
  146. package/dist/src/worker/protocol.d.ts +21 -0
  147. package/dist/src/worker/protocol.d.ts.map +1 -0
  148. package/dist/src/worker/protocol.js +9 -0
  149. package/dist/src/worker/protocol.js.map +1 -0
  150. package/docs/INSTALL.md +16 -0
  151. package/docs/MCP_CLIENT_TEMPLATE_ANALYSIS.md +196 -0
  152. package/docs/MCP_INTERACTION_GUIDE.md +201 -0
  153. package/docs/MCP_SERVER_FOR_CURSOR.md +124 -0
  154. package/docs/PLAN.md +58 -0
  155. package/docs/PLAN_INDEPENDENT_LSP.md +145 -0
  156. package/docs/SKILL_DESIGN_PATTERNS.md +305 -0
  157. package/docs/TOOLS.md +317 -0
  158. package/lsp/README.md +41 -0
  159. package/lsp/node_modules/.bin/sysml-mcp +12 -0
  160. package/lsp/node_modules/.bin/sysml-mcp.cmd +9 -0
  161. package/lsp/node_modules/.bin/sysml-mcp.ps1 +16 -0
  162. package/lsp/node_modules/.package-lock.json +22 -0
  163. package/lsp/node_modules/sysml-v2-lsp/CHANGELOG.md +188 -0
  164. package/lsp/node_modules/sysml-v2-lsp/LICENSE +21 -0
  165. package/lsp/node_modules/sysml-v2-lsp/README.md +172 -0
  166. package/lsp/node_modules/sysml-v2-lsp/dist/server/mcpServer.js +167 -0
  167. package/lsp/node_modules/sysml-v2-lsp/dist/server/server.js +142 -0
  168. package/lsp/node_modules/sysml-v2-lsp/index.cjs +23 -0
  169. package/lsp/node_modules/sysml-v2-lsp/package.json +131 -0
  170. package/lsp/node_modules/sysml-v2-lsp/sysml.library/.project +17 -0
  171. package/lsp/node_modules/sysml-v2-lsp/sysml.library/.settings/org.eclipse.jdt.core.prefs +11 -0
  172. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/.meta.json +10 -0
  173. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/.project.json +27 -0
  174. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/AnalysisTooling.sysml +34 -0
  175. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/SampledFunctions.sysml +119 -0
  176. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/StateSpaceRepresentation.sysml +143 -0
  177. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Analysis/TradeStudies.sysml +171 -0
  178. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Cause and Effect/.meta.json +8 -0
  179. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Cause and Effect/.project.json +23 -0
  180. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Cause and Effect/CausationConnections.sysml +83 -0
  181. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Cause and Effect/CauseAndEffect.sysml +81 -0
  182. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Geometry/.meta.json +8 -0
  183. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Geometry/.project.json +27 -0
  184. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Geometry/ShapeItems.sysml +899 -0
  185. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Geometry/SpatialItems.sysml +168 -0
  186. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/.meta.json +10 -0
  187. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/.project.json +19 -0
  188. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/ImageMetadata.sysml +78 -0
  189. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/ModelingMetadata.sysml +143 -0
  190. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/ParametersOfInterestMetadata.sysml +39 -0
  191. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Metadata/RiskMetadata.sysml +100 -0
  192. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/.meta.json +29 -0
  193. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/.project.json +23 -0
  194. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQ.sysml +42 -0
  195. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQAcoustics.sysml +439 -0
  196. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQAtomicNuclear.sysml +2726 -0
  197. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQBase.sysml +206 -0
  198. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQCharacteristicNumbers.sysml +1991 -0
  199. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQChemistryMolecular.sysml +1353 -0
  200. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQCondensedMatter.sysml +1223 -0
  201. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQElectromagnetism.sysml +2333 -0
  202. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQInformation.sysml +958 -0
  203. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQLight.sysml +1537 -0
  204. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQMechanics.sysml +1564 -0
  205. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQSpaceTime.sysml +1169 -0
  206. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/ISQThermodynamics.sysml +1256 -0
  207. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/MeasurementRefCalculations.sysml +30 -0
  208. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/MeasurementReferences.sysml +526 -0
  209. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/Quantities.sysml +107 -0
  210. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/QuantityCalculations.sysml +70 -0
  211. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/SI.sysml +378 -0
  212. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/SIPrefixes.sysml +48 -0
  213. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/TensorCalculations.sysml +50 -0
  214. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/Time.sysml +274 -0
  215. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/USCustomaryUnits.sysml +260 -0
  216. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Quantities and Units/VectorCalculations.sysml +62 -0
  217. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Requirement Derivation/.meta.json +8 -0
  218. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Requirement Derivation/.project.json +19 -0
  219. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Requirement Derivation/DerivationConnections.sysml +63 -0
  220. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Domain Libraries/Requirement Derivation/RequirementDerivation.sysml +39 -0
  221. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Data Type Library/.meta.json +9 -0
  222. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Data Type Library/.project.json +11 -0
  223. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Data Type Library/Collections.kerml +147 -0
  224. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Data Type Library/ScalarValues.kerml +23 -0
  225. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Data Type Library/VectorValues.kerml +64 -0
  226. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/.meta.json +23 -0
  227. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/.project.json +15 -0
  228. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/BaseFunctions.kerml +80 -0
  229. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/BooleanFunctions.kerml +22 -0
  230. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/CollectionFunctions.kerml +68 -0
  231. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/ComplexFunctions.kerml +47 -0
  232. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/ControlFunctions.kerml +117 -0
  233. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/DataFunctions.kerml +43 -0
  234. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/IntegerFunctions.kerml +43 -0
  235. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/NaturalFunctions.kerml +27 -0
  236. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/NumericalFunctions.kerml +43 -0
  237. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/OccurrenceFunctions.kerml +154 -0
  238. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/RationalFunctions.kerml +49 -0
  239. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/RealFunctions.kerml +56 -0
  240. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/ScalarFunctions.kerml +33 -0
  241. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/SequenceFunctions.kerml +111 -0
  242. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/StringFunctions.kerml +25 -0
  243. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/TrigFunctions.kerml +35 -0
  244. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Function Library/VectorFunctions.kerml +273 -0
  245. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/.meta.json +22 -0
  246. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/.project.json +15 -0
  247. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Base.kerml +95 -0
  248. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Clocks.kerml +156 -0
  249. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/ControlPerformances.kerml +135 -0
  250. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/FeatureReferencingPerformances.kerml +190 -0
  251. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/KerML.kerml +483 -0
  252. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Links.kerml +67 -0
  253. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Metaobjects.kerml +58 -0
  254. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Objects.kerml +212 -0
  255. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Observation.kerml +161 -0
  256. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Occurrences.kerml +992 -0
  257. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Performances.kerml +293 -0
  258. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/SpatialFrames.kerml +197 -0
  259. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/StatePerformances.kerml +145 -0
  260. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Transfers.kerml +281 -0
  261. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/TransitionPerformances.kerml +66 -0
  262. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Kernel Libraries/Kernel Semantic Library/Triggers.kerml +188 -0
  263. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/.meta.json +27 -0
  264. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/.project.json +19 -0
  265. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Actions.sysml +552 -0
  266. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Allocations.sysml +29 -0
  267. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/AnalysisCases.sysml +38 -0
  268. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Attributes.sysml +25 -0
  269. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Calculations.sysml +37 -0
  270. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Cases.sysml +71 -0
  271. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Connections.sysml +60 -0
  272. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Constraints.sysml +44 -0
  273. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Flows.sysml +126 -0
  274. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Interfaces.sysml +89 -0
  275. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Items.sysml +153 -0
  276. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Metadata.sysml +32 -0
  277. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Parts.sysml +81 -0
  278. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Ports.sysml +54 -0
  279. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Requirements.sysml +194 -0
  280. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/StandardViewDefinitions.sysml +123 -0
  281. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/States.sysml +103 -0
  282. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/SysML.sysml +539 -0
  283. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/UseCases.sysml +57 -0
  284. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/VerificationCases.sysml +103 -0
  285. package/lsp/node_modules/sysml-v2-lsp/sysml.library/Systems Library/Views.sysml +164 -0
  286. package/lsp/package-lock.json +30 -0
  287. package/lsp/package.json +15 -0
  288. package/lsp/test-server.mjs +120 -0
  289. package/package.json +61 -0
  290. package/scripts/access-sysml-mcp.mjs +45 -0
  291. package/scripts/check-sysml-v2-lsp-version.mjs +39 -0
  292. package/scripts/clean.mjs +14 -0
  293. package/scripts/compare-mcp-vs-lsp-symbols.mjs +76 -0
  294. package/scripts/debug-index.mjs +23 -0
  295. package/scripts/debug-lsp-symbols.mjs +62 -0
  296. package/scripts/deploy-skills.mjs +43 -0
  297. package/scripts/example-sysml-mcp.mjs +27 -0
  298. package/scripts/export-graph.mjs +80 -0
  299. package/scripts/generate-map.mjs +110 -0
  300. package/scripts/index-and-map.mjs +43 -0
  301. package/scripts/index-and-query.mjs +39 -0
  302. package/scripts/query-one.mjs +34 -0
  303. package/scripts/setup-lsp.mjs +36 -0
  304. package/scripts/test-lsp.mjs +55 -0
  305. package/scripts/test-mcp-debug.mjs +32 -0
  306. package/scripts/test-mcp-sysml.mjs +75 -0
  307. package/scripts/test-mcp-tools.mjs +185 -0
  308. package/scripts/test-sysml-mcp-from-node_modules.mjs +56 -0
  309. package/scripts/validate-sysml-file.mjs +69 -0
@@ -0,0 +1,156 @@
1
+ standard library package Clocks {
2
+ doc
3
+ /*
4
+ * This package models Clocks that provide an advancing numerical reference
5
+ * usable for quantifying the time of an Occurrence.
6
+ */
7
+
8
+ private import ScalarValues::NumericalValue;
9
+ private import ScalarValues::Real;
10
+ private import Occurrences::Occurrence;
11
+ private import Occurrences::Life;
12
+ private import ControlFunctions::forAll;
13
+
14
+ private struct UniversalClockLife[1] :> Clock, Life {
15
+ doc
16
+ /*
17
+ * UniversalClockLife is the classifier of the singleton Life of the universalClock.
18
+ */
19
+ }
20
+
21
+ feature universalClock : UniversalClockLife[1] {
22
+ doc
23
+ /*
24
+ * universalClock is a single Clock that can be used as a default universal
25
+ * time reference.
26
+ */
27
+ }
28
+
29
+ abstract struct Clock {
30
+ doc
31
+ /*
32
+ * A Clock provides a numerical currentTime that advances montonically
33
+ * over its lifetime. Clock is an abstract base Structure that can be
34
+ * specialized for different kinds of time quantification (e.g., discrete
35
+ * time, continuous time, time with units, etc.).
36
+ */
37
+
38
+ private thisClock : Clock :>> self;
39
+
40
+ var feature currentTime : NumericalValue[1] {
41
+ doc
42
+ /*
43
+ * A scalar time reference that advances over the lifetime of the Clock.
44
+ */
45
+ }
46
+
47
+ inv timeFlowConstraint {
48
+ doc
49
+ /*
50
+ * The currentTime of a snapshot of a Clock is equal to
51
+ * the TimeOf the snapshot relative to that Clock.
52
+ */
53
+
54
+ snapshots->forAll{in s : Clock;
55
+ TimeOf(s, thisClock) == s.currentTime
56
+ }
57
+ }
58
+ }
59
+
60
+ abstract function TimeOf {
61
+ doc
62
+ /*
63
+ * TimeOf returns a numerical timeInstant for a given Occurrence relative to
64
+ * a given Clock. The timeInstant is the time of the start of the Occurrence,
65
+ * which is considered to be synchronized with the snapshot of the Clock
66
+ * with a currentTime equal to the returned timeInstant.
67
+ */
68
+
69
+ in o : Occurrence[1];
70
+ in clock : Clock[1] default localClock;
71
+ return timeInstant : NumericalValue[1];
72
+
73
+ inv startTimeConstraint {
74
+ doc
75
+ /*
76
+ * The TimeOf an Occurrence is equal to the time of its start snapshot.
77
+ */
78
+
79
+ timeInstant == TimeOf(o.startShot, clock)
80
+ }
81
+
82
+ inv timeOrderingConstraint {
83
+ doc
84
+ /*
85
+ * If one Occurrence happens before another, then the TimeOf the end
86
+ * snapshot of the first Occurrence is no greater than the TimeOf the
87
+ * second Occurrence.
88
+ */
89
+
90
+ o.predecessors->forAll{in p : Occurrence;
91
+ TimeOf(p.endShot, clock) <= timeInstant
92
+ }
93
+ }
94
+
95
+ inv timeContinuityConstraint {
96
+ doc
97
+ /*
98
+ * If one Occurrence happens immediately before another, then the TimeOf
99
+ * the end snapshot of the first Occurrence equals the TimeOf the second
100
+ * Occurrence.
101
+ */
102
+
103
+ o.immediatePredecessors->forAll{in p : Occurrence;
104
+ TimeOf(p.endShot, clock) == timeInstant
105
+ }
106
+ }
107
+ }
108
+
109
+ function DurationOf {
110
+ doc
111
+ /*
112
+ * DurationOf returns the duration of a given Occurrence relative to a
113
+ * given Clock, which is equal to the TimeOf the end snapshot of the
114
+ * Occurrence minus the TimeOf its start snapshot.
115
+ */
116
+
117
+ in o : Occurrence[1];
118
+ in clock : Clock[1] default localClock;
119
+ return duration : NumericalValue =
120
+ TimeOf(o.endShot, clock) - TimeOf(o.startShot, clock);
121
+ }
122
+
123
+ struct BasicClock :> Clock {
124
+ doc
125
+ /*
126
+ * A BasicClock is a Clock whose currentTime is a Real number.
127
+ */
128
+
129
+ var feature :>> currentTime : Real;
130
+ }
131
+
132
+ function BasicTimeOf :> TimeOf {
133
+ doc
134
+ /*
135
+ * BasicTimeOf returns the TimeOf an Occurrence as a Real number relative
136
+ * to a BasicClock.
137
+ */
138
+
139
+ in o : Occurrence[1];
140
+ in clock : BasicClock[1];
141
+ return : Real[1];
142
+ }
143
+
144
+ function BasicDurationOf :> DurationOf {
145
+ doc
146
+ /*
147
+ * BasicDurationOf returns the DurationOf an Occurrence as a Real number relative
148
+ * to a BasicClock.
149
+ */
150
+
151
+ in o : Occurrence[1];
152
+ in clock : BasicClock[1];
153
+ return : Real[1];
154
+ }
155
+
156
+ }
@@ -0,0 +1,135 @@
1
+ standard library package ControlPerformances {
2
+ doc
3
+ /*
4
+ * This package defines Behaviors to be used to type Steps that control the sequencing of performance
5
+ * of other Steps.
6
+ */
7
+
8
+ private import ScalarValues::Boolean;
9
+ private import SequenceFunctions::size;
10
+ private import SequenceFunctions::notEmpty;
11
+ private import Occurrences::Occurrence;
12
+ private import Occurrences::HappensBefore;
13
+ private import Occurrences::SelfSameLifeLink;
14
+ private import Performances::Performance;
15
+ private import Performances::BooleanEvaluation;
16
+
17
+ behavior DecisionPerformance specializes Performance {
18
+ doc
19
+ /*
20
+ * A DecisionPerformance is a Performance that represents the selection of one of the Successions
21
+ * that have the DecisionPerforance behavior as their source. All such Successions must subset the
22
+ * outgoingHBLink feature of the source DecisionPerformance. For each instance of DecisionPerformance,
23
+ * the outgoingHBLink is an instance of exactly one of the Successions, ordering the DecisionPerformance
24
+ * as happening before an instance of the target of that Succcession.
25
+ */
26
+
27
+ feature outgoingHBLink: HappensBefore[1] {
28
+ doc
29
+ /*
30
+ * Specializations subset this by all
31
+ * successions going out of a decision step.
32
+ */
33
+
34
+ end feature redefines earlierOccurrence subsets that;
35
+ }
36
+ }
37
+
38
+ behavior MergePerformance specializes Performance {
39
+ doc
40
+ /*
41
+ * A MergePerformance is a Performance that represents the merging of all Successions that
42
+ * target the MergePerforance behavior. All such Successions must subset the incomingHBLink
43
+ * feature of the target MergePerformance. For each instance of MergePerformance, the
44
+ * incomingHBLink is an instance of exactly one of the Successions, ordering the
45
+ * MergePerformance as happening after an instance of the source of that Succession.
46
+ */
47
+
48
+ feature incomingHBLink: HappensBefore[1] {
49
+ doc
50
+ /*
51
+ * Specializations subset this by all
52
+ * successions coming into a merge step.
53
+ */
54
+
55
+ end feature redefines laterOccurrence subsets that;
56
+ }
57
+ }
58
+
59
+ abstract behavior IfPerformance specializes Performance {
60
+ doc
61
+ /*
62
+ * An IfPerformance is a Performance that determines whether the ifTest evaluation result is true
63
+ * (by whether ifTrue has a value).
64
+ */
65
+
66
+ in ifTest : BooleanEvaluation[1];
67
+ }
68
+
69
+ behavior IfThenPerformance specializes IfPerformance {
70
+ doc
71
+ /*
72
+ * An IfThenPerformance is an IfPerformance where the thenClause occurs after and only after the
73
+ * ifTest evaluation result is true.
74
+ */
75
+
76
+ in redefines ifTest;
77
+ in thenClause : Occurrence[0..1];
78
+ succession [1] ifTest then [0..1] thenClause;
79
+ inv { ifTest() == thenClause->notEmpty() }
80
+ }
81
+
82
+ behavior IfElsePerformance specializes IfPerformance {
83
+ doc
84
+ /*
85
+ * An IfElsePerformance is an IfPerformance where the elseClause occurs after and only
86
+ * after the ifTest evaluation result is not true.
87
+ */
88
+
89
+ in redefines ifTest;
90
+ in elseClause : Occurrence[0..1];
91
+ succession [1] ifTest then [0..1] elseClause;
92
+ inv { not ifTest() == elseClause->notEmpty() }
93
+ }
94
+
95
+ behavior IfThenElsePerformance specializes IfThenPerformance {
96
+ doc
97
+ /*
98
+ * An IfThenElsePerformance is an IfThenPerformance with an additional elseClause that
99
+ * occurs after and only after the ifTest evaluation is false.
100
+ */
101
+
102
+ in redefines ifTest;
103
+ in redefines thenClause;
104
+ in elseClause : Occurrence[0..1];
105
+ succession [1] ifTest then [0..1] elseClause;
106
+ inv { not ifTest() == elseClause->notEmpty() }
107
+ }
108
+
109
+ behavior LoopPerformance specializes Performance {
110
+ doc
111
+ /*
112
+ * A LoopPerformance is a Performance where the body occurs repeatedly in sequence (iterates)
113
+ * as long as the whileTest evaluation result is true before each iteration (and after the
114
+ * previous one, except the first time) and the untilTest evaluation result is not true after
115
+ * each iteration and before the next one (except the last one).
116
+ */
117
+
118
+ in whileTest : BooleanEvaluation[1..*];
119
+ in body : Occurrence[0..*];
120
+ in untilTest : BooleanEvaluation[0..*];
121
+
122
+ step whileDecision : IfThenPerformance[1..*];
123
+ step untilDecision : IfElsePerformance[0..*];
124
+
125
+ binding [1] whileDecision.ifTest = [1] whileTest;
126
+ binding [1] whileDecision.thenClause = [1] body;
127
+
128
+ succession body then untilDecision;
129
+
130
+ binding [1] untilDecision.ifTest = [1] untilTest;
131
+ binding loopBack of [0..1] untilDecision.elseClause = [1] whileDecision;
132
+
133
+ inv { loopBack->size() == whileDecision->size() - 1 }
134
+ }
135
+ }
@@ -0,0 +1,190 @@
1
+ standard library package FeatureReferencingPerformances {
2
+ doc
3
+ /*
4
+ * This package defines Behaviors used to read, write and monitor values of a referenced Feature of an
5
+ * Occurrence.
6
+ */
7
+
8
+ private import Base::Anything;
9
+ private import Base::things;
10
+ private import Occurrences::Occurrence;
11
+ private import Occurrences::HappensWhile;
12
+ private import Occurrences::HappensBefore;
13
+ private import Occurrences::HappensJustBefore;
14
+ private import Occurrences::SelfSameLifeLink;
15
+ private import Performances::Performance;
16
+ private import Performances::Evaluation;
17
+ private import ScalarValues::Boolean;
18
+ private import SequenceFunctions::isEmpty;
19
+ private import SequenceFunctions::equals;
20
+
21
+ abstract behavior FeatureReferencingPerformance specializes Performance {
22
+ doc
23
+ /*
24
+ * A FeatureReferencingPerformance is the base Performance for specialized behaviors related
25
+ * to values of a referenced Feature of a given Occurrence, as identified in specializations
26
+ * of this Behavior.
27
+ */
28
+
29
+ in abstract feature onOccurrence : Occurrence [1] {
30
+ doc
31
+ /*
32
+ * Occurrence with values for the referenced feature in specializations of this behavior.
33
+ */
34
+ }
35
+
36
+ inout feature values : Anything [*] nonunique {
37
+ doc
38
+ /*
39
+ * Values of the referenced feature, as specified in specializations of this behavior.
40
+ */
41
+ }
42
+ }
43
+
44
+ abstract behavior FeatureAccessPerformance specializes FeatureReferencingPerformance {
45
+ doc
46
+ /*
47
+ * A FeatureAccessPerformance is a FeatureReferencingPerformance where the result values
48
+ * are all the values of a feature of onOccurrence at the time the Performance ends. The
49
+ * feature is specified by restricting accessedFeature in specializations or usages.
50
+ */
51
+
52
+ in abstract feature onOccurrence : Occurrence {
53
+ abstract feature startingAt : Occurrence [1] subsets timeSlices {
54
+ abstract feature accessedFeature : Anything [*] nonunique;
55
+ }
56
+ }
57
+
58
+ connector :HappensWhile from onOccurrence.startingAt.startShot to endShot {
59
+ doc
60
+ /*
61
+ * Requires some time slice of onOccurrence to start when this performance
62
+ * ends (this connector), with particular feature values (following connector).
63
+ * The feature is specified by restricting the onOccurrence::accessedFeature
64
+ * on usages of this behavior.
65
+ */
66
+ }
67
+ connector :SelfSameLifeLink from onOccurrence.startingAt.accessedFeature to values;
68
+ }
69
+
70
+ abstract function FeatureReadEvaluation specializes FeatureAccessPerformance, Evaluation {
71
+ doc
72
+ /*
73
+ * A FeatureReadEvaluation is a FeatureAccessPerformance that is a function providing as
74
+ * its result the values of a feature on an occurrence at the time its evaluation ends.
75
+ */
76
+
77
+ in onOccurrence: Occurrence [1];
78
+ return resultValues : Anything [*] nonunique redefines result redefines values;
79
+ }
80
+
81
+ abstract behavior FeatureWritePerformance specializes FeatureAccessPerformance {
82
+ doc
83
+ /*
84
+ * A FeatureWritePerformance is a FeatureAccessPerformance that assigns the values of a
85
+ * feature on an occurrence to the given replacementValues at time its performance ends.
86
+ */
87
+
88
+ in feature onOccurrence : Occurrence[1] redefines onOccurrence;
89
+ inout feature replacementValues : Anything redefines values [*] nonunique;
90
+ }
91
+
92
+ abstract behavior FeatureMonitorPerformance specializes FeatureReferencingPerformance {
93
+ doc
94
+ /*
95
+ * A FeatureMonitorPerformance is a FeatureReferencingPerformance that waits for values
96
+ * of monitoredFeature to change on onOccurrence from what they were when the performance
97
+ * started. The values before and after the change are given by beforeValues and afterValues.
98
+ */
99
+
100
+ in feature redefines onOccurrence {
101
+ feature monitoredOccurrence : Occurrence [1] subsets timeSlices {
102
+ abstract feature monitoredFeature : Anything[*] nonunique;
103
+ feature beforeTimeSlice : Occurrence [1] subsets timeSlices {
104
+ feature redefines monitoredFeature;
105
+ }
106
+ feature afterSnapshot : Occurrence [1] subsets snapshots {
107
+ feature redefines monitoredFeature;
108
+ }
109
+ connector :HappensJustBefore from beforeTimeSlice to afterSnapshot;
110
+ }
111
+ }
112
+ out feature afterValues redefines values;
113
+ out feature beforeValues : Anything[*] nonunique;
114
+ inv { not beforeValues->equals(afterValues) }
115
+
116
+ private connector : HappensWhile
117
+ from [1] onOccurrence.monitoredOccurrence.beforeTimeSlice.startShot to [1] startShot;
118
+ private connector : SelfSameLifeLink
119
+ from [1] onOccurrence.monitoredOccurrence.beforeTimeSlice.monitoredFeature to [1] beforeValues;
120
+ private connector : SelfSameLifeLink
121
+ from [1] onOccurrence.monitoredOccurrence.afterSnapshot.monitoredFeature to [1] afterValues;
122
+ protected connector endWhen : HappensBefore
123
+ from [1] onOccurrence.monitoredOccurrence.afterSnapshot to [1] endShot;
124
+ }
125
+
126
+ behavior EvaluationResultMonitorPerformance specializes FeatureMonitorPerformance {
127
+ doc
128
+ /*
129
+ * An EvaluationResultMonitorPerformance is a FeatureMonitorPerformance that waits for changes
130
+ * in the result of an Evaluation identified by onOccurrence. The Predicate being evaluated must
131
+ * be able to produce multiple results over time, for example by only using BindingConnectors
132
+ * between Steps, rather than Successions or Flows, including in its Step behaviors.
133
+ */
134
+
135
+ in feature onOccurrence : Evaluation redefines onOccurrence {
136
+ protected expr monitoredOccurrence : Evaluation [1] redefines monitoredOccurrence {
137
+ return result : Anything[*] redefines result, monitoredFeature;
138
+ }
139
+ }
140
+ }
141
+
142
+ behavior BooleanEvaluationResultMonitorPerformance specializes EvaluationResultMonitorPerformance {
143
+ doc
144
+ /*
145
+ * A BooleanEvaluationResultMonitorPerformance is a EvaluationResultMonitorPerformance
146
+ * that waits for changes in the result of a BooleanEvaluation identified by onOccurrence.
147
+ */
148
+
149
+ in bool redefines onOccurrence {
150
+ protected bool redefines monitoredOccurrence[1] {
151
+ return result : Boolean [1];
152
+ }
153
+ }
154
+ out redefines afterValues : Boolean [1];
155
+ out redefines beforeValues : Boolean [1];
156
+ }
157
+
158
+ behavior BooleanEvaluationResultToMonitorPerformance specializes FeatureReferencingPerformance {
159
+ doc
160
+ /*
161
+ * A BooleanEvaluationResultToMonitorPerformance is a FeatureReferencingPerformance that waits
162
+ * for the result of a BooleanEvaluation (identified by onOccurrence) to change to either true
163
+ * or false, as indicated by isToTrue (defaulting to true). If the result is already true (or false),
164
+ * the performance waits for the result to become false (or true) before waiting again for it to
165
+ * change back.
166
+ */
167
+
168
+ in bool redefines onOccurrence;
169
+ feature isToTrue : Boolean [1] default true;
170
+ out afterValues: Boolean[1] redefines values = isToTrue;
171
+ private feature monitor1 : BooleanEvaluationResultMonitorPerformance [1] {
172
+ feature redefines endWhen : HappensJustBefore {
173
+ end feature earlierOccurrence;
174
+ end feature laterOccurrence;
175
+ }
176
+ }
177
+ private feature monitor2 : BooleanEvaluationResultMonitorPerformance [1] {
178
+ feature redefines endWhen : HappensJustBefore {
179
+ end feature earlierOccurrence;
180
+ end feature laterOccurrence;
181
+ }
182
+ }
183
+
184
+ private connector : HappensJustBefore from [1] monitor1 to [0..1] monitor2;
185
+ inv { isEmpty(monitor2) == (monitor1.afterValues == isToTrue) }
186
+
187
+ private binding [1] monitor1.onOccurrence = [1] onOccurrence;
188
+ private binding [1] monitor2.onOccurrence = [1] onOccurrence;
189
+ }
190
+ }