@dotsetlabs/dotclaw 2.3.0 → 2.4.0

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.
@@ -163,7 +163,7 @@ const DEFAULT_AGENT_CONFIG: AgentRuntimeConfig['agent'] = {
163
163
  context: {
164
164
  maxContextTokens: 128_000,
165
165
  compactionTriggerTokens: 120_000,
166
- recentContextTokens: 0, // 0 = auto: 60% of model context window
166
+ recentContextTokens: 0, // 0 = auto: 50% of model context window
167
167
  summaryUpdateEveryMessages: 20,
168
168
  maxOutputTokens: 8192,
169
169
  summaryMaxOutputTokens: 2048,
@@ -22,7 +22,6 @@ import {
22
22
  buildMultiPartSummaryPrompt,
23
23
  splitMessagesByTokenShare,
24
24
  parseSummaryResponse,
25
- retrieveRelevantMemories,
26
25
  saveMemoryState,
27
26
  writeHistory,
28
27
  estimateTokens,
@@ -144,9 +143,10 @@ function log(message: string): void {
144
143
  console.error(`[agent-runner] ${message}`);
145
144
  }
146
145
 
147
- function classifyError(err: unknown): 'retryable' | null {
146
+ function classifyError(err: unknown): 'retryable' | 'context_overflow' | null {
148
147
  const msg = err instanceof Error ? err.message : String(err);
149
148
  const lower = msg.toLowerCase();
149
+ if (/maximum context length|context.?length.?exceeded|too many tokens/i.test(msg)) return 'context_overflow';
150
150
  if (/429|rate.?limit/.test(lower)) return 'retryable';
151
151
  if (/\b5\d{2}\b/.test(msg) || /server error|bad gateway|unavailable/.test(lower)) return 'retryable';
152
152
  if (/timeout|timed out|deadline/.test(lower)) return 'retryable';
@@ -495,25 +495,6 @@ function loadClaudeNotes(): { group: string | null; global: string | null } {
495
495
  }
496
496
 
497
497
 
498
- function extractQueryFromPrompt(prompt: string): string {
499
- if (!prompt) return '';
500
- const messageMatches = [...prompt.matchAll(/<message[^>]*>([\s\S]*?)<\/message>/g)];
501
- if (messageMatches.length > 0) {
502
- const last = messageMatches[messageMatches.length - 1][1];
503
- return decodeXml(last).trim();
504
- }
505
- return prompt.trim();
506
- }
507
-
508
- function decodeXml(value: string): string {
509
- return value
510
- .replace(/&lt;/g, '<')
511
- .replace(/&gt;/g, '>')
512
- .replace(/&quot;/g, '"')
513
- .replace(/&apos;/g, "'")
514
- .replace(/&amp;/g, '&');
515
- }
516
-
517
498
  // ── Image/Vision support ──────────────────────────────────────────────
518
499
 
519
500
  const MAX_IMAGE_BYTES = 5 * 1024 * 1024; // 5MB per image
@@ -848,10 +829,11 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
848
829
  history = limitHistoryTurns(history, agent.context.maxHistoryTurns);
849
830
  }
850
831
 
851
- // Dynamic context budget: if recentContextTokens is 0 (auto), allocate 60% of context window
832
+ // Dynamic context budget: if recentContextTokens is 0 (auto), allocate 50% of context to
833
+ // conversation history (matches OpenClaw's maxHistoryShare). System prompt gets up to 25%.
852
834
  const effectiveRecentTokens = config.recentContextTokens > 0
853
835
  ? config.recentContextTokens
854
- : Math.floor(config.maxContextTokens * 0.6);
836
+ : Math.floor(config.maxContextTokens * 0.50);
855
837
  const tokenRatio = tokenEstimate.tokensPerChar > 0 ? (0.25 / tokenEstimate.tokensPerChar) : 1;
856
838
  const adjustedRecentTokens = Math.max(1000, Math.floor(effectiveRecentTokens * tokenRatio));
857
839
 
@@ -929,9 +911,16 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
929
911
  });
930
912
  }
931
913
 
914
+ // Cap facts to prevent unbounded growth across compaction cycles.
915
+ // Keep the most recent facts (end of array) since compaction appends new ones.
916
+ const MAX_FACTS = 30;
917
+
932
918
  if (summaryUpdate) {
919
+ const cappedFacts = summaryUpdate.facts.length > MAX_FACTS
920
+ ? summaryUpdate.facts.slice(-MAX_FACTS)
921
+ : summaryUpdate.facts;
933
922
  sessionCtx.state.summary = summaryUpdate.summary;
934
- sessionCtx.state.facts = summaryUpdate.facts;
923
+ sessionCtx.state.facts = cappedFacts;
935
924
  sessionCtx.state.lastSummarySeq = olderMessages.length > 0
936
925
  ? olderMessages[olderMessages.length - 1].seq
937
926
  : sessionCtx.state.lastSummarySeq;
@@ -978,15 +967,9 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
978
967
  // Recompute split after possible compaction
979
968
  ({ recentMessages, olderMessages } = splitRecentHistory(history, adjustedRecentTokens));
980
969
 
981
- const query = extractQueryFromPrompt(prompt);
982
- const sessionRecall = retrieveRelevantMemories({
983
- query,
984
- summary: sessionCtx.state.summary,
985
- facts: sessionCtx.state.facts,
986
- olderMessages,
987
- config
988
- });
989
- const sessionRecallCount = sessionRecall.length;
970
+ // Long-term memory is now tool-based (agent calls mcp__dotclaw__memory_search on demand).
971
+ // Session recall removed — redundant with summary + facts + recent messages.
972
+ const sessionRecallCount = 0;
990
973
  const memoryRecallCount = input.memoryRecall ? input.memoryRecall.length : 0;
991
974
 
992
975
  const sharedPromptDir = fs.existsSync(PROMPTS_DIR) ? PROMPTS_DIR : undefined;
@@ -1036,8 +1019,8 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
1036
1019
  skillCatalog,
1037
1020
  memorySummary: sessionCtx.state.summary,
1038
1021
  memoryFacts: sessionCtx.state.facts,
1039
- sessionRecall,
1040
- longTermRecall: input.memoryRecall || [],
1022
+ sessionRecall: [],
1023
+ longTermRecall: [],
1041
1024
  userProfile: input.userProfile ?? null,
1042
1025
  memoryStats: input.memoryStats,
1043
1026
  availableGroups,
@@ -1100,15 +1083,20 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
1100
1083
 
1101
1084
  try {
1102
1085
  const { instructions: resolvedInstructions, instructionsTokens: resolvedInstructionTokens, contextMessages } = buildContext();
1103
- const resolvedPromptTokens = resolvedInstructionTokens
1086
+ // Apply 1.3x safety margin to account for token estimation inaccuracy.
1087
+ // estimateTokensForModel (bytes * 0.25) underestimates by 30-40% in practice.
1088
+ // OpenClaw uses SAFETY_MARGIN = 1.2; we use 1.3 for extra safety.
1089
+ const TOKEN_SAFETY_MARGIN = 1.3;
1090
+ const resolvedPromptTokens = Math.ceil((resolvedInstructionTokens
1104
1091
  + estimateMessagesTokens(contextMessages, tokenEstimate.tokensPerChar, tokenEstimate.tokensPerMessage)
1105
- + tokenEstimate.tokensPerRequest;
1092
+ + tokenEstimate.tokensPerRequest) * TOKEN_SAFETY_MARGIN);
1106
1093
 
1107
- const safeLimit = Math.floor(config.maxContextTokens * 0.9);
1094
+ // Safe limit: context window minus tool schema reserve (~6K) and output reserve
1095
+ const safeLimit = Math.floor(config.maxContextTokens * 0.75);
1108
1096
  if (resolvedPromptTokens > safeLimit && contextMessages.length > 2) {
1109
- log(`Estimated ${resolvedPromptTokens} tokens exceeds safe limit ${safeLimit}, truncating`);
1097
+ log(`Estimated ${resolvedPromptTokens} tokens (with 1.3x margin) exceeds safe limit ${safeLimit}, truncating`);
1110
1098
  while (contextMessages.length > 2) {
1111
- const currentTokens = resolvedInstructionTokens + estimateMessagesTokens(contextMessages, tokenEstimate.tokensPerChar, tokenEstimate.tokensPerMessage) + tokenEstimate.tokensPerRequest;
1099
+ const currentTokens = Math.ceil((resolvedInstructionTokens + estimateMessagesTokens(contextMessages, tokenEstimate.tokensPerChar, tokenEstimate.tokensPerMessage) + tokenEstimate.tokensPerRequest) * TOKEN_SAFETY_MARGIN);
1112
1100
  if (currentTokens <= safeLimit) break;
1113
1101
  contextMessages.splice(0, 1);
1114
1102
  }
@@ -1261,6 +1249,49 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
1261
1249
  // original messages + model output + tool results (accumulated each round)
1262
1250
  conversationInput = [...conversationInput, ...lastResponse.output, ...toolResults];
1263
1251
 
1252
+ // Phase 1: Soft-trim oversized tool results (like OpenClaw's context-pruning extension).
1253
+ // Replace large tool result content with head+tail, preserving pair integrity.
1254
+ // PROTECT the most recent round's tool results — only trim older ones.
1255
+ const SOFT_TRIM_MAX_CHARS = 4000;
1256
+ const SOFT_TRIM_HEAD = 1500;
1257
+ const SOFT_TRIM_TAIL = 1500;
1258
+ const protectedStart = conversationInput.length - toolResults.length;
1259
+ for (let idx = 0; idx < protectedStart; idx++) {
1260
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1261
+ const anyItem = conversationInput[idx] as any;
1262
+ if (anyItem?.type === 'function_call_output' && typeof anyItem.output === 'string' && anyItem.output.length > SOFT_TRIM_MAX_CHARS) {
1263
+ const orig = anyItem.output;
1264
+ anyItem.output = orig.slice(0, SOFT_TRIM_HEAD) + '\n...\n' + orig.slice(-SOFT_TRIM_TAIL)
1265
+ + `\n[Tool result trimmed: kept first ${SOFT_TRIM_HEAD} and last ${SOFT_TRIM_TAIL} of ${orig.length} chars.]`;
1266
+ }
1267
+ }
1268
+
1269
+ // Phase 2: If still over budget, remove only initial context messages (role/content items
1270
+ // without a 'type' field). NEVER remove function_call or function_call_output items —
1271
+ // orphaning either side of a pair causes API 400 errors.
1272
+ const followupTokenLimit = Math.floor(config.maxContextTokens * 0.6);
1273
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1274
+ const estimateInputTokens = (items: any[]) => items.reduce((sum: number, item: any) => {
1275
+ const content = typeof item === 'string' ? item : JSON.stringify(item);
1276
+ return sum + estimateTokensForModel(content, tokenEstimate.tokensPerChar);
1277
+ }, 0);
1278
+ let followupInputTokens = estimateInputTokens(conversationInput);
1279
+ if (followupInputTokens > followupTokenLimit) {
1280
+ // Only remove initial context messages (no 'type' field = { role, content } format)
1281
+ let trimmed = 0;
1282
+ while (conversationInput.length > 2 && followupInputTokens > followupTokenLimit) {
1283
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1284
+ const first = conversationInput[0] as any;
1285
+ if (first?.type) break; // Hit function_call/function_call_output territory — stop
1286
+ conversationInput.splice(0, 1);
1287
+ trimmed++;
1288
+ }
1289
+ if (trimmed > 0) {
1290
+ followupInputTokens = estimateInputTokens(conversationInput);
1291
+ log(`Tool loop: trimmed ${trimmed} context messages, now ${followupInputTokens} tokens`);
1292
+ }
1293
+ }
1294
+
1264
1295
  // Follow-up call with complete context — model sees the full conversation
1265
1296
  const followupResult = openrouter.callModel({
1266
1297
  model: currentModel,
@@ -1276,6 +1307,54 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
1276
1307
  lastResponse = await followupResult.getResponse();
1277
1308
  } catch (err) {
1278
1309
  const message = err instanceof Error ? err.message : String(err);
1310
+ // Context overflow in tool loop: aggressively trim tool results, then retry.
1311
+ // NEVER splice items — that breaks function_call/function_call_output pairs.
1312
+ if (classifyError(err) === 'context_overflow') {
1313
+ log(`Context overflow in tool loop at step ${step}, hard-clearing old tool results`);
1314
+ // Hard-clear all function_call_output content except the most recent round
1315
+ let cleared = 0;
1316
+ for (let i = 0; i < conversationInput.length - toolResults.length; i++) {
1317
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1318
+ const item = conversationInput[i] as any;
1319
+ if (item?.type === 'function_call_output' && typeof item.output === 'string' && item.output.length > 200) {
1320
+ item.output = '[Old tool result cleared to reduce context size.]';
1321
+ cleared++;
1322
+ }
1323
+ }
1324
+ // Also remove initial context messages (safe — no type field)
1325
+ while (conversationInput.length > 2) {
1326
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1327
+ if ((conversationInput[0] as any)?.type) break;
1328
+ conversationInput.splice(0, 1);
1329
+ }
1330
+ if (cleared > 0) {
1331
+ log(`Hard-cleared ${cleared} tool results, retrying`);
1332
+ try {
1333
+ const retryResult = openrouter.callModel({
1334
+ model: currentModel,
1335
+ instructions: resolvedInstructions,
1336
+ input: conversationInput,
1337
+ tools: schemaTools,
1338
+ maxOutputTokens: resolvedMaxOutputTokens,
1339
+ temperature: config.temperature,
1340
+ reasoning: resolvedReasoning
1341
+ });
1342
+ lastResponse = await retryResult.getResponse();
1343
+ const retryText = extractTextFromApiResponse(lastResponse);
1344
+ if (retryText) {
1345
+ responseText = retryText;
1346
+ writeStreamChunk(retryText);
1347
+ }
1348
+ pendingCalls = extractFunctionCalls(lastResponse);
1349
+ continue;
1350
+ } catch (retryErr) {
1351
+ log(`Context overflow retry failed: ${retryErr instanceof Error ? retryErr.message : String(retryErr)}`);
1352
+ break;
1353
+ }
1354
+ }
1355
+ log(`No tool results to clear, giving up`);
1356
+ break;
1357
+ }
1279
1358
  log(`Follow-up getResponse failed at step ${step}: ${message}`);
1280
1359
  break;
1281
1360
  }
@@ -1306,10 +1385,68 @@ export async function runAgentOnce(input: ContainerInput): Promise<ContainerOutp
1306
1385
  break; // Success
1307
1386
  } catch (err) {
1308
1387
  lastError = err;
1309
- if (classifyError(err)) {
1388
+ const errClass = classifyError(err);
1389
+ // Context overflow: don't try fallback models (same context = same problem).
1390
+ // Emergency compaction: summarize older messages to preserve information,
1391
+ // rebuild system prompt at max trim level, then retry.
1392
+ if (errClass === 'context_overflow' && contextMessages.length > 4) {
1393
+ log(`Context overflow on ${currentModel}, emergency compaction + max trim`);
1394
+ // Split: keep last 4 messages, compact the rest via summary
1395
+ const keepCount = Math.min(4, contextMessages.length);
1396
+ const toCompact = contextMessages.slice(0, contextMessages.length - keepCount);
1397
+ const toKeep = contextMessages.slice(-keepCount);
1398
+ let emergencySummary = '';
1399
+ if (toCompact.length > 0) {
1400
+ try {
1401
+ const compactResult = await updateMemorySummary({
1402
+ openrouter,
1403
+ model: summaryModel,
1404
+ existingSummary: sessionCtx.state.summary,
1405
+ existingFacts: sessionCtx.state.facts,
1406
+ newMessages: toCompact.map((m, i) => ({ role: m.role as 'user' | 'assistant', content: m.content, timestamp: '', seq: i })),
1407
+ maxOutputTokens: config.summaryMaxOutputTokens
1408
+ });
1409
+ if (compactResult) {
1410
+ emergencySummary = compactResult.summary;
1411
+ sessionCtx.state.summary = compactResult.summary;
1412
+ const cappedFacts = compactResult.facts.length > 30 ? compactResult.facts.slice(-30) : compactResult.facts;
1413
+ sessionCtx.state.facts = cappedFacts;
1414
+ saveMemoryState(sessionCtx);
1415
+ log(`Emergency compaction: summarized ${toCompact.length} messages`);
1416
+ }
1417
+ } catch (compactErr) {
1418
+ log(`Emergency compaction failed: ${compactErr instanceof Error ? compactErr.message : String(compactErr)}`);
1419
+ }
1420
+ }
1421
+ // Rebuild system prompt at max trim level (includes updated summary)
1422
+ const minInstructions = resolveInstructions(4);
1423
+ // Build trimmed input: summary context + recent messages
1424
+ const compactedInput = emergencySummary
1425
+ ? [{ role: 'user' as const, content: `[Previous conversation summary: ${emergencySummary}]` }, ...toKeep.map(m => ({ role: m.role, content: m.content }))]
1426
+ : toKeep.map(m => ({ role: m.role, content: m.content }));
1427
+ try {
1428
+ const retryResult = openrouter.callModel({
1429
+ model: currentModel,
1430
+ instructions: minInstructions,
1431
+ input: compactedInput,
1432
+ tools: schemaTools,
1433
+ maxOutputTokens: resolvedMaxOutputTokens,
1434
+ temperature: config.temperature,
1435
+ reasoning: resolvedReasoning
1436
+ });
1437
+ const retryResponse = await retryResult.getResponse();
1438
+ responseText = extractTextFromApiResponse(retryResponse) || '';
1439
+ lastError = null;
1440
+ break;
1441
+ } catch (retryErr) {
1442
+ log(`Context overflow retry after compaction failed: ${retryErr instanceof Error ? retryErr.message : String(retryErr)}`);
1443
+ throw retryErr;
1444
+ }
1445
+ }
1446
+ if (errClass) {
1310
1447
  cooldownModel(currentModel, err);
1311
1448
  if (attempt < modelChain.length - 1) {
1312
- log(`${currentModel} failed (${classifyError(err)}): ${err instanceof Error ? err.message : err}`);
1449
+ log(`${currentModel} failed (${errClass}): ${err instanceof Error ? err.message : err}`);
1313
1450
  continue;
1314
1451
  }
1315
1452
  }
@@ -371,71 +371,6 @@ export function parseSummaryResponse(text: string): { summary: string; facts: st
371
371
  }
372
372
  }
373
373
 
374
- function tokenize(text: string): string[] {
375
- return (text.toLowerCase().match(/[a-z0-9]+/g) || []).filter(token => token.length > 1);
376
- }
377
-
378
- function scoreCandidate(candidate: string, queryTokens: string[], weight: number): number {
379
- const candidateTokens = tokenize(candidate);
380
- if (candidateTokens.length === 0 || queryTokens.length === 0) return 0;
381
- const tokenSet = new Set(candidateTokens);
382
- let overlap = 0;
383
- for (const token of queryTokens) {
384
- if (tokenSet.has(token)) overlap += 1;
385
- }
386
- if (overlap === 0) return 0;
387
- return (overlap / Math.sqrt(candidateTokens.length)) * weight;
388
- }
389
-
390
- export function retrieveRelevantMemories(params: {
391
- query: string;
392
- summary: string;
393
- facts: string[];
394
- olderMessages: Message[];
395
- config: MemoryConfig;
396
- }): string[] {
397
- const queryTokens = tokenize(params.query);
398
- if (queryTokens.length === 0) return [];
399
-
400
- const candidates: Array<{ text: string; score: number }> = [];
401
-
402
- if (params.summary) {
403
- const summaryLines = params.summary.split('\n').map(line => line.trim()).filter(Boolean);
404
- for (const line of summaryLines) {
405
- const score = scoreCandidate(line, queryTokens, 1.4);
406
- if (score > 0) candidates.push({ text: line, score });
407
- }
408
- }
409
-
410
- for (const fact of params.facts) {
411
- const score = scoreCandidate(fact, queryTokens, 2.0);
412
- if (score > 0) candidates.push({ text: fact, score });
413
- }
414
-
415
- for (const msg of params.olderMessages.slice(-50)) {
416
- const snippet = msg.content.length > 300 ? `${msg.content.slice(0, 300)}...` : msg.content;
417
- const score = scoreCandidate(snippet, queryTokens, 1.0);
418
- if (score > 0) candidates.push({ text: snippet, score });
419
- }
420
-
421
- candidates.sort((a, b) => b.score - a.score);
422
-
423
- // Quality gate: filter out low-scoring candidates to prevent noise injection
424
- const MIN_SESSION_RECALL_SCORE = 0.5;
425
- const filtered = candidates.filter(c => c.score >= MIN_SESSION_RECALL_SCORE);
426
-
427
- const results: string[] = [];
428
- let tokens = 0;
429
- for (const candidate of filtered) {
430
- if (results.length >= params.config.memoryMaxResults) break;
431
- const nextTokens = estimateTokens(candidate.text);
432
- if (tokens + nextTokens > params.config.memoryMaxTokens) break;
433
- results.push(candidate.text);
434
- tokens += nextTokens;
435
- }
436
- return results;
437
- }
438
-
439
374
  export interface ContextPruningConfig {
440
375
  softTrimMaxChars: number;
441
376
  softTrimHeadChars: number;
@@ -475,10 +410,25 @@ export function pruneContextMessages(
475
410
  }
476
411
 
477
412
  /**
478
- * Limit conversation history to the last N messages.
413
+ * Limit conversation history by counting user turns (not total messages).
414
+ * maxTurns=40 means keep the last 40 user messages plus all their associated
415
+ * assistant replies — roughly 80 messages total.
479
416
  * Preserves chronological order.
480
417
  */
481
418
  export function limitHistoryTurns(messages: Message[], maxTurns: number): Message[] {
482
- if (maxTurns <= 0 || messages.length <= maxTurns) return messages;
483
- return messages.slice(-maxTurns);
419
+ if (maxTurns <= 0) return messages;
420
+ // Count user turns from the end
421
+ let userTurnsSeen = 0;
422
+ let cutoff = 0;
423
+ for (let i = messages.length - 1; i >= 0; i--) {
424
+ if (messages[i].role === 'user') {
425
+ userTurnsSeen++;
426
+ if (userTurnsSeen > maxTurns) {
427
+ cutoff = i + 1;
428
+ break;
429
+ }
430
+ }
431
+ }
432
+ if (cutoff === 0) return messages;
433
+ return messages.slice(cutoff);
484
434
  }
@@ -160,37 +160,30 @@ function buildToolGuidanceSection(params: SystemPromptParams): string {
160
160
 
161
161
  function buildMemorySection(params: SystemPromptParams): string {
162
162
  const parts: string[] = [];
163
- const hasAny = params.memorySummary || params.memoryFacts.length > 0 ||
164
- params.longTermRecall.length > 0 || params.userProfile;
165
-
166
- if (hasAny) {
167
- parts.push('The following memories may or may not be relevant to the current conversation. Use them only if they directly answer the user\'s question.');
168
- if (params.memorySummary) {
169
- parts.push('Long-term memory summary:');
170
- parts.push(params.memorySummary.slice(0, MEMORY_SUMMARY_MAX_CHARS));
171
- }
172
- if (params.memoryFacts.length > 0) {
173
- parts.push('Long-term facts:');
174
- parts.push(params.memoryFacts.map(f => `- ${f}`).join('\n'));
175
- }
176
- if (params.userProfile) {
177
- parts.push('User profile:');
178
- parts.push(params.userProfile);
179
- }
180
- if (params.longTermRecall.length > 0) {
181
- parts.push('What you remember about the user (long-term):');
182
- parts.push(params.longTermRecall.map(item => `- ${item}`).join('\n'));
183
- }
184
- if (params.memoryStats) {
185
- parts.push(`Memory stats: Total: ${params.memoryStats.total}, User: ${params.memoryStats.user}, Group: ${params.memoryStats.group}, Global: ${params.memoryStats.global}`);
186
- }
187
- } else {
188
- parts.push('No long-term memory available yet.');
163
+
164
+ // Session-level context: summary and facts from the current conversation.
165
+ // These are essential for understanding the current thread.
166
+ if (params.memorySummary) {
167
+ parts.push('Conversation summary (this session):');
168
+ parts.push(params.memorySummary.slice(0, MEMORY_SUMMARY_MAX_CHARS));
169
+ }
170
+ if (params.memoryFacts.length > 0) {
171
+ parts.push('Key facts (this session):');
172
+ parts.push(params.memoryFacts.map(f => `- ${f}`).join('\n'));
189
173
  }
190
174
 
191
- if (params.sessionRecall.length > 0) {
192
- parts.push('Recent conversation context:');
193
- parts.push(params.sessionRecall.map(item => `- ${item}`).join('\n'));
175
+ // User profile stays pre-injected — identity and preferences should always be available.
176
+ if (params.userProfile) {
177
+ parts.push('User profile:');
178
+ parts.push(params.userProfile);
179
+ }
180
+
181
+ // Long-term memory is now tool-based: agent searches on demand instead of pre-injection.
182
+ // This prevents context bloat from irrelevant memories and lets the agent decide what's needed.
183
+ parts.push('Long-term memory: Use the mcp__dotclaw__memory_search tool to recall information from past conversations, stored preferences, notes, and knowledge. Search BEFORE answering questions about prior decisions, dates, people, projects, or anything you don\'t see in the conversation above.');
184
+
185
+ if (params.memoryStats && params.memoryStats.total > 0) {
186
+ parts.push(`Memory store: ${params.memoryStats.total} entries available (search with mcp__dotclaw__memory_search).`);
194
187
  }
195
188
 
196
189
  return parts.join('\n');
@@ -306,9 +299,9 @@ export function buildSystemPrompt(params: SystemPromptParams): string {
306
299
  // Trim level 1+: drop prompt packs
307
300
  const packBlocks = trimLevel >= 1 ? [] : buildPromptPackSections(params);
308
301
 
309
- // Trim level 3+: reduce memory section (drop session recall, limit long-term recall)
302
+ // Trim level 3+: reduce memory section (drop summary to save space)
310
303
  const memoryParams = trimLevel >= 3
311
- ? { ...params, sessionRecall: [], longTermRecall: params.longTermRecall.slice(0, 2) }
304
+ ? { ...params, memorySummary: params.memorySummary ? params.memorySummary.slice(0, 500) : '', memoryFacts: params.memoryFacts.slice(0, 5) }
312
305
  : params;
313
306
 
314
307
  const sections = [
@@ -196,7 +196,7 @@ const DEFAULT_CONFIG = {
196
196
  context: {
197
197
  maxContextTokens: 128_000,
198
198
  compactionTriggerTokens: 120_000,
199
- recentContextTokens: 8000,
199
+ recentContextTokens: 0, // 0 = auto: 50% of model context window
200
200
  summaryUpdateEveryMessages: 20,
201
201
  maxOutputTokens: 8192,
202
202
  summaryMaxOutputTokens: 2048,
@@ -207,11 +207,11 @@ const DEFAULT_CONFIG = {
207
207
  softTrimMaxChars: 4_000,
208
208
  softTrimHeadChars: 1_500,
209
209
  softTrimTailChars: 1_500,
210
- keepLastAssistant: 3,
210
+ keepLastAssistant: 10,
211
211
  },
212
212
  },
213
213
  memory: {
214
- maxResults: 6,
214
+ maxResults: 4,
215
215
  maxTokens: 2000,
216
216
  extraction: {
217
217
  enabled: true,
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-config.js","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,UAAU,EACV,WAAW,EACX,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA2T5C,SAAS,wBAAwB;IAC/B,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,4BAA4B,GAAG,OAAO,CAAC;AAC7C,MAAM,mCAAmC,GAAG,IAAI,CAAC,GAAG,CAAC,4BAA4B,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC;AAErG,MAAM,cAAc,GAAkB;IACpC,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM;QAChB,YAAY,EAAE,sBAAsB;QACpC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ;QAC5E,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE;YACT,cAAc,EAAE,MAAM;YACtB,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,MAAM;YACvB,cAAc,EAAE,SAAS;YACzB,aAAa,EAAE,OAAO;SACvB;QACD,GAAG,EAAE;YACH,cAAc,EAAE,KAAK;SACtB;QACD,SAAS,EAAE;YACT,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,4BAA4B;YACvC,cAAc,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;YAChC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,GAAG;YACjB,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,EAAE;YACR,YAAY,EAAE,KAAK;YACnB,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,MAAM,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,UAAU,EAAE,EAAE;YACd,yBAAyB,EAAE,KAAK;YAChC,MAAM,EAAE;gBACN,iBAAiB,EAAE,MAAM;gBACzB,qBAAqB,EAAE,MAAM;gBAC7B,aAAa,EAAE,MAAM;aACtB;SACF;QACD,WAAW,EAAE;YACX,SAAS,EAAE,CAAC;YACZ,cAAc,EAAE,CAAC;YACjB,SAAS,EAAE,IAAI;SAChB;QACD,cAAc,EAAE,WAAW;QAC3B,KAAK,EAAE;YACL,GAAG,EAAE,UAAU;YACf,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,EAAE;SAClB;QACD,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;SAC/B;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,EAAE;YAChB,gBAAgB,EAAE,OAAO;YACzB,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,MAAM;YAClB,qBAAqB,EAAE,IAAI;SAC5B;QACD,OAAO,EAAE;YACP,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd;QACD,SAAS,EAAE;YACT,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;SACX;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;aACf;YACD,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,+BAA+B;gBACtC,UAAU,EAAE,yBAAyB;gBACrC,SAAS,EAAE,CAAC;gBACZ,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,OAAO;gBACnB,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,OAAO;gBACxB,aAAa,EAAE,GAAG;gBAClB,iBAAiB,EAAE,8BAA8B;gBACjD,iBAAiB,EAAE,uCAAuC;gBAC1D,kBAAkB,EAAE,SAAS;aAC9B;YACD,WAAW,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,wBAAwB,EAAE,GAAG;gBAC7B,aAAa,EAAE,IAAI;gBACnB,kBAAkB,EAAE,CAAC;gBACrB,cAAc,EAAE,IAAI;aACrB;YACD,sBAAsB,EAAE,OAAO;SAChC;QACD,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,yBAAyB;gBAChC,OAAO,EAAE,8BAA8B;gBACvC,QAAQ,EAAE,EAAE;gBACZ,cAAc,EAAE,GAAG;aACpB;YACD,GAAG,EAAE;gBACH,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,EAAE;gBACX,YAAY,EAAE,kBAAkB;aACjC;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,mCAAmC;YACrD,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,IAAI;SACvB;QACD,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,IAAI;SACvB;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,EAAE;SACb;QACD,SAAS,EAAE;YACT,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,SAAS;YACrB,WAAW,EAAE,MAAM;SACpB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,EAAE;YACjB,eAAe,EAAE,CAAC;YAClB,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,GAAG;YAChB,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,IAAI;SACtB;QACD,SAAS,EAAE;YACT,OAAO,EAAE,IAAI;YACb,oBAAoB,EAAE,GAAG;YACzB,cAAc,EAAE,GAAG;YACnB,aAAa,EAAE,IAAI;SACpB;QACD,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,EAAE;SACV;QACD,WAAW,EAAE;YACX,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,iBAAiB;SACxB;QACD,aAAa,EAAE;YACb,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;SACpB;KACF;IACD,KAAK,EAAE;QACL,aAAa,EAAE,MAAM;QACrB,UAAU,EAAE;YACV,SAAS,EAAE,OAAO;YAClB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,uCAAuC;YAChD,QAAQ,EAAE,SAAS;SACpB;QACD,WAAW,EAAE;YACX,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC;YACX,UAAU,EAAE,GAAG;SAChB;QACD,OAAO,EAAE;YACP,gBAAgB,EAAE,OAAO;YACzB,uBAAuB,EAAE,OAAO;YAChC,mBAAmB,EAAE,IAAI;YACzB,0BAA0B,EAAE,EAAE;YAC9B,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,IAAI;YAC5B,WAAW,EAAE,GAAG;YAChB,uBAAuB,EAAE,IAAI;YAC7B,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE;gBACd,gBAAgB,EAAE,KAAK;gBACvB,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,CAAC;aACrB;SACF;QACD,MAAM,EAAE;YACN,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,IAAI;YACf,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,CAAC;gBACd,eAAe,EAAE,IAAI;aACtB;YACD,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,KAAK;SACxB;QACD,MAAM,EAAE;YACN,OAAO,EAAE,wBAAwB;YACjC,MAAM,EAAE,wBAAwB;SACjC;QACD,KAAK,EAAE;YACL,YAAY,EAAE,GAAG;YACjB,gBAAgB,EAAE,OAAO;YACzB,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE;gBACR,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;gBACrC,QAAQ,EAAE,OAAO;gBACjB,SAAS,EAAE,MAAM;aAClB;YACD,SAAS,EAAE;gBACT,SAAS,EAAE,MAAM;aAClB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,OAAO;gBAClB,gBAAgB,EAAE,OAAO;aAC1B;YACD,gBAAgB,EAAE,SAAS;YAC3B,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE;gBACR,QAAQ,EAAE,OAAO;gBACjB,aAAa,EAAE,MAAM;aACtB;YACD,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;gBACb,aAAa,EAAE,MAAM;gBACrB,WAAW,EAAE,EAAE;gBACf,aAAa,EAAE,KAAK;gBACpB,aAAa,EAAE,KAAK;aACrB;YACD,WAAW,EAAE;gBACX,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,MAAM;gBAChB,eAAe,EAAE,GAAG;gBACpB,KAAK,EAAE,CAAC,UAAU,CAAC;aACpB;SACF;QACD,GAAG,EAAE;YACH,gBAAgB,EAAE,MAAM;YACxB,aAAa,EAAE,GAAG;SACnB;QACD,aAAa,EAAE;YACb,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;SACpB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,kBAAkB;SACjC;QACD,OAAO,EAAE;YACP,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,iBAAiB,EAAE,EAAE;SACtB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,mBAAmB,EAAE,MAAM;SAC5B;QACD,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACN,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,EAAE;YACb,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;SACrB;KACF;IACD,KAAK,EAAE;QACL,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,CAAC;QAChB,gBAAgB,EAAE,IAAI;KACvB;CACF,CAAC;AAEF,SAAS,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAE,KAAa;IACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,oBAAoB,KAAK,MAAM,KAAK,4BAA4B,GAAG,EAAE,CAAC,CAAC;QACpF,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAqB;IAClD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;IAEtB,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,+BAA+B,CAAC,CAAC;IACzG,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACtG,CAAC,CAAC,SAAS,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,EAAE,GAAG,EAAE,gCAAgC,CAAC,CAAC;IAC3G,CAAC,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,8BAA8B,CAAC,CAAC;IAEtG,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAC1F,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,SAAS,CAAC,IAAI,sCAAsC,CAAC,CAAC;QAChH,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC;IAC9B,CAAC;IACD,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,EAAE,yCAAyC,CAAC,CAAC;IACvI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,EAAE,IAAI,EAAE,6CAA6C,CAAC,CAAC;IAEnJ,cAAc;IACd,CAAC,CAAC,WAAW,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,EAAE,4BAA4B,CAAC,CAAC;IAE7F,cAAc;IACd,CAAC,CAAC,WAAW,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAErG,gBAAgB;IAChB,CAAC,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,EAAE,iCAAiC,CAAC,CAAC;IAC5G,CAAC,CAAC,YAAY,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAEnG,UAAU;IACV,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACnG,CAAC,CAAC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,EAAE,2BAA2B,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACtG,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAEnG,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,EAAE,+BAA+B,CAAC,CAAC;IACxG,CAAC,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,EAAE,8BAA8B,CAAC,CAAC;IAErG,gBAAgB;IAChB,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,UAAU;IACV,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACrE,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;IAC3G,CAAC;IAED,QAAQ;IACR,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC5F,MAAM,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAEvG,cAAc;IACd,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QAC3E,CAAC,CAAC,YAAY,GAAG,sBAAsB,CAAC;IAC1C,CAAC;IAED,YAAY;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,4BAA4B,CAAC,CAAC;IACpH,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,EAAE,yBAAyB,CAAC,CAAC;AAC3G,CAAC;AAED,IAAI,YAAY,GAAyB,IAAI,CAAC;AAC9C,IAAI,UAAU,GAAkB,IAAI,CAAC;AACrC,IAAI,WAAW,GAAkB,IAAI,CAAC;AAEtC,SAAS,WAAW,CAAI,KAAQ;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAM,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,OAAO,QAAQ,CAAC,gBAAgB,KAAK,QAAQ,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAI,IAAO,EAAE,SAAkB,EAAE,UAAU,GAAG,EAAE;IACpE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAA4B,CAAC;IAC5D,MAAM,OAAO,GAAG,IAA+B,CAAC;IAChD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3D,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACtD,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,OAAO,OAAO,EAAE,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,oBAAoB,QAAQ,cAAc,OAAO,OAAO,SAAS,OAAO,KAAK,kBAAkB,CAAC,CAAC;YAC9G,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,OAAO,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAgB,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,MAAW,CAAC;AACrB,CAAC;AAED,SAAS,QAAQ,CAAC,QAAgB;IAChC,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,wBAAwB,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;IACrD,IAAI,YAAY,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC/C,kDAAkD;QAClD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACrC,IAAI,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBACzD,OAAO,YAAY,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;YACxC,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAChG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC;IACtG,CAAC;IACD,wEAAwE;IACxE,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAI,QAAoC,CAAC,IAAI,CAAC;QACxD,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;YACrH,CAAC;YACD,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,aAAa,CAAE,IAAI,CAAC,OAAmC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrG,OAAO,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAC;YAC/G,CAAC;QACH,CAAC;IACH,CAAC;IACD,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC9B,YAAY,GAAG,MAAM,CAAC;IACtB,UAAU,GAAG,WAAW,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACrD,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"runtime-config.js","sourceRoot":"","sources":["../src/runtime-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,UAAU,EACV,WAAW,EACX,iBAAiB,GAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA2T5C,SAAS,wBAAwB;IAC/B,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;IAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,cAAc,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,4BAA4B,GAAG,OAAO,CAAC;AAC7C,MAAM,mCAAmC,GAAG,IAAI,CAAC,GAAG,CAAC,4BAA4B,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC;AAErG,MAAM,cAAc,GAAkB;IACpC,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM;QAChB,YAAY,EAAE,sBAAsB;QACpC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ;QAC5E,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE;YACT,cAAc,EAAE,MAAM;YACtB,cAAc,EAAE,CAAC;YACjB,eAAe,EAAE,MAAM;YACvB,cAAc,EAAE,SAAS;YACzB,aAAa,EAAE,OAAO;SACvB;QACD,GAAG,EAAE;YACH,cAAc,EAAE,KAAK;SACtB;QACD,SAAS,EAAE;YACT,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,4BAA4B;YACvC,cAAc,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;YAChC,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,YAAY,EAAE,GAAG;YACjB,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,EAAE;YACV,IAAI,EAAE,EAAE;YACR,YAAY,EAAE,KAAK;YACnB,SAAS,EAAE,KAAK;YAChB,MAAM,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,MAAM,EAAE,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,UAAU,EAAE,EAAE;YACd,yBAAyB,EAAE,KAAK;YAChC,MAAM,EAAE;gBACN,iBAAiB,EAAE,MAAM;gBACzB,qBAAqB,EAAE,MAAM;gBAC7B,aAAa,EAAE,MAAM;aACtB;SACF;QACD,WAAW,EAAE;YACX,SAAS,EAAE,CAAC;YACZ,cAAc,EAAE,CAAC;YACjB,SAAS,EAAE,IAAI;SAChB;QACD,cAAc,EAAE,WAAW;QAC3B,KAAK,EAAE;YACL,GAAG,EAAE,UAAU;YACf,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,EAAE;SAClB;QACD,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;SAC/B;QACD,YAAY,EAAE;YACZ,aAAa,EAAE,IAAI;YACnB,YAAY,EAAE,EAAE;YAChB,gBAAgB,EAAE,OAAO;YACzB,UAAU,EAAE,CAAC;YACb,WAAW,EAAE,KAAK;YAClB,UAAU,EAAE,MAAM;YAClB,qBAAqB,EAAE,IAAI;SAC5B;QACD,OAAO,EAAE;YACP,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,IAAI;SACd;QACD,SAAS,EAAE;YACT,OAAO,EAAE,IAAI;YACb,IAAI,EAAE,IAAI;SACX;QACD,MAAM,EAAE;YACN,MAAM,EAAE;gBACN,UAAU,EAAE,CAAC;gBACb,SAAS,EAAE,IAAI;gBACf,QAAQ,EAAE,IAAI;aACf;YACD,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,+BAA+B;gBACtC,UAAU,EAAE,yBAAyB;gBACrC,SAAS,EAAE,CAAC;gBACZ,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,EAAE;gBACjB,aAAa,EAAE,IAAI;gBACnB,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,OAAO;gBACnB,UAAU,EAAE,IAAI;gBAChB,eAAe,EAAE,OAAO;gBACxB,aAAa,EAAE,GAAG;gBAClB,iBAAiB,EAAE,8BAA8B;gBACjD,iBAAiB,EAAE,uCAAuC;gBAC1D,kBAAkB,EAAE,SAAS;aAC9B;YACD,WAAW,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,wBAAwB,EAAE,GAAG;gBAC7B,aAAa,EAAE,IAAI;gBACnB,kBAAkB,EAAE,CAAC;gBACrB,cAAc,EAAE,IAAI;aACrB;YACD,sBAAsB,EAAE,OAAO;SAChC;QACD,KAAK,EAAE;YACL,aAAa,EAAE;gBACb,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,yBAAyB;gBAChC,OAAO,EAAE,8BAA8B;gBACvC,QAAQ,EAAE,EAAE;gBACZ,cAAc,EAAE,GAAG;aACpB;YACD,GAAG,EAAE;gBACH,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,UAAU;gBACjB,OAAO,EAAE,EAAE;gBACX,YAAY,EAAE,kBAAkB;aACjC;SACF;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,mCAAmC;YACrD,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,IAAI;SACvB;QACD,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,IAAI;SACvB;QACD,QAAQ,EAAE;YACR,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,UAAU,EAAE,MAAM;YAClB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,EAAE;SACb;QACD,SAAS,EAAE;YACT,OAAO,EAAE,KAAK;YACd,UAAU,EAAE,SAAS;YACrB,WAAW,EAAE,MAAM;SACpB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,sBAAsB;YAC7B,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,EAAE;YACjB,eAAe,EAAE,CAAC;YAClB,YAAY,EAAE,GAAG;YACjB,WAAW,EAAE,GAAG;YAChB,gBAAgB,EAAE,CAAC;YACnB,eAAe,EAAE,IAAI;SACtB;QACD,SAAS,EAAE;YACT,OAAO,EAAE,IAAI;YACb,oBAAoB,EAAE,GAAG;YACzB,cAAc,EAAE,GAAG;YACnB,aAAa,EAAE,IAAI;SACpB;QACD,OAAO,EAAE;YACP,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,EAAE;SACV;QACD,WAAW,EAAE;YACX,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,iBAAiB;SACxB;QACD,aAAa,EAAE;YACb,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;SACpB;KACF;IACD,KAAK,EAAE;QACL,aAAa,EAAE,MAAM;QACrB,UAAU,EAAE;YACV,SAAS,EAAE,OAAO;YAClB,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,uCAAuC;YAChD,QAAQ,EAAE,SAAS;SACpB;QACD,WAAW,EAAE;YACX,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;YACd,QAAQ,EAAE,CAAC;YACX,UAAU,EAAE,GAAG;SAChB;QACD,OAAO,EAAE;YACP,gBAAgB,EAAE,OAAO;YACzB,uBAAuB,EAAE,OAAO;YAChC,mBAAmB,EAAE,CAAC,EAAE,wCAAwC;YAChE,0BAA0B,EAAE,EAAE;YAC9B,eAAe,EAAE,IAAI;YACrB,sBAAsB,EAAE,IAAI;YAC5B,WAAW,EAAE,GAAG;YAChB,uBAAuB,EAAE,IAAI;YAC7B,eAAe,EAAE,EAAE;YACnB,cAAc,EAAE;gBACd,gBAAgB,EAAE,KAAK;gBACvB,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,KAAK;gBACxB,iBAAiB,EAAE,EAAE;aACtB;SACF;QACD,MAAM,EAAE;YACN,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,IAAI;YACf,UAAU,EAAE;gBACV,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,IAAI;gBACX,WAAW,EAAE,CAAC;gBACd,eAAe,EAAE,IAAI;aACtB;YACD,WAAW,EAAE,IAAI;YACjB,gBAAgB,EAAE,KAAK;SACxB;QACD,MAAM,EAAE;YACN,OAAO,EAAE,wBAAwB;YACjC,MAAM,EAAE,wBAAwB;SACjC;QACD,KAAK,EAAE;YACL,YAAY,EAAE,GAAG;YACjB,gBAAgB,EAAE,OAAO;YACzB,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;YACpB,QAAQ,EAAE;gBACR,YAAY,EAAE,IAAI;gBAClB,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;gBACrC,QAAQ,EAAE,OAAO;gBACjB,SAAS,EAAE,MAAM;aAClB;YACD,SAAS,EAAE;gBACT,SAAS,EAAE,MAAM;aAClB;YACD,IAAI,EAAE;gBACJ,SAAS,EAAE,OAAO;gBAClB,gBAAgB,EAAE,OAAO;aAC1B;YACD,gBAAgB,EAAE,SAAS;YAC3B,MAAM,EAAE;gBACN,IAAI,EAAE,EAAE;gBACR,QAAQ,EAAE,OAAO;gBACjB,aAAa,EAAE,MAAM;aACtB;YACD,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;gBACb,aAAa,EAAE,MAAM;gBACrB,WAAW,EAAE,EAAE;gBACf,aAAa,EAAE,KAAK;gBACpB,aAAa,EAAE,KAAK;aACrB;YACD,WAAW,EAAE;gBACX,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,MAAM;gBAChB,eAAe,EAAE,GAAG;gBACpB,KAAK,EAAE,CAAC,UAAU,CAAC;aACpB;SACF;QACD,GAAG,EAAE;YACH,gBAAgB,EAAE,MAAM;YACxB,aAAa,EAAE,GAAG;SACnB;QACD,aAAa,EAAE;YACb,aAAa,EAAE,IAAI;YACnB,gBAAgB,EAAE,CAAC;YACnB,gBAAgB,EAAE,CAAC;SACpB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,UAAU;YACjB,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,kBAAkB;SACjC;QACD,OAAO,EAAE;YACP,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,MAAM;YACjB,iBAAiB,EAAE,EAAE;SACtB;QACD,GAAG,EAAE;YACH,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,EAAE;YACX,mBAAmB,EAAE,MAAM;SAC5B;QACD,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;SACjB;QACD,MAAM,EAAE;YACN,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,EAAE;YACb,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,IAAI;SACrB;KACF;IACD,KAAK,EAAE;QACL,OAAO,EAAE,KAAK;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,CAAC;QAChB,gBAAgB,EAAE,IAAI;KACvB;CACF,CAAC;AAEF,SAAS,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAE,KAAa;IACzD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,GAAG,EAAE,CAAC;QACxE,OAAO,CAAC,IAAI,CAAC,oBAAoB,KAAK,MAAM,KAAK,4BAA4B,GAAG,EAAE,CAAC,CAAC;QACpF,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAqB;IAClD,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;IAEtB,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,+BAA+B,CAAC,CAAC;IACzG,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACtG,CAAC,CAAC,SAAS,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,eAAe,EAAE,GAAG,EAAE,gCAAgC,CAAC,CAAC;IAC3G,CAAC,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,8BAA8B,CAAC,CAAC;IAEtG,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,0BAA0B,CAAC,CAAC;IAC1F,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;QACtE,OAAO,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,SAAS,CAAC,IAAI,sCAAsC,CAAC,CAAC;QAChH,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC;IAC9B,CAAC;IACD,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB,EAAE,IAAI,EAAE,yCAAyC,CAAC,CAAC;IACvI,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB,EAAE,IAAI,EAAE,6CAA6C,CAAC,CAAC;IAEnJ,cAAc;IACd,CAAC,CAAC,WAAW,CAAC,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC,EAAE,4BAA4B,CAAC,CAAC;IAE7F,cAAc;IACd,CAAC,CAAC,WAAW,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,6BAA6B,CAAC,CAAC;IAErG,gBAAgB;IAChB,CAAC,CAAC,YAAY,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,EAAE,iCAAiC,CAAC,CAAC;IAC5G,CAAC,CAAC,YAAY,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAEnG,UAAU;IACV,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACnG,CAAC,CAAC,OAAO,CAAC,YAAY,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,EAAE,2BAA2B,CAAC,CAAC;IAC1F,CAAC,CAAC,OAAO,CAAC,gBAAgB,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,EAAE,+BAA+B,CAAC,CAAC;IACtG,CAAC,CAAC,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,EAAE,8BAA8B,CAAC,CAAC;IAEnG,YAAY;IACZ,CAAC,CAAC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,cAAc,EAAE,GAAG,EAAE,+BAA+B,CAAC,CAAC;IACxG,CAAC,CAAC,SAAS,CAAC,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,EAAE,8BAA8B,CAAC,CAAC;IAErG,gBAAgB;IAChB,IAAI,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,UAAU;IACV,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACrE,IAAI,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;IAC3G,CAAC;IAED,QAAQ;IACR,MAAM,CAAC,KAAK,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,EAAE,qBAAqB,CAAC,CAAC;IAC5F,MAAM,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE,GAAG,EAAE,wBAAwB,CAAC,CAAC;IAEvG,cAAc;IACd,IAAI,CAAC,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QAC3E,CAAC,CAAC,YAAY,GAAG,sBAAsB,CAAC;IAC1C,CAAC;IAED,YAAY;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,IAAI,EAAE,4BAA4B,CAAC,CAAC;IACpH,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAE,EAAE,yBAAyB,CAAC,CAAC;AAC3G,CAAC;AAED,IAAI,YAAY,GAAyB,IAAI,CAAC;AAC9C,IAAI,UAAU,GAAkB,IAAI,CAAC;AACrC,IAAI,WAAW,GAAkB,IAAI,CAAC;AAEtC,SAAS,WAAW,CAAI,KAAQ;IAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAM,CAAC;AAChD,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAc;IAChD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACxC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,OAAO,QAAQ,CAAC,gBAAgB,KAAK,QAAQ,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAI,IAAO,EAAE,SAAkB,EAAE,UAAU,GAAG,EAAE;IACpE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC;QAAE,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAA4B,CAAC;IAC5D,MAAM,OAAO,GAAG,IAA+B,CAAC;IAChD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QACrD,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC3D,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACtD,SAAS;QACX,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACpB,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,OAAO,OAAO,EAAE,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,oBAAoB,QAAQ,cAAc,OAAO,OAAO,SAAS,OAAO,KAAK,kBAAkB,CAAC,CAAC;YAC9G,SAAS;QACX,CAAC;QACD,IAAI,OAAO,KAAK,KAAK,OAAO,OAAO,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,GAAG,KAAgB,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,MAAW,CAAC;AACrB,CAAC;AAED,SAAS,QAAQ,CAAC,QAAgB;IAChC,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAC1C,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB;IAClC,OAAO,wBAAwB,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,IAAI,CAAC;IACrD,IAAI,YAAY,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;QAC/C,kDAAkD;QAClD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,wBAAwB,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACrC,IAAI,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;gBACzD,OAAO,YAAY,CAAC;YACtB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wCAAwC;YACxC,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IAChG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC;IACtG,CAAC;IACD,wEAAwE;IACxE,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAI,QAAoC,CAAC,IAAI,CAAC;QACxD,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,IAAI,CAAC,oGAAoG,CAAC,CAAC;YACrH,CAAC;YACD,IAAI,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,aAAa,CAAE,IAAI,CAAC,OAAmC,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrG,OAAO,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAC;YAC/G,CAAC;QACH,CAAC;IACH,CAAC;IACD,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC9B,YAAY,GAAG,MAAM,CAAC;IACtB,UAAU,GAAG,WAAW,CAAC;IACzB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,CAAC;QACrD,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-scheduler.d.ts","sourceRoot":"","sources":["../src/task-scheduler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAyG5D,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAE,MAAmB,GAAG;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAsC1K;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,gBAAgB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACxD,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D;AAmMD,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAiJ9I;AAKD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAgCpE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
1
+ {"version":3,"file":"task-scheduler.d.ts","sourceRoot":"","sources":["../src/task-scheduler.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA0G5D,wBAAgB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,GAAE,MAAmB,GAAG;IAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAyC1K;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,gBAAgB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACxD,WAAW,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,UAAU,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D;AA0MD,wBAAsB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAoJ9I;AAKD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAgCpE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAExC"}
@@ -10,6 +10,7 @@ import { routeRequest } from './request-router.js';
10
10
  import { writeTrace } from './trace-writer.js';
11
11
  import { logger } from './logger.js';
12
12
  import { emitHook } from './hooks.js';
13
+ import { humanizeError } from './error-messages.js';
13
14
  const runtime = loadRuntimeConfig();
14
15
  const TASK_MAX_RETRIES = runtime.host.scheduler.taskMaxRetries;
15
16
  const TASK_RETRY_BASE_MS = runtime.host.scheduler.taskRetryBaseMs;
@@ -93,7 +94,7 @@ function buildTaskNotificationMessage(params) {
93
94
  ? `Retrying (attempt ${params.retryCount}).`
94
95
  : null;
95
96
  const body = params.error
96
- ? summarizeTaskText(params.error, 2000)
97
+ ? humanizeError(params.error)
97
98
  : (summarizeTaskText(params.result, 3000) || 'Done.');
98
99
  return [
99
100
  `Your task ${taskLabel} ${statusLabel}.`,
@@ -136,6 +137,10 @@ export function computeNextRun(task, error, nowMs = Date.now()) {
136
137
  const jitter = baseBackoff * (0.7 + Math.random() * 0.6);
137
138
  nextRun = new Date(nowMs + jitter).toISOString();
138
139
  }
140
+ else {
141
+ // Circuit breaker: max retries exhausted → pause the task
142
+ nextRun = null;
143
+ }
139
144
  }
140
145
  else {
141
146
  retryCount = 0;
@@ -193,8 +198,12 @@ async function runTask(task, deps) {
193
198
  let error = null;
194
199
  let output = null;
195
200
  let context = null;
201
+ // Recurring tasks (cron/interval) use fresh sessions to prevent unbounded
202
+ // session history accumulation. Only one-off tasks may use the group session.
203
+ const isRecurring = task.schedule_type === 'cron' || task.schedule_type === 'interval';
204
+ const useGroupSession = task.context_mode === 'group' && !isRecurring;
196
205
  const sessions = deps.getSessions();
197
- const sessionId = task.context_mode === 'group' ? sessions[task.group_folder] : undefined;
206
+ const sessionId = useGroupSession ? sessions[task.group_folder] : undefined;
198
207
  const stateBlock = task.state_json ? `[TASK STATE]
199
208
  ${task.state_json}
200
209
  ` : '';
@@ -218,7 +227,7 @@ ${task.prompt}` : task.prompt;
218
227
  recallMaxResults: routingDecision.recallMaxResults,
219
228
  recallMaxTokens: routingDecision.recallMaxTokens,
220
229
  sessionId,
221
- persistSession: task.context_mode === 'group',
230
+ persistSession: useGroupSession,
222
231
  onSessionUpdate: (sessionId) => deps.setSession(task.group_folder, sessionId),
223
232
  isScheduledTask: true,
224
233
  taskId: task.id,
@@ -313,11 +322,14 @@ ${task.prompt}` : task.prompt;
313
322
  }
314
323
  const resultSummary = error ? `Error: ${error}` : (result ? result.slice(0, 200) : 'Completed');
315
324
  updateTaskAfterRun(task.id, nextRun, resultSummary, error, retryCount);
316
- // Pause if schedule itself is invalid (embedded in combinedError via scheduleError)
317
- if (combinedError && (combinedError.includes('Invalid cron expression') || combinedError.includes('Invalid interval'))) {
325
+ // Pause if schedule is invalid or retries exhausted (circuit breaker)
326
+ if (combinedError && !nextRun) {
327
+ const reason = (combinedError.includes('Invalid cron expression') || combinedError.includes('Invalid interval'))
328
+ ? 'the schedule format is invalid'
329
+ : `it failed ${retryCount} times in a row`;
318
330
  updateTask(task.id, { status: 'paused', next_run: null });
319
331
  try {
320
- await deps.sendMessage(task.chat_jid, 'Your scheduled task has been paused because the schedule format is invalid. Please update it.');
332
+ await deps.sendMessage(task.chat_jid, `Your scheduled task has been paused because ${reason}. Use the task tool to resume it when you're ready.`);
321
333
  }
322
334
  catch (pauseNotifyErr) {
323
335
  logger.error({ taskId: task.id, err: pauseNotifyErr }, 'Failed to send task pause notification');
@@ -364,8 +376,11 @@ export async function runTaskNow(taskId, deps) {
364
376
  let error = null;
365
377
  let output = null;
366
378
  let context = null;
379
+ // Manual runs of recurring tasks still use fresh sessions to prevent accumulation
380
+ const isRecurring = task.schedule_type === 'cron' || task.schedule_type === 'interval';
381
+ const useGroupSession = task.context_mode === 'group' && !isRecurring;
367
382
  const sessions = deps.getSessions();
368
- const sessionId = task.context_mode === 'group' ? sessions[task.group_folder] : undefined;
383
+ const sessionId = useGroupSession ? sessions[task.group_folder] : undefined;
369
384
  const stateBlock = task.state_json ? `[TASK STATE]\n${task.state_json}\n` : '';
370
385
  const taskPrompt = stateBlock ? `${stateBlock}\n${task.prompt}` : task.prompt;
371
386
  const traceBase = createTraceBase({
@@ -386,7 +401,7 @@ export async function runTaskNow(taskId, deps) {
386
401
  recallMaxResults: routingDecision.recallMaxResults,
387
402
  recallMaxTokens: routingDecision.recallMaxTokens,
388
403
  sessionId,
389
- persistSession: task.context_mode === 'group',
404
+ persistSession: useGroupSession,
390
405
  onSessionUpdate: (sessionId) => deps.setSession(task.group_folder, sessionId),
391
406
  isScheduledTask: true,
392
407
  taskId: task.id,
@@ -1 +1 @@
1
- {"version":3,"file":"task-scheduler.js","sourceRoot":"","sources":["../src/task-scheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-scheduler.js","sourceRoot":"","sources":["../src/task-scheduler.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dotsetlabs/dotclaw",
3
- "version": "2.3.0",
3
+ "version": "2.4.0",
4
4
  "description": "Personal OpenRouter-based assistant. Lightweight, secure, customizable.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",