@memoarchitect/tools 0.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +171 -0
- package/package.json +86 -0
- package/packages/tools/lib/__tests__/archetype-parsing.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/archetype-parsing.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/archetype-parsing.test.js +42 -0
- package/packages/tools/lib/__tests__/archetype-parsing.test.js.map +1 -0
- package/packages/tools/lib/__tests__/architecture-discovery.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/architecture-discovery.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/architecture-discovery.test.js +82 -0
- package/packages/tools/lib/__tests__/architecture-discovery.test.js.map +1 -0
- package/packages/tools/lib/__tests__/behavior.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/behavior.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/behavior.test.js +766 -0
- package/packages/tools/lib/__tests__/behavior.test.js.map +1 -0
- package/packages/tools/lib/__tests__/builder.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/builder.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/builder.test.js +728 -0
- package/packages/tools/lib/__tests__/builder.test.js.map +1 -0
- package/packages/tools/lib/__tests__/config-loader.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/config-loader.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/config-loader.test.js +196 -0
- package/packages/tools/lib/__tests__/config-loader.test.js.map +1 -0
- package/packages/tools/lib/__tests__/conformance.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/conformance.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/conformance.test.js +467 -0
- package/packages/tools/lib/__tests__/conformance.test.js.map +1 -0
- package/packages/tools/lib/__tests__/constraint-eval.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/constraint-eval.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/constraint-eval.test.js +195 -0
- package/packages/tools/lib/__tests__/constraint-eval.test.js.map +1 -0
- package/packages/tools/lib/__tests__/constraint-grammar.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/constraint-grammar.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/constraint-grammar.test.js +163 -0
- package/packages/tools/lib/__tests__/constraint-grammar.test.js.map +1 -0
- package/packages/tools/lib/__tests__/constraint-loader.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/constraint-loader.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/constraint-loader.test.js +150 -0
- package/packages/tools/lib/__tests__/constraint-loader.test.js.map +1 -0
- package/packages/tools/lib/__tests__/csv-io.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/csv-io.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/csv-io.test.js +317 -0
- package/packages/tools/lib/__tests__/csv-io.test.js.map +1 -0
- package/packages/tools/lib/__tests__/dhf-doc-store.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/dhf-doc-store.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/dhf-doc-store.test.js +94 -0
- package/packages/tools/lib/__tests__/dhf-doc-store.test.js.map +1 -0
- package/packages/tools/lib/__tests__/dhf-template-resolver.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/dhf-template-resolver.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/dhf-template-resolver.test.js +39 -0
- package/packages/tools/lib/__tests__/dhf-template-resolver.test.js.map +1 -0
- package/packages/tools/lib/__tests__/dhf.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/dhf.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/dhf.test.js +393 -0
- package/packages/tools/lib/__tests__/dhf.test.js.map +1 -0
- package/packages/tools/lib/__tests__/dimension-filter.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/dimension-filter.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/dimension-filter.test.js +85 -0
- package/packages/tools/lib/__tests__/dimension-filter.test.js.map +1 -0
- package/packages/tools/lib/__tests__/dsm.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/dsm.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/dsm.test.js +112 -0
- package/packages/tools/lib/__tests__/dsm.test.js.map +1 -0
- package/packages/tools/lib/__tests__/e2e-workflow.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/e2e-workflow.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/e2e-workflow.test.js +707 -0
- package/packages/tools/lib/__tests__/e2e-workflow.test.js.map +1 -0
- package/packages/tools/lib/__tests__/file-watcher.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/file-watcher.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/file-watcher.test.js +31 -0
- package/packages/tools/lib/__tests__/file-watcher.test.js.map +1 -0
- package/packages/tools/lib/__tests__/impact.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/impact.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/impact.test.js +82 -0
- package/packages/tools/lib/__tests__/impact.test.js.map +1 -0
- package/packages/tools/lib/__tests__/importer.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/importer.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/importer.test.js +336 -0
- package/packages/tools/lib/__tests__/importer.test.js.map +1 -0
- package/packages/tools/lib/__tests__/kind-registry.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/kind-registry.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/kind-registry.test.js +132 -0
- package/packages/tools/lib/__tests__/kind-registry.test.js.map +1 -0
- package/packages/tools/lib/__tests__/llm.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/llm.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/llm.test.js +275 -0
- package/packages/tools/lib/__tests__/llm.test.js.map +1 -0
- package/packages/tools/lib/__tests__/manifest-resolver.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/manifest-resolver.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/manifest-resolver.test.js +97 -0
- package/packages/tools/lib/__tests__/manifest-resolver.test.js.map +1 -0
- package/packages/tools/lib/__tests__/markdown-to-ir.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/markdown-to-ir.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/markdown-to-ir.test.js +74 -0
- package/packages/tools/lib/__tests__/markdown-to-ir.test.js.map +1 -0
- package/packages/tools/lib/__tests__/methodology-scope.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/methodology-scope.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/methodology-scope.test.js +59 -0
- package/packages/tools/lib/__tests__/methodology-scope.test.js.map +1 -0
- package/packages/tools/lib/__tests__/parser.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/parser.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/parser.test.js +938 -0
- package/packages/tools/lib/__tests__/parser.test.js.map +1 -0
- package/packages/tools/lib/__tests__/plugin.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/plugin.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/plugin.test.js +308 -0
- package/packages/tools/lib/__tests__/plugin.test.js.map +1 -0
- package/packages/tools/lib/__tests__/relationship-registry.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/relationship-registry.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/relationship-registry.test.js +96 -0
- package/packages/tools/lib/__tests__/relationship-registry.test.js.map +1 -0
- package/packages/tools/lib/__tests__/rule-registry.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/rule-registry.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/rule-registry.test.js +53 -0
- package/packages/tools/lib/__tests__/rule-registry.test.js.map +1 -0
- package/packages/tools/lib/__tests__/toolchain.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/toolchain.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/toolchain.test.js +94 -0
- package/packages/tools/lib/__tests__/toolchain.test.js.map +1 -0
- package/packages/tools/lib/__tests__/view-deriver-samples.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/view-deriver-samples.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/view-deriver-samples.test.js +39 -0
- package/packages/tools/lib/__tests__/view-deriver-samples.test.js.map +1 -0
- package/packages/tools/lib/__tests__/view-kinds.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/view-kinds.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/view-kinds.test.js +263 -0
- package/packages/tools/lib/__tests__/view-kinds.test.js.map +1 -0
- package/packages/tools/lib/__tests__/view-layout-store.test.d.ts +2 -0
- package/packages/tools/lib/__tests__/view-layout-store.test.d.ts.map +1 -0
- package/packages/tools/lib/__tests__/view-layout-store.test.js +61 -0
- package/packages/tools/lib/__tests__/view-layout-store.test.js.map +1 -0
- package/packages/tools/lib/analysis/dsm.d.ts +47 -0
- package/packages/tools/lib/analysis/dsm.d.ts.map +1 -0
- package/packages/tools/lib/analysis/dsm.js +172 -0
- package/packages/tools/lib/analysis/dsm.js.map +1 -0
- package/packages/tools/lib/analysis/impact.d.ts +35 -0
- package/packages/tools/lib/analysis/impact.d.ts.map +1 -0
- package/packages/tools/lib/analysis/impact.js +97 -0
- package/packages/tools/lib/analysis/impact.js.map +1 -0
- package/packages/tools/lib/bin/memo.d.ts +3 -0
- package/packages/tools/lib/bin/memo.d.ts.map +1 -0
- package/packages/tools/lib/bin/memo.js +461 -0
- package/packages/tools/lib/bin/memo.js.map +1 -0
- package/packages/tools/lib/browser/index.d.ts +13 -0
- package/packages/tools/lib/browser/index.d.ts.map +1 -0
- package/packages/tools/lib/browser/index.js +11 -0
- package/packages/tools/lib/browser/index.js.map +1 -0
- package/packages/tools/lib/commands/archetype-loader.d.ts +15 -0
- package/packages/tools/lib/commands/archetype-loader.d.ts.map +1 -0
- package/packages/tools/lib/commands/archetype-loader.js +31 -0
- package/packages/tools/lib/commands/archetype-loader.js.map +1 -0
- package/packages/tools/lib/commands/ask.d.ts +6 -0
- package/packages/tools/lib/commands/ask.d.ts.map +1 -0
- package/packages/tools/lib/commands/ask.js +79 -0
- package/packages/tools/lib/commands/ask.js.map +1 -0
- package/packages/tools/lib/commands/check.d.ts +6 -0
- package/packages/tools/lib/commands/check.d.ts.map +1 -0
- package/packages/tools/lib/commands/check.js +214 -0
- package/packages/tools/lib/commands/check.js.map +1 -0
- package/packages/tools/lib/commands/create-package.d.ts +12 -0
- package/packages/tools/lib/commands/create-package.d.ts.map +1 -0
- package/packages/tools/lib/commands/create-package.js +293 -0
- package/packages/tools/lib/commands/create-package.js.map +1 -0
- package/packages/tools/lib/commands/dev.d.ts +6 -0
- package/packages/tools/lib/commands/dev.d.ts.map +1 -0
- package/packages/tools/lib/commands/dev.js +316 -0
- package/packages/tools/lib/commands/dev.js.map +1 -0
- package/packages/tools/lib/commands/dhf-draft.d.ts +8 -0
- package/packages/tools/lib/commands/dhf-draft.d.ts.map +1 -0
- package/packages/tools/lib/commands/dhf-draft.js +115 -0
- package/packages/tools/lib/commands/dhf-draft.js.map +1 -0
- package/packages/tools/lib/commands/dhf-init.d.ts +4 -0
- package/packages/tools/lib/commands/dhf-init.d.ts.map +1 -0
- package/packages/tools/lib/commands/dhf-init.js +270 -0
- package/packages/tools/lib/commands/dhf-init.js.map +1 -0
- package/packages/tools/lib/commands/dhf-preview.d.ts +4 -0
- package/packages/tools/lib/commands/dhf-preview.d.ts.map +1 -0
- package/packages/tools/lib/commands/dhf-preview.js +285 -0
- package/packages/tools/lib/commands/dhf-preview.js.map +1 -0
- package/packages/tools/lib/commands/dhf.d.ts +27 -0
- package/packages/tools/lib/commands/dhf.d.ts.map +1 -0
- package/packages/tools/lib/commands/dhf.js +334 -0
- package/packages/tools/lib/commands/dhf.js.map +1 -0
- package/packages/tools/lib/commands/export.d.ts +9 -0
- package/packages/tools/lib/commands/export.d.ts.map +1 -0
- package/packages/tools/lib/commands/export.js +136 -0
- package/packages/tools/lib/commands/export.js.map +1 -0
- package/packages/tools/lib/commands/generate.d.ts +6 -0
- package/packages/tools/lib/commands/generate.d.ts.map +1 -0
- package/packages/tools/lib/commands/generate.js +80 -0
- package/packages/tools/lib/commands/generate.js.map +1 -0
- package/packages/tools/lib/commands/import-ea.d.ts +32 -0
- package/packages/tools/lib/commands/import-ea.d.ts.map +1 -0
- package/packages/tools/lib/commands/import-ea.js +156 -0
- package/packages/tools/lib/commands/import-ea.js.map +1 -0
- package/packages/tools/lib/commands/import-owl.d.ts +19 -0
- package/packages/tools/lib/commands/import-owl.d.ts.map +1 -0
- package/packages/tools/lib/commands/import-owl.js +103 -0
- package/packages/tools/lib/commands/import-owl.js.map +1 -0
- package/packages/tools/lib/commands/import-sysand.d.ts +11 -0
- package/packages/tools/lib/commands/import-sysand.d.ts.map +1 -0
- package/packages/tools/lib/commands/import-sysand.js +87 -0
- package/packages/tools/lib/commands/import-sysand.js.map +1 -0
- package/packages/tools/lib/commands/import.d.ts +30 -0
- package/packages/tools/lib/commands/import.d.ts.map +1 -0
- package/packages/tools/lib/commands/import.js +250 -0
- package/packages/tools/lib/commands/import.js.map +1 -0
- package/packages/tools/lib/commands/init-wizard.d.ts +10 -0
- package/packages/tools/lib/commands/init-wizard.d.ts.map +1 -0
- package/packages/tools/lib/commands/init-wizard.js +69 -0
- package/packages/tools/lib/commands/init-wizard.js.map +1 -0
- package/packages/tools/lib/commands/init.d.ts +30 -0
- package/packages/tools/lib/commands/init.d.ts.map +1 -0
- package/packages/tools/lib/commands/init.js +238 -0
- package/packages/tools/lib/commands/init.js.map +1 -0
- package/packages/tools/lib/commands/install.d.ts +8 -0
- package/packages/tools/lib/commands/install.d.ts.map +1 -0
- package/packages/tools/lib/commands/install.js +238 -0
- package/packages/tools/lib/commands/install.js.map +1 -0
- package/packages/tools/lib/commands/lock.d.ts +2 -0
- package/packages/tools/lib/commands/lock.d.ts.map +1 -0
- package/packages/tools/lib/commands/lock.js +29 -0
- package/packages/tools/lib/commands/lock.js.map +1 -0
- package/packages/tools/lib/commands/ontology.d.ts +14 -0
- package/packages/tools/lib/commands/ontology.d.ts.map +1 -0
- package/packages/tools/lib/commands/ontology.js +464 -0
- package/packages/tools/lib/commands/ontology.js.map +1 -0
- package/packages/tools/lib/commands/pack.d.ts +4 -0
- package/packages/tools/lib/commands/pack.d.ts.map +1 -0
- package/packages/tools/lib/commands/pack.js +89 -0
- package/packages/tools/lib/commands/pack.js.map +1 -0
- package/packages/tools/lib/commands/plugin.d.ts +10 -0
- package/packages/tools/lib/commands/plugin.d.ts.map +1 -0
- package/packages/tools/lib/commands/plugin.js +195 -0
- package/packages/tools/lib/commands/plugin.js.map +1 -0
- package/packages/tools/lib/commands/req.d.ts +10 -0
- package/packages/tools/lib/commands/req.d.ts.map +1 -0
- package/packages/tools/lib/commands/req.js +64 -0
- package/packages/tools/lib/commands/req.js.map +1 -0
- package/packages/tools/lib/commands/roundtrip.d.ts +6 -0
- package/packages/tools/lib/commands/roundtrip.d.ts.map +1 -0
- package/packages/tools/lib/commands/roundtrip.js +162 -0
- package/packages/tools/lib/commands/roundtrip.js.map +1 -0
- package/packages/tools/lib/commands/rules.d.ts +15 -0
- package/packages/tools/lib/commands/rules.d.ts.map +1 -0
- package/packages/tools/lib/commands/rules.js +282 -0
- package/packages/tools/lib/commands/rules.js.map +1 -0
- package/packages/tools/lib/commands/sysand-publish.d.ts +6 -0
- package/packages/tools/lib/commands/sysand-publish.d.ts.map +1 -0
- package/packages/tools/lib/commands/sysand-publish.js +231 -0
- package/packages/tools/lib/commands/sysand-publish.js.map +1 -0
- package/packages/tools/lib/commands/validate.d.ts +6 -0
- package/packages/tools/lib/commands/validate.d.ts.map +1 -0
- package/packages/tools/lib/commands/validate.js +269 -0
- package/packages/tools/lib/commands/validate.js.map +1 -0
- package/packages/tools/lib/completeness/tracker.d.ts +11 -0
- package/packages/tools/lib/completeness/tracker.d.ts.map +1 -0
- package/packages/tools/lib/completeness/tracker.js +86 -0
- package/packages/tools/lib/completeness/tracker.js.map +1 -0
- package/packages/tools/lib/dhf/dhf-config-v2.d.ts +102 -0
- package/packages/tools/lib/dhf/dhf-config-v2.d.ts.map +1 -0
- package/packages/tools/lib/dhf/dhf-config-v2.js +82 -0
- package/packages/tools/lib/dhf/dhf-config-v2.js.map +1 -0
- package/packages/tools/lib/dhf/dhf-config.d.ts +53 -0
- package/packages/tools/lib/dhf/dhf-config.d.ts.map +1 -0
- package/packages/tools/lib/dhf/dhf-config.js +44 -0
- package/packages/tools/lib/dhf/dhf-config.js.map +1 -0
- package/packages/tools/lib/dhf/directive-parser.d.ts +31 -0
- package/packages/tools/lib/dhf/directive-parser.d.ts.map +1 -0
- package/packages/tools/lib/dhf/directive-parser.js +83 -0
- package/packages/tools/lib/dhf/directive-parser.js.map +1 -0
- package/packages/tools/lib/dhf/document-compiler.d.ts +68 -0
- package/packages/tools/lib/dhf/document-compiler.d.ts.map +1 -0
- package/packages/tools/lib/dhf/document-compiler.js +209 -0
- package/packages/tools/lib/dhf/document-compiler.js.map +1 -0
- package/packages/tools/lib/dhf/document-ir.d.ts +170 -0
- package/packages/tools/lib/dhf/document-ir.d.ts.map +1 -0
- package/packages/tools/lib/dhf/document-ir.js +47 -0
- package/packages/tools/lib/dhf/document-ir.js.map +1 -0
- package/packages/tools/lib/dhf/document-registry.d.ts +45 -0
- package/packages/tools/lib/dhf/document-registry.d.ts.map +1 -0
- package/packages/tools/lib/dhf/document-registry.js +342 -0
- package/packages/tools/lib/dhf/document-registry.js.map +1 -0
- package/packages/tools/lib/dhf/export-plugin.d.ts +24 -0
- package/packages/tools/lib/dhf/export-plugin.d.ts.map +1 -0
- package/packages/tools/lib/dhf/export-plugin.js +24 -0
- package/packages/tools/lib/dhf/export-plugin.js.map +1 -0
- package/packages/tools/lib/dhf/exporters/docx-exporter.d.ts +15 -0
- package/packages/tools/lib/dhf/exporters/docx-exporter.d.ts.map +1 -0
- package/packages/tools/lib/dhf/exporters/docx-exporter.js +159 -0
- package/packages/tools/lib/dhf/exporters/docx-exporter.js.map +1 -0
- package/packages/tools/lib/dhf/exporters/html-exporter.d.ts +9 -0
- package/packages/tools/lib/dhf/exporters/html-exporter.d.ts.map +1 -0
- package/packages/tools/lib/dhf/exporters/html-exporter.js +248 -0
- package/packages/tools/lib/dhf/exporters/html-exporter.js.map +1 -0
- package/packages/tools/lib/dhf/exporters/markdown-exporter.d.ts +9 -0
- package/packages/tools/lib/dhf/exporters/markdown-exporter.d.ts.map +1 -0
- package/packages/tools/lib/dhf/exporters/markdown-exporter.js +147 -0
- package/packages/tools/lib/dhf/exporters/markdown-exporter.js.map +1 -0
- package/packages/tools/lib/dhf/index.d.ts +15 -0
- package/packages/tools/lib/dhf/index.d.ts.map +1 -0
- package/packages/tools/lib/dhf/index.js +21 -0
- package/packages/tools/lib/dhf/index.js.map +1 -0
- package/packages/tools/lib/dhf/markdown-to-ir.d.ts +19 -0
- package/packages/tools/lib/dhf/markdown-to-ir.d.ts.map +1 -0
- package/packages/tools/lib/dhf/markdown-to-ir.js +193 -0
- package/packages/tools/lib/dhf/markdown-to-ir.js.map +1 -0
- package/packages/tools/lib/dhf/query-engine.d.ts +61 -0
- package/packages/tools/lib/dhf/query-engine.d.ts.map +1 -0
- package/packages/tools/lib/dhf/query-engine.js +109 -0
- package/packages/tools/lib/dhf/query-engine.js.map +1 -0
- package/packages/tools/lib/dhf/query-executor.d.ts +33 -0
- package/packages/tools/lib/dhf/query-executor.d.ts.map +1 -0
- package/packages/tools/lib/dhf/query-executor.js +222 -0
- package/packages/tools/lib/dhf/query-executor.js.map +1 -0
- package/packages/tools/lib/dhf/script-runner.d.ts +4 -0
- package/packages/tools/lib/dhf/script-runner.d.ts.map +1 -0
- package/packages/tools/lib/dhf/script-runner.js +62 -0
- package/packages/tools/lib/dhf/script-runner.js.map +1 -0
- package/packages/tools/lib/dhf/snapshot.d.ts +60 -0
- package/packages/tools/lib/dhf/snapshot.d.ts.map +1 -0
- package/packages/tools/lib/dhf/snapshot.js +185 -0
- package/packages/tools/lib/dhf/snapshot.js.map +1 -0
- package/packages/tools/lib/dhf/template-engine.d.ts +18 -0
- package/packages/tools/lib/dhf/template-engine.d.ts.map +1 -0
- package/packages/tools/lib/dhf/template-engine.js +339 -0
- package/packages/tools/lib/dhf/template-engine.js.map +1 -0
- package/packages/tools/lib/dhf/template-resolver.d.ts +42 -0
- package/packages/tools/lib/dhf/template-resolver.d.ts.map +1 -0
- package/packages/tools/lib/dhf/template-resolver.js +196 -0
- package/packages/tools/lib/dhf/template-resolver.js.map +1 -0
- package/packages/tools/lib/import/column-mapper.d.ts +35 -0
- package/packages/tools/lib/import/column-mapper.d.ts.map +1 -0
- package/packages/tools/lib/import/column-mapper.js +171 -0
- package/packages/tools/lib/import/column-mapper.js.map +1 -0
- package/packages/tools/lib/import/import-diff.d.ts +49 -0
- package/packages/tools/lib/import/import-diff.d.ts.map +1 -0
- package/packages/tools/lib/import/import-diff.js +102 -0
- package/packages/tools/lib/import/import-diff.js.map +1 -0
- package/packages/tools/lib/import/recipes.d.ts +43 -0
- package/packages/tools/lib/import/recipes.d.ts.map +1 -0
- package/packages/tools/lib/import/recipes.js +133 -0
- package/packages/tools/lib/import/recipes.js.map +1 -0
- package/packages/tools/lib/importer/cameo-importer.d.ts +103 -0
- package/packages/tools/lib/importer/cameo-importer.d.ts.map +1 -0
- package/packages/tools/lib/importer/cameo-importer.js +384 -0
- package/packages/tools/lib/importer/cameo-importer.js.map +1 -0
- package/packages/tools/lib/importer/ea-importer.d.ts +115 -0
- package/packages/tools/lib/importer/ea-importer.d.ts.map +1 -0
- package/packages/tools/lib/importer/ea-importer.js +325 -0
- package/packages/tools/lib/importer/ea-importer.js.map +1 -0
- package/packages/tools/lib/importer/index.d.ts +5 -0
- package/packages/tools/lib/importer/index.d.ts.map +1 -0
- package/packages/tools/lib/importer/index.js +15 -0
- package/packages/tools/lib/importer/index.js.map +1 -0
- package/packages/tools/lib/importer/owl-importer.d.ts +91 -0
- package/packages/tools/lib/importer/owl-importer.d.ts.map +1 -0
- package/packages/tools/lib/importer/owl-importer.js +429 -0
- package/packages/tools/lib/importer/owl-importer.js.map +1 -0
- package/packages/tools/lib/importer/sysand-importer.d.ts +78 -0
- package/packages/tools/lib/importer/sysand-importer.d.ts.map +1 -0
- package/packages/tools/lib/importer/sysand-importer.js +188 -0
- package/packages/tools/lib/importer/sysand-importer.js.map +1 -0
- package/packages/tools/lib/index.d.ts +44 -0
- package/packages/tools/lib/index.d.ts.map +1 -0
- package/packages/tools/lib/index.js +56 -0
- package/packages/tools/lib/index.js.map +1 -0
- package/packages/tools/lib/language/generated/ast.d.ts +629 -0
- package/packages/tools/lib/language/generated/ast.d.ts.map +1 -0
- package/packages/tools/lib/language/generated/ast.js +961 -0
- package/packages/tools/lib/language/generated/ast.js.map +1 -0
- package/packages/tools/lib/language/generated/grammar.d.ts +7 -0
- package/packages/tools/lib/language/generated/grammar.d.ts.map +1 -0
- package/packages/tools/lib/language/generated/grammar.js +5676 -0
- package/packages/tools/lib/language/generated/grammar.js.map +1 -0
- package/packages/tools/lib/language/generated/module.d.ts +14 -0
- package/packages/tools/lib/language/generated/module.d.ts.map +1 -0
- package/packages/tools/lib/language/generated/module.js +21 -0
- package/packages/tools/lib/language/generated/module.js.map +1 -0
- package/packages/tools/lib/language/memo-sysml-module.d.ts +24 -0
- package/packages/tools/lib/language/memo-sysml-module.d.ts.map +1 -0
- package/packages/tools/lib/language/memo-sysml-module.js +20 -0
- package/packages/tools/lib/language/memo-sysml-module.js.map +1 -0
- package/packages/tools/lib/llm/ask-engine.d.ts +17 -0
- package/packages/tools/lib/llm/ask-engine.d.ts.map +1 -0
- package/packages/tools/lib/llm/ask-engine.js +43 -0
- package/packages/tools/lib/llm/ask-engine.js.map +1 -0
- package/packages/tools/lib/llm/draft-engine.d.ts +32 -0
- package/packages/tools/lib/llm/draft-engine.d.ts.map +1 -0
- package/packages/tools/lib/llm/draft-engine.js +270 -0
- package/packages/tools/lib/llm/draft-engine.js.map +1 -0
- package/packages/tools/lib/llm/generate-engine.d.ts +21 -0
- package/packages/tools/lib/llm/generate-engine.d.ts.map +1 -0
- package/packages/tools/lib/llm/generate-engine.js +83 -0
- package/packages/tools/lib/llm/generate-engine.js.map +1 -0
- package/packages/tools/lib/llm/index.d.ts +6 -0
- package/packages/tools/lib/llm/index.d.ts.map +1 -0
- package/packages/tools/lib/llm/index.js +11 -0
- package/packages/tools/lib/llm/index.js.map +1 -0
- package/packages/tools/lib/llm/llm-provider.d.ts +40 -0
- package/packages/tools/lib/llm/llm-provider.d.ts.map +1 -0
- package/packages/tools/lib/llm/llm-provider.js +121 -0
- package/packages/tools/lib/llm/llm-provider.js.map +1 -0
- package/packages/tools/lib/llm/model-context.d.ts +28 -0
- package/packages/tools/lib/llm/model-context.d.ts.map +1 -0
- package/packages/tools/lib/llm/model-context.js +162 -0
- package/packages/tools/lib/llm/model-context.js.map +1 -0
- package/packages/tools/lib/lock.d.ts +43 -0
- package/packages/tools/lib/lock.d.ts.map +1 -0
- package/packages/tools/lib/lock.js +225 -0
- package/packages/tools/lib/lock.js.map +1 -0
- package/packages/tools/lib/model/builder.d.ts +22 -0
- package/packages/tools/lib/model/builder.d.ts.map +1 -0
- package/packages/tools/lib/model/builder.js +708 -0
- package/packages/tools/lib/model/builder.js.map +1 -0
- package/packages/tools/lib/model/config-loader.d.ts +34 -0
- package/packages/tools/lib/model/config-loader.d.ts.map +1 -0
- package/packages/tools/lib/model/config-loader.js +257 -0
- package/packages/tools/lib/model/config-loader.js.map +1 -0
- package/packages/tools/lib/model/config.d.ts +220 -0
- package/packages/tools/lib/model/config.d.ts.map +1 -0
- package/packages/tools/lib/model/config.js +14 -0
- package/packages/tools/lib/model/config.js.map +1 -0
- package/packages/tools/lib/model/content-store.d.ts +8 -0
- package/packages/tools/lib/model/content-store.d.ts.map +1 -0
- package/packages/tools/lib/model/content-store.js +59 -0
- package/packages/tools/lib/model/content-store.js.map +1 -0
- package/packages/tools/lib/model/dimension-filter.d.ts +33 -0
- package/packages/tools/lib/model/dimension-filter.d.ts.map +1 -0
- package/packages/tools/lib/model/dimension-filter.js +57 -0
- package/packages/tools/lib/model/dimension-filter.js.map +1 -0
- package/packages/tools/lib/model/kind-registry.d.ts +72 -0
- package/packages/tools/lib/model/kind-registry.d.ts.map +1 -0
- package/packages/tools/lib/model/kind-registry.js +178 -0
- package/packages/tools/lib/model/kind-registry.js.map +1 -0
- package/packages/tools/lib/model/layer-resolver.d.ts +25 -0
- package/packages/tools/lib/model/layer-resolver.d.ts.map +1 -0
- package/packages/tools/lib/model/layer-resolver.js +82 -0
- package/packages/tools/lib/model/layer-resolver.js.map +1 -0
- package/packages/tools/lib/model/manifest.d.ts +23 -0
- package/packages/tools/lib/model/manifest.d.ts.map +1 -0
- package/packages/tools/lib/model/manifest.js +117 -0
- package/packages/tools/lib/model/manifest.js.map +1 -0
- package/packages/tools/lib/model/methodology-loader.d.ts +56 -0
- package/packages/tools/lib/model/methodology-loader.d.ts.map +1 -0
- package/packages/tools/lib/model/methodology-loader.js +203 -0
- package/packages/tools/lib/model/methodology-loader.js.map +1 -0
- package/packages/tools/lib/model/ontology-loader.d.ts +113 -0
- package/packages/tools/lib/model/ontology-loader.d.ts.map +1 -0
- package/packages/tools/lib/model/ontology-loader.js +901 -0
- package/packages/tools/lib/model/ontology-loader.js.map +1 -0
- package/packages/tools/lib/model/package-registry.d.ts +62 -0
- package/packages/tools/lib/model/package-registry.d.ts.map +1 -0
- package/packages/tools/lib/model/package-registry.js +164 -0
- package/packages/tools/lib/model/package-registry.js.map +1 -0
- package/packages/tools/lib/model/parser-utils.d.ts +23 -0
- package/packages/tools/lib/model/parser-utils.d.ts.map +1 -0
- package/packages/tools/lib/model/parser-utils.js +63 -0
- package/packages/tools/lib/model/parser-utils.js.map +1 -0
- package/packages/tools/lib/model/paths.d.ts +18 -0
- package/packages/tools/lib/model/paths.d.ts.map +1 -0
- package/packages/tools/lib/model/paths.js +26 -0
- package/packages/tools/lib/model/paths.js.map +1 -0
- package/packages/tools/lib/model/relationship-registry.d.ts +64 -0
- package/packages/tools/lib/model/relationship-registry.d.ts.map +1 -0
- package/packages/tools/lib/model/relationship-registry.js +141 -0
- package/packages/tools/lib/model/relationship-registry.js.map +1 -0
- package/packages/tools/lib/model/semantic.d.ts +175 -0
- package/packages/tools/lib/model/semantic.d.ts.map +1 -0
- package/packages/tools/lib/model/semantic.js +61 -0
- package/packages/tools/lib/model/semantic.js.map +1 -0
- package/packages/tools/lib/model/short-id.d.ts +32 -0
- package/packages/tools/lib/model/short-id.d.ts.map +1 -0
- package/packages/tools/lib/model/short-id.js +136 -0
- package/packages/tools/lib/model/short-id.js.map +1 -0
- package/packages/tools/lib/model/toolchain.d.ts +12 -0
- package/packages/tools/lib/model/toolchain.d.ts.map +1 -0
- package/packages/tools/lib/model/toolchain.js +92 -0
- package/packages/tools/lib/model/toolchain.js.map +1 -0
- package/packages/tools/lib/model/view-deriver.d.ts +22 -0
- package/packages/tools/lib/model/view-deriver.d.ts.map +1 -0
- package/packages/tools/lib/model/view-deriver.js +160 -0
- package/packages/tools/lib/model/view-deriver.js.map +1 -0
- package/packages/tools/lib/model/view-kinds.d.ts +29 -0
- package/packages/tools/lib/model/view-kinds.d.ts.map +1 -0
- package/packages/tools/lib/model/view-kinds.js +80 -0
- package/packages/tools/lib/model/view-kinds.js.map +1 -0
- package/packages/tools/lib/ontology/owl-exporter.d.ts +43 -0
- package/packages/tools/lib/ontology/owl-exporter.d.ts.map +1 -0
- package/packages/tools/lib/ontology/owl-exporter.js +70 -0
- package/packages/tools/lib/ontology/owl-exporter.js.map +1 -0
- package/packages/tools/lib/operations/index.d.ts +8 -0
- package/packages/tools/lib/operations/index.d.ts.map +1 -0
- package/packages/tools/lib/operations/index.js +8 -0
- package/packages/tools/lib/operations/index.js.map +1 -0
- package/packages/tools/lib/operations/project-snapshot.d.ts +17 -0
- package/packages/tools/lib/operations/project-snapshot.d.ts.map +1 -0
- package/packages/tools/lib/operations/project-snapshot.js +103 -0
- package/packages/tools/lib/operations/project-snapshot.js.map +1 -0
- package/packages/tools/lib/plugin/index.d.ts +5 -0
- package/packages/tools/lib/plugin/index.d.ts.map +1 -0
- package/packages/tools/lib/plugin/index.js +10 -0
- package/packages/tools/lib/plugin/index.js.map +1 -0
- package/packages/tools/lib/plugin/plugin-loader.d.ts +26 -0
- package/packages/tools/lib/plugin/plugin-loader.d.ts.map +1 -0
- package/packages/tools/lib/plugin/plugin-loader.js +216 -0
- package/packages/tools/lib/plugin/plugin-loader.js.map +1 -0
- package/packages/tools/lib/plugin/plugin-registry.d.ts +49 -0
- package/packages/tools/lib/plugin/plugin-registry.d.ts.map +1 -0
- package/packages/tools/lib/plugin/plugin-registry.js +121 -0
- package/packages/tools/lib/plugin/plugin-registry.js.map +1 -0
- package/packages/tools/lib/plugin/plugin-scaffold.d.ts +17 -0
- package/packages/tools/lib/plugin/plugin-scaffold.d.ts.map +1 -0
- package/packages/tools/lib/plugin/plugin-scaffold.js +223 -0
- package/packages/tools/lib/plugin/plugin-scaffold.js.map +1 -0
- package/packages/tools/lib/plugin/plugin-types.d.ts +115 -0
- package/packages/tools/lib/plugin/plugin-types.d.ts.map +1 -0
- package/packages/tools/lib/plugin/plugin-types.js +11 -0
- package/packages/tools/lib/plugin/plugin-types.js.map +1 -0
- package/packages/tools/lib/protocol/messages.d.ts +470 -0
- package/packages/tools/lib/protocol/messages.d.ts.map +1 -0
- package/packages/tools/lib/protocol/messages.js +6 -0
- package/packages/tools/lib/protocol/messages.js.map +1 -0
- package/packages/tools/lib/serializer/csv-io.d.ts +113 -0
- package/packages/tools/lib/serializer/csv-io.d.ts.map +1 -0
- package/packages/tools/lib/serializer/csv-io.js +394 -0
- package/packages/tools/lib/serializer/csv-io.js.map +1 -0
- package/packages/tools/lib/serializer/sysml-generator.d.ts +32 -0
- package/packages/tools/lib/serializer/sysml-generator.d.ts.map +1 -0
- package/packages/tools/lib/serializer/sysml-generator.js +120 -0
- package/packages/tools/lib/serializer/sysml-generator.js.map +1 -0
- package/packages/tools/lib/server/config-resolver.d.ts +14 -0
- package/packages/tools/lib/server/config-resolver.d.ts.map +1 -0
- package/packages/tools/lib/server/config-resolver.js +54 -0
- package/packages/tools/lib/server/config-resolver.js.map +1 -0
- package/packages/tools/lib/server/dev-server.d.ts +17 -0
- package/packages/tools/lib/server/dev-server.d.ts.map +1 -0
- package/packages/tools/lib/server/dev-server.js +939 -0
- package/packages/tools/lib/server/dev-server.js.map +1 -0
- package/packages/tools/lib/server/dhf-doc-store.d.ts +11 -0
- package/packages/tools/lib/server/dhf-doc-store.d.ts.map +1 -0
- package/packages/tools/lib/server/dhf-doc-store.js +181 -0
- package/packages/tools/lib/server/dhf-doc-store.js.map +1 -0
- package/packages/tools/lib/server/file-watcher.d.ts +20 -0
- package/packages/tools/lib/server/file-watcher.d.ts.map +1 -0
- package/packages/tools/lib/server/file-watcher.js +140 -0
- package/packages/tools/lib/server/file-watcher.js.map +1 -0
- package/packages/tools/lib/server/persistor.d.ts +25 -0
- package/packages/tools/lib/server/persistor.d.ts.map +1 -0
- package/packages/tools/lib/server/persistor.js +100 -0
- package/packages/tools/lib/server/persistor.js.map +1 -0
- package/packages/tools/lib/server/view-layout-store.d.ts +8 -0
- package/packages/tools/lib/server/view-layout-store.d.ts.map +1 -0
- package/packages/tools/lib/server/view-layout-store.js +73 -0
- package/packages/tools/lib/server/view-layout-store.js.map +1 -0
- package/packages/tools/lib/types/index.d.ts +4 -0
- package/packages/tools/lib/types/index.d.ts.map +1 -0
- package/packages/tools/lib/types/index.js +6 -0
- package/packages/tools/lib/types/index.js.map +1 -0
- package/packages/tools/lib/validator/behavior-validator.d.ts +12 -0
- package/packages/tools/lib/validator/behavior-validator.d.ts.map +1 -0
- package/packages/tools/lib/validator/behavior-validator.js +124 -0
- package/packages/tools/lib/validator/behavior-validator.js.map +1 -0
- package/packages/tools/lib/validator/constraint-eval.d.ts +90 -0
- package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -0
- package/packages/tools/lib/validator/constraint-eval.js +478 -0
- package/packages/tools/lib/validator/constraint-eval.js.map +1 -0
- package/packages/tools/lib/validator/constraint-loader.d.ts +10 -0
- package/packages/tools/lib/validator/constraint-loader.d.ts.map +1 -0
- package/packages/tools/lib/validator/constraint-loader.js +113 -0
- package/packages/tools/lib/validator/constraint-loader.js.map +1 -0
- package/packages/tools/lib/validator/rule-engine.d.ts +13 -0
- package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -0
- package/packages/tools/lib/validator/rule-engine.js +38 -0
- package/packages/tools/lib/validator/rule-engine.js.map +1 -0
- package/packages/tools/lib/validator/rule-registry.d.ts +61 -0
- package/packages/tools/lib/validator/rule-registry.d.ts.map +1 -0
- package/packages/tools/lib/validator/rule-registry.js +142 -0
- package/packages/tools/lib/validator/rule-registry.js.map +1 -0
- package/packages/tools/lib/validator/types.d.ts +59 -0
- package/packages/tools/lib/validator/types.d.ts.map +1 -0
- package/packages/tools/lib/validator/types.js +3 -0
- package/packages/tools/lib/validator/types.js.map +1 -0
- package/packages/tools/lib/validator/view-validator.d.ts +11 -0
- package/packages/tools/lib/validator/view-validator.d.ts.map +1 -0
- package/packages/tools/lib/validator/view-validator.js +48 -0
- package/packages/tools/lib/validator/view-validator.js.map +1 -0
- package/packages/tools/src/grammar/memo-sysml.langium +450 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grammar.js","sourceRoot":"","sources":["../../../src/language/generated/grammar.ts"],"names":[],"mappings":"AAAA;;;gFAGgF;AAGhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAE9C,IAAI,sBAA2C,CAAC;AAChD,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAY,EAAE,CAAC,sBAAsB,IAAI,CAAC,sBAAsB,GAAG,mBAAmB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoiLrH,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/******************************************************************************
|
|
2
|
+
* This file was generated by langium-cli 3.5.2.
|
|
3
|
+
* DO NOT EDIT MANUALLY!
|
|
4
|
+
******************************************************************************/
|
|
5
|
+
import type { LangiumSharedCoreServices, LangiumCoreServices, LangiumGeneratedCoreServices, LangiumGeneratedSharedCoreServices, Module } from 'langium';
|
|
6
|
+
export declare const MemoSysMLLanguageMetaData: {
|
|
7
|
+
readonly languageId: "memo-sysml";
|
|
8
|
+
readonly fileExtensions: readonly [".sysml"];
|
|
9
|
+
readonly caseInsensitive: false;
|
|
10
|
+
readonly mode: "development";
|
|
11
|
+
};
|
|
12
|
+
export declare const MemoSysMLGeneratedSharedModule: Module<LangiumSharedCoreServices, LangiumGeneratedSharedCoreServices>;
|
|
13
|
+
export declare const MemoSysMLGeneratedModule: Module<LangiumCoreServices, LangiumGeneratedCoreServices>;
|
|
14
|
+
//# sourceMappingURL=module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/language/generated/module.ts"],"names":[],"mappings":"AAAA;;;gFAGgF;AAEhF,OAAO,KAAK,EAAE,yBAAyB,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,kCAAkC,EAAoB,MAAM,EAAE,MAAM,SAAS,CAAC;AAI1K,eAAO,MAAM,yBAAyB;;;;;CAKD,CAAC;AAEtC,eAAO,MAAM,8BAA8B,EAAE,MAAM,CAAC,yBAAyB,EAAE,kCAAkC,CAEhH,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,mBAAmB,EAAE,4BAA4B,CAI9F,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/******************************************************************************
|
|
2
|
+
* This file was generated by langium-cli 3.5.2.
|
|
3
|
+
* DO NOT EDIT MANUALLY!
|
|
4
|
+
******************************************************************************/
|
|
5
|
+
import { MemoSysMLAstReflection } from './ast.js';
|
|
6
|
+
import { MemoSysMLGrammar } from './grammar.js';
|
|
7
|
+
export const MemoSysMLLanguageMetaData = {
|
|
8
|
+
languageId: 'memo-sysml',
|
|
9
|
+
fileExtensions: ['.sysml'],
|
|
10
|
+
caseInsensitive: false,
|
|
11
|
+
mode: 'development'
|
|
12
|
+
};
|
|
13
|
+
export const MemoSysMLGeneratedSharedModule = {
|
|
14
|
+
AstReflection: () => new MemoSysMLAstReflection()
|
|
15
|
+
};
|
|
16
|
+
export const MemoSysMLGeneratedModule = {
|
|
17
|
+
Grammar: () => MemoSysMLGrammar(),
|
|
18
|
+
LanguageMetaData: () => MemoSysMLLanguageMetaData,
|
|
19
|
+
parser: {}
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/language/generated/module.ts"],"names":[],"mappings":"AAAA;;;gFAGgF;AAGhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACrC,UAAU,EAAE,YAAY;IACxB,cAAc,EAAE,CAAC,QAAQ,CAAC;IAC1B,eAAe,EAAE,KAAK;IACtB,IAAI,EAAE,aAAa;CACc,CAAC;AAEtC,MAAM,CAAC,MAAM,8BAA8B,GAA0E;IACjH,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,sBAAsB,EAAE;CACpD,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAA8D;IAC/F,OAAO,EAAE,GAAG,EAAE,CAAC,gBAAgB,EAAE;IACjC,gBAAgB,EAAE,GAAG,EAAE,CAAC,yBAAyB;IACjD,MAAM,EAAE,EAAE;CACb,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type DefaultSharedCoreModuleContext, type LangiumCoreServices, type LangiumSharedCoreServices, type Module, type PartialLangiumCoreServices } from 'langium';
|
|
2
|
+
/**
|
|
3
|
+
* Declaration of custom services — extend as needed for validation,
|
|
4
|
+
* scoping, completeness tracking, etc.
|
|
5
|
+
*/
|
|
6
|
+
export type MemoSysMLAddedServices = {};
|
|
7
|
+
/**
|
|
8
|
+
* Union of Langium default services and MEMO custom services.
|
|
9
|
+
*/
|
|
10
|
+
export type MemoSysMLServices = LangiumCoreServices & MemoSysMLAddedServices;
|
|
11
|
+
/**
|
|
12
|
+
* Dependency injection module that overrides default Langium services
|
|
13
|
+
* with MEMO-specific implementations.
|
|
14
|
+
*/
|
|
15
|
+
export declare const MemoSysMLModule: Module<MemoSysMLServices, PartialLangiumCoreServices & MemoSysMLAddedServices>;
|
|
16
|
+
/**
|
|
17
|
+
* Create the full set of services for the MemoSysML language.
|
|
18
|
+
* Used by both the CLI and the LSP server.
|
|
19
|
+
*/
|
|
20
|
+
export declare function createMemoSysMLServices(context?: DefaultSharedCoreModuleContext): {
|
|
21
|
+
shared: LangiumSharedCoreServices;
|
|
22
|
+
MemoSysML: MemoSysMLServices;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=memo-sysml-module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memo-sysml-module.d.ts","sourceRoot":"","sources":["../../src/language/memo-sysml-module.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,8BAA8B,EAGnC,KAAK,mBAAmB,EACxB,KAAK,yBAAyB,EAC9B,KAAK,MAAM,EACX,KAAK,0BAA0B,EAClC,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,MAAM,MAAM,sBAAsB,GAAG,EAEpC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,GAAG,sBAAsB,CAE1G,CAAC;AAEF;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,8BAAgD,GAAG;IAChG,MAAM,EAAE,yBAAyB,CAAC;IAClC,SAAS,EAAE,iBAAiB,CAAC;CAChC,CAYA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { createDefaultCoreModule, createDefaultSharedCoreModule, EmptyFileSystem, inject, } from 'langium';
|
|
2
|
+
import { MemoSysMLGeneratedModule, MemoSysMLGeneratedSharedModule } from './generated/module.js';
|
|
3
|
+
/**
|
|
4
|
+
* Dependency injection module that overrides default Langium services
|
|
5
|
+
* with MEMO-specific implementations.
|
|
6
|
+
*/
|
|
7
|
+
export const MemoSysMLModule = {
|
|
8
|
+
// custom overrides go here
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Create the full set of services for the MemoSysML language.
|
|
12
|
+
* Used by both the CLI and the LSP server.
|
|
13
|
+
*/
|
|
14
|
+
export function createMemoSysMLServices(context = EmptyFileSystem) {
|
|
15
|
+
const shared = inject(createDefaultSharedCoreModule(context), MemoSysMLGeneratedSharedModule);
|
|
16
|
+
const MemoSysML = inject(createDefaultCoreModule({ shared }), MemoSysMLGeneratedModule, MemoSysMLModule);
|
|
17
|
+
shared.ServiceRegistry.register(MemoSysML);
|
|
18
|
+
return { shared, MemoSysML };
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=memo-sysml-module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"memo-sysml-module.js","sourceRoot":"","sources":["../../src/language/memo-sysml-module.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,uBAAuB,EACvB,6BAA6B,EAE7B,eAAe,EACf,MAAM,GAKT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,wBAAwB,EAAE,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAejG;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAmF;AAC3G,2BAA2B;CAC9B,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAA0C,eAAe;IAI7F,MAAM,MAAM,GAAG,MAAM,CACjB,6BAA6B,CAAC,OAAO,CAAC,EACtC,8BAA8B,CACjC,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,CACpB,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC,EACnC,wBAAwB,EACxB,eAAe,CAClB,CAAC;IACF,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AACjC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { QueryContext } from '../dhf/query-engine.js';
|
|
2
|
+
import type { LLMProvider } from './llm-provider.js';
|
|
3
|
+
import { type ContextOptions } from './model-context.js';
|
|
4
|
+
/** Result of a model Q&A query */
|
|
5
|
+
export interface AskResult {
|
|
6
|
+
answer: string;
|
|
7
|
+
usage?: {
|
|
8
|
+
promptTokens: number;
|
|
9
|
+
completionTokens: number;
|
|
10
|
+
totalTokens: number;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Ask a question about the model using LLM.
|
|
15
|
+
*/
|
|
16
|
+
export declare function askModel(question: string, ctx: QueryContext, provider: LLMProvider, contextOptions?: ContextOptions): Promise<AskResult>;
|
|
17
|
+
//# sourceMappingURL=ask-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-engine.d.ts","sourceRoot":"","sources":["../../src/llm/ask-engine.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAyB,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEhF,kCAAkC;AAClC,MAAM,WAAW,SAAS;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;CACL;AAeD;;GAEG;AACH,wBAAsB,QAAQ,CAC1B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,WAAW,EACrB,cAAc,CAAC,EAAE,cAAc,GAChC,OAAO,CAAC,SAAS,CAAC,CAqBpB"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// ─── Model Q&A Engine (M72) ──────────────────────────────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// Context-aware RAG over model elements. Answers questions like:
|
|
4
|
+
// - "What hazards have no risk controls?"
|
|
5
|
+
// - "Show trace from REQ-001 to verification."
|
|
6
|
+
// - "Which layers are least complete?"
|
|
7
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
8
|
+
import { serializeModelContext } from './model-context.js';
|
|
9
|
+
const SYSTEM_PROMPT = `You are MEMO Model Analyst, an expert in medical device systems engineering, SysML v2 modeling, and regulatory compliance (ISO 14971, IEC 62304, ISO 13485).
|
|
10
|
+
|
|
11
|
+
You are given a model context that describes a medical device architecture with elements, relationships, and validation status. Answer questions about the model accurately and concisely.
|
|
12
|
+
|
|
13
|
+
Guidelines:
|
|
14
|
+
- Reference specific element names and IDs when relevant.
|
|
15
|
+
- When asked about traceability, follow relationship chains.
|
|
16
|
+
- When asked about gaps or compliance, reference specific validation violations.
|
|
17
|
+
- When asked about completeness, reference layer-level metrics.
|
|
18
|
+
- Use tables for structured data when appropriate.
|
|
19
|
+
- Be precise — do not invent elements or relationships that are not in the context.
|
|
20
|
+
- If the model does not contain enough information to answer, say so clearly.`;
|
|
21
|
+
/**
|
|
22
|
+
* Ask a question about the model using LLM.
|
|
23
|
+
*/
|
|
24
|
+
export async function askModel(question, ctx, provider, contextOptions) {
|
|
25
|
+
const modelContext = serializeModelContext(ctx, contextOptions);
|
|
26
|
+
const messages = [
|
|
27
|
+
{ role: 'system', content: SYSTEM_PROMPT },
|
|
28
|
+
{
|
|
29
|
+
role: 'user',
|
|
30
|
+
content: `Here is the current model state:\n\n${modelContext}\n\n---\n\nQuestion: ${question}`,
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
const result = await provider.complete({
|
|
34
|
+
messages,
|
|
35
|
+
temperature: 0.2,
|
|
36
|
+
maxTokens: 4096,
|
|
37
|
+
});
|
|
38
|
+
return {
|
|
39
|
+
answer: result.content,
|
|
40
|
+
usage: result.usage,
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=ask-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask-engine.js","sourceRoot":"","sources":["../../src/llm/ask-engine.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,iEAAiE;AACjE,0CAA0C;AAC1C,+CAA+C;AAC/C,uCAAuC;AACvC,gFAAgF;AAIhF,OAAO,EAAE,qBAAqB,EAAuB,MAAM,oBAAoB,CAAC;AAYhF,MAAM,aAAa,GAAG;;;;;;;;;;;8EAWwD,CAAC;AAE/E;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC1B,QAAgB,EAChB,GAAiB,EACjB,QAAqB,EACrB,cAA+B;IAE/B,MAAM,YAAY,GAAG,qBAAqB,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAkB;QAC5B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;QAC1C;YACI,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,uCAAuC,YAAY,wBAAwB,QAAQ,EAAE;SACjG;KACJ,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ;QACR,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,OAAO;QACH,MAAM,EAAE,MAAM,CAAC,OAAO;QACtB,KAAK,EAAE,MAAM,CAAC,KAAK;KACtB,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { QueryContext } from '../dhf/query-engine.js';
|
|
2
|
+
import type { DhfDocumentType } from '../dhf/document-registry.js';
|
|
3
|
+
import type { DhfDocument } from '../dhf/document-ir.js';
|
|
4
|
+
import type { LLMProvider } from './llm-provider.js';
|
|
5
|
+
/** Options for DHF draft generation */
|
|
6
|
+
export interface DraftOptions {
|
|
7
|
+
/** Target document type */
|
|
8
|
+
documentType: DhfDocumentType;
|
|
9
|
+
/** Existing compiled document (if available) — used to identify gaps */
|
|
10
|
+
existingDocument?: DhfDocument;
|
|
11
|
+
/** Specific section IDs to draft (default: all gap sections) */
|
|
12
|
+
targetSections?: string[];
|
|
13
|
+
}
|
|
14
|
+
/** Result of a DHF draft operation */
|
|
15
|
+
export interface DraftResult {
|
|
16
|
+
/** The document with LLM-drafted content merged in */
|
|
17
|
+
document: DhfDocument;
|
|
18
|
+
/** Sections that were drafted by LLM */
|
|
19
|
+
draftedSections: string[];
|
|
20
|
+
/** Summary of what was generated */
|
|
21
|
+
summary: string;
|
|
22
|
+
usage?: {
|
|
23
|
+
promptTokens: number;
|
|
24
|
+
completionTokens: number;
|
|
25
|
+
totalTokens: number;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Draft DHF document sections using LLM.
|
|
30
|
+
*/
|
|
31
|
+
export declare function draftDocument(ctx: QueryContext, provider: LLMProvider, options: DraftOptions): Promise<DraftResult>;
|
|
32
|
+
//# sourceMappingURL=draft-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"draft-engine.d.ts","sourceRoot":"","sources":["../../src/llm/draft-engine.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAgC,MAAM,uBAAuB,CAAC;AAEvF,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAC;AAGlE,uCAAuC;AACvC,MAAM,WAAW,YAAY;IACzB,2BAA2B;IAC3B,YAAY,EAAE,eAAe,CAAC;IAC9B,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,WAAW,CAAC;IAC/B,gEAAgE;IAChE,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,sCAAsC;AACtC,MAAM,WAAW,WAAW;IACxB,sDAAsD;IACtD,QAAQ,EAAE,WAAW,CAAC;IACtB,wCAAwC;IACxC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;CACL;AA8BD;;GAEG;AACH,wBAAsB,aAAa,CAC/B,GAAG,EAAE,YAAY,EACjB,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,YAAY,GACtB,OAAO,CAAC,WAAW,CAAC,CAgGtB"}
|
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
// ─── DHF Draft Assistant Engine (M74) ────────────────────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// Uses LLM to fill gap sections in DHF documents. Generates boilerplate
|
|
4
|
+
// regulatory text, risk descriptions, and verification rationale.
|
|
5
|
+
// Human reviews before export.
|
|
6
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
7
|
+
import { text, heading, paragraph, list, table, divider } from '../dhf/document-ir.js';
|
|
8
|
+
import { serializeModelContext } from './model-context.js';
|
|
9
|
+
const SYSTEM_PROMPT = `You are MEMO DHF Draft Assistant, an expert in medical device regulatory documentation. You write professional, standards-compliant content for Design History File (DHF) documents.
|
|
10
|
+
|
|
11
|
+
You are given:
|
|
12
|
+
1. A document type with its sections and standards references
|
|
13
|
+
2. The current model data (elements, relationships, validation status)
|
|
14
|
+
3. Sections that need content
|
|
15
|
+
|
|
16
|
+
Guidelines:
|
|
17
|
+
- Write in formal technical English appropriate for regulatory submissions.
|
|
18
|
+
- Reference specific model elements by name when describing risks, requirements, or components.
|
|
19
|
+
- Follow the section structure provided — generate content for each requested section.
|
|
20
|
+
- For risk management (ISO 14971): include hazard identification, risk estimation, risk evaluation, and risk control descriptions.
|
|
21
|
+
- For design verification (IEC 62304): reference specific test cases and verification methods.
|
|
22
|
+
- For traceability: show requirement-to-design-to-verification chains.
|
|
23
|
+
- Mark any assumptions clearly with [ASSUMPTION: ...].
|
|
24
|
+
- Mark any placeholders that need human review with [REVIEW: ...].
|
|
25
|
+
- Keep content factual and based on the model data provided.
|
|
26
|
+
|
|
27
|
+
Format your response as sections separated by markers:
|
|
28
|
+
|
|
29
|
+
=== SECTION: <section_id> ===
|
|
30
|
+
<section content in plain text with markdown formatting>
|
|
31
|
+
|
|
32
|
+
Use markdown within sections:
|
|
33
|
+
- **bold** for emphasis
|
|
34
|
+
- Bullet lists for enumerations
|
|
35
|
+
- Tables for structured data (pipe format)`;
|
|
36
|
+
/**
|
|
37
|
+
* Draft DHF document sections using LLM.
|
|
38
|
+
*/
|
|
39
|
+
export async function draftDocument(ctx, provider, options) {
|
|
40
|
+
const { documentType, existingDocument, targetSections } = options;
|
|
41
|
+
// Determine which sections need drafting
|
|
42
|
+
const sectionsToFill = determineSectionsToFill(documentType, existingDocument, targetSections);
|
|
43
|
+
if (sectionsToFill.length === 0) {
|
|
44
|
+
return {
|
|
45
|
+
document: existingDocument || createEmptyDocument(documentType),
|
|
46
|
+
draftedSections: [],
|
|
47
|
+
summary: 'No sections needed drafting — all sections already have content.',
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
const modelContext = serializeModelContext(ctx, { includeGaps: true });
|
|
51
|
+
// Build the prompt
|
|
52
|
+
const sectionList = sectionsToFill
|
|
53
|
+
.map(s => `- ${s.id}: ${s.title}${s.required ? ' (required)' : ''}`)
|
|
54
|
+
.join('\n');
|
|
55
|
+
const messages = [
|
|
56
|
+
{ role: 'system', content: SYSTEM_PROMPT },
|
|
57
|
+
{
|
|
58
|
+
role: 'user',
|
|
59
|
+
content: `Document: ${documentType.title}
|
|
60
|
+
Standards: ${documentType.standards.join(', ')}
|
|
61
|
+
Relevant kinds: ${documentType.relevantKinds.join(', ')}
|
|
62
|
+
Relevant relationships: ${documentType.relevantRelationships.join(', ')}
|
|
63
|
+
|
|
64
|
+
Sections to draft:
|
|
65
|
+
${sectionList}
|
|
66
|
+
|
|
67
|
+
Model context:
|
|
68
|
+
${modelContext}
|
|
69
|
+
|
|
70
|
+
Please draft content for each section listed above.`,
|
|
71
|
+
},
|
|
72
|
+
];
|
|
73
|
+
const result = await provider.complete({
|
|
74
|
+
messages,
|
|
75
|
+
temperature: 0.3,
|
|
76
|
+
maxTokens: 8192,
|
|
77
|
+
});
|
|
78
|
+
// Parse drafted sections from response
|
|
79
|
+
const draftedContent = parseDraftResponse(result.content);
|
|
80
|
+
const draftedSectionIds = [];
|
|
81
|
+
// Merge drafted content into the document
|
|
82
|
+
const baseSections = existingDocument?.sections
|
|
83
|
+
|| documentType.sections.map(s => ({
|
|
84
|
+
id: s.id,
|
|
85
|
+
title: s.title,
|
|
86
|
+
blocks: [],
|
|
87
|
+
status: 'empty',
|
|
88
|
+
}));
|
|
89
|
+
const mergedSections = baseSections.map(section => {
|
|
90
|
+
const draft = draftedContent.get(section.id);
|
|
91
|
+
if (draft && (section.status === 'empty' || section.blocks.length === 0)) {
|
|
92
|
+
draftedSectionIds.push(section.id);
|
|
93
|
+
return {
|
|
94
|
+
...section,
|
|
95
|
+
blocks: convertMarkdownToBlocks(draft, section.title),
|
|
96
|
+
status: 'partial',
|
|
97
|
+
gapCount: 0,
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
return section;
|
|
101
|
+
});
|
|
102
|
+
const doc = {
|
|
103
|
+
frontmatter: existingDocument?.frontmatter || {
|
|
104
|
+
documentId: documentType.id,
|
|
105
|
+
title: documentType.title,
|
|
106
|
+
version: '1.0-DRAFT',
|
|
107
|
+
standards: documentType.standards,
|
|
108
|
+
project: ctx.projectName,
|
|
109
|
+
generatedAt: new Date().toISOString(),
|
|
110
|
+
},
|
|
111
|
+
sections: mergedSections,
|
|
112
|
+
status: 'partial',
|
|
113
|
+
totalElements: ctx.totalElements(),
|
|
114
|
+
totalGaps: 0,
|
|
115
|
+
};
|
|
116
|
+
return {
|
|
117
|
+
document: doc,
|
|
118
|
+
draftedSections: draftedSectionIds,
|
|
119
|
+
summary: draftedSectionIds.length > 0
|
|
120
|
+
? `Drafted ${draftedSectionIds.length} section(s): ${draftedSectionIds.join(', ')}. Please review [REVIEW] and [ASSUMPTION] markers before finalizing.`
|
|
121
|
+
: 'No sections were drafted.',
|
|
122
|
+
usage: result.usage,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
// ─── Helpers ────────────────────────────────────────────────────────────────
|
|
126
|
+
function determineSectionsToFill(docType, existing, targetSections) {
|
|
127
|
+
return docType.sections.filter(s => {
|
|
128
|
+
// If specific sections requested, only include those
|
|
129
|
+
if (targetSections?.length && !targetSections.includes(s.id))
|
|
130
|
+
return false;
|
|
131
|
+
// If existing document, skip sections that already have content
|
|
132
|
+
if (existing) {
|
|
133
|
+
const existingSection = existing.sections.find(es => es.id === s.id);
|
|
134
|
+
if (existingSection && existingSection.blocks.length > 0 && existingSection.status !== 'empty') {
|
|
135
|
+
return false;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
return true;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
function createEmptyDocument(docType) {
|
|
142
|
+
return {
|
|
143
|
+
frontmatter: {
|
|
144
|
+
documentId: docType.id,
|
|
145
|
+
title: docType.title,
|
|
146
|
+
version: '1.0',
|
|
147
|
+
standards: docType.standards,
|
|
148
|
+
project: 'MEMO Project',
|
|
149
|
+
generatedAt: new Date().toISOString(),
|
|
150
|
+
},
|
|
151
|
+
sections: docType.sections.map(s => ({
|
|
152
|
+
id: s.id,
|
|
153
|
+
title: s.title,
|
|
154
|
+
blocks: [],
|
|
155
|
+
status: 'empty',
|
|
156
|
+
})),
|
|
157
|
+
status: 'empty',
|
|
158
|
+
totalElements: 0,
|
|
159
|
+
totalGaps: 0,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
/** Parse LLM response into section content map */
|
|
163
|
+
function parseDraftResponse(content) {
|
|
164
|
+
const sections = new Map();
|
|
165
|
+
const parts = content.split(/===\s*SECTION:\s*(\S+)\s*===/);
|
|
166
|
+
// parts[0] is before first marker, then alternating id/content
|
|
167
|
+
for (let i = 1; i < parts.length; i += 2) {
|
|
168
|
+
const sectionId = parts[i].trim();
|
|
169
|
+
const sectionContent = (parts[i + 1] || '').trim();
|
|
170
|
+
if (sectionContent) {
|
|
171
|
+
sections.set(sectionId, sectionContent);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
// If no section markers found, treat entire content as a single block
|
|
175
|
+
if (sections.size === 0 && content.trim()) {
|
|
176
|
+
sections.set('_fallback', content.trim());
|
|
177
|
+
}
|
|
178
|
+
return sections;
|
|
179
|
+
}
|
|
180
|
+
/** Convert simple markdown text into DhfBlock[] */
|
|
181
|
+
function convertMarkdownToBlocks(markdown, sectionTitle) {
|
|
182
|
+
const blocks = [];
|
|
183
|
+
const lines = markdown.split('\n');
|
|
184
|
+
let i = 0;
|
|
185
|
+
while (i < lines.length) {
|
|
186
|
+
const line = lines[i];
|
|
187
|
+
// Skip empty lines
|
|
188
|
+
if (!line.trim()) {
|
|
189
|
+
i++;
|
|
190
|
+
continue;
|
|
191
|
+
}
|
|
192
|
+
// Heading
|
|
193
|
+
const headingMatch = line.match(/^(#{1,4})\s+(.+)/);
|
|
194
|
+
if (headingMatch) {
|
|
195
|
+
blocks.push(heading(headingMatch[1].length, headingMatch[2].trim()));
|
|
196
|
+
i++;
|
|
197
|
+
continue;
|
|
198
|
+
}
|
|
199
|
+
// Table (pipe format) — collect consecutive pipe lines
|
|
200
|
+
if (line.trim().startsWith('|')) {
|
|
201
|
+
const tableLines = [];
|
|
202
|
+
while (i < lines.length && lines[i].trim().startsWith('|')) {
|
|
203
|
+
tableLines.push(lines[i]);
|
|
204
|
+
i++;
|
|
205
|
+
}
|
|
206
|
+
const tableBlock = parseMarkdownTable(tableLines);
|
|
207
|
+
if (tableBlock)
|
|
208
|
+
blocks.push(tableBlock);
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
// List item
|
|
212
|
+
if (line.match(/^\s*[-*]\s+/)) {
|
|
213
|
+
const listItems = [];
|
|
214
|
+
while (i < lines.length && lines[i].match(/^\s*[-*]\s+/)) {
|
|
215
|
+
listItems.push(lines[i].replace(/^\s*[-*]\s+/, ''));
|
|
216
|
+
i++;
|
|
217
|
+
}
|
|
218
|
+
blocks.push(list(listItems.map(item => [text(item)])));
|
|
219
|
+
continue;
|
|
220
|
+
}
|
|
221
|
+
// Numbered list
|
|
222
|
+
if (line.match(/^\s*\d+\.\s+/)) {
|
|
223
|
+
const listItems = [];
|
|
224
|
+
while (i < lines.length && lines[i].match(/^\s*\d+\.\s+/)) {
|
|
225
|
+
listItems.push(lines[i].replace(/^\s*\d+\.\s+/, ''));
|
|
226
|
+
i++;
|
|
227
|
+
}
|
|
228
|
+
blocks.push(list(listItems.map(item => [text(item)]), true));
|
|
229
|
+
continue;
|
|
230
|
+
}
|
|
231
|
+
// Horizontal rule
|
|
232
|
+
if (line.match(/^---+\s*$/)) {
|
|
233
|
+
blocks.push(divider());
|
|
234
|
+
i++;
|
|
235
|
+
continue;
|
|
236
|
+
}
|
|
237
|
+
// Regular paragraph — collect until empty line
|
|
238
|
+
const paraLines = [];
|
|
239
|
+
while (i < lines.length && lines[i].trim() && !lines[i].match(/^[#|]/) && !lines[i].match(/^\s*[-*]\s+/) && !lines[i].match(/^\s*\d+\.\s+/)) {
|
|
240
|
+
paraLines.push(lines[i]);
|
|
241
|
+
i++;
|
|
242
|
+
}
|
|
243
|
+
if (paraLines.length > 0) {
|
|
244
|
+
const content = paraLines.join(' ');
|
|
245
|
+
blocks.push(paragraph(...parseInlineFormatting(content)));
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
return blocks;
|
|
249
|
+
}
|
|
250
|
+
/** Parse inline markdown formatting into DhfInline[] */
|
|
251
|
+
function parseInlineFormatting(content) {
|
|
252
|
+
// Simple: just return as plain text for now
|
|
253
|
+
// Bold/italic parsing could be added later
|
|
254
|
+
return [text(content)];
|
|
255
|
+
}
|
|
256
|
+
/** Parse markdown pipe table into DhfTable block */
|
|
257
|
+
function parseMarkdownTable(lines) {
|
|
258
|
+
if (lines.length < 2)
|
|
259
|
+
return null;
|
|
260
|
+
const parseRow = (line) => line.split('|').filter(c => c.trim()).map(c => c.trim());
|
|
261
|
+
const headerCells = parseRow(lines[0]);
|
|
262
|
+
// Skip separator line (---+)
|
|
263
|
+
const dataLines = lines.slice(2).filter(l => !l.match(/^\s*\|[\s-|]+\|\s*$/));
|
|
264
|
+
const rows = dataLines.map(line => {
|
|
265
|
+
const cells = parseRow(line);
|
|
266
|
+
return cells.map(c => [text(c)]);
|
|
267
|
+
});
|
|
268
|
+
return table(headerCells, rows);
|
|
269
|
+
}
|
|
270
|
+
//# sourceMappingURL=draft-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"draft-engine.js","sourceRoot":"","sources":["../../src/llm/draft-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { MEMOConfig } from '../model/config.js';
|
|
2
|
+
import type { LLMProvider } from './llm-provider.js';
|
|
3
|
+
/** Result of SysML generation */
|
|
4
|
+
export interface GenerateResult {
|
|
5
|
+
/** Generated SysML v2 code */
|
|
6
|
+
sysml: string;
|
|
7
|
+
/** Explanation of what was generated */
|
|
8
|
+
explanation: string;
|
|
9
|
+
/** Suggested filename */
|
|
10
|
+
suggestedFile?: string;
|
|
11
|
+
usage?: {
|
|
12
|
+
promptTokens: number;
|
|
13
|
+
completionTokens: number;
|
|
14
|
+
totalTokens: number;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Generate SysML v2 code from a natural language description.
|
|
19
|
+
*/
|
|
20
|
+
export declare function generateSysml(description: string, config: MEMOConfig, provider: LLMProvider): Promise<GenerateResult>;
|
|
21
|
+
//# sourceMappingURL=generate-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-engine.d.ts","sourceRoot":"","sources":["../../src/llm/generate-engine.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAC;AAGlE,iCAAiC;AACjC,MAAM,WAAW,cAAc;IAC3B,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE;QACJ,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACvB,CAAC;CACL;AAyCD;;GAEG;AACH,wBAAsB,aAAa,CAC/B,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,WAAW,GACtB,OAAO,CAAC,cAAc,CAAC,CAwBzB"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
// ─── SysML Generation Engine (M73) ───────────────────────────────────────────
|
|
2
|
+
//
|
|
3
|
+
// Generates valid SysML v2 definitions from natural language descriptions.
|
|
4
|
+
// Uses ontology context to constrain output to valid kinds and relationships.
|
|
5
|
+
// Example: "Add a pressure sensor component with USB interface."
|
|
6
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
7
|
+
import { serializeOntologyContext } from './model-context.js';
|
|
8
|
+
const SYSTEM_PROMPT = `You are MEMO SysML Generator, an expert in SysML v2 syntax and medical device architecture modeling (ISO 14971, IEC 62304).
|
|
9
|
+
|
|
10
|
+
You generate valid SysML v2 definitions based on natural language descriptions. The output must be syntactically correct SysML v2 that can be parsed by the MEMO tool.
|
|
11
|
+
|
|
12
|
+
SysML v2 syntax reference:
|
|
13
|
+
- Package: \`package MyPackage { ... }\`
|
|
14
|
+
- Part definition: \`part def ComponentName { ... }\`
|
|
15
|
+
- Part usage: \`part componentInstance : ComponentName { ... }\`
|
|
16
|
+
- Requirement definition: \`requirement def ReqName { ... }\`
|
|
17
|
+
- Requirement usage: \`requirement reqInstance : ReqName { ... }\`
|
|
18
|
+
- Action definition: \`action def ActionName { ... }\`
|
|
19
|
+
- Action usage: \`action actionInstance : ActionName { ... }\`
|
|
20
|
+
- Port definition: \`port def PortName { ... }\`
|
|
21
|
+
- Interface definition: \`interface def InterfaceName { ... }\`
|
|
22
|
+
- Item definition: \`item def ItemName { ... }\`
|
|
23
|
+
- Connection: \`connection : RelType connect source to target;\`
|
|
24
|
+
- Attribute: \`attribute redefines attrName = "value";\`
|
|
25
|
+
- Documentation: \`doc /* description */\`
|
|
26
|
+
- Specialization: \`part def Child :> Parent { ... }\`
|
|
27
|
+
|
|
28
|
+
Guidelines:
|
|
29
|
+
- Use the ontology context to determine which kinds (part def types) are valid.
|
|
30
|
+
- Use the correct SysML v2 construct for each kind (part def, requirement def, etc.).
|
|
31
|
+
- Place elements in a package named after the relevant architecture layer.
|
|
32
|
+
- Add documentation comments for each element.
|
|
33
|
+
- Add relevant attributes (e.g., severity, probability for hazards).
|
|
34
|
+
- Generate connections/relationships when the description implies them.
|
|
35
|
+
- Keep the output focused — generate only what was requested.
|
|
36
|
+
|
|
37
|
+
IMPORTANT: Output ONLY the SysML code block and a brief explanation. Format your response as:
|
|
38
|
+
|
|
39
|
+
\`\`\`sysml
|
|
40
|
+
// generated code here
|
|
41
|
+
\`\`\`
|
|
42
|
+
|
|
43
|
+
**Explanation:** Brief description of what was generated.
|
|
44
|
+
|
|
45
|
+
**Suggested file:** filename.sysml`;
|
|
46
|
+
/**
|
|
47
|
+
* Generate SysML v2 code from a natural language description.
|
|
48
|
+
*/
|
|
49
|
+
export async function generateSysml(description, config, provider) {
|
|
50
|
+
const ontologyContext = serializeOntologyContext(config);
|
|
51
|
+
const messages = [
|
|
52
|
+
{ role: 'system', content: SYSTEM_PROMPT },
|
|
53
|
+
{
|
|
54
|
+
role: 'user',
|
|
55
|
+
content: `Here is the ontology context for this project:\n\n${ontologyContext}\n\n---\n\nGenerate SysML for: ${description}`,
|
|
56
|
+
},
|
|
57
|
+
];
|
|
58
|
+
const result = await provider.complete({
|
|
59
|
+
messages,
|
|
60
|
+
temperature: 0.3,
|
|
61
|
+
maxTokens: 4096,
|
|
62
|
+
});
|
|
63
|
+
// Parse the response
|
|
64
|
+
const parsed = parseGenerateResponse(result.content);
|
|
65
|
+
return {
|
|
66
|
+
...parsed,
|
|
67
|
+
usage: result.usage,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/** Parse the LLM response into structured output */
|
|
71
|
+
function parseGenerateResponse(content) {
|
|
72
|
+
// Extract SysML code block
|
|
73
|
+
const codeMatch = content.match(/```(?:sysml)?\s*\n([\s\S]*?)```/);
|
|
74
|
+
const sysml = codeMatch ? codeMatch[1].trim() : content.trim();
|
|
75
|
+
// Extract explanation
|
|
76
|
+
const explMatch = content.match(/\*\*Explanation:\*\*\s*(.*?)(?:\n\n|\*\*|$)/s);
|
|
77
|
+
const explanation = explMatch ? explMatch[1].trim() : 'SysML definitions generated from description.';
|
|
78
|
+
// Extract suggested file
|
|
79
|
+
const fileMatch = content.match(/\*\*Suggested file:\*\*\s*(\S+)/);
|
|
80
|
+
const suggestedFile = fileMatch ? fileMatch[1].trim() : undefined;
|
|
81
|
+
return { sysml, explanation, suggestedFile };
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=generate-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate-engine.js","sourceRoot":"","sources":["../../src/llm/generate-engine.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAC9E,iEAAiE;AACjE,gFAAgF;AAIhF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAiB9D,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mCAqCa,CAAC;AAEpC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAC/B,WAAmB,EACnB,MAAkB,EAClB,QAAqB;IAErB,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC;IAEzD,MAAM,QAAQ,GAAkB;QAC5B,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;QAC1C;YACI,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,qDAAqD,eAAe,kCAAkC,WAAW,EAAE;SAC/H;KACJ,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ;QACR,WAAW,EAAE,GAAG;QAChB,SAAS,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,qBAAqB;IACrB,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAErD,OAAO;QACH,GAAG,MAAM;QACT,KAAK,EAAE,MAAM,CAAC,KAAK;KACtB,CAAC;AACN,CAAC;AAED,oDAAoD;AACpD,SAAS,qBAAqB,CAAC,OAAe;IAC1C,2BAA2B;IAC3B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IAE/D,sBAAsB;IACtB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAChF,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,+CAA+C,CAAC;IAEtG,yBAAyB;IACzB,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAElE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/llm/index.ts"],"names":[],"mappings":"AAMA,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC"}
|