sensorium-mcp 3.1.0-refactor.1 → 3.1.0-refactor.10

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 (178) hide show
  1. package/Install-Sensorium.ps1 +113 -20
  2. package/dist/config/agent-settings.d.ts +7 -0
  3. package/dist/config/agent-settings.d.ts.map +1 -1
  4. package/dist/config/agent-settings.js +14 -0
  5. package/dist/config/agent-settings.js.map +1 -1
  6. package/dist/dashboard/log-parser.d.ts +3 -0
  7. package/dist/dashboard/log-parser.d.ts.map +1 -1
  8. package/dist/dashboard/log-parser.js +38 -4
  9. package/dist/dashboard/log-parser.js.map +1 -1
  10. package/dist/dashboard/routes/claude.d.ts.map +1 -1
  11. package/dist/dashboard/routes/claude.js +9 -1
  12. package/dist/dashboard/routes/claude.js.map +1 -1
  13. package/dist/dashboard/routes/threads.js +1 -1
  14. package/dist/dashboard/routes/threads.js.map +1 -1
  15. package/dist/dashboard/spa.html +11 -11
  16. package/dist/data/memory/bootstrap.d.ts +7 -0
  17. package/dist/data/memory/bootstrap.d.ts.map +1 -1
  18. package/dist/data/memory/bootstrap.js +45 -16
  19. package/dist/data/memory/bootstrap.js.map +1 -1
  20. package/dist/data/memory/consolidation.d.ts +9 -4
  21. package/dist/data/memory/consolidation.d.ts.map +1 -1
  22. package/dist/data/memory/consolidation.js +24 -12
  23. package/dist/data/memory/consolidation.js.map +1 -1
  24. package/dist/data/memory/index.d.ts +1 -2
  25. package/dist/data/memory/index.d.ts.map +1 -1
  26. package/dist/data/memory/index.js +1 -2
  27. package/dist/data/memory/index.js.map +1 -1
  28. package/dist/data/memory/migration-runner.d.ts +24 -1
  29. package/dist/data/memory/migration-runner.d.ts.map +1 -1
  30. package/dist/data/memory/migration-runner.js +85 -1
  31. package/dist/data/memory/migration-runner.js.map +1 -1
  32. package/dist/data/memory/narrative.d.ts.map +1 -1
  33. package/dist/data/memory/narrative.js +5 -1
  34. package/dist/data/memory/narrative.js.map +1 -1
  35. package/dist/data/memory/note-archival.d.ts +29 -4
  36. package/dist/data/memory/note-archival.d.ts.map +1 -1
  37. package/dist/data/memory/note-archival.js +55 -26
  38. package/dist/data/memory/note-archival.js.map +1 -1
  39. package/dist/data/memory/reflection-dedup.js +2 -2
  40. package/dist/data/memory/reflection-dedup.js.map +1 -1
  41. package/dist/data/memory/reflection.d.ts.map +1 -1
  42. package/dist/data/memory/reflection.js +7 -3
  43. package/dist/data/memory/reflection.js.map +1 -1
  44. package/dist/data/memory/schema-ddl.d.ts +1 -1
  45. package/dist/data/memory/schema-ddl.d.ts.map +1 -1
  46. package/dist/data/memory/schema-ddl.js +8 -8
  47. package/dist/data/memory/semantic-notes.d.ts +30 -2
  48. package/dist/data/memory/semantic-notes.d.ts.map +1 -1
  49. package/dist/data/memory/semantic-notes.js +94 -13
  50. package/dist/data/memory/semantic-notes.js.map +1 -1
  51. package/dist/data/memory/semantic-search.d.ts.map +1 -1
  52. package/dist/data/memory/semantic-search.js +6 -4
  53. package/dist/data/memory/semantic-search.js.map +1 -1
  54. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  55. package/dist/data/memory/thread-registry.js +20 -4
  56. package/dist/data/memory/thread-registry.js.map +1 -1
  57. package/dist/data/memory/topic-shift.js +2 -2
  58. package/dist/data/memory/topic-shift.js.map +1 -1
  59. package/dist/index.js +19 -9
  60. package/dist/index.js.map +1 -1
  61. package/dist/integrations/openai/chat.d.ts +7 -1
  62. package/dist/integrations/openai/chat.d.ts.map +1 -1
  63. package/dist/integrations/openai/chat.js +19 -2
  64. package/dist/integrations/openai/chat.js.map +1 -1
  65. package/dist/integrations/openai/speech.d.ts +4 -1
  66. package/dist/integrations/openai/speech.d.ts.map +1 -1
  67. package/dist/integrations/openai/speech.js +6 -1
  68. package/dist/integrations/openai/speech.js.map +1 -1
  69. package/dist/integrations/telegram/types.d.ts +9 -0
  70. package/dist/integrations/telegram/types.d.ts.map +1 -1
  71. package/dist/lib/markdown.d.ts +0 -13
  72. package/dist/lib/markdown.d.ts.map +1 -1
  73. package/dist/lib/markdown.js +45 -0
  74. package/dist/lib/markdown.js.map +1 -1
  75. package/dist/lib/usage-metering/index.d.ts +13 -0
  76. package/dist/lib/usage-metering/index.d.ts.map +1 -0
  77. package/dist/lib/usage-metering/index.js +10 -0
  78. package/dist/lib/usage-metering/index.js.map +1 -0
  79. package/dist/lib/usage-metering/meter.d.ts +34 -0
  80. package/dist/lib/usage-metering/meter.d.ts.map +1 -0
  81. package/dist/lib/usage-metering/meter.js +28 -0
  82. package/dist/lib/usage-metering/meter.js.map +1 -0
  83. package/dist/lib/usage-metering/pricing.d.ts +39 -0
  84. package/dist/lib/usage-metering/pricing.d.ts.map +1 -0
  85. package/dist/lib/usage-metering/pricing.js +49 -0
  86. package/dist/lib/usage-metering/pricing.js.map +1 -0
  87. package/dist/lib/usage-metering/sink.d.ts +24 -0
  88. package/dist/lib/usage-metering/sink.d.ts.map +1 -0
  89. package/dist/lib/usage-metering/sink.js +56 -0
  90. package/dist/lib/usage-metering/sink.js.map +1 -0
  91. package/dist/server/factory.js +12 -9
  92. package/dist/server/factory.js.map +1 -1
  93. package/dist/server/http-server.d.ts +1 -0
  94. package/dist/server/http-server.d.ts.map +1 -1
  95. package/dist/server/http-server.js +45 -3
  96. package/dist/server/http-server.js.map +1 -1
  97. package/dist/services/background-runner.d.ts.map +1 -1
  98. package/dist/services/background-runner.js +11 -1
  99. package/dist/services/background-runner.js.map +1 -1
  100. package/dist/services/claude-spawn.service.d.ts.map +1 -1
  101. package/dist/services/claude-spawn.service.js +78 -4
  102. package/dist/services/claude-spawn.service.js.map +1 -1
  103. package/dist/services/codex-spawn.service.d.ts.map +1 -1
  104. package/dist/services/codex-spawn.service.js.map +1 -1
  105. package/dist/services/consolidation.service.d.ts.map +1 -1
  106. package/dist/services/consolidation.service.js +51 -35
  107. package/dist/services/consolidation.service.js.map +1 -1
  108. package/dist/services/copilot-spawn.service.d.ts.map +1 -1
  109. package/dist/services/copilot-spawn.service.js +8 -1
  110. package/dist/services/copilot-spawn.service.js.map +1 -1
  111. package/dist/services/dispatcher/broker.d.ts +6 -0
  112. package/dist/services/dispatcher/broker.d.ts.map +1 -1
  113. package/dist/services/dispatcher/broker.js.map +1 -1
  114. package/dist/services/dispatcher/poller.d.ts.map +1 -1
  115. package/dist/services/dispatcher/poller.js +15 -0
  116. package/dist/services/dispatcher/poller.js.map +1 -1
  117. package/dist/services/keeper.service.d.ts.map +1 -1
  118. package/dist/services/keeper.service.js +97 -1
  119. package/dist/services/keeper.service.js.map +1 -1
  120. package/dist/services/memory-pruning.service.d.ts.map +1 -1
  121. package/dist/services/memory-pruning.service.js +3 -1
  122. package/dist/services/memory-pruning.service.js.map +1 -1
  123. package/dist/services/process.service.d.ts +51 -0
  124. package/dist/services/process.service.d.ts.map +1 -1
  125. package/dist/services/process.service.js +247 -7
  126. package/dist/services/process.service.js.map +1 -1
  127. package/dist/services/spawn-common.d.ts.map +1 -1
  128. package/dist/services/spawn-common.js +9 -2
  129. package/dist/services/spawn-common.js.map +1 -1
  130. package/dist/services/thread-config.service.d.ts.map +1 -1
  131. package/dist/services/thread-config.service.js +1 -1
  132. package/dist/services/thread-config.service.js.map +1 -1
  133. package/dist/services/thread-health.service.d.ts +19 -1
  134. package/dist/services/thread-health.service.d.ts.map +1 -1
  135. package/dist/services/thread-health.service.js +74 -4
  136. package/dist/services/thread-health.service.js.map +1 -1
  137. package/dist/services/thread-lifecycle.service.d.ts.map +1 -1
  138. package/dist/services/thread-lifecycle.service.js +5 -0
  139. package/dist/services/thread-lifecycle.service.js.map +1 -1
  140. package/dist/services/worker-cleanup.service.d.ts +12 -0
  141. package/dist/services/worker-cleanup.service.d.ts.map +1 -1
  142. package/dist/services/worker-cleanup.service.js +281 -70
  143. package/dist/services/worker-cleanup.service.js.map +1 -1
  144. package/dist/sessions/mcp-registry.d.ts +6 -0
  145. package/dist/sessions/mcp-registry.d.ts.map +1 -1
  146. package/dist/sessions/mcp-registry.js +8 -0
  147. package/dist/sessions/mcp-registry.js.map +1 -1
  148. package/dist/tools/defs/session-defs.d.ts.map +1 -1
  149. package/dist/tools/defs/session-defs.js +20 -2
  150. package/dist/tools/defs/session-defs.js.map +1 -1
  151. package/dist/tools/delegate-tool.d.ts.map +1 -1
  152. package/dist/tools/delegate-tool.js +84 -4
  153. package/dist/tools/delegate-tool.js.map +1 -1
  154. package/dist/tools/memory-tools.d.ts +1 -1
  155. package/dist/tools/memory-tools.d.ts.map +1 -1
  156. package/dist/tools/memory-tools.js +4 -4
  157. package/dist/tools/memory-tools.js.map +1 -1
  158. package/dist/tools/utility-tools.d.ts.map +1 -1
  159. package/dist/tools/utility-tools.js +1 -1
  160. package/dist/tools/utility-tools.js.map +1 -1
  161. package/dist/tools/wait/drive-handler.js +1 -1
  162. package/dist/tools/wait/drive-handler.js.map +1 -1
  163. package/dist/tools/wait/media-processor.d.ts.map +1 -1
  164. package/dist/tools/wait/media-processor.js +2 -2
  165. package/dist/tools/wait/media-processor.js.map +1 -1
  166. package/dist/tools/wait/message-delivery.d.ts +10 -0
  167. package/dist/tools/wait/message-delivery.d.ts.map +1 -1
  168. package/dist/tools/wait/message-delivery.js +48 -1
  169. package/dist/tools/wait/message-delivery.js.map +1 -1
  170. package/dist/tools/wait/poll-loop.d.ts.map +1 -1
  171. package/dist/tools/wait/poll-loop.js +18 -0
  172. package/dist/tools/wait/poll-loop.js.map +1 -1
  173. package/package.json +3 -2
  174. package/templates/swarm.default.md +4 -1
  175. package/dist/data/memory/topic-index.d.ts +0 -20
  176. package/dist/data/memory/topic-index.d.ts.map +0 -1
  177. package/dist/data/memory/topic-index.js +0 -91
  178. package/dist/data/memory/topic-index.js.map +0 -1
