sensorium-mcp 3.0.65 → 3.0.67

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.
@@ -17,7 +17,9 @@ export declare function saveFileToDisk(buffer: Buffer, filename: string): string
17
17
  */
18
18
  export declare function writeActivityHeartbeat(): void;
19
19
  /** Write epoch timestamp for a specific thread. Called on every MCP tool call.
20
- * Uses atomic write (tmp + rename) to prevent keeper from reading a truncated file. */
20
+ * Uses atomic write (tmp + rename) to prevent keeper from reading a truncated
21
+ * file, with retry + direct-write fallback so a transient Windows lock can't
22
+ * silently drop the heartbeat (a dropped heartbeat risks a false "stuck"). */
21
23
  export declare function writeThreadHeartbeat(threadId: number): void;
22
24
  /** Synchronous heartbeat write — guarantees the file is flushed before returning.
23
25
  * Used at spawn time and in the poll loop to prevent false zombie detection. */
@@ -1 +1 @@
1
- {"version":3,"file":"file-storage.d.ts","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,eAAO,MAAM,SAAS,QAAkD,CAAC;AAGzE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqBvE;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAUD;wFACwF;AACxF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAM3D;AAED;iFACiF;AACjF,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAS/D;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMnE;AAED;;;4EAG4E;AAC5E,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAM3D;AASD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAuBpD"}
1
+ {"version":3,"file":"file-storage.d.ts","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAUH,eAAO,MAAM,SAAS,QAAkD,CAAC;AAGzE;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqBvE;AAOD;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAwBD;;;+EAG+E;AAC/E,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAI3D;AA2BD;iFACiF;AACjF,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAyB/D;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAMnE;AAED;;;4EAG4E;AAC5E,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAM3D;AASD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,IAAI,CAuBpD"}
@@ -5,7 +5,7 @@
5
5
  * Extracted from config.ts during modular decomposition (phase 1).
6
6
  */
7
7
  import { mkdirSync, existsSync, readFileSync, readdirSync, renameSync, statSync, unlinkSync, writeFileSync } from "node:fs";
8
- import { writeFile, rename } from "node:fs/promises";
8
+ import { writeFile, rename, unlink } from "node:fs/promises";
9
9
  import { homedir } from "node:os";
10
10
  import { join } from "node:path";
11
11
  import { log } from "../logger.js";
@@ -65,26 +65,101 @@ try {
65
65
  }
66
66
  catch { }
67
67
  let hbSeq = 0;
68
+ // On Windows a concurrent reader (the keeper reading the heartbeat) or an AV
69
+ // scanner can hold the target file open WITHOUT share-delete for a few micro-
70
+ // seconds, making rename-over-existing fail with EPERM/EACCES/EBUSY. At the
71
+ // heartbeat write frequency (every tool call + poll loop ~2s) these transient
72
+ // collisions are inevitable. The lock clears in milliseconds, so retry briefly.
73
+ const RENAME_RETRY_CODES = new Set(["EPERM", "EACCES", "EBUSY"]);
74
+ /** Synchronous sleep without busy-spinning the CPU (rare error-path only). */
75
+ function sleepSync(ms) {
76
+ try {
77
+ Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, ms);
78
+ }
79
+ catch { /* SAB unavailable — skip */ }
80
+ }
81
+ const delay = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
68
82
  /** Write epoch timestamp for a specific thread. Called on every MCP tool call.
69
- * Uses atomic write (tmp + rename) to prevent keeper from reading a truncated file. */
83
+ * Uses atomic write (tmp + rename) to prevent keeper from reading a truncated
84
+ * file, with retry + direct-write fallback so a transient Windows lock can't
85
+ * silently drop the heartbeat (a dropped heartbeat risks a false "stuck"). */
70
86
  export function writeThreadHeartbeat(threadId) {
71
87
  const target = join(HEARTBEATS_DIR, `${threadId}`);
72
88
  const tmp = target + `.tmp.${process.pid}.${++hbSeq}`;
73
- writeFile(tmp, String(Date.now()), "utf-8")
74
- .then(() => rename(tmp, target))
75
- .catch((err) => { log.debug(`[heartbeat] Async write failed for thread ${threadId}: ${err instanceof Error ? err.message : err}`); });
89
+ void commitHeartbeatAsync(threadId, tmp, target, String(Date.now()));
90
+ }
91
+ async function commitHeartbeatAsync(threadId, tmp, target, data) {
92
+ try {
93
+ await writeFile(tmp, data, "utf-8");
94
+ for (let attempt = 1;; attempt++) {
95
+ try {
96
+ await rename(tmp, target);
97
+ return;
98
+ }
99
+ catch (err) {
100
+ if (RENAME_RETRY_CODES.has(err?.code)) {
101
+ if (attempt < 5) {
102
+ await delay(4 * attempt);
103
+ continue;
104
+ }
105
+ // Transient lock didn't clear in ~40ms. Do NOT truncate the live
106
+ // target (that would risk a torn read → false "stuck"). The previous
107
+ // heartbeat is only seconds old and still valid; the next beat (~2s)
108
+ // retries once the lock clears.
109
+ log.debug(`[heartbeat] Rename contended for thread ${threadId} (${attempt} attempts) — keeping prior heartbeat`);
110
+ }
111
+ else {
112
+ log.debug(`[heartbeat] Async write failed for thread ${threadId}: ${err instanceof Error ? err.message : err}`);
113
+ }
114
+ try {
115
+ await unlink(tmp);
116
+ }
117
+ catch { }
118
+ return;
119
+ }
120
+ }
121
+ }
122
+ catch (err) {
123
+ log.debug(`[heartbeat] Async write failed for thread ${threadId}: ${err instanceof Error ? err.message : err}`);
124
+ }
76
125
  }
