@pentoshi/clai 3.8.36 → 3.8.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/app/adapters/current-store-adapter.js +2 -2
  2. package/dist/app/adapters/current-store-adapter.js.map +1 -1
  3. package/dist/app/controllers/session-controller.d.ts +6 -2
  4. package/dist/app/controllers/session-controller.js +19 -21
  5. package/dist/app/controllers/session-controller.js.map +1 -1
  6. package/dist/app/controllers/session-persistence.d.ts +16 -0
  7. package/dist/app/controllers/session-persistence.js +55 -0
  8. package/dist/app/controllers/session-persistence.js.map +1 -0
  9. package/dist/app/ports/persistence-port.d.ts +7 -0
  10. package/dist/commands/search-providers.d.ts +1 -5
  11. package/dist/commands/search-providers.js +35 -23
  12. package/dist/commands/search-providers.js.map +1 -1
  13. package/dist/store/history.d.ts +15 -8
  14. package/dist/store/history.js +357 -159
  15. package/dist/store/history.js.map +1 -1
  16. package/dist/store/keys.d.ts +15 -4
  17. package/dist/store/keys.js +103 -11
  18. package/dist/store/keys.js.map +1 -1
  19. package/dist/tools/jobs.js +32 -2
  20. package/dist/tools/jobs.js.map +1 -1
  21. package/dist/tools/web/search.js +151 -75
  22. package/dist/tools/web/search.js.map +1 -1
  23. package/dist/tui/format-keys.d.ts +3 -0
  24. package/dist/tui/format-keys.js +18 -5
  25. package/dist/tui/format-keys.js.map +1 -1
  26. package/dist/tui-v2/app/commands/key-commands.js +142 -102
  27. package/dist/tui-v2/app/commands/key-commands.js.map +1 -1
  28. package/dist/tui-v2/app/commands/picker-commands.js +1 -0
  29. package/dist/tui-v2/app/commands/picker-commands.js.map +1 -1
  30. package/dist/tui-v2/app/plan-lifecycle.js +10 -4
  31. package/dist/tui-v2/app/plan-lifecycle.js.map +1 -1
  32. package/dist/tui-v2/bootstrap/lifecycle.d.ts +13 -1
  33. package/dist/tui-v2/bootstrap/lifecycle.js +18 -3
  34. package/dist/tui-v2/bootstrap/lifecycle.js.map +1 -1
  35. package/dist/version.generated.d.ts +2 -2
  36. package/dist/version.generated.js +2 -2
  37. package/package.json +1 -1
@@ -5,13 +5,33 @@ import { getProvider } from "../../../llm/router.js";
5
5
  import { MAX_PROVIDER_KEYS } from "../../../llm/key-rotation.js";
6
6
  import { assertProvider, getProviderInfoText, maskSecret, } from "../../../llm/provider.js";
7
7
  import { getConfig, updateConfig } from "../../../store/config.js";
8
- import { getProviderKeys, getSearchProviderKey, listProviderStatuses, setProviderKeys, setSecret, unsetProviderSecret, } from "../../../store/keys.js";
8
+ import { appendSearchProviderKey, getProviderKeys, getSearchProviderKeys, listProviderStatuses, setProviderKeys, setSearchProviderKeys, unsetProviderSecret, unsetSearchProviderSecret, } from "../../../store/keys.js";
9
9
  import { searchProviderIds } from "../../../tools/web/types.js";
10
10
  import { formatKeyStatus } from "../../../tui/format-keys.js";
11
11
  const SEARCH_IDS = new Set(["brave", "tavily", "duckduckgo"]);
12
12
  function notice(services, level, text) {
13
13
  services.session.notice(level, text);
14
14
  }
