sensorium-mcp 3.1.3 → 3.1.4

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 (159) hide show
  1. package/Install-Sensorium.ps1 +251 -39
  2. package/dist/config/agent-settings.d.ts +11 -0
  3. package/dist/config/agent-settings.d.ts.map +1 -1
  4. package/dist/config/agent-settings.js +79 -0
  5. package/dist/config/agent-settings.js.map +1 -1
  6. package/dist/config/index.d.ts +1 -0
  7. package/dist/config/index.d.ts.map +1 -1
  8. package/dist/config/index.js +12 -0
  9. package/dist/config/index.js.map +1 -1
  10. package/dist/config/misc-settings.d.ts +6 -0
  11. package/dist/config/misc-settings.d.ts.map +1 -1
  12. package/dist/config/misc-settings.js +31 -0
  13. package/dist/config/misc-settings.js.map +1 -1
  14. package/dist/dashboard/routes/codex.d.ts +14 -0
  15. package/dist/dashboard/routes/codex.d.ts.map +1 -0
  16. package/dist/dashboard/routes/codex.js +92 -0
  17. package/dist/dashboard/routes/codex.js.map +1 -0
  18. package/dist/dashboard/routes/threads-read.d.ts +10 -7
  19. package/dist/dashboard/routes/threads-read.d.ts.map +1 -1
  20. package/dist/dashboard/routes/threads-read.js +21 -16
  21. package/dist/dashboard/routes/threads-read.js.map +1 -1
  22. package/dist/dashboard/routes.d.ts.map +1 -1
  23. package/dist/dashboard/routes.js +3 -0
  24. package/dist/dashboard/routes.js.map +1 -1
  25. package/dist/dashboard/spa.html +11 -11
  26. package/dist/data/memory/bootstrap.d.ts +1 -1
  27. package/dist/data/memory/bootstrap.d.ts.map +1 -1
  28. package/dist/data/memory/bootstrap.js +23 -14
  29. package/dist/data/memory/bootstrap.js.map +1 -1
  30. package/dist/data/memory/consolidation.d.ts +20 -1
  31. package/dist/data/memory/consolidation.d.ts.map +1 -1
  32. package/dist/data/memory/consolidation.js +53 -3
  33. package/dist/data/memory/consolidation.js.map +1 -1
  34. package/dist/data/memory/key-knowledge.d.ts +38 -0
  35. package/dist/data/memory/key-knowledge.d.ts.map +1 -0
  36. package/dist/data/memory/key-knowledge.js +118 -0
  37. package/dist/data/memory/key-knowledge.js.map +1 -0
  38. package/dist/data/memory/migration-runner.d.ts +1 -1
  39. package/dist/data/memory/migration-runner.d.ts.map +1 -1
  40. package/dist/data/memory/migration-runner.js +23 -1
  41. package/dist/data/memory/migration-runner.js.map +1 -1
  42. package/dist/data/memory/narrative-lint.d.ts +2 -2
  43. package/dist/data/memory/narrative-lint.d.ts.map +1 -1
  44. package/dist/data/memory/narrative-lint.js +23 -13
  45. package/dist/data/memory/narrative-lint.js.map +1 -1
  46. package/dist/data/memory/narrative-resolutions.d.ts +8 -1
  47. package/dist/data/memory/narrative-resolutions.d.ts.map +1 -1
  48. package/dist/data/memory/narrative-resolutions.js +12 -5
  49. package/dist/data/memory/narrative-resolutions.js.map +1 -1
  50. package/dist/data/memory/narrative-sources.d.ts +1 -1
  51. package/dist/data/memory/narrative-sources.d.ts.map +1 -1
  52. package/dist/data/memory/narrative-sources.js +8 -3
  53. package/dist/data/memory/narrative-sources.js.map +1 -1
  54. package/dist/data/memory/narrative-store.d.ts +14 -0
  55. package/dist/data/memory/narrative-store.d.ts.map +1 -1
  56. package/dist/data/memory/narrative-store.js +36 -0
  57. package/dist/data/memory/narrative-store.js.map +1 -1
  58. package/dist/data/memory/narrative.d.ts.map +1 -1
  59. package/dist/data/memory/narrative.js +45 -25
  60. package/dist/data/memory/narrative.js.map +1 -1
  61. package/dist/data/memory/note-archival.d.ts +1 -1
  62. package/dist/data/memory/note-archival.d.ts.map +1 -1
  63. package/dist/data/memory/note-archival.js +7 -3
  64. package/dist/data/memory/note-archival.js.map +1 -1
  65. package/dist/data/memory/schema-ddl.d.ts +1 -1
  66. package/dist/data/memory/schema-ddl.d.ts.map +1 -1
  67. package/dist/data/memory/schema-ddl.js +3 -1
  68. package/dist/data/memory/schema-ddl.js.map +1 -1
  69. package/dist/data/memory/semantic-notes.d.ts +9 -1
  70. package/dist/data/memory/semantic-notes.d.ts.map +1 -1
  71. package/dist/data/memory/semantic-notes.js +4 -2
  72. package/dist/data/memory/semantic-notes.js.map +1 -1
  73. package/dist/data/memory/thread-registry.d.ts +7 -1
  74. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  75. package/dist/data/memory/thread-registry.js +14 -5
  76. package/dist/data/memory/thread-registry.js.map +1 -1
  77. package/dist/data/memory/utils.d.ts +6 -0
  78. package/dist/data/memory/utils.d.ts.map +1 -1
  79. package/dist/data/memory/utils.js +13 -0
  80. package/dist/data/memory/utils.js.map +1 -1
  81. package/dist/integrations/openai/speech.js +4 -4
  82. package/dist/integrations/openai/speech.js.map +1 -1
  83. package/dist/lib/http-retry.d.ts +91 -0
  84. package/dist/lib/http-retry.d.ts.map +1 -0
  85. package/dist/lib/http-retry.js +177 -0
  86. package/dist/lib/http-retry.js.map +1 -0
  87. package/dist/lib/usage-metering/pricing.js +1 -1
  88. package/dist/lib/usage-metering/pricing.js.map +1 -1
  89. package/dist/llm/prompts/narrative.d.ts.map +1 -1
  90. package/dist/llm/prompts/narrative.js +27 -86
  91. package/dist/llm/prompts/narrative.js.map +1 -1
  92. package/dist/services/claude-spawn.service.d.ts.map +1 -1
  93. package/dist/services/claude-spawn.service.js +6 -1
  94. package/dist/services/claude-spawn.service.js.map +1 -1
  95. package/dist/services/codex-spawn.service.d.ts +2 -2
  96. package/dist/services/codex-spawn.service.d.ts.map +1 -1
  97. package/dist/services/codex-spawn.service.js +64 -58
  98. package/dist/services/codex-spawn.service.js.map +1 -1
  99. package/dist/services/consolidation.service.d.ts.map +1 -1
  100. package/dist/services/consolidation.service.js +10 -1
  101. package/dist/services/consolidation.service.js.map +1 -1
  102. package/dist/services/copilot-spawn.service.d.ts.map +1 -1
  103. package/dist/services/copilot-spawn.service.js +6 -1
  104. package/dist/services/copilot-spawn.service.js.map +1 -1
  105. package/dist/services/daily-session.d.ts +21 -10
  106. package/dist/services/daily-session.d.ts.map +1 -1
  107. package/dist/services/daily-session.js +60 -15
  108. package/dist/services/daily-session.js.map +1 -1
  109. package/dist/services/http-retry.d.ts +1 -90
  110. package/dist/services/http-retry.d.ts.map +1 -1
  111. package/dist/services/http-retry.js +1 -176
  112. package/dist/services/http-retry.js.map +1 -1
  113. package/dist/services/mcp-config.service.d.ts.map +1 -1
  114. package/dist/services/mcp-config.service.js +14 -1
  115. package/dist/services/mcp-config.service.js.map +1 -1
  116. package/dist/services/memory-briefing.service.d.ts +1 -1
  117. package/dist/services/memory-briefing.service.d.ts.map +1 -1
  118. package/dist/services/memory-briefing.service.js +33 -30
  119. package/dist/services/memory-briefing.service.js.map +1 -1
  120. package/dist/services/memory-pruning.service.d.ts.map +1 -1
  121. package/dist/services/memory-pruning.service.js +22 -4
  122. package/dist/services/memory-pruning.service.js.map +1 -1
  123. package/dist/services/spawn-common.d.ts +10 -2
  124. package/dist/services/spawn-common.d.ts.map +1 -1
  125. package/dist/services/spawn-common.js +25 -4
  126. package/dist/services/spawn-common.js.map +1 -1
  127. package/dist/services/telegram.d.ts +7 -5
  128. package/dist/services/telegram.d.ts.map +1 -1
  129. package/dist/services/telegram.js +18 -13
  130. package/dist/services/telegram.js.map +1 -1
  131. package/dist/sessions/mcp-registry.d.ts +7 -2
  132. package/dist/sessions/mcp-registry.d.ts.map +1 -1
  133. package/dist/sessions/mcp-registry.js +52 -30
  134. package/dist/sessions/mcp-registry.js.map +1 -1
  135. package/dist/tools/defs/memory-defs.d.ts.map +1 -1
  136. package/dist/tools/defs/memory-defs.js +4 -0
  137. package/dist/tools/defs/memory-defs.js.map +1 -1
  138. package/dist/tools/delegate-tool.js +2 -2
  139. package/dist/tools/delegate-tool.js.map +1 -1
  140. package/dist/tools/memory-tools.d.ts.map +1 -1
  141. package/dist/tools/memory-tools.js +9 -1
  142. package/dist/tools/memory-tools.js.map +1 -1
  143. package/dist/tools/start-session-tool.js +1 -1
  144. package/dist/tools/start-session-tool.js.map +1 -1
  145. package/dist/tools/wait/consolidation-strategy.d.ts +42 -0
  146. package/dist/tools/wait/consolidation-strategy.d.ts.map +1 -0
  147. package/dist/tools/wait/consolidation-strategy.js +50 -0
  148. package/dist/tools/wait/consolidation-strategy.js.map +1 -0
  149. package/dist/tools/wait/drive-handler.d.ts +5 -7
  150. package/dist/tools/wait/drive-handler.d.ts.map +1 -1
  151. package/dist/tools/wait/drive-handler.js +44 -48
  152. package/dist/tools/wait/drive-handler.js.map +1 -1
  153. package/dist/tools/wait/message-processing.d.ts.map +1 -1
  154. package/dist/tools/wait/message-processing.js +2 -1
  155. package/dist/tools/wait/message-processing.js.map +1 -1
  156. package/dist/tools/wait/poll-loop.d.ts.map +1 -1
  157. package/dist/tools/wait/poll-loop.js +2 -8
  158. package/dist/tools/wait/poll-loop.js.map +1 -1
  159. package/package.json +1 -1
