sensorium-mcp 3.1.0-refactor.17 → 3.1.0-refactor.18

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 (109) hide show
  1. package/dist/config/agent-settings.d.ts +0 -6
  2. package/dist/config/agent-settings.d.ts.map +1 -1
  3. package/dist/config/agent-settings.js +0 -22
  4. package/dist/config/agent-settings.js.map +1 -1
  5. package/dist/config/index.d.ts +0 -1
  6. package/dist/config/index.d.ts.map +1 -1
  7. package/dist/config/index.js +0 -1
  8. package/dist/config/index.js.map +1 -1
  9. package/dist/dashboard/routes/copilot.d.ts.map +1 -1
  10. package/dist/dashboard/routes/copilot.js +1 -17
  11. package/dist/dashboard/routes/copilot.js.map +1 -1
  12. package/dist/dashboard/routes/threads-read.d.ts.map +1 -1
  13. package/dist/dashboard/routes/threads-read.js +2 -9
  14. package/dist/dashboard/routes/threads-read.js.map +1 -1
  15. package/dist/dashboard/routes/threads.js +3 -3
  16. package/dist/dashboard/routes/threads.js.map +1 -1
  17. package/dist/dashboard/routes.d.ts.map +1 -1
  18. package/dist/dashboard/routes.js +4 -11
  19. package/dist/dashboard/routes.js.map +1 -1
  20. package/dist/dashboard/spa.html +11 -11
  21. package/dist/index.js +13 -48
  22. package/dist/index.js.map +1 -1
  23. package/dist/lib/logger.d.ts.map +1 -1
  24. package/dist/lib/logger.js +2 -21
  25. package/dist/lib/logger.js.map +1 -1
  26. package/dist/server/factory.js +6 -16
  27. package/dist/server/factory.js.map +1 -1
  28. package/dist/server/http-server.d.ts.map +1 -1
  29. package/dist/server/http-server.js +7 -10
  30. package/dist/server/http-server.js.map +1 -1
  31. package/dist/services/agent-spawn.service.d.ts +3 -3
  32. package/dist/services/agent-spawn.service.d.ts.map +1 -1
  33. package/dist/services/agent-spawn.service.js +8 -14
  34. package/dist/services/agent-spawn.service.js.map +1 -1
  35. package/dist/services/background-runner.d.ts.map +1 -1
  36. package/dist/services/background-runner.js +12 -6
  37. package/dist/services/background-runner.js.map +1 -1
  38. package/dist/services/claude-spawn.service.d.ts +1 -1
  39. package/dist/services/claude-spawn.service.d.ts.map +1 -1
  40. package/dist/services/claude-spawn.service.js +25 -25
  41. package/dist/services/claude-spawn.service.js.map +1 -1
  42. package/dist/services/codex-spawn.service.d.ts +1 -1
  43. package/dist/services/codex-spawn.service.d.ts.map +1 -1
  44. package/dist/services/codex-spawn.service.js +24 -19
  45. package/dist/services/codex-spawn.service.js.map +1 -1
  46. package/dist/services/copilot-spawn.service.d.ts +1 -1
  47. package/dist/services/copilot-spawn.service.d.ts.map +1 -1
  48. package/dist/services/copilot-spawn.service.js +36 -45
  49. package/dist/services/copilot-spawn.service.js.map +1 -1
  50. package/dist/services/dispatcher/poller.d.ts.map +1 -1
  51. package/dist/services/dispatcher/poller.js +5 -24
  52. package/dist/services/dispatcher/poller.js.map +1 -1
  53. package/dist/services/flight-recorder.service.d.ts.map +1 -1
  54. package/dist/services/flight-recorder.service.js +2 -41
  55. package/dist/services/flight-recorder.service.js.map +1 -1
  56. package/dist/services/keeper.service.d.ts +0 -9
  57. package/dist/services/keeper.service.d.ts.map +1 -1
  58. package/dist/services/keeper.service.js +31 -147
  59. package/dist/services/keeper.service.js.map +1 -1
  60. package/dist/services/process.service.d.ts +62 -40
  61. package/dist/services/process.service.d.ts.map +1 -1
  62. package/dist/services/process.service.js +613 -118
  63. package/dist/services/process.service.js.map +1 -1
  64. package/dist/services/scheduler.d.ts +0 -1
  65. package/dist/services/scheduler.d.ts.map +1 -1
  66. package/dist/services/scheduler.js +11 -58
  67. package/dist/services/scheduler.js.map +1 -1
  68. package/dist/services/self-update.service.d.ts +3 -14
  69. package/dist/services/self-update.service.d.ts.map +1 -1
  70. package/dist/services/self-update.service.js +72 -141
  71. package/dist/services/self-update.service.js.map +1 -1
  72. package/dist/services/spawn-common.d.ts +23 -49
  73. package/dist/services/spawn-common.d.ts.map +1 -1
  74. package/dist/services/spawn-common.js +47 -262
  75. package/dist/services/spawn-common.js.map +1 -1
  76. package/dist/services/thread-health.service.d.ts +1 -1
  77. package/dist/services/thread-health.service.d.ts.map +1 -1
  78. package/dist/services/thread-health.service.js +6 -6
  79. package/dist/services/thread-health.service.js.map +1 -1
  80. package/dist/services/worker-cleanup.service.d.ts.map +1 -1
  81. package/dist/services/worker-cleanup.service.js +92 -9
  82. package/dist/services/worker-cleanup.service.js.map +1 -1
  83. package/dist/tools/defs/session-defs.js +1 -1
  84. package/dist/tools/defs/session-defs.js.map +1 -1
  85. package/dist/tools/defs/utility-defs.d.ts.map +1 -1
  86. package/dist/tools/defs/utility-defs.js +3 -4
  87. package/dist/tools/defs/utility-defs.js.map +1 -1
  88. package/dist/tools/delegate-tool.d.ts +1 -1
  89. package/dist/tools/delegate-tool.d.ts.map +1 -1
  90. package/dist/tools/delegate-tool.js +5 -5
  91. package/dist/tools/delegate-tool.js.map +1 -1
  92. package/dist/tools/session-tools.d.ts.map +1 -1
  93. package/dist/tools/session-tools.js +9 -26
  94. package/dist/tools/session-tools.js.map +1 -1
  95. package/dist/tools/utility-tools.js +1 -1
  96. package/dist/tools/utility-tools.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/config/detail-grant.d.ts +0 -39
  99. package/dist/config/detail-grant.d.ts.map +0 -1
  100. package/dist/config/detail-grant.js +0 -61
  101. package/dist/config/detail-grant.js.map +0 -1
  102. package/dist/services/broker-client.d.ts +0 -181
  103. package/dist/services/broker-client.d.ts.map +0 -1
  104. package/dist/services/broker-client.js +0 -323
  105. package/dist/services/broker-client.js.map +0 -1
  106. package/dist/services/spawn-exit-watcher.d.ts +0 -32
  107. package/dist/services/spawn-exit-watcher.d.ts.map +0 -1
  108. package/dist/services/spawn-exit-watcher.js +0 -102
  109. package/dist/services/spawn-exit-watcher.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../src/services/dispatcher/poller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poller.js","sourceRoot":"","sources":["../../../src/services/dispatcher/poller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"flight-recorder.service.d.ts","sourceRoot":"","sources":["../../src/services/flight-recorder.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,QAAkE,CAAC;AAkBnG,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,+EAA+E;IAC/E,kBAAkB,IAAI,IAAI,CAAC;CAC5B;AAqED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,qBAA0B,GAAG,oBAAoB,CA6G7F"}
