@devflow-tools/memory-engine 0.13.3 → 0.14.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.
- package/dist/consolidator.d.ts +13 -0
- package/dist/consolidator.d.ts.map +1 -0
- package/dist/consolidator.js +184 -0
- package/dist/consolidator.js.map +1 -0
- package/dist/event-grouper.d.ts +13 -0
- package/dist/event-grouper.d.ts.map +1 -0
- package/dist/event-grouper.js +178 -0
- package/dist/event-grouper.js.map +1 -0
- package/dist/graph-store.d.ts.map +1 -1
- package/dist/graph-store.js +2 -4
- package/dist/graph-store.js.map +1 -1
- package/dist/hybrid-search.d.ts +6 -4
- package/dist/hybrid-search.d.ts.map +1 -1
- package/dist/hybrid-search.js +23 -5
- package/dist/hybrid-search.js.map +1 -1
- package/dist/index.d.ts +14 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/l2-evaluator.d.ts +31 -0
- package/dist/l2-evaluator.d.ts.map +1 -0
- package/dist/l2-evaluator.js +103 -0
- package/dist/l2-evaluator.js.map +1 -0
- package/dist/llm-provider.d.ts +9 -0
- package/dist/llm-provider.d.ts.map +1 -0
- package/dist/llm-provider.js +37 -0
- package/dist/llm-provider.js.map +1 -0
- package/dist/memory-engine.d.ts +27 -4
- package/dist/memory-engine.d.ts.map +1 -1
- package/dist/memory-engine.js +274 -181
- package/dist/memory-engine.js.map +1 -1
- package/dist/memory-gate.d.ts +116 -0
- package/dist/memory-gate.d.ts.map +1 -0
- package/dist/memory-gate.js +385 -0
- package/dist/memory-gate.js.map +1 -0
- package/dist/memory-store.d.ts +234 -32
- package/dist/memory-store.d.ts.map +1 -1
- package/dist/memory-store.js +729 -142
- package/dist/memory-store.js.map +1 -1
- package/dist/project-validator.d.ts +10 -0
- package/dist/project-validator.d.ts.map +1 -0
- package/dist/project-validator.js +36 -0
- package/dist/project-validator.js.map +1 -0
- package/dist/session-summarizer.d.ts +10 -0
- package/dist/session-summarizer.d.ts.map +1 -0
- package/dist/session-summarizer.js +197 -0
- package/dist/session-summarizer.js.map +1 -0
- package/dist/signal-buffer.d.ts +42 -0
- package/dist/signal-buffer.d.ts.map +1 -0
- package/dist/signal-buffer.js +104 -0
- package/dist/signal-buffer.js.map +1 -0
- package/dist/signal-detector.d.ts +39 -0
- package/dist/signal-detector.d.ts.map +1 -0
- package/dist/signal-detector.js +239 -0
- package/dist/signal-detector.js.map +1 -0
- package/package.json +5 -5
package/dist/memory-store.d.ts
CHANGED
|
@@ -1,45 +1,133 @@
|
|
|
1
1
|
export interface MemoryRow {
|
|
2
2
|
id: string;
|
|
3
|
-
|
|
3
|
+
type: string;
|
|
4
|
+
title: string;
|
|
4
5
|
content: string;
|
|
5
|
-
|
|
6
|
-
source: string;
|
|
6
|
+
context: string;
|
|
7
7
|
status: string;
|
|
8
|
+
version: number;
|
|
9
|
+
supersedes: string | null;
|
|
10
|
+
superseded_by: string | null;
|
|
11
|
+
strength: number;
|
|
8
12
|
confidence: number;
|
|
13
|
+
tags: string;
|
|
9
14
|
scope: string;
|
|
10
15
|
session_id: string | null;
|
|
16
|
+
original_text: string | null;
|
|
17
|
+
source: string;
|
|
18
|
+
created_at: number;
|
|
19
|
+
updated_at: number;
|
|
20
|
+
last_reinforced_at: number | null;
|
|
21
|
+
expires_at: number | null;
|
|
22
|
+
access_count: number;
|
|
23
|
+
reinforce_count: number;
|
|
24
|
+
}
|
|
25
|
+
export interface ObservationRow {
|
|
26
|
+
id: string;
|
|
27
|
+
session_id: string;
|
|
28
|
+
project: string;
|
|
29
|
+
type: string;
|
|
30
|
+
title: string;
|
|
31
|
+
narrative: string;
|
|
32
|
+
facts: string;
|
|
33
|
+
files: string;
|
|
34
|
+
tools: string;
|
|
35
|
+
concepts: string;
|
|
36
|
+
importance: number;
|
|
37
|
+
confidence: number;
|
|
38
|
+
source_event_ids: string;
|
|
39
|
+
memory_id: string | null;
|
|
40
|
+
timestamp: number;
|
|
41
|
+
}
|
|
42
|
+
export interface EventRow {
|
|
43
|
+
id: string;
|
|
44
|
+
session_id: string;
|
|
45
|
+
project: string;
|
|
46
|
+
tool: string;
|
|
47
|
+
command: string | null;
|
|
48
|
+
exit_code: number | null;
|
|
49
|
+
stderr: string | null;
|
|
50
|
+
duration_ms: number | null;
|
|
11
51
|
created_at: number;
|
|
12
|
-
|
|
52
|
+
processed: number;
|
|
53
|
+
l1_score: number;
|
|
54
|
+
dialog_score: number;
|
|
55
|
+
user_message: string | null;
|
|
56
|
+
}
|
|
57
|
+
export interface SessionRow {
|
|
58
|
+
id: string;
|
|
59
|
+
project_root: string;
|
|
60
|
+
task: string;
|
|
61
|
+
status: 'active' | 'closed';
|
|
62
|
+
phase_summary: string;
|
|
63
|
+
signal_summary: string;
|
|
64
|
+
tool_count: number;
|
|
65
|
+
error_count: number;
|
|
66
|
+
created_at: number;
|
|
67
|
+
closed_at: number | null;
|
|
68
|
+
}
|
|
69
|
+
export interface SignalRow {
|
|
70
|
+
id: string;
|
|
71
|
+
session_id: string;
|
|
72
|
+
type: string;
|
|
73
|
+
strength: number;
|
|
74
|
+
source_event_ids: string;
|
|
75
|
+
payload: string;
|
|
76
|
+
timestamp: number;
|
|
13
77
|
}
|
|
14
78
|
export declare class MemoryStore {
|
|
15
79
|
private db;
|
|
80
|
+
private dbPath;
|
|
16
81
|
constructor(rootPath: string);
|
|
82
|
+
private countTables;
|
|
83
|
+
private migrateV1ToV2;
|
|
84
|
+
private getTableColumns;
|
|
17
85
|
add(entry: {
|
|
18
86
|
id?: string;
|
|
19
|
-
|
|
87
|
+
type?: string;
|
|
88
|
+
category?: string;
|
|
20
89
|
content: string;
|
|
90
|
+
title?: string;
|
|
21
91
|
originalText?: string;
|
|
22
92
|
source?: string;
|
|
23
93
|
status?: string;
|
|
24
94
|
confidence?: number;
|
|
95
|
+
strength?: number;
|
|
25
96
|
scope?: string;
|
|
26
97
|
sessionId?: string;
|
|
27
98
|
}): MemoryRow;
|
|
28
99
|
get(id: string): MemoryRow | null;
|
|
29
100
|
update(id: string, updates: {
|
|
101
|
+
title?: string;
|
|
30
102
|
content?: string;
|
|
103
|
+
context?: string;
|
|
31
104
|
status?: string;
|
|
105
|
+
strength?: number;
|
|
106
|
+
confidence?: number;
|
|
107
|
+
tags?: string;
|
|
32
108
|
scope?: string;
|
|
109
|
+
version?: number;
|
|
110
|
+
supersedes?: string;
|
|
111
|
+
superseded_by?: string;
|
|
112
|
+
reinforce_count?: number;
|
|
113
|
+
last_reinforced_at?: number;
|
|
33
114
|
}): void;
|
|
34
115
|
delete(id: string): void;
|
|
35
116
|
list(filter?: {
|
|
117
|
+
type?: string;
|
|
36
118
|
category?: string;
|
|
37
119
|
status?: string;
|
|
38
120
|
scope?: string;
|
|
39
121
|
}): MemoryRow[];
|
|
40
122
|
getPending(): MemoryRow[];
|
|
123
|
+
listByType(type: string, limit?: number): MemoryRow[];
|
|
124
|
+
listByTypes(types: string[], limit?: number): MemoryRow[];
|
|
41
125
|
listByCategory(category: string, limit?: number): MemoryRow[];
|
|
126
|
+
countByStatus(status: string): number;
|
|
42
127
|
insertEmbedding(id: string, embedding: Float32Array): void;
|
|
128
|
+
insertObservationEmbedding(obsId: string, embedding: Float32Array): void;
|
|
129
|
+
getEmbedding(id: string): Buffer | null;
|
|
130
|
+
getEmbeddingBySource(sourceType: string, sourceId: string): Buffer | null;
|
|
43
131
|
searchBM25(query: string, limit?: number): Array<{
|
|
44
132
|
id: string;
|
|
45
133
|
rank: number;
|
|
@@ -48,35 +136,163 @@ export declare class MemoryStore {
|
|
|
48
136
|
id: string;
|
|
49
137
|
distance: number;
|
|
50
138
|
}>;
|
|
51
|
-
addEdge(sourceId: string, targetId: string,
|
|
139
|
+
addEdge(sourceId: string, targetId: string, type: string, weight?: number): void;
|
|
52
140
|
getNeighbors(id: string): Array<{
|
|
53
141
|
targetId: string;
|
|
54
|
-
|
|
142
|
+
type: string;
|
|
55
143
|
weight: number;
|
|
56
144
|
}>;
|
|
57
|
-
getEmbedding(id: string): Buffer | null;
|
|
58
|
-
close(): void;
|
|
59
145
|
recordEvent(event: {
|
|
60
146
|
id: string;
|
|
61
147
|
sessionId: string;
|
|
148
|
+
project?: string;
|
|
62
149
|
tool: string;
|
|
63
150
|
command?: string;
|
|
64
151
|
exitCode?: number;
|
|
65
152
|
stderr?: string;
|
|
66
153
|
durationMs?: number;
|
|
67
154
|
createdAt: number;
|
|
155
|
+
l1Score?: number;
|
|
156
|
+
dialogScore?: number;
|
|
157
|
+
userMessage?: string;
|
|
68
158
|
}): void;
|
|
69
|
-
|
|
159
|
+
getSessionEvents(sessionId: string): EventRow[];
|
|
160
|
+
getUnprocessedEvents(): EventRow[];
|
|
161
|
+
markEventsProcessed(ids: string[]): void;
|
|
162
|
+
eventWindowExists(tool: string, command: string | undefined, windowMs?: number): boolean;
|
|
163
|
+
createSession(id: string, projectRoot: string, task?: string): void;
|
|
164
|
+
closeSession(id: string): void;
|
|
165
|
+
getSession(id: string): SessionRow | null;
|
|
166
|
+
getActiveSessions(): SessionRow[];
|
|
167
|
+
updateSessionStats(id: string, stats: {
|
|
168
|
+
tool_count?: number;
|
|
169
|
+
error_count?: number;
|
|
170
|
+
}): void;
|
|
171
|
+
getZombieSessions(maxAgeHours?: number): SessionRow[];
|
|
172
|
+
addObservation(obs: {
|
|
173
|
+
id?: string;
|
|
174
|
+
sessionId: string;
|
|
175
|
+
project?: string;
|
|
176
|
+
type: string;
|
|
177
|
+
title: string;
|
|
178
|
+
narrative?: string;
|
|
179
|
+
facts?: string[];
|
|
180
|
+
files?: string[];
|
|
181
|
+
tools?: string[];
|
|
182
|
+
concepts?: string[];
|
|
183
|
+
importance?: number;
|
|
184
|
+
confidence?: number;
|
|
185
|
+
sourceEventIds?: string[];
|
|
186
|
+
timestamp?: number;
|
|
187
|
+
}): ObservationRow;
|
|
188
|
+
getObservation(id: string): ObservationRow | null;
|
|
189
|
+
listObservations(filter?: {
|
|
190
|
+
sessionId?: string;
|
|
191
|
+
project?: string;
|
|
192
|
+
type?: string;
|
|
193
|
+
memoryId?: string | null;
|
|
194
|
+
concept?: string;
|
|
195
|
+
limit?: number;
|
|
196
|
+
}): ObservationRow[];
|
|
197
|
+
getObservationsByConcept(concept: string, limit?: number): ObservationRow[];
|
|
198
|
+
countObservationsByConcept(concept: string): number;
|
|
199
|
+
getConceptsForObservation(obsId: string): string[];
|
|
200
|
+
linkObservationToMemory(obsId: string, memoryId: string): void;
|
|
201
|
+
getUnconsolidatedObservations(project: string, minImportance?: number): ObservationRow[];
|
|
202
|
+
/** Get concept clusters from unconsolidated observations, grouped by concept with session counts */
|
|
203
|
+
getClusterCandidates(project: string, minObservations?: number, minSessions?: number): Array<{
|
|
204
|
+
concept: string;
|
|
205
|
+
observationCount: number;
|
|
206
|
+
sessionCount: number;
|
|
207
|
+
observationIds: string[];
|
|
208
|
+
}>;
|
|
209
|
+
recordSignals(signals: Array<{
|
|
70
210
|
id: string;
|
|
71
211
|
sessionId: string;
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
212
|
+
type: string;
|
|
213
|
+
strength: number;
|
|
214
|
+
sourceEventIds: string[];
|
|
215
|
+
payload: Record<string, unknown>;
|
|
216
|
+
timestamp: number;
|
|
217
|
+
}>): void;
|
|
218
|
+
getSessionSignals(sessionId: string): SignalRow[];
|
|
219
|
+
addEvidence(ev: {
|
|
220
|
+
id?: string;
|
|
221
|
+
memoryId: string;
|
|
222
|
+
type: string;
|
|
223
|
+
weight: number;
|
|
224
|
+
sourceObservationIds: string[];
|
|
225
|
+
summary: string;
|
|
226
|
+
timestamp?: number;
|
|
227
|
+
}): string;
|
|
228
|
+
getEvidenceForMemory(memoryId: string): Array<{
|
|
229
|
+
id: string;
|
|
230
|
+
memory_id: string;
|
|
231
|
+
type: string;
|
|
232
|
+
weight: number;
|
|
233
|
+
source_observation_ids: string;
|
|
234
|
+
summary: string;
|
|
235
|
+
timestamp: number;
|
|
78
236
|
}>;
|
|
79
|
-
|
|
237
|
+
recordAccess(memoryId: string, accessType: string, sessionId?: string): void;
|
|
238
|
+
incrementAccess(id: string): void;
|
|
239
|
+
recordHistory(entry: {
|
|
240
|
+
memoryId: string;
|
|
241
|
+
event: string;
|
|
242
|
+
oldContent?: string;
|
|
243
|
+
newContent?: string;
|
|
244
|
+
oldStrength?: number;
|
|
245
|
+
newStrength?: number;
|
|
246
|
+
reason?: string;
|
|
247
|
+
}): void;
|
|
248
|
+
getVersionChain(id: string): MemoryRow[];
|
|
249
|
+
getMemoryHistory(memoryId: string): Array<{
|
|
250
|
+
id: string;
|
|
251
|
+
memory_id: string;
|
|
252
|
+
event: string;
|
|
253
|
+
old_content: string | null;
|
|
254
|
+
new_content: string | null;
|
|
255
|
+
old_strength: number | null;
|
|
256
|
+
new_strength: number | null;
|
|
257
|
+
reason: string;
|
|
258
|
+
created_at: number;
|
|
259
|
+
}>;
|
|
260
|
+
upsertRetentionScore(memoryId: string, data: {
|
|
261
|
+
score: number;
|
|
262
|
+
salience: number;
|
|
263
|
+
temporal_decay: number;
|
|
264
|
+
reinforcement_boost: number;
|
|
265
|
+
last_accessed?: number;
|
|
266
|
+
access_count?: number;
|
|
267
|
+
}): void;
|
|
268
|
+
getColdRetentionScores(threshold: number): Array<{
|
|
269
|
+
memory_id: string;
|
|
270
|
+
score: number;
|
|
271
|
+
}>;
|
|
272
|
+
getRetentionScore(memoryId: string): {
|
|
273
|
+
memory_id: string;
|
|
274
|
+
score: number;
|
|
275
|
+
salience: number;
|
|
276
|
+
temporal_decay: number;
|
|
277
|
+
reinforcement_boost: number;
|
|
278
|
+
last_accessed: number | null;
|
|
279
|
+
access_count: number;
|
|
280
|
+
computed_at: number;
|
|
281
|
+
} | null;
|
|
282
|
+
computeRetentionScore(memory: MemoryRow): {
|
|
283
|
+
score: number;
|
|
284
|
+
salience: number;
|
|
285
|
+
temporalDecay: number;
|
|
286
|
+
reinforcementBoost: number;
|
|
287
|
+
};
|
|
288
|
+
runRetentionSweep(project?: string): {
|
|
289
|
+
swept: number;
|
|
290
|
+
kept: number;
|
|
291
|
+
downgraded: number;
|
|
292
|
+
expired: number;
|
|
293
|
+
cleanedEvents: number;
|
|
294
|
+
};
|
|
295
|
+
setExpires(id: string, expiresAt: number): void;
|
|
80
296
|
cleanupExpired(): {
|
|
81
297
|
expired: number;
|
|
82
298
|
lowQuality: number;
|
|
@@ -84,20 +300,6 @@ export declare class MemoryStore {
|
|
|
84
300
|
cleanupLowQuality(): {
|
|
85
301
|
removed: number;
|
|
86
302
|
};
|
|
87
|
-
|
|
88
|
-
countByStatus(status: string): number;
|
|
89
|
-
eventWindowExists(tool: string, command: string | undefined, windowMs?: number): boolean;
|
|
90
|
-
incrementAccess(id: string): void;
|
|
91
|
-
setExpires(id: string, expiresAt: number): void;
|
|
92
|
-
getSessionEvents(sessionId: string): Array<{
|
|
93
|
-
id: string;
|
|
94
|
-
sessionId: string;
|
|
95
|
-
tool: string;
|
|
96
|
-
command: string | null;
|
|
97
|
-
exitCode: number | null;
|
|
98
|
-
stderr: string | null;
|
|
99
|
-
durationMs: number | null;
|
|
100
|
-
createdAt: number;
|
|
101
|
-
}>;
|
|
303
|
+
close(): void;
|
|
102
304
|
}
|
|
103
305
|
//# sourceMappingURL=memory-store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-store.d.ts","sourceRoot":"","sources":["../src/memory-store.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memory-store.d.ts","sourceRoot":"","sources":["../src/memory-store.ts"],"names":[],"mappings":"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"}
|