@@ -1,71 +1,80 @@
1
1
  /**
2
- * Codex-specific spawn logic: CLI/native-exe resolution (including Volta layout
3
- * discovery on Windows) and the Codex `exec` process launch.
2
+ * Codex-specific spawn logic: package-manager-agnostic discovery of codex's
3
+ * bin/codex.js on Windows (launched via node.exe) and the Codex `exec` launch.
4
4
  */
5
- import { spawnSync } from "node:child_process";
6
- import { existsSync, readdirSync } from "node:fs";
7
- import { homedir } from "node:os";
8
- import { join } from "node:path";
9
- import { log } from "../lib/logger.js";
5
+ import { existsSync, readFileSync } from "node:fs";
6
+ import { dirname, join, sep } from "node:path";
10
7
  import { PROCESS_BASE_DIR } from "./process.service.js";
11
8
  import { buildCodexMcpArgs } from "./mcp-config.service.js";
9
+ import { getCodexRootModel, getCodexWorkerModel } from "../config/index.js";
12
10
  import { sanitizeSpawnEnv, resolveCliPath, resolveWindowsCliPath, normalizeWorkingDirectory, checkSpawnPreconditions, buildThreadLogPath, launchAgent, } from "./spawn-common.js";
13
11
  const CODEX_HOME_DIR = join(PROCESS_BASE_DIR, "codex-home");
