stellar-memory 0.8.3 → 1.0.0

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 (144) hide show
  1. package/dist/api/routes/memories.js +5 -4
  2. package/dist/api/routes/memories.js.map +1 -1
  3. package/dist/api/websocket.d.ts +0 -6
  4. package/dist/api/websocket.js +1 -1
  5. package/dist/api/websocket.js.map +1 -1
  6. package/dist/engine/analytics.js +4 -33
  7. package/dist/engine/analytics.js.map +1 -1
  8. package/dist/engine/conflict.js +2 -4
  9. package/dist/engine/conflict.js.map +1 -1
  10. package/dist/engine/consolidation.js +3 -21
  11. package/dist/engine/consolidation.js.map +1 -1
  12. package/dist/engine/constellation.js +6 -14
  13. package/dist/engine/constellation.js.map +1 -1
  14. package/dist/engine/corona.js +3 -1
  15. package/dist/engine/corona.js.map +1 -1
  16. package/dist/engine/multiproject.js +6 -73
  17. package/dist/engine/multiproject.js.map +1 -1
  18. package/dist/engine/observation.d.ts +1 -42
  19. package/dist/engine/observation.js +4 -23
  20. package/dist/engine/observation.js.map +1 -1
  21. package/dist/engine/orbit.js +50 -11
  22. package/dist/engine/orbit.js.map +1 -1
  23. package/dist/engine/planet.d.ts +3 -0
  24. package/dist/engine/planet.js +16 -11
  25. package/dist/engine/planet.js.map +1 -1
  26. package/dist/engine/procedural.d.ts +0 -13
  27. package/dist/engine/procedural.js +2 -47
  28. package/dist/engine/procedural.js.map +1 -1
  29. package/dist/engine/services/commit-service.d.ts +29 -0
  30. package/dist/engine/services/commit-service.js +35 -0
  31. package/dist/engine/services/commit-service.js.map +1 -0
  32. package/dist/engine/services/index.d.ts +4 -0
  33. package/dist/engine/services/index.js +4 -0
  34. package/dist/engine/services/index.js.map +1 -0
  35. package/dist/engine/services/memory-service.d.ts +48 -0
  36. package/dist/engine/services/memory-service.js +85 -0
  37. package/dist/engine/services/memory-service.js.map +1 -0
  38. package/dist/engine/services/recall-service.d.ts +31 -0
  39. package/dist/engine/services/recall-service.js +35 -0
  40. package/dist/engine/services/recall-service.js.map +1 -0
  41. package/dist/engine/session-policy.d.ts +15 -0
  42. package/dist/engine/session-policy.js +103 -0
  43. package/dist/engine/session-policy.js.map +1 -0
  44. package/dist/engine/sun.d.ts +9 -5
  45. package/dist/engine/sun.js +128 -23
  46. package/dist/engine/sun.js.map +1 -1
  47. package/dist/engine/temporal.js +8 -67
  48. package/dist/engine/temporal.js.map +1 -1
  49. package/dist/engine/types.d.ts +0 -15
  50. package/dist/engine/types.js +0 -7
  51. package/dist/engine/types.js.map +1 -1
  52. package/dist/index.js +2 -2
  53. package/dist/index.js.map +1 -1
  54. package/dist/mcp/server.js +88 -123
  55. package/dist/mcp/server.js.map +1 -1
  56. package/dist/mcp/tools/analytics-handlers.d.ts +20 -0
  57. package/dist/mcp/tools/analytics-handlers.js +292 -0
  58. package/dist/mcp/tools/analytics-handlers.js.map +1 -0
  59. package/dist/mcp/tools/graph-handlers.d.ts +20 -0
  60. package/dist/mcp/tools/graph-handlers.js +126 -0
  61. package/dist/mcp/tools/graph-handlers.js.map +1 -0
  62. package/dist/mcp/tools/memory-handlers.d.ts +27 -0
  63. package/dist/mcp/tools/memory-handlers.js +177 -0
  64. package/dist/mcp/tools/memory-handlers.js.map +1 -0
  65. package/dist/mcp/tools/memory-tools.d.ts +19 -117
  66. package/dist/mcp/tools/memory-tools.js +19 -1032
  67. package/dist/mcp/tools/memory-tools.js.map +1 -1
  68. package/dist/mcp/tools/observation-handlers.d.ts +15 -0
  69. package/dist/mcp/tools/observation-handlers.js +74 -0
  70. package/dist/mcp/tools/observation-handlers.js.map +1 -0
  71. package/dist/mcp/tools/shared.d.ts +36 -0
  72. package/dist/mcp/tools/shared.js +71 -0
  73. package/dist/mcp/tools/shared.js.map +1 -0
  74. package/dist/mcp/tools/sun-handler.d.ts +12 -0
  75. package/dist/mcp/tools/sun-handler.js +35 -0
  76. package/dist/mcp/tools/sun-handler.js.map +1 -0
  77. package/dist/mcp/tools/system-handlers.d.ts +27 -0
  78. package/dist/mcp/tools/system-handlers.js +259 -0
  79. package/dist/mcp/tools/system-handlers.js.map +1 -0
  80. package/dist/mcp/tools/temporal-handlers.d.ts +15 -0
  81. package/dist/mcp/tools/temporal-handlers.js +82 -0
  82. package/dist/mcp/tools/temporal-handlers.js.map +1 -0
  83. package/dist/scanner/local/filesystem.d.ts +0 -2
  84. package/dist/scanner/local/filesystem.js +1 -5
  85. package/dist/scanner/local/filesystem.js.map +1 -1
  86. package/dist/scanner/local/git.d.ts +0 -5
  87. package/dist/scanner/local/git.js +1 -1
  88. package/dist/scanner/local/git.js.map +1 -1
  89. package/dist/scanner/metadata-scanner.d.ts +3 -14
  90. package/dist/scanner/metadata-scanner.js +10 -10
  91. package/dist/scanner/metadata-scanner.js.map +1 -1
  92. package/dist/service/scheduler.js +32 -13
  93. package/dist/service/scheduler.js.map +1 -1
  94. package/dist/storage/database.js +81 -2
  95. package/dist/storage/database.js.map +1 -1
  96. package/dist/storage/queries/analytics-queries.d.ts +59 -0
  97. package/dist/storage/queries/analytics-queries.js +265 -0
  98. package/dist/storage/queries/analytics-queries.js.map +1 -0
  99. package/dist/storage/queries/conflict-queries.d.ts +16 -0
  100. package/dist/storage/queries/conflict-queries.js +56 -0
  101. package/dist/storage/queries/conflict-queries.js.map +1 -0
  102. package/dist/storage/queries/constellation-queries.d.ts +18 -0
  103. package/dist/storage/queries/constellation-queries.js +101 -0
  104. package/dist/storage/queries/constellation-queries.js.map +1 -0
  105. package/dist/storage/queries/datasource-queries.d.ts +9 -0
  106. package/dist/storage/queries/datasource-queries.js +53 -0
  107. package/dist/storage/queries/datasource-queries.js.map +1 -0
  108. package/dist/storage/queries/memory-queries.d.ts +53 -0
  109. package/dist/storage/queries/memory-queries.js +415 -0
  110. package/dist/storage/queries/memory-queries.js.map +1 -0
  111. package/dist/storage/queries/observation-queries.d.ts +7 -0
  112. package/dist/storage/queries/observation-queries.js +23 -0
  113. package/dist/storage/queries/observation-queries.js.map +1 -0
  114. package/dist/storage/queries/orbit-queries.d.ts +7 -0
  115. package/dist/storage/queries/orbit-queries.js +23 -0
  116. package/dist/storage/queries/orbit-queries.js.map +1 -0
  117. package/dist/storage/queries/shared.d.ts +106 -0
  118. package/dist/storage/queries/shared.js +120 -0
  119. package/dist/storage/queries/shared.js.map +1 -0
  120. package/dist/storage/queries/sun-queries.d.ts +9 -0
  121. package/dist/storage/queries/sun-queries.js +43 -0
  122. package/dist/storage/queries/sun-queries.js.map +1 -0
  123. package/dist/storage/queries/temporal-queries.d.ts +32 -0
  124. package/dist/storage/queries/temporal-queries.js +112 -0
  125. package/dist/storage/queries/temporal-queries.js.map +1 -0
  126. package/dist/storage/queries.d.ts +15 -84
  127. package/dist/storage/queries.js +15 -896
  128. package/dist/storage/queries.js.map +1 -1
  129. package/dist/storage/vec.d.ts +5 -1
  130. package/dist/storage/vec.js +48 -24
  131. package/dist/storage/vec.js.map +1 -1
  132. package/dist/utils/config.d.ts +0 -1
  133. package/dist/utils/config.js +1 -1
  134. package/dist/utils/config.js.map +1 -1
  135. package/dist/utils/logger.d.ts +0 -2
  136. package/dist/utils/logger.js +0 -2
  137. package/dist/utils/logger.js.map +1 -1
  138. package/dist/utils/stopwords.d.ts +6 -0
  139. package/dist/utils/stopwords.js +22 -0
  140. package/dist/utils/stopwords.js.map +1 -0
  141. package/dist/utils/tokenizer.d.ts +2 -1
  142. package/dist/utils/tokenizer.js +7 -5
  143. package/dist/utils/tokenizer.js.map +1 -1
  144. package/package.json +78 -78