15
+ async function getSearchKeyStatuses() {
16
+ const activeSearch = getConfig().activeSearchProvider;
17
+ return Promise.all(searchProviderIds.map(async (id) => {
18
+ const keyless = id === "duckduckgo";
19
+ const multi = await getSearchProviderKeys(id);
20
+ const count = multi.keys.length;
21
+ const activeIndex = count > 0 ? multi.activeIndex : 0;
22
+ const activeValue = multi.keys[activeIndex]?.value;
23
+ return {
24
+ provider: id,
25
+ active: id === activeSearch,
26
+ configured: keyless || count > 0,
27
+ source: keyless ? "keyless" : multi.source,
28
+ maskedKey: activeValue ? maskSecret(activeValue) : undefined,
29
+ keyCount: keyless ? undefined : count || undefined,
30
+ maskedKeys: count > 0 ? multi.keys.map((key) => maskSecret(key.value)) : undefined,
31
+ activeMaskedKey: count > 1 && activeValue ? maskSecret(activeValue) : undefined,
32
+ };
33
+ }));
34
+ }
15
35
  export async function handleInfo(services, invocation) {
16
36
  const providerVal = invocation.args.trim().toLowerCase();
17
37
  let target = services.session.getState().provider ?? getConfig().defaultProvider;
@@ -30,19 +50,7 @@ export async function handleKeys(services) {
30
50
  try {
31
51
  const active = services.session.getState().provider ?? getConfig().defaultProvider;
32
52
  const llm = await listProviderStatuses(active);
33
- const activeSearch = getConfig().activeSearchProvider;
34
- const search = await Promise.all(searchProviderIds.map(async (id) => {
35
- const secret = await getSearchProviderKey(id);
36
- const keyless = id === "duckduckgo";
37
- return {
38
- provider: id,
39
- active: id === activeSearch,
40
- configured: keyless || Boolean(secret.value),
41
- source: keyless ? "keyless" : secret.source,
42
- maskedKey: secret.value ? maskSecret(secret.value) : undefined,
43
- };
44
- }));
45
- services.overlay.openPager("Credential status", formatKeyStatus(llm, search));
53
+ services.overlay.openPager("Credential status", formatKeyStatus(llm, await getSearchKeyStatuses()));
46
54
  }
47
55
  catch (error) {
48
56
  notice(services, "warn", `could not read keys: ${error instanceof Error ? error.message : String(error)}`);
@@ -63,7 +71,6 @@ export async function handleSet(services, invocation) {
63
71
  }
64
72
  const id = assertProvider(providerVal);
65
73
  if (keyVal) {
66
- // Non-interactive append of one key.
67
74
  await appendLlmKey(services, id, keyVal);
68
75
  return;
69
76
  }
@@ -93,17 +100,7 @@ export async function handleUnset(services, invocation) {
93
100
  async function openSetPicker(services) {
94
101
  const active = services.session.getState().provider ?? getConfig().defaultProvider;
95
102
  const llm = await listProviderStatuses(active);
96
- const activeSearch = getConfig().activeSearchProvider;
97
- const search = await Promise.all(searchProviderIds.map(async (id) => {
98
- const secret = await getSearchProviderKey(id);
99
- const keyless = id === "duckduckgo";
100
- return {
101
- provider: id,
102
- configured: keyless || Boolean(secret.value),
103
- maskedKey: secret.value ? maskSecret(secret.value) : undefined,
104
- keyCount: secret.value ? 1 : 0,
105
- };
106
- }));
103
+ const search = await getSearchKeyStatuses();
107
104
  const options = [
108
105
  ...llm.map((status) => {
109
106
  const count = status.keyCount ?? (status.configured ? 1 : 0);
@@ -122,11 +119,21 @@ async function openSetPicker(services) {
122
119
  description: status.model,
123
120
  };
124
121
  }),
125
- ...search.map((status) => ({
126
- value: `search:${status.provider}`,
127
- label: `${status.provider} ${status.configured ? "✓ key set" : "✗ no key"}`,
128
- description: `Search provider${status.provider === activeSearch ? " (active)" : ""}`,
129
- })),
122
+ ...search.map((status) => {
123
+ const count = status.keyCount ?? 0;
124
+ const keyLabel = status.provider === "duckduckgo"
125
+ ? " keyless"
126
+ : count === 0
127
+ ? "✗ no key"
128
+ : count === 1
129
+ ? `✓ ${status.maskedKey ?? "1 key"}`
130
+ : `✓ ${count} keys`;
131
+ return {
132
+ value: `search:${status.provider}`,
133
+ label: `${status.provider} ${keyLabel}${status.active ? " (active)" : ""}`,
134
+ description: "Search provider",
135
+ };
136
+ }),
130
137
  ];
131
138
  services.overlay.openPicker({ title: "Set API key for provider", options }, (value) => {
132
139
  services.overlay.close();
@@ -134,7 +141,7 @@ async function openSetPicker(services) {
134
141
  const isSearch = value.startsWith("search:");
135
142
  const id = value.split(":")[1];
136
143
  if (isSearch)
137
- await setSearchKey(services, id);
144
+ await openSearchKeysEditor(services, id);
138
145
  else
139
146
  await openLlmKeysEditor(services, id);
140
147
  })();
@@ -143,16 +150,7 @@ async function openSetPicker(services) {
143
150
  async function openUnsetPicker(services) {
144
151
  const active = services.session.getState().provider ?? getConfig().defaultProvider;
145
152
  const llm = await listProviderStatuses(active);
146
- const activeSearch = getConfig().activeSearchProvider;
147
- const search = await Promise.all(searchProviderIds.map(async (id) => {
148
- const secret = await getSearchProviderKey(id);
149
- const keyless = id === "duckduckgo";
150
- return {
151
- provider: id,
152
- configured: keyless || Boolean(secret.value),
153
- maskedKey: secret.value ? maskSecret(secret.value) : undefined,
154
- };
155
- }));
153
+ const search = await getSearchKeyStatuses();
156
154
  const options = [
157
155
  ...llm.map((status) => {
158
156
  const count = status.keyCount ?? (status.configured ? 1 : 0);
@@ -169,11 +167,21 @@ async function openUnsetPicker(services) {
169
167
  description: status.model,
170
168
  };
171
169
  }),
172
- ...search.map((status) => ({
173
- value: `search:${status.provider}`,
174
- label: `${status.provider} ${status.configured ? `✓ ${status.maskedKey ?? "keyless"}` : "✗ no key"}`,
175
- description: `Search provider${status.provider === activeSearch ? " (active)" : ""}`,
176
- })),
170
+ ...search.map((status) => {
171
+ const count = status.keyCount ?? 0;
172
+ const keyLabel = status.provider === "duckduckgo"
173
+ ? "keyless"
174
+ : count === 0
175
+ ? "✗ no key"
176
+ : count === 1
177
+ ? `✓ ${status.maskedKey ?? "1 key"}`
178
+ : `✓ ${count} keys — reset all`;
179
+ return {
180
+ value: `search:${status.provider}`,
181
+ label: `${status.provider} ${keyLabel}${status.active ? " (active)" : ""}`,
182
+ description: "Search provider",
183
+ };
184
+ }),
177
185
  ];
178
186
  services.overlay.openPicker({ title: "Unset API key for provider", options }, (value) => {
179
187
  services.overlay.close();
@@ -189,7 +197,7 @@ async function openUnsetPicker(services) {
189
197
  }
190
198
  async function openLlmKeysEditor(services, id) {
191
199
  if (id === "ollama") {
192
- let host = await services.overlay.openSecret({
200
+ const host = await services.overlay.openSecret({
193
201
  title: "Ollama host URL",
194
202
  prompt: "Enter host URL for Ollama:",
195
203
  });
@@ -204,10 +212,10 @@ async function openLlmKeysEditor(services, id) {
204
212
  const multi = await getProviderKeys(id);
205
213
  const stored = multi.source === "env"
206
214
  ? []
207
- : multi.keys.map((k) => ({ id: k.id, masked: maskSecret(k.value), value: k.value }));
215
+ : multi.keys.map((key) => ({ id: key.id, masked: maskSecret(key.value), value: key.value }));
208
216
  const answer = await services.overlay.openKeysEditor({
209
217
  provider: id,
210
- initialKeys: stored.map((k) => ({ id: k.id, masked: k.masked })),
218
+ initialKeys: stored.map((key) => ({ id: key.id, masked: key.masked })),
211
219
  });
212
220
  if (!answer) {
213
221
  notice(services, "info", "cancelled");
@@ -218,24 +226,8 @@ async function openLlmKeysEditor(services, id) {
218
226
  notice(services, "info", `unset all keys for ${id}`);
219
227
  return;
220
228
  }
221
- // Resolve save rows final plaintext list.
222
- const byId = new Map(stored.map((k) => [k.id, k.value]));
223
- const resolved = [];
224
- for (const row of answer.rows) {
225
- if (row.slotId) {
226
- if (row.value.trim()) {
227
- resolved.push(row.value.trim());
228
- }
229
- else {
230
- const keep = byId.get(row.slotId);
231
- if (keep)
232
- resolved.push(keep);
233
- }
234
- }
235
- else if (row.value.trim()) {
236
- resolved.push(row.value.trim());
237
- }
238
- }
229
+ const byId = new Map(stored.map((key) => [key.id, key.value]));
230
+ const resolved = resolveEditorRows(answer.rows, byId);
239
231
  if (resolved.length === 0) {
240
232
  await unsetProviderSecret(id);
241
233
  notice(services, "info", `unset all keys for ${id}`);
@@ -252,22 +244,79 @@ async function openLlmKeysEditor(services, id) {
252
244
  notice(services, "warn", `at most ${MAX_PROVIDER_KEYS} API keys per provider`);
253
245
  return;
254
246
  }
255
- // Preserve sticky active when possible (first kept slot that matches prior active).
256
247
  let activeIndex = 0;
257
248
  if (multi.source !== "env" && multi.keys.length > 0) {
258
- const prevActive = multi.keys[multi.activeIndex]?.value;
259
- if (prevActive) {
260
- const found = resolved.indexOf(prevActive);
249
+ const previous = multi.keys[multi.activeIndex]?.value;
250
+ if (previous) {
251
+ const found = resolved.indexOf(previous);
261
252
  if (found >= 0)
262
253
  activeIndex = found;
263
254
  }
264
255
  }
265
256
  await setProviderKeys(id, resolved, activeIndex);
266
- const label = resolved.length === 1
267
- ? maskSecret(resolved[0])
268
- : `${resolved.length} keys`;
257
+ const label = resolved.length === 1 ? maskSecret(resolved[0]) : `${resolved.length} keys`;
269
258
  notice(services, "info", `saved ${id} · ${label}`);
270
259
  }
260
+ async function openSearchKeysEditor(services, id) {
261
+ if (id === "duckduckgo") {
262
+ notice(services, "info", "duckduckgo is keyless and requires no setup");
263
+ return;
264
+ }
265
+ const multi = await getSearchProviderKeys(id);
266
+ const stored = multi.source === "env"
267
+ ? []
268
+ : multi.keys.map((key) => ({ id: key.id, masked: maskSecret(key.value), value: key.value }));
269
+ const answer = await services.overlay.openKeysEditor({
270
+ provider: id,
271
+ initialKeys: stored.map((key) => ({ id: key.id, masked: key.masked })),
272
+ });
273
+ if (!answer) {
274
+ notice(services, "info", "cancelled");
275
+ return;
276
+ }
277
+ if (answer.action === "reset") {
278
+ await unsetSearchProviderSecret(id);
279
+ notice(services, "info", `unset all keys for ${id}`);
280
+ return;
281
+ }
282
+ const resolved = resolveEditorRows(answer.rows, new Map(stored.map((key) => [key.id, key.value])));
283
+ if (resolved.length === 0) {
284
+ await unsetSearchProviderSecret(id);
285
+ notice(services, "info", `unset all keys for ${id}`);
286
+ return;
287
+ }
288
+ if (resolved.length > MAX_PROVIDER_KEYS) {
289
+ notice(services, "warn", `at most ${MAX_PROVIDER_KEYS} API keys per provider`);
290
+ return;
291
+ }
292
+ let activeIndex = 0;
293
+ if (multi.source !== "env" && multi.keys.length > 0) {
294
+ const previous = multi.keys[multi.activeIndex]?.value;
295
+ if (previous) {
296
+ const found = resolved.indexOf(previous);
297
+ if (found >= 0)
298
+ activeIndex = found;
299
+ }
300
+ }
301
+ await setSearchProviderKeys(id, resolved, activeIndex);
302
+ const label = resolved.length === 1 ? maskSecret(resolved[0]) : `${resolved.length} keys`;
303
+ notice(services, "info", `saved ${id} · ${label}`);
304
+ }
305
+ function resolveEditorRows(rows, byId) {
306
+ const resolved = [];
307
+ for (const row of rows) {
308
+ if (row.slotId) {
309
+ const value = row.value.trim();
310
+ const keep = value || byId.get(row.slotId);
311
+ if (keep)
312
+ resolved.push(keep);
313
+ }
314
+ else if (row.value.trim()) {
315
+ resolved.push(row.value.trim());
316
+ }
317
+ }
318
+ return resolved;
319
+ }
271
320
  async function appendLlmKey(services, id, keyVal) {
272
321
  if (id === "ollama") {
273
322
  updateConfig({ ollamaHost: keyVal.trim() });
@@ -292,44 +341,35 @@ async function setSearchKey(services, id, keyVal) {
292
341
  notice(services, "info", "duckduckgo is keyless and requires no setup");
293
342
  return;
294
343
  }
295
- let key = keyVal;
344
+ if (!keyVal) {
345
+ await openSearchKeysEditor(services, id);
346
+ return;
347
+ }
348
+ const key = keyVal.trim();
296
349
  if (!key) {
297
- const secret = await getSearchProviderKey(id);
298
- if (secret.value) {
299
- const ok = await services.overlay.openConfirm({
300
- kind: "reset",
301
- prompt: `${id} already has a key (${maskSecret(secret.value)}). Reset it?`,
302
- });
303
- if (!ok) {
304
- notice(services, "info", "cancelled");
305
- return;
306
- }
307
- }
308
- key = await services.overlay.openSecret({
309
- title: `${id} API key`,
310
- prompt: `Enter API key for ${id}:`,
311
- });
312
- if (!key) {
313
- notice(services, "info", "cancelled");
314
- return;
315
- }
350
+ notice(services, "warn", "API key cannot be empty");
351
+ return;
316
352
  }
317
- await setSecret("search", id, key.trim());
318
- notice(services, "info", `saved ${id} ${maskSecret(key.trim())}`);
353
+ await appendSearchProviderKey(id, key);
354
+ const multi = await getSearchProviderKeys(id);
355
+ const count = multi.source === "env" ? 1 : multi.keys.length;
356
+ notice(services, "info", count > 1
357
+ ? `added ${id} ${maskSecret(key)} · ${count} keys total`
358
+ : `saved ${id} ${maskSecret(key)}`);
319
359
  }
320
360
  async function unsetSearchKey(services, id) {
321
361
  if (id === "duckduckgo") {
322
362
  notice(services, "info", "duckduckgo requires no credentials and cannot be unset");
323
363
  return;
324
364
  }
325
- const secret = await getSearchProviderKey(id);
326
- if (!secret.value) {
365
+ const multi = await getSearchProviderKeys(id);
366
+ const storedCount = multi.source === "env" ? 0 : multi.keys.length;
367
+ if (storedCount === 0) {
327
368
  notice(services, "warn", `${id} has no key to unset`);
328
369
  return;
329
370
  }
330
- const { unsetSearchProviderKey } = await import("../../../commands/search-providers.js");
331
- await unsetSearchProviderKey(id);
332
- notice(services, "info", `unset ${id}`);
371
+ await unsetSearchProviderSecret(id);
372
+ notice(services, "info", storedCount > 1 ? `unset all ${storedCount} keys for ${id}` : `unset ${id}`);
333
373
  }
334
374
  async function unsetLlmKey(services, id) {
335
375
  if (id === "ollama") {
@@ -1 +1 @@
1
- {"version":3,"file":"key-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/key-commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,UAAU,GACX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,SAAS,EACT,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAyB,MAAM,6BAA6B,CAAC;AAEvF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAK9D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;AAE9D,SAAS,MAAM,CAAC,QAAqB,EAAE,KAAsB,EAAE,IAAY;IACzE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,QAAqB,EACrB,UAA6B;IAE7B,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACzD,IAAI,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC;IACjF,IAAI,WAAW,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QACvC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,qBAAqB,WAAW,EAAE,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,MAAM,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAqB;IACpD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC;QACnF,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC/C,MAAM,YAAY,GAAG,SAAS,EAAE,CAAC,oBAAoB,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;YACjC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAC9C,MAAM,OAAO,GAAG,EAAE,KAAK,YAAY,CAAC;YACpC,OAAO;gBACL,QAAQ,EAAE,EAAE;gBACZ,MAAM,EAAE,EAAE,KAAK,YAAY;gBAC3B,UAAU,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC5C,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM;gBAC3C,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;aAC/D,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QACF,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,mBAAmB,EAAE,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC;IAChF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CACJ,QAAQ,EACR,MAAM,EACN,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACjF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,QAAqB,EACrB,UAA6B;IAE7B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC9B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,YAAY,CAAC,QAAQ,EAAE,WAA+B,EAAE,MAAM,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QACvC,IAAI,MAAM,EAAE,CAAC;YACX,qCAAqC;YACrC,MAAM,YAAY,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QACD,MAAM,iBAAiB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAqB,EACrB,UAA6B;IAE7B,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IACD,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,cAAc,CAAC,QAAQ,EAAE,WAA+B,CAAC,CAAC;YAChE,OAAO;QACT,CAAC;QACD,MAAM,WAAW,CAAC,QAAQ,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAAqB;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC;IACnF,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,SAAS,EAAE,CAAC,oBAAoB,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACjC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,EAAE,KAAK,YAAY,CAAC;QACpC,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5C,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;YAC9D,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC/B,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IACF,MAAM,OAAO,GAAmB;QAC9B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ,KAAK,QAAQ;gBAC1B,CAAC,CAAC,MAAM,CAAC,UAAU;oBACjB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,WAAW;gBACf,CAAC,CAAC,KAAK,KAAK,CAAC;oBACX,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,KAAK,KAAK,CAAC;wBACX,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,IAAI,OAAO,EAAE;wBACpC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC;YAC5B,OAAO;gBACL,KAAK,EAAE,OAAO,MAAM,CAAC,QAAQ,EAAE;gBAC/B,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC1E,WAAW,EAAE,MAAM,CAAC,KAAK;aAC1B,CAAC;QACJ,CAAC,CAAC;QACF,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACzB,KAAK,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;YAClC,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,EAAE;YAC3E,WAAW,EAAE,kBAAkB,MAAM,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;SACrF,CAAC,CAAC;KACJ,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;QACpF,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACzB,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YAChC,IAAI,QAAQ;gBAAE,MAAM,YAAY,CAAC,QAAQ,EAAE,EAAsB,CAAC,CAAC;;gBAC9D,MAAM,iBAAiB,CAAC,QAAQ,EAAE,EAAgB,CAAC,CAAC;QAC3D,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,QAAqB;IAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC;IACnF,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,SAAS,EAAE,CAAC,oBAAoB,CAAC;IACtD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACjC,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,EAAE,KAAK,YAAY,CAAC;QACpC,OAAO;YACL,QAAQ,EAAE,EAAE;YACZ,UAAU,EAAE,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAC5C,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;SAC/D,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IACF,MAAM,OAAO,GAAmB;QAC9B,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACpB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7D,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ,KAAK,QAAQ;gBAC1B,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,KAAK,KAAK,CAAC;oBACX,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,KAAK,KAAK,CAAC;wBACX,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,IAAI,OAAO,EAAE;wBACpC,CAAC,CAAC,KAAK,KAAK,mBAAmB,CAAC;YACxC,OAAO;gBACL,KAAK,EAAE,OAAO,MAAM,CAAC,QAAQ,EAAE;gBAC/B,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC1E,WAAW,EAAE,MAAM,CAAC,KAAK;aAC1B,CAAC;QACJ,CAAC,CAAC;QACF,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACzB,KAAK,EAAE,UAAU,MAAM,CAAC,QAAQ,EAAE;YAClC,KAAK,EAAE,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,UAAU,EAAE;YACpG,WAAW,EAAE,kBAAkB,MAAM,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;SACrF,CAAC,CAAC;KACJ,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,4BAA4B,EAAE,OAAO,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE;QACtF,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACzB,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC7C,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YAChC,IAAI,QAAQ;gBAAE,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAsB,CAAC,CAAC;;gBAChE,MAAM,WAAW,CAAC,QAAQ,EAAE,EAAgB,CAAC,CAAC;QACrD,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,QAAqB,EACrB,EAAc;IAEd,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,IAAI,IAAI,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;YAC3C,KAAK,EAAE,iBAAiB;YACxB,MAAM,EAAE,4BAA4B;SACrC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD,YAAY,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,uBAAuB,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/D,OAAO;IACT,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,KAAK,KAAK;QACpB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAEzF,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC;QACnD,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;KACjE,CAAC,CAAC;IACH,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC9B,MAAM,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC9B,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,4CAA4C;IAC5C,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,IAAI;oBAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YAC5B,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,mBAAmB,CAAC,EAAE,CAAC,CAAC;QAC9B,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,sBAAsB,EAAE,EAAE,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,8BAA8B,EAAE,EAAE,CAAC,CAAC;YAC7D,OAAO;QACT,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;QACxC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,iBAAiB,wBAAwB,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IAED,oFAAoF;IACpF,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC;QACxD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,IAAI,KAAK,IAAI,CAAC;gBAAE,WAAW,GAAG,KAAK,CAAC;QACtC,CAAC;IACH,CAAC;IAED,MAAM,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjD,MAAM,KAAK,GACT,QAAQ,CAAC,MAAM,KAAK,CAAC;QACnB,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC;QAC1B,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,OAAO,CAAC;IAChC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,QAAqB,EACrB,EAAc,EACd,MAAc;IAEd,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,YAAY,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC5C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,uBAAuB,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO;IACT,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC1B,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,8BAA8B,EAAE,EAAE,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IACD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;IACrE,MAAM,iBAAiB,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IAC7D,MAAM,CACJ,QAAQ,EACR,MAAM,EACN,KAAK,GAAG,CAAC;QACP,CAAC,CAAC,SAAS,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,KAAK,aAAa;QACxD,CAAC,CAAC,SAAS,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CACrC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,QAAqB,EACrB,EAAoB,EACpB,MAA2B;IAE3B,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;QACxB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,6CAA6C,CAAC,CAAC;QACxE,OAAO;IACT,CAAC;IACD,IAAI,GAAG,GAAG,MAAM,CAAC;IACjB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjB,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;gBAC5C,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,GAAG,EAAE,uBAAuB,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc;aAC3E,CAAC,CAAC;YACH,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;gBACtC,OAAO;YACT,CAAC;QACH,CAAC;QACD,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;YACtC,KAAK,EAAE,GAAG,EAAE,UAAU;YACtB,MAAM,EAAE,qBAAqB,EAAE,GAAG;SACnC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,QAAqB,EAAE,EAAoB;IACvE,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;QACxB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,wDAAwD,CAAC,CAAC;QACnF,OAAO;IACT,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IACD,MAAM,EAAE,sBAAsB,EAAE,GAAG,MAAM,MAAM,CAAC,uCAAuC,CAAC,CAAC;IACzF,MAAM,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACjC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,QAAqB,EAAE,EAAc;IAC9D,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,kCAAkC,CAAC,CAAC;QAC7D,OAAO;IACT,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IACnE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IACD,MAAM,mBAAmB,CAAC,EAAE,CAAC,CAAC;IAC9B,MAAM,CACJ,QAAQ,EACR,MAAM,EACN,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,WAAW,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,CAC5E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"key-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/key-commands.ts"],"names":[],"mappings":"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"}
@@ -323,6 +323,7 @@ export async function handleHistory(services) {
323
323
  services.session.loadHistory(session.messages, {
324
324
  sessionId: session.id,
325
325
  title: session.name,
326
+ persistenceRevision: session.revision,
326
327
  ...(session.contextUsage
327
328
  ? { contextUsage: session.contextUsage }
328
329
  : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/picker-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"picker-commands.js","sourceRoot":"","sources":["../../../../src/tui-v2/app/commands/picker-commands.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,12 @@ async function compactResearchForImplement(services) {
89
89
  if (session.getState().running || session.getState().compacting)
90
90
  return;
91
91
  const beforeMessages = [...session.messages];
92
+ const beforeContextUsage = session.getState().contextUsage;
93
+ const beforeTranscript = services.transcript.getState();
94
+ const restoreBeforeCompaction = () => {
95
+ services.transcript.hydrate(beforeTranscript);
96
+ session.restoreMessages(beforeMessages, beforeContextUsage);
97
+ };
92
98
  const beforeTokens = estimateMessagesTokens(beforeMessages);
93
99
  if (beforeTokens < PLAN_IMPLEMENT_COMPACT_MIN_TOKENS)
94
100
  return;
@@ -109,8 +115,8 @@ async function compactResearchForImplement(services) {
109
115
  afterMessages: result.messages,
110
116
  });
111
117
  if (!decision.accept) {
112
- session.restoreMessages(beforeMessages);
113
- // Overwrite any compacted save from compact() with the original history.
118
+ restoreBeforeCompaction();
119
+ // Overwrite any compacted save with one coherent pre-compact snapshot.
114
120
  await session.persistNow().catch(() => undefined);
115
121
  notifyWarn(services, "plan context compaction skipped — keeping full research history", { key: "plan-compact", durationMs: 2800 });
116
122
  return;
@@ -125,8 +131,8 @@ async function compactResearchForImplement(services) {
125
131
  });
126
132
  }
127
133
  catch {
128
- // compact() leaves history untouched on throw before assign; restore if needed.
129
- session.restoreMessages(beforeMessages);
134
+ // Restore all three persisted facets even if compaction emitted before failing.
135
+ restoreBeforeCompaction();
130
136
  await session.persistNow().catch(() => undefined);
131
137
  notifyWarn(services, "plan context compaction failed — keeping full research history", { key: "plan-compact", durationMs: 2800 });
132
138
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plan-lifecycle.js","sourceRoot":"","sources":["../../../src/tui-v2/app/plan-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-lifecycle.js","sourceRoot":"","sources":["../../../src/tui-v2/app/plan-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,7 @@ export declare class RendererLifecycle {
42
42
  private readonly disposers;
43
43
  private started;
44
44
  private shuttingDown;
45
+ private shutdownPromise;
45
46
  private destroyed;
46
47
  private lastSigintAt;
47
48
  private readonly listeners;
@@ -52,9 +53,20 @@ export declare class RendererLifecycle {
52
53
  /**
53
54
  * Idempotent teardown: dispose extra resources in reverse order, then destroy
54
55
  * the renderer. Safe to call from multiple signals/error paths concurrently.
56
+ *
57
+ * Concurrent callers await the SAME in-flight teardown instead of returning
58
+ * early. This matters at quit: a second exit trigger (App Ctrl+C plus a raw
59
+ * SIGINT, SIGTERM during shutdown, etc.) must not let `shutdownAndExit` call
60
+ * `process.exit()` while the first shutdown's disposers — including the final
61
+ * history flush — are still writing to disk. Returning early here is exactly
62
+ * how a terminal `/compact` save was being truncated before it hit disk.
55
63
  */
56
64
  shutdown(): Promise<void>;
57
- /** Tear down fully, then exit — destroy always precedes exit. */
65
+ private runShutdown;
66
+ /**
67
+ * Tear down fully, then exit — destroy always precedes exit, and exit never
68
+ * runs until the (possibly already in-flight) shutdown has fully completed.
69
+ */
58
70
  shutdownAndExit(code: number): Promise<void>;
59
71
  private installHandlers;
60
72
  private addListener;