77
126
  /** Synchronous heartbeat write — guarantees the file is flushed before returning.
78
127
  * Used at spawn time and in the poll loop to prevent false zombie detection. */
79
128
  export function writeThreadHeartbeatSync(threadId) {
80
129
  const target = join(HEARTBEATS_DIR, `${threadId}`);
81
130
  const tmp = target + `.tmp.${process.pid}.${++hbSeq}`;
131
+ const data = String(Date.now());
82
132
  try {
83
- writeFileSync(tmp, String(Date.now()), "utf-8");
84
- renameSync(tmp, target);
133
+ writeFileSync(tmp, data, "utf-8");
134
+ for (let attempt = 1;; attempt++) {
135
+ try {
136
+ renameSync(tmp, target);
137
+ return;
138
+ }
139
+ catch (err) {
140
+ if (RENAME_RETRY_CODES.has(err?.code)) {
141
+ if (attempt < 5) {
142
+ sleepSync(4 * attempt);
143
+ continue;
144
+ }
145
+ // Transient lock persisted — keep the prior (seconds-old, valid)
146
+ // heartbeat rather than truncating the live target; the next beat
147
+ // retries. Never risks a torn read that could trip a false "stuck".
148
+ log.debug(`[heartbeat] Rename contended for thread ${threadId} (${attempt} attempts) — keeping prior heartbeat`);
149
+ }
150
+ else {
151
+ log.warn(`[heartbeat] Write failed for thread ${threadId}: ${err instanceof Error ? err.message : err}`);
152
+ }
153
+ try {
154
+ unlinkSync(tmp);
155
+ }
156
+ catch { }
157
+ return;
158
+ }
159
+ }
85
160
  }
86
161
  catch (err) {
87
- console.error(`[heartbeat] Write FAILED for thread ${threadId}: ${err instanceof Error ? err.message : err}`);
162
+ log.warn(`[heartbeat] Write failed for thread ${threadId}: ${err instanceof Error ? err.message : err}`);
88
163
  }
89
164
  }
90
165
  /** Read the last heartbeat epoch for a thread. Returns null if no heartbeat. */
