sensorium-mcp 3.0.86 → 3.0.90

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 (69) hide show
  1. package/dist/daily-session.d.ts +7 -4
  2. package/dist/daily-session.d.ts.map +1 -1
  3. package/dist/daily-session.js +7 -4
  4. package/dist/daily-session.js.map +1 -1
  5. package/dist/dashboard/log-parser.d.ts +11 -0
  6. package/dist/dashboard/log-parser.d.ts.map +1 -1
  7. package/dist/dashboard/log-parser.js +35 -0
  8. package/dist/dashboard/log-parser.js.map +1 -1
  9. package/dist/dashboard/routes/threads.d.ts.map +1 -1
  10. package/dist/dashboard/routes/threads.js +8 -0
  11. package/dist/dashboard/routes/threads.js.map +1 -1
  12. package/dist/data/memory/bootstrap.d.ts +1 -0
  13. package/dist/data/memory/bootstrap.d.ts.map +1 -1
  14. package/dist/data/memory/bootstrap.js +15 -0
  15. package/dist/data/memory/bootstrap.js.map +1 -1
  16. package/dist/data/memory/episodes.d.ts +13 -0
  17. package/dist/data/memory/episodes.d.ts.map +1 -1
  18. package/dist/data/memory/episodes.js +24 -0
  19. package/dist/data/memory/episodes.js.map +1 -1
  20. package/dist/data/memory/migration-runner.d.ts +1 -1
  21. package/dist/data/memory/migration-runner.d.ts.map +1 -1
  22. package/dist/data/memory/migration-runner.js +19 -1
  23. package/dist/data/memory/migration-runner.js.map +1 -1
  24. package/dist/data/memory/narrative.d.ts.map +1 -1
  25. package/dist/data/memory/narrative.js +42 -4
  26. package/dist/data/memory/narrative.js.map +1 -1
  27. package/dist/data/memory/schema-ddl.d.ts +1 -1
  28. package/dist/data/memory/schema-ddl.d.ts.map +1 -1
  29. package/dist/data/memory/schema-ddl.js +1 -0
  30. package/dist/data/memory/schema-ddl.js.map +1 -1
  31. package/dist/data/memory/schema-guard.d.ts.map +1 -1
  32. package/dist/data/memory/schema-guard.js +5 -0
  33. package/dist/data/memory/schema-guard.js.map +1 -1
  34. package/dist/data/memory/synthesis.d.ts +5 -2
  35. package/dist/data/memory/synthesis.d.ts.map +1 -1
  36. package/dist/data/memory/synthesis.js +17 -2
  37. package/dist/data/memory/synthesis.js.map +1 -1
  38. package/dist/data/memory/thread-registry.d.ts +14 -1
  39. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  40. package/dist/data/memory/thread-registry.js +24 -1
  41. package/dist/data/memory/thread-registry.js.map +1 -1
  42. package/dist/http-server.d.ts.map +1 -1
  43. package/dist/http-server.js +11 -1
  44. package/dist/http-server.js.map +1 -1
  45. package/dist/server/factory.js +63 -11
  46. package/dist/server/factory.js.map +1 -1
  47. package/dist/services/memory-briefing.service.d.ts.map +1 -1
  48. package/dist/services/memory-briefing.service.js +8 -0
  49. package/dist/services/memory-briefing.service.js.map +1 -1
  50. package/dist/tools/defs/memory-defs.d.ts.map +1 -1
  51. package/dist/tools/defs/memory-defs.js +9 -3
  52. package/dist/tools/defs/memory-defs.js.map +1 -1
  53. package/dist/tools/delegate-tool.js +1 -1
  54. package/dist/tools/delegate-tool.js.map +1 -1
  55. package/dist/tools/memory-tools.d.ts.map +1 -1
  56. package/dist/tools/memory-tools.js +32 -6
  57. package/dist/tools/memory-tools.js.map +1 -1
  58. package/dist/tools/start-session-tool.d.ts.map +1 -1
  59. package/dist/tools/start-session-tool.js +14 -1
  60. package/dist/tools/start-session-tool.js.map +1 -1
  61. package/dist/tools/wait/auto-forward.d.ts +36 -0
  62. package/dist/tools/wait/auto-forward.d.ts.map +1 -0
  63. package/dist/tools/wait/auto-forward.js +169 -0
  64. package/dist/tools/wait/auto-forward.js.map +1 -0
  65. package/dist/tools/wait/poll-loop.d.ts +1 -0
  66. package/dist/tools/wait/poll-loop.d.ts.map +1 -1
  67. package/dist/tools/wait/poll-loop.js +23 -0
  68. package/dist/tools/wait/poll-loop.js.map +1 -1
  69. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration-runner.js","sourceRoot":"","sources":["../../../src/data/memory/migration-runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"narrative.d.ts","sourceRoot":"","sources":["../../../src/data/memory/narrative.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,KAAK,mBAAmB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AAi1B9E;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC;IAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAmChG;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC,CAmB5C"}