@@ -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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"}
@@ -4,11 +4,36 @@
4
4
  */
5
5
  import type { Database } from "./schema.js";
6
6
  /**
7
- * Expire all active semantic notes belonging to a given thread.
8
- * Sets valid_to = NOW() and decrements the topic index for each note's keywords.
9
- * Returns the count of archived notes.
7
+ * Why a note's valid_to was set. Every live writer that expires a note records
8
+ * one, so restoreNotesForThread can tell a reversible archive-kill from a
9
+ * deliberate retirement (the fix for dd47ea9's known limitation). The two
10
+ * `*-legacy` values are written only by the migration-28 backfill over rows
11
+ * that predate the column; live code never writes them.
10
12
  */
11
- export declare function archiveNotesForThread(db: Database, threadId: number): number;
13
+ export type ExpiryReason = "thread-terminal" | "thread-archived" | "worker-cleanup" | "pruned" | "quality-gate" | "reflection-cap" | "superseded" | "merged" | "archived-legacy" | "unknown-legacy";
14
+ /**
15
+ * Expire all active semantic notes belonging to a given thread, recording why.
16
+ * Sets valid_to = NOW(). Returns the count of archived notes.
17
+ */
18
+ export declare function archiveNotesForThread(db: Database, threadId: number, reason: Extract<ExpiryReason, "thread-terminal" | "worker-cleanup">): number;
19
+ /**
20
+ * Restore notes previously expired by archiving a thread — the mirror of
21
+ * archiveNotesForThread. Clears valid_to (and expiry_reason) for the thread's
22
+ * restorable expired notes.
23
+ *
24
+ * Only notes whose expiry_reason marks an archive-kill are resurrected (see
25
+ * RESTORABLE_EXPIRY_REASONS); a note that was pruned, gate-expired, cap-trimmed
26
+ * or superseded stays dead. `unknown-legacy` (and NULL, which can only mean a
27
+ * pre-column binary wrote the expiry) is included only when the caller asserts
28
+ * the thread is being unarchived (`includeUnknownLegacy`) — for a thread that
29
+ * was archived, the historical sweep is the overwhelmingly likely killer, so a
30
+ * few wrongly-revived pruning singles are an accepted, disclosed cost.
31
+ *
32
+ * Returns the count of restored notes.
33
+ */
34
+ export declare function restoreNotesForThread(db: Database, threadId: number, options?: {
35
+ includeUnknownLegacy?: boolean;
36
+ }): number;
12
37
  /**
13
38
  * Find thread IDs that have active (non-expired) semantic notes.
14
39
  * Returns distinct thread IDs (excluding null/global notes).
@@ -1 +1 @@
1
- {"version":3,"file":"note-archival.d.ts","sourceRoot":"","sources":["../../../src/data/memory/note-archival.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAU5C;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAgC5E;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,EAAE,CAQlE"}
1
+ {"version":3,"file":"note-archival.d.ts","sourceRoot":"","sources":["../../../src/data/memory/note-archival.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GACpB,iBAAiB,GACjB,iBAAiB,GACjB,gBAAgB,GAChB,QAAQ,GACR,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,QAAQ,GACR,iBAAiB,GACjB,gBAAgB,CAAC;AAgBrB;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,iBAAiB,GAAG,gBAAgB,CAAC,GAClE,MAAM,CAgBR;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC3C,MAAM,CAmBR;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,QAAQ,GAAG,MAAM,EAAE,CAQlE"}
@@ -2,37 +2,66 @@
2
2
  * Thread-scoped semantic note archival — bulk expiry when a thread is
3
3
  * archived or a disposable worker is cleaned up.
4
4
  */
