@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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compose the full LLM prompt for one fai function call.
|
|
3
|
-
*
|
|
4
|
-
* Default composition layout (spec §3.6):
|
|
5
|
-
*
|
|
6
|
-
* [System] Short instruction header.
|
|
7
|
-
* [Inputs] Each non-prompt-typed parameter with name(description, type) = value
|
|
8
|
-
* [Task] Concatenation of all prompt-typed parameters.
|
|
9
|
-
* [Outputs] Each declared output with name(description, type) and the
|
|
10
|
-
* wire format the adapter expects (JSON object).
|
|
11
|
-
* [Adapter hint] Either "JSON object" (direct API) or "modify
|
|
12
|
-
* .ccweb/workflow_data.json" (agent CLI), depending on
|
|
13
|
-
* the adapter's capabilities.writesWorkflowData flag.
|
|
14
|
-
*
|
|
15
|
-
* Short scalar/bool/number values are formatted inline; arrays/objects
|
|
16
|
-
* and multi-line strings are formatted as fenced blocks.
|
|
17
|
-
*
|
|
18
|
-
* No special handling for `fai` body — the M1 parser already collected
|
|
19
|
-
* the body block (currently empty in 99% of cases). If we add a future
|
|
20
|
-
* "body can compute a custom prompt" feature, this composer will read
|
|
21
|
-
* a `prompt = ...` assignment from the body before defaulting.
|
|
22
|
-
*/
|
|
23
|
-
import type * as ast from './ast.js';
|
|
24
|
-
import type { Value } from './runtime.js';
|
|
25
|
-
import type { AdapterCapabilities, FaiInputSpec, FaiOutputSpec } from '@tom2012/train-adapter-spec';
|
|
26
|
-
export interface ComposedPrompt {
|
|
27
|
-
text: string;
|
|
28
|
-
inputs: Record<string, FaiInputSpec>;
|
|
29
|
-
outputs: Record<string, FaiOutputSpec>;
|
|
30
|
-
}
|
|
31
|
-
export interface ComposeOptions {
|
|
32
|
-
capabilities: AdapterCapabilities;
|
|
33
|
-
/** Adapter context for the writesWorkflowData hint. */
|
|
34
|
-
callId?: number;
|
|
35
|
-
/**
|
|
36
|
-
* Override the final "how to write outputs" hint. If provided, this
|
|
37
|
-
* string replaces both the default direct-API ("Respond with JSON ...")
|
|
38
|
-
* hint and the default agent-CLI hint. Hosts that have their own PTY
|
|
39
|
-
* protocol (e.g. ccweb's `variables` + `task_progress.finish` scheme)
|
|
40
|
-
* pass their own protocol text here. The composer still emits the
|
|
41
|
-
* [System] / [Inputs] / [Task] / [Outputs] sections unchanged.
|
|
42
|
-
*
|
|
43
|
-
* The string is appended as a final section verbatim — no quoting,
|
|
44
|
-
* no template interpolation.
|
|
45
|
-
*/
|
|
46
|
-
writeProtocolHint?: string;
|
|
47
|
-
}
|
|
48
|
-
export declare function composePrompt(decl: ast.FaiDecl, argValues: Map<string, Value>, opts: ComposeOptions): ComposedPrompt;
|
|
49
|
-
//# sourceMappingURL=prompt-composer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-composer.d.ts","sourceRoot":"","sources":["../src/prompt-composer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,EACV,mBAAmB,EACnB,YAAY,EACZ,aAAa,EACd,MAAM,6BAA6B,CAAA;AAIpC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACpC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;CACvC;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,mBAAmB,CAAA;IACjC,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;;;;;;;;;OAUG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,GAAG,CAAC,OAAO,EACjB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAC7B,IAAI,EAAE,cAAc,GACnB,cAAc,CAwEhB"}
|
|
@@ -1,159 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compose the full LLM prompt for one fai function call.
|
|
3
|
-
*
|
|
4
|
-
* Default composition layout (spec §3.6):
|
|
5
|
-
*
|
|
6
|
-
* [System] Short instruction header.
|
|
7
|
-
* [Inputs] Each non-prompt-typed parameter with name(description, type) = value
|
|
8
|
-
* [Task] Concatenation of all prompt-typed parameters.
|
|
9
|
-
* [Outputs] Each declared output with name(description, type) and the
|
|
10
|
-
* wire format the adapter expects (JSON object).
|
|
11
|
-
* [Adapter hint] Either "JSON object" (direct API) or "modify
|
|
12
|
-
* .ccweb/workflow_data.json" (agent CLI), depending on
|
|
13
|
-
* the adapter's capabilities.writesWorkflowData flag.
|
|
14
|
-
*
|
|
15
|
-
* Short scalar/bool/number values are formatted inline; arrays/objects
|
|
16
|
-
* and multi-line strings are formatted as fenced blocks.
|
|
17
|
-
*
|
|
18
|
-
* No special handling for `fai` body — the M1 parser already collected
|
|
19
|
-
* the body block (currently empty in 99% of cases). If we add a future
|
|
20
|
-
* "body can compute a custom prompt" feature, this composer will read
|
|
21
|
-
* a `prompt = ...` assignment from the body before defaulting.
|
|
22
|
-
*/
|
|
23
|
-
import { describeType, isPromptType, typeToDescriptor } from './type-descriptor.js';
|
|
24
|
-
import { formatValue } from './builtins.js';
|
|
25
|
-
export function composePrompt(decl, argValues, opts) {
|
|
26
|
-
// Partition params into data inputs vs prompt segments
|
|
27
|
-
const inputs = {};
|
|
28
|
-
const promptSegments = [];
|
|
29
|
-
const inputLines = [];
|
|
30
|
-
for (const p of decl.params) {
|
|
31
|
-
const v = argValues.get(p.name) ?? null;
|
|
32
|
-
if (isPromptType(p.type)) {
|
|
33
|
-
// prompt-typed param goes into the [Task] section
|
|
34
|
-
promptSegments.push(formatPromptParam(v));
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
inputs[p.name] = {
|
|
38
|
-
type: typeToDescriptor(p.type),
|
|
39
|
-
value: valueToJson(v),
|
|
40
|
-
};
|
|
41
|
-
inputLines.push(formatInputLine(p.name, p.type, v));
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
// Outputs schema
|
|
45
|
-
const outputs = {};
|
|
46
|
-
const outputLines = [];
|
|
47
|
-
for (const o of decl.outputs) {
|
|
48
|
-
outputs[o.name] = {
|
|
49
|
-
type: typeToDescriptor(o.type),
|
|
50
|
-
};
|
|
51
|
-
outputLines.push(` ${o.name}: ${describeType(typeToDescriptor(o.type))}`);
|
|
52
|
-
}
|
|
53
|
-
// Assemble final text
|
|
54
|
-
const sections = [];
|
|
55
|
-
sections.push(`You are executing the train language fai function \`${decl.name}\`. Follow the task instructions and produce the required outputs.`);
|
|
56
|
-
if (inputLines.length > 0) {
|
|
57
|
-
sections.push('[Inputs]\n' + inputLines.join('\n'));
|
|
58
|
-
}
|
|
59
|
-
if (promptSegments.length > 0) {
|
|
60
|
-
sections.push('[Task]\n' + promptSegments.join('\n\n'));
|
|
61
|
-
}
|
|
62
|
-
sections.push('[Required outputs — each value must match the declared type]\n' +
|
|
63
|
-
outputLines.join('\n'));
|
|
64
|
-
if (opts.writeProtocolHint !== undefined) {
|
|
65
|
-
// Host-provided protocol overrides built-in defaults entirely.
|
|
66
|
-
sections.push(opts.writeProtocolHint);
|
|
67
|
-
}
|
|
68
|
-
else if (opts.capabilities.writesWorkflowData) {
|
|
69
|
-
sections.push(`[Write outputs by modifying \`.ccweb/workflow_data.json\` at ` +
|
|
70
|
-
`stack[<callId>].outputs.<name>, then set ` +
|
|
71
|
-
`task_progress[N].finish = true.]`);
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
sections.push(`[Respond with ONLY a JSON object whose keys are exactly the output ` +
|
|
75
|
-
`names above and whose values match the declared types. ` +
|
|
76
|
-
`Do not include any explanation, markdown fences, or extra prose ` +
|
|
77
|
-
`outside the JSON.]`);
|
|
78
|
-
}
|
|
79
|
-
return {
|
|
80
|
-
text: sections.join('\n\n'),
|
|
81
|
-
inputs,
|
|
82
|
-
outputs,
|
|
83
|
-
};
|
|
84
|
-
}
|
|
85
|
-
// ─── Helpers ───────────────────────────────────────────────────────────
|
|
86
|
-
function formatPromptParam(v) {
|
|
87
|
-
// prompt-typed values are strings (or stringified). No quoting; the
|
|
88
|
-
// user's prompt text becomes part of the system task description.
|
|
89
|
-
if (typeof v === 'string')
|
|
90
|
-
return v;
|
|
91
|
-
return formatValue(v);
|
|
92
|
-
}
|
|
93
|
-
function formatInputLine(name, type, value) {
|
|
94
|
-
const typeStr = describeType(typeToDescriptor(type));
|
|
95
|
-
if (isInlineable(value)) {
|
|
96
|
-
return ` ${name}(${typeStr}) = ${formatInlineValue(value)}`;
|
|
97
|
-
}
|
|
98
|
-
// Block form
|
|
99
|
-
const valueStr = formatBlockValue(value);
|
|
100
|
-
return ` ${name}(${typeStr}):\n${indent(valueStr, 4)}`;
|
|
101
|
-
}
|
|
102
|
-
function isInlineable(v) {
|
|
103
|
-
if (v === null)
|
|
104
|
-
return true;
|
|
105
|
-
if (typeof v === 'boolean')
|
|
106
|
-
return true;
|
|
107
|
-
if (typeof v === 'number')
|
|
108
|
-
return true;
|
|
109
|
-
if (typeof v === 'string')
|
|
110
|
-
return v.length < 80 && !v.includes('\n');
|
|
111
|
-
return false;
|
|
112
|
-
}
|
|
113
|
-
function formatInlineValue(v) {
|
|
114
|
-
if (v === null)
|
|
115
|
-
return 'null';
|
|
116
|
-
if (typeof v === 'boolean')
|
|
117
|
-
return String(v);
|
|
118
|
-
if (typeof v === 'number')
|
|
119
|
-
return String(v);
|
|
120
|
-
if (typeof v === 'string')
|
|
121
|
-
return JSON.stringify(v);
|
|
122
|
-
return formatValue(v);
|
|
123
|
-
}
|
|
124
|
-
function formatBlockValue(v) {
|
|
125
|
-
if (typeof v === 'string') {
|
|
126
|
-
return '"""\n' + v + '\n"""';
|
|
127
|
-
}
|
|
128
|
-
return JSON.stringify(v, null, 2);
|
|
129
|
-
}
|
|
130
|
-
function indent(s, n) {
|
|
131
|
-
const pad = ' '.repeat(n);
|
|
132
|
-
return s.split('\n').map((l) => pad + l).join('\n');
|
|
133
|
-
}
|
|
134
|
-
/** Convert a runtime Value into a JSON-friendly object for adapters. */
|
|
135
|
-
function valueToJson(v) {
|
|
136
|
-
if (v === null)
|
|
137
|
-
return null;
|
|
138
|
-
if (typeof v === 'string')
|
|
139
|
-
return v;
|
|
140
|
-
if (typeof v === 'number')
|
|
141
|
-
return v;
|
|
142
|
-
if (typeof v === 'boolean')
|
|
143
|
-
return v;
|
|
144
|
-
if (Array.isArray(v))
|
|
145
|
-
return v.map((x) => valueToJson(x));
|
|
146
|
-
if (typeof v === 'object') {
|
|
147
|
-
// Skip function/builtin values (shouldn't appear in fai input args anyway)
|
|
148
|
-
if ('__kind' in v) {
|
|
149
|
-
return null;
|
|
150
|
-
}
|
|
151
|
-
const o = v;
|
|
152
|
-
const out = {};
|
|
153
|
-
for (const k of Object.keys(o))
|
|
154
|
-
out[k] = valueToJson(o[k]);
|
|
155
|
-
return out;
|
|
156
|
-
}
|
|
157
|
-
return null;
|
|
158
|
-
}
|
|
159
|
-
//# sourceMappingURL=prompt-composer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prompt-composer.js","sourceRoot":"","sources":["../src/prompt-composer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runtime value model + execution state for the train interpreter.
|
|
3
|
-
*
|
|
4
|
-
* For this milestone the interpreter executes everything in process
|
|
5
|
-
* memory; persistent stack-frame serialization (needed for fai
|
|
6
|
-
* suspend/resume) will be added in M3 when LLM adapters arrive.
|
|
7
|
-
*/
|
|
8
|
-
import type * as ast from './ast.js';
|
|
9
|
-
/** Runtime values. Mirrors train's surface types. */
|
|
10
|
-
export type Value = null | boolean | number | string | Value[] | {
|
|
11
|
-
[key: string]: Value;
|
|
12
|
-
} | FunctionValue;
|
|
13
|
-
/**
|
|
14
|
-
* Functions (both `func` and `fai`) are first-class only internally —
|
|
15
|
-
* they are stored in the runtime context as named bindings, NOT in
|
|
16
|
-
* user variables. Source code cannot create them as expression values.
|
|
17
|
-
*/
|
|
18
|
-
export interface FunctionValue {
|
|
19
|
-
readonly __kind: 'function';
|
|
20
|
-
readonly name: string;
|
|
21
|
-
readonly isFai: boolean;
|
|
22
|
-
readonly decl: ast.FuncDecl | ast.FaiDecl;
|
|
23
|
-
/** The lexical scope where the function was defined. */
|
|
24
|
-
readonly definedIn: Scope;
|
|
25
|
-
/**
|
|
26
|
-
* The module-level RuntimeContext this function was defined in. The
|
|
27
|
-
* interpreter swaps to this context on entry so identifier lookup
|
|
28
|
-
* resolves against the function's own module (E0xx M5 module
|
|
29
|
-
* isolation). Optional for backward compat — bindings created before
|
|
30
|
-
* M5 share the caller's context.
|
|
31
|
-
*/
|
|
32
|
-
readonly moduleCtx?: RuntimeContext;
|
|
33
|
-
}
|
|
34
|
-
export declare function isFunctionValue(v: Value): v is FunctionValue;
|
|
35
|
-
/** A lexical scope: chain of binding maps. */
|
|
36
|
-
export interface Scope {
|
|
37
|
-
parent: Scope | null;
|
|
38
|
-
bindings: Map<string, Value>;
|
|
39
|
-
}
|
|
40
|
-
export declare function newScope(parent?: Scope | null): Scope;
|
|
41
|
-
export declare function scopeLookup(scope: Scope, name: string): Value | undefined;
|
|
42
|
-
/**
|
|
43
|
-
* Assign to an existing binding in the closest scope where it's
|
|
44
|
-
* defined. Returns false if no such binding exists (caller decides
|
|
45
|
-
* whether to error or create one).
|
|
46
|
-
*/
|
|
47
|
-
export declare function scopeAssign(scope: Scope, name: string, value: Value): boolean;
|
|
48
|
-
/** Runtime context for a whole program execution. */
|
|
49
|
-
export interface RuntimeContext {
|
|
50
|
-
/** Top-level constants (immutable at runtime). */
|
|
51
|
-
constants: Map<string, Value>;
|
|
52
|
-
/** Top-level `var` globals (mutable). */
|
|
53
|
-
globals: Map<string, Value>;
|
|
54
|
-
/** Named function declarations (func + fai). */
|
|
55
|
-
functions: Map<string, FunctionValue>;
|
|
56
|
-
/** Builtins registered before execution. */
|
|
57
|
-
builtins: Map<string, BuiltinFunction>;
|
|
58
|
-
/** Names that are publicly exported from this program. */
|
|
59
|
-
exports: Map<string, string>;
|
|
60
|
-
}
|
|
61
|
-
export interface BuiltinFunction {
|
|
62
|
-
readonly __kind: 'builtin';
|
|
63
|
-
readonly name: string;
|
|
64
|
-
/**
|
|
65
|
-
* Builtin call signature. Built-ins MAY return a Promise<Value> to
|
|
66
|
-
* support async operations (host I/O, ask_user-style user prompts,
|
|
67
|
-
* shell-out, etc.). The interpreter awaits the return value before
|
|
68
|
-
* proceeding.
|
|
69
|
-
*
|
|
70
|
-
* Synchronous builtins simply return Value directly — no Promise
|
|
71
|
-
* wrapping required.
|
|
72
|
-
*/
|
|
73
|
-
call(args: Value[]): Value | Promise<Value>;
|
|
74
|
-
}
|
|
75
|
-
export declare function makeBuiltin(name: string, call: (args: Value[]) => Value | Promise<Value>): BuiltinFunction;
|
|
76
|
-
export declare function isBuiltin(v: unknown): v is BuiltinFunction;
|
|
77
|
-
export declare class TrainReturnSignal {
|
|
78
|
-
readonly value: Value | null;
|
|
79
|
-
constructor(value: Value | null);
|
|
80
|
-
}
|
|
81
|
-
export declare class TrainBreakSignal {
|
|
82
|
-
}
|
|
83
|
-
export declare class TrainContinueSignal {
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Stable error code registry. Every TrainException SHOULD carry one of
|
|
87
|
-
* these codes; the codes are reviewed and documented in
|
|
88
|
-
* `docs/error-codes.md`. The lint script
|
|
89
|
-
* `scripts/check-error-codes.ts` verifies code/docs consistency.
|
|
90
|
-
*
|
|
91
|
-
* Conventions:
|
|
92
|
-
* E01xx — lex errors
|
|
93
|
-
* E02xx — parse errors
|
|
94
|
-
* E03xx — type / declaration errors
|
|
95
|
-
* E04xx — runtime evaluation errors
|
|
96
|
-
* E05xx — module loader errors
|
|
97
|
-
* E06xx — fai / adapter errors
|
|
98
|
-
* E07xx — validation errors
|
|
99
|
-
* E08xx — i/o + state-dir + cache errors
|
|
100
|
-
* E99xx — uncoded (legacy throws — to be migrated)
|
|
101
|
-
*/
|
|
102
|
-
export declare const TrainErrorCode: {
|
|
103
|
-
readonly CircularImport: "E0501";
|
|
104
|
-
readonly ModuleNotFound: "E0502";
|
|
105
|
-
readonly VersionMismatch: "E0503";
|
|
106
|
-
readonly ImportSymbolMissing: "E0504";
|
|
107
|
-
readonly ExportConflict: "E0505";
|
|
108
|
-
readonly AdapterMissing: "E0601";
|
|
109
|
-
readonly AdapterTimeout: "E0602";
|
|
110
|
-
readonly AdapterError: "E0603";
|
|
111
|
-
readonly RetryExhausted: "E0604";
|
|
112
|
-
readonly ValidationFailed: "E0701";
|
|
113
|
-
readonly OutputShapeMismatch: "E0702";
|
|
114
|
-
readonly EnumOutOfRange: "E0703";
|
|
115
|
-
readonly StateDirNotWritable: "E0801";
|
|
116
|
-
readonly AstCacheCorrupt: "E0802";
|
|
117
|
-
readonly Uncoded: "E9999";
|
|
118
|
-
};
|
|
119
|
-
export type TrainErrorCodeKey = keyof typeof TrainErrorCode;
|
|
120
|
-
export type TrainErrorCodeValue = typeof TrainErrorCode[TrainErrorCodeKey];
|
|
121
|
-
/**
|
|
122
|
-
* A train-level exception. Surfaces as catchable RuntimeError /
|
|
123
|
-
* ValidationError / etc in try-catch. JS Error subclass so it can be
|
|
124
|
-
* thrown / caught natively, but the `errorType` carries the train
|
|
125
|
-
* exception class name visible in `catch X as e`.
|
|
126
|
-
*
|
|
127
|
-
* NEW (v0.2): `code` is now part of the public shape. Legacy throws
|
|
128
|
-
* that don't pass a code default to TrainErrorCode.Uncoded so the
|
|
129
|
-
* runtime invariant "every TrainException has a code" holds without
|
|
130
|
-
* forcing a single-shot rewrite of all 53 existing throw sites.
|
|
131
|
-
*/
|
|
132
|
-
export declare class TrainException extends Error {
|
|
133
|
-
readonly errorType: string;
|
|
134
|
-
readonly range?: ast.Range | undefined;
|
|
135
|
-
readonly name = "TrainException";
|
|
136
|
-
readonly code: TrainErrorCodeValue;
|
|
137
|
-
constructor(errorType: string, message: string, range?: ast.Range | undefined, code?: TrainErrorCodeValue);
|
|
138
|
-
}
|
|
139
|
-
/** Helper for new code: throw with explicit code, errorType inferred. */
|
|
140
|
-
export declare function trainError(code: TrainErrorCodeValue, message: string, range?: ast.Range): TrainException;
|
|
141
|
-
/** Programmer error inside the interpreter itself (e.g. unimplemented). */
|
|
142
|
-
export declare class InterpreterBug extends Error {
|
|
143
|
-
readonly name = "InterpreterBug";
|
|
144
|
-
constructor(message: string);
|
|
145
|
-
}
|
|
146
|
-
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Runtime value model + execution state for the train interpreter.
|
|
3
|
-
*
|
|
4
|
-
* For this milestone the interpreter executes everything in process
|
|
5
|
-
* memory; persistent stack-frame serialization (needed for fai
|
|
6
|
-
* suspend/resume) will be added in M3 when LLM adapters arrive.
|
|
7
|
-
*/
|
|
8
|
-
export function isFunctionValue(v) {
|
|
9
|
-
return (typeof v === 'object' &&
|
|
10
|
-
v !== null &&
|
|
11
|
-
!Array.isArray(v) &&
|
|
12
|
-
v.__kind === 'function');
|
|
13
|
-
}
|
|
14
|
-
export function newScope(parent = null) {
|
|
15
|
-
return { parent, bindings: new Map() };
|
|
16
|
-
}
|
|
17
|
-
export function scopeLookup(scope, name) {
|
|
18
|
-
let s = scope;
|
|
19
|
-
while (s) {
|
|
20
|
-
if (s.bindings.has(name))
|
|
21
|
-
return s.bindings.get(name);
|
|
22
|
-
s = s.parent;
|
|
23
|
-
}
|
|
24
|
-
return undefined;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Assign to an existing binding in the closest scope where it's
|
|
28
|
-
* defined. Returns false if no such binding exists (caller decides
|
|
29
|
-
* whether to error or create one).
|
|
30
|
-
*/
|
|
31
|
-
export function scopeAssign(scope, name, value) {
|
|
32
|
-
let s = scope;
|
|
33
|
-
while (s) {
|
|
34
|
-
if (s.bindings.has(name)) {
|
|
35
|
-
s.bindings.set(name, value);
|
|
36
|
-
return true;
|
|
37
|
-
}
|
|
38
|
-
s = s.parent;
|
|
39
|
-
}
|
|
40
|
-
return false;
|
|
41
|
-
}
|
|
42
|
-
export function makeBuiltin(name, call) {
|
|
43
|
-
return { __kind: 'builtin', name, call };
|
|
44
|
-
}
|
|
45
|
-
export function isBuiltin(v) {
|
|
46
|
-
return (typeof v === 'object' &&
|
|
47
|
-
v !== null &&
|
|
48
|
-
v.__kind === 'builtin');
|
|
49
|
-
}
|
|
50
|
-
// ─── Control-flow signals (thrown to short-circuit execution) ─────────
|
|
51
|
-
export class TrainReturnSignal {
|
|
52
|
-
value;
|
|
53
|
-
constructor(value) {
|
|
54
|
-
this.value = value;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
export class TrainBreakSignal {
|
|
58
|
-
}
|
|
59
|
-
export class TrainContinueSignal {
|
|
60
|
-
}
|
|
61
|
-
// ─── User-visible runtime exceptions ──────────────────────────────────
|
|
62
|
-
/**
|
|
63
|
-
* Stable error code registry. Every TrainException SHOULD carry one of
|
|
64
|
-
* these codes; the codes are reviewed and documented in
|
|
65
|
-
* `docs/error-codes.md`. The lint script
|
|
66
|
-
* `scripts/check-error-codes.ts` verifies code/docs consistency.
|
|
67
|
-
*
|
|
68
|
-
* Conventions:
|
|
69
|
-
* E01xx — lex errors
|
|
70
|
-
* E02xx — parse errors
|
|
71
|
-
* E03xx — type / declaration errors
|
|
72
|
-
* E04xx — runtime evaluation errors
|
|
73
|
-
* E05xx — module loader errors
|
|
74
|
-
* E06xx — fai / adapter errors
|
|
75
|
-
* E07xx — validation errors
|
|
76
|
-
* E08xx — i/o + state-dir + cache errors
|
|
77
|
-
* E99xx — uncoded (legacy throws — to be migrated)
|
|
78
|
-
*/
|
|
79
|
-
export const TrainErrorCode = {
|
|
80
|
-
// Module loader (M5)
|
|
81
|
-
CircularImport: 'E0501',
|
|
82
|
-
ModuleNotFound: 'E0502',
|
|
83
|
-
VersionMismatch: 'E0503',
|
|
84
|
-
ImportSymbolMissing: 'E0504',
|
|
85
|
-
ExportConflict: 'E0505',
|
|
86
|
-
// Fai / adapter
|
|
87
|
-
AdapterMissing: 'E0601',
|
|
88
|
-
AdapterTimeout: 'E0602',
|
|
89
|
-
AdapterError: 'E0603',
|
|
90
|
-
RetryExhausted: 'E0604',
|
|
91
|
-
// Validation
|
|
92
|
-
ValidationFailed: 'E0701',
|
|
93
|
-
OutputShapeMismatch: 'E0702',
|
|
94
|
-
EnumOutOfRange: 'E0703',
|
|
95
|
-
// I/O + state
|
|
96
|
-
StateDirNotWritable: 'E0801',
|
|
97
|
-
AstCacheCorrupt: 'E0802',
|
|
98
|
-
// Legacy / unclassified (migrate over time)
|
|
99
|
-
Uncoded: 'E9999',
|
|
100
|
-
};
|
|
101
|
-
/**
|
|
102
|
-
* A train-level exception. Surfaces as catchable RuntimeError /
|
|
103
|
-
* ValidationError / etc in try-catch. JS Error subclass so it can be
|
|
104
|
-
* thrown / caught natively, but the `errorType` carries the train
|
|
105
|
-
* exception class name visible in `catch X as e`.
|
|
106
|
-
*
|
|
107
|
-
* NEW (v0.2): `code` is now part of the public shape. Legacy throws
|
|
108
|
-
* that don't pass a code default to TrainErrorCode.Uncoded so the
|
|
109
|
-
* runtime invariant "every TrainException has a code" holds without
|
|
110
|
-
* forcing a single-shot rewrite of all 53 existing throw sites.
|
|
111
|
-
*/
|
|
112
|
-
export class TrainException extends Error {
|
|
113
|
-
errorType;
|
|
114
|
-
range;
|
|
115
|
-
name = 'TrainException';
|
|
116
|
-
code;
|
|
117
|
-
constructor(errorType, message, range, code = TrainErrorCode.Uncoded) {
|
|
118
|
-
super(message);
|
|
119
|
-
this.errorType = errorType;
|
|
120
|
-
this.range = range;
|
|
121
|
-
this.code = code;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
/** Helper for new code: throw with explicit code, errorType inferred. */
|
|
125
|
-
export function trainError(code, message, range) {
|
|
126
|
-
// Map code prefix to errorType bucket (purely cosmetic for `catch X as e`).
|
|
127
|
-
const errorType = errorTypeFromCode(code);
|
|
128
|
-
return new TrainException(errorType, message, range, code);
|
|
129
|
-
}
|
|
130
|
-
function errorTypeFromCode(code) {
|
|
131
|
-
if (code.startsWith('E01'))
|
|
132
|
-
return 'LexError';
|
|
133
|
-
if (code.startsWith('E02'))
|
|
134
|
-
return 'ParseError';
|
|
135
|
-
if (code.startsWith('E03'))
|
|
136
|
-
return 'TypeError';
|
|
137
|
-
if (code.startsWith('E04'))
|
|
138
|
-
return 'RuntimeError';
|
|
139
|
-
if (code.startsWith('E05'))
|
|
140
|
-
return 'ModuleError';
|
|
141
|
-
if (code.startsWith('E06'))
|
|
142
|
-
return 'AdapterError';
|
|
143
|
-
if (code.startsWith('E07'))
|
|
144
|
-
return 'ValidationError';
|
|
145
|
-
if (code.startsWith('E08'))
|
|
146
|
-
return 'IOError';
|
|
147
|
-
return 'RuntimeError';
|
|
148
|
-
}
|
|
149
|
-
/** Programmer error inside the interpreter itself (e.g. unimplemented). */
|
|
150
|
-
export class InterpreterBug extends Error {
|
|
151
|
-
name = 'InterpreterBug';
|
|
152
|
-
constructor(message) {
|
|
153
|
-
super(message);
|
|
154
|
-
}
|
|
155
|
-
}
|
|
156
|
-
//# sourceMappingURL=runtime.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Convert AST type annotations to the adapter-spec runtime descriptor.
|
|
3
|
-
*
|
|
4
|
-
* The descriptor is the wire format adapters consume: it's
|
|
5
|
-
* JSON-serialisable, source-location-free, and contains everything an
|
|
6
|
-
* adapter needs to build a structured-output schema (JSON Schema /
|
|
7
|
-
* OpenAI tool params / Anthropic tool_use / etc.).
|
|
8
|
-
*/
|
|
9
|
-
import type * as ast from './ast.js';
|
|
10
|
-
import type { TrainTypeDescriptor } from '@tom2012/train-adapter-spec';
|
|
11
|
-
export declare function typeToDescriptor(t: ast.TypeAnnot): TrainTypeDescriptor;
|
|
12
|
-
/** Returns true if the leaf scalar type name is `prompt`. */
|
|
13
|
-
export declare function isPromptType(t: ast.TypeAnnot): boolean;
|
|
14
|
-
/** Returns true if a name is a recognised leaf type at the type-position. */
|
|
15
|
-
export declare function isLeafTypeName(name: string): boolean;
|
|
16
|
-
/** Render a TrainTypeDescriptor as a short human/LLM-readable string. */
|
|
17
|
-
export declare function describeType(t: TrainTypeDescriptor): string;
|
|
18
|
-
//# sourceMappingURL=type-descriptor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type-descriptor.d.ts","sourceRoot":"","sources":["../src/type-descriptor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,KAAK,GAAG,MAAM,UAAU,CAAA;AACpC,OAAO,KAAK,EACV,mBAAmB,EAEpB,MAAM,6BAA6B,CAAA;AAEpC,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,GAAG,mBAAmB,CA4BtE;AAqBD,6DAA6D;AAC7D,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,CAAC,SAAS,GAAG,OAAO,CAEtD;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,yEAAyE;AACzE,wBAAgB,YAAY,CAAC,CAAC,EAAE,mBAAmB,GAAG,MAAM,CAiC3D"}
|