@deepwhale/coding-agent 1.0.11 → 1.0.13

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/dist/index.d.ts CHANGED
@@ -22,7 +22,6 @@ export * from './modes/index.js';
22
22
  export * from './verify/index.js';
23
23
  export * from './policy/index.js';
24
24
  export * from './util/index.js';
25
- export { runVerify, detectContext, type RunVerifyOptions, type VerificationReport } from './verify/index.js';
26
25
  export type { ChatMessage, LLMClient } from '@deepwhale/llm';
27
26
  export { SessionReader, SessionWriter } from '@deepwhale/core';
28
27
  export { startRepl, runOneTurn, formatUsageStatus, createReplConfirm } from './repl.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAGhC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE7G,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACxF,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrG,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAEhC,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AACxF,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrG,YAAY,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAG7C,OAAO,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -22,9 +22,6 @@ export * from './modes/index.js';
22
22
  export * from './verify/index.js'; // Sprint 1c-revive-2-D-11-4 (2026-06-04): verify module
23
23
  export * from './policy/index.js'; // Sprint 1c-revive-2-D-24.2 (2026-06-06): tui-ink needs ToolPolicy/staticToolPolicy
24
24
  export * from './util/index.js'; // Sprint 1c-revive-2-D-25 B4 (2026-06-06): tui-ink + tui.ts 共享 util (tui-history)
25
- // Sprint 1c-revive-2-D-26 C3 (2026-06-07): tui-ink /verify slash command 调 runVerify
26
- // runVerify 在 verify barrel 里已 export, 这里再 re-export 出顶层供 tui-ink 用
27
- export { runVerify, detectContext } from './verify/index.js';
28
25
  export { SessionReader, SessionWriter } from '@deepwhale/core';
29
26
  export { startRepl, runOneTurn, formatUsageStatus, createReplConfirm } from './repl.js';
30
27
  // Sprint 1c-revive-2-D-25 B2 (2026-06-06): tui-ink App needs LLMClient factory + ToolRegistry
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC,CAAC,wDAAwD;AAC3F,cAAc,mBAAmB,CAAC,CAAC,oFAAoF;AACvH,cAAc,iBAAiB,CAAC,CAAC,kFAAkF;AACnH,qFAAqF;AACrF,sEAAsE;AACtE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAkD,MAAM,mBAAmB,CAAC;AAG7G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGxF,8FAA8F;AAC9F,kEAAkE;AAClE,OAAO,EAAE,mBAAmB,EAA2C,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC,CAAC,wDAAwD;AAC3F,cAAc,mBAAmB,CAAC,CAAC,oFAAoF;AACvH,cAAc,iBAAiB,CAAC,CAAC,kFAAkF;AAGnH,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAGxF,8FAA8F;AAC9F,kEAAkE;AAClE,OAAO,EAAE,mBAAmB,EAA2C,MAAM,kBAAkB,CAAC"}
@@ -72,11 +72,6 @@ export declare function resolveTuiTheme(themeArg?: string): TuiThemeName;
72
72
  * @returns 染色后文本 (含 ANSI escape) 或原 text (非 TTY)
73
73
  */
74
74
  export declare function highlightChunk(text: string, theme?: TuiTheme, forceColor?: boolean): string;
75
- declare const TUI_HISTORY_MAX = 1000;
76
- declare function tuiHistoryPath(): string;
77
- declare function tuiHistoryLoad(): string[];
78
- declare function tuiHistoryAppend(line: string): void;
79
- export { tuiHistoryAppend, tuiHistoryLoad, tuiHistoryPath, TUI_HISTORY_MAX };
80
75
  declare const SPINNER_FRAMES: readonly ["⠋", "⠙", "⠹", "⠸", "⠼"];
81
76
  declare const SPINNER_INTERVAL_MS = 80;
82
77
  declare const SPINNER_LABEL = "thinking\u2026";