1
+ {"version":3,"file":"narrative.d.ts","sourceRoot":"","sources":["../../../src/data/memory/narrative.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAW5C,KAAK,mBAAmB,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,WAAW,CAAC;AAy3B9E;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC;IAAE,SAAS,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,CAwChG;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,EACZ,QAAQ,EAAE,MAAM,GACf,MAAM,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC,CAmB5C"}
@@ -144,14 +144,41 @@ const CHILD_RESOLUTION = {
144
144
  quarter: "month",
145
145
  half_year: "quarter",
146
146
  };
147
+ /** Minimum episode-history span (days) before a resolution becomes eligible.
148
+ * Without this, a young thread with ≥5 episodes gets month/quarter/half_year
149
+ * narratives that just re-summarize the same few days under coarser labels.
150
+ * A resolution needs at least one full child-period of real history to mean
151
+ * anything, so month wants a week, quarter a month, half_year a quarter. */
152
+ const MIN_HISTORY_DAYS = {
153
+ day: 0,
154
+ week: 0,
155
+ month: 7,
156
+ quarter: 30,
157
+ half_year: 90,
158
+ };
147
159
  const NARRATIVE_MODEL = process.env.NARRATIVE_MODEL || process.env.CONSOLIDATION_MODEL || "gpt-4o";
148
160
  // ─── Period Calculation ──────────────────────────────────────────────────────
149
- function getPeriodBounds(resolution) {
161
+ /** Max backward reach for a day narrative when catching a cross-midnight gap. */
162
+ const DAY_GAP_MAX_LOOKBACK_MS = 3 * 24 * 60 * 60 * 1000;
163
+ function getPeriodBounds(db, threadId, resolution) {
150
164
  const now = new Date();
151
165
  const end = now.toISOString();
152
166
  if (resolution === "day") {
153
- const start = new Date(now);
154
- start.setUTCHours(0, 0, 0, 0);
167
+ const midnight = new Date(now);
168
+ midnight.setUTCHours(0, 0, 0, 0);
169
+ let start = midnight;
170
+ // Day is never backfilled, so episodes that get consolidated after midnight
171
+ // (e.g. last night's work folded in on the next run) would fall outside a
172
+ // strictly midnight-anchored window and never land in any day narrative.
173
+ // If the previous day narrative ended before today's midnight there is such
174
+ // a gap — extend the window back to cover it, capped so it can't balloon
175
+ // for stale or brand-new threads.
176
+ const lastDay = getLastNarrative(db, threadId, "day");
177
+ if (lastDay && lastDay.periodEnd < midnight.toISOString()) {
178
+ const floor = new Date(now.getTime() - DAY_GAP_MAX_LOOKBACK_MS);
179
+ const lastEnd = new Date(lastDay.periodEnd);
180
+ start = lastEnd > floor ? lastEnd : floor;
181
+ }
155
182
  return { start: start.toISOString(), end };
156
183
  }
157
184
  if (resolution === "week") {
@@ -187,6 +214,13 @@ function getEarliestEpisodeDate(db, threadId) {
187
214
  .get(threadId);
188
215
  return row?.earliest ?? null;
189
216
  }
217
+ /** Days of episode history a thread has (earliest episode → now); 0 if none. */
218
+ function getHistorySpanDays(db, threadId) {
219
+ const earliest = getEarliestEpisodeDate(db, threadId);
220
+ if (!earliest)
221
+ return 0;
222
+ return (Date.now() - new Date(earliest).getTime()) / 86_400_000;
223
+ }
190
224
  // ─── Source Data Collection ──────────────────────────────────────────────────
191
225
  function getEpisodesInPeriod(db, threadId, start, end) {
192
226
  const rows = db
@@ -581,7 +615,7 @@ async function generateNarrative(db, threadId, resolution, periodOverride) {
581
615
  if (!apiKey)
582
616
  throw new Error("OPENAI_API_KEY not set");
583
617
  const knowledgeThreadId = threadId;
584
- const bounds = periodOverride ?? getPeriodBounds(resolution);
618
+ const bounds = periodOverride ?? getPeriodBounds(db, threadId, resolution);
585
619
  // Clamp period start to earliest actual episode to prevent hallucinated dates
586
620
  const earliest = getEarliestEpisodeDate(db, knowledgeThreadId);
587
621
  const start = earliest && earliest > bounds.start ? earliest : bounds.start;
@@ -740,8 +774,12 @@ export async function runNarrativeGeneration(db, threadId, options) {
740
774
  }
741
775
  const resolutions = ["day", "week", "month", "quarter", "half_year"];
742
776
  const knowledgeThreadId = threadId;
777
+ const historyDays = getHistorySpanDays(db, knowledgeThreadId);
743
778
  for (const res of resolutions) {
744
779
  try {
780
+ if (historyDays < MIN_HISTORY_DAYS[res]) {
781
+ continue;
782
+ }
745
783
  if (!options?.force && isCooldownActive(db, knowledgeThreadId, res)) {
746
784
  result.cached.push(res);
747
785
  continue;
@@ -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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"}
@@ -1,4 +1,4 @@
1
1
  import type { Database } from "./schema.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 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 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";
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,aAAa,CAAC;AAI5C,eAAO,MAAM,UAAU,qiMAiKtB,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,aAAa,CAAC;AAI5C,eAAO,MAAM,UAAU,olMAkKtB,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAWzD"}
@@ -143,6 +143,7 @@ CREATE TABLE IF NOT EXISTS thread_registry (
143
143
  created_at TEXT NOT NULL,
144
144
  last_active_at TEXT,
145
145
  session_reset_at TEXT,
146
+ clean_shutdown INTEGER NOT NULL DEFAULT 1,
146
147
  status TEXT NOT NULL DEFAULT 'active' CHECK(status IN ('active','archived','expired','exited')),
147
148
  daily_rotation INTEGER NOT NULL DEFAULT 0,
148
149
  autonomous_mode INTEGER NOT NULL DEFAULT 0,
@@ -1 +1 @@
1
- {"version":3,"file":"schema-ddl.js","sourceRoot":"","sources":["../../../src/data/memory/schema-ddl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiKzB,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,EAAY;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,yEAAyE,CAC1E,CAAC,GAAG,EAAE,CAAC;QACR,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,0CAA0C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"schema-ddl.js","sourceRoot":"","sources":["../../../src/data/memory/schema-ddl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkKzB,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,EAAY;IACjD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,EAAE,CAAC,OAAO,CACvB,yEAAyE,CAC1E,CAAC,GAAG,EAAE,CAAC;QACR,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,OAAO,6BAA6B,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,0CAA0C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema-guard.d.ts","sourceRoot":"","sources":["../../../src/data/memory/schema-guard.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAsNxD"}
1
+ {"version":3,"file":"schema-guard.d.ts","sourceRoot":"","sources":["../../../src/data/memory/schema-guard.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CA4NxD"}
@@ -182,5 +182,10 @@ export function ensureSchemaIntegrity(db) {
182
182
  db.exec("ALTER TABLE thread_registry ADD COLUMN working_directory TEXT");
183
183
  stampVersion(21);
184
184
  }
185
+ if (!threadRegistryCols.includes("clean_shutdown")) {
186
+ log.info("[memory] Self-heal: adding missing clean_shutdown column to thread_registry");
187
+ db.exec("ALTER TABLE thread_registry ADD COLUMN clean_shutdown INTEGER NOT NULL DEFAULT 1");
188
+ stampVersion(27);
189
+ }
185
190
  }
186
191
  //# sourceMappingURL=schema-guard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema-guard.js","sourceRoot":"","sources":["../../../src/data/memory/schema-guard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-guard.js","sourceRoot":"","sources":["../../../src/data/memory/schema-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,qCAAqC,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGpC,MAAM,UAAU,qBAAqB,CAAC,EAAY;IAChD,MAAM,YAAY,GAAG,CAAC,CAAS,EAAE,EAAE;QACjC,IAAI,CAAC;YACH,EAAE,CAAC,OAAO,CACR,2EAA2E,CAC5E,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YAAC,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;QAAC,CAAC;IACpF,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAU,EAAE;QAChD,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CACpB,iEAAiE,CAClE,CAAC,GAAG,CAAC,SAAS,CAAuC,CAAC;QACvD,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,EAAE;SACxB,OAAO,CAAC,mCAAmC,CAAC;SAC5C,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC,CAAC;IAErC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACnE,EAAE,CAAC,IAAI,CACL,+EAA+E,CAChF,CAAC;QACF,EAAE,CAAC,IAAI,CACL,0HAA0H,CAC3H,CAAC;QACF,YAAY,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;QAC7D,EAAE,CAAC,IAAI,CACL,yEAAyE,CAC1E,CAAC;QACF,EAAE,CAAC,IAAI,CACL,2GAA2G,CAC5G,CAAC;QACF,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;QAClF,EAAE,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;QACnE,EAAE,CAAC,IAAI,CACL,+FAA+F,CAChG,CAAC;QACF,YAAY,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC;QACjF,EAAE,CAAC,IAAI,CACL,2EAA2E,CAC5E,CAAC;QACF,EAAE,CAAC,IAAI,CACL,qGAAqG,CACtG,CAAC;QACF,YAAY,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,EAAE;SACnB,OAAO,CAAC,6BAA6B,CAAC;SACtC,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC,CAAC;IAErC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;QAC5E,EAAE,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,qBAAqB,GAAG,EAAE;SAC7B,OAAO,CAAC,6FAA6F,CAAC;SACtG,GAAG,EAAqB,CAAC;IAC5B,IAAI,qBAAqB,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;QAC3E,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;KAeP,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;SAAM,CAAC;QACN,MAAM,qBAAqB,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAC;QACjE,MAAM,8BAA8B,GAClC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC;YAC3C,qBAAqB,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,8BAA8B,EAAE,CAAC;YACpC,GAAG,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;YAC9E,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;OAkBP,CAAC,CAAC;YACH,YAAY,CAAC,EAAE,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,iBAAiB,GAAG,EAAE;SACzB,OAAO,CAAC,yFAAyF,CAAC;SAClG,GAAG,EAAqB,CAAC;IAC5B,IAAI,iBAAiB,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC;QAChC,GAAG,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QACvE,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;KAyBP,CAAC,CAAC;QACH,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,YAAY,CAAC,EAAE,CAAC,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,kBAAkB,GAAG,EAAE;SAC1B,OAAO,CAAC,oCAAoC,CAAC;SAC7C,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAc,CAAC,CAAC;IAErC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;QAC1F,EAAE,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;QACxE,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,MAAM,iBAAiB,GAAG,WAAW,CAAC,iBAAiB,CAAC,CAAC;IACzD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QACtE,qCAAqC,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;QAC9D,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;QACxF,EAAE,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;QAC5F,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;QACzF,EAAE,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAC;QAC7F,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;QAC3F,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QAC5E,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;QACzF,EAAE,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QACvE,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,gFAAgF,CAAC,CAAC;QAC3F,EAAE,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;QACzE,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACnD,GAAG,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAC;QACxF,EAAE,CAAC,IAAI,CAAC,kFAAkF,CAAC,CAAC;QAC5F,YAAY,CAAC,EAAE,CAAC,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -5,12 +5,15 @@ import type { Database } from "./schema.js";
5
5
  /**
6
6
  * Fork memory from a source thread to a new branch thread.
7
7
  * Copies active (non-superseded, non-expired) semantic_notes with new IDs,
8
- * remaps linked_notes references, copies note_embeddings, and copies
9
- * temporal_narratives. Wrapped in a single transaction for atomicity.
8
+ * remaps linked_notes references, copies note_embeddings, copies
9
+ * temporal_narratives, and copies all episodes (with new IDs, marked
10
+ * consolidated so the branch does not re-consolidate them into duplicate
11
+ * notes). Wrapped in a single transaction for atomicity.
10
12
  * Returns the number of items copied.
11
13
  */
12
14
  export declare function forkMemory(db: Database, sourceThreadId: number, targetThreadId: number): {
13
15
  notesCopied: number;
14
16
  narrativesCopied: number;
17
+ episodesCopied: number;
15
18
  };
16
19
  //# sourceMappingURL=synthesis.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../../src/data/memory/synthesis.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,UAAU,CACxB,EAAE,EAAE,QAAQ,EACZ,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,GACrB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,CAsHnD"}
1
+ {"version":3,"file":"synthesis.d.ts","sourceRoot":"","sources":["../../../src/data/memory/synthesis.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG5C;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CACxB,EAAE,EAAE,QAAQ,EACZ,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,GACrB;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CA+J3E"}
@@ -2,11 +2,14 @@
2
2
  * Thread Memory — fork memory from source to branch threads.
3
3
  */
4
4
  import { randomBytes } from "node:crypto";
5
+ import { generateId } from "./utils.js";
5
6
  /**
6
7
  * Fork memory from a source thread to a new branch thread.
7
8
  * Copies active (non-superseded, non-expired) semantic_notes with new IDs,
8
- * remaps linked_notes references, copies note_embeddings, and copies
9
- * temporal_narratives. Wrapped in a single transaction for atomicity.
9
+ * remaps linked_notes references, copies note_embeddings, copies
10
+ * temporal_narratives, and copies all episodes (with new IDs, marked
11
+ * consolidated so the branch does not re-consolidate them into duplicate
12
+ * notes). Wrapped in a single transaction for atomicity.
10
13
  * Returns the number of items copied.
11
14
  */
12
15
  export function forkMemory(db, sourceThreadId, targetThreadId) {
@@ -76,9 +79,21 @@ export function forkMemory(db, sourceThreadId, targetThreadId) {
76
79
  SELECT ?, resolution, period_start, period_end, narrative,
77
80
  source_episode_count, source_note_count, model, ?
78
81
  FROM temporal_narratives WHERE thread_id = ?`).run(targetThreadId, now, sourceThreadId);
82
+ // 7. Copy episodes with new IDs, preserving originals; mark consolidated
83
+ // so the branch does not re-consolidate inherited episodes into
84
+ // duplicate notes (notes are already forked above).
85
+ const sourceEpisodes = db.prepare(`SELECT episode_id, session_id, timestamp, type, modality, content, topic_tags, importance, accessed_count, created_at
86
+ FROM episodes WHERE thread_id = ?`).all(sourceThreadId);
87
+ const insertEpisode = db.prepare(`INSERT INTO episodes
88
+ (episode_id, session_id, thread_id, timestamp, type, modality, content, topic_tags, importance, consolidated, accessed_count, created_at)
89
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, 1, ?, ?)`);
90
+ for (const ep of sourceEpisodes) {
91
+ insertEpisode.run(generateId("ep"), ep.session_id, targetThreadId, ep.timestamp, ep.type, ep.modality, ep.content, ep.topic_tags, ep.importance, ep.accessed_count, ep.created_at);
92
+ }
79
93
  return {
80
94
  notesCopied: sourceNotes.length,
81
95
  narrativesCopied: narratives.changes,
96
+ episodesCopied: sourceEpisodes.length,
82
97
  };
83
98
  })();
84
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../../../src/data/memory/synthesis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"synthesis.js","sourceRoot":"","sources":["../../../src/data/memory/synthesis.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,7 @@ export interface ThreadRegistryEntry {
25
25
  createdAt: string;
26
26
  lastActiveAt: string | null;
27
27
  sessionResetAt: string | null;
28
+ cleanShutdown: boolean;
28
29
  status: 'active' | 'archived' | 'expired' | 'exited';
29
30
  archivedAt: string | null;
30
31
  summary: string | null;
@@ -42,7 +43,7 @@ type RegisterThreadEntry = {
42
43
  dailyRotation?: boolean;
43
44
  workingDirectory?: string;
44
45
  };
45
- type UpdateThreadPatch = Partial<Pick<ThreadRegistryEntry, "name" | "status" | "lastActiveAt" | "keepAlive" | "dailyRotation" | "autonomousMode" | "client" | "maxRetries" | "cooldownMs" | "badge" | "telegramTopicId" | "identityPrompt" | "workingDirectory">>;
46
+ type UpdateThreadPatch = Partial<Pick<ThreadRegistryEntry, "name" | "status" | "lastActiveAt" | "keepAlive" | "dailyRotation" | "autonomousMode" | "client" | "maxRetries" | "cooldownMs" | "badge" | "telegramTopicId" | "identityPrompt" | "workingDirectory" | "cleanShutdown">>;
46
47
  export declare class ThreadRepository implements IThreadRepository {
47
48
  registerThread(db: Database, entry: RegisterThreadEntry): ThreadRegistryEntry;
48
49
  updateThread(db: Database, threadId: number, updates: UpdateThreadPatch): boolean;
@@ -79,6 +80,18 @@ export declare function purgeOldArchivedThreads(db: Database, maxAgeMs?: number)
79
80
  * Sets session_reset_at = now, used by bootstrap to filter the message buffer.
80
81
  */
81
82
  export declare function resetDailySession(db: Database, threadId: number): boolean;
83
+ /**
84
+ * Mark a thread's session as running (clean_shutdown = 0). Called at session
85
+ * start; if the process dies before a graceful exit flips it back to 1, the
86
+ * next resume sees 0 and knows the previous session was interrupted.
87
+ */
88
+ export declare function markSessionRunning(db: Database, threadId: number): boolean;
89
+ /**
90
+ * Mark every active thread as cleanly shut down. Used on a graceful process
91
+ * exit (SIGTERM/SIGINT, maintenance restart) so a planned server stop is not
92
+ * mistaken for a crash by the threads it takes down with it.
93
+ */
94
+ export declare function markAllActiveThreadsCleanShutdown(db: Database): number;
82
95
  /**
83
96
  * Resolve the Telegram topic ID for a logical thread.
84
97
  * Returns telegram_topic_id if set, otherwise falls back to thread_id itself.
@@ -1 +1 @@
1
- {"version":3,"file":"thread-registry.d.ts","sourceRoot":"","sources":["../../../src/data/memory/thread-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread-registry.d.ts","sourceRoot":"","sources":["../../../src/data/memory/thread-registry.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ function rowToEntry(row) {
47
47
  createdAt: row.created_at,
48
48
  lastActiveAt: row.last_active_at ?? null,
49
49
  sessionResetAt: row.session_reset_at ?? null,
50
+ cleanShutdown: row.clean_shutdown !== 0,
50
51
  status: row.status,
51
52
  archivedAt: row.archived_at ?? null,
52
53
  summary: row.summary ?? null,
@@ -175,6 +176,10 @@ export function updateThread(db, threadId, updates) {
175
176
  setClauses.push('working_directory = ?');
176
177
  params.push(updates.workingDirectory);
177
178
  }
179
+ if (updates.cleanShutdown !== undefined) {
180
+ setClauses.push('clean_shutdown = ?');
181
+ params.push(updates.cleanShutdown ? 1 : 0);
182
+ }
178
183
  if (setClauses.length === 0)
179
184
  return false;
180
185
  params.push(threadId);
@@ -182,7 +187,7 @@ export function updateThread(db, threadId, updates) {
182
187
  return result.changes > 0;
183
188
  }
184
189
  export function archiveThread(db, threadId) {
185
- const result = db.prepare(`UPDATE thread_registry SET status = 'archived', keep_alive = 0, archived_at = ? WHERE thread_id = ?`).run(nowISO(), threadId);
190
+ const result = db.prepare(`UPDATE thread_registry SET status = 'archived', keep_alive = 0, clean_shutdown = 1, archived_at = ? WHERE thread_id = ?`).run(nowISO(), threadId);
186
191
  return result.changes > 0;
187
192
  }
188
193
  export function unarchiveThread(db, threadId) {
@@ -238,6 +243,24 @@ export function resetDailySession(db, threadId) {
238
243
  const result = db.prepare(`UPDATE thread_registry SET session_reset_at = ? WHERE thread_id = ?`).run(nowISO(), threadId);
239
244
  return result.changes > 0;
240
245
  }
246
+ /**
247
+ * Mark a thread's session as running (clean_shutdown = 0). Called at session
248
+ * start; if the process dies before a graceful exit flips it back to 1, the
249
+ * next resume sees 0 and knows the previous session was interrupted.
250
+ */
251
+ export function markSessionRunning(db, threadId) {
252
+ const result = db.prepare(`UPDATE thread_registry SET clean_shutdown = 0 WHERE thread_id = ?`).run(threadId);
253
+ return result.changes > 0;
254
+ }
255
+ /**
256
+ * Mark every active thread as cleanly shut down. Used on a graceful process
257
+ * exit (SIGTERM/SIGINT, maintenance restart) so a planned server stop is not
258
+ * mistaken for a crash by the threads it takes down with it.
259
+ */
260
+ export function markAllActiveThreadsCleanShutdown(db) {
261
+ const result = db.prepare(`UPDATE thread_registry SET clean_shutdown = 1 WHERE status = 'active'`).run();
262
+ return result.changes;
263
+ }
241
264
  /**
242
265
  * Resolve the Telegram topic ID for a logical thread.
243
266
  * Returns telegram_topic_id if set, otherwise falls back to thread_id itself.