@@ -11,12 +11,14 @@
11
11
  * - getSunContent: produce the formatted MCP resource text within token budget.
12
12
  * - formatSunContent: pure formatter used by getSunContent and tests.
13
13
  */
14
- import { getSunState, upsertSunState, getRecentMemories, } from '../storage/queries.js';
14
+ import { getSunState, upsertSunState, getRecentMemories, getConflicts, } from '../storage/queries.js';
15
+ import { getDatabase } from '../storage/database.js';
15
16
  import { estimateTokens } from '../utils/tokenizer.js';
16
17
  import { getConfig } from '../utils/config.js';
17
18
  import { filterActiveMemories } from './validity.js';
18
19
  import { createMemory } from './planet.js';
19
20
  import { corona } from './corona.js';
21
+ import { getSessionCommitDraft } from './session-policy.js';
20
22
  // ---------------------------------------------------------------------------
21
23
  // Public API
22
24
  // ---------------------------------------------------------------------------
@@ -85,6 +87,93 @@ export function commitToSun(project, data) {
85
87
  upsertSunState(updated);
86
88
  }
87
89
  // ---------------------------------------------------------------------------
90
+ // Proactive alerts
91
+ // ---------------------------------------------------------------------------
92
+ /**
93
+ * Build an array of single-line alert strings (max 100 chars each) for the
94
+ * ALERTS section of the sun context. Priorities:
95
+ * 1. Unresolved conflicts (high urgency)
96
+ * 2. Stale task memories (> 7 days old, never accessed)
97
+ * 3. Core/near decision memories related to current work
98
+ *
99
+ * Returns at most MAX_ALERTS entries.
100
+ */
101
+ function generateProactiveAlerts(project, coreMemories, nearMemories, sun) {
102
+ const MAX_ALERTS = 5;
103
+ const MAX_ALERT_LEN = 100;
104
+ const alerts = [];
105
+ const trunc = (s) => s.length > MAX_ALERT_LEN ? s.slice(0, MAX_ALERT_LEN - 3).trimEnd() + '...' : s;
106
+ // 1. Unresolved conflicts
107
+ try {
108
+ const conflicts = getConflicts(project, 'open');
109
+ for (const c of conflicts.slice(0, 2)) {
110
+ const desc = c.description.slice(0, 60);
111
+ alerts.push(trunc(`! CONFLICT: ${desc}`));
112
+ if (alerts.length >= MAX_ALERTS)
113
+ return alerts;
114
+ }
115
+ }
116
+ catch {
117
+ // Non-fatal: conflicts table may not exist in older DBs.
118
+ }
119
+ // 2. Stale tasks (> 7 days old, access_count <= 1)
120
+ try {
121
+ const db = getDatabase();
122
+ const cutoff = new Date(Date.now() - 7 * 24 * 60 * 60 * 1000).toISOString();
123
+ const rows = db.prepare(`
124
+ SELECT id, summary, created_at, access_count
125
+ FROM memories
126
+ WHERE project = ?
127
+ AND type = 'task'
128
+ AND access_count <= 1
129
+ AND created_at < ?
130
+ AND deleted_at IS NULL
131
+ ORDER BY created_at ASC
132
+ LIMIT 3
133
+ `).all(project, cutoff);
134
+ for (const row of rows) {
135
+ const ageMs = Date.now() - new Date(/[Zz]$|[+-]\d{2}:\d{2}$/.test(row.created_at)
136
+ ? row.created_at
137
+ : row.created_at + 'Z').getTime();
138
+ const ageDays = Math.floor(ageMs / (1000 * 60 * 60 * 24));
139
+ const accessed = row.access_count === 0 ? 'never accessed' : 'rarely accessed';
140
+ const summary = row.summary.length > 40
141
+ ? row.summary.slice(0, 40).trimEnd() + '...'
142
+ : row.summary;
143
+ alerts.push(trunc(`STALE TASK: "${summary}" (${ageDays}d ago, ${accessed})`));
144
+ if (alerts.length >= MAX_ALERTS)
145
+ return alerts;
146
+ }
147
+ }
148
+ catch {
149
+ // Non-fatal: skip stale task alerts if DB query fails.
150
+ }
151
+ // 3. Recent decisions in core/near that may relate to current work
152
+ if (sun.current_work && sun.current_work.trim().length > 0) {
153
+ const currentWorkWords = new Set(sun.current_work.toLowerCase().split(/\s+/).filter(w => w.length > 3));
154
+ const decisionCandidates = [...coreMemories, ...nearMemories]
155
+ .filter(m => m.type === 'decision');
156
+ for (const m of decisionCandidates) {
157
+ if (alerts.length >= MAX_ALERTS)
158
+ break;
159
+ const summaryWords = m.summary.toLowerCase().split(/\s+/);
160
+ const hasOverlap = summaryWords.some(w => w.length > 3 && currentWorkWords.has(w));
161
+ if (!hasOverlap)
162
+ continue;
163
+ const ageMs = Date.now() - new Date(/[Zz]$|[+-]\d{2}:\d{2}$/.test(m.created_at)
164
+ ? m.created_at
165
+ : m.created_at + 'Z').getTime();
166
+ const ageDays = Math.floor(ageMs / (1000 * 60 * 60 * 24));
167
+ const ageStr = ageDays === 0 ? 'today' : `${ageDays}d ago`;
168
+ const summary = m.summary.length > 45
169
+ ? m.summary.slice(0, 45).trimEnd() + '...'
170
+ : m.summary;
171
+ alerts.push(trunc(`DECISION: "${summary}" (${ageStr}) -- may relate to current work`));
172
+ }
173
+ }
174
+ return alerts;
175
+ }
176
+ // ---------------------------------------------------------------------------
88
177
  // Formatter