14
- const DEFAULT_CODEX_MODEL = "";
15
- export const resolveCodexPath = () => process.platform === "win32" ? resolveWindowsCliPath("codex") : resolveCliPath("codex");
16
- const resolveCodexNodeExe = () => {
17
- if (process.platform !== "win32")
18
- return null;
12
+ const CODEX_JS_SUBPATH = join("node_modules", "@openai", "codex", "bin", "codex.js");
13
+ // A standard npm/yarn/pnpm .cmd shim invokes `node "%~dp0\<rel>\codex.js"`.
14
+ // Pull that JS entry out of the shim so we can launch it directly with node.
15
+ const codexJsFromShim = (shimPath) => {
19
16
  try {
20
- const localAppData = process.env.LOCALAPPDATA || join(homedir(), "AppData", "Local");
21
- const voltaImage = join(localAppData, "Volta", "tools", "image");
22
- const codexJs = join(voltaImage, "packages", "@openai", "codex", "node_modules", "@openai", "codex", "bin", "codex.js");
23
- if (!existsSync(codexJs))
24
- return null;
25
- const voltaCmd = join(localAppData, "Volta", "bin", "volta.exe");
26
- const nodePathResult = spawnSync(voltaCmd, ["run", "node", "-e", "process.stdout.write(process.execPath)"], { encoding: "utf-8", timeout: 5000, windowsHide: true });
27
- if (nodePathResult.status === 0 && nodePathResult.stdout?.trim())
28
- return { nodeExe: nodePathResult.stdout.trim(), codexJs };
29
- const nodeDir = join(voltaImage, "node");
30
- if (!existsSync(nodeDir))
17
+ const rel = readFileSync(shimPath, "utf-8").match(/%~?dp0%?[\\/]([^"\r\n]*codex[\\/]bin[\\/]codex\.js)/i)?.[1];
18
+ if (!rel)
31
19
  return null;
32
- const versions = readdirSync(nodeDir)
33
- .filter((v) => /^\d+\.\d+\.\d+$/.test(v))
34
- .sort((a, b) => b.localeCompare(a, undefined, { numeric: true }));
35
- for (const version of versions) {
36
- const nodeExe = join(nodeDir, version, "node.exe");
37
- if (existsSync(nodeExe))
38
- return { nodeExe, codexJs };
39
- }
20
+ const abs = join(dirname(shimPath), rel.replace(/\//g, "\\"));
21
+ return existsSync(abs) ? abs : null;
40
22
  }
41
- catch (err) {
42
- log.debug(`[spawn] Codex Node.exe resolution failed: ${err instanceof Error ? err.message : err}`);
23
+ catch {
24
+ return null;
43
25
  }
44
- return null;
45
26
  };
46
- const resolveCodexExe = () => {
47
- if (process.platform !== "win32")
48
- return null;
49
- if (process.env.CODEX_EXE)
50
- return process.env.CODEX_EXE;
51
- try {
52
- const localAppData = process.env.LOCALAPPDATA || join(homedir(), "AppData", "Local");
53
- const nativeExe = join(localAppData, "Volta", "tools", "image", "packages", "@openai", "codex", "node_modules", "@openai", "codex", "node_modules", "@openai", "codex-win32-x64", "vendor", "x86_64-pc-windows-msvc", "codex", "codex.exe");
54
- return existsSync(nativeExe) ? nativeExe : null;
27
+ // Windows-only, package-manager-agnostic discovery of @openai/codex's bin/codex.js.
28
+ // We resolve the JS ENTRY, never a .cmd/shell shim: spawnCodexProcess launches it
29
+ // as `node.exe codex.js`, so the real process lands in the thread's job object.
30
+ // Spawning a .cmd through cmd.exe would let Avecto/Defendpoint re-parent it out of
31
+ // the job — a containment bypass (see supervisor ProcessBroker.Spawn.cs).
32
+ const resolveCodexJsWin = () => {
33
+ // 1) On PATH via a standard npm shim (npm / yarn / pnpm): read the JS out of it.
34
+ // resolveWindowsCliPath only ever returns a .exe or .cmd, so we match .cmd.
35
+ const shim = resolveWindowsCliPath("codex");
36
+ if (shim && /\.cmd$/i.test(shim)) {
37
+ const js = codexJsFromShim(shim);
38
+ if (js)
39
+ return js;
55
40
  }
56
- catch (err) {
57
- log.debug(`[spawn] Codex native exe resolution failed: ${err instanceof Error ? err.message : err}`);
58
- return null;
41
+ // 2) Volta: tools live under <voltaRoot>\tools\image\packages\@openai\codex\.
42
+ // Derive <voltaRoot> from our OWN node path — the server already runs on
43
+ // Volta's node — instead of hardcoding a user profile. Volta's shims are not
44
+ // reliably on PATH, so the `where` lookup above misses them.
45
+ const marker = `${sep}Volta${sep}`;
46
+ const idx = process.execPath.lastIndexOf(marker);
47
+ if (idx !== -1) {
48
+ const voltaRoot = process.execPath.slice(0, idx + marker.length - 1);
49
+ const js = join(voltaRoot, "tools", "image", "packages", "@openai", "codex", CODEX_JS_SUBPATH);
50
+ if (existsSync(js))
51
+ return js;
59
52
  }
53
+ // 3) npm global prefix (%APPDATA%\npm) when its bin dir is off PATH.
54
+ if (process.env.APPDATA) {
55
+ const js = join(process.env.APPDATA, "npm", CODEX_JS_SUBPATH);
56
+ if (existsSync(js))
57
+ return js;
58
+ }
59
+ return null;
60
60
  };
61
+ // On Windows we return codex's bin/codex.js (launched via node.exe by
62
+ // spawnCodexProcess). Elsewhere codex is a real binary on PATH, spawned directly.
63
+ export const resolveCodexPath = () => process.platform === "win32" ? resolveCodexJsWin() : resolveCliPath("codex");
61
64
  export async function spawnCodexProcess(codexPath, name, threadId, threadLifecycle, workingDirectory, memorySourceThreadId, threadType) {
62
65
  const pre = checkSpawnPreconditions("Codex");
63
66
  if ("error" in pre)
64
67
  return pre;
65
68
  workingDirectory = normalizeWorkingDirectory(workingDirectory);
66
- const logFilePath = buildThreadLogPath(name, threadId, "jsonl");
67
- const prompt = `You are an AUTONOMOUS AGENT running an INFINITE polling loop. You MUST NEVER STOP.\n\nStep 1: Call start_session(name='${name}', threadId=${threadId}, agentType='codex'). Use threadId=${threadId} for all subsequent calls.\nStep 2: Call remote_copilot_wait_for_instructions(threadId=${threadId}).\nStep 3: Read the response:\n - If it says "MANDATORY ACTION" or "No new instructions" - call remote_copilot_wait_for_instructions AGAIN immediately.\n - If you receive a task - complete it using your tools, then call remote_copilot_wait_for_instructions again.\nStep 4: GOTO Step 2. This loop NEVER ends. You are NEVER done.\n\nCRITICAL: "No new instructions" is NOT a signal to stop. It means "keep waiting". Always call the tool again.`;
68
- const model = process.env.CODEX_MODEL || DEFAULT_CODEX_MODEL;
69
+ const logFilePath = buildThreadLogPath(name, "codex", threadId, "jsonl");
70
+ const prompt = `You are an AUTONOMOUS AGENT running an INFINITE polling loop. You MUST NEVER STOP.\n\nStep 1: Call start_session(name='${name}', threadId=${threadId}, agentType='codex'). Use threadId=${threadId} for all subsequent calls.\nStep 2: Call remote_copilot_wait_for_instructions(threadId=${threadId}).\nStep 3: Read the response:\n - If it says "MANDATORY ACTION" or "No new instructions" - call remote_copilot_wait_for_instructions AGAIN immediately.\n - If you receive a task - complete it using your tools, then call remote_copilot_wait_for_instructions again.\nStep 4: GOTO Step 2. This loop NEVER ends. You are NEVER done.\n\nCRITICAL: "No new instructions" is NOT a signal to stop. It means "keep waiting". Always call the tool again.\n\nNO NARRATION: Between tool calls you MUST NOT emit any text, reasoning, commentary, or status such as "still listening", "no task yet", or "waiting". Output ONLY the next tool call and nothing else. Any prose between calls is forbidden and wastes tokens.`;
71
+ // Model by thread role, mirroring claude-spawn: only a worker takes the worker
72
+ // model; root and branch threads take the root model. The CODEX_MODEL env var
73
+ // still wins in either role (preserves the prior override precedence). When the
74
+ // resolved model is empty (nothing configured), no `-m` is emitted below —
75
+ // Codex uses its own default, identical to today's behavior.
76
+ const roleModel = threadType === "worker" ? getCodexWorkerModel() : getCodexRootModel();
77
+ const model = process.env.CODEX_MODEL || roleModel;
69
78
  const { args: mcpArgs, env: mcpEnv } = buildCodexMcpArgs(pre.transport, threadId);
70
79
  const cliArgs = [
71
80
  "exec",
@@ -85,15 +94,12 @@ export async function spawnCodexProcess(codexPath, name, threadId, threadLifecyc
85
94
  ...(pre.transport.secret ? { SENSORIUM_MCP_SECRET: pre.transport.secret } : {}),
86
95
  ...mcpEnv,
87
96
  });
88
- // Resolve the actual executable once, shared by the broker and local paths:
89
- // native codex.exe when present, else node.exe + codex.js (Volta layout), else
90
- // the .cmd shim as-is.
91
- const nativeExe = resolveCodexExe();
92
- const nodeExeResult = !nativeExe && process.platform === "win32" && /\.(cmd|bat)$/i.test(codexPath)
93
- ? resolveCodexNodeExe()
94
- : null;
95
- const exe = nativeExe ?? nodeExeResult?.nodeExe ?? codexPath;
96
- const args = nodeExeResult ? [nodeExeResult.codexJs, ...cliArgs] : cliArgs;
97
+ // On Windows `codexPath` is codex's bin/codex.js — launch it with our own
98
+ // node.exe so the REAL codex process is what the broker contains in the job
99
+ // object. Elsewhere it is a native binary spawned directly.
100
+ const runViaNode = process.platform === "win32" && /\.js$/i.test(codexPath);
101
+ const exe = runViaNode ? process.execPath : codexPath;
102
+ const args = runViaNode ? [codexPath, ...cliArgs] : cliArgs;
97
103
  return launchAgent({
98
104
  threadId,
99
105
  name,
@@ -1 +1 @@
1
- {"version":3,"file":"codex-spawn.service.js","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-spawn.service.js","sourceRoot":"","sources":["../../src/services/codex-spawn.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"consolidation.service.d.ts","sourceRoot":"","sources":["../../src/services/consolidation.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAQzD,OAAO,EAEL,KAAK,mBAAmB,EAOzB,MAAM,iCAAiC,CAAC;AAqEzC,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5D,OAAO,CAAC,mBAAmB,CAAC,CA8E9B;AAED,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GACxE,OAAO,CAAC,mBAAmB,CAAC,CA8e9B"}
1
+ {"version":3,"file":"consolidation.service.d.ts","sourceRoot":"","sources":["../../src/services/consolidation.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAQzD,OAAO,EAEL,KAAK,mBAAmB,EAQzB,MAAM,iCAAiC,CAAC;AAqEzC,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,QAAQ,EACZ,OAAO,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5D,OAAO,CAAC,mBAAmB,CAAC,CAuF9B;AAED,wBAAsB,2BAA2B,CAC/C,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAE,GACxE,OAAO,CAAC,mBAAmB,CAAC,CA8e9B"}
@@ -1,7 +1,7 @@
1
1
  import { getUnconsolidatedEpisodes, markConsolidated } from "../data/memory/episodes.js";
2
2
  import { saveSemanticNote, supersedeNote, updateSemanticNote, } from "../data/memory/semantic-notes.js";
3
3
  import { searchByEmbedding, saveNoteEmbedding } from "../data/memory/note-embeddings.js";
4
- import { cleanupConsolidationHousekeeping, getUnconsolidatedThreadIds, hasActiveNote, expireNote, logConsolidation, sweepOrphanedNotes, sweepOrphanedEmbeddings, } from "../data/memory/consolidation.js";
4
+ import { cleanupConsolidationHousekeeping, getUnconsolidatedThreadIds, hasActiveNote, expireNote, logConsolidation, sweepExpiredNotes, sweepOrphanedNotes, sweepOrphanedEmbeddings, } from "../data/memory/consolidation.js";
5
5
  import { passesStructuralGate, passesQualityGate, parseReflectionFields, } from "../data/memory/reflection-gates.js";
6
6
  import { buildExtractionPrompt, buildSupersedePrompt, buildLinkingPrompt, } from "./consolidation-prompts.js";
7
7
  import { runMemoryPruning } from "./memory-pruning.service.js";
@@ -81,6 +81,15 @@ export async function runConsolidationAllThreads(db, options) {
81
81
  catch (err) {
82
82
  log.warn(`[memory] Pruning phase failed: ${errorMessage(err)}`);
83
83
  }
84
+ try {
85
+ const ttlExpired = sweepExpiredNotes(db);
86
+ if (ttlExpired > 0) {
87
+ allDetails.push(`TTL sweep: expired ${ttlExpired} note(s) past expires_at`);
88
+ }
89
+ }
90
+ catch (err) {
91
+ log.warn(`[memory] TTL sweep failed: ${errorMessage(err)}`);
92
+ }
84
93
  try {
85
94
  const orphanedCount = sweepOrphanedNotes(db);
86
95
  if (orphanedCount > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"consolidation.service.js","sourceRoot":"","sources":["../../src/services/consolidation.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AACzF,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,kBAAkB,GACnB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,EACL,gCAAgC,EAEhC,0BAA0B,EAC1B,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,GAEnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAoB,MAAM,gCAAgC,CAAC;AACrF,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,6BAA6B,GAAG,IAAI,CAAC;AAC3C,wGAAwG;AACxG,MAAM,0BAA0B,GAAG,GAAG,CAAC;AACvC,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,CAAU,CAAC;AAE9F,IAAI,uBAAuB,GAAG,KAAK,CAAC;AAUpC,KAAK,UAAU,2BAA2B,CACxC,EAAY,EACZ,OAAe,EACf,MAAc,EACd,QAAgB;IAOhB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE;YAC/C,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,6BAA6B;YAC5C,kBAAkB,EAAE,IAAI;YACxB,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CACxB,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,IAAI,6BAA6B,CACrE,CAAC;QACF,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC;QAC/F,CAAC;QACD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC3C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,+CAA+C,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAC1F,CAAC;QACF,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,EAAY,EACZ,OAA6D;IAE7D,IAAI,uBAAuB,EAAE,CAAC;QAC5B,GAAG,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QACvE,OAAO;YACL,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,CAAC,8CAA8C,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED,uBAAuB,GAAG,IAAI,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAEjD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO;gBACL,iBAAiB,EAAE,CAAC;gBACpB,YAAY,EAAE,CAAC;gBACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,OAAO,EAAE,CAAC,2CAA2C,CAAC;aACvD,CAAC;QACJ,CAAC;QAED,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,EAAE,EAAE,QAAQ,EAAE;gBAC7D,WAAW,EAAE,OAAO,EAAE,oBAAoB,IAAI,EAAE;gBAChD,MAAM,EAAE,OAAO,EAAE,MAAM;gBACvB,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC;YAC3C,UAAU,IAAI,MAAM,CAAC,YAAY,CAAC;YAClC,UAAU,CAAC,IAAI,CACb,UAAU,QAAQ,KAAK,MAAM,CAAC,iBAAiB,UAAU,MAAM,CAAC,YAAY,QAAQ,CACrF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC/C,IAAI,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC,WAAW,GAAG,CAAC,EAAE,CAAC;gBAC3D,UAAU,CAAC,IAAI,CACb,oBAAoB,WAAW,CAAC,YAAY,aAAa,WAAW,CAAC,YAAY,YAAY,WAAW,CAAC,WAAW,EAAE,CACvH,CAAC;gBACF,UAAU,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,kCAAkC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAC7C,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,UAAU,CAAC,IAAI,CAAC,0BAA0B,aAAa,0BAA0B,CAAC,CAAC;YACrF,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,uCAAuC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC;YACH,uBAAuB,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,4CAA4C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO;YACL,iBAAiB,EAAE,cAAc;YACjC,YAAY,EAAE,UAAU;YACxB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;YAChC,OAAO,EAAE,UAAU;SACpB,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,uBAAuB,GAAG,KAAK,CAAC;IAClC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,EAAY,EACZ,QAAgB,EAChB,OAAyE;IAEzE,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC/D,IAAI,oBAAoB,KAAK,OAAO,IAAI,oBAAoB,KAAK,GAAG,EAAE,CAAC;QACrE,OAAO;YACL,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,CAAC,2DAA2D,CAAC;SACvE,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5C,IAAI,WAAW,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC,qCAAqC,QAAQ,qBAAqB,CAAC,CAAC;QAC7E,OAAO;YACL,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,CAAC,0BAA0B,CAAC;SACtC,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,EAAE,SAAS,IAAI,KAAK,CAAC;IAC7C,IAAI,CAAC,QAAQ,IAAI,uBAAuB,EAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QACzD,OAAO;YACL,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,OAAO,EAAE,CAAC,8CAA8C,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,QAAQ;QAAE,uBAAuB,GAAG,IAAI,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC3B,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC;QAC/C,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC;QACxC,mGAAmG;QACnG,uEAAuE;QACvE,yEAAyE;QACzE,0FAA0F;QAC1F,qFAAqF;QACrF,iFAAiF;QACjF,yEAAyE;QACzE,MAAM,wBAAwB,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC1F,IAAI,yBAAsD,CAAC;QAC3D,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,yBAAyB,GAAG,QAAQ,CAAC;QACvC,CAAC;aAAM,IACL,wBAAwB,KAAK,KAAK;YAClC,wBAAwB,KAAK,QAAQ;YACrC,wBAAwB,KAAK,QAAQ,EACrC,CAAC;YACD,yBAAyB,GAAG,wBAAwB,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CACN,wDAAwD,wBAAwB,0CAA0C,CAC3H,CAAC;YACF,yBAAyB,GAAG,QAAQ,CAAC;QACvC,CAAC;QACD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;QACtE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO;gBACL,iBAAiB,EAAE,CAAC;gBACpB,YAAY,EAAE,CAAC;gBACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;gBAChC,OAAO,EAAE,CAAC,yBAAyB,CAAC;aACrC,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,MAAM,iBAAiB,GAAG,QAAQ,CAAC;QAEnC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YACvD,yEAAyE;YACzE,MAAM,eAAe,GAAkB;gBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,CAAC,QAAQ,CAAC,EAAE;gBAC5D,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,4CAA4C,EAAE;aACxE,CAAC;YACF,MAAM,aAAa,GAAG,CAAC,MAAM,kBAAkB,CAAC,eAAe,EAAE,MAAM,EAAE;gBACvE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ;gBAClD,QAAQ,EAAE,eAAe;gBACzB,QAAQ;gBACR,SAAS,EAAE,IAAI;gBACf,cAAc,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;gBACvC,SAAS,EAAE,MAAM;aAClB,CAAC,CASD,CAAC;YAEF,MAAM,cAAc,GAAG,aAAa,CAAC,KAAK,IAAI,EAAE,CAAC;YACjD,MAAM,UAAU,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAEhE,IAAI,CAAC,MAAM,EAAE,CAAC;gBAoBZ,MAAM,UAAU,GAAgB,EAAE,CAAC;gBAEnC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;oBAClC,IACE,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;wBAChC,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;wBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,EAC3B,CAAC;wBACD,GAAG,CAAC,IAAI,CACN,4DAA4D,OAAO,IAAI,CAAC,OAAO,SAAS,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAC1J,CAAC;wBACF,SAAS;oBACX,CAAC;oBAED,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAqB,CAAC,CAAC;oBAC3E,MAAM,QAAQ,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAkB,CAAC;oBACtE,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,GAAG,CAAC,IAAI,CACN,yDAAyD,IAAI,CAAC,IAAI,+DAA+D,CAClI,CAAC;oBACJ,CAAC;oBAED,MAAM,KAAK,GAAG,MAAM,2BAA2B,CAC7C,EAAE,EACF,IAAI,CAAC,OAAO,EACZ,MAAM,EACN,iBAAiB,CAClB,CAAC;oBACF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBACtB,GAAG,CAAC,KAAK,CACP,mDAAmD,KAAK,CAAC,OAAO,OAAO,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CACtG,CAAC;wBACF,SAAS;oBACX,CAAC;oBAED,UAAU,CAAC,IAAI,CAAC;wBACd,IAAI,EAAE,QAAQ;wBACd,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;wBAC3D,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;wBAC5D,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;wBACtD,YAAY,EAAE,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;wBAChF,SAAS,EAAE,KAAK,CAAC,SAAS;wBAC1B,YAAY;qBACb,CAAC,CAAC;gBACL,CAAC;gBAED,qEAAqE;gBACrE,MAAM,oBAAoB,GAAG,CAAC,CAAC;gBAC/B,MAAM,mBAAmB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;oBAChD,IAAI,CAAC,EAAE,CAAC,SAAS;wBAAE,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAA0C,EAAE,CAAC;oBACzF,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE;wBAClD,UAAU,EAAE,CAAC;wBACb,aAAa,EAAE,GAAG;wBAClB,kBAAkB,EAAE,IAAI;wBACxB,QAAQ,EAAE,iBAAiB;qBAC5B,CAAC,CAAC;oBACH,OAAO,EAAE,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;gBACrC,CAAC,CAAC,CAAC;gBAEH,MAAM,OAAO,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,oBAAoB,EAAE,CAAC;oBAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC,CAAC;oBACzD,MAAM,KAAK,GAAyB,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;wBAC5D,SAAS,EAAE,GAAG;wBACd,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO;wBACxB,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACtC,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,UAAU,EAAE,CAAC,CAAC,UAAU;4BACxB,OAAO,EAAE,CAAC,CAAC,OAAO;yBACnB,CAAC,CAAC;qBACJ,CAAC,CAAC,CAAC;oBACJ,IAAI,CAAC;wBACH,MAAM,eAAe,GAAG,CAAC,MAAM,kBAAkB,CAC/C;4BACE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE;4BACxD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,EAAE;yBACvD,EACD,MAAM,EACN;4BACE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ;4BAClD,QAAQ,EAAE,eAAe;4BACzB,QAAQ;4BACR,SAAS,EAAE,IAAI;4BACf,cAAc,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;4BACvC,SAAS,EAAE,MAAM;yBAClB,CACF,CAQA,CAAC;wBACF,KAAK,MAAM,MAAM,IAAI,eAAe,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;4BACnD,qEAAqE;4BACrE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;4BAC7E,IACE,CAAC,OAAO,KAAK,YAAY,IAAI,OAAO,KAAK,UAAU,CAAC;gCACpD,CAAC,MAAM,CAAC,YAAY;gCACpB,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ,EACpC,CAAC;gCACD,SAAS;4BACX,CAAC;4BACD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACrC,IAAI,CAAC,IAAI;gCAAE,SAAS;4BACpB,mDAAmD;4BACnD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,YAAY,CAAC,CAAC;4BAChF,IAAI,CAAC,SAAS,EAAE,CAAC;gCACf,GAAG,CAAC,IAAI,CACN,uCAAuC,MAAM,CAAC,YAAY,2BAA2B,CACtF,CAAC;gCACF,SAAS;4BACX,CAAC;4BACD,kEAAkE;4BAClE,IAAI,SAAS,CAAC,WAAW,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;gCAC9C,GAAG,CAAC,IAAI,CACN,iDAAiD,SAAS,CAAC,MAAM,sBAAsB,CACxF,CAAC;gCACF,SAAS;4BACX,CAAC;4BACD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;gCAC3B,oEAAoE;gCACpE,IAAI,yBAAyB,KAAK,KAAK;oCAAE,SAAS;gCAClD,gDAAgD;gCAChD,IAAI,SAAS,CAAC,UAAU,GAAG,0BAA0B,EAAE,CAAC;oCACtD,GAAG,CAAC,KAAK,CACP,8CAA8C,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,0BAA0B,EAAE,CAChH,CAAC;oCACF,SAAS;gCACX,CAAC;gCACD,kEAAkE;gCAClE,4CAA4C;gCAC5C,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oCAClF,GAAG,CAAC,KAAK,CACP,wDAAwD,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,eAAe,SAAS,CAAC,IAAI,GAAG,CAChJ,CAAC;oCACF,SAAS;gCACX,CAAC;gCACD,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG;oCAClB,YAAY,EAAE,SAAS,CAAC,MAAM;oCAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;oCAC3B,OAAO,EAAE,UAAU;oCACnB,UAAU,EAAE,SAAS,CAAC,UAAU;iCACjC,CAAC;4BACJ,CAAC;iCAAM,CAAC;gCACN,kFAAkF;gCAClF,IAAI,CAAC,EAAE,CAAC,SAAS,GAAG;oCAClB,YAAY,EAAE,SAAS,CAAC,MAAM;oCAC9B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;oCAC3B,OAAO,EAAE,YAAY;oCACrB,UAAU,EAAE,SAAS,CAAC,UAAU;iCACjC,CAAC;4BACJ,CAAC;wBACH,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,CAAC,IAAI,CAAC,2CAA2C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC3E,CAAC;gBACH,CAAC;gBAED,qEAAqE;gBACrE,MAAM,UAAU,GAIX,EAAE,CAAC;gBACR,IAAI,eAAe,GAAG,CAAC,CAAC;gBACxB,IAAI,uBAAuB,GAAG,CAAC,CAAC;gBAChC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;oBAClB,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,mBAAmB,EAAE,CAAC;wBACzC,IAAI,MAAc,CAAC;wBACnB,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC;wBACzB,sHAAsH;wBACtH,MAAM,UAAU,GACd,GAAG,EAAE,OAAO,KAAK,UAAU,IAAI,yBAAyB,KAAK,QAAQ,CAAC;wBACxE,IAAI,GAAG,IAAI,CAAC,UAAU,IAAI,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;4BAC9D,MAAM,GAAG,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,EAAE;gCAC3C,IAAI,EAAE,EAAE,CAAC,IAAI;gCACb,OAAO,EAAE,EAAE,CAAC,OAAO;gCACnB,QAAQ,EAAE,EAAE,CAAC,QAAQ;gCACrB,UAAU,EAAE,EAAE,CAAC,UAAU;gCACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;gCACrB,YAAY,EAAE,EAAE,CAAC,YAAY;gCAC7B,cAAc,EAAE,UAAU;6BAC3B,CAAC,CAAC;4BACH,eAAe,EAAE,CAAC;4BAClB,IAAI,GAAG,CAAC,OAAO,KAAK,UAAU;gCAAE,uBAAuB,EAAE,CAAC;4BAC1D,MAAM,YAAY,GAAG,cAAc,GAAG,CAAC,OAAO,KAAK,GAAG,CAAC,YAAY,MAAM,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC;4BAC3I,uEAAuE;4BACvE,yEAAyE;4BACzE,kEAAkE;4BAClE,GAAG,CAAC,IAAI,CAAC,YAAY,YAAY,EAAE,CAAC,CAAC;4BACrC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;wBAC7B,CAAC;6BAAM,CAAC;4BACN,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE;gCAC5B,IAAI,EAAE,EAAE,CAAC,IAAI;gCACb,OAAO,EAAE,EAAE,CAAC,OAAO;gCACnB,QAAQ,EAAE,EAAE,CAAC,QAAQ;gCACrB,UAAU,EAAE,EAAE,CAAC,UAAU;gCACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ;gCACrB,YAAY,EAAE,EAAE,CAAC,YAAY;gCAC7B,QAAQ,EAAE,iBAAiB;gCAC3B,cAAc,EAAE,UAAU;6BAC3B,CAAC,CAAC;4BACH,YAAY,EAAE,CAAC;4BACf,IAAI,UAAU,IAAI,GAAG,IAAI,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;gCAC7D,MAAM,SAAS,GAAG,sBAAsB,GAAG,CAAC,YAAY,MAAM,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC;gCAChI,GAAG,CAAC,IAAI,CAAC,YAAY,SAAS,EAAE,CAAC,CAAC;gCAClC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4BAC1B,CAAC;iCAAM,CAAC;gCACN,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;4BAC7C,CAAC;wBACH,CAAC;wBACD,IAAI,EAAE,CAAC,SAAS,EAAE,CAAC;4BACjB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;wBAC9C,CAAC;wBACD,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC5E,CAAC;oBAED,gBAAgB,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;oBACjC,gBAAgB,CAAC,EAAE,EAAE;wBACnB,iBAAiB,EAAE,QAAQ,CAAC,MAAM;wBAClC,YAAY,EAAE,YAAY,GAAG,eAAe;wBAC5C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;qBACjC,CAAC,CAAC;gBACL,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;oBACxB,wEAAwE;oBACxE,0EAA0E;oBAC1E,uBAAuB;oBACvB,GAAG,CAAC,IAAI,CACN,uBAAuB,eAAe,uBAAuB,eAAe,GAAG,uBAAuB,mBAAmB,uBAAuB,eAAe,CAChK,CAAC;gBACJ,CAAC;gBAED,qEAAqE;gBACrE,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;oBAC/B,IAAI,CAAC,KAAK,CAAC,SAAS;wBAAE,SAAS;oBAC/B,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,iBAAiB,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE;4BACvD,UAAU,EAAE,CAAC;4BACb,aAAa,EAAE,GAAG;4BAClB,kBAAkB,EAAE,IAAI;4BACxB,QAAQ,EAAE,iBAAiB;yBAC5B,CAAC;6BACC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;6BACxC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACf,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;4BAAE,SAAS;wBAErC,MAAM,UAAU,GAAG,CAAC,MAAM,kBAAkB,CAC1C;4BACE;gCACE,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,kBAAkB,CACzB,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,EAChD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAC/E;6BACF;4BACD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,wBAAwB,EAAE;yBACpD,EACD,MAAM,EACN;4BACE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ;4BAClD,QAAQ,EAAE,eAAe;4BACzB,QAAQ;4BACR,SAAS,EAAE,GAAG;4BACd,cAAc,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;4BACvC,SAAS,EAAE,MAAM;yBAClB,CACF,CAEA,CAAC;wBACF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC5D,MAAM,KAAK,GAAG,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAC3C,CAAC,CAAC,EAAE,EAAE,CACJ,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;4BAC5B,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;4BAC5B,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAC5B,CAAC;wBACF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BACrB,MAAM,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;4BAC/C,MAAM,WAAW,GAA2B,EAAE,CAAC;4BAC/C,KAAK,MAAM,CAAC,IAAI,KAAK;gCAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;4BACxD,kBAAkB,CAAC,EAAE,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;wBACrE,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,CAAC,IAAI,CACN,2CAA2C,KAAK,CAAC,MAAM,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAChF,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;oBAClC,OAAO,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;oBACzD,YAAY,EAAE,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC9B,GAAG,CAAC,KAAK,CAAC,oEAAoE,GAAG,EAAE,CAAC,CAAC;YACrF,OAAO,CAAC,IAAI,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,gCAAgC,CAAC,EAAE,CAAC,CAAC;QAErC,wGAAwG;QACxG,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,kFAAkF;gBAClF,yFAAyF;gBACzF,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;gBACvD,MAAM,cAAc,GAAG,EAAE;qBACtB,OAAO,CACN;;;qDAGyC,CAC1C;qBACA,GAAG,CAAC,iBAAiB,EAAE,mBAAmB,CAI1C,CAAC;gBAEJ,IAAI,kBAAkB,GAAG,CAAC,CAAC;gBAC3B,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;gBAExB,KAAK,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBAClD,IAAI,CAAC,MAAM;wBAAE,SAAS,CAAC,mCAAmC;oBAE1D,+EAA+E;oBAC/E,mFAAmF;oBACnF,MAAM,UAAU,GAAG,oBAAoB,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC1E,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;wBACrB,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;wBACpD,kBAAkB,EAAE,CAAC;wBACrB,SAAS;oBACX,CAAC;oBAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;oBAC/D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;wBAClB,UAAU,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;wBACpD,kBAAkB,EAAE,CAAC;oBACvB,CAAC;gBACH,CAAC;gBAED,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;oBAC3B,GAAG,CAAC,IAAI,CACN,iDAAiD,kBAAkB,4BAA4B,CAChG,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,2DAA2D,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QAED,OAAO;YACL,iBAAiB,EAAE,QAAQ,CAAC,MAAM;YAClC,YAAY;YACZ,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;YAChC,OAAO;SACR,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,IAAI,CAAC,QAAQ;YAAE,uBAAuB,GAAG,KAAK,CAAC;IACjD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"consolidation.service.js","sourceRoot":"","sources":["../../src/services/consolidation.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"copilot-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAUL,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAsF3B,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAGL,CAAC;AAE3C,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,sBAAsB,EACvC,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC/B,OAAO,CAAC,WAAW,CAAC,CAuDtB"}
1
+ {"version":3,"file":"copilot-spawn.service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAUL,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAsF3B,eAAO,MAAM,kBAAkB,QAAO,MAAM,GAAG,IAGL,CAAC;AAE3C,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,sBAAsB,EACvC,gBAAgB,CAAC,EAAE,MAAM,EACzB,oBAAoB,CAAC,EAAE,MAAM,EAC7B,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAC/B,OAAO,CAAC,WAAW,CAAC,CA4DtB"}
@@ -91,7 +91,7 @@ export async function spawnCopilotProcess(copilotPath, name, threadId, threadLif
91
91
  buildCopilotMcpConfig(pre.transport, copilotHomeDir, threadId);
92
92
  writeCopilotInstructions(copilotHomeDir);
93
93
  writeCopilotIdentity(copilotHomeDir);
94
- const logFilePath = buildThreadLogPath(name, threadId, "json");
94
+ const logFilePath = buildThreadLogPath(name, "copilot", threadId, "json");
95
95
  // Copilot model + BYOK provider config come from dashboard settings. Settings
96
96
  // drive both the model and (optionally) a BYOK provider; provider vars the
97
97
  // settings don't supply are explicitly unset so ambient env can't silently
@@ -131,6 +131,11 @@ export async function spawnCopilotProcess(copilotPath, name, threadId, threadLif
131
131
  "--model",
132
132
  model,
133
133
  "--autopilot",
134
+ // JSONL stdout (one JSON object per line) so the captured log carries
135
+ // structured events — notably compaction boundaries — the way Claude's
136
+ // stream-json log does. A dedicated parser is added separately.
137
+ "--output-format",
138
+ "json",
134
139
  ],
135
140
  env: spawnEnv,
136
141
  cwd: workingDirectory,
@@ -1 +1 @@
1
- {"version":3,"file":"copilot-spawn.service.js","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"copilot-spawn.service.js","sourceRoot":"","sources":["../../src/services/copilot-spawn.service.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,22 @@
1
1
  /**
2
2
  * Daily Session Rotation
3
3
  *
4
- * Manages automatic daily rotation of agent sessions for root threads.
5
- * The rotation: consolidate episodes → run reflection/narratives → advance the
6
- * `session_reset_at` timestamp. It does NOT kill or restart the agent process —
7
- * the running session continues untouched and the keeper is not involved.
4
+ * Runs the nightly (4 AM) memory-integrity pass for EVERY non-worker thread:
5
+ * consolidate episodes → run reflection/narratives → advance `session_reset_at`.
6
+ * This is unconditional — memory hygiene is required by all threads, not just
7
+ * those opted into rotation. Workers are excluded (their memory is no-persist).
8
8
  *
9
- * The `session_reset_at` column on thread_registry marks the episode-window
10
- * boundary. Bootstrap uses it to filter the message buffer to post-reset
11
- * messages, so the LLM context only "refreshes" lazily on the next cold start
12
- * (triggered by an unrelated restart), not at rotation time.
9
+ * Separately, threads that opt in via the `daily_rotation` flag are ALSO
10
+ * force-restarted after their memory pass: the running CLI process is killed so
11
+ * the keeper respawns a fresh session. `session_reset_at` already advanced the
12
+ * episode-window boundary, so the fresh session cold-starts on a clean context
13
+ * rehydrated from its normal briefing — deliberately WITHOUT any "reconstruct
14
+ * the context / re-read episodes" instruction (that removed clean_shutdown
15
+ * anti-pattern caused over-reading on every restart). A scheduled rotation is an
16
+ * EXPECTED event, so the fresh session simply continues from its briefing.
17
+ *
18
+ * Only keepAlive threads are restarted, because only they are respawned by the
19
+ * keeper; a non-keepAlive thread would just die.
13
20
  */
14
21
  import { initMemoryDb } from "../data/memory/schema.js";
15
22
  interface DailyRotationResult {
@@ -17,6 +24,8 @@ interface DailyRotationResult {
17
24
  previousSessionResetAt: string | null;
18
25
  newSessionResetAt: string;
19
26
  consolidated: boolean;
27
+ /** True when the thread was force-restarted after its memory pass (daily_rotation opt-in). */
28
+ restarted: boolean;
20
29
  error?: string;
21
30
  }
22
31
  /**
@@ -27,8 +36,10 @@ interface DailyRotationResult {
27
36
  */
28
37
  export declare function rotateDailySession(rootThreadId: number, db?: ReturnType<typeof initMemoryDb>): Promise<DailyRotationResult>;
29
38
  /**
30
- * Check and rotate all threads that have daily rotation enabled.
31
- * Called from the watcher service on a schedule (e.g., 4 AM daily).
39
+ * Run the nightly memory pass for every non-worker thread, and force-restart the
40
+ * subset that opted into `daily_rotation`. Called from the background runner on a
41
+ * schedule (4 AM). Idempotent per day via the daily marker and per-thread via
42
+ * session_reset_at, so a late or repeated call is safe.
32
43
  */
33
44
  export declare function rotateAllDailySessions(): Promise<DailyRotationResult[]>;
34
45
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"daily-session.d.ts","sourceRoot":"","sources":["../../src/services/daily-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAYH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AASxD,UAAU,mBAAmB;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA+BD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,GACnC,OAAO,CAAC,mBAAmB,CAAC,CAyD9B;AAMD;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAwE7E"}
1
+ {"version":3,"file":"daily-session.d.ts","sourceRoot":"","sources":["../../src/services/daily-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAaH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAUxD,UAAU,mBAAmB;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,8FAA8F;IAC9F,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA+BD;;;;;GAKG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,EAAE,CAAC,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,GACnC,OAAO,CAAC,mBAAmB,CAAC,CA0D9B;AAMD;;;;;GAKG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAoF7E"}
@@ -1,18 +1,25 @@
1
1
  /**
2
2
  * Daily Session Rotation
3
3
  *
4
- * Manages automatic daily rotation of agent sessions for root threads.
5
- * The rotation: consolidate episodes → run reflection/narratives → advance the
6
- * `session_reset_at` timestamp. It does NOT kill or restart the agent process —
7
- * the running session continues untouched and the keeper is not involved.
4
+ * Runs the nightly (4 AM) memory-integrity pass for EVERY non-worker thread:
5
+ * consolidate episodes → run reflection/narratives → advance `session_reset_at`.
6
+ * This is unconditional — memory hygiene is required by all threads, not just
7
+ * those opted into rotation. Workers are excluded (their memory is no-persist).
8
8
  *
9
- * The `session_reset_at` column on thread_registry marks the episode-window
10
- * boundary. Bootstrap uses it to filter the message buffer to post-reset
11
- * messages, so the LLM context only "refreshes" lazily on the next cold start
12
- * (triggered by an unrelated restart), not at rotation time.
9
+ * Separately, threads that opt in via the `daily_rotation` flag are ALSO
10
+ * force-restarted after their memory pass: the running CLI process is killed so
11
+ * the keeper respawns a fresh session. `session_reset_at` already advanced the
12
+ * episode-window boundary, so the fresh session cold-starts on a clean context
13
+ * rehydrated from its normal briefing — deliberately WITHOUT any "reconstruct
14
+ * the context / re-read episodes" instruction (that removed clean_shutdown
15
+ * anti-pattern caused over-reading on every restart). A scheduled rotation is an
16
+ * EXPECTED event, so the fresh session simply continues from its briefing.
17
+ *
18
+ * Only keepAlive threads are restarted, because only they are respawned by the
19
+ * keeper; a non-keepAlive thread would just die.
13
20
  */
14
21
  import { log } from "../lib/logger.js";
15
- import { getDailyRotationThreads, getThread, purgeOldArchivedThreads, resetDailySession, resolveTelegramTopicId, } from "../data/memory/thread-registry.js";
22
+ import { getConsolidationThreads, getThread, purgeOldArchivedThreads, resetDailySession, resolveTelegramTopicId, } from "../data/memory/thread-registry.js";
16
23
  import { runNarrativeGeneration } from "../data/memory/narrative.js";
17
24
  import { runReflection } from "../data/memory/reflection.js";
18
25
  import { initMemoryDb } from "../data/memory/schema.js";
@@ -21,6 +28,7 @@ import { runIntelligentConsolidation } from "./consolidation.service.js";
21
28
  import { errorMessage } from "../lib/utils.js";
22
29
  import { sendTelegramMessage } from "./telegram.js";
23
30
  import { hasRunToday, markRanToday, dailyKey } from "../data/daily-marker.js";
31
+ import { killThreadTree, readPidFiles, isThreadAlive } from "./process.service.js";
24
32
  // ─── Telegram notification ───────────────────────────────────────────────────
25
33
  async function notifyTelegram(db, text, threadId) {
26
34
  const { TELEGRAM_TOKEN, TELEGRAM_CHAT_ID } = config;
@@ -60,6 +68,7 @@ export async function rotateDailySession(rootThreadId, db) {
60
68
  previousSessionResetAt: null,
61
69
  newSessionResetAt: now,
62
70
  consolidated: false,
71
+ restarted: false,
63
72
  };
64
73
  try {
65
74
  // Capture current session_reset_at before overwriting
@@ -108,8 +117,10 @@ export async function rotateDailySession(rootThreadId, db) {
108
117
  // ─── Rotate all ──────────────────────────────────────────────────────────────
109
118
  let _rotating = false;
110
119
  /**
111
- * Check and rotate all threads that have daily rotation enabled.
112
- * Called from the watcher service on a schedule (e.g., 4 AM daily).
120
+ * Run the nightly memory pass for every non-worker thread, and force-restart the
121
+ * subset that opted into `daily_rotation`. Called from the background runner on a
122
+ * schedule (4 AM). Idempotent per day via the daily marker and per-thread via
123
+ * session_reset_at, so a late or repeated call is safe.
113
124
  */
114
125
  export async function rotateAllDailySessions() {
115
126
  const todayDate = dailyKey();
@@ -124,11 +135,11 @@ export async function rotateAllDailySessions() {
124
135
  return [];
125
136
  }
126
137
  _rotating = true;
127
- // Claim the day UP FRONT so a restart mid-rotation skips on next boot.
128
- markRanToday("daily-rotation");
129
138
  const db = initMemoryDb();
130
139
  try {
131
- const threads = getDailyRotationThreads(db);
140
+ // Nightly memory pass runs for ALL non-worker threads (memory integrity),
141
+ // regardless of the daily_rotation restart opt-in.
142
+ const threads = getConsolidationThreads(db);
132
143
  const results = [];
133
144
  // Collect threads that need rotation
134
145
  const pending = threads.filter((thread) => {
@@ -147,6 +158,13 @@ export async function rotateAllDailySessions() {
147
158
  }
148
159
  for (const thread of pending) {
149
160
  const result = await rotateDailySession(thread.threadId, db);
161
+ // daily_rotation opt-in: after the memory pass, force a fresh session by
162
+ // killing the CLI process so the keeper respawns it. Only keepAlive threads
163
+ // are respawned by the keeper, and only restart once the memory pass
164
+ // actually advanced the session_reset_at boundary.
165
+ if (result.consolidated && thread.dailyRotation && thread.keepAlive) {
166
+ result.restarted = await forceRestartThread(thread);
167
+ }
150
168
  results.push(result);
151
169
  }
152
170
  // Purge archived threads older than 6 months
@@ -160,12 +178,16 @@ export async function rotateAllDailySessions() {
160
178
  catch (err) {
161
179
  log.error(`[daily-rotation] Archived thread purge failed: ${errorMessage(err)}`);
162
180
  }
181
+ // Claim the day only AFTER the batch completed. If the process crashes
182
+ // mid-rotation, the day is NOT marked done, so the next boot retries the
183
+ // unfinished threads (per-thread work is idempotent via session_reset_at).
184
+ markRanToday("daily-rotation");
163
185
  // Send summary
164
186
  if (results.length > 0 || purged > 0) {
165
187
  const lines = results.map((r) => {
166
188
  if (r.error)
167
189
  return `❌ ${r.rootThreadId}: ${r.error}`;
168
- return `✅ ${r.rootThreadId}: consolidated=${r.consolidated}`;
190
+ return `✅ ${r.rootThreadId}: consolidated=${r.consolidated}, restarted=${r.restarted}`;
169
191
  });
170
192
  if (purged > 0)
171
193
  lines.push(`🗑 Purged ${purged} archived thread(s) older than 180 days`);
@@ -179,4 +201,27 @@ export async function rotateAllDailySessions() {
179
201
  _rotating = false;
180
202
  }
181
203
  }
204
+ // ─── Force restart ───────────────────────────────────────────────────────────
205
+ /**
206
+ * Kill a thread's running CLI process so the keeper respawns a fresh session.
207
+ * The memory pass already advanced session_reset_at, so the respawn cold-starts
208
+ * on a clean context from the thread's normal briefing. Returns true when a live
209
+ * process was found and a kill was issued.
210
+ */
211
+ async function forceRestartThread(thread) {
212
+ const pidEntry = readPidFiles().find((e) => e.threadId === thread.threadId);
213
+ if (!pidEntry || !(await isThreadAlive(thread.threadId, pidEntry.pid, pidEntry.startedAt))) {
214
+ log.info(`[daily-rotation] Thread ${thread.threadId} has no live process — skipping restart (keeper respawns keepAlive threads on its own).`);
215
+ return false;
216
+ }
217
+ try {
218
+ await killThreadTree(thread.threadId, "daily-rotation", pidEntry.pid, pidEntry.startedAt);
219
+ log.info(`[daily-rotation] Killed thread ${thread.threadId} (${thread.name}) for scheduled rotation — keeper will respawn a fresh session.`);
220
+ return true;
221
+ }
222
+ catch (err) {
223
+ log.error(`[daily-rotation] Force restart failed for thread ${thread.threadId}: ${errorMessage(err)}`);
224
+ return false;
225
+ }
226
+ }
182
227
  //# sourceMappingURL=daily-session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"daily-session.js","sourceRoot":"","sources":["../../src/services/daily-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EACL,uBAAuB,EACvB,SAAS,EACT,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAY9E,gFAAgF;AAEhF,KAAK,UAAU,cAAc,CAC3B,EAAmC,EACnC,IAAY,EACZ,QAAiB;IAEjB,MAAM,EAAE,cAAc,EAAE,gBAAgB,EAAE,GAAG,MAAM,CAAC;IACpD,IAAI,CAAC,cAAc,IAAI,CAAC,gBAAgB;QAAE,OAAO;IACjD,IAAI,CAAC;QACH,IAAI,OAAO,GAAG,QAAQ,CAAC;QACvB,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,OAAO,GAAG,sBAAsB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACjD,CAAC;YAAC,MAAM,CAAC;gBACP,kBAAkB;YACpB,CAAC;QACH,CAAC;QACD,MAAM,mBAAmB,CAAC,cAAc,EAAE,gBAAgB,EAAE,IAAI,EAAE;YAChE,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,OAAO,IAAI,SAAS;SAC/B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,0CAA0C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,YAAoB,EACpB,EAAoC;IAEpC,MAAM,QAAQ,GAAG,EAAE,IAAI,YAAY,EAAE,CAAC;IACtC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrC,MAAM,MAAM,GAAwB;QAClC,YAAY;QACZ,sBAAsB,EAAE,IAAI;QAC5B,iBAAiB,EAAE,GAAG;QACtB,YAAY,EAAE,KAAK;KACpB,CAAC;IAEF,IAAI,CAAC;QACH,sDAAsD;QACtD,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,KAAK,GAAG,UAAU,YAAY,YAAY,CAAC;YAClD,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,CAAC,sBAAsB,GAAG,MAAM,CAAC,cAAc,CAAC;QAEtD,4EAA4E;QAC5E,IAAI,CAAC;YACH,MAAM,2BAA2B,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC1D,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,oCAAoC,YAAY,EAAE,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,+CAA+C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC;YACH,MAAM,aAAa,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CACN,oDAAoD,YAAY,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CACzF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC;YACH,MAAM,sBAAsB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CACN,8DAA8D,YAAY,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YACxB,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YAC1C,MAAM,CAAC,iBAAiB,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACpD,GAAG,CAAC,IAAI,CAAC,gCAAgC,YAAY,OAAO,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACjC,GAAG,CAAC,KAAK,CAAC,kCAAkC,YAAY,KAAK,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gFAAgF;AAEhF,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB;IAC1C,MAAM,SAAS,GAAG,QAAQ,EAAE,CAAC;IAE7B,sEAAsE;IACtE,IAAI,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,wCAAwC,SAAS,YAAY,CAAC,CAAC;QACxE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,qDAAqD;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,GAAG,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACjE,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,SAAS,GAAG,IAAI,CAAC;IACjB,uEAAuE;IACvE,YAAY,CAAC,gBAAgB,CAAC,CAAC;IAE/B,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,OAAO,GAA0B,EAAE,CAAC;QAE1C,qCAAqC;QACrC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;YACxC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5D,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC5B,GAAG,CAAC,IAAI,CAAC,UAAU,MAAM,CAAC,QAAQ,kCAAkC,CAAC,CAAC;oBACtE,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzE,MAAM,cAAc,CAAC,EAAE,EAAE,uDAAuD,KAAK,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC7D,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACvB,CAAC;QAED,6CAA6C;QAC7C,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,CAAC;YACH,MAAM,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,GAAG,CAAC,IAAI,CAAC,2BAA2B,MAAM,yCAAyC,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CAAC,kDAAkD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,eAAe;QACf,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC9B,IAAI,CAAC,CAAC,KAAK;oBAAE,OAAO,KAAK,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;gBACtD,OAAO,KAAK,CAAC,CAAC,YAAY,kBAAkB,CAAC,CAAC,YAAY,EAAE,CAAC;YAC/D,CAAC,CAAC,CAAC;YACH,IAAI,MAAM,GAAG,CAAC;gBAAE,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,yCAAyC,CAAC,CAAC;YACzF,MAAM,cAAc,CAAC,EAAE,EAAE,sCAAsC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,uEAAuE;QACvE,wEAAwE;QACxE,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"daily-session.js","sourceRoot":"","sources":["../../src/services/daily-session.ts"],"names":[],"mappings":"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"}