1
+ {"version":3,"file":"flight-recorder.service.d.ts","sourceRoot":"","sources":["../../src/services/flight-recorder.service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,QAAkE,CAAC;AAKnG,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,+EAA+E;IAC/E,kBAAkB,IAAI,IAAI,CAAC;CAC5B;AAuDD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,qBAA0B,GAAG,oBAAoB,CA8F7F"}
@@ -22,18 +22,6 @@ import { log } from "../lib/logger.js";
22
22
  export const HEARTBEAT_FILE_PATH = join(homedir(), ".remote-copilot-mcp", "server-heartbeat.json");
23
23
  const DEFAULT_BEAT_INTERVAL_MS = 1_000;
24
24
  const DEFAULT_WRITE_INTERVAL_MS = 5_000;
25
- /**
26
- * Stall persistence (2026-07-28 forensics): the heartbeat file is overwritten
27
- * every write interval, so a lag SPIKE leaves no durable record — the 15:11
28
- * freeze had to be reconstructed from telemetry gaps. Spikes above this
29
- * threshold are appended to a dedicated spike log by the WORKER (immune to the
30
- * stall, survives a mid-stall kill) and WARN-logged by the main thread once the
31
- * loop unblocks (records the full stall duration).
32
- */
33
- const LAG_SPIKE_THRESHOLD_MS = 1_000;
34
- /** Min gap between spike-log appends so a long stall writes a line per write
35
- * interval, not an unbounded stream. */
36
- const SPIKE_APPEND_MIN_GAP_MS = 5_000;
37
25
  /**
38
26
  * How many times a dead heartbeat worker is respawned before giving up. The
39
27
  * heartbeat is the supervisor's stalled-vs-dead evidence — losing it silently
@@ -45,11 +33,10 @@ const MAX_WORKER_RESPAWNS = 3;
45
33
  const WORKER_SOURCE = `
46
34
  const { parentPort, workerData } = require("node:worker_threads");
47
35
  const fs = require("node:fs");
48
- const { filePath, beatIntervalMs, writeIntervalMs, spikeFilePath, spikeThresholdMs, spikeMinGapMs } = workerData;
36
+ const { filePath, beatIntervalMs, writeIntervalMs } = workerData;
49
37
 
50
38
  let lastBeatAt = performance.now();
51
39
  let lastMainLagMs = 0;
52
- let lastSpikeAppendAt = 0;
53
40
 
54
41
  parentPort.on("message", (m) => {
55
42
  // Test hook: lets the respawn path be exercised through a real worker crash.
@@ -63,19 +50,6 @@ setInterval(() => {
63
50
  const msSinceLastBeat = performance.now() - lastBeatAt;
64
51
  const overdueMs = Math.max(0, msSinceLastBeat - beatIntervalMs);
65
52
  const eventLoopLagMs = Math.round(Math.max(lastMainLagMs, overdueMs));
66
- // Durable stall evidence: the heartbeat file below is overwritten each tick,
67
- // so append spikes to their own log — written from THIS thread, which keeps
68
- // running (and keeps appending a rising number) while the main loop is
69
- // frozen, and survives the process being killed mid-stall.
70
- if (eventLoopLagMs >= spikeThresholdMs && performance.now() - lastSpikeAppendAt >= spikeMinGapMs) {
71
- lastSpikeAppendAt = performance.now();
72
- try {
73
- fs.appendFileSync(
74
- spikeFilePath,
75
- JSON.stringify({ ts: new Date().toISOString(), pid: process.pid, eventLoopLagMs }) + "\\n",
76
- );
77
- } catch { /* best-effort */ }
78
- }
79
53
  const payload = JSON.stringify({
80
54
  ts: Date.now(),
81
55
  pid: process.pid,
@@ -124,12 +98,6 @@ export function startFlightRecorder(options = {}) {
124
98
  // Timer drift = how late this 1s tick fired — the event-loop lag.
125
99
  const lagMs = Math.max(0, now - lastFire - beatIntervalMs);
126
100
  lastFire = now;
127
- // This code runs AFTER the loop unblocked, so lagMs here is the FULL
128
- // stall duration — record it where post-mortems will look (server.log),
129
- // with what the loop was late for. The worker already streamed the
130
- // rising lag to the spike file while the stall was in progress.
131
- if (lagMs >= LAG_SPIKE_THRESHOLD_MS)
132
- log.warn(`[flight-recorder] event-loop stall ended: the loop was blocked for ~${Math.round(lagMs)}ms`);
133
101
  w.postMessage({ lagMs });
134
102
  }, beatIntervalMs);
135
103
  beatTimer.unref();
@@ -163,14 +131,7 @@ export function startFlightRecorder(options = {}) {
163
131
  function spawnWorker() {
164
132
  const w = new Worker(WORKER_SOURCE, {
165
133
  eval: true,
166
- workerData: {
167
- filePath,
168
- beatIntervalMs,
169
- writeIntervalMs,
170
- spikeFilePath: filePath.replace(/\.json$/, "") + "-spikes.log",
171
- spikeThresholdMs: LAG_SPIKE_THRESHOLD_MS,
172
- spikeMinGapMs: SPIKE_APPEND_MIN_GAP_MS,
173
- },
134
+ workerData: { filePath, beatIntervalMs, writeIntervalMs },
174
135
  });
175
136
  worker = w;
176
137
  w.unref();
@@ -1 +1 @@
1
- {"version":3,"file":"flight-recorder.service.js","sourceRoot":"","sources":["../../src/services/flight-recorder.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flight-recorder.service.js","sourceRoot":"","sources":["../../src/services/flight-recorder.service.ts"],"names":[],"mappings":"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"}
@@ -15,15 +15,6 @@ export declare class KeeperService {
15
15
  start(): void;
16
16
  stop(): void;
17
17
  private syncKeepers;
18
- /** One keeper cycle with persistence: whenever a cycle changed any durable
19
- * policy counter, push the new state to the broker's registry so it survives
20
- * an MCP restart (plan §4.3). Single choke point — the cycle body has many
21
- * early returns and each mutation site would otherwise need its own save. */
22
- private runKeeperCycle;
23
- private static durableStateOf;
24
- /** Restore persisted counters when a keeper starts (max-merge so counters that
25
- * already advanced in this session are never rolled back). */
26
- private hydrateFromRegistry;
27
18
  private checkAndRestart;
28
19
  private notifyDeath;
29
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"keeper.service.d.ts","sourceRoot":"","sources":["../../src/services/keeper.service.ts"],"names":[],"mappings":"AAcA,OAAO,EAAe,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAGzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAmK5D,qBAAa,aAAa;IAKtB,OAAO,CAAC,IAAI;IAJd,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,SAAS,CAA+C;gBAGtD,IAAI,EAAE;QACZ,WAAW,EAAE,MAAM,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;QACnD,eAAe,EAAE,sBAAsB,CAAC;QACxC,QAAQ,EAAE;YACR,WAAW,CACT,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;SAClB,CAAC;QACF,MAAM,EAAE,MAAM,CAAC;KAChB;IAGH,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAWZ,OAAO,CAAC,WAAW;IAwEnB;;;kFAG8E;YAChE,cAAc;IAc5B,OAAO,CAAC,MAAM,CAAC,cAAc;IAY7B;mEAC+D;YACjD,mBAAmB;YAkCnB,eAAe;YAmUf,WAAW;CAkB1B"}
1
+ {"version":3,"file":"keeper.service.d.ts","sourceRoot":"","sources":["../../src/services/keeper.service.ts"],"names":[],"mappings":"AAcA,OAAO,EAAe,KAAK,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAGzF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAyJ5D,qBAAa,aAAa;IAKtB,OAAO,CAAC,IAAI;IAJd,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,SAAS,CAA+C;gBAGtD,IAAI,EAAE;QACZ,WAAW,EAAE,MAAM,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;QACnD,eAAe,EAAE,sBAAsB,CAAC;QACxC,QAAQ,EAAE;YACR,WAAW,CACT,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;SAClB,CAAC;QACF,MAAM,EAAE,MAAM,CAAC;KAChB;IAGH,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAWZ,OAAO,CAAC,WAAW;YAiEL,eAAe;YAiRf,WAAW;CAkB1B"}
@@ -8,7 +8,6 @@ import { dispatchSpawn } from "./agent-spawn.service.js";
8
8
  import { getKeepAliveThreads, getThread } from "../data/memory/thread-registry.js";
9
9
  import { ThreadState } from "./thread-lifecycle.service.js";
10
10
  import { errorMessage } from "../lib/utils.js";
11
- import { brokerGetKeeperState, brokerSaveKeeperState } from "./broker-client.js";
12
11
  const KEEPER_CHECK_INTERVAL_MS = 120_000; // 2 min
13
12
  const KEEPER_MAX_RETRIES = 5;
14
13
  const KEEPER_COOLDOWN_MS = 300_000; // 5 min
@@ -66,7 +65,7 @@ function findLatestThreadLogFile(threadId) {
66
65
  * NEVER affect the kill. This runs only when the keeper has ALREADY decided the
67
66
  * thread is stuck; it triggers no new kills.
68
67
  */
69
- async function writeWedgeSnapshot(threadId, pid, reason, heartbeat, now) {
68
+ function writeWedgeSnapshot(threadId, pid, reason, heartbeat, now) {
70
69
  try {
71
70
  const dir = join(PROCESS_LOGS_DIR, "wedge-snapshots");
72
71
  mkdirSync(dir, { recursive: true });
@@ -77,7 +76,7 @@ async function writeWedgeSnapshot(threadId, pid, reason, heartbeat, now) {
77
76
  lines.push(`timestamp: ${new Date(now).toISOString()}`);
78
77
  let alive;
79
78
  try {
80
- alive = await isProcessAlive(pid);
79
+ alive = isProcessAlive(pid);
81
80
  }
82
81
  catch (err) {
83
82
  alive = `error: ${errorMessage(err)}`;
@@ -168,7 +167,7 @@ export class KeeperService {
168
167
  // Add new keepers
169
168
  for (const thread of threads) {
170
169
  if (!this.keepers.has(thread.threadId)) {
171
- const entry = {
170
+ this.keepers.set(thread.threadId, {
172
171
  threadId: thread.threadId,
173
172
  retryCount: 0,
174
173
  fastExitCount: 0,
@@ -181,22 +180,15 @@ export class KeeperService {
181
180
  survivedKillCount: 0,
182
181
  lastUnkillableNotifyMs: 0,
183
182
  lastLogSizeBytes: 0,
184
- lastHeartbeatMs: 0,
185
- };
186
- this.keepers.set(thread.threadId, entry);
183
+ });
187
184
  log.info(`[keeper] Started keeper for thread ${thread.threadId} ('${thread.name}')`);
188
- // Hydrate backoff counters from the broker's registry (plan §4.3): they
189
- // used to reset to zero on every MCP restart — during the Jul 25 wave 15
190
- // resets in 2h19m meant no backoff ever matured. Fire-and-forget; until
191
- // it lands the entry runs on defaults (today's behavior).
192
- void this.hydrateFromRegistry(entry);
193
185
  }
194
186
  }
195
187
  // Check all active keepers (skip if already in-flight to prevent duplicate spawns)
196
188
  for (const entry of this.keepers.values()) {
197
189
  if (!entry.stopped && !entry.checking) {
198
190
  entry.checking = true;
199
- this.runKeeperCycle(entry)
191
+ this.checkAndRestart(entry)
200
192
  .catch((err) => {
201
193
  log.warn(`[keeper] checkAndRestart error for thread ${entry.threadId}: ${errorMessage(err)}`);
202
194
  })
@@ -206,64 +198,6 @@ export class KeeperService {
206
198
  }
207
199
  }
208
200
  }
209
- /** One keeper cycle with persistence: whenever a cycle changed any durable
210
- * policy counter, push the new state to the broker's registry so it survives
211
- * an MCP restart (plan §4.3). Single choke point — the cycle body has many
212
- * early returns and each mutation site would otherwise need its own save. */
213
- async runKeeperCycle(entry) {
214
- const before = KeeperService.durableStateOf(entry);
215
- try {
216
- await this.checkAndRestart(entry);
217
- }
218
- finally {
219
- const after = KeeperService.durableStateOf(entry);
220
- if (JSON.stringify(before) !== JSON.stringify(after)) {
221
- void brokerSaveKeeperState(after).catch(() => {
222
- /* unreachable broker already WARN-logged by the client */
223
- });
224
- }
225
- }
226
- }
227
- static durableStateOf(entry) {
228
- return {
229
- threadId: entry.threadId,
230
- retryCount: entry.retryCount,
231
- fastExitCount: entry.fastExitCount,
232
- fastExitEscalation: entry.fastExitEscalation,
233
- cooldownUntilMs: entry.cooldownUntil > 0 ? entry.cooldownUntil : null,
234
- survivedKillCount: entry.survivedKillCount,
235
- lastStartAtMs: entry.lastStartTime > 0 ? entry.lastStartTime : null,
236
- };
237
- }
238
- /** Restore persisted counters when a keeper starts (max-merge so counters that
239
- * already advanced in this session are never rolled back). */
240
- async hydrateFromRegistry(entry) {
241
- try {
242
- const state = await brokerGetKeeperState(entry.threadId);
243
- if (!state || entry.stopped)
244
- return;
245
- entry.retryCount = Math.max(entry.retryCount, state.retryCount);
246
- entry.fastExitCount = Math.max(entry.fastExitCount, state.fastExitCount);
247
- entry.fastExitEscalation = Math.max(entry.fastExitEscalation, state.fastExitEscalation);
248
- entry.survivedKillCount = Math.max(entry.survivedKillCount, state.survivedKillCount);
249
- if (state.cooldownUntilMs !== null && state.cooldownUntilMs > entry.cooldownUntil)
250
- entry.cooldownUntil = state.cooldownUntilMs;
251
- if (state.lastStartAtMs !== null && entry.lastStartTime === 0)
252
- entry.lastStartTime = state.lastStartAtMs;
253
- if (state.retryCount > 0 ||
254
- state.fastExitCount > 0 ||
255
- state.fastExitEscalation > 0 ||
256
- state.survivedKillCount > 0 ||
257
- (state.cooldownUntilMs !== null && state.cooldownUntilMs > Date.now())) {
258
- log.info(`[keeper] Thread ${entry.threadId}: restored persisted keeper state (retry=${state.retryCount}, fastExit=${state.fastExitCount}, escalation=${state.fastExitEscalation}, survivedKill=${state.survivedKillCount}${state.cooldownUntilMs !== null && state.cooldownUntilMs > Date.now()
259
- ? `, cooldown until ${new Date(state.cooldownUntilMs).toISOString()}`
260
- : ""})`);
261
- }
262
- }
263
- catch (err) {
264
- log.debug(`[keeper] keeper-state hydration failed for thread ${entry.threadId}: ${errorMessage(err)}`);
265
- }
266
- }
267
201
  async checkAndRestart(entry) {
268
202
  const now = Date.now();
269
203
  // 1. Check cooldown
@@ -272,71 +206,29 @@ export class KeeperService {
272
206
  return;
273
207
  }
274
208
  // 2. Check if thread is running — reads PID file directly (authoritative OS evidence)
275
- const aliveProc = await findAliveThreadViaPidFile(entry.threadId);
276
- const alivePid = aliveProc?.pid;
277
- // 2a. PID file shows no live tracked process. A fresh heartbeat USED to be
278
- // trusted alone as "someone is actively serving this thread" — but with the
279
- // tracked PID gone, a heartbeat < 1h old is NOT proof of life: the heartbeat
280
- // file is only rewritten in the wait poll loop and on tool calls, so a long
281
- // final model turn freezes it, and if the process then dies (e.g. Claude's
282
- // 5-hour org limit 429s it) the frozen-but-recent heartbeat lingers for up to
283
- // STUCK_THRESHOLD_MS. That is exactly how thread 1327's death was silently
284
- // swallowed for ~67 minutes on 2026-07-27: the limbo guard fired every ~2-min
285
- // cycle while BOTH the restart AND the operator-facing 💀 notification were
286
- // suppressed, until the frozen heartbeat finally crossed 1h.
287
- //
288
- // The ONLY signals that prove a worker is alive RIGHT NOW are CROSS-CYCLE
289
- // deltas measured between keeper cycles (~2 min apart) — symmetric to the
290
- // 2026-07-26 stuck-branch fix, which likewise learned that a stale heartbeat
291
- // alone does not prove/disprove a wedge because a long model turn freezes it:
292
- // • heartbeat ADVANCED since the previous cycle — a live untracked worker
293
- // idle in the long-poll rewrites it every ~2s, so it keeps advancing, OR
294
- // • stdout GREW in bytes since the previous cycle (sizeGrew) — a live worker
295
- // mid model turn emits tokens even while its heartbeat is frozen.
296
- // A genuinely dead worker shows BOTH frozen: no heartbeat advance AND no
297
- // stdout growth → fall through to the normal restart + notifyDeath path so the
298
- // operator is warned within ~2 keeper cycles instead of ~1 hour. (mtime < 1h
299
- // is deliberately NOT used here: a just-died process leaves a log whose mtime
300
- // is recent for up to an hour — the same failure mode as the frozen heartbeat.)
209
+ const alivePid = findAliveThreadViaPidFile(entry.threadId);
210
+ // 2a. PID file shows no live tracked process — but a fresh heartbeat is the
211
+ // authoritative "someone is actively serving this thread" signal: the poll
212
+ // loop rewrites it every ~2s (and every tool call). If it is fresh, a live
213
+ // Claude worker is STILL serving the thread under a PID we failed to track
214
+ // (e.g. on Windows a process-tree/launcher death leaves the real worker
215
+ // running while the tracked PID is gone). Spawning now would create a
216
+ // DUPLICATE process → the operator gets answered twice. Skip the restart;
217
+ // when the real worker finally exits, its heartbeat goes stale and the
218
+ // normal restart path takes over.
301
219
  if (alivePid === undefined) {
302
220
  const heartbeat = readThreadHeartbeat(entry.threadId);
303
- // Upper sanity bound: no heartbeat, a pre-restart heartbeat from an older
304
- // server generation, or a heartbeat already older than 1h is definitely not
305
- // a live untracked worker → fall through to the cleanup + restart path.
306
- const heartbeatPlausiblyLive = heartbeat !== null && heartbeat > SERVER_START_TIME && now - heartbeat < STUCK_THRESHOLD_MS;
307
- if (heartbeatPlausiblyLive) {
308
- const streamLog = findLatestThreadLog(entry.threadId);
309
- const heartbeatAdvanced = entry.lastHeartbeatMs > 0 && heartbeat > entry.lastHeartbeatMs;
310
- const sizeGrew = entry.lastLogSizeBytes > 0 &&
311
- streamLog !== null &&
312
- streamLog.sizeBytes > entry.lastLogSizeBytes;
313
- // First cycle of this episode: no baseline yet, so no cross-cycle delta can
314
- // be measured. Record the baselines and grant exactly ONE ~2-min grace
315
- // cycle (vs. the old up-to-1-hour hole) before demanding evidence of life.
316
- const noBaseline = entry.lastHeartbeatMs === 0 && entry.lastLogSizeBytes === 0;
317
- if (noBaseline || heartbeatAdvanced || sizeGrew) {
318
- // Still (or possibly) a live untracked worker — refresh baselines so the
319
- // next cycle measures a fresh delta, then skip the restart.
320
- entry.lastHeartbeatMs = heartbeat;
321
- if (streamLog !== null)
322
- entry.lastLogSizeBytes = streamLog.sizeBytes;
323
- const evidence = noBaseline
324
- ? "first cycle — baselining"
325
- : heartbeatAdvanced
326
- ? "heartbeat advanced"
327
- : "stdout grew";
328
- if (!entry.limboWarned) {
329
- log.warn(`[keeper] Thread ${entry.threadId}: no live tracked PID but a worker still shows life (${evidence}, heartbeat ${Math.round((now - heartbeat) / 1000)}s ago) — a live worker is still serving it under an untracked PID. Skipping restart to avoid a duplicate process.`);
330
- entry.limboWarned = true;
331
- }
332
- else {
333
- log.debug(`[keeper] Thread ${entry.threadId}: still in untracked-live-worker limbo (${evidence}, heartbeat ${Math.round((now - heartbeat) / 1000)}s ago) — skipping restart.`);
334
- }
335
- return;
221
+ if (heartbeat !== null &&
222
+ heartbeat > SERVER_START_TIME &&
223
+ now - heartbeat < STUCK_THRESHOLD_MS) {
224
+ if (!entry.limboWarned) {
225
+ log.warn(`[keeper] Thread ${entry.threadId}: no live tracked PID but heartbeat is fresh (${Math.round((now - heartbeat) / 1000)}s ago) — a live worker is still serving it under an untracked PID. Skipping restart to avoid a duplicate process.`);
226
+ entry.limboWarned = true;
336
227
  }
337
- // Heartbeat recent but FROZEN across cycles AND stdout static → the worker
338
- // is dead (the 2026-07-27 thread-1327 case). Do NOT skip — fall through to
339
- // the cleanup + normal restart + notifyDeath path below.
228
+ else {
229
+ log.debug(`[keeper] Thread ${entry.threadId}: still in untracked-live-worker limbo (heartbeat ${Math.round((now - heartbeat) / 1000)}s ago) — skipping restart.`);
230
+ }
231
+ return;
340
232
  }
341
233
  // Process is genuinely gone — any prior survived-kill episode is over.
342
234
  entry.survivedKillCount = 0;
@@ -344,8 +236,6 @@ export class KeeperService {
344
236
  // A restart writes a fresh (empty) stdout log; drop the byte baseline so the
345
237
  // next episode never compares sizes across two different log files.
346
238
  entry.lastLogSizeBytes = 0;
347
- // Drop the heartbeat liveness baseline too — the next episode measures fresh.
348
- entry.lastHeartbeatMs = 0;
349
239
  }
350
240
  // Not in limbo (PID alive, or heartbeat stale/absent) — clear the flag so a
351
241
  // future episode logs afresh.
@@ -381,16 +271,12 @@ export class KeeperService {
381
271
  const streamLog = heartbeatStale ? findLatestThreadLog(entry.threadId) : null;
382
272
  const streamAgeMs = streamLog !== null ? now - streamLog.mtimeMs : null;
383
273
  const mtimeFresh = streamAgeMs !== null && streamAgeMs >= 0 && streamAgeMs < STUCK_THRESHOLD_MS;
384
- const sizeGrew = streamLog !== null &&
385
- entry.lastLogSizeBytes > 0 &&
386
- streamLog.sizeBytes > entry.lastLogSizeBytes;
274
+ const sizeGrew = streamLog !== null && entry.lastLogSizeBytes > 0 && streamLog.sizeBytes > entry.lastLogSizeBytes;
387
275
  if (streamLog !== null)
388
276
  entry.lastLogSizeBytes = streamLog.sizeBytes;
389
277
  const streamFresh = mtimeFresh || sizeGrew;
390
278
  if (heartbeatStale && streamFresh) {
391
- log.info(`[keeper] Thread ${entry.threadId} heartbeat is stale (${heartbeat !== null ? Math.round((now - heartbeat) / 60000) + "m" : "none"}) but its stdout stream shows life (${mtimeFresh
392
- ? `mtime ${Math.round(streamAgeMs / 1000)}s ago`
393
- : "grew in bytes"}) — agent is mid-turn (streaming), not wedged. Skipping kill.`);
279
+ log.info(`[keeper] Thread ${entry.threadId} heartbeat is stale (${heartbeat !== null ? Math.round((now - heartbeat) / 60000) + "m" : "none"}) but its stdout stream shows life (${mtimeFresh ? `mtime ${Math.round(streamAgeMs / 1000)}s ago` : "grew in bytes"}) — agent is mid-turn (streaming), not wedged. Skipping kill.`);
394
280
  }
395
281
  const isStuck = heartbeatStale && !streamFresh;
396
282
  if (isStuck) {
@@ -412,13 +298,11 @@ export class KeeperService {
412
298
  // DIAGNOSTIC (logging-only): forensic snapshot BEFORE the kill so we can
413
299
  // see whether the stuck agent was still MCP-connected or already orphaned,
414
300
  // plus the tail of its stdout. Best-effort; never blocks/affects the kill.
415
- await writeWedgeSnapshot(entry.threadId, alivePid, reason, heartbeat, now);
416
- // Identity-checked kill: pass the PID file's startedAt so the broker can
417
- // refuse a recycled pid instead of killing a stranger.
418
- await killProcessTree(alivePid, entry.threadId, "keeper-stuck", aliveProc?.startedAt);
301
+ writeWedgeSnapshot(entry.threadId, alivePid, reason, heartbeat, now);
302
+ await killProcessTree(alivePid, entry.threadId);
419
303
  // Verify kill succeeded before restarting — if the process is still alive,
420
304
  // do NOT spawn a second instance. Keeper will retry on the next cycle.
421
- if (await isProcessAlive(alivePid, aliveProc?.startedAt)) {
305
+ if (isProcessAlive(alivePid)) {
422
306
  entry.survivedKillCount++;
423
307
  log.warn(`[keeper] Thread ${entry.threadId} PID=${alivePid} survived kill (${entry.survivedKillCount}x) — skipping restart (will retry next cycle)`);
424
308
  // Escalate: a process that repeatedly refuses to die needs operator
@@ -506,7 +390,7 @@ export class KeeperService {
506
390
  ? `last keeper-start ${Math.round((now - entry.lastStartTime) / 1000)}s ago`
507
391
  : "never started by this server (inherited PID file)";
508
392
  log.info(`[keeper] Thread ${entry.threadId} not running — restarting (attempt ${entry.retryCount + 1}/${KEEPER_MAX_RETRIES}, ${lastStartLabel})`);
509
- const result = await dispatchSpawn((thread.client || "claude"), thread.name, entry.threadId, this.deps.threadLifecycle, thread.workingDirectory ?? undefined);
393
+ const result = dispatchSpawn((thread.client || "claude"), thread.name, entry.threadId, this.deps.threadLifecycle, thread.workingDirectory ?? undefined);
510
394
  if ("pid" in result) {
511
395
  entry.lastStartTime = Date.now();
512
396
  entry.retryCount = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"keeper.service.js","sourceRoot":"","sources":["../../src/services/keeper.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,EAAE,WAAW,EAA+B,MAAM,+BAA+B,CAAC;AAEzF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEjF,MAAM,wBAAwB,GAAG,OAAO,CAAC,CAAC,QAAQ;AAClD,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,kBAAkB,GAAG,OAAO,CAAC,CAAC,QAAQ;AAC5C,MAAM,sBAAsB,GAAG,OAAO,CAAC,CAAC,mDAAmD;AAC3F,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAC9B,MAAM,0BAA0B,GAAG,OAAO,CAAC,CAAC,SAAS;AACrD,MAAM,yBAAyB,GAAG,UAAU,CAAC,CAAC,UAAU;AACxD,MAAM,kBAAkB,GAAG,SAAS,CAAC,CAAC,8BAA8B;AACpE,MAAM,iBAAiB,GAAG,CAAC,CAAC,CAAC,6CAA6C;AAC1E,MAAM,yBAAyB,GAAG,OAAO,CAAC,CAAC,2DAA2D;AACtG,MAAM,sBAAsB,GAAG,SAAS,CAAC,CAAC,gFAAgF;AAE1H,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,+EAA+E;AAC/E,yEAAyE;AACzE,2EAA2E;AAC3E,MAAM,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;AAErC,yGAAyG;AACzG,SAAS,mBAAmB,CAC1B,QAAgB;IAEhB,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,CAAC;IACvC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,QAAQ,iCAAiC,CAAC,CAAC;IAC3E,IAAI,IAAI,GAAgE,IAAI,CAAC;IAC7E,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO;gBACpC,IAAI,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QACnE,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,wFAAwF;AACxF,SAAS,uBAAuB,CAAC,QAAgB;IAC/C,OAAO,mBAAmB,CAAC,QAAQ,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,KAAK,UAAU,kBAAkB,CAC/B,QAAgB,EAChB,GAAW,EACX,MAAc,EACd,SAAwB,EACxB,GAAW;IAEX,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;QACtD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,EAAE,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,WAAW,MAAM,EAAE,CAAC,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,KAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,GAAG,UAAU,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACxC,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,WAA4B,CAAC;QACjC,IAAI,CAAC;YACH,WAAW,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,WAAW,GAAG,UAAU,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9C,CAAC;QACD,MAAM,UAAU,GACd,OAAO,WAAW,KAAK,QAAQ;YAC7B,CAAC,CAAC,WAAW,GAAG,CAAC;gBACf,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,yBAAyB;YAC7B,CAAC,CAAC,SAAS,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,WAAW,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC;QAC5E,KAAK,CAAC,IAAI,CAAC,mBAAmB,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACvF,MAAM,OAAO,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,IAAI,WAAW,EAAE,CAAC,CAAC;QACnD,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC;qBACxC,KAAK,CAAC,OAAO,CAAC;qBACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;qBAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gBACd,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;gBAC3C,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;YACtB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,KAAK,CAAC,IAAI,CAAC,sBAAsB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxD,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,2DAA2D,QAAQ,MAAM,IAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,wDAAwD,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CACzF,CAAC;IACJ,CAAC;AACH,CAAC;AA0CD,MAAM,OAAO,aAAa;IAKd;IAJF,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IACzC,SAAS,GAA0C,IAAI,CAAC;IAEhE,YACU,IAYP;QAZO,SAAI,GAAJ,IAAI,CAYX;IACA,CAAC;IAEJ,KAAK;QACH,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI;YAAE,OAAO;QACpC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,wBAAwB,CAAC,CAAC;IACnF,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACjB,6DAA6D;QAC7D,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAClC,GAAG,CAAC,SAAS,CACX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,GAAG,OAAO,CAAC,IAAI,CAC9K,CAAC;QAEF,IAAI,OAA+C,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,OAAO,GAAG,mBAAmB,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,+CAA+C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEvD,iDAAiD;QACjD,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;gBACrB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,8CAA8C,QAAQ,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACvC,MAAM,KAAK,GAAgB;oBACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,UAAU,EAAE,CAAC;oBACb,aAAa,EAAE,CAAC;oBAChB,kBAAkB,EAAE,CAAC;oBACrB,aAAa,EAAE,CAAC;oBAChB,aAAa,EAAE,CAAC;oBAChB,OAAO,EAAE,KAAK;oBACd,QAAQ,EAAE,KAAK;oBACf,WAAW,EAAE,KAAK;oBAClB,iBAAiB,EAAE,CAAC;oBACpB,sBAAsB,EAAE,CAAC;oBACzB,gBAAgB,EAAE,CAAC;oBACnB,eAAe,EAAE,CAAC;iBACnB,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACzC,GAAG,CAAC,IAAI,CAAC,sCAAsC,MAAM,CAAC,QAAQ,MAAM,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;gBACrF,wEAAwE;gBACxE,yEAAyE;gBACzE,wEAAwE;gBACxE,0DAA0D;gBAC1D,KAAK,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,mFAAmF;QACnF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACtC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACtB,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;qBACvB,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,GAAG,CAAC,IAAI,CACN,6CAA6C,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CACpF,CAAC;gBACJ,CAAC,CAAC;qBACD,OAAO,CAAC,GAAG,EAAE;oBACZ,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACzB,CAAC,CAAC,CAAC;YACP,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;kFAG8E;IACtE,KAAK,CAAC,cAAc,CAAC,KAAkB;QAC7C,MAAM,MAAM,GAAG,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;gBAAS,CAAC;YACT,MAAM,KAAK,GAAG,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAClD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrD,KAAK,qBAAqB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;oBAC3C,0DAA0D;gBAC5D,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,cAAc,CAAC,KAAkB;QAC9C,OAAO;YACL,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;YAC5C,eAAe,EAAE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;YACrE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;YAC1C,aAAa,EAAE,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;SACpE,CAAC;IACJ,CAAC;IAED;mEAC+D;IACvD,KAAK,CAAC,mBAAmB,CAAC,KAAkB;QAClD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO;gBAAE,OAAO;YACpC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAChE,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YACzE,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACxF,KAAK,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACrF,IAAI,KAAK,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,aAAa;gBAC/E,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,eAAe,CAAC;YAC9C,IAAI,KAAK,CAAC,aAAa,KAAK,IAAI,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC;gBAC3D,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC5C,IACE,KAAK,CAAC,UAAU,GAAG,CAAC;gBACpB,KAAK,CAAC,aAAa,GAAG,CAAC;gBACvB,KAAK,CAAC,kBAAkB,GAAG,CAAC;gBAC5B,KAAK,CAAC,iBAAiB,GAAG,CAAC;gBAC3B,CAAC,KAAK,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EACtE,CAAC;gBACD,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,4CAA4C,KAAK,CAAC,UAAU,cAAc,KAAK,CAAC,aAAa,gBAAgB,KAAK,CAAC,kBAAkB,kBAAkB,KAAK,CAAC,iBAAiB,GAC7M,KAAK,CAAC,eAAe,KAAK,IAAI,IAAI,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE;oBAClE,CAAC,CAAC,oBAAoB,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,WAAW,EAAE,EAAE;oBACrE,CAAC,CAAC,EACN,GAAG,CACJ,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CACP,qDAAqD,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,KAAkB;QAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,oBAAoB;QACpB,IAAI,KAAK,CAAC,aAAa,GAAG,GAAG,EAAE,CAAC;YAC9B,GAAG,CAAC,KAAK,CACP,mBAAmB,KAAK,CAAC,QAAQ,oBAAoB,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CACvG,CAAC;YACF,OAAO;QACT,CAAC;QAED,sFAAsF;QACtF,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,SAAS,EAAE,GAAG,CAAC;QAEhC,2EAA2E;QAC3E,4EAA4E;QAC5E,6EAA6E;QAC7E,4EAA4E;QAC5E,2EAA2E;QAC3E,8EAA8E;QAC9E,2EAA2E;QAC3E,8EAA8E;QAC9E,4EAA4E;QAC5E,6DAA6D;QAC7D,EAAE;QACF,0EAA0E;QAC1E,0EAA0E;QAC1E,6EAA6E;QAC7E,8EAA8E;QAC9E,4EAA4E;QAC5E,6EAA6E;QAC7E,+EAA+E;QAC/E,sEAAsE;QACtE,yEAAyE;QACzE,+EAA+E;QAC/E,6EAA6E;QAC7E,8EAA8E;QAC9E,gFAAgF;QAChF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,0EAA0E;YAC1E,4EAA4E;YAC5E,wEAAwE;YACxE,MAAM,sBAAsB,GAC1B,SAAS,KAAK,IAAI,IAAI,SAAS,GAAG,iBAAiB,IAAI,GAAG,GAAG,SAAS,GAAG,kBAAkB,CAAC;YAC9F,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACtD,MAAM,iBAAiB,GAAG,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,SAAS,GAAG,KAAK,CAAC,eAAe,CAAC;gBACzF,MAAM,QAAQ,GACZ,KAAK,CAAC,gBAAgB,GAAG,CAAC;oBAC1B,SAAS,KAAK,IAAI;oBAClB,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC;gBAC/C,4EAA4E;gBAC5E,uEAAuE;gBACvE,2EAA2E;gBAC3E,MAAM,UAAU,GAAG,KAAK,CAAC,eAAe,KAAK,CAAC,IAAI,KAAK,CAAC,gBAAgB,KAAK,CAAC,CAAC;gBAC/E,IAAI,UAAU,IAAI,iBAAiB,IAAI,QAAQ,EAAE,CAAC;oBAChD,yEAAyE;oBACzE,4DAA4D;oBAC5D,KAAK,CAAC,eAAe,GAAG,SAAS,CAAC;oBAClC,IAAI,SAAS,KAAK,IAAI;wBAAE,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC;oBACrE,MAAM,QAAQ,GAAG,UAAU;wBACzB,CAAC,CAAC,0BAA0B;wBAC5B,CAAC,CAAC,iBAAiB;4BACjB,CAAC,CAAC,oBAAoB;4BACtB,CAAC,CAAC,aAAa,CAAC;oBACpB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;wBACvB,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,wDAAwD,QAAQ,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,mHAAmH,CACxQ,CAAC;wBACF,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;oBAC3B,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,KAAK,CACP,mBAAmB,KAAK,CAAC,QAAQ,2CAA2C,QAAQ,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,4BAA4B,CACpK,CAAC;oBACJ,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,2EAA2E;gBAC3E,2EAA2E;gBAC3E,yDAAyD;YAC3D,CAAC;YACD,uEAAuE;YACvE,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,CAAC;YACjC,6EAA6E;YAC7E,oEAAoE;YACpE,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;YAC3B,8EAA8E;YAC9E,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC;QAC5B,CAAC;QACD,4EAA4E;QAC5E,8BAA8B;QAC9B,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC;QAE1B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,kCAAkC;YAClC,MAAM,SAAS,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,MAAM,cAAc,GAClB,SAAS,KAAK,IAAI;gBAChB,CAAC,CAAC,GAAG,GAAG,SAAS,GAAG,kBAAkB;gBACtC,CAAC,CAAC,sEAAsE;oBACtE,4EAA4E;oBAC5E,2EAA2E;oBAC3E,oBAAoB;oBACpB,KAAK,CAAC,aAAa,GAAG,CAAC;wBACvB,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,GAAG,kBAAkB;wBAChD,CAAC,CAAC,qEAAqE;4BACrE,wDAAwD;4BACxD,IAAI,CAAC;YAEb,6EAA6E;YAC7E,2EAA2E;YAC3E,8EAA8E;YAC9E,yEAAyE;YACzE,2EAA2E;YAC3E,4EAA4E;YAC5E,qEAAqE;YACrE,8CAA8C;YAC9C,0EAA0E;YAC1E,8EAA8E;YAC9E,6EAA6E;YAC7E,2EAA2E;YAC3E,4EAA4E;YAC5E,gFAAgF;YAChF,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9E,MAAM,WAAW,GAAG,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YACxE,MAAM,UAAU,GACd,WAAW,KAAK,IAAI,IAAI,WAAW,IAAI,CAAC,IAAI,WAAW,GAAG,kBAAkB,CAAC;YAC/E,MAAM,QAAQ,GACZ,SAAS,KAAK,IAAI;gBAClB,KAAK,CAAC,gBAAgB,GAAG,CAAC;gBAC1B,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC,gBAAgB,CAAC;YAC/C,IAAI,SAAS,KAAK,IAAI;gBAAE,KAAK,CAAC,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC;YACrE,MAAM,WAAW,GAAG,UAAU,IAAI,QAAQ,CAAC;YAC3C,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;gBAClC,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,wBAC/B,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MACrE,uCACE,UAAU;oBACR,CAAC,CAAC,SAAS,IAAI,CAAC,KAAK,CAAE,WAAsB,GAAG,IAAI,CAAC,OAAO;oBAC5D,CAAC,CAAC,eACN,+DAA+D,CAChE,CAAC;YACJ,CAAC;YACD,MAAM,OAAO,GAAG,cAAc,IAAI,CAAC,WAAW,CAAC;YAE/C,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,MAAM,GACV,SAAS,KAAK,IAAI;oBAChB,CAAC,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC,GAAG;oBAC9D,CAAC,CAAC,qCAAqC,CAAC;gBAC5C,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,QAAQ,cAAc,MAAM,aAAa,CAAC,CAAC;gBAC7E,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;oBACxC,oEAAoE;oBACpE,qEAAqE;oBACrE,IACE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,WAAW,CAAC,KAAK,EACvF,CAAC;wBACD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;oBACzF,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,GAAG,CAAC,IAAI,CACN,+CAA+C,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CACtF,CAAC;gBACJ,CAAC;gBACD,yEAAyE;gBACzE,2EAA2E;gBAC3E,2EAA2E;gBAC3E,MAAM,kBAAkB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;gBAC3E,yEAAyE;gBACzE,uDAAuD;gBACvD,MAAM,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;gBAEtF,2EAA2E;gBAC3E,uEAAuE;gBACvE,IAAI,MAAM,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC;oBACzD,KAAK,CAAC,iBAAiB,EAAE,CAAC;oBAC1B,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,QAAQ,QAAQ,mBAAmB,KAAK,CAAC,iBAAiB,+CAA+C,CAC3I,CAAC;oBACF,oEAAoE;oBACpE,wEAAwE;oBACxE,0EAA0E;oBAC1E,IAAI,KAAK,CAAC,iBAAiB,IAAI,iBAAiB,EAAE,CAAC;wBACjD,KAAK,CAAC,aAAa,GAAG,GAAG,GAAG,yBAAyB,CAAC;wBACtD,GAAG,CAAC,KAAK,CACP,mBAAmB,KAAK,CAAC,QAAQ,QAAQ,QAAQ,wBAAwB,KAAK,CAAC,iBAAiB,yEAAyE,IAAI,CAAC,KAAK,CAAC,yBAAyB,GAAG,KAAK,CAAC,IAAI,CAC3N,CAAC;wBACF,IAAI,GAAG,GAAG,KAAK,CAAC,sBAAsB,IAAI,sBAAsB,EAAE,CAAC;4BACjE,MAAM,IAAI,CAAC,WAAW,CACpB,KAAK,CAAC,QAAQ,EACd,eAAe,QAAQ,qDAAqD,EAC5E,yBAAyB,CAC1B,CAAC;4BACF,KAAK,CAAC,sBAAsB,GAAG,GAAG,CAAC;wBACrC,CAAC;wBACD,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;oBAC9B,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,6EAA6E;gBAC7E,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,CAAC;gBACjC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;gBACrB,0EAA0E;gBAC1E,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC;gBAC3B,0BAA0B;YAC5B,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC5B,KAAK,CAAC,sBAAsB,GAAG,CAAC,CAAC;gBACjC,IAAI,KAAK,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;oBACzB,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,mCAAmC,KAAK,CAAC,UAAU,GAAG,CACxF,CAAC;gBACJ,CAAC;gBACD,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;gBACrB,uEAAuE;gBACvE,uEAAuE;gBACvE,sEAAsE;gBACtE,uEAAuE;gBACvE,sEAAsE;gBACtE,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,aAAa,GAAG,sBAAsB,EAAE,CAAC;oBACpF,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;oBACxB,KAAK,CAAC,kBAAkB,GAAG,CAAC,CAAC;gBAC/B,CAAC;gBACD,OAAO;YACT,CAAC;QACH,CAAC;QAED,kDAAkD;QAElD,yBAAyB;QACzB,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,IAAI,GAAG,GAAG,KAAK,CAAC,aAAa,GAAG,sBAAsB,EAAE,CAAC;YAClF,KAAK,CAAC,aAAa,EAAE,CAAC;YACtB,IAAI,KAAK,CAAC,aAAa,IAAI,mBAAmB,EAAE,CAAC;gBAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,0BAA0B,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,EAClE,yBAAyB,CAC1B,CAAC;gBACF,KAAK,CAAC,aAAa,GAAG,GAAG,GAAG,QAAQ,CAAC;gBACrC,KAAK,CAAC,kBAAkB,EAAE,CAAC;gBAC3B,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,aAAa,yCAAyC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,GAAG,CAClI,CAAC;gBACF,MAAM,IAAI,CAAC,WAAW,CACpB,KAAK,CAAC,QAAQ,EACd,6CAA6C,EAC7C,QAAQ,CACT,CAAC;gBACF,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;gBACxB,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YACnC,wDAAwD;YACxD,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;YACxB,KAAK,CAAC,kBAAkB,GAAG,CAAC,CAAC;QAC/B,CAAC;QAED,uBAAuB;QACvB,IAAI,KAAK,CAAC,UAAU,IAAI,kBAAkB,EAAE,CAAC;YAC3C,KAAK,CAAC,aAAa,GAAG,GAAG,GAAG,kBAAkB,CAAC;YAC/C,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,kBAAkB,kBAAkB,iCAAiC,kBAAkB,GAAG,KAAK,GAAG,CACpI,CAAC;YACF,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;YACnF,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;YACrB,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QAED,kFAAkF;QAClF,IAAI,KAAK,CAAC,OAAO;YAAE,OAAO;QAE1B,wCAAwC;QACxC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,wDAAwD,CAC1F,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAClB,KAAK,CAAC,aAAa,GAAG,CAAC;YACrB,CAAC,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,OAAO;YAC5E,CAAC,CAAC,mDAAmD,CAAC;QAC1D,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,sCAAsC,KAAK,CAAC,UAAU,GAAG,CAAC,IAAI,kBAAkB,KAAK,cAAc,GAAG,CACxI,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,aAAa,CAChC,CAAC,MAAM,CAAC,MAAM,IAAI,QAAQ,CAAc,EACxC,MAAM,CAAC,IAAI,EACX,KAAK,CAAC,QAAQ,EACd,IAAI,CAAC,IAAI,CAAC,eAAe,EACzB,MAAM,CAAC,gBAAgB,IAAI,SAAS,CACrC,CAAC;QAEF,IAAI,KAAK,IAAI,MAAM,EAAE,CAAC;YACpB,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,QAAQ,gCAAgC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;YACzF,IAAI,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,sCAAsC,KAAK,CAAC,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,UAAU,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CACN,mBAAmB,KAAK,CAAC,QAAQ,4BAA4B,KAAK,CAAC,UAAU,IAAI,kBAAkB,MAAM,MAAM,CAAC,KAAK,EAAE,CACxH,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,QAAgB,EAAE,MAAc,EAAE,UAAmB;QAC7E,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACnC,MAAM,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YACvC,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,UAAU,QAAQ,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,UAAU;gBACvB,CAAC,CAAC,oBAAoB,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,GAAG;gBACvD,CAAC,CAAC,YAAY,CAAC;YACjB,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAClC,IAAI,CAAC,IAAI,CAAC,MAAM,EAChB,SAAS,IAAI,sBAAsB,MAAM,OAAO,MAAM,EAAE,EACxD,MAAM,EACN,QAAQ,CACT,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,0CAA0C,QAAQ,KAAK,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"keeper.service.js","sourceRoot":"","sources":["../../src/services/keeper.service.ts"],"names":[],"mappings":"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"}