@tom2012/cc-web 2026.5.18-b → 2026.5.18-e
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/README.md +1 -1
- package/backend/dist/index.d.ts.map +1 -1
- package/backend/dist/index.js +9 -21
- package/backend/dist/index.js.map +1 -1
- package/backend/dist/routes/_flow-injector.d.ts +4 -0
- package/backend/dist/routes/_flow-injector.d.ts.map +1 -0
- package/backend/dist/routes/_flow-injector.js +17 -0
- package/backend/dist/routes/_flow-injector.js.map +1 -0
- package/backend/dist/routes/global-tracks.d.ts +2 -5
- package/backend/dist/routes/global-tracks.d.ts.map +1 -1
- package/backend/dist/routes/global-tracks.js +2 -28
- package/backend/dist/routes/global-tracks.js.map +1 -1
- package/backend/dist/routes/track-flows.d.ts +12 -0
- package/backend/dist/routes/track-flows.d.ts.map +1 -0
- package/backend/dist/routes/track-flows.js +225 -0
- package/backend/dist/routes/track-flows.js.map +1 -0
- package/backend/dist/routes/tracks.d.ts +3 -9
- package/backend/dist/routes/tracks.d.ts.map +1 -1
- package/backend/dist/routes/tracks.js +3 -153
- package/backend/dist/routes/tracks.js.map +1 -1
- package/backend/dist/terminal-manager-singleton.d.ts +9 -0
- package/backend/dist/terminal-manager-singleton.d.ts.map +1 -0
- package/backend/dist/terminal-manager-singleton.js +6 -0
- package/backend/dist/terminal-manager-singleton.js.map +1 -0
- package/backend/dist/track-flow/__tests__/if-expr-evaluator.test.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/if-expr-evaluator.test.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/if-expr-evaluator.test.js +65 -0
- package/backend/dist/track-flow/__tests__/if-expr-evaluator.test.js.map +1 -0
- package/backend/dist/track-flow/__tests__/if-expr-parser.test.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/if-expr-parser.test.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/if-expr-parser.test.js +76 -0
- package/backend/dist/track-flow/__tests__/if-expr-parser.test.js.map +1 -0
- package/backend/dist/track-flow/__tests__/prompt-translator.test.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/prompt-translator.test.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/prompt-translator.test.js +59 -0
- package/backend/dist/track-flow/__tests__/prompt-translator.test.js.map +1 -0
- package/backend/dist/track-flow/__tests__/run-registry.test.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/run-registry.test.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/run-registry.test.js +54 -0
- package/backend/dist/track-flow/__tests__/run-registry.test.js.map +1 -0
- package/backend/dist/track-flow/__tests__/train-json-sync.test.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/train-json-sync.test.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/train-json-sync.test.js +93 -0
- package/backend/dist/track-flow/__tests__/train-json-sync.test.js.map +1 -0
- package/backend/dist/track-flow/__tests__/verify-flow-v3.d.ts +2 -0
- package/backend/dist/track-flow/__tests__/verify-flow-v3.d.ts.map +1 -0
- package/backend/dist/track-flow/__tests__/verify-flow-v3.js +177 -0
- package/backend/dist/track-flow/__tests__/verify-flow-v3.js.map +1 -0
- package/backend/dist/track-flow/audit-log.d.ts +22 -0
- package/backend/dist/track-flow/audit-log.d.ts.map +1 -0
- package/backend/dist/track-flow/audit-log.js +56 -0
- package/backend/dist/track-flow/audit-log.js.map +1 -0
- package/backend/dist/track-flow/if-expr-evaluator.d.ts +14 -0
- package/backend/dist/track-flow/if-expr-evaluator.d.ts.map +1 -0
- package/backend/dist/track-flow/if-expr-evaluator.js +73 -0
- package/backend/dist/track-flow/if-expr-evaluator.js.map +1 -0
- package/backend/dist/track-flow/if-expr-parser.d.ts +34 -0
- package/backend/dist/track-flow/if-expr-parser.d.ts.map +1 -0
- package/backend/dist/track-flow/if-expr-parser.js +176 -0
- package/backend/dist/track-flow/if-expr-parser.js.map +1 -0
- package/backend/dist/track-flow/index.d.ts +10 -0
- package/backend/dist/track-flow/index.d.ts.map +1 -0
- package/backend/dist/track-flow/index.js +26 -0
- package/backend/dist/track-flow/index.js.map +1 -0
- package/backend/dist/track-flow/llm-dispatcher.d.ts +36 -0
- package/backend/dist/track-flow/llm-dispatcher.d.ts.map +1 -0
- package/backend/dist/track-flow/llm-dispatcher.js +145 -0
- package/backend/dist/track-flow/llm-dispatcher.js.map +1 -0
- package/backend/dist/track-flow/prompt-translator.d.ts +19 -0
- package/backend/dist/track-flow/prompt-translator.d.ts.map +1 -0
- package/backend/dist/track-flow/prompt-translator.js +60 -0
- package/backend/dist/track-flow/prompt-translator.js.map +1 -0
- package/backend/dist/track-flow/run-id.d.ts +2 -0
- package/backend/dist/track-flow/run-id.d.ts.map +1 -0
- package/backend/dist/track-flow/run-id.js +7 -0
- package/backend/dist/track-flow/run-id.js.map +1 -0
- package/backend/dist/track-flow/run-registry.d.ts +77 -0
- package/backend/dist/track-flow/run-registry.d.ts.map +1 -0
- package/backend/dist/track-flow/run-registry.js +148 -0
- package/backend/dist/track-flow/run-registry.js.map +1 -0
- package/backend/dist/track-flow/runtime.d.ts +59 -0
- package/backend/dist/track-flow/runtime.d.ts.map +1 -0
- package/backend/dist/track-flow/runtime.js +204 -0
- package/backend/dist/track-flow/runtime.js.map +1 -0
- package/backend/dist/track-flow/store.d.ts +20 -0
- package/backend/dist/track-flow/store.d.ts.map +1 -0
- package/backend/dist/track-flow/store.js +158 -0
- package/backend/dist/track-flow/store.js.map +1 -0
- package/backend/dist/track-flow/train-json-sync.d.ts +31 -0
- package/backend/dist/track-flow/train-json-sync.d.ts.map +1 -0
- package/backend/dist/track-flow/train-json-sync.js +130 -0
- package/backend/dist/track-flow/train-json-sync.js.map +1 -0
- package/backend/dist/track-flow-ws.d.ts +5 -0
- package/backend/dist/track-flow-ws.d.ts.map +1 -0
- package/backend/dist/track-flow-ws.js +14 -0
- package/backend/dist/track-flow-ws.js.map +1 -0
- package/backend/dist/tracks/ask-user-bridge.d.ts +1 -6
- package/backend/dist/tracks/ask-user-bridge.d.ts.map +1 -1
- package/backend/dist/tracks/ask-user-bridge.js +0 -22
- package/backend/dist/tracks/ask-user-bridge.js.map +1 -1
- package/backend/dist/tracks/index.d.ts +1 -5
- package/backend/dist/tracks/index.d.ts.map +1 -1
- package/backend/dist/tracks/index.js +1 -10
- package/backend/dist/tracks/index.js.map +1 -1
- package/backend/package-lock.json +2066 -124
- package/backend/package.json +6 -5
- package/frontend/dist/assets/{ChatOverlay-DPM_F615.js → ChatOverlay-BsozN13k.js} +1 -1
- package/frontend/dist/assets/{GraphPreview-CJhh33L8.js → GraphPreview-Bagqaatf.js} +2 -2
- package/frontend/dist/assets/{MobilePage-Cx9v8Udp.js → MobilePage-BTKA6Dxj.js} +3 -3
- package/frontend/dist/assets/{OfficePreview-h6zYBZFQ.js → OfficePreview-CMRAt1Qb.js} +2 -2
- package/frontend/dist/assets/{PdfPreview-DbYFye7c.js → PdfPreview-DM7Lq8lA.js} +1 -1
- package/frontend/dist/assets/ProjectPage-3rERYJYF.js +26 -0
- package/frontend/dist/assets/{TrackGraphEditor-Fd0xVSp_.css → ProjectPage-DFCEXprr.css} +32 -1
- package/frontend/dist/assets/{SettingsPage-BkApTPbw.js → SettingsPage-CA9PjfJR.js} +2 -2
- package/frontend/dist/assets/{SkillHubPage-BwfU-hel.js → SkillHubPage-DLt5DGX6.js} +3 -3
- package/frontend/dist/assets/{chevron-down-D4Vj-5wB.js → chevron-down-D7HR2Yyz.js} +1 -1
- package/frontend/dist/assets/{index-CKxFfdqR.js → index-fIUNz576.js} +1 -1
- package/frontend/dist/assets/{index-DUIOrPha.js → index-k0ydgbQO.js} +7 -7
- package/frontend/dist/assets/{index-C-2GBtXy.js → index-tE28G1ot.js} +1 -1
- package/frontend/dist/assets/index-tSU3-nNc.css +1 -0
- package/frontend/dist/assets/{jszip.min-Bn769Ot7.js → jszip.min-BDxK042T.js} +1 -1
- package/frontend/dist/assets/{select-CXSNG3yW.js → select-C6nWxQ7S.js} +2 -2
- package/frontend/dist/assets/{user-Chl3LWFq.js → user-DbW3r9c3.js} +1 -1
- package/frontend/dist/index.html +2 -2
- package/package.json +1 -1
- package/backend/vendor/@tom2012/train-core/dist/ast-cache.d.ts +0 -74
- package/backend/vendor/@tom2012/train-core/dist/ast-cache.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/ast-cache.js +0 -157
- package/backend/vendor/@tom2012/train-core/dist/ast-cache.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/ast.d.ts +0 -350
- package/backend/vendor/@tom2012/train-core/dist/ast.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/ast.js +0 -15
- package/backend/vendor/@tom2012/train-core/dist/ast.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/builder.d.ts +0 -21
- package/backend/vendor/@tom2012/train-core/dist/builder.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/builder.js +0 -1254
- package/backend/vendor/@tom2012/train-core/dist/builder.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts +0 -17
- package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/builtins.js +0 -500
- package/backend/vendor/@tom2012/train-core/dist/builtins.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/index.d.ts +0 -54
- package/backend/vendor/@tom2012/train-core/dist/index.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/index.js +0 -66
- package/backend/vendor/@tom2012/train-core/dist/index.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts +0 -110
- package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/interpreter.js +0 -943
- package/backend/vendor/@tom2012/train-core/dist/interpreter.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/lexer.d.ts +0 -88
- package/backend/vendor/@tom2012/train-core/dist/lexer.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/lexer.js +0 -243
- package/backend/vendor/@tom2012/train-core/dist/lexer.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts +0 -74
- package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/module-loader.js +0 -149
- package/backend/vendor/@tom2012/train-core/dist/module-loader.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/parser.d.ts +0 -138
- package/backend/vendor/@tom2012/train-core/dist/parser.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/parser.js +0 -861
- package/backend/vendor/@tom2012/train-core/dist/parser.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/prompt-composer.d.ts +0 -49
- package/backend/vendor/@tom2012/train-core/dist/prompt-composer.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/prompt-composer.js +0 -159
- package/backend/vendor/@tom2012/train-core/dist/prompt-composer.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/runtime.d.ts +0 -146
- package/backend/vendor/@tom2012/train-core/dist/runtime.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/runtime.js +0 -156
- package/backend/vendor/@tom2012/train-core/dist/runtime.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/type-descriptor.d.ts +0 -18
- package/backend/vendor/@tom2012/train-core/dist/type-descriptor.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/type-descriptor.js +0 -94
- package/backend/vendor/@tom2012/train-core/dist/type-descriptor.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/validation.d.ts +0 -44
- package/backend/vendor/@tom2012/train-core/dist/validation.d.ts.map +0 -1
- package/backend/vendor/@tom2012/train-core/dist/validation.js +0 -271
- package/backend/vendor/@tom2012/train-core/dist/validation.js.map +0 -1
- package/backend/vendor/@tom2012/train-core/package.json +0 -35
- package/frontend/dist/assets/ProjectPage-9CEnUXvW.css +0 -32
- package/frontend/dist/assets/ProjectPage-DaPmvQ-H.js +0 -26
- package/frontend/dist/assets/TrackEditor-BbM0eHTD.js +0 -14
- package/frontend/dist/assets/TrackGraphEditor-DzEqAGFN.js +0 -2
- package/frontend/dist/assets/abap-LPLW346S.js +0 -7
- package/frontend/dist/assets/apex-Dk-jUCUV.js +0 -7
- package/frontend/dist/assets/azcli-DPUMmPlX.js +0 -7
- package/frontend/dist/assets/bat-C1Qbg1bV.js +0 -7
- package/frontend/dist/assets/bicep-D-e-VSJi.js +0 -7
- package/frontend/dist/assets/cameligo-CjUqTgqL.js +0 -7
- package/frontend/dist/assets/clojure-BWsu6Kju.js +0 -7
- package/frontend/dist/assets/codicon-DCmgc-ay.ttf +0 -0
- package/frontend/dist/assets/coffee-DeC36AK3.js +0 -7
- package/frontend/dist/assets/cpp-DcZnmBWT.js +0 -7
- package/frontend/dist/assets/csharp-DqBXBMf0.js +0 -7
- package/frontend/dist/assets/csp-CkO7y8ul.js +0 -7
- package/frontend/dist/assets/css-OAcfVtED.js +0 -7
- package/frontend/dist/assets/cssMode-5whH06Yl.js +0 -7
- package/frontend/dist/assets/cypher-40UGrUjD.js +0 -7
- package/frontend/dist/assets/dart-DmixyLor.js +0 -7
- package/frontend/dist/assets/dockerfile-CayO4nTA.js +0 -7
- package/frontend/dist/assets/ecl-DRrKCuVc.js +0 -7
- package/frontend/dist/assets/editor-B5EY1bb8.css +0 -1
- package/frontend/dist/assets/editor.main-CnjJg6pv.js +0 -37
- package/frontend/dist/assets/elixir-J3qpp9mX.js +0 -7
- package/frontend/dist/assets/flow9-DzW2c4Im.js +0 -7
- package/frontend/dist/assets/freemarker2-CUgILTtX.js +0 -7
- package/frontend/dist/assets/fsharp-D00tn_6c.js +0 -7
- package/frontend/dist/assets/go-NnNmgWK_.js +0 -7
- package/frontend/dist/assets/graphql-C9_--VLF.js +0 -7
- package/frontend/dist/assets/handlebars-C2avKkbK.js +0 -7
- package/frontend/dist/assets/hcl-BhbOULbp.js +0 -7
- package/frontend/dist/assets/html-ZYUiGgvr.js +0 -7
- package/frontend/dist/assets/htmlMode-CeliqUBd.js +0 -7
- package/frontend/dist/assets/index-COjNnvQB.css +0 -1
- package/frontend/dist/assets/index-DjmvYdMM.js +0 -1
- package/frontend/dist/assets/ini-zR-_X5iG.js +0 -7
- package/frontend/dist/assets/java-CSTjsyoZ.js +0 -7
- package/frontend/dist/assets/javascript-0VRCllAK.js +0 -7
- package/frontend/dist/assets/jsonMode-Dwqu43-Y.js +0 -7
- package/frontend/dist/assets/julia-DioMOKVu.js +0 -7
- package/frontend/dist/assets/kotlin-Dsb0PKmW.js +0 -7
- package/frontend/dist/assets/less-CZYLoAVD.js +0 -7
- package/frontend/dist/assets/lexon-d5JUiwNk.js +0 -7
- package/frontend/dist/assets/liquid-E2ejTVvo.js +0 -7
- package/frontend/dist/assets/lua-1Al72GG8.js +0 -7
- package/frontend/dist/assets/m3-hx1xCPC3.js +0 -7
- package/frontend/dist/assets/markdown-DPGrH1xZ.js +0 -7
- package/frontend/dist/assets/mdx-CqJmnu86.js +0 -7
- package/frontend/dist/assets/mips-CYbZjkIm.js +0 -7
- package/frontend/dist/assets/msdax-DAioKM5A.js +0 -7
- package/frontend/dist/assets/mysql-7e9GUebS.js +0 -7
- package/frontend/dist/assets/objective-c-BGf8QNjz.js +0 -7
- package/frontend/dist/assets/pascal-hEDRz3un.js +0 -7
- package/frontend/dist/assets/pascaligo-gqEhN6pG.js +0 -7
- package/frontend/dist/assets/perl-CN8Ht9Vk.js +0 -7
- package/frontend/dist/assets/pgsql-CRCqHQBx.js +0 -7
- package/frontend/dist/assets/php-DTZrlAwe.js +0 -7
- package/frontend/dist/assets/pla-CRmh4UcC.js +0 -7
- package/frontend/dist/assets/postiats-Car2G7g8.js +0 -7
- package/frontend/dist/assets/powerquery-BJKl8V3o.js +0 -7
- package/frontend/dist/assets/powershell-Du7a_J7r.js +0 -7
- package/frontend/dist/assets/protobuf-ChneWI0H.js +0 -7
- package/frontend/dist/assets/pug-BH6LSJaf.js +0 -7
- package/frontend/dist/assets/python-BYNiBUNZ.js +0 -7
- package/frontend/dist/assets/qsharp-CU-Hxpxi.js +0 -7
- package/frontend/dist/assets/r-Bw-W15zh.js +0 -7
- package/frontend/dist/assets/razor-2YR0XVnP.js +0 -7
- package/frontend/dist/assets/redis-bY-X9-ol.js +0 -7
- package/frontend/dist/assets/redshift-CMu3ubbS.js +0 -7
- package/frontend/dist/assets/restructuredtext-KNkiWGNN.js +0 -7
- package/frontend/dist/assets/ruby-dQWMhU86.js +0 -7
- package/frontend/dist/assets/rust-BAcHhnEU.js +0 -7
- package/frontend/dist/assets/sb-Bidr5w2z.js +0 -7
- package/frontend/dist/assets/scala-imTtxsGY.js +0 -7
- package/frontend/dist/assets/scheme-BY-WHKiB.js +0 -7
- package/frontend/dist/assets/scss-NDoRP52C.js +0 -7
- package/frontend/dist/assets/shell-DrIjotnh.js +0 -7
- package/frontend/dist/assets/solidity-DTahNycF.js +0 -7
- package/frontend/dist/assets/sophia-DtyrjGkZ.js +0 -7
- package/frontend/dist/assets/sparql-CFuS5E3z.js +0 -7
- package/frontend/dist/assets/sql-BRxcnbRv.js +0 -7
- package/frontend/dist/assets/st-Dz4uh7MK.js +0 -7
- package/frontend/dist/assets/swift-Digsrw1G.js +0 -11
- package/frontend/dist/assets/systemverilog-7TDrkMau.js +0 -7
- package/frontend/dist/assets/tcl-BtaFcnDi.js +0 -7
- package/frontend/dist/assets/tsMode-DrjOLXjA.js +0 -7
- package/frontend/dist/assets/twig-Deid_oBs.js +0 -7
- package/frontend/dist/assets/typescript--8YtfOFf.js +0 -7
- package/frontend/dist/assets/typespec-zUaxhbG8.js +0 -7
- package/frontend/dist/assets/vb-DK0rKJzo.js +0 -7
- package/frontend/dist/assets/wgsl-B8fNVlOQ.js +0 -7
- package/frontend/dist/assets/xml-CGj_sBRG.js +0 -7
- package/frontend/dist/assets/yaml-of0AgMN8.js +0 -7
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Module loader (M5).
|
|
3
|
-
*
|
|
4
|
-
* Resolves `import { x } from "./y"` against the filesystem, parses
|
|
5
|
-
* each imported file, executes its top-level once, and exposes its
|
|
6
|
-
* `export`-ed names back to the importing module.
|
|
7
|
-
*
|
|
8
|
-
* Properties:
|
|
9
|
-
* - relative paths only in M5 (`./y`, `../y`, with implicit `.tr`)
|
|
10
|
-
* - module cache: same absolute path executes top-level exactly once
|
|
11
|
-
* - circular import detection (E0501): tracked via a re-entry set
|
|
12
|
-
* - shared adapter + builtins: child modules use the same adapter
|
|
13
|
-
* instance as the importer (no ask-user / cancellation re-plumbing)
|
|
14
|
-
*
|
|
15
|
-
* Not yet supported (deferred to later milestones):
|
|
16
|
-
* - namespace imports (`import * as m from "..."`)
|
|
17
|
-
* - version tags (`@v1.0.0` on import) — parsed but ignored
|
|
18
|
-
* - absolute / package imports (`@scope/name`)
|
|
19
|
-
* - workflow_data isolation per submodule (uses host stateDir)
|
|
20
|
-
*/
|
|
21
|
-
import { promises as fs } from 'node:fs';
|
|
22
|
-
import * as path from 'node:path';
|
|
23
|
-
import { TrainErrorCode, TrainException, isFunctionValue, } from './runtime.js';
|
|
24
|
-
const TR_EXT = '.tr';
|
|
25
|
-
function defaultResolve(spec, importerAbs) {
|
|
26
|
-
if (!spec.startsWith('.') && !path.isAbsolute(spec)) {
|
|
27
|
-
throw new TrainException('ModuleError', `only relative or absolute import paths are supported in M5 (got "${spec}")`, undefined, TrainErrorCode.ModuleNotFound);
|
|
28
|
-
}
|
|
29
|
-
const importerDir = path.dirname(importerAbs);
|
|
30
|
-
let resolved = path.isAbsolute(spec) ? spec : path.resolve(importerDir, spec);
|
|
31
|
-
if (!resolved.endsWith(TR_EXT))
|
|
32
|
-
resolved += TR_EXT;
|
|
33
|
-
return resolved;
|
|
34
|
-
}
|
|
35
|
-
async function defaultRead(absPath) {
|
|
36
|
-
try {
|
|
37
|
-
return await fs.readFile(absPath, 'utf8');
|
|
38
|
-
}
|
|
39
|
-
catch (e) {
|
|
40
|
-
throw new TrainException('ModuleError', `module not found: ${absPath} (${e.message})`, undefined, TrainErrorCode.ModuleNotFound);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
export function createModuleRegistry(hooks = {}) {
|
|
44
|
-
const cache = new Map();
|
|
45
|
-
const inProgress = new Set();
|
|
46
|
-
const resolveFn = hooks.resolve ?? defaultResolve;
|
|
47
|
-
const readFn = hooks.read ?? defaultRead;
|
|
48
|
-
return {
|
|
49
|
-
resolve: resolveFn,
|
|
50
|
-
read: readFn,
|
|
51
|
-
set(abs, inst) {
|
|
52
|
-
cache.set(abs, inst);
|
|
53
|
-
},
|
|
54
|
-
hasCached: (abs) => cache.has(abs),
|
|
55
|
-
getCached: (abs) => cache.get(abs),
|
|
56
|
-
isInProgress: (abs) => inProgress.has(abs),
|
|
57
|
-
markInProgress(abs) {
|
|
58
|
-
inProgress.add(abs);
|
|
59
|
-
},
|
|
60
|
-
unmarkInProgress(abs) {
|
|
61
|
-
inProgress.delete(abs);
|
|
62
|
-
},
|
|
63
|
-
async load(abs, importerStack) {
|
|
64
|
-
if (cache.has(abs))
|
|
65
|
-
return cache.get(abs);
|
|
66
|
-
if (inProgress.has(abs)) {
|
|
67
|
-
const cycle = [...importerStack, abs]
|
|
68
|
-
.map((p) => path.basename(p))
|
|
69
|
-
.join(' → ');
|
|
70
|
-
throw new TrainException('ModuleError', `circular import: ${cycle}`, undefined, TrainErrorCode.CircularImport);
|
|
71
|
-
}
|
|
72
|
-
// The interpreter wraps load() with executeModule(). Direct usage
|
|
73
|
-
// (without that wrapper) is not supported because load() needs
|
|
74
|
-
// host-controlled execution. Callers go through the interpreter.
|
|
75
|
-
throw new TrainException('ModuleError', `internal: ModuleRegistry.load called without an executor wrapper for ${abs}`, undefined, TrainErrorCode.ModuleNotFound);
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Apply an Import declaration's specs to the importing module's
|
|
81
|
-
* RuntimeContext, given the loaded child module instance.
|
|
82
|
-
*
|
|
83
|
-
* In M5 we inject imported symbols into the importer's
|
|
84
|
-
* `constants` (for const exports), `globals` (for var exports), or
|
|
85
|
-
* `functions` (for func / fai exports). The interpreter's identifier
|
|
86
|
-
* lookup already consults these three maps in lexical order, so an
|
|
87
|
-
* imported `foo` is visible just like a top-level `foo`.
|
|
88
|
-
*
|
|
89
|
-
* Throws ImportSymbolMissing if the import names a symbol the module
|
|
90
|
-
* does not export.
|
|
91
|
-
*/
|
|
92
|
-
export function applyImport(imp, child, importerCtx) {
|
|
93
|
-
if (imp.clause.kind === 'NamespaceImport') {
|
|
94
|
-
throw new TrainException('ModuleError', `namespace import (\`import * as ${imp.clause.alias} from "${imp.source}"\`) is not yet supported in M5`, imp.range, TrainErrorCode.ImportSymbolMissing);
|
|
95
|
-
}
|
|
96
|
-
for (const spec of imp.clause.specs) {
|
|
97
|
-
if (!child.exports.has(spec.name)) {
|
|
98
|
-
const available = [...child.exports.keys()].join(', ') || '<none>';
|
|
99
|
-
throw new TrainException('ModuleError', `module "${imp.source}" does not export "${spec.name}" (available: ${available})`, spec.range, TrainErrorCode.ImportSymbolMissing);
|
|
100
|
-
}
|
|
101
|
-
const localName = spec.alias ?? spec.name;
|
|
102
|
-
// Refuse to silently shadow an existing symbol — catches both
|
|
103
|
-
// `import { foo } / func foo` and duplicate `import { foo }` twice.
|
|
104
|
-
// Use alias if present (`as x`), since that's the local name being
|
|
105
|
-
// bound. Without this check the second `set` simply overwrote the
|
|
106
|
-
// first and no warning fired.
|
|
107
|
-
let conflict = null;
|
|
108
|
-
if (importerCtx.functions.has(localName))
|
|
109
|
-
conflict = 'function';
|
|
110
|
-
else if (importerCtx.constants.has(localName))
|
|
111
|
-
conflict = 'const';
|
|
112
|
-
else if (importerCtx.globals.has(localName))
|
|
113
|
-
conflict = 'var';
|
|
114
|
-
if (conflict !== null) {
|
|
115
|
-
throw new TrainException('ModuleError', `import '${localName}' from "${imp.source}" conflicts with existing ${conflict} of the same name; use \`as\` to rename`, spec.range, TrainErrorCode.ImportSymbolMissing);
|
|
116
|
-
}
|
|
117
|
-
const value = child.exports.get(spec.name);
|
|
118
|
-
if (isFunctionValue(value)) {
|
|
119
|
-
// Re-bind imported function into importer's functions map so calls
|
|
120
|
-
// resolve via the standard `ctx.functions.get(name)` path.
|
|
121
|
-
importerCtx.functions.set(localName, value);
|
|
122
|
-
}
|
|
123
|
-
else {
|
|
124
|
-
importerCtx.constants.set(localName, value);
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
/** Build the export map for a module from its executed RuntimeContext. */
|
|
129
|
-
export function collectExports(ctx) {
|
|
130
|
-
const out = new Map();
|
|
131
|
-
for (const [externalName, internalName] of ctx.exports.entries()) {
|
|
132
|
-
if (ctx.functions.has(internalName)) {
|
|
133
|
-
out.set(externalName, ctx.functions.get(internalName));
|
|
134
|
-
continue;
|
|
135
|
-
}
|
|
136
|
-
if (ctx.constants.has(internalName)) {
|
|
137
|
-
out.set(externalName, ctx.constants.get(internalName));
|
|
138
|
-
continue;
|
|
139
|
-
}
|
|
140
|
-
if (ctx.globals.has(internalName)) {
|
|
141
|
-
out.set(externalName, ctx.globals.get(internalName));
|
|
142
|
-
continue;
|
|
143
|
-
}
|
|
144
|
-
// Export declared but no value bound — silently skip; caller errors when
|
|
145
|
-
// a downstream module tries to import this name.
|
|
146
|
-
}
|
|
147
|
-
return out;
|
|
148
|
-
}
|
|
149
|
-
//# sourceMappingURL=module-loader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../src/module-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* train language parser (CST-based)
|
|
3
|
-
*
|
|
4
|
-
* Built with chevrotain's CstParser. Produces a Concrete Syntax Tree;
|
|
5
|
-
* a later transformer step (M1 end) converts CST → typed AST.
|
|
6
|
-
*
|
|
7
|
-
* Coverage as of this milestone:
|
|
8
|
-
* - Top-level: import / const / var / func / fai / export / @runtime
|
|
9
|
-
* - Annotations (@cache / @timeout / @adapter / ...) on func & fai decls
|
|
10
|
-
* - Statements: let (with destructuring), assignment, if/else, for-in,
|
|
11
|
-
* while, break, continue, return, try-catch, expression statement
|
|
12
|
-
* - Expressions: full precedence chain (ternary / || / && / == != /
|
|
13
|
-
* comparison / additive / multiplicative / unary / postfix /
|
|
14
|
-
* array & object literals / identifiers / literals / parens)
|
|
15
|
-
* - Types: leaf types with range/named constraints
|
|
16
|
-
*
|
|
17
|
-
* NOT yet implemented (TODO for later):
|
|
18
|
-
* - Structural types: enum / array<T> / object{...}
|
|
19
|
-
* - String template interpolation (${...}) — needs lexer modes
|
|
20
|
-
*/
|
|
21
|
-
import { CstParser, type CstNode } from 'chevrotain';
|
|
22
|
-
export declare class TrainParser extends CstParser {
|
|
23
|
-
constructor();
|
|
24
|
-
program: import("chevrotain").ParserMethod<[], CstNode>;
|
|
25
|
-
/** Entry rule for parsing a bare expression (used by template string
|
|
26
|
-
* interpolation: the builder hands `${ ... }` body to this rule
|
|
27
|
-
* rather than re-implementing expression parsing). */
|
|
28
|
-
exprEntry: import("chevrotain").ParserMethod<[], CstNode>;
|
|
29
|
-
private topLevel;
|
|
30
|
-
/** @runtime(...) — distinguished from other annotations by literal name. */
|
|
31
|
-
private isRuntimeAnnotation;
|
|
32
|
-
/** Look ahead: an AtName followed eventually by `func` or `fai`. */
|
|
33
|
-
private isAnnotatedFuncOrFai;
|
|
34
|
-
private importDecl;
|
|
35
|
-
private importClause;
|
|
36
|
-
private namedImports;
|
|
37
|
-
private importSpec;
|
|
38
|
-
private namespaceImport;
|
|
39
|
-
/** Top-level `@runtime(adapter = "claude", ...)`. */
|
|
40
|
-
private runtimeAnnotation;
|
|
41
|
-
/** Decoration-style annotation attached to a func/fai/import declaration. */
|
|
42
|
-
private declAnnotation;
|
|
43
|
-
private annoArgList;
|
|
44
|
-
private annoArg;
|
|
45
|
-
/** Wrapper: zero-or-more decl annotations followed by func or fai decl. */
|
|
46
|
-
private annotatedDecl;
|
|
47
|
-
private constDecl;
|
|
48
|
-
private varDecl;
|
|
49
|
-
private funcDecl;
|
|
50
|
-
private faiDecl;
|
|
51
|
-
private exportDecl;
|
|
52
|
-
private exportNames;
|
|
53
|
-
private exportSpec;
|
|
54
|
-
private paramList;
|
|
55
|
-
private param;
|
|
56
|
-
private faiParamList;
|
|
57
|
-
private faiParam;
|
|
58
|
-
private faiOutputList;
|
|
59
|
-
private faiOutput;
|
|
60
|
-
private typeAnnot;
|
|
61
|
-
private declTypeAnnot;
|
|
62
|
-
private declScalarType;
|
|
63
|
-
private declArrayType;
|
|
64
|
-
private scalarType;
|
|
65
|
-
private enumType;
|
|
66
|
-
private arrayType;
|
|
67
|
-
private objectType;
|
|
68
|
-
private objectTypeField;
|
|
69
|
-
private typeConstraint;
|
|
70
|
-
/** Range constraint starts with a numeric literal; named with identifier. */
|
|
71
|
-
private isRangeConstraint;
|
|
72
|
-
private rangeConstraint;
|
|
73
|
-
private namedConstraint;
|
|
74
|
-
private numberLit;
|
|
75
|
-
private block;
|
|
76
|
-
private stmt;
|
|
77
|
-
/**
|
|
78
|
-
* An assignment starts with an l-value (Identifier with optional . [ suffixes)
|
|
79
|
-
* followed by an assignment operator. We scan ahead, skipping balanced
|
|
80
|
-
* brackets, looking for one of the assignment ops at the same paren depth.
|
|
81
|
-
*/
|
|
82
|
-
private isAssignment;
|
|
83
|
-
private letDecl;
|
|
84
|
-
private letTarget;
|
|
85
|
-
private objectDestruct;
|
|
86
|
-
private destructField;
|
|
87
|
-
private arrayDestruct;
|
|
88
|
-
private assignment;
|
|
89
|
-
private lvalue;
|
|
90
|
-
private lvalueSuffix;
|
|
91
|
-
private assignOp;
|
|
92
|
-
private ifStmt;
|
|
93
|
-
private forStmt;
|
|
94
|
-
private whileStmt;
|
|
95
|
-
private tryStmt;
|
|
96
|
-
private catchClause;
|
|
97
|
-
private breakStmt;
|
|
98
|
-
private continueStmt;
|
|
99
|
-
private returnStmt;
|
|
100
|
-
/** Heuristic: does the current lookahead token start an expression? */
|
|
101
|
-
private canStartExpression;
|
|
102
|
-
private exprStmt;
|
|
103
|
-
private expr;
|
|
104
|
-
private ternaryExpr;
|
|
105
|
-
private logicalOrExpr;
|
|
106
|
-
private logicalAndExpr;
|
|
107
|
-
private equalityExpr;
|
|
108
|
-
private comparisonExpr;
|
|
109
|
-
private additiveExpr;
|
|
110
|
-
private multiplicativeExpr;
|
|
111
|
-
private unaryExpr;
|
|
112
|
-
private postfixExpr;
|
|
113
|
-
private postfixSuffix;
|
|
114
|
-
private argList;
|
|
115
|
-
private primaryExpr;
|
|
116
|
-
private literal;
|
|
117
|
-
private arrayLit;
|
|
118
|
-
private objectLit;
|
|
119
|
-
private objectLitField;
|
|
120
|
-
}
|
|
121
|
-
export declare const trainParser: TrainParser;
|
|
122
|
-
export interface ParseResult {
|
|
123
|
-
cst: CstNode | undefined;
|
|
124
|
-
lexErrors: ReadonlyArray<unknown>;
|
|
125
|
-
parseErrors: ReadonlyArray<unknown>;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* Parse train source text. Returns CST + any errors (does not throw on parse errors,
|
|
129
|
-
* to allow IDE-style error reporting).
|
|
130
|
-
*/
|
|
131
|
-
export declare function parse(source: string): ParseResult;
|
|
132
|
-
/**
|
|
133
|
-
* Parse a single expression. Used internally by the template-string
|
|
134
|
-
* interpolation builder. The source must be exactly an expression
|
|
135
|
-
* (no surrounding statement/punctuation).
|
|
136
|
-
*/
|
|
137
|
-
export declare function parseExpression(source: string): ParseResult;
|
|
138
|
-
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|