بسم الله الرحمن الرحيم
In the name of Allah, the Compassionate, the Merciful
Core orchestration package for ModelScript. Provides the Context orchestrator, the legacy ModelicaFlattener, linter rules, and the test runner.
Note: The modern incremental query engine, symbol indexer, and arena-based simulators are now located in
@modelscript/compiler.
- Orchestration —
Contextacts as the primary entry point for managing workspaces and polyglot compilation - Legacy Flattening — legacy AST-based
ModelicaFlattenerfor DAE generation - Linting — 15+ lint rules covering parser errors, unresolved references, type mismatches, and structural checks
- Test Runner — comprehensive Modelica testsuite runner comparing OpenModelica golden outputs
- i18n — extracts translatable strings from Modelica model descriptions and annotations
| Command | Description |
|---|---|
npm run build |
Clean, lint, and compile TypeScript |
npm run clean |
Remove dist/ output |
npm run lint |
Run ESLint on src/ |
npm test |
Run the Modelica test suite |
npm run watch |
Compile in watch mode |
npm testRuns the Modelica test suite via tsx tests/testsuite-runner.ts with increased heap size (8 GB). Tests can be filtered by subdirectory or individual .mo file path.
# Run a specific test directory
npx tsx tests/testsuite-runner.ts OpenModelica/flattening/modelica/types
# Run a single test file
npx tsx tests/testsuite-runner.ts OpenModelica/flattening/modelica/types/IntegerToEnumeration.mo
# Update expected output to match actual output
npx tsx tests/testsuite-runner.ts --update path/to/test.mo