@@ -1 +1 @@
1
- {"version":3,"file":"file-storage.js","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-storage.js","sourceRoot":"","sources":["../../src/data/file-storage.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC5H,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,+EAA+E;AAE/E,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAC;AACzE,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAE1C;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,MAAc,EAAE,QAAgB;IAC7D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,GAAG,EAAE,IAAI,QAAQ,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC3C,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAEhC,4BAA4B;IAC5B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,CAAC;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aACpE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACpD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC;oBAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;gBAAC,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;IAE/B,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,+EAA+E;AAE/E,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,qBAAqB,CAAC,CAAC;AACxD,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;AAE3D;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAmB,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED,2EAA2E;AAE3E,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;AACpD,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC/C,oDAAoD;AACpD,IAAI,CAAC;IAAC,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,cAAc,CAAC;QAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,IAAI,CAAC;gBAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;AAAC,CAAC;AAAC,MAAM,CAAC,CAAA,CAAC;AAC5I,IAAI,KAAK,GAAG,CAAC,CAAC;AAEd,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,8EAA8E;AAC9E,gFAAgF;AAChF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;AAEjE,8EAA8E;AAC9E,SAAS,SAAS,CAAC,EAAU;IAC3B,IAAI,CAAC;QAAC,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,4BAA4B,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAEtF;;;+EAG+E;AAC/E,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,GAAG,QAAQ,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;IACtD,KAAK,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,QAAgB,EAAE,GAAW,EAAE,MAAc,EAAE,IAAY;IAC7F,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACpC,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC;gBAAC,MAAM,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YAC1C,OAAO,GAAQ,EAAE,CAAC;gBAChB,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACtC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;wBAAC,MAAM,KAAK,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;wBAAC,SAAS;oBAAC,CAAC;oBACxD,iEAAiE;oBACjE,qEAAqE;oBACrE,qEAAqE;oBACrE,gCAAgC;oBAChC,GAAG,CAAC,KAAK,CAAC,2CAA2C,QAAQ,KAAK,OAAO,sCAAsC,CAAC,CAAC;gBACnH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,6CAA6C,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClH,CAAC;gBACD,IAAI,CAAC;oBAAC,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;gBACnC,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,6CAA6C,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAClH,CAAC;AACH,CAAC;AAED;iFACiF;AACjF,MAAM,UAAU,wBAAwB,CAAC,QAAgB;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,GAAG,QAAQ,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChC,IAAI,CAAC;QACH,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAClC,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC;gBAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAAC,OAAO;YAAC,CAAC;YACxC,OAAO,GAAQ,EAAE,CAAC;gBAChB,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;oBACtC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;wBAAC,SAAS,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC;wBAAC,SAAS;oBAAC,CAAC;oBACtD,iEAAiE;oBACjE,kEAAkE;oBAClE,oEAAoE;oBACpE,GAAG,CAAC,KAAK,CAAC,2CAA2C,QAAQ,KAAK,OAAO,sCAAsC,CAAC,CAAC;gBACnH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,uCAAuC,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC3G,CAAC;gBACD,IAAI,CAAC;oBAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;gBACjC,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,uCAAuC,QAAQ,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC3G,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9E,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAAC,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ;YAAE,GAAG,CAAC,KAAK,CAAC,sCAAsC,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AACtI,CAAC;AAED;;;4EAG4E;AAC5E,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,IAAI,CAAC;QACH,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ;YAAE,GAAG,CAAC,KAAK,CAAC,uCAAuC,QAAQ,KAAK,GAAG,EAAE,CAAC,CAAC;IACnG,CAAC;AACH,CAAC;AAED,+EAA+E;AAE/E,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;AAEjE,mFAAmF;AACnF,MAAM,2BAA2B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB;IAClC,IAAI,CAAC;QACH,IAAI,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,YAAY,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;YAEhE,gEAAgE;YAChE,kDAAkD;YAClD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAA2B,CAAC;gBACzD,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC9D,IAAI,GAAG,GAAG,2BAA2B,EAAE,CAAC;wBACtC,GAAG,CAAC,IAAI,CAAC,6CAA6C,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;wBAC1F,IAAI,CAAC;4BAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;wBAAC,CAAC;wBAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;wBACjE,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,0DAA0D,CAAC,CAAC;YAEtE,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -480,7 +480,7 @@ function getLastNarrative(db, threadId, resolution) {
480
480
  const row = db
481
481
  .prepare(`SELECT * FROM temporal_narratives
482
482
  WHERE thread_id = ? AND resolution = ?
483
- ORDER BY created_at DESC LIMIT 1`)
483
+ ORDER BY period_start DESC LIMIT 1`)
484
484
  .get(threadId, resolution);
485
485
  if (!row)
486
486
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"narrative.js","sourceRoot":"","sources":["../../../src/data/memory/narrative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"narrative.js","sourceRoot":"","sources":["../../../src/data/memory/narrative.ts"],"names":[],"mappings":"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"}
@@ -32,13 +32,24 @@ export declare function parseReflectionFields(content: string): {
32
32
  root_cause: string;
33
33
  lesson: string;
34
34
  } | null;
35
- /** Validate structural integrity of parsed insight fields. */
35
+ /** True if the text names something specific rather than being an abstract platitude. */
36
+ export declare function hasConcreteAnchor(text: string): boolean;
37
+ /**
38
+ * Validate structural integrity of parsed insight fields.
39
+ *
40
+ * `requireAnchor` gates the lesson on a concrete anchor (identifier/file/version).
41
+ * It defaults ON for the generation path (reject new platitudes). The existing-notes
42
+ * cleanup sweep passes it OFF so tightening the anchor rule never retroactively
43
+ * expires historical reflections — legacy cleanup is a separate, backed-up step.
44
+ */
36
45
  export declare function passesStructuralGate(insight: {
37
46
  decision: string;
38
47
  context: string;
39
48
  outcome: string;
40
49
  root_cause: string;
41
50
  lesson: string;
51
+ }, options?: {
52
+ requireAnchor?: boolean;
42
53
  }): {
43
54
  pass: boolean;
44
55
  reason?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.d.ts","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAiB5C,UAAU,iBAAiB;IACzB,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,UAAU,gBAAgB;IACxB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAkPD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBzG;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,IAAI,CAgBP;AAED,8DAA8D;AAC9D,wBAAgB,oBAAoB,CAAC,OAAO,EAAE;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CA4BrC;AA+DD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7D,OAAO,CAAC,gBAAgB,CAAC,CAyB3B"}
1
+ {"version":3,"file":"reflection.d.ts","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAiB5C,UAAU,iBAAiB;IACzB,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,UAAU,gBAAgB;IACxB,QAAQ,EAAE,iBAAiB,EAAE,CAAC;IAC9B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAyPD,+FAA+F;AAC/F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBzG;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,IAAI,CAgBP;AAqBD,yFAAyF;AACzF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAIvD;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB,EAAE,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAmChF;AA+DD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC7D,OAAO,CAAC,gBAAgB,CAAC,CAyB3B"}
@@ -109,17 +109,24 @@ Analyze the episodes for patterns, cause-effect chains, mistakes, recurring situ
109
109
  - The agent's own internal operations or meta-processes
110
110
  - How the agent manages its own notes, reflections, or knowledge base
111
111
  - Only reflect on EXTERNAL work: the project, codebase, operator interactions, technical decisions.`;
112
- const REFLECTION_STRUCTURE_PROMPT = `You are a reflective reasoning system. You will receive a free-form analysis and the original episodes it was based on. Your job is to extract the top 3-5 insights from the analysis into a structured format.
112
+ const REFLECTION_STRUCTURE_PROMPT = `You are a reflective reasoning system. You will receive a free-form analysis and the original episodes it was based on. Your job is to extract ONLY genuinely valuable, project-specific insights usually zero, occasionally one or two. Returning an empty list is the correct and expected outcome for a routine session.
113
113
 
114
114
  For each insight, you MUST fill in ALL 5 template fields. If the analysis does not support filling every field with specific, concrete information, SKIP that insight entirely. Do not produce vague filler.
115
115
 
116
+ ## The bar for including an insight (ALL must hold):
117
+ - It is specific to THIS project/operator — not general engineering or PM knowledge any competent agent already has.
118
+ - The lesson names something concrete: a file, component, version, identifier, command, person, or number. Generic maxims ("Always communicate clearly", "Break tasks into steps", "Always use UtcNow") are REJECTED.
119
+ - It would actually change what the agent does in a future session. If it wouldn't, drop it.
120
+ - It is not already obvious from the fact/preference notes the system extracts separately.
121
+ When in doubt, leave it out. Two truly project-specific insights per week is healthy; five per session is failure.
122
+
116
123
  ## Template fields (ALL required):
117
124
 
118
125
  1. **decision** — What specific action or choice was made? Name the exact thing that happened.
119
126
  2. **context** — What was the situation that triggered this? What were the conditions?
120
127
  3. **outcome** — What was the concrete result? Was it positive or negative? Be specific.
121
128
  4. **root_cause** — WHY did this outcome happen? This must NOT restate the outcome. Dig deeper. What was the actual mechanism?
122
- 5. **lesson** — A concrete, executable instruction for next time. Start with a verb: "Always...", "Never...", "Before doing X, first..."
129
+ 5. **lesson** — A concrete, executable instruction for next time that names a specific file, component, version, command, or number. Start with a verb. "Set DeployBook maxRetries above 0" is good; "Always configure retries properly" is a rejected platitude.
123
130
 
124
131
  ## Task domain (required):
125
132
 
@@ -160,20 +167,20 @@ Respond in JSON format:
160
167
  - Any field shorter than 10 characters
161
168
 
162
169
  Rules:
163
- - Minimum 1, maximum 5 insights — prefer fewer, deeper insights
170
+ - Minimum 0, maximum 5 insights — returning zero is common and correct; never invent an insight to fill the list
164
171
  - Each insight must reference specific episodes by their ID (from the original episodes provided)
165
172
  - Confidence should reflect how well-supported the insight is by evidence
166
173
  - Causal insights are most valuable — prioritize cause-and-effect
167
- - Quality over quantity: 2 deep insights beat 5 shallow ones
168
- - Return {"insights": []} if the analysis does not support any deep insights`;
174
+ - Quality over quantity: one project-specific insight beats five generic ones
175
+ - Return {"insights": []} if the analysis does not support any deep, project-specific insight — this is the default`;
169
176
  // ─── De-duplication ──────────────────────────────────────────────────────────
170
- const DEDUP_SIMILARITY_THRESHOLD = 0.90;
171
- const LESSON_DEDUP_THRESHOLD = 0.82;
177
+ const DEDUP_SIMILARITY_THRESHOLD = 0.86;
178
+ const LESSON_DEDUP_THRESHOLD = 0.75;
172
179
  async function checkDuplicate(db, content, apiKey, threadId) {
173
180
  try {
174
181
  const embedding = await generateEmbedding(content, apiKey);
175
182
  const matches = searchByEmbedding(db, embedding, {
176
- maxResults: 3,
183
+ maxResults: 8,
177
184
  minSimilarity: DEDUP_SIMILARITY_THRESHOLD,
178
185
  skipAccessTracking: true,
179
186
  threadId,
@@ -189,7 +196,7 @@ async function checkDuplicate(db, content, apiKey, threadId) {
189
196
  }
190
197
  /**
191
198
  * Lesson-level dedup: checks if a semantically similar lesson already exists
192
- * among reflection notes using a lower similarity threshold (0.82).
199
+ * among reflection notes using a lower similarity threshold (0.75).
193
200
  * Catches generic lessons like "Always do comprehensive code reviews" that are
194
201
  * worded differently but carry the same meaning.
195
202
  */
@@ -197,7 +204,7 @@ async function checkLessonDuplicate(db, lesson, apiKey, knowledgeThreadId) {
197
204
  try {
198
205
  const embedding = await generateEmbedding(lesson, apiKey);
199
206
  const matches = searchByEmbedding(db, embedding, {
200
- maxResults: 3,
207
+ maxResults: 8,
201
208
  minSimilarity: LESSON_DEDUP_THRESHOLD,
202
209
  skipAccessTracking: true,
203
210
  threadId: knowledgeThreadId,
@@ -251,8 +258,40 @@ export function parseReflectionFields(content) {
251
258
  lesson: lessonMatch[1]?.trim() ?? "",
252
259
  };
253
260
  }
254
- /** Validate structural integrity of parsed insight fields. */
255
- export function passesStructuralGate(insight) {
261
+ // A concrete anchor is a specific, project-referencing token: a code identifier,
262
+ // file/path, version, acronym, or number. Generic prose maxims ("Always
263
+ // communicate clearly", "Break tasks into steps") contain none of these and carry
264
+ // no reusable, project-specific value — they are the dominant reflection noise.
265
+ const ANCHOR_PATTERNS = [
266
+ /`[^`]+`/, // backticked code
267
+ /\b\w+\.(ts|js|tsx|jsx|cs|py|json|sql|md|ya?ml|sh|db)\b/i, // filename
268
+ /[/\\]\w/, // path segment
269
+ /\b[a-z][a-z0-9]*[A-Z][a-zA-Z0-9]*\b/, // camelCase identifier
270
+ /\b[A-Z][a-z0-9]+[A-Z][a-zA-Z0-9]*\b/, // PascalCase identifier
271
+ /\b[a-z0-9]+_[a-z0-9]+\b/, // snake_case identifier
272
+ /\bv?\d+\.\d+/, // version / decimal (5.2.2, v1.2)
273
+ ];
274
+ // All-caps tokens that are filler, not project anchors — excluded from the acronym rule.
275
+ const NON_ANCHOR_ACRONYMS = new Set([
276
+ "OK", "TODO", "ASAP", "FYI", "AKA", "ETA", "YES", "NO", "AI", "IT", "OKAY", "PM", "IMO",
277
+ ]);
278
+ /** True if the text names something specific rather than being an abstract platitude. */
279
+ export function hasConcreteAnchor(text) {
280
+ if (ANCHOR_PATTERNS.some((p) => p.test(text)))
281
+ return true;
282
+ const acronyms = text.match(/\b[A-Z]{2,}\b/g);
283
+ return Boolean(acronyms && acronyms.some((a) => !NON_ANCHOR_ACRONYMS.has(a)));
284
+ }
285
+ /**
286
+ * Validate structural integrity of parsed insight fields.
287
+ *
288
+ * `requireAnchor` gates the lesson on a concrete anchor (identifier/file/version).
289
+ * It defaults ON for the generation path (reject new platitudes). The existing-notes
290
+ * cleanup sweep passes it OFF so tightening the anchor rule never retroactively
291
+ * expires historical reflections — legacy cleanup is a separate, backed-up step.
292
+ */
293
+ export function passesStructuralGate(insight, options = {}) {
294
+ const { requireAnchor = true } = options;
256
295
  // Check root_cause is meaningfully different from outcome (skip for very short fields)
257
296
  const outcomeWords = new Set(insight.outcome.toLowerCase().replace(/[.,:;!?]/g, "").split(/\s+/).filter(w => w.length > 3));
258
297
  const rootWords = new Set(insight.root_cause.toLowerCase().replace(/[.,:;!?]/g, "").split(/\s+/).filter(w => w.length > 3));
@@ -276,6 +315,11 @@ export function passesStructuralGate(insight) {
276
315
  if (insight.lesson.length < 20) {
277
316
  return { pass: false, reason: "lesson too short (< 20 chars)" };
278
317
  }
318
+ // Lesson must name something concrete. A generic maxim with no file, component,
319
+ // version, identifier, or number is a platitude, not a project-specific lesson.
320
+ if (requireAnchor && !hasConcreteAnchor(insight.lesson)) {
321
+ return { pass: false, reason: "lesson has no concrete anchor (generic platitude)" };
322
+ }
279
323
  return { pass: true };
280
324
  }
281
325
  /** Expire stale reflections (>30 days old, never accessed) and enforce buffer cap. */
@@ -421,7 +465,7 @@ async function runReflectionInner(db, threadId, startMs, maxRecent, oldSampleSiz
421
465
  // ── Step 3b: STRUCTURE — mechanical formatting ────────────────────────────
422
466
  const structureMessages = [
423
467
  { role: "system", content: REFLECTION_STRUCTURE_PROMPT },
424
- { role: "user", content: `## Free-form analysis:\n${analysis}\n\n## Original episodes (for episode_refs):\n${narrative}\n\nExtract the top 3-5 insights from this analysis into the structured JSON format.` },
468
+ { role: "user", content: `## Free-form analysis:\n${analysis}\n\n## Original episodes (for episode_refs):\n${narrative}\n\nExtract only the genuinely valuable, project-specific insights into the structured JSON format. Returning {"insights": []} is the correct default — include an insight only if it clears the bar.` },
425
469
  ];
426
470
  let raw;
427
471
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAgB,YAAY,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAEvF,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EACL,cAAc,EACd,iBAAiB,GAElB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAiB9C,gFAAgF;AAEhF,MAAM,sBAAsB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,UAAU;AAC7D,MAAM,2BAA2B,GAAG,EAAE,CAAC;AAEvC,gFAAgF;AAChF,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC,MAAM,qBAAqB,GAAG,EAAE,CAAC;AACjC,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAC9B,MAAM,cAAc,GAAG;IACrB,yBAAyB;IACzB,gBAAgB;IAChB,6BAA6B;IAC7B,2BAA2B;IAC3B,sBAAsB;IACtB,qDAAqD;IACrD,iBAAiB;IACjB,yCAAyC;IACzC,2CAA2C;IAC3C,8BAA8B;IAC9B,uCAAuC;IACvC,oBAAoB;IACpB,qBAAqB;IACrB,+CAA+C;IAC/C,wDAAwD;IACxD,iDAAiD;IACjD,6DAA6D;IAC7D,4BAA4B;IAC5B,uBAAuB;IACvB,2BAA2B;IAC3B,iDAAiD;IACjD,0CAA0C;CAC3C,CAAC;AAEF,MAAM,qBAAqB,GAAG;IAC5B,qDAAqD;IACrD,8CAA8C;IAC9C,2CAA2C;IAC3C,oBAAoB;IACpB,kCAAkC;IAClC,mEAAmE;CACpE,CAAC;AAEF,0EAA0E;AAE1E,kEAAkE;AAClE,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAC;AACnD,2DAA2D;AAC3D,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE/C,gFAAgF;AAEhF,qDAAqD;AACrD,SAAS,WAAW,CAAC,EAAW;IAC9B,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACrB,IAAI,OAAO,CAAC,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC;IACpC,OAAQ,CAAC,CAAC,IAAe,IAAK,CAAC,CAAC,OAAkB,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC;AAED,8DAA8D;AAC9D,SAAS,cAAc,CAAC,QAAmB;IACzC,OAAO,QAAQ;SACZ,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;SACtD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,MAAM,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,QAAQ,KAAK,EAAE,CAAC,SAAS,KAAK,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC;SAChG,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,iFAAiF;AACjF,SAAS,cAAc,CACrB,EAAY,EACZ,QAAgB,EAChB,SAAiB,EACjB,aAAqB;IAErB,+BAA+B;IAC/B,MAAM,UAAU,GAAG,EAAE;SAClB,OAAO,CACN;;;eAGS,CACV;SACA,GAAG,CAAC,QAAQ,EAAE,SAAS,CAA8B,CAAC;IAEzD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAoB,CAAC,CAAC,CAAC;IAEzE,oEAAoE;IACpE,iDAAiD;IACjD,MAAM,SAAS,GAAG,EAAE;SACjB,OAAO,CACN;;;;eAIS,CACV;SACA,GAAG,CAAC,QAAQ,EAAE,aAAa,GAAG,UAAU,CAAC,MAAM,CAA8B,CAAC;IAEjF,MAAM,aAAa,GAAG,SAAS;SAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,UAAoB,CAAC,CAAC;SACrD,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAE3B,MAAM,OAAO,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,aAAa,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACnC,CAAC;AAGD,gFAAgF;AAEhF,MAAM,yBAAyB,GAAG;;;;;;;;oGAQkE,CAAC;AAErG,MAAM,2BAA2B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6EAwDyC,CAAC;AAE9E,gFAAgF;AAEhF,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,KAAK,UAAU,cAAc,CAC3B,EAAY,EACZ,OAAe,EACf,MAAc,EACd,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE;YAC/C,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,0BAA0B;YACzC,kBAAkB,EAAE,IAAI;YACxB,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,0BAA0B,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAC1F,CAAC;QACF,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,+CAA+C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7E,yEAAyE;QACzE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;IACjD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,oBAAoB,CACjC,EAAY,EACZ,MAAc,EACd,MAAc,EACd,iBAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE;YAC/C,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,sBAAsB;YACrC,kBAAkB,EAAE,IAAI;YACxB,QAAQ,EAAE,iBAAiB;SAC5B,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,sBAAsB,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC;YACxG,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,sDAAsD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpF,6DAA6D;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF,+FAA+F;AAC/F,MAAM,UAAU,iBAAiB,CAAC,OAAe,EAAE,UAAkB;IACnE,IAAI,OAAO,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACxC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IAC9C,CAAC;IACD,IAAI,UAAU,GAAG,GAAG,EAAE,CAAC;QACrB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACvD,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;QACrC,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,0BAA0B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7E,CAAC;IACH,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACpE,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,qBAAqB,CAAC,OAAe;IAOnD,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACzE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAE9D,IAAI,CAAC,aAAa,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAEhD,OAAO;QACL,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QACxC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QACxC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QACxC,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;QAC7C,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE;KACrC,CAAC;AACJ,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,oBAAoB,CAAC,OAMpC;IACC,uFAAuF;IACvF,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5H,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5H,IAAI,YAAY,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,MAAM,YAAY,GAAG,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC;QACjD,IAAI,YAAY,GAAG,GAAG,EAAE,CAAC;YACvB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,6BAA6B,EAAE,CAAC;QAChE,CAAC;IACH,CAAC;IAED,+CAA+C;IAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC9E,MAAM,WAAW,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/lB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,2CAA2C,EAAE,CAAC;IAC9E,CAAC;IAED,6EAA6E;IAC7E,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QACnC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,qCAAqC,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC;IAClE,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxB,CAAC;AAED,sFAAsF;AACtF,SAAS,oBAAoB,CAAC,EAAY,EAAE,QAAgB;IAC1D,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAC7D,IAAI,OAAO,GAAG,CAAC,CAAC;IAEhB,mDAAmD;IACnD,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CACN;;;;;;kDAM4C,CAC7C;SACA,GAAG,CAAC,MAAM,EAAE,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,CAAC;IAC3D,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC;IAE/B,uEAAuE;IACvE,MAAM,QAAQ,GAAG,EAAE;SAChB,OAAO,CACN;;;kDAG4C,CAC7C;SACA,GAAG,CAAC,iBAAiB,CAAkB,CAAC;IAE3C,IAAI,QAAQ,CAAC,CAAC,GAAG,sBAAsB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,GAAG,sBAAsB,CAAC;QACnD,MAAM,QAAQ,GAAG,EAAE;aAChB,OAAO,CACN;;;;;;iBAMS,CACV;aACA,GAAG,CAAC,iBAAiB,EAAE,MAAM,CAA0B,CAAC;QAE3D,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;YACrB,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,0DAA0D,CAAC,CAAC;YACpF,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;gBAClB,KAAK,MAAM,GAAG,IAAI,QAAQ;oBAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC,CAAC,EAAE,CAAC;YACL,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,GAAG,CAAC,IAAI,CAAC,4CAA4C,OAAO,2BAA2B,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,CAAC;AACrB,CAAC;AAED,gFAAgF;AAEhF;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,EAAY,EACZ,QAAgB,EAChB,OAA8D;IAE9D,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC;IAC7C,MAAM,aAAa,GAAG,OAAO,EAAE,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnE,6EAA6E;IAC7E,MAAM,WAAW,GAAG,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5C,IAAI,WAAW,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,GAAG,CAAC,IAAI,CAAC,kCAAkC,QAAQ,qBAAqB,CAAC,CAAC;QAC1E,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IAED,6EAA6E;IAC7E,MAAM,OAAO,GAAG,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,sBAAsB,EAAE,CAAC;QAClD,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QACxD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IACD,IAAI,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACnE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IACD,oBAAoB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,IAAI,CAAC;QAAC,OAAO,MAAM,kBAAkB,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IAAC,CAAC;YACjF,CAAC;QAAC,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAAC,CAAC;AACpD,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,EAAY,EACZ,QAAgB,EAChB,OAAe,EACf,SAAiB,EACjB,aAAqB;IAGrB,6EAA6E;IAC7E,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,GAAG,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;QAC1D,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IAED,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACzD,IAAI,iBAAiB,KAAK,OAAO,IAAI,iBAAiB,KAAK,GAAG,EAAE,CAAC;QAC/D,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IAED,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,EAAE;SAChB,OAAO,CAAC,6EAA6E,CAAC;SACtF,GAAG,CAAC,QAAQ,CAAkB,CAAC;IAClC,IAAI,QAAQ,CAAC,CAAC,GAAG,2BAA2B,EAAE,CAAC;QAC7C,GAAG,CAAC,IAAI,CAAC,+BAA+B,QAAQ,CAAC,CAAC,gCAAgC,2BAA2B,GAAG,CAAC,CAAC;QAClH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IAED,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAE7D,0EAA0E;IAC1E,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAEnC,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACxE,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IACpF,CAAC;IAED,6EAA6E;IAC7E,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAE3C,4EAA4E;IAC5E,MAAM,eAAe,GAAkB;QACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,EAAE;QACtD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,SAAS,8KAA8K,EAAE;KAC/O,CAAC;IAEF,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,cAAc,CAAC,eAAe,EAAE,MAAM,EAAE;YACvD,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ;YAClF,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,qCAAqC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAClG,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACrB,GAAG,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;QACxF,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAClG,CAAC;IAED,GAAG,CAAC,KAAK,CAAC,uCAAuC,QAAQ,CAAC,MAAM,YAAY,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;IAEvG,6EAA6E;IAC7E,MAAM,iBAAiB,GAAkB;QACvC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,2BAA2B,EAAE;QACxD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,2BAA2B,QAAQ,iDAAiD,SAAS,sFAAsF,EAAE;KAC/M,CAAC;IAEF,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,cAAc,CAAC,iBAAiB,EAAE,MAAM,EAAE;YACpD,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,QAAQ;YAClF,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,cAAc,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;YACvC,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,uCAAuC,YAAY,CAAC,GAAG,CAAC,oBAAoB,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAChH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAClG,CAAC;IAED,6EAA6E;IAC7E,IAAI,MAAmC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAgC,CAAC;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,mCAAmC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,qBAAqB,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAClG,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEvF,6EAA6E;IAC7E,MAAM,aAAa,GAAwB,EAAE,CAAC;IAC9C,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAE/D,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9B,6DAA6D;QAC7D,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACpF,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;YAC9D,SAAS;QACX,CAAC;QAED,+DAA+D;QAC/D,2EAA2E;QAC3E,wEAAwE;QACxE,MAAM,aAAa,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG;YACd,aAAa,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE;YAC1C,YAAY,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxC,YAAY,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YACxC,eAAe,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;YAC9C,WAAW,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;SACvC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QACpE,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC;QACnE,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAErG,gCAAgC;QAChC,MAAM,MAAM,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YAC7E,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAC9C,CAAC,CAAC,SAAS,CAAC;QAEd,sEAAsE;QACtE,MAAM,OAAO,GAAG,iBAAiB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,GAAG,CAAC,IAAI,CAAC,uCAAuC,OAAO,CAAC,MAAM,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC/F,SAAS;QACX,CAAC;QAED,kGAAkG;QAClG,MAAM,UAAU,GAAG,oBAAoB,CAAC;YACtC,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,0CAA0C,UAAU,CAAC,MAAM,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YACrG,SAAS;QACX,CAAC;QAED,4EAA4E;QAC5E,MAAM,eAAe,GAAG,iBAAiB,WAAW,CAAC,WAAW,EAAE,MAAM,MAAM,KAAK,OAAO,EAAE,CAAC;QAC7F,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,cAAc,CAAC,EAAE,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QACpI,IAAI,SAAS,EAAE,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,2CAA2C,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;YAC7E,SAAS;QACX,CAAC;QAED,iFAAiF;QACjF,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC9F,IAAI,eAAe,EAAE,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,iDAAiD,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YACvF,SAAS;QACX,CAAC;QAED,yDAAyD;QACzD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAE1C,+EAA+E;QAC/E,MAAM,MAAM,GAAG,gBAAgB,CAAC,EAAE,EAAE;YAClC,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,eAAe;YACxB,QAAQ,EAAE,CAAC,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,QAAQ,CAAC;YAC1D,UAAU;YACV,QAAQ,EAAE,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,QAAQ,EAAE,iBAAiB;YAC3B,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;QAEH,kEAAkE;QAClE,IAAI,eAAe,EAAE,CAAC;YACpB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;gBACnE,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,KAAK,CAAC,6DAA6D,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC9F,CAAC;QACH,CAAC;QAED,aAAa,CAAC,IAAI,CAAC;YACjB,IAAI,EAAE,WAAwC;YAC9C,OAAO;YACP,UAAU;YACV,iBAAiB,EAAE,IAAI;SACxB,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAC7E,aAAa,CAAC,EAAE,EAAE;QAChB,iBAAiB,EAAE,QAAQ,CAAC,MAAM;QAClC,eAAe,EAAE,aAAa,CAAC,MAAM;QACrC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KACjC,CAAC,CAAC;IAEH,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAE3C,GAAG,CAAC,IAAI,CACN,2BAA2B,QAAQ,CAAC,MAAM,eAAe,aAAa,CAAC,MAAM,cAAc,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,KAAK,CACrH,CAAC;IAEF,OAAO;QACL,QAAQ,EAAE,aAAa;QACvB,qBAAqB,EAAE,QAAQ,CAAC,MAAM;QACtC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO;KAC/B,CAAC;AACJ,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACxE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACpE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACtE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS;IACrE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IACxE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;CAC9D,CAAC,CAAC;AAEH,kEAAkE;AAClE,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,KAAK,GAAG,IAAI;SACf,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;SAC5B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAE3D,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;SACvB,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;AACrB,CAAC;AAED,gFAAgF;AAEhF,SAAS,aAAa,CACpB,EAAY,EACZ,KAAiF;IAEjF,EAAE,CAAC,OAAO,CACR;;yBAEqB,CACtB,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,18 @@ export interface SemanticNote {
28
28
  }
29
29
  export declare function updateTopicIndexForKeywords(db: Database, keywords: string[]): void;
30
30
  export declare function decrementTopicIndexForKeywords(db: Database, keywords: string[]): void;
31
+ /**
32
+ * Recompute meta_topic_index from scratch over the currently-active notes.
33
+ *
34
+ * The incremental upsert/decrement counters drift because note expiry,
35
+ * supersession and merge bypass the decrement path (they UPDATE valid_to
36
+ * directly). Rather than wire decrements into every expiry site, we treat the
37
+ * index as a derived aggregate and rebuild it authoritatively here — called
38
+ * during consolidation. semantic_count reflects live notes; total_accesses is
39
+ * the summed access_count of those notes (a real retrieval signal, which is
40
+ * what bootstrap orders by). Returns the number of topics indexed.
41
+ */
42
+ export declare function rebuildTopicIndex(db: Database): number;
31
43
  /** Look up a single semantic note by ID (returns type + keywords only, or undefined). */
32
44
  export declare function getSemanticNoteById(db: Database, noteId: string): {
33
45
  type: string;