@@ -1 +1 @@
1
- {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../src/modes/tui.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAOH,OAAO,KAAK,EAAe,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,EAKL,KAAK,qBAAqB,EAE3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAwCvE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,CAAC;AAElE,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,CA8BjD,CAAC;AAIF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAO/D;AAyED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,QAAyB,EAChC,UAAU,CAAC,EAAE,OAAO,GACnB,MAAM,CA8CR;AAUD,QAAA,MAAM,eAAe,OAAO,CAAC;AAE7B,iBAAS,cAAc,IAAI,MAAM,CAEhC;AAED,iBAAS,cAAc,IAAI,MAAM,EAAE,CA0BlC;AAED,iBAAS,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAe5C;AAGD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAO7E,QAAA,MAAM,cAAc,oCAAqC,CAAC;AAC1D,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAC/B,QAAA,MAAM,aAAa,mBAAc,CAAC;AAElC,cAAM,OAAO;IACX,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,MAAM,CAAS;IAEvB,KAAK,CAAC,MAAM,GAAE,MAAM,CAAC,cAAuB,GAAG,IAAI;IAYnD,IAAI,CAAC,MAAM,GAAE,MAAM,CAAC,cAAuB,GAAG,IAAI;IA0BlD,OAAO,CAAC,MAAM;CAKf;AAGD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAC;AAmBvE,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC/B,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IACpC,2FAA2F;IAC3F,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;CAC3E;AAID,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqX9E"}
1
+ {"version":3,"file":"tui.d.ts","sourceRoot":"","sources":["../../src/modes/tui.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAIH,OAAO,KAAK,EAAe,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAQ7D,OAAO,EAKL,KAAK,qBAAqB,EAE3B,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAuB,KAAK,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAwCvE,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,WAAW,GAAG,YAAY,CAAC;AAElE,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,MAAM,EAAE,MAAM,CAAC,YAAY,EAAE,QAAQ,CA8BjD,CAAC;AAIF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,YAAY,CAO/D;AAyED;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,QAAyB,EAChC,UAAU,CAAC,EAAE,OAAO,GACnB,MAAM,CA8CR;AAkBD,QAAA,MAAM,cAAc,oCAAqC,CAAC;AAC1D,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAC/B,QAAA,MAAM,aAAa,mBAAc,CAAC;AAElC,cAAM,OAAO;IACX,OAAO,CAAC,KAAK,CAA+C;IAC5D,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,MAAM,CAAS;IAEvB,KAAK,CAAC,MAAM,GAAE,MAAM,CAAC,cAAuB,GAAG,IAAI;IAYnD,IAAI,CAAC,MAAM,GAAE,MAAM,CAAC,cAAuB,GAAG,IAAI;IA0BlD,OAAO,CAAC,MAAM;CAKf;AAGD,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,CAAC;AAmBvE,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC/B,4BAA4B;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IACpC,2FAA2F;IAC3F,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,yCAAyC;IACzC,gBAAgB,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,QAAQ,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;CAC3E;AAID,wBAAsB,UAAU,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,CAqX9E"}
package/dist/modes/tui.js CHANGED
@@ -44,10 +44,8 @@
44
44
  */
45
45
  import { createInterface } from 'node:readline';
46
46
  import { stdin, stdout, stderr } from 'node:process';
47
- import { homedir } from 'node:os';
48
- import { mkdirSync, readFileSync, appendFileSync } from 'node:fs';
49
- import { join, dirname } from 'node:path';
50
47
  import { SessionReader, SessionWriter } from '@deepwhale/core';
48
+ import { tuiHistoryLoad, tuiHistoryAppend, } from '../util/tui-history.js';
51
49
  import { isToolLoopError, loadSession, persistToolLoopSteps, runToolLoop, } from '../agent/index.js';
52
50
  import { createDefaultRegistry } from '../tools/registry.js';
53
51
  import { formatUsageStatus } from '../repl.js';
@@ -254,60 +252,9 @@ export function highlightChunk(text, theme = THEMES.default, forceColor) {
254
252
  //
255
253
  // 存储: ~/.deepwhale/tui-history (JSONL, 每行 1 条 raw prompt, 0o600 权限, max 1000 条 LRU).
256
254
  // readline history 数组语义: 最新一条在尾部 (所以 load 时反序, append 时 push 后写尾).
257
- const TUI_HISTORY_MAX = 1000;
258
- function tuiHistoryPath() {
259
- return join(homedir(), '.deepwhale', 'tui-history');
260
- }
261
- function tuiHistoryLoad() {
262
- const p = tuiHistoryPath();
263
- try {
264
- const text = readFileSync(p, 'utf-8');
265
- // JSONL: 1 行 = 1 个对象 { ts, line }
266
- const lines = text.split('\n').filter((l) => l.trim().length > 0);
267
- const out = [];
268
- for (const l of lines) {
269
- try {
270
- const obj = JSON.parse(l);
271
- if (typeof obj.line === 'string' && obj.line.length > 0) {
272
- out.push(obj.line);
273
- }
274
- }
275
- catch {
276
- // 跳过坏行, 不破坏整个文件
277
- }
278
- }
279
- // 保留最新 1000 条 (LRU 截断)
280
- if (out.length > TUI_HISTORY_MAX) {
281
- out.splice(0, out.length - TUI_HISTORY_MAX);
282
- }
283
- return out;
284
- }
285
- catch {
286
- // 文件不存在 / 权限错 → 返空 (不抛, 不阻塞启动)
287
- return [];
288
- }
289
- }
290
- function tuiHistoryAppend(line) {
291
- // 过滤空行 + 内建命令 (跟其它 shell history 一样, 跟 token 浪费)
292
- if (line.length === 0)
293
- return;
294
- if (line.startsWith('/'))
295
- return; // /help /verify /exit 不入历史
296
- if (line === 'q' || line === 'exit' || line === 'quit')
297
- return;
298
- const p = tuiHistoryPath();
299
- try {
300
- // 0o700 权限父目录 + 0o600 文件 (跟 ~/.bash_history 一样, 仅用户可读)
301
- mkdirSync(dirname(p), { mode: 0o700, recursive: true });
302
- const entry = JSON.stringify({ ts: Date.now(), line }) + '\n';
303
- appendFileSync(p, entry, { mode: 0o600 });
304
- }
305
- catch {
306
- // best-effort, 不阻塞 turn 完成
307
- }
308
- }
309
- // 暴露 tuiHistoryAppend 供测试用 (D-22.1 verification)
310
- export { tuiHistoryAppend, tuiHistoryLoad, tuiHistoryPath, TUI_HISTORY_MAX };
255
+ //
256
+ // D-25 (2026-06-06) 抽 tuiHistoryPath/Load/Append/Truncate 到 coding-agent util
257
+ // (跟 tui-ink 1:1 共享). 详见 ../util/tui-history.ts.
311
258
  // ---- D-22.2 流式 token spinner (2026-06-06) ----
312
259
  //
313
260
  // 5 帧: ⠋ ⠙ ⠹ ⠸ ⠼, 80ms / 帧. 走 \r carriage return + \x1b[K clear-to-end-of-line.
@@ -1 +1 @@
1
- {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/modes/tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tui.js","sourceRoot":"","sources":["../../src/modes/tui.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * REPL slash builtin command router — Sprint 1c-revive-3-D-29.1.3 (2026-06-07).
3
+ *
4
+ * 历史:
5
+ * Sprint 0.3: REPL 接 /help / /exit / exit / quit 4 个内建命令, 派发写在
6
+ * rl.on('line') 闭包内 (原 repl.ts L434-481). 后续 D-11 加 /verify (走
7
+ * runVerify + 写 verification event 到 session), D-19 加 confirm 期间 /exit
8
+ * dismiss-then-pendingExit 顺序红线, D-19.6.1 加 slash builtin guard
9
+ * (turnInFlight 时除 /exit /quit 外 deny 其它 slash builtin).
10
+ * D-29.1.3 (2026-06-07): 抽到独立文件, 跟 repl-confirm.ts / repl-signal-coordinator.ts
11
+ * / repl-session.ts 工厂形态对齐.
12
+ *
13
+ * 拍板 (D-29.1.3):
14
+ * - 入口: dispatchSlashBuiltin(line, ctx) → { handled: boolean }
15
+ * - 闭包内不持 state, 所有副作用 (out / err / writer / prompt) 通过 ctx 注入
16
+ * (跟 D-29.1.1 signal-coordinator 抽法 1:1 一致, 单测 mock ctx 即可).
17
+ * - 派发顺序保 1:1 (跟原 rl.on('line') L434-481): /help → /verify → /unknown slash.
18
+ * - 行为 1:1 等价, 5 红线 0 改: turnInFlight/lineQueue state machine 仍在 repl.ts
19
+ * (slash guard L409-418 + chat path L490+), router 只搬 dispatch 闭包.
20
+ * - 公共 API 0 改: 5 caller (src/index.ts, modes/print.ts, modes/tui.ts,
21
+ * test/repl/*, test/unit/repl-verify.test.ts) 全部走 '../repl.js' 公共 re-export
22
+ * 路径, 0 改 import.
23
+ * - 0 加新依赖, runVerify / buildSummaryAndNext / formatReport / appendVerificationEvent
24
+ * 走 ctx 注入 (test mock 用, prod 走 ./verify/index.js 真实 export).
25
+ *
26
+ * 拍板 (D-29.1.3 §out of scope):
27
+ * - 不接 turnInFlight guard — 那在 repl.ts L409-418, 跟 6afccc8 / D-19.5p 拍板
28
+ * "deny 非 /exit /quit slash builtin" 红线绑定, 不在本 router scope.
29
+ * - 不接 lineQueue defer — D-19.5 P1 "只排 chat line, 不排 slash builtin", 跟 router
30
+ * "handled: boolean" 二态返值绑定, 调用方决定 defer / deny / handle.
31
+ * - 不接 confirm 期间 /exit dismiss — D-19.5 P2-dismiss, 在 repl.ts L370-373
32
+ * confirm path, 不在本 router scope.
33
+ */
34
+ import { type SessionWriter } from '@deepwhale/core';
35
+ import { type VerifyCheck } from '../verify/index.js';
36
+ export interface SlashContext {
37
+ /** stdout writer for user-facing output */
38
+ out: NodeJS.WritableStream;
39
+ /** stderr writer for error output */
40
+ err: NodeJS.WritableStream;
41
+ /** session writer (optional, only set when session is enabled) */
42
+ writer: SessionWriter | null;
43
+ /** REPL options.verifyChecks — test injects mocks, prod leaves undefined for 4 default steps */
44
+ verifyChecks: VerifyCheck[] | undefined;
45
+ /** re-prompt the user (write prompt char + flush) */
46
+ prompt: () => void;
47
+ }
48
+ /**
49
+ * Dispatch a slash builtin command (/help, /verify, unknown slash).
50
+ *
51
+ * Returns `handled: true` if the line was a recognized slash builtin and was
52
+ * processed. Returns `handled: false` if the line should fall through to the
53
+ * chat / lineQueue path.
54
+ *
55
+ * Order (跟原 repl.ts L434-481 1:1 保):
56
+ * 1. /help → out.write(i18n cli.builtin_help) + prompt + return
57
+ * 2. /verify → runVerify → formatReport → out.write → if (writer)
58
+ * appendVerificationEvent + try/catch wrap (1ceef94 红线)
59
+ * 3. /unknown slash (line.startsWith('/') 但不命中 /help /verify)
60
+ * → out.write(i18n cli.builtin_unknown) + prompt + return
61
+ *
62
+ * 5 红线 0 改 (跟 ship-quality-checks §7a + D-19/19.5/19.5p/6afccc8/1ceef94 一致):
63
+ * - /verify try/finally + appendVerificationEvent (1ceef94): 修法不在 try/finally,
64
+ * 而在 try/catch — verify 失败 (e.g. 命令不存在) 不污染 session, 走 stderr i18n
65
+ * 提示 + prompt 继续. appendVerificationEvent 仅 status='passed' 或 'failed' 时
66
+ * 写, 不在 catch 块里 (跟 D-11-4 拍板一致).
67
+ * - turnInFlight guard (D-19.6.1 + 6afccc8): 不在本 router, 调用方 repl.ts L409-418
68
+ * 决定是否调 dispatchSlashBuiltin.
69
+ * - confirm 期间 /exit dismiss (D-19.5 P2-dismiss): 不在本 router, repl.ts L370-373
70
+ * confirm path 处理.
71
+ * - /exit fast-path (D-19.5 P1): 不在本 router (line === '/exit' 走 turnInFlight guard
72
+ * L412 exclude, 不入 dispatch).
73
+ * - line.startsWith('/') unknown i18n (D-21.1): 跟原 L477-481 1:1 保.
74
+ */
75
+ export declare function dispatchSlashBuiltin(line: string, ctx: SlashContext): Promise<{
76
+ handled: boolean;
77
+ }>;
78
+ //# sourceMappingURL=repl-command-router.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl-command-router.d.ts","sourceRoot":"","sources":["../../src/repl/repl-command-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAK,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEvD,OAAO,EAAgD,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAEnG,MAAM,WAAW,YAAY;IAC3B,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC,cAAc,CAAA;IAC1B,qCAAqC;IACrC,GAAG,EAAE,MAAM,CAAC,cAAc,CAAA;IAC1B,kEAAkE;IAClE,MAAM,EAAE,aAAa,GAAG,IAAI,CAAA;IAC5B,gGAAgG;IAChG,YAAY,EAAE,WAAW,EAAE,GAAG,SAAS,CAAA;IACvC,qDAAqD;IACrD,MAAM,EAAE,MAAM,IAAI,CAAA;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,YAAY,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAkD/B"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * REPL slash builtin command router — Sprint 1c-revive-3-D-29.1.3 (2026-06-07).
3
+ *
4
+ * 历史:
5
+ * Sprint 0.3: REPL 接 /help / /exit / exit / quit 4 个内建命令, 派发写在
6
+ * rl.on('line') 闭包内 (原 repl.ts L434-481). 后续 D-11 加 /verify (走
7
+ * runVerify + 写 verification event 到 session), D-19 加 confirm 期间 /exit
8
+ * dismiss-then-pendingExit 顺序红线, D-19.6.1 加 slash builtin guard
9
+ * (turnInFlight 时除 /exit /quit 外 deny 其它 slash builtin).
10
+ * D-29.1.3 (2026-06-07): 抽到独立文件, 跟 repl-confirm.ts / repl-signal-coordinator.ts
11
+ * / repl-session.ts 工厂形态对齐.
12
+ *
13
+ * 拍板 (D-29.1.3):
14
+ * - 入口: dispatchSlashBuiltin(line, ctx) → { handled: boolean }
15
+ * - 闭包内不持 state, 所有副作用 (out / err / writer / prompt) 通过 ctx 注入
16
+ * (跟 D-29.1.1 signal-coordinator 抽法 1:1 一致, 单测 mock ctx 即可).
17
+ * - 派发顺序保 1:1 (跟原 rl.on('line') L434-481): /help → /verify → /unknown slash.
18
+ * - 行为 1:1 等价, 5 红线 0 改: turnInFlight/lineQueue state machine 仍在 repl.ts
19
+ * (slash guard L409-418 + chat path L490+), router 只搬 dispatch 闭包.
20
+ * - 公共 API 0 改: 5 caller (src/index.ts, modes/print.ts, modes/tui.ts,
21
+ * test/repl/*, test/unit/repl-verify.test.ts) 全部走 '../repl.js' 公共 re-export
22
+ * 路径, 0 改 import.
23
+ * - 0 加新依赖, runVerify / buildSummaryAndNext / formatReport / appendVerificationEvent
24
+ * 走 ctx 注入 (test mock 用, prod 走 ./verify/index.js 真实 export).
25
+ *
26
+ * 拍板 (D-29.1.3 §out of scope):
27
+ * - 不接 turnInFlight guard — 那在 repl.ts L409-418, 跟 6afccc8 / D-19.5p 拍板
28
+ * "deny 非 /exit /quit slash builtin" 红线绑定, 不在本 router scope.
29
+ * - 不接 lineQueue defer — D-19.5 P1 "只排 chat line, 不排 slash builtin", 跟 router
30
+ * "handled: boolean" 二态返值绑定, 调用方决定 defer / deny / handle.
31
+ * - 不接 confirm 期间 /exit dismiss — D-19.5 P2-dismiss, 在 repl.ts L370-373
32
+ * confirm path, 不在本 router scope.
33
+ */
34
+ import { t } from '@deepwhale/core';
35
+ import { appendVerificationEvent } from '../agent/index.js';
36
+ import { runVerify, buildSummaryAndNext, formatReport } from '../verify/index.js';
37
+ /**
38
+ * Dispatch a slash builtin command (/help, /verify, unknown slash).
39
+ *
40
+ * Returns `handled: true` if the line was a recognized slash builtin and was
41
+ * processed. Returns `handled: false` if the line should fall through to the
42
+ * chat / lineQueue path.
43
+ *
44
+ * Order (跟原 repl.ts L434-481 1:1 保):
45
+ * 1. /help → out.write(i18n cli.builtin_help) + prompt + return
46
+ * 2. /verify → runVerify → formatReport → out.write → if (writer)
47
+ * appendVerificationEvent + try/catch wrap (1ceef94 红线)
48
+ * 3. /unknown slash (line.startsWith('/') 但不命中 /help /verify)
49
+ * → out.write(i18n cli.builtin_unknown) + prompt + return
50
+ *
51
+ * 5 红线 0 改 (跟 ship-quality-checks §7a + D-19/19.5/19.5p/6afccc8/1ceef94 一致):
52
+ * - /verify try/finally + appendVerificationEvent (1ceef94): 修法不在 try/finally,
53
+ * 而在 try/catch — verify 失败 (e.g. 命令不存在) 不污染 session, 走 stderr i18n
54
+ * 提示 + prompt 继续. appendVerificationEvent 仅 status='passed' 或 'failed' 时
55
+ * 写, 不在 catch 块里 (跟 D-11-4 拍板一致).
56
+ * - turnInFlight guard (D-19.6.1 + 6afccc8): 不在本 router, 调用方 repl.ts L409-418
57
+ * 决定是否调 dispatchSlashBuiltin.
58
+ * - confirm 期间 /exit dismiss (D-19.5 P2-dismiss): 不在本 router, repl.ts L370-373
59
+ * confirm path 处理.
60
+ * - /exit fast-path (D-19.5 P1): 不在本 router (line === '/exit' 走 turnInFlight guard
61
+ * L412 exclude, 不入 dispatch).
62
+ * - line.startsWith('/') unknown i18n (D-21.1): 跟原 L477-481 1:1 保.
63
+ */
64
+ export async function dispatchSlashBuiltin(line, ctx) {
65
+ if (line === '/help') {
66
+ ctx.out.write(`${t('cli.builtin_help')}\n`);
67
+ ctx.prompt();
68
+ return { handled: true };
69
+ }
70
+ if (line === '/verify') {
71
+ // Sprint 1c-revive-2-D-11-4 (2026-06-04): REPL `/verify` 内建命令.
72
+ // 跟 CLI `deepwhale --verify` 走同一 runVerify() — 不走 LLM / tool loop.
73
+ // 拍板 (D-11-4 review, 2026-06-04): REPL 里 /verify 走**异步** runVerify,
74
+ // 跑完打 formatReport 到 out (跟其它内建命令风格一致), 然后**写 verification
75
+ // event 到 session JSONL** (因为用户在 REPL 里跑了 verify, session 走 audit
76
+ // 轨迹, 跟 CLI 不写 session 形成差异).
77
+ // 退出: REPL 不退, 跑完回到 prompt 继续.
78
+ try {
79
+ const report = await runVerify(ctx.verifyChecks !== undefined ? { checks: ctx.verifyChecks } : {});
80
+ const filled = buildSummaryAndNext(report);
81
+ const text = formatReport({
82
+ ...report,
83
+ summary: filled.summary,
84
+ nextSuggestedAction: filled.nextSuggestedAction,
85
+ });
86
+ ctx.out.write(`${text}\n`);
87
+ if (ctx.writer) {
88
+ // 写 verification event 到 session (跟 CLI 不同: REPL 用户有 session, 应该审计)
89
+ const failedCount = report.checks.filter((c) => c.status !== 'passed').length;
90
+ await appendVerificationEvent(ctx.writer, {
91
+ status: report.overallStatus,
92
+ durationMs: report.durationMs,
93
+ commandCount: report.checks.length,
94
+ failedCount,
95
+ summary: filled.summary,
96
+ });
97
+ }
98
+ }
99
+ catch (e) {
100
+ ctx.err.write(`error: verify failed to start: ${e instanceof Error ? e.message : String(e)}\n\n`);
101
+ }
102
+ ctx.prompt();
103
+ return { handled: true };
104
+ }
105
+ if (line.startsWith('/')) {
106
+ ctx.out.write(`${t('cli.builtin_unknown', line)}\n`);
107
+ ctx.prompt();
108
+ return { handled: true };
109
+ }
110
+ return { handled: false };
111
+ }
112
+ //# sourceMappingURL=repl-command-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl-command-router.js","sourceRoot":"","sources":["../../src/repl/repl-command-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,CAAC,EAAsB,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,YAAY,EAAoB,MAAM,oBAAoB,CAAA;AAenG;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAY,EACZ,GAAiB;IAEjB,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC3C,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,+DAA+D;QAC/D,mEAAmE;QACnE,oEAAoE;QACpE,2DAA2D;QAC3D,kEAAkE;QAClE,8BAA8B;QAC9B,+BAA+B;QAC/B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAC5B,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CACnE,CAAA;YACD,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;YAC1C,MAAM,IAAI,GAAG,YAAY,CAAC;gBACxB,GAAG,MAAM;gBACT,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;aAChD,CAAC,CAAA;YACF,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAA;YAC1B,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,oEAAoE;gBACpE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAA;gBAC7E,MAAM,uBAAuB,CAAC,GAAG,CAAC,MAAM,EAAE;oBACxC,MAAM,EAAE,MAAM,CAAC,aAAa;oBAC5B,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;oBAClC,WAAW;oBACX,OAAO,EAAE,MAAM,CAAC,OAAO;iBACxB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,GAAG,CAAC,KAAK,CACX,kCAAkC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CACnF,CAAA;QACH,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QACpD,GAAG,CAAC,MAAM,EAAE,CAAA;QACZ,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAC1B,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;AAC3B,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * REPL session / usage-status utilities — Sprint 1c-revive-3-D-29.1.2 (2026-06-07).
3
+ *
4
+ * 历史:
5
+ * Sprint 1b: 把 usage 翻译成人类可读的一行 status, 写到 stderr (不污染 stdout 流式输出).
6
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑): 增 EMA
7
+ * 平滑闭包 state — appendUsageStatus 每 turn in-place 更新, formatUsageStatus 读
8
+ * ema 显示 (avg NN%). 跨 turn 累积, 闭包内 mutable, 不持久化 (session reload 后
9
+ * sampleCount 重置为 0, 避免误导 — user 看到 avg 段消失就知道 reload 过了).
10
+ *
11
+ * 拍板 (D-29.1.2):
12
+ * - 文件: `repl-session.ts` (跟 `repl-confirm.ts` / `repl-signal-coordinator.ts` 同
13
+ * kebab-case 工厂形态命名, 本次抽 usage-status 三件套, 后续 D-29.1.5 可能扩展到
14
+ * session loading / state 持久化).
15
+ * - 公共 API 0 改: repl.ts re-export `formatUsageStatus` / `appendUsageStatus` /
16
+ * `type UsageEmaState` 跟现状 1:1, src/index.ts / modes/print.ts / modes/tui.ts /
17
+ * test/unit/usage-ema.test.ts 4 caller import path 不变.
18
+ * - 行为 1:1: formatUsageStatus 输出字符串逐字保持, appendUsageStatus in-place
19
+ * update 顺序 (update ema → format → write) 保持. 旧 caller 不传 emaState 用
20
+ * 默认 `{ sampleCount: 0 }` 行为兼容 (不显示 avg 段).
21
+ * - 本文件**不**抽 session loading / state 持久化 (Sprint 1a 那段 L250-263 还在
22
+ * repl.ts 闭包内, 跟 startRepl 强耦合, 留给 D-29.1.5).
23
+ *
24
+ * 拍板 (D-29.1.2 §out of scope):
25
+ * - 不抽 SessionReader / SessionWriter 构造 (L250-251) — 跟 startRepl 闭包
26
+ * 强耦合, 抽需要拆出 loadSessionOptions factory, 收益小, 留给 D-29.1.5.
27
+ * - 不动 /verify / /help / /exit dispatcher (L437-479) — 那是 6afccc8 slash
28
+ * builtin 红线, 留给 D-29.1.4.
29
+ * - 不动 runAgentTurn 主体 (L618-753) — 留给 D-29.1.5.
30
+ */
31
+ import type { Usage } from '@deepwhale/llm';
32
+ /**
33
+ * EMA 平滑 state (Sprint 1c-revive-2-D-21.1).
34
+ *
35
+ * - `hitRateEMA`: 过去 5-turn 滚动平均 (α=0.5 平滑). undefined = cold start, 第一次
36
+ * sample 直接赋值. 跨 turn 累积, 闭包内 mutable, 不持久化.
37
+ * - `sampleCount`: 已 sample 的 turn 数. `sampleCount < 3` 时不显示 (avg) 段 (样本
38
+ * 太少, 趋势没意义). 跟 `hitRateEMA` 一起被 appendUsageStatus in-place 更新.
39
+ */
40
+ export interface UsageEmaState {
41
+ hitRateEMA?: number;
42
+ sampleCount: number;
43
+ }
44
+ /**
45
+ * 把 usage 翻译成人类可读的一行 status 字符串.
46
+ *
47
+ * 显示规则 (Hermes footer 教训应用 — 多字段同值时去冗余):
48
+ * - 满 usage (有 cached_tokens) → 完整 4 字段: cache: 90% | ¥0.05/turn | prompt 1.2k (1.1k cached)
49
+ * - 无 cached_tokens → 简化为: usage: 1.2k prompt / 200 completion
50
+ * (不打 cache% / cost, 避免没数据时显示 0% 误导)
51
+ * - 无 usage → 完全不打印 (LLM 没返 usage 时不污染 stderr)
52
+ *
53
+ * Sprint 1c 抽 pricing 到 config.toml, 此函数签名不变。
54
+ *
55
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06, 修 cache 96%↔85% 跳变 footer 焦虑):
56
+ * 增 emaState 形参. 形参 hitRateEMA 是过去 5-turn 滚动平均 (α=0.5 平滑).
57
+ * 输出: `cache: 90% (avg 85%)` — per-turn 数字 + 趋势均值并列. user 视角:
58
+ * 1) 知道当 turn 真值, 2) 知道趋势 (avg 不会跟着单 turn 抖动).
59
+ * 边界:
60
+ * - sampleCount < 3: 不显示 (avg) 段 (样本太少, 趋势没意义, 不污染)
61
+ * - sampleCount >= 3: 显示 (avg NN%)
62
+ * - ema 永远存在 (闭包外, startRepl 持有), 跨 turn 累积
63
+ * 行为兼容: 旧 caller 不传 emaState 用默认 { hitRateEMA: undefined, sampleCount: 0 }
64
+ * → 行为跟改前一致 (不显示 avg 段). 现有单测 (formatUsageStatus) 不破.
65
+ */
66
+ export declare function formatUsageStatus(usage: Usage | undefined, emaState?: UsageEmaState): string | null;
67
+ /**
68
+ * Sprint 1c-revive-2-D-21.1 (2026-06-06): emaState 接受 mutable 引用 (闭包),
69
+ * 在 sampleCount < 5 用 cold-start EMA (直接赋值), 之后 α=0.5 平滑:
70
+ * newEMA = α * current + (1 - α) * oldEMA = 0.5 * current + 0.5 * oldEMA
71
+ * α=0.5 是 "等权平滑" (5-turn 半衰期 ≈ 1 turn, 快速响应 + 适度平滑).
72
+ * 数学: sampleCount=5 时, 5 turn 前的数据权重 = 0.5^5 = 3.1% (基本忘掉),
73
+ * 跟 5-turn rolling window 趋势一致, 但 EMA 实现更轻.
74
+ *
75
+ * export 出来供单测 (test/unit/usage-ema.test.ts) 验证 state machine.
76
+ * 之前是 local function, D-21.1 改成 export — 单测需要直接调它验 in-place update.
77
+ */
78
+ export declare function appendUsageStatus(usage: Usage | undefined, err: NodeJS.WritableStream, emaState: UsageEmaState): void;
79
+ //# sourceMappingURL=repl-session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repl-session.d.ts","sourceRoot":"","sources":["../../src/repl/repl-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAKD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,QAAQ,GAAE,aAAyB,GAClC,MAAM,GAAG,IAAI,CA2Bf;AAmBD;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,KAAK,GAAG,SAAS,EACxB,GAAG,EAAE,MAAM,CAAC,cAAc,EAC1B,QAAQ,EAAE,aAAa,GACtB,IAAI,CAgBN"}