@tom2012/cc-web 2026.5.15-e → 2026.5.15-g

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +1 -1
  2. package/backend/dist/tracks/__tests__/verify-starter-templates.d.ts +17 -10
  3. package/backend/dist/tracks/__tests__/verify-starter-templates.d.ts.map +1 -1
  4. package/backend/dist/tracks/__tests__/verify-starter-templates.js +110 -35
  5. package/backend/dist/tracks/__tests__/verify-starter-templates.js.map +1 -1
  6. package/backend/vendor/@tom2012/train-core/dist/builder.d.ts.map +1 -1
  7. package/backend/vendor/@tom2012/train-core/dist/builder.js +37 -4
  8. package/backend/vendor/@tom2012/train-core/dist/builder.js.map +1 -1
  9. package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts.map +1 -1
  10. package/backend/vendor/@tom2012/train-core/dist/builtins.js +13 -1
  11. package/backend/vendor/@tom2012/train-core/dist/builtins.js.map +1 -1
  12. package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts.map +1 -1
  13. package/backend/vendor/@tom2012/train-core/dist/interpreter.js +55 -6
  14. package/backend/vendor/@tom2012/train-core/dist/interpreter.js.map +1 -1
  15. package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts.map +1 -1
  16. package/backend/vendor/@tom2012/train-core/dist/module-loader.js +15 -0
  17. package/backend/vendor/@tom2012/train-core/dist/module-loader.js.map +1 -1
  18. package/backend/vendor/@tom2012/train-core/dist/parser.d.ts +3 -0
  19. package/backend/vendor/@tom2012/train-core/dist/parser.d.ts.map +1 -1
  20. package/backend/vendor/@tom2012/train-core/dist/parser.js +26 -3
  21. package/backend/vendor/@tom2012/train-core/dist/parser.js.map +1 -1
  22. package/frontend/dist/assets/{ChatOverlay-DkGLWbKQ.js → ChatOverlay-BigXori6.js} +1 -1
  23. package/frontend/dist/assets/{GraphPreview-DXZ3AviI.js → GraphPreview-BkPky-TI.js} +1 -1
  24. package/frontend/dist/assets/{MobilePage-_j-29xar.js → MobilePage-IGjtsg4k.js} +3 -3
  25. package/frontend/dist/assets/{OfficePreview-v7w2uAKM.js → OfficePreview-k40TguA5.js} +2 -2
  26. package/frontend/dist/assets/{PdfPreview-DzW3MlNU.js → PdfPreview-Cf8-GCtH.js} +1 -1
  27. package/frontend/dist/assets/{ProjectPage-BQG5oG4t.js → ProjectPage-BfRSuGNi.js} +4 -4
  28. package/frontend/dist/assets/{SettingsPage-C23Lj2v_.js → SettingsPage-CVZcaQ3R.js} +1 -1
  29. package/frontend/dist/assets/{SkillHubPage-BGND7gBE.js → SkillHubPage-BpRh93-z.js} +1 -1
  30. package/frontend/dist/assets/{TrackEditor-D1fPK_Jb.js → TrackEditor-BxTMmmLm.js} +3 -3
  31. package/frontend/dist/assets/{chevron-down-P2HTs96y.js → chevron-down-Dys4vcAs.js} +1 -1
  32. package/frontend/dist/assets/{cssMode-DRf316-W.js → cssMode-BELivHMu.js} +1 -1
  33. package/frontend/dist/assets/{editor.main-BKXLd7u4.js → editor.main-CKVebMR9.js} +7 -7
  34. package/frontend/dist/assets/{freemarker2-HzFVoxpO.js → freemarker2-TNJanLhm.js} +1 -1
  35. package/frontend/dist/assets/{handlebars-DZuTrvH7.js → handlebars-B3v55Vhh.js} +1 -1
  36. package/frontend/dist/assets/{html-CFuwEHaY.js → html-BQpZAffq.js} +1 -1
  37. package/frontend/dist/assets/{htmlMode-GZ3cIkqy.js → htmlMode-CdyV2SNL.js} +1 -1
  38. package/frontend/dist/assets/{index-z4MFC7Mu.js → index-BXSNl9gW.js} +1 -1
  39. package/frontend/dist/assets/{index-DCWtUdhh.js → index-CRx61OUk.js} +1 -1
  40. package/frontend/dist/assets/{index-DeWj_k0E.js → index-Dyb7Lej-.js} +2 -2
  41. package/frontend/dist/assets/{index-CkkbnVk_.js → index-y1WxRtWz.js} +1 -1
  42. package/frontend/dist/assets/{javascript-BG0wx3op.js → javascript-fg8xZnXs.js} +1 -1
  43. package/frontend/dist/assets/{jsonMode-BfaBjVRh.js → jsonMode-Bnr3fl29.js} +1 -1
  44. package/frontend/dist/assets/{jszip.min-BXZEE3jp.js → jszip.min-CW5dbhJE.js} +1 -1
  45. package/frontend/dist/assets/{liquid-C56X6aBB.js → liquid-cd7iiptp.js} +1 -1
  46. package/frontend/dist/assets/{mdx-Cw1KN-mJ.js → mdx-Bi-AeiES.js} +1 -1
  47. package/frontend/dist/assets/{python-BjnRAFHZ.js → python-CwYGkoEx.js} +1 -1
  48. package/frontend/dist/assets/{razor-DmrYXNRF.js → razor-BxDZcept.js} +1 -1
  49. package/frontend/dist/assets/{select-DAoeCy88.js → select-Bm9XoR-Q.js} +1 -1
  50. package/frontend/dist/assets/{tsMode-hkEzrc7F.js → tsMode-CGypMWLJ.js} +1 -1
  51. package/frontend/dist/assets/{typescript-CHfVHnEC.js → typescript-BPBAfhzM.js} +1 -1
  52. package/frontend/dist/assets/{user-CRCDBTUo.js → user-Bg3xPKf3.js} +1 -1
  53. package/frontend/dist/assets/{xml-Cs-AR0XK.js → xml-BsI1h9KH.js} +1 -1
  54. package/frontend/dist/assets/{yaml-C3YNUfzf.js → yaml-DXaWyEXz.js} +1 -1
  55. package/frontend/dist/index.html +1 -1
  56. package/package.json +1 -1
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  A self-hosted web application (distributed as npm package) that provides a browser-based interface for [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI sessions. Create projects, each with a persistent terminal running Claude Code, and interact with them through a real-time terminal UI.
4
4
 
5
- **Current version**: v2026.5.15-e | [GitHub](https://github.com/zbc0315/cc-web) | MIT License
5
+ **Current version**: v2026.5.15-g | [GitHub](https://github.com/zbc0315/cc-web) | MIT License
6
6
 
7
7
  ## Features
8
8
 
@@ -1,17 +1,24 @@
1
1
  /**
2
2
  * Sanity check: the starter .tr templates that the frontend renders into
3
- * the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must parse
4
- * cleanly under @tom2012/train-core. v-15-d shipped templates whose
5
- * return type was `-> object {` — `object` is a structural-type keyword
6
- * that requires `{ field: T, ... }` field syntax, so the parser misread
7
- * the function body as object fields and rejected `let` as not an
8
- * Identifier. The track started and finished in <10ms with status=failed.
3
+ * the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must:
9
4
  *
10
- * This script extracts the two STARTER_* template literals from
11
- * TracksListDialog.tsx (single source of truth do not duplicate the
12
- * text here) and runs the train parser on each.
5
+ * 1. Parse cleanly under @tom2012/train-core (no lex/parse errors).
6
+ * 2. Declare `main` with ZERO parameters. ccweb's run button posts
7
+ * args=[] (there's no UI to supply arguments), so a starter whose
8
+ * main takes args fails at runtime with "main() expects N arg(s),
9
+ * got 0" — exactly the v-15-e bug that wasted user time.
10
+ * 3. For STARTER_BASIC (no __ccweb_ask_user dependency): run main()
11
+ * end-to-end through a mock LLM adapter and assert ok=true. This
12
+ * is the strong check — anything that compiles+resolves but
13
+ * explodes at runtime gets caught here.
14
+ * 4. For STARTER_ASK_USER: parse + main-is-zero-arg only; running it
15
+ * requires the ccweb-specific __ccweb_ask_user builtin which
16
+ * train-core doesn't ship.
13
17
  *
14
- * Run: cd backend && npx ts-node src/tracks/__tests__/verify-starter-templates.ts
18
+ * Extracts STARTER_* template literals from TracksListDialog.tsx
19
+ * (single source of truth — do not duplicate the text here).
20
+ *
21
+ * Run: cd backend && npx tsx src/tracks/__tests__/verify-starter-templates.ts
15
22
  */
16
23
  export {};
17
24
  //# sourceMappingURL=verify-starter-templates.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify-starter-templates.d.ts","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
1
+ {"version":3,"file":"verify-starter-templates.d.ts","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
@@ -1,18 +1,25 @@
1
1
  "use strict";
2
2
  /**
3
3
  * Sanity check: the starter .tr templates that the frontend renders into
4
- * the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must parse
5
- * cleanly under @tom2012/train-core. v-15-d shipped templates whose
6
- * return type was `-> object {` — `object` is a structural-type keyword
7
- * that requires `{ field: T, ... }` field syntax, so the parser misread
8
- * the function body as object fields and rejected `let` as not an
9
- * Identifier. The track started and finished in <10ms with status=failed.
4
+ * the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must:
10
5
  *
11
- * This script extracts the two STARTER_* template literals from
12
- * TracksListDialog.tsx (single source of truth do not duplicate the
13
- * text here) and runs the train parser on each.
6
+ * 1. Parse cleanly under @tom2012/train-core (no lex/parse errors).
7
+ * 2. Declare `main` with ZERO parameters. ccweb's run button posts
8
+ * args=[] (there's no UI to supply arguments), so a starter whose
9
+ * main takes args fails at runtime with "main() expects N arg(s),
10
+ * got 0" — exactly the v-15-e bug that wasted user time.
11
+ * 3. For STARTER_BASIC (no __ccweb_ask_user dependency): run main()
12
+ * end-to-end through a mock LLM adapter and assert ok=true. This
13
+ * is the strong check — anything that compiles+resolves but
14
+ * explodes at runtime gets caught here.
15
+ * 4. For STARTER_ASK_USER: parse + main-is-zero-arg only; running it
16
+ * requires the ccweb-specific __ccweb_ask_user builtin which
17
+ * train-core doesn't ship.
14
18
  *
15
- * Run: cd backend && npx ts-node src/tracks/__tests__/verify-starter-templates.ts
19
+ * Extracts STARTER_* template literals from TracksListDialog.tsx
20
+ * (single source of truth — do not duplicate the text here).
21
+ *
22
+ * Run: cd backend && npx tsx src/tracks/__tests__/verify-starter-templates.ts
16
23
  */
17
24
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
25
  if (k2 === undefined) k2 = k;
@@ -50,14 +57,12 @@ var __importStar = (this && this.__importStar) || (function () {
50
57
  Object.defineProperty(exports, "__esModule", { value: true });
51
58
  const fs = __importStar(require("fs"));
52
59
  const path = __importStar(require("path"));
53
- // Dynamic import via `new Function` so tsc/tsx don't rewrite to require()
54
- // — @tom2012/train-core is ESM-only and CJS require() of its subpath
60
+ // Dynamic imports via `new Function` so tsc/tsx don't rewrite to require()
61
+ // — @tom2012/train-* are ESM-only and CJS require() of their subpath
55
62
  // exports fails with ERR_PACKAGE_PATH_NOT_EXPORTED.
56
63
  const dynamicImport = new Function('p', 'return import(p)');
57
- let parseFn;
58
64
  const DIALOG_PATH = path.resolve(__dirname, '../../../../frontend/src/components/tracks/TracksListDialog.tsx');
59
65
  function extractTemplate(source, name) {
60
- // Match: const NAME = `...` (template literal, allowing newlines)
61
66
  const re = new RegExp(`const\\s+${name}\\s*=\\s*\`([\\s\\S]*?)\``);
62
67
  const m = source.match(re);
63
68
  if (!m)
@@ -65,33 +70,103 @@ function extractTemplate(source, name) {
65
70
  return m[1];
66
71
  }
67
72
  let failed = 0;
68
- function checkParses(name, body) {
69
- const result = parseFn(body);
70
- const errCount = result.lexErrors.length + result.parseErrors.length;
71
- if (errCount === 0) {
72
- console.log(` ✓ ${name} parses cleanly`);
73
- }
74
- else {
75
- failed++;
76
- console.error(` ✗ ${name}: ${errCount} error(s)`);
77
- for (const e of result.parseErrors)
78
- console.error(` parse: ${e.message}`);
79
- for (const e of result.lexErrors)
80
- console.error(` lex: ${e.message}`);
81
- }
73
+ function ok(name) {
74
+ console.log(` ✓ ${name}`);
75
+ }
76
+ function fail(name, msg) {
77
+ failed++;
78
+ console.error(` ✗ ${name}${msg ? ': ' + msg : ''}`);
82
79
  }
83
80
  async function main() {
84
- console.log('Verifying starter .tr templates parse under train-lang...');
85
- const mod = await dynamicImport('@tom2012/train-core/parser');
86
- parseFn = mod.parse;
81
+ console.log('Verifying starter .tr templates...');
82
+ const parser = await dynamicImport('@tom2012/train-core/parser');
83
+ const core = await dynamicImport('@tom2012/train-core');
87
84
  const dialogSrc = fs.readFileSync(DIALOG_PATH, 'utf8');
88
- checkParses('STARTER_BASIC', extractTemplate(dialogSrc, 'STARTER_BASIC'));
89
- checkParses('STARTER_ASK_USER', extractTemplate(dialogSrc, 'STARTER_ASK_USER'));
85
+ // Helper: parse + assert main is 0-arg
86
+ function checkParseAndMainSignature(name, body) {
87
+ const parsed = parser.parse(body);
88
+ const errCount = parsed.lexErrors.length + parsed.parseErrors.length;
89
+ if (errCount > 0) {
90
+ fail(`${name} parses`, `${errCount} error(s)`);
91
+ for (const e of parsed.parseErrors)
92
+ console.error(` parse: ${e.message}`);
93
+ for (const e of parsed.lexErrors)
94
+ console.error(` lex: ${e.message}`);
95
+ return false;
96
+ }
97
+ ok(`${name} parses`);
98
+ // Find main decl and verify zero params. buildAst returns a typed
99
+ // AST; we look for a FunctionDecl named 'main' (or whatever the
100
+ // export aliases). Conservatively just check the source matches
101
+ // `func main(` followed by `)` with only whitespace between —
102
+ // train-lang grammar uses a paren list, so this is the literal
103
+ // signature.
104
+ if (!/func\s+main\s*\(\s*\)/.test(body)) {
105
+ fail(`${name} main is 0-arg`, 'starter must be runnable with zero args (ccweb run button posts args=[]). Use __ccweb_ask_user to collect input.');
106
+ return false;
107
+ }
108
+ ok(`${name} main is 0-arg`);
109
+ // Export must be exactly `export main` (no `as <alias>`). ccweb's
110
+ // TrackRunner calls train.runFile without an explicit entry, which
111
+ // defaults to 'main' in train-core. Aliasing to anything else
112
+ // (e.g. `export main as literature_search`) makes the entry name
113
+ // unreachable and the run fails with `no export named 'main' found`.
114
+ if (!/^\s*export\s+main\s*$/m.test(body)) {
115
+ fail(`${name} exports 'main' (no alias)`, "must be exactly `export main` — ccweb's default entry is 'main'; aliasing makes it unreachable");
116
+ return false;
117
+ }
118
+ ok(`${name} exports 'main' (no alias)`);
119
+ return true;
120
+ }
121
+ // STARTER_BASIC: full end-to-end run through an inline mock adapter.
122
+ // Inlined (not imported from @tom2012/train-adapter-mock) so this
123
+ // script has zero runtime dependencies beyond train-core itself.
124
+ const basic = extractTemplate(dialogSrc, 'STARTER_BASIC');
125
+ if (checkParseAndMainSignature('STARTER_BASIC', basic)) {
126
+ const adapter = {
127
+ name: 'inline-mock',
128
+ version: '0.0.0',
129
+ capabilities: {
130
+ parallel: true,
131
+ cancellation: true,
132
+ writesWorkflowData: false,
133
+ },
134
+ // eslint-disable-next-line @typescript-eslint/require-await
135
+ async call(_req) {
136
+ return {
137
+ kind: 'success',
138
+ outputs: {
139
+ message: '工作轨是 ccweb 中的可视化任务编排子系统。',
140
+ },
141
+ };
142
+ },
143
+ };
144
+ const result = await core.runSource(basic, { adapter, args: [] });
145
+ if (!result.ok) {
146
+ fail('STARTER_BASIC runs with mock adapter', result.error
147
+ ? `${result.error.errorType ?? 'Error'}: ${result.error.message}`
148
+ : 'unknown failure');
149
+ }
150
+ else {
151
+ ok('STARTER_BASIC runs with mock adapter');
152
+ }
153
+ }
154
+ // STARTER_ASK_USER: parse + signature only (needs __ccweb_ask_user).
155
+ const askUser = extractTemplate(dialogSrc, 'STARTER_ASK_USER');
156
+ checkParseAndMainSignature('STARTER_ASK_USER', askUser);
157
+ // Quick existence check that the template uses __ccweb_ask_user
158
+ // intentionally — otherwise it should be runnable in this script too.
159
+ if (!askUser.includes('__ccweb_ask_user')) {
160
+ fail('STARTER_ASK_USER uses __ccweb_ask_user', 'template named ASK_USER but does not call it');
161
+ }
162
+ else {
163
+ ok('STARTER_ASK_USER uses __ccweb_ask_user');
164
+ }
90
165
  if (failed > 0) {
91
- console.error(`\n${failed} template(s) failed`);
166
+ console.error(`\n${failed} check(s) failed`);
92
167
  process.exit(1);
93
168
  }
94
- console.log('\nAll starter templates parse OK.');
169
+ console.log('\nAll starter template checks passed.');
95
170
  }
96
171
  main().catch((e) => {
97
172
  console.error(e);
@@ -1 +1 @@
1
- {"version":3,"file":"verify-starter-templates.js","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAwB;AACxB,2CAA4B;AAE5B,0EAA0E;AAC1E,qEAAqE;AACrE,oDAAoD;AACpD,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAC,GAAG,EAAE,kBAAkB,CAEwD,CAAA;AAElH,IAAI,OAAkG,CAAA;AAEtG,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,SAAS,EACT,iEAAiE,CAClE,CAAA;AAED,SAAS,eAAe,CAAC,MAAc,EAAE,IAAY;IACnD,kEAAkE;IAClE,MAAM,EAAE,GAAG,IAAI,MAAM,CAAC,YAAY,IAAI,2BAA2B,CAAC,CAAA;IAClE,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC1B,IAAI,CAAC,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,iBAAiB,WAAW,EAAE,CAAC,CAAA;IACvE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;AACb,CAAC;AAED,IAAI,MAAM,GAAG,CAAC,CAAA;AACd,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY;IAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAA;IACpE,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,iBAAiB,CAAC,CAAA;IAC3C,CAAC;SAAM,CAAC;QACN,MAAM,EAAE,CAAA;QACR,OAAO,CAAC,KAAK,CAAC,OAAO,IAAI,KAAK,QAAQ,WAAW,CAAC,CAAA;QAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW;YAChC,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;QAC5C,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS;YAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IAC5C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;IACxE,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,4BAA4B,CAAC,CAAA;IAC7D,OAAO,GAAG,GAAG,CAAC,KAAK,CAAA;IACnB,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;IACtD,WAAW,CAAC,eAAe,EAAE,eAAe,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAAA;IACzE,WAAW,CACT,kBAAkB,EAClB,eAAe,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAC/C,CAAA;IACD,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,qBAAqB,CAAC,CAAA;QAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAA;AAClD,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"verify-starter-templates.js","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,YAAY,CAAA;AAEjD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAs0C/B;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAGrE"}
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,YAAY,CAAA;AAEjD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAu2C/B;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAGrE"}
@@ -375,7 +375,7 @@ class TrainAstBuilder extends BaseVisitor {
375
375
  constDecl(ctx) {
376
376
  const constTok = ctx.Const[0];
377
377
  const id = ctx.Identifier[0];
378
- const type = this.visit(ctx.typeAnnot[0]);
378
+ const type = this.visit(ctx.declTypeAnnot[0]);
379
379
  const value = this.visit(ctx.expr[0]);
380
380
  return {
381
381
  kind: 'ConstDecl',
@@ -388,7 +388,7 @@ class TrainAstBuilder extends BaseVisitor {
388
388
  varDecl(ctx) {
389
389
  const varTok = ctx.Var[0];
390
390
  const id = ctx.Identifier[0];
391
- const type = this.visit(ctx.typeAnnot[0]);
391
+ const type = this.visit(ctx.declTypeAnnot[0]);
392
392
  const init = ctx.expr ? this.visit(ctx.expr[0]) : null;
393
393
  const endRange = init?.range ?? type.range;
394
394
  return {
@@ -533,6 +533,39 @@ class TrainAstBuilder extends BaseVisitor {
533
533
  return this.visit(ctx.objectType[0]);
534
534
  return this.visit(ctx.scalarType[0]);
535
535
  }
536
+ // Variant for let/var/const decl types: same AST shape as typeAnnot
537
+ // but scalar/array sub-rules don't allow trailing named constraints
538
+ // (those would silently swallow the next statement). Constraints
539
+ // belong on fai outputs / func params, not local bindings.
540
+ declTypeAnnot(ctx) {
541
+ if (ctx.enumType)
542
+ return this.visit(ctx.enumType[0]);
543
+ if (ctx.declArrayType)
544
+ return this.visit(ctx.declArrayType[0]);
545
+ if (ctx.objectType)
546
+ return this.visit(ctx.objectType[0]);
547
+ return this.visit(ctx.declScalarType[0]);
548
+ }
549
+ declScalarType(ctx) {
550
+ const id = ctx.Identifier[0];
551
+ return {
552
+ kind: 'ScalarType',
553
+ name: id.image,
554
+ constraint: null,
555
+ range: tokenRange(id),
556
+ };
557
+ }
558
+ declArrayType(ctx) {
559
+ const arrTok = ctx.KwArray[0];
560
+ const element = this.visit(ctx.typeAnnot[0]);
561
+ const rangle = ctx.RAngle[0];
562
+ return {
563
+ kind: 'ArrayType',
564
+ element,
565
+ constraint: null,
566
+ range: spanFromTokenToRange(arrTok, tokenRange(rangle)),
567
+ };
568
+ }
536
569
  scalarType(ctx) {
537
570
  const id = ctx.Identifier[0];
538
571
  const constraint = ctx.typeConstraint
@@ -667,8 +700,8 @@ class TrainAstBuilder extends BaseVisitor {
667
700
  letDecl(ctx) {
668
701
  const letTok = ctx.Let[0];
669
702
  const target = this.visit(ctx.letTarget[0]);
670
- const type = ctx.typeAnnot
671
- ? this.visit(ctx.typeAnnot[0])
703
+ const type = ctx.declTypeAnnot
704
+ ? this.visit(ctx.declTypeAnnot[0])
672
705
  : null;
673
706
  const init = ctx.expr ? this.visit(ctx.expr[0]) : null;
674
707
  const endRange = init?.range ?? type?.range ?? target.range;
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAA;AAsErB,iBAAS,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAcrC;AAoYD,wBAAgB,sBAAsB,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAO3D;AAID,iBAAS,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAuB3C;AAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA"}
1
+ {"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAA;AAsErB,iBAAS,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAcrC;AA8YD,wBAAgB,sBAAsB,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAO3D;AAID,iBAAS,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAuB3C;AAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA"}
@@ -187,10 +187,22 @@ const builtinSpecs = [
187
187
  return out;
188
188
  },
189
189
  ],
190
- // ─── String ──────────────────────────────────────────────────────────
190
+ // ─── String / Array ────────────────────────────────────────────────
191
191
  [
192
192
  'concat',
193
193
  (args) => {
194
+ // Polymorphic: if ALL args are arrays, return a flat-concatenated
195
+ // array. Otherwise stringify all args and concatenate as a string.
196
+ // Mixed array/non-array is treated as the string path (each array
197
+ // gets formatValue'd, which is rarely what callers want, but is
198
+ // the only safe interpretation when types disagree).
199
+ if (args.length > 0 && args.every((a) => Array.isArray(a))) {
200
+ const out = [];
201
+ for (const a of args)
202
+ for (const el of a)
203
+ out.push(el);
204
+ return out;
205
+ }
194
206
  return args.map(formatValue).join('');
195
207
  },
196
208
  ],