89
178
  // ---------------------------------------------------------------------------
90
179
  /**
@@ -94,12 +183,16 @@ export function commitToSun(project, data) {
94
183
  * remaining token budget before being appended (progressive truncation).
95
184
  * This ensures the most critical context always fits regardless of budget.
96
185
  *
97
- * New priority order (Corona-aware):
186
+ * Priority order (Corona-aware):
98
187
  * 1. Header
99
- * 2. CORE IDENTITY ??core zone memories (instant recall, ~40% budget)
100
- * 3. WORKING ON (current_work, ~10%)
101
- * 4. ACTIVE CONTEXT ??near zone memories (~25%)
102
- * 5. RECENT DECISIONS / NEXT STEPS / ACTIVE ISSUES (~25%)
188
+ * 2. ALERTS -- proactive conflict/stale-task/decision notices (high priority)
189
+ * 3. CORE -- core zone memories (instant recall, ~40% budget)
190
+ * 4. WORKING ON (current_work, ~10%)
191
+ * 5. NEAR -- near zone memories (~25%)
192
+ * 6. RECENT DECISIONS / NEXT STEPS / ACTIVE ISSUES (~25%)
193
+ *
194
+ * IMPORTANT: Callers must NOT append additional content to the result.
195
+ * All sections (alerts, core, near, working state) are budget-managed here.
103
196
  */
