@glbgpt/cli 0.2.7 → 0.2.8

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.
@@ -31,7 +31,8 @@ export function compactionTriggerTokens(model, catalogOverride) {
31
31
  export function estimateMessageTokens(m) {
32
32
  const content = typeof m.content === 'string' ? m.content : m.content == null ? '' : JSON.stringify(m.content);
33
33
  const extra = m.tool_calls ? JSON.stringify(m.tool_calls) : '';
34
- return Math.ceil((Buffer.byteLength(content, 'utf8') + Buffer.byteLength(extra, 'utf8')) / 4);
34
+ return Math.ceil((Buffer.byteLength(content, 'utf8') + Buffer.byteLength(extra, 'utf8') +
35
+ Buffer.byteLength(m.reasoning_content ?? '', 'utf8')) / 4);
35
36
  }
36
37
  /** Count of consecutive system messages at the head (base prompts — always kept verbatim). */
37
38
  export function leadingSystemCount(messages) {
@@ -101,6 +102,7 @@ const SUMMARIZE_SYSTEM = 'You summarize a conversation so it can continue seamle
101
102
  '## Progress\nWhat has been done so far, including tool actions and their outcomes.\n' +
102
103
  '## Files\nFiles read or modified, with paths and what matters about each.\n' +
103
104
  '## Next steps\nWhat remains or was about to happen.\n' +
105
+ 'Do not include internal reasoning or provider replay metadata in the summary. ' +
104
106
  'Never invent details. Keep concrete identifiers verbatim (paths, commands, URLs, ids, ' +
105
107
  'numbers, code names). Do not add commentary about the summarization itself.';
106
108
  /**
@@ -124,6 +126,7 @@ export async function summarizeForCompaction(backend, model, toSummarize, signal
124
126
  throw new Error('Compaction skipped: the summary request exceeds the remaining turn token budget.');
125
127
  }
126
128
  let text = '';
129
+ let reasoningContent = '';
127
130
  let usage;
128
131
  try {
129
132
  for await (const chunk of backend.stream(req, signal)) {
@@ -132,11 +135,17 @@ export async function summarizeForCompaction(backend, model, toSummarize, signal
132
135
  const t = chunk.choices?.[0]?.delta?.content;
133
136
  if (typeof t === 'string')
134
137
  text += t;
138
+ const reasoning = chunk.choices?.[0]?.delta?.reasoning_content;
139
+ if (typeof reasoning === 'string')
140
+ reasoningContent += reasoning;
135
141
  }
136
142
  }
137
143
  finally {
138
144
  if (protection) {
139
- const snapshot = protection.budget.recordCall(req, { content: text }, usage);
145
+ const snapshot = protection.budget.recordCall(req, {
146
+ content: text,
147
+ ...(reasoningContent ? { reasoning_content: reasoningContent } : {}),
148
+ }, usage);
140
149
  if (usage)
141
150
  protection.emit({ type: 'usage', promptTokens: usage.prompt_tokens ?? 0, completionTokens: usage.completion_tokens ?? 0 });
142
151
  protection.emit({ type: 'token_budget', ...snapshot });
@@ -1 +1 @@
1
- {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../../src/core/compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compaction.js","sourceRoot":"","sources":["../../../src/core/compaction.ts"],"names":[],"mappings":"AA2BA;;;;;GAKG;AACH,MAAM,eAAe,GAA4C;IAC/D,CAAC,OAAO,EAAE,SAAS,CAAC;IACpB,CAAC,SAAS,EAAE,SAAS,CAAC;CACvB,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAE9C,8EAA8E;AAC9E,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,6DAA6D;AAC7D,MAAM,CAAC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AACzC,sFAAsF;AACtF,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,MAAM,UAAU,gBAAgB,CAAC,KAAa,EAAE,eAAwB;IACtE,IAAI,OAAO,eAAe,KAAK,QAAQ,IAAI,eAAe,GAAG,CAAC;QAAE,OAAO,eAAe,CAAC;IACvF,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;IAC9C,CAAC;IACD,OAAO,sBAAsB,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAa,EAAE,eAAwB;IAC7E,OAAO,gBAAgB,CAAC,KAAK,EAAE,eAAe,CAAC,GAAG,sBAAsB,CAAC;AAC3E,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,qBAAqB,CAAC,CAAc;IAClD,MAAM,OAAO,GACX,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACjG,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,MAAM,CAAC;QACrF,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,kBAAkB,CAAC,QAAuB;IACxD,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ;QAAE,CAAC,IAAI,CAAC,CAAC;IACpE,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAC5B,QAAuB,EACvB,QAAgC;IAEhC,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM;YAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD,CAAC;IACD,iEAAiE;IACjE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAExC,gFAAgF;IAChF,wBAAwB;IACxB,IAAI,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,sCAAsC;IAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,IAAI,qBAAqB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,IAAI,IAAI,IAAI,kBAAkB,EAAE,CAAC;YAC/B,QAAQ,GAAG,GAAG,CAAC;YACf,MAAM;QACR,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC;IACvD,IAAI,QAAQ,IAAI,KAAK,GAAG,oBAAoB,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,wBAAwB;IACvF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACtB,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,eAAe,CAAC,QAAuB,EAAE,CAAyB;IAChF,IAAI,CAAC,CAAC;QAAE,OAAO,QAAQ,CAAC;IACxB,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpD,OAAO;QACL,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;QAC1B;YACE,IAAI,EAAE,QAAQ;YACd,OAAO,EACL,uEAAuE;gBACvE,yCAAyC;gBACzC,CAAC,CAAC,OAAO;SACZ;QACD,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;KACxC,CAAC;AACJ,CAAC;AAED,MAAM,gBAAgB,GACpB,0FAA0F;IAC1F,2FAA2F;IAC3F,2FAA2F;IAC3F,2DAA2D;IAC3D,sFAAsF;IACtF,sFAAsF;IACtF,6EAA6E;IAC7E,uDAAuD;IACvD,gFAAgF;IAChF,wFAAwF;IACxF,6EAA6E,CAAC;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAoB,EACpB,KAAa,EACb,WAA0B,EAC1B,MAAoB,EACpB,UAA4E;IAE5E,MAAM,GAAG,GAAG;QACV,KAAK;QACL,QAAQ,EAAE;YACR,EAAE,IAAI,EAAE,QAAiB,EAAE,OAAO,EAAE,gBAAgB,EAAE;YACtD,GAAG,WAAW;YACd;gBACE,IAAI,EAAE,MAAe;gBACrB,OAAO,EAAE,0FAA0F;aACpG;SACF;QACD,MAAM,EAAE,IAAa;KACtB,CAAC;IACF,IAAI,UAAU,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;IACtG,CAAC;IACD,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,gBAAgB,GAAG,EAAE,CAAC;IAC1B,IAAI,KAAyB,CAAC;IAC9B,IAAI,CAAC;QACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;YACtD,IAAI,KAAK,CAAC,KAAK;gBAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACrC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC;YAC7C,IAAI,OAAO,CAAC,KAAK,QAAQ;gBAAE,IAAI,IAAI,CAAC,CAAC;YACrC,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,iBAAiB,CAAC;YAC/D,IAAI,OAAO,SAAS,KAAK,QAAQ;gBAAE,gBAAgB,IAAI,SAAS,CAAC;QACnE,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;gBACjD,OAAO,EAAE,IAAI;gBACb,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACrE,EAAE,KAAK,CAAC,CAAC;YACV,IAAI,KAAK;gBAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,aAAa,IAAI,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,IAAI,CAAC,EAAE,CAAC,CAAC;YACtI,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;YACvD,IAAI,UAAU,CAAC,MAAM,CAAC,WAAW,EAAE;gBAAE,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAC5E,sIAAsI,EAAE,CAAC,CAAC;QAC9I,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACrG,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,iBAAiB,GAAa;IAClC,gCAAgC;IAChC,kBAAkB;IAClB,0BAA0B;IAC1B,wBAAwB;IACxB,uBAAuB;IACvB,kBAAkB;IAClB,+BAA+B;IAC/B,wBAAwB;CACzB,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACxD,CAAC"}
@@ -1,5 +1,10 @@
1
1
  import type { ChatMessage, ToolCall, ToolResult } from './types.js';
2
2
  import { type CompactionState } from './compaction.js';
3
+ /** Local replay data, kept apart from the visible transcript and bound to its source model. */
4
+ export interface AssistantReasoning {
5
+ model: string;
6
+ content: string;
7
+ }
3
8
  /** Serializable snapshot of a conversation, used for local persistence and resume. */
4
9
  export interface SessionSnapshot {
5
10
  id: string;
@@ -11,6 +16,9 @@ export interface SessionSnapshot {
11
16
  prunedToolCallIds?: string[];
12
17
  /** Context-compaction decision (absent when never compacted). */
13
18
  compaction?: CompactionState;
19
+ assistantReasoning?: Array<AssistantReasoning & {
20
+ messageIndex: number;
21
+ }>;
14
22
  }
15
23
  /**
16
24
  * A single conversation the CLI owns end to end.
@@ -35,6 +43,7 @@ export declare class Session {
35
43
  * covered prefix in the REQUEST view. Raw messages stay intact, like pruning.
36
44
  */
37
45
  compaction: CompactionState | null;
46
+ private readonly assistantReasoning;
38
47
  constructor(params: {
39
48
  id: string;
40
49
  model: string;
@@ -42,7 +51,10 @@ export declare class Session {
42
51
  messages?: ChatMessage[];
43
52
  prunedToolCallIds?: string[];
44
53
  compaction?: CompactionState | null;
54
+ assistantReasoning?: SessionSnapshot['assistantReasoning'];
45
55
  });
56
+ /** Protocol history for the current model, including same-model reasoning where required. */
57
+ modelMessages(): ChatMessage[];
46
58
  /** The messages to SEND: compaction, then pruning, projected over the intact raw history. */
47
59
  requestMessages(): ChatMessage[];
48
60
  /** Prepend a system message (must precede the first user message to steer the model). */
@@ -58,7 +70,7 @@ export declare class Session {
58
70
  /** Discard messages appended after `count` (roll back a failed turn so it leaves no trace). */
59
71
  rollbackTo(count: number): void;
60
72
  /** Append the assistant message for a completed model call (text and/or tool_calls). */
61
- addAssistantMessage(content: string | null, toolCalls: ToolCall[]): void;
73
+ addAssistantMessage(content: string | null, toolCalls: ToolCall[], reasoning?: AssistantReasoning): void;
62
74
  /** Append a tool result message answering a specific tool call. */
63
75
  addToolMessage(toolCallId: string, name: string, result: ToolResult): void;
64
76
  /** Switch the active model while keeping the conversation history. */
@@ -23,6 +23,7 @@ export class Session {
23
23
  * covered prefix in the REQUEST view. Raw messages stay intact, like pruning.
24
24
  */
25
25
  compaction;
26
+ assistantReasoning = new Map();
26
27
  constructor(params) {
27
28
  this.id = params.id;
28
29
  this.model = params.model;
@@ -30,10 +31,28 @@ export class Session {
30
31
  this.messages = params.messages ?? [];
31
32
  this.prunedToolCallIds = new Set(params.prunedToolCallIds ?? []);
32
33
  this.compaction = params.compaction ?? null;
34
+ for (const entry of params.assistantReasoning ?? []) {
35
+ const message = this.messages[entry.messageIndex];
36
+ if (Number.isInteger(entry.messageIndex) && message?.role === 'assistant' &&
37
+ typeof entry.model === 'string' && entry.model && typeof entry.content === 'string') {
38
+ this.assistantReasoning.set(message, { model: entry.model, content: entry.content });
39
+ }
40
+ }
41
+ }
42
+ /** Protocol history for the current model, including same-model reasoning where required. */
43
+ modelMessages() {
44
+ return this.messages.map((message) => {
45
+ // Untagged reasoning from an imported snapshot has no trustworthy source model.
46
+ const { reasoning_content: _unscopedReasoning, ...visible } = message;
47
+ const reasoning = this.assistantReasoning.get(message);
48
+ return reasoning?.model === this.model
49
+ ? { ...visible, reasoning_content: reasoning.content }
50
+ : visible;
51
+ });
33
52
  }
34
53
  /** The messages to SEND: compaction, then pruning, projected over the intact raw history. */
35
54
  requestMessages() {
36
- return applyPruning(applyCompaction(this.messages, this.compaction), this.prunedToolCallIds);
55
+ return applyPruning(applyCompaction(this.modelMessages(), this.compaction), this.prunedToolCallIds);
37
56
  }
38
57
  /** Prepend a system message (must precede the first user message to steer the model). */
39
58
  addSystemMessage(text) {
@@ -55,16 +74,21 @@ export class Session {
55
74
  }
56
75
  /** Discard messages appended after `count` (roll back a failed turn so it leaves no trace). */
57
76
  rollbackTo(count) {
58
- if (count >= 0 && count < this.messages.length)
77
+ if (count >= 0 && count < this.messages.length) {
78
+ for (const message of this.messages.slice(count))
79
+ this.assistantReasoning.delete(message);
59
80
  this.messages.length = count;
81
+ }
60
82
  }
61
83
  /** Append the assistant message for a completed model call (text and/or tool_calls). */
62
- addAssistantMessage(content, toolCalls) {
84
+ addAssistantMessage(content, toolCalls, reasoning) {
63
85
  const msg = { role: 'assistant', content: content ?? null };
64
86
  if (toolCalls.length > 0) {
65
87
  msg.tool_calls = toolCalls;
66
88
  }
67
89
  this.messages.push(msg);
90
+ if (reasoning)
91
+ this.assistantReasoning.set(msg, { ...reasoning });
68
92
  }
69
93
  /** Append a tool result message answering a specific tool call. */
70
94
  addToolMessage(toolCallId, name, result) {
@@ -80,14 +104,20 @@ export class Session {
80
104
  this.model = model;
81
105
  }
82
106
  toSnapshot() {
107
+ const assistantReasoning = this.messages.flatMap((message, messageIndex) => {
108
+ const reasoning = this.assistantReasoning.get(message);
109
+ return reasoning ? [{ messageIndex, ...reasoning }] : [];
110
+ });
83
111
  return {
84
112
  id: this.id,
85
113
  model: this.model,
86
114
  createdAt: this.createdAt,
87
115
  updatedAt: nowMs(),
88
- messages: this.messages,
116
+ // SessionStore serializes later: freeze the sequence paired with replay indices.
117
+ messages: [...this.messages],
89
118
  ...(this.prunedToolCallIds.size > 0 ? { prunedToolCallIds: [...this.prunedToolCallIds] } : {}),
90
119
  ...(this.compaction ? { compaction: this.compaction } : {}),
120
+ ...(assistantReasoning.length ? { assistantReasoning } : {}),
91
121
  };
92
122
  }
93
123
  static fromSnapshot(s) {
@@ -98,6 +128,7 @@ export class Session {
98
128
  messages: s.messages,
99
129
  prunedToolCallIds: s.prunedToolCallIds,
100
130
  compaction: s.compaction ?? null,
131
+ assistantReasoning: s.assistantReasoning,
101
132
  });
102
133
  }
103
134
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/core/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/core/session.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,7 @@ export declare class TurnTokenBudget {
39
39
  /** Check the exact request projection about to be sent, after pruning and any added prompts. */
40
40
  preflight(req: ChatRequest): TokenBudgetPreflight;
41
41
  /** Call once per model request, also on interruption/failure when some usage may be known. */
42
- recordCall(req: ChatRequest, output: Pick<ChatMessage, 'content' | 'tool_calls'>, usage?: ChatChunk['usage']): TokenBudgetSnapshot;
42
+ recordCall(req: ChatRequest, output: Pick<ChatMessage, 'content' | 'tool_calls' | 'reasoning_content'>, usage?: ChatChunk['usage']): TokenBudgetSnapshot;
43
43
  /** Emit at most one warning per turn when cumulative usage reaches 80% of the limit. */
44
44
  takeWarning(): TokenBudgetSnapshot | null;
45
45
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tokenBudget.js","sourceRoot":"","sources":["../../../src/core/tokenBudget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenBudget.js","sourceRoot":"","sources":["../../../src/core/tokenBudget.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAGxD,MAAM,CAAC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AAC/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,CAAC;AACzC,MAAM,CAAC,MAAM,mBAAmB,GAAG,UAAU,CAAC;AAE9C,0FAA0F;AAC1F,yFAAyF;AACzF,yFAAyF;AACzF,uFAAuF;AACvF,MAAM,oBAAoB,GAAG,MAAM,CAAC;AACpC,MAAM,+BAA+B,GAAG,KAAK,CAAC;AAE9C,MAAM,UAAU,kBAAkB,CAAC,KAAsB,EAAE,MAAM,GAAG,iBAAiB;IACnF,MAAM,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7D,MAAM,MAAM,GAAG,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAChF,IACE,OAAO,MAAM,KAAK,QAAQ;QAC1B,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC;QAC7B,MAAM,GAAG,mBAAmB;QAC5B,MAAM,GAAG,mBAAmB,EAC5B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,+BAA+B,mBAAmB,QAAQ,mBAAmB,GAAG,CAAC,CAAC;IAC7G,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,oBAAoB,CAAC,QAAiB;IACpD,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IACjF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC/C,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,kBAAkB,CAAC,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACrD,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;AACrF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAgB;IACpD,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,GAAG,2BAA2B,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1G,OAAO,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAC5F,CAAC;AAED,6FAA6F;AAC7F,SAAS,2BAA2B,CAAC,OAAoB;IACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,qBAAqB,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,OAAO,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;YAAE,OAAO,GAAG,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACzG,mFAAmF;QACnF,MAAM,SAAS,GAAG,QAAQ,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,KAAK,CAAC;QAChF,OAAO,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC;IACpF,CAAC,EAAE,UAAU,CAAC,CAAC;AACjB,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;AACzE,CAAC;AAgBD;;;;GAIG;AACH,MAAM,OAAO,eAAe;IACjB,WAAW,CAAS;IACrB,UAAU,GAAG,CAAC,CAAC;IACf,SAAS,GAAG,KAAK,CAAC;IAClB,MAAM,GAAG,KAAK,CAAC;IAEvB,YAAY,KAAK,GAAG,oBAAoB,EAAE;QACxC,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IAChE,CAAC;IAED,QAAQ;QACN,OAAO;YACL,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,eAAe,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;YAChE,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IAED,gGAAgG;IAChG,SAAS,CAAC,GAAgB;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,KAAK,CAAC;YAC3C,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,qBAAqB,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,OAAO,EAAE,GAAG,QAAQ,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,KAAK,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9G,CAAC;IAED,8FAA8F;IAC9F,UAAU,CACR,GAAgB,EAChB,MAAyE,EACzE,KAA0B;QAE1B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,KAAK,MAAM,KAAK,SAAS,IAAI,UAAU,KAAK,SAAS,CAAC;QACpE,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,qBAAqB,CAAC,GAAG,CAAC,CAAC;YACvD,CAAC,UAAU,IAAI,2BAA2B,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;IAED,wFAAwF;IACxF,WAAW;QACT,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG;YAAE,OAAO,IAAI,CAAC;QACzE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;CACF;AAED,SAAS,WAAW,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACpG,CAAC"}
@@ -99,10 +99,11 @@ export class TurnLoop {
99
99
  finalAnswerAttempts += 1;
100
100
  pruneSessionContext(session, lastPromptTokens);
101
101
  let content;
102
+ let reasoning;
102
103
  let toolCalls;
103
104
  let finishReason;
104
105
  try {
105
- ({ content, toolCalls, finishReason } = await this.streamOneCall(session, (event) => {
106
+ ({ content, reasoning, toolCalls, finishReason } = await this.streamOneCall(session, (event) => {
106
107
  if (event.type === 'usage')
107
108
  lastPromptTokens = event.promptTokens;
108
109
  return emit(event);
@@ -141,7 +142,7 @@ export class TurnLoop {
141
142
  });
142
143
  return;
143
144
  }
144
- session.addAssistantMessage(content.length > 0 ? content : null, toolCalls);
145
+ session.addAssistantMessage(content.length > 0 ? content : null, toolCalls, reasoning);
145
146
  completedRounds += 1;
146
147
  if (toolCalls.length === 0) {
147
148
  if (stopReason && (budget > 0 || completedRounds > 1)) {
@@ -299,11 +300,13 @@ export class TurnLoop {
299
300
  if (!preflight.allowed)
300
301
  throw new TokenBudgetPause(tokenPauseMessage(preflight));
301
302
  let content = '';
303
+ let reasoningContent = '';
304
+ let sawReasoning = false;
302
305
  const toolAcc = new Map();
303
306
  let finishReason = null;
304
307
  let usage;
305
308
  try {
306
- finishReason = await this.consumeStream(req, opts, emit, (text) => (content += text), toolAcc, (value) => { usage = value; });
309
+ finishReason = await this.consumeStream(req, opts, emit, (text) => (content += text), toolAcc, (value) => { usage = value; }, (text) => { sawReasoning = true; reasoningContent += text; });
307
310
  }
308
311
  catch (err) {
309
312
  // Preserve already streamed text on interruption or a later upstream failure.
@@ -316,6 +319,7 @@ export class TurnLoop {
316
319
  finally {
317
320
  const output = {
318
321
  content,
322
+ ...(sawReasoning ? { reasoning_content: reasoningContent } : {}),
319
323
  tool_calls: [...toolAcc.values()].map(entry => ({
320
324
  id: entry.id,
321
325
  type: 'function',
@@ -335,18 +339,21 @@ export class TurnLoop {
335
339
  .map(([, e]) => ({
336
340
  id: e.id,
337
341
  type: 'function',
338
- function: { name: e.name, arguments: e.args },
342
+ // Some providers omit arguments for parameterless tools. The replay still
343
+ // needs valid JSON, matching the empty object used by local dispatch.
344
+ function: { name: e.name, arguments: e.args.trim() ? e.args : '{}' },
339
345
  // Echoed verbatim in history (Gemini thought signatures) — see ToolCall.extra_content.
340
346
  ...(e.extraContent !== undefined ? { extra_content: e.extraContent } : {}),
341
347
  }))
342
348
  .filter((c) => c.function.name.length > 0);
343
- return { content, toolCalls, finishReason };
349
+ return { content, toolCalls, finishReason,
350
+ ...(sawReasoning ? { reasoning: { model: req.model, content: reasoningContent } } : {}) };
344
351
  }
345
352
  /**
346
353
  * Iterate the backend stream, forwarding deltas/usage and accumulating tool-call pieces.
347
354
  * Returns the last non-null finish_reason seen (providers send it on the closing chunk).
348
355
  */
349
- async consumeStream(req, opts, emit, onText, toolAcc, onUsage) {
356
+ async consumeStream(req, opts, emit, onText, toolAcc, onUsage, onReasoning) {
350
357
  let finishReason = null;
351
358
  let usage;
352
359
  try {
@@ -360,6 +367,8 @@ export class TurnLoop {
360
367
  const delta = choice?.delta;
361
368
  if (!delta)
362
369
  continue;
370
+ if (typeof delta.reasoning_content === 'string')
371
+ onReasoning(delta.reasoning_content);
363
372
  if (typeof delta.content === 'string' && delta.content.length > 0) {
364
373
  onText(delta.content);
365
374
  const r = emit({ type: 'assistant_delta', text: delta.content });
@@ -1 +1 @@
1
- {"version":3,"file":"turnLoop.js","sourceRoot":"","sources":["../../../src/core/turnLoop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turnLoop.js","sourceRoot":"","sources":["../../../src/core/turnLoop.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,eAAe,EAA6B,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAElD,yFAAyF;AACzF,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,yBAAyB,GAAG,CAAC,CAAC;AACpC,MAAM,mBAAmB,GACvB,2FAA2F;IAC3F,uCAAuC,CAAC;AAE1C;;;;;;GAMG;AACH,MAAM,8BAA8B,GAClC,uFAAuF;IACvF,wEAAwE,CAAC;AAiC3E;;;;;;;;;;GAUG;AACH,MAAM,OAAO,QAAQ;IAEA;IACA;IAFnB,YACmB,OAAoB,EACpB,QAAsB;QADtB,YAAO,GAAP,OAAO,CAAa;QACpB,aAAQ,GAAR,QAAQ,CAAc;IACtC,CAAC;IAEJ,wGAAwG;IACxG,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,OAAgB,EAChB,WAAwD,EACxD,IAAU,EACV,OAAoB,EAAE;QAEtB,iFAAiF;QACjF,oFAAoF;QACpF,MAAM,UAAU,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtD,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,eAAe,GAAG,CAAC,CAAC;QACxB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAC5B,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3E,IAAI,eAAmC,CAAC;QACxC,MAAM,KAAK,GAAG,KAAK,EAAE,MAAmB,EAAE,OAAe,EAAE,EAAE;YAC3D,+EAA+E;YAC/E,OAAO,CAAC,aAAa,CAAC,iBAAiB,MAAM,KAAK,OAAO,GAAG;gBAC1D,iGAAiG,CAAC,CAAC;YACrG,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC,CAAC;QACF,MAAM,OAAO,GAAG,KAAK,EAAE,IAAc,EAAE,MAA+B,EAAE,EAAE;YACxE,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACtF,IAAI,OAAO,EAAE,IAAI,KAAK,OAAO;gBAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC;YACjE,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;gBACzD,OAAO,EAAE,GAAG,MAAM,EAAE,oBAAoB,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC9D,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC;QACF,kFAAkF;QAClF,sEAAsE;QACtE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC9C,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAEpC,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBACnC,OAAO;YACT,CAAC;YACD,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,KAAK,CAAC,sBAAsB,EAAE,eAAe;oBACjD,gHAAgH,CAAC,CAAC;gBACpH,OAAO;YACT,CAAC;YACD,MAAM,WAAW,GAAgB,aAAa,IAAI,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC;YAC/F,MAAM,UAAU,GAAG,aAAa,IAAI,MAAM;gBACxC,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,gBAAgB,IAAI,sBAAsB;oBAC1C,CAAC,CAAC,mBAAmB;oBACrB,CAAC,CAAC,SAAS,CAAC;YAChB,IAAI,UAAU,IAAI,mBAAmB,IAAI,yBAAyB,EAAE,CAAC;gBACnE,MAAM,KAAK,CAAC,WAAW,EAAE,qFAAqF;oBAC5G,4DAA4D,CAAC,CAAC;gBAChE,OAAO;YACT,CAAC;YACD,IAAI,UAAU;gBAAE,mBAAmB,IAAI,CAAC,CAAC;YACzC,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAC/C,IAAI,OAAe,CAAC;YACpB,IAAI,SAAyC,CAAC;YAC9C,IAAI,SAAqB,CAAC;YAC1B,IAAI,YAA2B,CAAC;YAChC,IAAI,CAAC;gBACH,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CACzE,OAAO,EACP,CAAC,KAAK,EAAE,EAAE;oBACR,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO;wBAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CAAC;oBAClE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC,EACD,IAAI,EACJ,MAAM,EACN,UAAU,CACX,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,GAAG,YAAY,gBAAgB,EAAE,CAAC;oBACpC,MAAM,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;oBACzC,OAAO;gBACT,CAAC;gBACD,8EAA8E;gBAC9E,6EAA6E;gBAC7E,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;oBACzB,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBACtC,IAAI,OAAO;wBAAE,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACtD,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;oBACnC,OAAO;gBACT,CAAC;gBACD,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBACtC,IAAI,OAAO;oBAAE,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;qBACjD,IAAI,eAAe,KAAK,CAAC;oBAAE,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;gBAC/D,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,sFAAsF;YACtF,mFAAmF;YACnF,gDAAgD;YAChD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1D,sFAAsF;gBACtF,qFAAqF;gBACrF,IAAI,CAAC;oBACH,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,aAAa,OAAO,CAAC,KAAK,mFAAmF;iBACvH,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;YACvF,eAAe,IAAI,CAAC,CAAC;YAErB,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,IAAI,UAAU,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,GAAG,CAAC,CAAC,EAAE,CAAC;oBACtD,MAAM,KAAK,CAAC,WAAW,EAAE,UAAU,GAAG,sEAAsE,CAAC,CAAC;gBAChH,CAAC;qBAAM,CAAC;oBACN,MAAM,UAAU,GAAG,YAAY,KAAK,QAAQ;wBAC1C,CAAC,CAAC,EAAE,MAAM,EAAE,YAAqB,EAAE,OAAO,EAAE,uHAAuH,EAAE;wBACrK,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;oBAC9B,IAAI,UAAU;wBAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC,CAAC;oBAChE,KAAK,CAAC,eAAe,EAAE;wBACrB,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,EAAE,UAAU,EAAE,aAAa;qBACpF,CAAC,CAAC;oBACH,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;gBACxC,CAAC;gBACD,OAAO;YACT,CAAC;YAED,iFAAiF;YACjF,+EAA+E;YAC/E,qDAAqD;YACrD,IAAI,YAAY,KAAK,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC7C,gBAAgB,IAAI,CAAC,CAAC;gBACtB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;oBACzD,IAAI,CAAC;wBACH,IAAI,EAAE,iBAAiB;wBACvB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;qBAC7C,CAAC,CAAC;oBACH,IAAI,CAAC;wBACH,IAAI,EAAE,eAAe;wBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,MAAM;qBACP,CAAC,CAAC;oBACH,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC;gBACD,SAAS;YACX,CAAC;YAED,2EAA2E;YAC3E,sFAAsF;YACtF,4DAA4D;YAC5D,EAAE;YACF,iFAAiF;YACjF,6EAA6E;YAC7E,iFAAiF;YACjF,6DAA6D;YAC7D,oFAAoF;YACpF,qFAAqF;YACrF,yEAAyE;YACzE,MAAM,eAAe,GAAG,aAAa,CAAC;YACtC,MAAM,MAAM,GAAyB,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC1D,IAAI,UAAU;oBAAE,OAAO,UAAU,CAAC;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAChC,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACxC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;wBAChB,OAAO,OAAO,IAAI,0CAA0C,GAAG,uCAAuC,CAAC;oBACzG,CAAC;oBACD,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;gBAClC,CAAC;gBACD,IAAI,aAAa,IAAI,MAAM;oBAAE,OAAO,wBAAwB,CAAC;gBAC7D,aAAa,IAAI,CAAC,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;YACH,MAAM,QAAQ,GACZ,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5F,IAAI,QAAQ,EAAE,CAAC;gBACb,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBACH,IAAI,EAAE,iBAAiB;wBACvB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;qBAC7C,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAC/B,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;oBAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;oBACzB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;wBACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBAC5E,4EAA4E;oBAC5E,IAAI,CAAC;wBACH,IAAI,EAAE,eAAe;wBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,MAAM;qBACP,CAAC,CAAC;oBACH,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAC,CACH,CAAC;gBACF,oEAAoE;gBACpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChF,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC1C,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC1B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBACpD,IAAI,CAAC;wBACH,IAAI,EAAE,iBAAiB;wBACvB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,IAAI;qBACL,CAAC,CAAC;oBACH,4EAA4E;oBAC5E,gEAAgE;oBAChE,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC;oBAC5C,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,OAAO,CACvD,IAAI,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAChF,CAAC;oBACF,IAAI,CAAC;wBACH,IAAI,EAAE,eAAe;wBACrB,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,MAAM;qBACP,CAAC,CAAC;oBACH,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC;YACH,CAAC;YACD,gBAAgB,GAAG,aAAa,KAAK,eAAe,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChF,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBACnC,OAAO;YACT,CAAC;YACD,IAAI,eAAe,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,eAAe,KAAK,CAAC;gBAAE,SAAS;YACzE,mFAAmF;YACnF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC;gBAClD,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC;YACD,mFAAmF;QACrF,CAAC;IACH,CAAC;IAED,oFAAoF;IAC5E,KAAK,CAAC,aAAa,CACzB,OAAgB,EAChB,IAAU,EACV,IAAiB,EACjB,MAAuB,EACvB,UAAmB;QAOnB,MAAM,GAAG,GAAG;YACV,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,0EAA0E;YAC1E,QAAQ,EAAE,UAAU;gBAClB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,EAAE,EAAE;wBAC/B,IAAI,EAAE,QAAiB;wBACvB,OAAO,EAAE,GAAG,UAAU,4DAA4D;4BAChF,yGAAyG;qBAC5G,CAAC;gBACF,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE;YAC7B,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC;YAC3F,MAAM,EAAE,IAAa;YACrB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvF,CAAC;QAEF,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,SAAS,CAAC,OAAO;YAAE,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;QACjF,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAC1B,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8E,CAAC;QACtG,IAAI,YAAY,GAAkB,IAAI,CAAC;QAEvC,IAAI,KAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,YAAY,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE,OAAO,EAC3F,CAAC,KAAK,EAAE,EAAE,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,YAAY,GAAG,IAAI,CAAC,CAAC,gBAAgB,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;QACjG,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,8EAA8E;YAC9E,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO;gBAAE,MAAM,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;YACpE,IAAI,OAAO;gBAAE,MAAM,IAAI,kBAAkB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACxD,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,GAAG;gBACb,OAAO;gBACP,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChE,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAC9C,EAAE,EAAE,KAAK,CAAC,EAAE;oBACZ,IAAI,EAAE,UAAmB;oBACzB,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE;oBACrD,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnF,CAAC,CAAC;aACJ,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;YACxI,IAAI,MAAM,CAAC,WAAW,EAAE;gBAAE,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAC5D,sBAAsB,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,WAAW,QAAQ,CAAC,WAAW,CAAC,cAAc,EAAE,eAAe;wBACzH,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE,2GAA2G;wBAC/J,uDAAuD,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,SAAS,GAAe,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;aACjD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACf,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,UAAmB;YACzB,0EAA0E;YAC1E,sEAAsE;YACtE,QAAQ,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE;YACpE,uFAAuF;YACvF,GAAG,CAAC,CAAC,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC3E,CAAC,CAAC;aACF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE7C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY;YACvC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9F,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CACzB,GAAyC,EACzC,IAAiB,EACjB,IAAU,EACV,MAA8B,EAC9B,OAAwF,EACxF,OAA4C,EAC5C,WAAmC;QAEnC,IAAI,YAAY,GAAkB,IAAI,CAAC;QACvC,IAAI,KAAyB,CAAC;QAC9B,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAChE,yEAAyE;gBACzE,IAAI,KAAK,CAAC,KAAK;oBAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;gBAErC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClC,IAAI,OAAO,MAAM,EAAE,aAAa,KAAK,QAAQ;oBAAE,YAAY,GAAG,MAAM,CAAC,aAAa,CAAC;gBACnF,MAAM,KAAK,GAAG,MAAM,EAAE,KAAK,CAAC;gBAC5B,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,IAAI,OAAO,KAAK,CAAC,iBAAiB,KAAK,QAAQ;oBAAE,WAAW,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAEtF,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBACtB,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACjE,IAAI,CAAC;wBAAE,MAAM,CAAC,CAAC,CAAC,+CAA+C;gBACjE,CAAC;gBAED,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;oBACrB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;wBAClC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;wBACtE,IAAI,EAAE,CAAC,EAAE;4BAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;wBAC5B,IAAI,EAAE,CAAC,QAAQ,EAAE,IAAI;4BAAE,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACrD,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS;4BAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;wBAChE,IAAI,EAAE,CAAC,aAAa,KAAK,SAAS;4BAAE,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,aAAa,CAAC;wBAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;oBAC/B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,+EAA+E;YAC/E,4EAA4E;YAC5E,OAAO,CAAC,KAAK,CAAC,CAAC;YACf,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,IAAI,CAAC;oBACT,IAAI,EAAE,OAAO;oBACb,YAAY,EAAE,KAAK,CAAC,aAAa,IAAI,CAAC;oBACtC,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,IAAI,CAAC;iBAC/C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAED,gFAAgF;AAChF,MAAM,sBAAuB,SAAQ,KAAK;IACnB;IAArB,YAAqB,cAAsB;QACzC,KAAK,CAAC,aAAa,CAAC,CAAC;QADF,mBAAc,GAAd,cAAc,CAAQ;IAE3C,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,GAAY;IACpC,OAAO,GAAG,YAAY,sBAAsB,IAAI,GAAG,YAAY,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9G,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,IAAI,CAAC;QACH,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,gBAAiB,SAAQ,KAAK;CAAG;AAEvC,SAAS,iBAAiB,CAAC,KAA2B;IACpD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,mBAAmB;QACjD,CAAC,CAAC,uCAAuC,KAAK,CAAC,qBAAqB,CAAC,cAAc,EAAE,iBAAiB;YACpG,aAAa,KAAK,CAAC,eAAe,CAAC,cAAc,EAAE,qCAAqC;QAC1F,CAAC,CAAC,sBAAsB,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,yBAAyB,KAAK,CAAC,WAAW,CAAC,cAAc,EAAE,gBAAgB,CAAC;IACvI,OAAO,MAAM,GAAG,gFAAgF;QAC9F,2GAA2G;QAC3G,sCAAsC,CAAC;AAC3C,CAAC;AAED,MAAM,kBAAmB,SAAQ,KAAK;IACf;IAArB,YAAqB,cAAsB,EAAE,KAAc;QACzD,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QADtD,mBAAc,GAAd,cAAc,CAAQ;IAE3C,CAAC;CACF"}
@@ -23,6 +23,8 @@ export interface ChatMessage {
23
23
  * Null/undefined for an assistant message that only carries tool_calls.
24
24
  */
25
25
  content?: string | ContentPart[] | null;
26
+ /** Provider reasoning replayed only to its originating model; never visible answer text. */
27
+ reasoning_content?: string;
26
28
  /** Present on assistant messages that request tool calls. */
27
29
  tool_calls?: ToolCall[];
28
30
  /** Present on `tool` messages: which tool call this result answers. */
@@ -53,6 +55,7 @@ export interface ChatChunk {
53
55
  delta?: {
54
56
  role?: string;
55
57
  content?: string | null;
58
+ reasoning_content?: string | null;
56
59
  tool_calls?: Array<{
57
60
  index: number;
58
61
  id?: string;
@@ -707,7 +707,9 @@ export class ChatController {
707
707
  * actually happened. `reason`: auto (threshold) / overflow (failed turn retry) / manual.
708
708
  */
709
709
  async compactNow(reason, tokenBudget = new TurnTokenBudget()) {
710
- const msgs = this.session.messages;
710
+ // The summary uses the current model too: preserve its required protocol replay,
711
+ // while modelMessages excludes reasoning produced by any other model.
712
+ const msgs = this.session.modelMessages();
711
713
  const plan = planCompaction(msgs, this.session.compaction);
712
714
  if (!plan) {
713
715
  if (reason === 'manual')
@@ -1 +1 @@
1
- {"version":3,"file":"chatController.js","sourceRoot":"","sources":["../../../src/tui/chatController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chatController.js","sourceRoot":"","sources":["../../../src/tui/chatController.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@glbgpt/cli",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "description": "GlobalGPT in your terminal — chat, image and video generation, and an exec entry point for scripts and agents.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -50,6 +50,6 @@
50
50
  "vitest": "^4.1.10"
51
51
  },
52
52
  "glbgptRelease": {
53
- "source": "fd51f6dec029b18ab1b42090c46e71476096751f"
53
+ "source": "46cd4708f3774acbc98a9cbcae75e06325cb0cd2"
54
54
  }
55
55
  }