@x-code-cli/core 0.3.1 → 0.3.2
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/agent/compression.d.ts.map +1 -1
- package/dist/agent/compression.js +21 -1
- package/dist/agent/compression.js.map +1 -1
- package/dist/agent/light-compact.d.ts +12 -0
- package/dist/agent/light-compact.d.ts.map +1 -1
- package/dist/agent/light-compact.js +75 -0
- package/dist/agent/light-compact.js.map +1 -1
- package/dist/agent/loop-state.d.ts +18 -0
- package/dist/agent/loop-state.d.ts.map +1 -1
- package/dist/agent/loop-state.js +3 -0
- package/dist/agent/loop-state.js.map +1 -1
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +33 -1
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/plan-tools.d.ts.map +1 -1
- package/dist/agent/plan-tools.js +2 -0
- package/dist/agent/plan-tools.js.map +1 -1
- package/dist/agent/session-store.d.ts +11 -0
- package/dist/agent/session-store.d.ts.map +1 -1
- package/dist/agent/session-store.js +59 -15
- package/dist/agent/session-store.js.map +1 -1
- package/dist/agent/snapshot.d.ts +45 -0
- package/dist/agent/snapshot.d.ts.map +1 -0
- package/dist/agent/snapshot.js +277 -0
- package/dist/agent/snapshot.js.map +1 -0
- package/dist/agent/sub-agents/built-in.js +1 -1
- package/dist/agent/sub-agents/built-in.js.map +1 -1
- package/dist/agent/system-prompt.d.ts.map +1 -1
- package/dist/agent/system-prompt.js +16 -7
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/tools/task.d.ts.map +1 -1
- package/dist/tools/task.js +28 -15
- package/dist/tools/task.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD;;qEAEqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,mEAAmE;AACnE,eAAO,MAAM,WAAW,IAAI,CAAA;AAE5B,4CAA4C;AAC5C,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAqB9G;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"compression.d.ts","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAErD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAE9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAIvD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAGhD;;qEAEqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;IACX,WAAW,CAAC,EAAE,WAAW,CAAA;CAC1B;AAED,mEAAmE;AACnE,eAAO,MAAM,WAAW,IAAI,CAAA;AAE5B,4CAA4C;AAC5C,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAqB9G;AAED;;;;;;;;;GASG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAqFf;AAED;;;;GAIG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,cAAc,EACzB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAuBlB"}
|
|
@@ -14,7 +14,7 @@ import { generateText } from 'ai';
|
|
|
14
14
|
import { generateSessionSummary } from '../knowledge/session.js';
|
|
15
15
|
import { debugLog } from '../utils.js';
|
|
16
16
|
import { estimateTokenCount } from './context-window.js';
|
|
17
|
-
import { lightCompactMessages } from './light-compact.js';
|
|
17
|
+
import { lightCompactMessages, truncateOldToolResults } from './light-compact.js';
|
|
18
18
|
import { markBoundaryAndReflush } from './session-store.js';
|
|
19
19
|
/** Number of recent messages to keep verbatim when compressing. */
|
|
20
20
|
export const KEEP_RECENT = 6;
|
|
@@ -83,6 +83,24 @@ export async function checkAndCompressContext(state, model, threshold, callbacks
|
|
|
83
83
|
return;
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
|
+
// Second pass: truncate old, large tool_result payloads to compact stubs.
|
|
87
|
+
// Cheaper than an LLM summary and preserves message structure (no cache
|
|
88
|
+
// invalidation beyond the truncated content itself).
|
|
89
|
+
const trunc = truncateOldToolResults(state.messages);
|
|
90
|
+
if (trunc.truncatedCount > 0) {
|
|
91
|
+
const stillOver = estimateTokenCount(state.messages) > threshold;
|
|
92
|
+
callbacks.onContextCompressed(`Truncated ${trunc.truncatedCount} old tool result(s), saved ~${Math.round(trunc.charsSaved / 3)} tokens${stillOver ? ' — still over threshold, summarising' : ''}.`);
|
|
93
|
+
if (!stillOver) {
|
|
94
|
+
void markBoundaryAndReflush(state);
|
|
95
|
+
emitCompactionHook(hookCtx, {
|
|
96
|
+
name: 'PostCompact',
|
|
97
|
+
trigger: 'proactive',
|
|
98
|
+
messageCount: state.messages.length,
|
|
99
|
+
summary: '',
|
|
100
|
+
});
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
86
104
|
let summaryText = '';
|
|
87
105
|
try {
|
|
88
106
|
const summary = await generateSessionSummary(state.messages, model, state.sessionId, state.startedAt, [
|
|
@@ -98,6 +116,7 @@ export async function checkAndCompressContext(state, model, threshold, callbacks
|
|
|
98
116
|
}
|
|
99
117
|
state.messages = await compressMessages(state.messages, model);
|
|
100
118
|
state.lastInputTokens = 0;
|
|
119
|
+
state.expectCacheMiss = true;
|
|
101
120
|
// Write a compact-boundary line + re-flush the trimmed messages so
|
|
102
121
|
// the post-boundary jsonl content equals the new in-memory state.
|
|
103
122
|
void markBoundaryAndReflush(state, summaryText);
|
|
@@ -125,6 +144,7 @@ export async function handleContextTooLong(state, model, callbacks, hookCtx) {
|
|
|
125
144
|
});
|
|
126
145
|
state.messages = await compressMessages(state.messages, model);
|
|
127
146
|
state.lastInputTokens = 0;
|
|
147
|
+
state.expectCacheMiss = true;
|
|
128
148
|
// Same boundary discipline as the proactive path — reactive compact
|
|
129
149
|
// also shrinks state.messages in place, so the jsonl needs a
|
|
130
150
|
// compact-boundary marker to keep loader semantics consistent.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,EAAE;AACF,uCAAuC;AACvC,wEAAwE;AACxE,sEAAsE;AACtE,wEAAwE;AACxE,wEAAwE;AACxE,EAAE;AACF,wEAAwE;AACxE,uEAAuE;AACvE,sEAAsE;AACtE,uBAAuB;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAIjC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEhE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"compression.js","sourceRoot":"","sources":["../../src/agent/compression.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,4 +10,16 @@ export interface LightCompactResult {
|
|
|
10
10
|
* everything else untouched. Does not mutate the input array.
|
|
11
11
|
*/
|
|
12
12
|
export declare function lightCompactMessages(messages: ModelMessage[]): LightCompactResult;
|
|
13
|
+
export interface TruncateOldToolResultsResult {
|
|
14
|
+
messages: ModelMessage[];
|
|
15
|
+
truncatedCount: number;
|
|
16
|
+
charsSaved: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Replace old, large tool_result text with compact stubs. Mutates the
|
|
20
|
+
* messages in-place for efficiency (this runs on `state.messages` which is
|
|
21
|
+
* already mutable). Returns stats for the caller to decide whether to
|
|
22
|
+
* proceed to full compaction.
|
|
23
|
+
*/
|
|
24
|
+
export declare function truncateOldToolResults(messages: ModelMessage[]): TruncateOldToolResultsResult;
|
|
13
25
|
//# sourceMappingURL=light-compact.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light-compact.d.ts","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAmEtC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB;uEACmE;IACnE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAmBjF"}
|
|
1
|
+
{"version":3,"file":"light-compact.d.ts","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAmEtC,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB;uEACmE;IACnE,OAAO,EAAE,MAAM,CAAA;CAChB;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,kBAAkB,CAmBjF;AA8CD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,4BAA4B,CA8B7F"}
|
|
@@ -84,4 +84,79 @@ export function lightCompactMessages(messages) {
|
|
|
84
84
|
}
|
|
85
85
|
return { messages: out, dropped };
|
|
86
86
|
}
|
|
87
|
+
// ── Smart tool-result truncation ──
|
|
88
|
+
//
|
|
89
|
+
// Intermediate compaction layer between the loop-guard dropper above and the
|
|
90
|
+
// expensive LLM summariser in compression.ts. Replaces old, large tool_result
|
|
91
|
+
// payloads with short stubs that preserve what-was-done metadata while
|
|
92
|
+
// recovering the majority of the tokens. Stubs include the tool name, key
|
|
93
|
+
// input parameters, output size, and a short preview so the model can decide
|
|
94
|
+
// whether to re-run the tool.
|
|
95
|
+
//
|
|
96
|
+
// Designed to delay full compaction — which invalidates the entire prompt
|
|
97
|
+
// cache — by freeing context without rewriting the message structure.
|
|
98
|
+
/** Tools whose results represent decisions or are already compact — never truncate. */
|
|
99
|
+
const NEVER_TRUNCATE_TOOLS = new Set([
|
|
100
|
+
'edit',
|
|
101
|
+
'writeFile',
|
|
102
|
+
'task',
|
|
103
|
+
'activateSkill',
|
|
104
|
+
'todoWrite',
|
|
105
|
+
'askUser',
|
|
106
|
+
'enterPlanMode',
|
|
107
|
+
'exitPlanMode',
|
|
108
|
+
]);
|
|
109
|
+
/** Only truncate results whose text is longer than this (chars). */
|
|
110
|
+
const MIN_TRUNCATABLE_CHARS = 500;
|
|
111
|
+
/** Number of recent messages to protect from truncation. */
|
|
112
|
+
const KEEP_RECENT_MESSAGES = 10;
|
|
113
|
+
/** Max chars to keep from the original output as a preview in the stub. */
|
|
114
|
+
const PREVIEW_LINES = 3;
|
|
115
|
+
function buildStub(toolName, value) {
|
|
116
|
+
const lineCount = value.split('\n').length;
|
|
117
|
+
const preview = value.split('\n').slice(0, PREVIEW_LINES).join('\n');
|
|
118
|
+
const name = toolName ?? 'unknown';
|
|
119
|
+
return (`[Truncated: ${name} output — ${lineCount} lines, ${value.length} chars. ` +
|
|
120
|
+
`Content removed to save context. Re-run the tool if you need the full output.]\n` +
|
|
121
|
+
preview);
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Replace old, large tool_result text with compact stubs. Mutates the
|
|
125
|
+
* messages in-place for efficiency (this runs on `state.messages` which is
|
|
126
|
+
* already mutable). Returns stats for the caller to decide whether to
|
|
127
|
+
* proceed to full compaction.
|
|
128
|
+
*/
|
|
129
|
+
export function truncateOldToolResults(messages) {
|
|
130
|
+
const protectedStart = Math.max(0, messages.length - KEEP_RECENT_MESSAGES);
|
|
131
|
+
let truncatedCount = 0;
|
|
132
|
+
let charsSaved = 0;
|
|
133
|
+
for (let i = 0; i < protectedStart; i++) {
|
|
134
|
+
const msg = messages[i];
|
|
135
|
+
if (!msg || msg.role !== 'tool')
|
|
136
|
+
continue;
|
|
137
|
+
if (!Array.isArray(msg.content))
|
|
138
|
+
continue;
|
|
139
|
+
for (const part of msg.content) {
|
|
140
|
+
if (part?.type !== 'tool-result')
|
|
141
|
+
continue;
|
|
142
|
+
const output = part.output;
|
|
143
|
+
if (!output)
|
|
144
|
+
continue;
|
|
145
|
+
const toolName = part.toolName;
|
|
146
|
+
if (toolName && NEVER_TRUNCATE_TOOLS.has(toolName))
|
|
147
|
+
continue;
|
|
148
|
+
if (output.type === 'text' && typeof output.value === 'string') {
|
|
149
|
+
if (output.value.length < MIN_TRUNCATABLE_CHARS)
|
|
150
|
+
continue;
|
|
151
|
+
if (output.value.startsWith('[Truncated:'))
|
|
152
|
+
continue;
|
|
153
|
+
const original = output.value;
|
|
154
|
+
output.value = buildStub(toolName, original);
|
|
155
|
+
charsSaved += original.length - output.value.length;
|
|
156
|
+
truncatedCount++;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return { messages, truncatedCount, charsSaved };
|
|
161
|
+
}
|
|
87
162
|
//# sourceMappingURL=light-compact.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"light-compact.js","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"AAqBA,kEAAkE;AAClE,MAAM,mBAAmB,GAAG,cAAc,CAAA;AAQ1C,SAAS,sBAAsB,CAAC,IAAwB;IACtD,IAAI,IAAI,EAAE,IAAI,KAAK,aAAa;QAAE,OAAO,KAAK,CAAA;IAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;IAC1B,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IACzB,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/D,OAAO,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAA;IACrD,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAiB;IAC5C,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,KAAK,CAAA;IACrC,MAAM,KAAK,GAAG,GAAG,CAAC,OAA0C,CAAA;IAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAA;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;AAC3C,CAAC;AAED;;;yCAGyC;AACzC,SAAS,kBAAkB,CAAC,GAAiB,EAAE,WAAwB;IACrE,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,GAAG,CAAA;IACxC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAmE,CAAA;IACvF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,GAAG,CAAA;IAEvC,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACvC,IAAI,IAAI,EAAE,IAAI,KAAK,WAAW,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC1G,OAAO,GAAG,IAAI,CAAA;YACd,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAA;IACxB,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACtC,OAAO,EAAE,GAAG,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAkB,CAAA;AACtD,CAAC;AAED,yEAAyE;AACzE,SAAS,qBAAqB,CAAC,QAAwB;IACrD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM;YAAE,SAAQ;QACjC,MAAM,KAAK,GAAG,GAAG,CAAC,OAA0C,CAAA;QAC5D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,SAAQ;QACnC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;gBACxE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AASD;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAAwB;IAC3D,MAAM,WAAW,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IACnD,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,EAAE,CAAA;IAE3D,MAAM,GAAG,GAAmB,EAAE,CAAA;IAC9B,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,CAAA;YACT,SAAQ;QACV,CAAC;QACD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;QACrD,IAAI,QAAQ,IAAI,IAAI,EAAE,CAAC;YACrB,OAAO,EAAE,CAAA;YACT,SAAQ;QACV,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,OAAO,EAAE,CAAA;AACnC,CAAC"}
|
|
1
|
+
{"version":3,"file":"light-compact.js","sourceRoot":"","sources":["../../src/agent/light-compact.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ModelMessage } from 'ai';
|
|
2
2
|
import type { PermissionMode, TodoItem, TokenUsage } from '../types/index.js';
|
|
3
|
+
import type { CheckpointEntry } from './snapshot.js';
|
|
3
4
|
export interface LoopState {
|
|
4
5
|
messages: ModelMessage[];
|
|
5
6
|
tokenUsage: TokenUsage;
|
|
@@ -47,6 +48,15 @@ export interface LoopState {
|
|
|
47
48
|
* fresh with []); preserved across `/compact` so a multi-step
|
|
48
49
|
* task survives history summarisation. */
|
|
49
50
|
todos: TodoItem[];
|
|
51
|
+
/** Per-user-message snapshots backing the `/rewind` command. Pushed by
|
|
52
|
+
* `createCheckpoint` (snapshot.ts) right after each user message lands
|
|
53
|
+
* in `messages`. In-memory: ring-buffered at 100 entries. Cleared by
|
|
54
|
+
* `markBoundaryAndReflush` — compaction rewrites the message array
|
|
55
|
+
* in place, invalidating every prior `messageCount` anchor. Persisted
|
|
56
|
+
* to the jsonl as `meta:checkpoint` lines; the loader's
|
|
57
|
+
* "everything-after-last-boundary wins" rule naturally drops pre-
|
|
58
|
+
* compaction entries on resume. */
|
|
59
|
+
checkpoints: CheckpointEntry[];
|
|
50
60
|
/** Number of messages already persisted to the session jsonl file.
|
|
51
61
|
* The agent loop calls `flushPendingMessages` at turn boundaries,
|
|
52
62
|
* which appends `state.messages.slice(persistedMessageCount)` and
|
|
@@ -56,6 +66,14 @@ export interface LoopState {
|
|
|
56
66
|
* "everything-after-last-boundary wins" rule reconstructs the same
|
|
57
67
|
* in-memory state on resume. See `agent/session-store.ts`. */
|
|
58
68
|
persistedMessageCount: number;
|
|
69
|
+
/** Per-turn cache-read token count from the previous turn. Used to
|
|
70
|
+
* detect unexpected cache misses (e.g. a code change that broke
|
|
71
|
+
* system prompt byte-stability). */
|
|
72
|
+
prevTurnCacheRead: number;
|
|
73
|
+
/** When true, the next turn's cache-read drop is expected (e.g. after
|
|
74
|
+
* compaction or permissionMode change) and should not trigger a
|
|
75
|
+
* warning. Automatically cleared after one turn. */
|
|
76
|
+
expectCacheMiss: boolean;
|
|
59
77
|
/** Cached knowledge context for sub-agent system prompts. Set once in
|
|
60
78
|
* agentLoop after buildKnowledgeContext resolves; transparent to
|
|
61
79
|
* sub-agent loops (they don't call buildKnowledgeContext themselves). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC7E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAEpD,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B;;qEAEiE;IACjE,eAAe,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D;;;;4DAIwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;;iEAG6D;IAC7D,cAAc,EAAE,cAAc,CAAA;IAC9B;;;oCAGgC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;;;;;8BAM0B;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;;+CAM2C;IAC3C,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB;;;;;;;wCAOoC;IACpC,WAAW,EAAE,eAAe,EAAE,CAAA;IAC9B;;;;;;;mEAO+D;IAC/D,qBAAqB,EAAE,MAAM,CAAA;IAI7B;;yCAEqC;IACrC,iBAAiB,EAAE,MAAM,CAAA;IACzB;;yDAEqD;IACrD,eAAe,EAAE,OAAO,CAAA;IAIxB;;8EAE0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAiBD,wBAAgB,eAAe,CAAC,WAAW,GAAE,cAA0B,GAAG,SAAS,CA8BlF"}
|
package/dist/agent/loop-state.js
CHANGED
|
@@ -35,7 +35,10 @@ export function createLoopState(initialMode = 'default') {
|
|
|
35
35
|
currentPlanPath: null,
|
|
36
36
|
taskSlug: '',
|
|
37
37
|
todos: [],
|
|
38
|
+
checkpoints: [],
|
|
38
39
|
persistedMessageCount: 0,
|
|
40
|
+
prevTurnCacheRead: 0,
|
|
41
|
+
expectCacheMiss: false,
|
|
39
42
|
};
|
|
40
43
|
}
|
|
41
44
|
//# sourceMappingURL=loop-state.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-state.js","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loop-state.js","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AA0FA;;;;;yBAKyB;AACzB,SAAS,iBAAiB,CAAC,MAAY,IAAI,IAAI,EAAE;IAC/C,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,CACL,GAAG,GAAG,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,EAAE;QACrE,IAAI,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,EAAE;QACzE,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,CACpC,CAAA;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,cAA8B,SAAS;IACrE,OAAO;QACL,QAAQ,EAAE,EAAE;QACZ,UAAU,EAAE;YACV,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,WAAW,EAAE,CAAC;YACd,eAAe,EAAE,CAAC;YAClB,mBAAmB,EAAE,CAAC;YACtB,oBAAoB,EAAE,CAAC;SACxB;QACD,eAAe,EAAE,CAAC;QAClB,SAAS,EAAE,iBAAiB,EAAE;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,eAAe,EAAE,EAAE;QACnB,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,WAAW;QAC3B,+DAA+D;QAC/D,gEAAgE;QAChE,gEAAgE;QAChE,6BAA6B;QAC7B,eAAe,EAAE,IAAI;QACrB,QAAQ,EAAE,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,WAAW,EAAE,EAAE;QACf,qBAAqB,EAAE,CAAC;QACxB,iBAAiB,EAAE,CAAC;QACpB,eAAe,EAAE,KAAK;KACvB,CAAA;AACH,CAAC"}
|
package/dist/agent/loop.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,IAAI,CAAA;AAapD,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAMrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,IAAI,CAAA;AAapD,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAMrE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AA2ChD,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAEnD;;;;;;;;sEAQsE;AACtE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,SAAS,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;CAClB;AA4UD,uBAAuB;AACvB,wBAAsB,SAAS,CAC7B,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,cAAc,EACzB,aAAa,CAAC,EAAE,SAAS,GACxB,OAAO,CAAC,eAAe,CAAC,CAuV1B;AAED;;;;;;;;oCAQoC;AACpC,wBAAsB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAExF"}
|
package/dist/agent/loop.js
CHANGED
|
@@ -23,7 +23,8 @@ import { createLoopState } from './loop-state.js';
|
|
|
23
23
|
import { runMemoryExtractor } from './memory-extractor.js';
|
|
24
24
|
import { generateTaskSlug, makePlanFilePath } from './plan-storage.js';
|
|
25
25
|
import { downgradeBinaryPartsForProvider, ensureReasoningContentParts } from './provider-compat.js';
|
|
26
|
-
import { appendHeader, appendUsage, flushPendingMessages } from './session-store.js';
|
|
26
|
+
import { appendCheckpoint, appendHeader, appendUsage, flushPendingMessages } from './session-store.js';
|
|
27
|
+
import { createCheckpoint } from './snapshot.js';
|
|
27
28
|
import { drainStreamResult } from './stream-utils.js';
|
|
28
29
|
import { buildSystemPrompt } from './system-prompt.js';
|
|
29
30
|
import { processToolCalls } from './tool-execution.js';
|
|
@@ -147,6 +148,15 @@ async function collectTurnResponse(result, state, modelId, callbacks) {
|
|
|
147
148
|
if (usage.inputTokens != null)
|
|
148
149
|
state.lastInputTokens = usage.inputTokens;
|
|
149
150
|
callbacks.onUsageUpdate(state.tokenUsage);
|
|
151
|
+
// ── Cache break detection ──
|
|
152
|
+
const turnCacheRead = usage.inputTokenDetails?.cacheReadTokens ?? 0;
|
|
153
|
+
if (state.expectCacheMiss) {
|
|
154
|
+
state.expectCacheMiss = false;
|
|
155
|
+
}
|
|
156
|
+
else if (state.prevTurnCacheRead > 2000 && turnCacheRead < state.prevTurnCacheRead * 0.5) {
|
|
157
|
+
debugLog('cache-break', `Cache read dropped ${state.prevTurnCacheRead} → ${turnCacheRead} (${Math.round((1 - turnCacheRead / state.prevTurnCacheRead) * 100)}% drop). Possible unintended cache invalidation.`);
|
|
158
|
+
}
|
|
159
|
+
state.prevTurnCacheRead = turnCacheRead;
|
|
150
160
|
// Persist a usage snapshot inline with the jsonl transcript. Per-turn
|
|
151
161
|
// cadence: the picker's tail-scan only ever needs the LATEST entry, but
|
|
152
162
|
// we write every turn so a crashed process doesn't lose its final
|
|
@@ -397,6 +407,28 @@ export async function agentLoop(userMessage, model, options, callbacks, existing
|
|
|
397
407
|
}
|
|
398
408
|
}
|
|
399
409
|
state.messages.push({ role: 'user', content: effectiveUserMessage });
|
|
410
|
+
// ── Rewind checkpoint ──
|
|
411
|
+
// Snapshot the working tree for every file in `state.filesModified`
|
|
412
|
+
// and record the message-index anchor, so a later `/rewind` can roll
|
|
413
|
+
// both the file state and the conversation back to this point.
|
|
414
|
+
//
|
|
415
|
+
// Skipped for sub-agent invocations: those run with their own ephemeral
|
|
416
|
+
// LoopState that the user never sees in the picker — disk churn with
|
|
417
|
+
// no surfacing value. `subAgentRegistry` is set only on the main loop
|
|
418
|
+
// (cli/src/index.ts) and explicitly cleared by `runSubAgent`.
|
|
419
|
+
//
|
|
420
|
+
// Awaited so a quick follow-up tool can't race the snapshot read — the
|
|
421
|
+
// overhead is one mkdir + N small reads (typically <30ms even with a
|
|
422
|
+
// few dozen tracked files, since content-addressed dedup skips
|
|
423
|
+
// already-written blobs). createCheckpoint never throws and returns
|
|
424
|
+
// null on FS failure, in which case rewind to this point isn't
|
|
425
|
+
// available — UI degrades gracefully.
|
|
426
|
+
if (options.subAgentRegistry) {
|
|
427
|
+
const promptPreview = userContentToText(effectiveUserMessage).slice(0, 200);
|
|
428
|
+
const ckpt = await createCheckpoint(state, promptPreview);
|
|
429
|
+
if (ckpt)
|
|
430
|
+
void appendCheckpoint(state, ckpt);
|
|
431
|
+
}
|
|
400
432
|
// Per-invocation turn counter. Scoped to this single `agentLoop` call
|
|
401
433
|
// — re-entering the function (next user submit) starts at 0 again.
|
|
402
434
|
// This is the structural fix for the "Reached maximum turns" bug
|
package/dist/agent/loop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,EAAE;AACF,kEAAkE;AAClE,4DAA4D;AAC5D,OAAO,EAAE,MAAM,kBAAkB,CAAA;AACjC,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAG/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAA;AAE3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AACjE,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAA;AACpE,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACpE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAA;AACzE,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAChF,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAEjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACtE,OAAO,EAAE,+BAA+B,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AACnG,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AACtG,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAA;AAEhG;;;;;sEAKsE;AACtE,SAAS,cAAc,CAAC,WAAwB,EAAE,OAAe;IAC/D,MAAM,KAAK,GAAG,qBAAqB,OAAO,yBAAyB,CAAA;IACnE,IAAI,OAAO,WAAW,KAAK,QAAQ;QAAE,OAAO,KAAK,GAAG,WAAW,CAAA;IAC/D,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,GAAG,WAAW,CAAC,CAAA;AACxD,CAAC;AAED;;;;4CAI4C;AAC5C,SAAS,iBAAiB,CAAC,OAAoB;IAC7C,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAA;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO;aACX,MAAM,CACL,CAAC,CAAC,EAAuC,EAAE,CACzC,CAAC,EAAE,IAAI,KAAK,MAAM,IAAI,OAAQ,CAAwB,CAAC,IAAI,KAAK,QAAQ,CAC3E;aACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;aAClB,IAAI,CAAC,GAAG,CAAC,CAAA;IACd,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAGD,6EAA6E;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AAgBnD;;;;oCAIoC;AACpC,KAAK,UAAU,gBAAgB,CAAC,MAAoB,EAAE,SAAyB;IAC7E,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC3B,sEAAsE;YACtE,sEAAsE;YACtE,0DAA0D;YAC1D,gEAAgE;YAChE,oEAAoE;YACpE,qEAAqE;YACrE,uDAAuD;YACvD,MAAM,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;QACnF,CAAC;QACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAA;YAC7B,QAAQ,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAA;YACnC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;YACtC,QAAQ,CAAC,kBAAkB,EAAE,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;YAC5F,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAA;YACzC,oEAAoE;YACpE,oEAAoE;YACpE,kEAAkE;YAClE,iEAAiE;YACjE,IAAI,UAAU,EAAE,CAAC;gBACf,mBAAmB,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAA;YACrF,CAAC;YACD,SAAS,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAA4B,CAAC,CAAA;QACxG,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACxC,0EAA0E;YAC1E,MAAM,GAAG,GAAG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAA;YAChG,QAAQ,CAAC,oBAAoB,EAAE,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAA;YAClE,IAAI,KAAK,CAAC,UAAU;gBAAE,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YAC7D,SAAS,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;QACzE,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,oBAAoB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;QAC5C,CAAC;QACD,mFAAmF;QACnF,8EAA8E;IAChF,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,KAAK,UAAU,mBAAmB,CAChC,MAAoB,EACpB,KAAgB,EAChB,OAAe,EACf,SAAyB;IAEzB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAA;IACtC,6EAA6E;IAC7E,wEAAwE;IACxE,wEAAwE;IACxE,4EAA4E;IAC5E,uEAAuE;IACvE,uEAAuE;IACvE,wEAAwE;IACxE,0EAA0E;IAC1E,qCAAqC;IACrC,6BAA6B,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAChD,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzC,2BAA2B,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAEpD,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,KAAK,CAAA;IAChC,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,CAAC,UAAU,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,CAAA;QACtD,KAAK,CAAC,UAAU,CAAC,YAAY,IAAI,KAAK,CAAC,YAAY,IAAI,CAAC,CAAA;QACxD,qEAAqE;QACrE,gFAAgF;QAChF,yEAAyE;QACzE,wEAAwE;QACxE,KAAK,CAAC,UAAU,CAAC,eAAe,IAAI,KAAK,CAAC,iBAAiB,EAAE,eAAe,IAAI,CAAC,CAAA;QACjF,KAAK,CAAC,UAAU,CAAC,mBAAmB,IAAI,KAAK,CAAC,iBAAiB,EAAE,gBAAgB,IAAI,CAAC,CAAA;QACtF,KAAK,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAA;QAC3F,qEAAqE;QACrE,mEAAmE;QACnE,iEAAiE;QACjE,oEAAoE;QACpE,uEAAuE;QACvE,mEAAmE;QACnE,yDAAyD;QACzD,qEAAqE;QACrE,uEAAuE;QACvE,iEAAiE;QACjE,KAAK,CAAC,UAAU,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,CAAA;QAC5F,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI;YAAE,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,WAAW,CAAA;QACxE,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;QAEzC,8BAA8B;QAC9B,MAAM,aAAa,GAAG,KAAK,CAAC,iBAAiB,EAAE,eAAe,IAAI,CAAC,CAAA;QACnE,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,KAAK,CAAC,eAAe,GAAG,KAAK,CAAA;QAC/B,CAAC;aAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,IAAI,IAAI,aAAa,GAAG,KAAK,CAAC,iBAAiB,GAAG,GAAG,EAAE,CAAC;YAC3F,QAAQ,CACN,aAAa,EACb,sBAAsB,KAAK,CAAC,iBAAiB,MAAM,aAAa,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,KAAK,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,kDAAkD,CACvL,CAAA;QACH,CAAC;QACD,KAAK,CAAC,iBAAiB,GAAG,aAAa,CAAA;QAEvC,sEAAsE;QACtE,wEAAwE;QACxE,kEAAkE;QAClE,mDAAmD;QACnD,KAAK,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IAClC,CAAC;IAED,OAAO,MAAM,CAAC,YAAY,CAAA;AAC5B,CAAC;AAaD;;;uDAGuD;AACvD,SAAS,YAAY,CAAC,GAAY,EAAE,MAA+B;IACjE,IAAI,MAAM,EAAE,OAAO;QAAE,OAAO,IAAI,CAAA;IAChC,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;YAAE,OAAO,IAAI,CAAA;QAC1C,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;IAC1D,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;kEAMkE;AAClE,SAAS,UAAU,CAAC,OAAqB;IACvC,8DAA8D;IAC9D,MAAM,KAAK,GAAwB,EAAE,GAAG,YAAY,EAAE,CAAA;IAEtD,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,aAAa,GAAG,uBAAuB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IACtE,CAAC;IAED,qEAAqE;IACrE,uEAAuE;IACvE,kDAAkD;IAClD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,iEAAiE;QACjE,iEAAiE;QACjE,qCAAqC;QACrC,KAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;QACzC,KAAK,CAAC,eAAe,GAAG,eAAe,CAAA;QACvC,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC;YAC/C,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAA;IACjC,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACtC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;oBAAE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAA;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,+EAA+E;AAC/E,KAAK,UAAU,OAAO,CACpB,KAAgB,EAChB,KAAoB,EACpB,OAAqB,EACrB,YAAoB,EACpB,SAAyB;AACzB,8DAA8D;AAC9D,cAAmC;AACnC;yEACyE;AACzE,IAAY;IAEZ,mEAAmE;IACnE,kEAAkE;IAClE,oEAAoE;IACpE,iEAAiE;IACjE,mEAAmE;IACnE,qEAAqE;IACrE,kEAAkE;IAClE,oEAAoE;IACpE,4DAA4D;IAC5D,qBAAqB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAErC,oEAAoE;IACpE,sEAAsE;IACtE,mEAAmE;IACnE,0CAA0C;IAC1C,MAAM,+BAA+B,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAA;IAEtE,2EAA2E;IAC3E,sEAAsE;IACtE,oEAAoE;IACpE,2EAA2E;IAC3E,kCAAkC;IAClC,MAAM,MAAM,GAAG,iBAAiB,CAAC;QAC/B,MAAM,EAAE,YAAY;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,KAAK,EAAE,cAAc;QACrB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAA;IAEF,2EAA2E;IAC3E,0EAA0E;IAC1E,6DAA6D;IAC7D,0EAA0E;IAC1E,qEAAqE;IACrE,sEAAsE;IACtE,wEAAwE;IACxE,uEAAuE;IACvE,4BAA4B;IAC5B,MAAM,eAAe,GAAG,0BAA0B,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAA;IAC9F,MAAM,qBAAqB,GAAG,oBAAoB,CAAC,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,CAAA;IAE3F,IAAI,MAAoB,CAAA;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,UAAU,CAAC;YAClB,KAAK;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,cAAc;YACrC,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,qEAAqE;YACrE,qEAAqE;YACrE,yEAAyE;YACzE,2DAA2D;YAC3D,eAAe,EAAE,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC;YACpD,sEAAsE;YACtE,yDAAyD;YACzD,uEAAuE;YACvE,sEAAsE;YACtE,2DAA2D;YAC3D,eAAe,EAAE,qBAA4E;YAC7F,sEAAsE;YACtE,oEAAoE;YACpE,mEAAmE;YACnE,oEAAoE;YACpE,sEAAsE;YACtE,sEAAsE;YACtE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;gBACrB,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY;oBAAE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACzE,CAAC;SACF,CAA4B,CAAA;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QACtE,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,4EAA4E;IAC5E,yEAAyE;IACzE,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,8CAA8C;IAC9C,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAEzB,IAAI,CAAC;QACH,MAAM,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IAC3C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,oEAAoE;QACpE,0DAA0D;QAC1D,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAEzB,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QACtE,IAAI,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE;gBACrE,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC,CAAA;YACF,qEAAqE;YACrE,oEAAoE;YACpE,gEAAgE;YAChE,mEAAmE;YACnE,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO;gBAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;YAC5D,IAAI,UAAU;gBAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;QAC1C,CAAC;QACD,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QACzF,QAAQ,CACN,aAAa,EACb,UAAU,YAAY,SAAS,IAAI,UAAU,KAAK,CAAC,eAAe,UAAU,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAC3G,CAAA;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAA;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,iBAAiB,CAAC,MAAM,CAAC,CAAA;QACzB,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;QACtE,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;QAC3D,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA;IAC1B,CAAC;AACH,CAAC;AAED,uBAAuB;AACvB,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,WAAwB,EACxB,KAAoB,EACpB,OAAqB,EACrB,SAAyB,EACzB,aAAyB;IAEzB,MAAM,KAAK,GAAG,aAAa,IAAI,eAAe,CAAC,OAAO,CAAC,cAAc,IAAI,SAAS,CAAC,CAAA;IAEnF,kCAAkC;IAClC,uEAAuE;IACvE,qEAAqE;IACrE,qEAAqE;IACrE,kEAAkE;IAClE,sEAAsE;IACtE,oEAAoE;IACpE,uEAAuE;IACvE,mEAAmE;IACnE,oEAAoE;IACpE,uEAAuE;IAEvE,sCAAsC;IACtC,oEAAoE;IACpE,8DAA8D;IAC9D,mEAAmE;IACnE,qEAAqE;IACrE,8DAA8D;IAC9D,IAAI,oBAAoB,GAAG,WAAW,CAAA;IACtC,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAAC;QAC7C,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;QACjD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAC1C,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,EAC3G,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAChC,CAAA;YACD,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAA;YACnD,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,wBAAwB,CAAA;gBACxD,MAAM,MAAM,GAAG,mCAAmC,MAAM,GAAG,CAAA;gBAC3D,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;gBAC7B,kEAAkE;gBAClE,8DAA8D;gBAC9D,gDAAgD;gBAChD,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAA;gBAC3D,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;gBAC3D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAA;YAChC,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,oBAAoB,GAAG,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBACjC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAE,CAAA;YAChC,CAAC;YACD,QAAQ,CAAC,8BAA8B,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAA;IAEpE,0BAA0B;IAC1B,oEAAoE;IACpE,qEAAqE;IACrE,+DAA+D;IAC/D,EAAE;IACF,wEAAwE;IACxE,qEAAqE;IACrE,sEAAsE;IACtE,8DAA8D;IAC9D,EAAE;IACF,uEAAuE;IACvE,qEAAqE;IACrE,+DAA+D;IAC/D,oEAAoE;IACpE,+DAA+D;IAC/D,sCAAsC;IACtC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;QAC3E,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;QACzD,IAAI,IAAI;YAAE,KAAK,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;IAED,sEAAsE;IACtE,mEAAmE;IACnE,iEAAiE;IACjE,kEAAkE;IAClE,uDAAuD;IACvD,IAAI,IAAI,GAAG,CAAC,CAAA;IAEZ,oEAAoE;IACpE,mEAAmE;IACnE,iEAAiE;IACjE,oEAAoE;IACpE,MAAM;IACN,EAAE;IACF,oEAAoE;IACpE,mEAAmE;IACnE,oEAAoE;IACpE,iEAAiE;IACjE,kEAAkE;IAClE,6DAA6D;IAC7D,mEAAmE;IACnE,gEAAgE;IAChE,yCAAyC;IACzC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAA;IAC/C,yEAAyE;IACzE,qEAAqE;IACrE,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,uDAAuD,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IAC5G,MAAM,eAAe,GAAoB,KAAK,CAAC,QAAQ;QACrD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,gBAAgB,CAAC,eAAe,IAAI,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,CAAA;IAE9F,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,4EAA4E;IAC5E,MAAM,oBAAoB,GAAG,MAAM,qBAAqB,EAAE,CAAA;IAE1D,8DAA8D;IAC9D,MAAM,SAAS,GAAG,MAAM,EAAE;SACvB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,CAAC;SACtC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;SAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAA;IAErB,oEAAoE;IACpE,KAAK,CAAC,gBAAgB,GAAG,oBAAoB,CAAA;IAC7C,KAAK,CAAC,SAAS,GAAG,SAAS,CAAA;IAE3B,qEAAqE;IACrE,qEAAqE;IACrE,gEAAgE;IAChE,2DAA2D;IAC3D,KAAK,CAAC,QAAQ,GAAG,MAAM,eAAe,CAAA;IAEtC,+DAA+D;IAC/D,6DAA6D;IAC7D,+DAA+D;IAC/D,6DAA6D;IAC7D,+DAA+D;IAC/D,iEAAiE;IACjE,sCAAsC;IACtC,IAAI,KAAK,CAAC,cAAc,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QAC9D,KAAK,CAAC,eAAe,GAAG,gBAAgB,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;IAC9E,CAAC;IAED,uEAAuE;IACvE,sEAAsE;IACtE,yEAAyE;IACzE,wDAAwD;IACxD,KAAK,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE,eAAe,IAAI,QAAQ,CAAC,CAAA;IAEtE,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IAErE,oEAAoE;IACpE,oEAAoE;IACpE,wDAAwD;IACxD,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAE1C,yEAAyE;IACzE,wEAAwE;IACxE,sEAAsE;IACtE,0EAA0E;IAC1E,wEAAwE;IACxE,MAAM,iBAAiB,GAAG,CAAC,CAAA;IAC3B,IAAI,oBAAoB,GAAG,CAAC,CAAA;IAC5B,sEAAsE;IACtE,iEAAiE;IACjE,IAAI,iBAAiB,GAAG,KAAK,CAAA;IAE7B,oEAAoE;IACpE,sEAAsE;IACtE,yDAAyD;IACzD,OAAO,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;QACjE,IAAI,EAAE,CAAA;QAEN,kEAAkE;QAClE,mEAAmE;QACnE,mEAAmE;QACnE,mDAAmD;QACnD,sEAAsE;QACtE,qEAAqE;QACrE,0CAA0C;QAC1C,KAAK,oBAAoB,CAAC,KAAK,CAAC,CAAA;QAEhC,MAAM,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,SAAS,EAAE;YAC3E,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC,CAAA;QAEF,sEAAsE;QACtE,mEAAmE;QACnE,oEAAoE;QACpE,mEAAmE;QACnE,sEAAsE;QACtE,iBAAiB;QACjB,EAAE;QACF,oEAAoE;QACpE,8DAA8D;QAC9D,mEAAmE;QACnE,qEAAqE;QACrE,cAAc;QACd,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC7B,oEAAoE;YACpE,oEAAoE;YACpE,iEAAiE;YACjE,gEAAgE;YAChE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;gBAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBAC/D,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa;qBACnC,OAAO,EAAE;qBACT,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;qBACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;gBACrB,QAAQ,CAAC,4BAA4B,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAC3G,CAAC;YACD,KAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;gBAC1C,gBAAgB,EAAE,oBAAoB;gBACtC,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,SAAS;gBACT,QAAQ,EAAE,KAAK,CAAC,cAAc,KAAK,MAAM;gBACzC,YAAY,EAAE,KAAK,CAAC,eAAe,IAAI,SAAS;gBAChD,4DAA4D;gBAC5D,4DAA4D;gBAC5D,yDAAyD;gBACzD,sDAAsD;gBACtD,0BAA0B;gBAC1B,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC7F,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;aACzE,CAAC,CAAA;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAA;QAE5C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,IAAI,CAAC,CAAA;QAEnG,kCAAkC;QAClC,iEAAiE;QACjE,mEAAmE;QACnE,mEAAmE;QACnE,0BAA0B;QAC1B,IAAI,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;YACzC,MAAM,KAAK,GAAc;gBACvB,IAAI,EAAE,cAAc;gBACpB,OAAO,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE;gBACzD,IAAI;gBACJ,UAAU,EAAE;oBACV,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW;oBACzC,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,YAAY;oBAC3C,WAAW,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW;iBAC1C;aACF,CAAA;YACD,KAAK,OAAO,CAAC,OAAO;iBACjB,IAAI,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;iBAC5C,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,gCAAgC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;QAC5E,CAAC;QAED,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO;YAAE,MAAK;QACnC,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS;YAAE,MAAK;QACrC,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC7B,2EAA2E;YAC3E,IAAI,EAAE,CAAA;YACN,SAAQ;QACV,CAAC;QAED,IAAI,OAAO,CAAC,YAAY,KAAK,YAAY,EAAE,CAAC;YAC1C,sEAAsE;YACtE,4CAA4C;YAC5C,oBAAoB,GAAG,CAAC,CAAA;YACxB,IAAI,SAA6C,CAAA;YACjD,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAA;YAC5C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAI,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC;oBAAE,MAAK;gBACjD,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;gBAC3D,MAAK;YACP,CAAC;YACD,MAAM,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,CAAA;YACnE,mEAAmE;YACnE,mEAAmE;YACnE,IAAI,OAAO,CAAC,WAAW,EAAE,OAAO;gBAAE,MAAK;YACvC,SAAQ;QACV,CAAC;QAED,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YACtC,IAAI,oBAAoB,GAAG,iBAAiB,EAAE,CAAC;gBAC7C,oBAAoB,EAAE,CAAA;gBACtB,QAAQ,CAAC,0BAA0B,EAAE,WAAW,oBAAoB,IAAI,iBAAiB,SAAS,IAAI,EAAE,CAAC,CAAA;gBACzG,iEAAiE;gBACjE,iEAAiE;gBACjE,4DAA4D;gBAC5D,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAClB,IAAI,EAAE,MAAM;oBACZ,OAAO,EACL,kKAAkK;iBACrK,CAAC,CAAA;gBACF,SAAQ;YACV,CAAC;YACD,SAAS,CAAC,OAAO,CACf,IAAI,KAAK,CACP,kCAAkC,iBAAiB,mDAAmD,CACvG,CACF,CAAA;YACD,MAAK;QACP,CAAC;QAED,IAAI,OAAO,CAAC,YAAY,KAAK,gBAAgB,EAAE,CAAC;YAC9C,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC,CAAA;QAClF,CAAC;aAAM,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;YAC3C,iBAAiB,GAAG,IAAI,CAAA;QAC1B,CAAC;QAED,MAAK;IACP,CAAC;IAED,wCAAwC;IACxC,sEAAsE;IACtE,4BAA4B;IAC5B,sBAAsB;IACtB,sEAAsE;IACtE,oEAAoE;IACpE,8CAA8C;IAC9C,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACrF,SAAS,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,0BAA0B,OAAO,CAAC,QAAQ,yBAAyB,CAAC,CAAC,CAAA;IACnG,CAAC;IAED,sEAAsE;IACtE,mEAAmE;IACnE,gEAAgE;IAChE,qEAAqE;IACrE,yDAAyD;IACzD,KAAK,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAEhC,qEAAqE;IACrE,wEAAwE;IACxE,wEAAwE;IACxE,qEAAqE;IACrE,uEAAuE;IACvE,oEAAoE;IACpE,6BAA6B;IAC7B,IAAI,iBAAiB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;QACvD,KAAK,kBAAkB,CAAC;YACtB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,KAAK;YAClB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,OAAO,EAAE,SAAS,CAAC,aAAa;SACjC,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAA;AACnC,CAAC;AAED;;;;;;;;oCAQoC;AACpC,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAgB,EAAE,MAAqB;IACvE,MAAM,oBAAoB,CAAC,KAAK,CAAC,CAAA;AACnC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-tools.d.ts","sourceRoot":"","sources":["../../src/agent/plan-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAIhD,KAAK,cAAc,GAAG,CACpB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,OAAO,KACd,IAAI,CAAA;AAYT,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"plan-tools.d.ts","sourceRoot":"","sources":["../../src/agent/plan-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAY,MAAM,mBAAmB,CAAA;AAE/E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAIhD,KAAK,cAAc,GAAG,CACpB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,cAAc,EACzB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,OAAO,KACd,IAAI,CAAA;AAYT,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,YAAY,EACrB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,IAAI,CAAC,CAyDf;AAED,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,SAAS,EAChB,SAAS,EAAE,cAAc,EACzB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,IAAI,CAAC,CAkGf"}
|
package/dist/agent/plan-tools.js
CHANGED
|
@@ -58,6 +58,7 @@ export async function handleEnterPlanMode(input, toolCallId, state, options, cal
|
|
|
58
58
|
}
|
|
59
59
|
state.permissionMode = 'plan';
|
|
60
60
|
state.systemPromptCache = null;
|
|
61
|
+
state.expectCacheMiss = true;
|
|
61
62
|
if (!state.currentPlanPath) {
|
|
62
63
|
const topic = input.topic?.trim();
|
|
63
64
|
const fallbackText = lastUserMessageText(state.messages);
|
|
@@ -111,6 +112,7 @@ export async function handleExitPlanMode(input, toolCallId, state, callbacks, pu
|
|
|
111
112
|
if (approved) {
|
|
112
113
|
state.permissionMode = 'acceptEdits';
|
|
113
114
|
state.systemPromptCache = null;
|
|
115
|
+
state.expectCacheMiss = true;
|
|
114
116
|
const persisted = savedPath ?? state.currentPlanPath;
|
|
115
117
|
state.currentPlanPath = null;
|
|
116
118
|
callbacks.onPlanModeChange('acceptEdits');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan-tools.js","sourceRoot":"","sources":["../../src/agent/plan-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plan-tools.js","sourceRoot":"","sources":["../../src/agent/plan-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { ModelMessage } from 'ai';
|
|
2
2
|
import type { PermissionMode, TokenUsage } from '../types/index.js';
|
|
3
3
|
import type { LoopState } from './loop-state.js';
|
|
4
|
+
import type { CheckpointEntry } from './snapshot.js';
|
|
4
5
|
/** Build the on-disk filename for a session. Same shape as plan files
|
|
5
6
|
* (`<slug>-<id>.<ext>`) so `ls .x-code/sessions/` and `ls .x-code/plans/`
|
|
6
7
|
* scan the same way. Empty slug (CJK-only first message) collapses to
|
|
@@ -46,6 +47,13 @@ export declare function appendUsage(state: LoopState, modelId: string): Promise<
|
|
|
46
47
|
* — the trimmed messages still need a boundary so the loader doesn't
|
|
47
48
|
* resurrect the dropped loop-guard pairs. */
|
|
48
49
|
export declare function markBoundaryAndReflush(state: LoopState, summary?: string): Promise<void>;
|
|
50
|
+
/** Append a rewind checkpoint marker. Fire-and-forget, like the other
|
|
51
|
+
* append helpers. On resume, `loadSession` collects these into
|
|
52
|
+
* `LoadedSession.checkpoints` so the picker can offer the same rewind
|
|
53
|
+
* points across CLI restarts. The "everything-after-last-boundary wins"
|
|
54
|
+
* loader rule naturally drops checkpoints whose `messageCount` was
|
|
55
|
+
* invalidated by a compaction. */
|
|
56
|
+
export declare function appendCheckpoint(state: LoopState, entry: CheckpointEntry): Promise<void>;
|
|
49
57
|
/** Append an `interrupted` marker. Purely informational — the loader
|
|
50
58
|
* ignores it for state reconstruction; the picker can show "interrupted"
|
|
51
59
|
* next to sessions that ended mid-turn so users know what they're
|
|
@@ -61,6 +69,9 @@ export interface LoadedSession {
|
|
|
61
69
|
firstPrompt: string;
|
|
62
70
|
messages: ModelMessage[];
|
|
63
71
|
tokenUsage: TokenUsage;
|
|
72
|
+
/** Rewind checkpoints surviving the last compact-boundary (if any).
|
|
73
|
+
* The backing file manifests live under `.x-code/file-history/<sid>/`. */
|
|
74
|
+
checkpoints: CheckpointEntry[];
|
|
64
75
|
/** Path of the jsonl file so the agent loop can keep appending to the
|
|
65
76
|
* same file when the user resumes. */
|
|
66
77
|
filePath: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/agent/session-store.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAGnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"session-store.d.ts","sourceRoot":"","sources":["../../src/agent/session-store.ts"],"names":[],"mappings":"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"}
|