104
197
  export function formatSunContent(sun, coreMemories, nearMemories) {
105
198
  const config = getConfig();
@@ -125,7 +218,14 @@ export function formatSunContent(sun, coreMemories, nearMemories) {
125
218
  }
126
219
  }
127
220
  sections.push(header);
128
- // 2. CORE IDENTITY ??core zone memories (distance < 1.0 AU).
221
+ // 2. ALERTS -- proactive notices (conflicts, stale tasks, related decisions).
222
+ // Generated before CORE so high-priority alerts appear near the top of output
223
+ // and are subject to the same progressive budget truncation as other sections.
224
+ const alertLines = generateProactiveAlerts(sun.project, activeCoreMemories, activeNearMemories, sun);
225
+ if (alertLines.length > 0) {
226
+ sections.push(`\nALERTS:\n${alertLines.map(a => ` ${a}`).join('\n')}`);
227
+ }
228
+ // 3. CORE IDENTITY -- core zone memories (distance < 1.0 AU).
129
229
  // Compressed format: [TYPE] summary (no AU distance ??saves tokens)
130
230
  if (activeCoreMemories.length > 0) {
131
231
  const displayed = activeCoreMemories.slice(0, MAX_CORE_DISPLAY);
@@ -137,11 +237,11 @@ export function formatSunContent(sun, coreMemories, nearMemories) {
137
237
  : '';
138
238
  sections.push(`\nCORE (${activeCoreMemories.length}):\n${lines}${overflow}`);
139
239
  }
140
- // 3. Current work.
240
+ // 4. Current work.
141
241
  if (sun.current_work && sun.current_work.trim().length > 0) {
142
242
  sections.push(`\nWORKING ON:\n${sun.current_work.trim()}`);
143
243
  }
144
- // 4. ACTIVE CONTEXT ??near zone memories (1.0-5.0 AU).
244
+ // 5. NEAR zone memories (1.0-5.0 AU).
145
245
  if (activeNearMemories.length > 0) {
146
246
  const displayed = activeNearMemories.slice(0, MAX_NEAR_DISPLAY);
147
247
  const lines = displayed
@@ -152,19 +252,19 @@ export function formatSunContent(sun, coreMemories, nearMemories) {
152
252
  : '';
153
253
  sections.push(`\nNEAR (${activeNearMemories.length}):\n${lines}${overflow}`);
154
254
  }
155
- // 5. Recent decisions (max 3).
255
+ // 6. Recent decisions (max 3).
156
256
  const decisions = sun.recent_decisions.slice(0, 3);
157
257
  if (decisions.length > 0) {
158
258
  const lines = decisions.map((d, i) => ` ${i + 1}. ${d}`).join('\n');
159
259
  sections.push(`\nRECENT DECISIONS:\n${lines}`);
160
260
  }
161
- // 6. Next steps (max 3).
261
+ // 7. Next steps (max 3).
162
262
  const steps = sun.next_steps.slice(0, 3);
163
263
  if (steps.length > 0) {
164
264
  const lines = steps.map((s, i) => ` ${i + 1}. ${s}`).join('\n');
165
265
  sections.push(`\nNEXT STEPS:\n${lines}`);
166
266
  }
167
- // 7. Active issues (max 2).
267
+ // 8. Active issues (max 2).
168
268
  const errors = sun.active_errors.slice(0, 2);
169
269
  if (errors.length > 0) {
170
270
  const lines = errors.map((e, i) => ` ${i + 1}. ${e}`).join('\n');
@@ -207,6 +307,7 @@ export function formatSunContent(sun, coreMemories, nearMemories) {
207
307
  export function autoCommitOnClose(project, mode = 'shutdown') {
208
308
  try {
209
309
  const existing = getSunState(project);
310
+ const sessionDraft = getSessionCommitDraft(project, existing);
210
311
  // Protect recent manual commits from being overwritten by auto-generated content.
211
312
  // Shutdown: skip if commit < 30 min ago. Periodic: skip if commit < 10 min ago.
212
313
  if (existing?.last_commit_at) {
@@ -219,7 +320,7 @@ export function autoCommitOnClose(project, mode = 'shutdown') {
219
320
  return;
220
321
  }
221
322
  const recent = getRecentMemories(project, 3);
222
- if (recent.length === 0)
323
+ if (recent.length === 0 && !sessionDraft)
223
324
  return;
224
325
  // Group by type
225
326
  const byType = new Map();
@@ -231,19 +332,23 @@ export function autoCommitOnClose(project, mode = 'shutdown') {
231
332
  // Always merge with existing sun state ??never overwrite.
232
333
  // Keep existing current_work/decisions and supplement with new memories.
233
334
  const current_work = existing?.current_work
234
- ? existing.current_work
235
- : byType.get('context')?.slice(0, 3).join('; ')
236
- ?? byType.get('task')?.slice(0, 3).join('; ')
237
- ?? `${recent.length} memories from last session`;
335
+ || sessionDraft?.current_work
336
+ || byType.get('context')?.slice(0, 3).join('; ')
337
+ || byType.get('task')?.slice(0, 3).join('; ')
338
+ || `${recent.length} memories from last session`;
238
339
  const newDecisions = byType.get('decision')?.slice(0, 5) ?? [];
340
+ const sessionDecisions = sessionDraft?.decisions ?? [];
239
341
  const decisions = existing?.recent_decisions?.length
240
- ? [...existing.recent_decisions, ...newDecisions.filter(d => !existing.recent_decisions.includes(d))].slice(0, 10)
241
- : newDecisions;
342
+ ? [...existing.recent_decisions, ...sessionDecisions.filter(d => !existing.recent_decisions.includes(d)), ...newDecisions.filter(d => !existing.recent_decisions.includes(d) && !sessionDecisions.includes(d))].slice(0, 10)
343
+ : [...sessionDecisions, ...newDecisions.filter(d => !sessionDecisions.includes(d))].slice(0, 10);
242
344
  const newSteps = byType.get('task')?.slice(0, 5) ?? [];
345
+ const sessionSteps = sessionDraft?.next_steps ?? [];
243
346
  const next_steps = existing?.next_steps?.length
244
- ? [...existing.next_steps, ...newSteps.filter(s => !existing.next_steps.includes(s))].slice(0, 10)
245
- : newSteps;
246
- const errors = byType.get('error')?.slice(0, 3) ?? [];
347
+ ? [...existing.next_steps, ...sessionSteps.filter(s => !existing.next_steps.includes(s)), ...newSteps.filter(s => !existing.next_steps.includes(s) && !sessionSteps.includes(s))].slice(0, 10)
348
+ : [...sessionSteps, ...newSteps.filter(s => !sessionSteps.includes(s))].slice(0, 10);
349
+ const recentErrors = byType.get('error')?.slice(0, 3) ?? [];
350
+ const sessionErrors = sessionDraft?.errors ?? [];
351
+ const errors = [...sessionErrors, ...recentErrors.filter(e => !sessionErrors.includes(e))].slice(0, 5);
247
352
  const now = new Date().toISOString();
248
353
  const updated = {
249
354
  project,
@@ -252,7 +357,7 @@ export function autoCommitOnClose(project, mode = 'shutdown') {
252
357
  recent_decisions: decisions,
253
358
  next_steps,
254
359
  active_errors: errors.length > 0 ? errors : (existing?.active_errors ?? []),
255
- project_context: existing?.project_context ?? '',
360
+ project_context: existing?.project_context || sessionDraft?.context || '',
256
361
  token_count: 0,
257
362
  last_commit_at: now,
258
363
  updated_at: now,
@@ -1 +1 @@
1
- {"version":3,"file":"sun.js","sourceRoot":"","sources":["../../src/engine/sun.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sun.js","sourceRoot":"","sources":["../../src/engine/sun.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,7 @@
7
7
  *
8
8
  * All functions are pure (no classes), following the project style.
9
9
  */
10
- import { getDatabase } from '../storage/database.js';
11
- import { getMemoriesAtTime, supersedMemory as queriesSupersedMemory, getSupersessionChain, } from '../storage/queries.js';
10
+ import { getMemoriesAtTime, supersedMemory as queriesSupersedMemory, getSupersessionChain, setTemporalBoundsQuery, findSupersessionChainRoot, getTemporalStats, } from '../storage/queries.js';
12
11
  import { createLogger } from '../utils/logger.js';
13
12
  const log = createLogger('temporal');
14
13
  // ---------------------------------------------------------------------------
@@ -21,20 +20,7 @@ const log = createLogger('temporal');
21
20
  * - validUntil: ISO date string. Setting this marks the fact as no longer current.
22
21
  */
23
22
  export function setTemporalBounds(memoryId, validFrom, validUntil) {
24
- const db = getDatabase();
25
- const now = new Date().toISOString();
26
- const sets = ['updated_at = ?'];
27
- const values = [now];
28
- if (validFrom !== undefined) {
29
- sets.push('valid_from = ?');
30
- values.push(validFrom);
31
- }
32
- if (validUntil !== undefined) {
33
- sets.push('valid_until = ?');
34
- values.push(validUntil);
35
- }
36
- values.push(memoryId);
37
- db.prepare(`UPDATE memories SET ${sets.join(', ')} WHERE id = ?`).run(...values);
23
+ setTemporalBoundsQuery(memoryId, validFrom, validUntil);
38
24
  log.debug('Temporal bounds set', { memoryId, validFrom, validUntil });
39
25
  }
40
26
  // ---------------------------------------------------------------------------
@@ -76,33 +62,11 @@ export function getContextAtTime(project, timestamp) {
76
62
  * Returns the full lineage in chronological order (oldest first).
77
63
  */
78
64
  export function getEvolutionChain(memoryId) {
79
- // First find the root (walk backward via content search is not feasible —
80
- // we look for any memory whose superseded_by points to our target, recursively).
81
- const root = findChainRoot(memoryId);
82
- // Now walk forward from root using getSupersessionChain (follows superseded_by).
65
+ // Walk backward to find the root, then forward using getSupersessionChain.
66
+ const root = findSupersessionChainRoot(memoryId);
83
67
  const chain = getSupersessionChain(root);
84
- // Sort chronologically by created_at
85
68
  return chain.sort((a, b) => a.created_at.localeCompare(b.created_at));
86
69
  }
87
- /**
88
- * Walk backward to find the oldest ancestor in the supersession chain.
89
- * A memory is a root if no other non-deleted memory has superseded_by = its id.
90
- */
91
- function findChainRoot(memoryId) {
92
- const db = getDatabase();
93
- let currentId = memoryId;
94
- for (let depth = 0; depth < 50; depth++) {
95
- const row = db.prepare(`
96
- SELECT id FROM memories
97
- WHERE superseded_by = ? AND deleted_at IS NULL
98
- LIMIT 1
99
- `).get(currentId);
100
- if (!row)
101
- break;
102
- currentId = row.id;
103
- }
104
- return currentId;
105
- }
106
70
  // ---------------------------------------------------------------------------
107
71
  // Auto-detect supersession
108
72
  // ---------------------------------------------------------------------------
@@ -187,36 +151,13 @@ export function detectSupersession(newMemory, existingMemories) {
187
151
  * - Recent supersession events (last 5)
188
152
  */
189
153
  export function getTemporalSummary(project) {
190
- const db = getDatabase();
191
- const now = new Date().toISOString();
192
- // Active: not deleted, valid_from ≤ now, valid_until IS NULL or > now
193
- const activeRow = db.prepare(`
194
- SELECT COUNT(*) as count FROM memories
195
- WHERE project = ?
196
- AND deleted_at IS NULL
197
- AND (valid_from IS NULL OR valid_from <= ?)
198
- AND (valid_until IS NULL OR valid_until > ?)
199
- `).get(project, now, now);
200
- // Superseded: has superseded_by set
201
- const supersededRow = db.prepare(`
202
- SELECT COUNT(*) as count FROM memories
203
- WHERE project = ? AND deleted_at IS NULL AND superseded_by IS NOT NULL
204
- `).get(project);
205
- // Recent supersessions
206
- const recentRows = db.prepare(`
207
- SELECT id, summary, superseded_by, updated_at FROM memories
208
- WHERE project = ?
209
- AND deleted_at IS NULL
210
- AND superseded_by IS NOT NULL
211
- ORDER BY updated_at DESC
212
- LIMIT 5
213
- `).all(project);
154
+ const { activeCount, supersededCount, recentSupersessions } = getTemporalStats(project);
214
155
  const lines = [
215
- `Temporal: ${activeRow.count} active, ${supersededRow.count} superseded`,
156
+ `Temporal: ${activeCount} active, ${supersededCount} superseded`,
216
157
  ];
217
- if (recentRows.length > 0) {
158
+ if (recentSupersessions.length > 0) {
218
159
  lines.push('Recent supersessions:');
219
- for (const row of recentRows) {
160
+ for (const row of recentSupersessions) {
220
161
  const date = row.updated_at.slice(0, 10);
221
162
  lines.push(` [${date}] "${row.summary}" → superseded by ${row.superseded_by.slice(0, 8)}`);
222
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../../src/engine/temporal.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAEL,iBAAiB,EACjB,cAAc,IAAI,qBAAqB,EACvC,oBAAoB,GAErB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,GAAG,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAErC,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAgB,EAChB,SAAkB,EAClB,UAAmB;IAEnB,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,MAAM,IAAI,GAAa,CAAC,gBAAgB,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAsB,CAAC,GAAG,CAAC,CAAC;IAExC,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC7B,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,EAAE,CAAC,OAAO,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;IAEjF,GAAG,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,WAAmB,EAAE,WAAmB;IACtE,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAChD,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,SAAiB;IACjE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;AAC9D,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,0EAA0E;IAC1E,iFAAiF;IACjF,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAErC,iFAAiF;IACjF,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAEzC,qCAAqC;IACrC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CAAC,QAAgB;IACrC,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,IAAI,SAAS,GAAG,QAAQ,CAAC;IAEzB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC;;;;KAItB,CAAC,CAAC,GAAG,CAAC,SAAS,CAA+B,CAAC;QAEhD,IAAI,CAAC,GAAG;YAAE,MAAM;QAChB,SAAS,GAAG,GAAG,CAAC,EAAE,CAAC;IACrB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,8EAA8E;AAC9E,2BAA2B;AAC3B,8EAA8E;AAE9E;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAAiB,EACjB,gBAA0B;IAE1B,MAAM,QAAQ,GAAG,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IAEjD,kDAAkD;IAClD,MAAM,eAAe,GAAG;QACtB,2BAA2B;QAC3B,oBAAoB;QACpB,uBAAuB;QACvB,qCAAqC;QACrC,2BAA2B;QAC3B,8BAA8B;KAC/B,CAAC;IAEF,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACxC,mCAAmC;QACnC,IAAI,QAAQ,CAAC,aAAa;YAAE,SAAS;QACrC,YAAY;QACZ,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;YAAE,SAAS;QAE3C,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrD,MAAM,aAAa,GAAG,eAAe,CAAC,aAAa,CAAC,CAAC;QAErD,MAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAErD,iCAAiC;QACjC,IAAI,OAAO,GAAG,GAAG;YAAE,SAAS;QAE5B,uEAAuE;QACvE,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC;YACvF,GAAG,CAAC,KAAK,CAAC,6DAA6D,EAAE;gBACvE,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,OAAO;aACR,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,mFAAmF;QACnF,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;oBACzC,GAAG,CAAC,KAAK,CAAC,+CAA+C,EAAE;wBACzD,UAAU,EAAE,QAAQ,CAAC,EAAE;wBACvB,OAAO,EAAE,OAAO,CAAC,QAAQ,EAAE;wBAC3B,YAAY;qBACb,CAAC,CAAC;oBACH,OAAO,QAAQ,CAAC;gBAClB,CAAC;YACH,CAAC;QACH,CAAC;QAED,8CAA8C;QAC9C,IAAI,OAAO,IAAI,GAAG,IAAI,iBAAiB,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,KAAK,CAAC,gDAAgD,EAAE;gBAC1D,UAAU,EAAE,QAAQ,CAAC,EAAE;gBACvB,OAAO;aACR,CAAC,CAAC;YACH,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,sEAAsE;IACtE,MAAM,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;GAM5B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,CAAsB,CAAC;IAE/C,oCAAoC;IACpC,MAAM,aAAa,GAAG,EAAE,CAAC,OAAO,CAAC;;;GAGhC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAsB,CAAC;IAErC,uBAAuB;IACvB,MAAM,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC;;;;;;;GAO7B,CAAC,CAAC,GAAG,CAAC,OAAO,CAKZ,CAAC;IAEH,MAAM,KAAK,GAAa;QACtB,aAAa,SAAS,CAAC,KAAK,YAAY,aAAa,CAAC,KAAK,aAAa;KACzE,CAAC;IAEF,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACpC,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,GAAG,CAAC,OAAO,qBAAqB,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;QACnE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;QACnE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK;QACjE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ;QACnE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK;QAC/D,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;KACpE,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,WAAW,CAAC,CAAc,EAAE,CAAc;IACjD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzC,OAAO,MAAM,GAAG,KAAK,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAe,EAAE,YAAoB;IAC9D,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;IAC7F,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAExF,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,eAAe;YAAE,SAAS;QAE/B,MAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC;QACnF,IAAI,cAAc;YAAE,OAAO,IAAI,CAAC;IAClC,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"temporal.js","sourceRoot":"","sources":["../../src/engine/temporal.ts"],"names":[],"mappings":"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"}
@@ -33,12 +33,6 @@ export declare const ORBIT_ZONES: {
33
33
  };
34
34
  export type OrbitZone = keyof typeof ORBIT_ZONES;
35
35
  export declare const IMPACT_DEFAULTS: Record<MemoryType, number>;
36
- export declare const DEFAULT_WEIGHTS: {
37
- readonly recency: 0.3;
38
- readonly frequency: 0.2;
39
- readonly impact: 0.3;
40
- readonly relevance: 0.2;
41
- };
42
36
  export type MemoryValidityState = 'active' | 'future' | 'expired' | 'superseded';
43
37
  export interface Memory {
44
38
  id: string;
@@ -69,10 +63,6 @@ export interface Memory {
69
63
  quality_score?: number;
70
64
  is_universal?: boolean;
71
65
  }
72
- export interface VectorSearchResult {
73
- memoryId: string;
74
- distance: number;
75
- }
76
66
  export interface SunState {
77
67
  project: string;
78
68
  content: string;
@@ -117,11 +107,6 @@ export interface ConstellationEdge {
117
107
  created_at: string;
118
108
  metadata?: Record<string, unknown>;
119
109
  }
120
- export interface TemporalInfo {
121
- valid_from?: string;
122
- valid_until?: string;
123
- superseded_by?: string;
124
- }
125
110
  export interface MemoryConflict {
126
111
  id: string;
127
112
  memory_id: string;
@@ -17,11 +17,4 @@ export const IMPACT_DEFAULTS = {
17
17
  observation: 0.3,
18
18
  procedural: 0.5,
19
19
  };
20
- // Importance weights
21
- export const DEFAULT_WEIGHTS = {
22
- recency: 0.30,
23
- frequency: 0.20,
24
- impact: 0.30,
25
- relevance: 0.20,
26
- };
27
20
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"AAGA,cAAc;AACd,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,aAAa,EAAE;IACzD,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,OAAO,EAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE;CACvD,CAAC;AAIX,gCAAgC;AAChC,MAAM,CAAC,MAAM,eAAe,GAA+B;IACzD,QAAQ,EAAK,GAAG;IAChB,SAAS,EAAI,GAAG;IAChB,KAAK,EAAQ,GAAG;IAChB,IAAI,EAAS,GAAG;IAChB,OAAO,EAAM,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAG,GAAG;CACjB,CAAC;AAEF,qBAAqB;AACrB,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAI,IAAI;IACf,SAAS,EAAE,IAAI;IACf,MAAM,EAAK,IAAI;IACf,SAAS,EAAE,IAAI;CACP,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/engine/types.ts"],"names":[],"mappings":"AAGA,cAAc;AACd,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,aAAa,EAAE;IACzD,IAAI,EAAO,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,GAAG,EAAG,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,GAAG,EAAG,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,OAAO,EAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,MAAM,EAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE;IAC3D,SAAS,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE;CACvD,CAAC;AAIX,gCAAgC;AAChC,MAAM,CAAC,MAAM,eAAe,GAA+B;IACzD,QAAQ,EAAK,GAAG;IAChB,SAAS,EAAI,GAAG;IAChB,KAAK,EAAQ,GAAG;IAChB,IAAI,EAAS,GAAG;IAChB,OAAO,EAAM,GAAG;IAChB,WAAW,EAAE,GAAG;IAChB,UAAU,EAAG,GAAG;CACjB,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,7 @@ import { createStellarServer } from './mcp/server.js';
3
3
  import { initDatabase } from './storage/database.js';
4
4
  import { getConfig } from './utils/config.js';
5
5
  import { autoCommitOnClose } from './engine/sun.js';
6
- import { switchProject } from './engine/multiproject.js';
6
+ import { switchProject, getCurrentProject } from './engine/multiproject.js';
7
7
  /**
8
8
  * Validate that the runtime environment meets Stellar Memory's requirements.
9
9
  * Exits with a human-readable error message if anything is missing.
@@ -47,7 +47,7 @@ async function main() {
47
47
  if (shutdownDone)
48
48
  return;
49
49
  shutdownDone = true;
50
- autoCommitOnClose(config.defaultProject);
50
+ autoCommitOnClose(getCurrentProject());
51
51
  };
52
52
  process.on('exit', onShutdown);
53
53
  process.on('SIGTERM', () => { onShutdown(); process.exit(0); });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}