5
- import { nowISO, parseJsonArray } from "./utils.js";
6
- import { decrementTopicIndexForKeywords } from "./topic-index.js";
5
+ import { nowISO } from "./utils.js";
7
6
  import { log } from "../../lib/logger.js";
8
7
  /**
9
- * Expire all active semantic notes belonging to a given thread.
10
- * Sets valid_to = NOW() and decrements the topic index for each note's keywords.
11
- * Returns the count of archived notes.
8
+ * Reasons restoreNotesForThread revives unconditionally: kills that archived a
9
+ * thread's knowledge rather than retiring it. `pruned`/`quality-gate`/
10
+ * `reflection-cap`/`superseded`/`merged` stay dead through unarchive — those
11
+ * notes were individually judged, not swept. `thread-terminal` also stays dead:
12
+ * terminal threads cannot be unarchived, so a terminal-swept note reappearing
13
+ * via some later unarchive would be a bug, not a restore.
12
14
  */
13
- export function archiveNotesForThread(db, threadId) {
15
+ const RESTORABLE_EXPIRY_REASONS = [
16
+ "thread-archived",
17
+ "archived-legacy",
18
+ "worker-cleanup",
19
+ ];
20
+ /**
21
+ * Expire all active semantic notes belonging to a given thread, recording why.
22
+ * Sets valid_to = NOW(). Returns the count of archived notes.
23
+ */
24
+ export function archiveNotesForThread(db, threadId, reason) {
14
25
  const now = nowISO();
15
- const activeNotes = db
16
- .prepare(`SELECT note_id, keywords FROM semantic_notes
26
+ const result = db
27
+ .prepare(`UPDATE semantic_notes SET valid_to = ?, updated_at = ?, expiry_reason = ?
17
28
  WHERE thread_id = ? AND valid_to IS NULL`)
18
- .all(threadId);
19
- if (activeNotes.length === 0)
20
- return 0;
21
- const expireStmt = db.prepare(`UPDATE semantic_notes SET valid_to = ?, updated_at = ? WHERE note_id = ?`);
22
- const notes = activeNotes.map((row) => ({
23
- noteId: row.note_id,
24
- keywords: parseJsonArray(row.keywords),
25
- }));
26
- db.transaction(() => {
27
- for (const note of notes) {
28
- expireStmt.run(now, now, note.noteId);
29
- if (note.keywords.length > 0) {
30
- decrementTopicIndexForKeywords(db, note.keywords);
31
- }
32
- }
33
- })();
34
- log.info(`[memory] Archived ${notes.length} semantic notes for thread ${threadId}`);
35
- return notes.length;
29
+ .run(now, now, reason, threadId);
30
+ if (result.changes > 0) {
31
+ log.info(`[memory] Archived ${result.changes} semantic notes for thread ${threadId} (${reason})`);
32
+ }
33
+ return result.changes;
34
+ }
35
+ /**
36
+ * Restore notes previously expired by archiving a thread — the mirror of
37
+ * archiveNotesForThread. Clears valid_to (and expiry_reason) for the thread's
38
+ * restorable expired notes.
39
+ *
40
+ * Only notes whose expiry_reason marks an archive-kill are resurrected (see
41
+ * RESTORABLE_EXPIRY_REASONS); a note that was pruned, gate-expired, cap-trimmed
42
+ * or superseded stays dead. `unknown-legacy` (and NULL, which can only mean a
43
+ * pre-column binary wrote the expiry) is included only when the caller asserts
44
+ * the thread is being unarchived (`includeUnknownLegacy`) — for a thread that
45
+ * was archived, the historical sweep is the overwhelmingly likely killer, so a
46
+ * few wrongly-revived pruning singles are an accepted, disclosed cost.
47
+ *
48
+ * Returns the count of restored notes.
49
+ */
50
+ export function restoreNotesForThread(db, threadId, options) {
51
+ const now = nowISO();
52
+ const reasonPlaceholders = RESTORABLE_EXPIRY_REASONS.map(() => "?").join(",");
53
+ const unknownClause = options?.includeUnknownLegacy
54
+ ? ` OR expiry_reason = 'unknown-legacy' OR expiry_reason IS NULL`
55
+ : "";
56
+ const result = db
57
+ .prepare(`UPDATE semantic_notes SET valid_to = NULL, expiry_reason = NULL, updated_at = ?
58
+ WHERE thread_id = ? AND valid_to IS NOT NULL AND superseded_by IS NULL
59
+ AND (expiry_reason IN (${reasonPlaceholders})${unknownClause})`)
60
+ .run(now, threadId, ...RESTORABLE_EXPIRY_REASONS);
61
+ if (result.changes > 0) {
62
+ log.info(`[memory] Restored ${result.changes} semantic notes for thread ${threadId}`);
63
+ }
64
+ return result.changes;
36
65
  }
37
66
  /**
38
67
  * Find thread IDs that have active (non-expired) semantic notes.
@@ -1 +1 @@
1
- {"version":3,"file":"note-archival.js","sourceRoot":"","sources":["../../../src/data/memory/note-archival.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAO1C;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,QAAgB;IAClE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IAErB,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CACN;8CACwC,CACzC;SACA,GAAG,CAAC,QAAQ,CAA4C,CAAC;IAE5D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEvC,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAC3B,0EAA0E,CAC3E,CAAC;IAEF,MAAM,KAAK,GAAuB,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAC1D,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAa;KACnD,CAAC,CAAC,CAAC;IAEJ,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,8BAA8B,CAAC,EAAE,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,GAAG,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,MAAM,8BAA8B,QAAQ,EAAE,CAAC,CAAC;IACpF,OAAO,KAAK,CAAC,MAAM,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,EAAY;IACtD,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CACN;sDACgD,CACjD;SACA,GAAG,EAA6B,CAAC;IACpC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"note-archival.js","sourceRoot":"","sources":["../../../src/data/memory/note-archival.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAqB1C;;;;;;;GAOG;AACH,MAAM,yBAAyB,GAA4B;IACzD,iBAAiB;IACjB,iBAAiB;IACjB,gBAAgB;CACjB,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,EAAY,EACZ,QAAgB,EAChB,MAAmE;IAEnE,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IAErB,MAAM,MAAM,GAAG,EAAE;SACd,OAAO,CACN;8CACwC,CACzC;SACA,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEnC,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,IAAI,CACN,qBAAqB,MAAM,CAAC,OAAO,8BAA8B,QAAQ,KAAK,MAAM,GAAG,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CACnC,EAAY,EACZ,QAAgB,EAChB,OAA4C;IAE5C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC;IAErB,MAAM,kBAAkB,GAAG,yBAAyB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9E,MAAM,aAAa,GAAG,OAAO,EAAE,oBAAoB;QACjD,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,MAAM,GAAG,EAAE;SACd,OAAO,CACN;;gCAE0B,kBAAkB,IAAI,aAAa,GAAG,CACjE;SACA,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,yBAAyB,CAAC,CAAC;IAEpD,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,OAAO,8BAA8B,QAAQ,EAAE,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CAAC,EAAY;IACtD,MAAM,IAAI,GAAG,EAAE;SACZ,OAAO,CACN;sDACgD,CACjD;SACA,GAAG,EAA6B,CAAC;IACpC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AACtC,CAAC"}
@@ -10,7 +10,7 @@ const DEDUP_SIMILARITY_THRESHOLD = 0.86;
10
10
  const LESSON_DEDUP_THRESHOLD = 0.75;
11
11
  export async function checkDuplicate(db, content, apiKey, threadId) {
12
12
  try {
13
- const embedding = await generateEmbedding(content, apiKey);
13
+ const embedding = await generateEmbedding(content, apiKey, threadId);
14
14
  const matches = searchByEmbedding(db, embedding, {
15
15
  maxResults: 8,
16
16
  minSimilarity: DEDUP_SIMILARITY_THRESHOLD,
@@ -34,7 +34,7 @@ export async function checkDuplicate(db, content, apiKey, threadId) {
34
34
  */
35
35
  export async function checkLessonDuplicate(db, lesson, apiKey, knowledgeThreadId) {
36
36
  try {
37
- const embedding = await generateEmbedding(lesson, apiKey);
37
+ const embedding = await generateEmbedding(lesson, apiKey, knowledgeThreadId);
38
38
  const matches = searchByEmbedding(db, embedding, {
39
39
  maxResults: 8,
40
40
  minSimilarity: LESSON_DEDUP_THRESHOLD,
@@ -1 +1 @@
1
- {"version":3,"file":"reflection-dedup.js","sourceRoot":"","sources":["../../../src/data/memory/reflection-dedup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,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,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,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,IACE,OAAO,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,sBAAsB,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CACtF,EACD,CAAC;YACD,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"}
1
+ {"version":3,"file":"reflection-dedup.js","sourceRoot":"","sources":["../../../src/data/memory/reflection-dedup.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAEpC,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAY,EACZ,OAAe,EACf,MAAc,EACd,QAAgB;IAEhB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrE,MAAM,OAAO,GAAG,iBAAiB,CAAC,EAAE,EAAE,SAAS,EAAE;YAC/C,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,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,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,EAAY,EACZ,MAAc,EACd,MAAc,EACd,iBAAyB;IAEzB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;QAC7E,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,IACE,OAAO,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,sBAAsB,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,CACtF,EACD,CAAC;YACD,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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.d.ts","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAwB5C,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;AA+ED;;;;;;;;;;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,CA4B3B"}
1
+ {"version":3,"file":"reflection.d.ts","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAwB5C,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;AAiFD;;;;;;;;;;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,CA4B3B"}
@@ -42,7 +42,7 @@ function enforceReflectionCap(db, threadId) {
42
42
  // Phase 1: Expire stale never-accessed reflections
43
43
  const staleResult = db
44
44
  .prepare(`UPDATE semantic_notes
45
- SET valid_to = ?
45
+ SET valid_to = ?, expiry_reason = 'reflection-cap'
46
46
  WHERE valid_to IS NULL AND superseded_by IS NULL
47
47
  AND content LIKE '[REFLECTION]%'
48
48
  AND access_count = 0
@@ -70,7 +70,7 @@ function enforceReflectionCap(db, threadId) {
70
70
  .all(knowledgeThreadId, excess);
71
71
  if (toExpire.length > 0) {
72
72
  const now = nowISO();
73
- const stmt = db.prepare(`UPDATE semantic_notes SET valid_to = ? WHERE note_id = ?`);
73
+ const stmt = db.prepare(`UPDATE semantic_notes SET valid_to = ?, expiry_reason = 'reflection-cap' WHERE note_id = ?`);
74
74
  db.transaction(() => {
75
75
  for (const row of toExpire)
76
76
  stmt.run(now, row.note_id);
@@ -164,6 +164,8 @@ async function runReflectionInner(db, threadId, startMs, maxRecent, oldSampleSiz
164
164
  try {
165
165
  analysis = await chatCompletion(analyzeMessages, apiKey, {
166
166
  model: process.env.REFLECTION_MODEL ?? process.env.CONSOLIDATION_MODEL ?? "gpt-4o",
167
+ category: "reflection",
168
+ threadId,
167
169
  maxTokens: 1500,
168
170
  temperature: 0.55,
169
171
  timeoutMs: 90_000,
@@ -190,6 +192,8 @@ async function runReflectionInner(db, threadId, startMs, maxRecent, oldSampleSiz
190
192
  try {
191
193
  raw = await chatCompletion(structureMessages, apiKey, {
192
194
  model: process.env.REFLECTION_MODEL ?? process.env.CONSOLIDATION_MODEL ?? "gpt-4o",
195
+ category: "reflection",
196
+ threadId,
193
197
  maxTokens: 4096,
194
198
  temperature: 0.25,
195
199
  responseFormat: { type: "json_object" },
@@ -288,7 +292,7 @@ async function runReflectionInner(db, threadId, startMs, maxRecent, oldSampleSiz
288
292
  }
289
293
  else {
290
294
  try {
291
- const embedding = await generateEmbedding(prefixedContent, apiKey);
295
+ const embedding = await generateEmbedding(prefixedContent, apiKey, threadId);
292
296
  saveNoteEmbedding(db, noteId, embedding);
293
297
  }
294
298
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reflection.js","sourceRoot":"","sources":["../../../src/data/memory/reflection.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
1
  import type { Database } from "./db-types.js";
2
- export declare const SCHEMA_SQL = "\nCREATE TABLE IF NOT EXISTS episodes (\n episode_id TEXT PRIMARY KEY,\n session_id TEXT NOT NULL,\n thread_id INTEGER NOT NULL,\n timestamp TEXT NOT NULL,\n type TEXT NOT NULL CHECK(type IN ('operator_message','agent_action','system_event','operator_reaction')),\n modality TEXT NOT NULL CHECK(modality IN ('text','voice','photo','video_note','document','mixed','reaction')),\n content TEXT NOT NULL,\n topic_tags TEXT,\n importance REAL NOT NULL DEFAULT 0.5,\n consolidated INTEGER DEFAULT 0,\n accessed_count INTEGER DEFAULT 0,\n last_accessed TEXT,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_ep_thread_time ON episodes(thread_id, timestamp DESC);\nCREATE INDEX IF NOT EXISTS idx_ep_importance ON episodes(importance DESC);\nCREATE INDEX IF NOT EXISTS idx_ep_uncons ON episodes(consolidated) WHERE consolidated = 0;\n\nCREATE TABLE IF NOT EXISTS semantic_notes (\n note_id TEXT PRIMARY KEY,\n type TEXT NOT NULL CHECK(type IN ('fact','preference','pattern','entity','relationship')),\n content TEXT NOT NULL,\n keywords TEXT NOT NULL,\n confidence REAL NOT NULL DEFAULT 0.5,\n source_episodes TEXT,\n linked_notes TEXT,\n link_reasons TEXT,\n valid_from TEXT NOT NULL,\n valid_to TEXT,\n superseded_by TEXT,\n access_count INTEGER DEFAULT 0,\n last_accessed TEXT,\n priority INTEGER NOT NULL DEFAULT 0,\n thread_id INTEGER,\n is_guardrail INTEGER NOT NULL DEFAULT 0,\n pinned INTEGER NOT NULL DEFAULT 0,\n quality_score INTEGER,\n created_at TEXT NOT NULL,\n updated_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sem_type ON semantic_notes(type);\nCREATE INDEX IF NOT EXISTS idx_sem_conf ON semantic_notes(confidence DESC);\nCREATE INDEX IF NOT EXISTS idx_sem_valid ON semantic_notes(valid_to) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_priority ON semantic_notes(priority DESC) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_thread ON semantic_notes(thread_id) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_guardrail ON semantic_notes(is_guardrail) WHERE is_guardrail = 1 AND valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_pinned ON semantic_notes(pinned) WHERE pinned = 1 AND valid_to IS NULL;\n\nCREATE TABLE IF NOT EXISTS meta_topic_index (\n topic TEXT PRIMARY KEY,\n semantic_count INTEGER DEFAULT 0,\n last_updated TEXT,\n avg_confidence REAL DEFAULT 0.5,\n total_accesses INTEGER DEFAULT 0\n);\n\nCREATE TABLE IF NOT EXISTS meta_consolidation_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n run_at TEXT NOT NULL,\n episodes_processed INTEGER,\n notes_created INTEGER,\n duration_ms INTEGER\n);\n\nCREATE TABLE IF NOT EXISTS voice_signatures (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n episode_id TEXT NOT NULL,\n emotion TEXT,\n arousal REAL,\n dominance REAL,\n valence REAL,\n speech_rate REAL,\n mean_pitch_hz REAL,\n pitch_std_hz REAL,\n jitter REAL,\n shimmer REAL,\n hnr_db REAL,\n audio_events TEXT,\n duration_sec REAL,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_voice_ep ON voice_signatures(episode_id);\nCREATE INDEX IF NOT EXISTS idx_voice_time ON voice_signatures(created_at DESC);\n\nCREATE TABLE IF NOT EXISTS note_embeddings (\n note_id TEXT PRIMARY KEY,\n embedding BLOB NOT NULL,\n model TEXT NOT NULL DEFAULT 'text-embedding-3-small',\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_emb_note ON note_embeddings(note_id);\n\nCREATE TABLE IF NOT EXISTS sent_messages (\n message_id INTEGER PRIMARY KEY,\n thread_id INTEGER NOT NULL,\n created_at TEXT DEFAULT (datetime('now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_sent_messages_thread ON sent_messages(thread_id);\n\nCREATE TABLE IF NOT EXISTS topic_registry (\n chat_id TEXT NOT NULL,\n name TEXT NOT NULL COLLATE NOCASE,\n thread_id INTEGER NOT NULL,\n registered_at TEXT NOT NULL DEFAULT (datetime('now')),\n PRIMARY KEY (chat_id, name)\n);\n\nCREATE TABLE IF NOT EXISTS temporal_narratives (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n thread_id INTEGER NOT NULL,\n resolution TEXT NOT NULL CHECK(resolution IN ('day', 'week', 'month', 'quarter', 'half_year')),\n period_start TEXT NOT NULL,\n period_end TEXT NOT NULL,\n narrative TEXT NOT NULL,\n source_episode_count INTEGER NOT NULL DEFAULT 0,\n source_note_count INTEGER NOT NULL DEFAULT 0,\n model TEXT,\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n UNIQUE(thread_id, resolution, period_start)\n);\nCREATE INDEX IF NOT EXISTS idx_narrative_thread_res ON temporal_narratives(thread_id, resolution, created_at DESC);\n\nCREATE TABLE IF NOT EXISTS thread_registry (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n thread_id INTEGER NOT NULL UNIQUE,\n name TEXT NOT NULL,\n type TEXT NOT NULL CHECK(type IN ('root','daily','branch','worker')),\n root_thread_id INTEGER,\n badge TEXT NOT NULL DEFAULT 'root',\n client TEXT DEFAULT 'claude',\n max_retries INTEGER DEFAULT 5,\n cooldown_ms INTEGER DEFAULT 300000,\n keep_alive INTEGER DEFAULT 0,\n created_at TEXT NOT NULL,\n last_active_at TEXT,\n session_reset_at TEXT,\n clean_shutdown INTEGER NOT NULL DEFAULT 1,\n status TEXT NOT NULL DEFAULT 'active' CHECK(status IN ('active','archived','expired','exited')),\n daily_rotation INTEGER NOT NULL DEFAULT 0,\n autonomous_mode INTEGER NOT NULL DEFAULT 0,\n telegram_topic_id INTEGER,\n identity_prompt TEXT,\n working_directory TEXT,\n pid INTEGER,\n archived_at TEXT,\n summary TEXT\n);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_type ON thread_registry(type);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_root ON thread_registry(root_thread_id);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_status ON thread_registry(status);\n\nCREATE TABLE IF NOT EXISTS schema_version (\n version INTEGER PRIMARY KEY,\n applied_at TEXT NOT NULL\n);\n";
2
+ export declare const SCHEMA_SQL = "\nCREATE TABLE IF NOT EXISTS episodes (\n episode_id TEXT PRIMARY KEY,\n session_id TEXT NOT NULL,\n thread_id INTEGER NOT NULL,\n timestamp TEXT NOT NULL,\n type TEXT NOT NULL CHECK(type IN ('operator_message','agent_action','system_event','operator_reaction')),\n modality TEXT NOT NULL CHECK(modality IN ('text','voice','photo','video_note','document','mixed','reaction')),\n content TEXT NOT NULL,\n topic_tags TEXT,\n importance REAL NOT NULL DEFAULT 0.5,\n consolidated INTEGER DEFAULT 0,\n accessed_count INTEGER DEFAULT 0,\n last_accessed TEXT,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_ep_thread_time ON episodes(thread_id, timestamp DESC);\nCREATE INDEX IF NOT EXISTS idx_ep_importance ON episodes(importance DESC);\nCREATE INDEX IF NOT EXISTS idx_ep_uncons ON episodes(consolidated) WHERE consolidated = 0;\n\nCREATE TABLE IF NOT EXISTS semantic_notes (\n note_id TEXT PRIMARY KEY,\n type TEXT NOT NULL CHECK(type IN ('fact','preference','pattern','entity','relationship')),\n content TEXT NOT NULL,\n keywords TEXT NOT NULL,\n confidence REAL NOT NULL DEFAULT 0.5,\n source_episodes TEXT,\n linked_notes TEXT,\n link_reasons TEXT,\n valid_from TEXT NOT NULL,\n valid_to TEXT,\n superseded_by TEXT,\n access_count INTEGER DEFAULT 0,\n last_accessed TEXT,\n priority INTEGER NOT NULL DEFAULT 0,\n thread_id INTEGER,\n is_guardrail INTEGER NOT NULL DEFAULT 0,\n pinned INTEGER NOT NULL DEFAULT 0,\n quality_score INTEGER,\n expiry_reason TEXT,\n created_at TEXT NOT NULL,\n updated_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_sem_type ON semantic_notes(type);\nCREATE INDEX IF NOT EXISTS idx_sem_conf ON semantic_notes(confidence DESC);\nCREATE INDEX IF NOT EXISTS idx_sem_valid ON semantic_notes(valid_to) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_priority ON semantic_notes(priority DESC) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_thread ON semantic_notes(thread_id) WHERE valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_guardrail ON semantic_notes(is_guardrail) WHERE is_guardrail = 1 AND valid_to IS NULL;\nCREATE INDEX IF NOT EXISTS idx_sem_pinned ON semantic_notes(pinned) WHERE pinned = 1 AND valid_to IS NULL;\n-- NOTE: idx_sem_expiry_reason is intentionally NOT created here. It references\n-- the expiry_reason column, which is added by migration 28 (ALTER TABLE) for\n-- pre-existing DBs. Because SCHEMA_SQL runs before runMigrations(), creating the\n-- index here would throw \"no such column: expiry_reason\" on any DB created before\n-- migration 28 \u2014 crashing startup before the migration can add the column.\n-- Migration 28 creates this index itself, right after the ALTER, for both fresh\n-- and existing DBs.\n\nCREATE TABLE IF NOT EXISTS meta_consolidation_log (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n run_at TEXT NOT NULL,\n episodes_processed INTEGER,\n notes_created INTEGER,\n duration_ms INTEGER\n);\n\nCREATE TABLE IF NOT EXISTS voice_signatures (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n episode_id TEXT NOT NULL,\n emotion TEXT,\n arousal REAL,\n dominance REAL,\n valence REAL,\n speech_rate REAL,\n mean_pitch_hz REAL,\n pitch_std_hz REAL,\n jitter REAL,\n shimmer REAL,\n hnr_db REAL,\n audio_events TEXT,\n duration_sec REAL,\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_voice_ep ON voice_signatures(episode_id);\nCREATE INDEX IF NOT EXISTS idx_voice_time ON voice_signatures(created_at DESC);\n\nCREATE TABLE IF NOT EXISTS note_embeddings (\n note_id TEXT PRIMARY KEY,\n embedding BLOB NOT NULL,\n model TEXT NOT NULL DEFAULT 'text-embedding-3-small',\n created_at TEXT NOT NULL\n);\n\nCREATE INDEX IF NOT EXISTS idx_emb_note ON note_embeddings(note_id);\n\nCREATE TABLE IF NOT EXISTS sent_messages (\n message_id INTEGER PRIMARY KEY,\n thread_id INTEGER NOT NULL,\n created_at TEXT DEFAULT (datetime('now'))\n);\n\nCREATE INDEX IF NOT EXISTS idx_sent_messages_thread ON sent_messages(thread_id);\n\nCREATE TABLE IF NOT EXISTS topic_registry (\n chat_id TEXT NOT NULL,\n name TEXT NOT NULL COLLATE NOCASE,\n thread_id INTEGER NOT NULL,\n registered_at TEXT NOT NULL DEFAULT (datetime('now')),\n PRIMARY KEY (chat_id, name)\n);\n\nCREATE TABLE IF NOT EXISTS temporal_narratives (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n thread_id INTEGER NOT NULL,\n resolution TEXT NOT NULL CHECK(resolution IN ('day', 'week', 'month', 'quarter', 'half_year')),\n period_start TEXT NOT NULL,\n period_end TEXT NOT NULL,\n narrative TEXT NOT NULL,\n source_episode_count INTEGER NOT NULL DEFAULT 0,\n source_note_count INTEGER NOT NULL DEFAULT 0,\n model TEXT,\n created_at TEXT NOT NULL DEFAULT (datetime('now')),\n UNIQUE(thread_id, resolution, period_start)\n);\nCREATE INDEX IF NOT EXISTS idx_narrative_thread_res ON temporal_narratives(thread_id, resolution, created_at DESC);\n\nCREATE TABLE IF NOT EXISTS thread_registry (\n id INTEGER PRIMARY KEY AUTOINCREMENT,\n thread_id INTEGER NOT NULL UNIQUE,\n name TEXT NOT NULL,\n type TEXT NOT NULL CHECK(type IN ('root','daily','branch','worker')),\n root_thread_id INTEGER,\n badge TEXT NOT NULL DEFAULT 'root',\n client TEXT DEFAULT 'claude',\n max_retries INTEGER DEFAULT 5,\n cooldown_ms INTEGER DEFAULT 300000,\n keep_alive INTEGER DEFAULT 0,\n created_at TEXT NOT NULL,\n last_active_at TEXT,\n session_reset_at TEXT,\n clean_shutdown INTEGER NOT NULL DEFAULT 1,\n status TEXT NOT NULL DEFAULT 'active' CHECK(status IN ('active','archived','expired','exited')),\n daily_rotation INTEGER NOT NULL DEFAULT 0,\n autonomous_mode INTEGER NOT NULL DEFAULT 0,\n telegram_topic_id INTEGER,\n identity_prompt TEXT,\n working_directory TEXT,\n pid INTEGER,\n archived_at TEXT,\n summary TEXT\n);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_type ON thread_registry(type);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_root ON thread_registry(root_thread_id);\nCREATE INDEX IF NOT EXISTS idx_thread_reg_status ON thread_registry(status);\n\nCREATE TABLE IF NOT EXISTS schema_version (\n version INTEGER PRIMARY KEY,\n applied_at TEXT NOT NULL\n);\n";
3
3
  export declare function cleanupOldSentMessages(db: Database): void;
4
4
  //# sourceMappingURL=schema-ddl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-ddl.d.ts","sourceRoot":"","sources":["../../../src/data/memory/schema-ddl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI9C,eAAO,MAAM,UAAU,olMAkKtB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAWzD"}
1
+ {"version":3,"file":"schema-ddl.d.ts","sourceRoot":"","sources":["../../../src/data/memory/schema-ddl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAI9C,eAAO,MAAM,UAAU,w4MAkKtB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAWzD"}
@@ -40,6 +40,7 @@ CREATE TABLE IF NOT EXISTS semantic_notes (
40
40
  is_guardrail INTEGER NOT NULL DEFAULT 0,
41
41
  pinned INTEGER NOT NULL DEFAULT 0,
42
42
  quality_score INTEGER,
43
+ expiry_reason TEXT,
43
44
  created_at TEXT NOT NULL,
44
45
  updated_at TEXT NOT NULL
45
46
  );
@@ -51,14 +52,13 @@ CREATE INDEX IF NOT EXISTS idx_sem_priority ON semantic_notes(priority DESC) WHE
51
52
  CREATE INDEX IF NOT EXISTS idx_sem_thread ON semantic_notes(thread_id) WHERE valid_to IS NULL;
52
53
  CREATE INDEX IF NOT EXISTS idx_sem_guardrail ON semantic_notes(is_guardrail) WHERE is_guardrail = 1 AND valid_to IS NULL;
53
54
  CREATE INDEX IF NOT EXISTS idx_sem_pinned ON semantic_notes(pinned) WHERE pinned = 1 AND valid_to IS NULL;
54
-
55
- CREATE TABLE IF NOT EXISTS meta_topic_index (
56
- topic TEXT PRIMARY KEY,
57
- semantic_count INTEGER DEFAULT 0,
58
- last_updated TEXT,
59
- avg_confidence REAL DEFAULT 0.5,
60
- total_accesses INTEGER DEFAULT 0
61
- );
55
+ -- NOTE: idx_sem_expiry_reason is intentionally NOT created here. It references
56
+ -- the expiry_reason column, which is added by migration 28 (ALTER TABLE) for
57
+ -- pre-existing DBs. Because SCHEMA_SQL runs before runMigrations(), creating the
58
+ -- index here would throw "no such column: expiry_reason" on any DB created before
59
+ -- migration 28 — crashing startup before the migration can add the column.
60
+ -- Migration 28 creates this index itself, right after the ALTER, for both fresh
61
+ -- and existing DBs.
62
62
 
63
63
  CREATE TABLE IF NOT EXISTS meta_consolidation_log (
64
64
  id INTEGER PRIMARY KEY AUTOINCREMENT,
@@ -25,6 +25,29 @@ export interface SemanticNote {
25
25
  createdAt: string;
26
26
  updatedAt: string;
27
27
  }
28
+ /** A primary `ORDER BY` key a caller puts in front of the shared chain. */
29
+ interface OrderKey {
30
+ column: string;
31
+ sql: string;
32
+ }
33
+ /**
34
+ * The chain's own clause for `column`, for callers that lead with a column the
35
+ * chain also carries. Look it up rather than respelling it: `rankedOrderBy` drops
36
+ * the duplicate by column name, so a caller and the table can never disagree about
37
+ * how "confidence DESC" happens to be written.
38
+ */
39
+ export declare function rankKey(column: string): OrderKey;
40
+ /**
41
+ * `ORDER BY` list for a SQL read path, with the shared chain as its tail.
42
+ *
43
+ * `leading` is for callers whose own primary sort is deliberate. A leading key on a
44
+ * column the chain also sorts by is not repeated in the tail.
45
+ */
46
+ export declare function rankedOrderBy(...leading: OrderKey[]): string;
47
+ /** `ORDER BY` tail for the paths that rank by relevance alone. */
48
+ export declare const RANK_TIEBREAKERS: string;
49
+ /** The same chain for the in-memory path, applied after relevance. */
50
+ export declare function compareRankTiebreakers(a: SemanticNote, b: SemanticNote): number;
28
51
  /** Increment access_count and update last_accessed for a batch of note IDs. */
29
52
  export declare function bumpAccessCounts(db: Database, noteIds: string[]): void;
30
53
  export declare function rowToSemanticNote(row: Record<string, unknown>): SemanticNote;
@@ -56,13 +79,17 @@ export declare function getTopSemanticNotes(db: Database, options?: {
56
79
  }): SemanticNote[];
57
80
  /**
58
81
  * Guardrail notes: explicitly flagged decision constraints the LLM must always
59
- * follow. Capped at 5, ordered by priority DESC then access_count DESC.
82
+ * follow. Capped at 5, ordered by priority DESC — a guardrail surfaces by how
83
+ * important it is, not by how often it has been read — then by the shared chain.
60
84
  */
61
85
  export declare function getGuardrailNotes(db: Database): SemanticNote[];
62
86
  /**
63
87
  * Pinned notes: always shown in bootstrap briefing regardless of access count.
64
88
  * Thread-scoped — only returns notes for the given thread (or global NULL).
65
- * Ordered by priority DESC, then confidence DESC.
89
+ * Ordered by priority DESC, then the shared chain. `created_at ASC` stays on the
90
+ * end as a total order: pinned notes are commonly saved with the same default
91
+ * priority and confidence and no reads yet, so the chain alone leaves real ties
92
+ * and the briefing would otherwise reshuffle between calls.
66
93
  */
67
94
  export declare function getPinnedNotes(db: Database, threadId: number): SemanticNote[];
68
95
  export declare function updateSemanticNote(db: Database, noteId: string, updates: Partial<{
@@ -89,4 +116,5 @@ export declare function supersedeNote(db: Database, oldNoteId: string, newNote:
89
116
  * is dead-on-arrival, since the consumer filters out expired link targets.
90
117
  */
91
118
  export declare function migrateInboundLinks(db: Database, fromNoteId: string, toNoteId: string): void;
119
+ export {};
92
120
  //# sourceMappingURL=semantic-notes.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"semantic-notes.d.ts","sourceRoot":"","sources":["../../../src/data/memory/semantic-notes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semantic-notes.d.ts","sourceRoot":"","sources":["../../../src/data/memory/semantic-notes.ts"],"names":[],"mappings":"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"}