@membank/core 0.7.0 → 0.9.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/index.cjs +314 -35
- package/dist/index.d.cts +118 -7
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +118 -7
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +309 -37
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import BetterSqlite3 from "better-sqlite3";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
|
|
4
|
+
//#region src/config/loader.d.ts
|
|
5
|
+
declare function isSynthesisEnabled(): boolean;
|
|
6
|
+
//#endregion
|
|
4
7
|
//#region src/db/errors.d.ts
|
|
5
8
|
declare class MembankError extends Error {
|
|
6
9
|
constructor(message: string, options?: ErrorOptions);
|
|
@@ -41,6 +44,36 @@ declare const ProjectSchema: z.ZodObject<{
|
|
|
41
44
|
updatedAt: z.ZodString;
|
|
42
45
|
}, z.core.$strip>;
|
|
43
46
|
type Project = z.infer<typeof ProjectSchema>;
|
|
47
|
+
declare const ReviewReasonSchema: z.ZodEnum<{
|
|
48
|
+
similarity_dedup: "similarity_dedup";
|
|
49
|
+
}>;
|
|
50
|
+
type ReviewReason = z.infer<typeof ReviewReasonSchema>;
|
|
51
|
+
declare const ReviewEventSchema: z.ZodObject<{
|
|
52
|
+
id: z.ZodString;
|
|
53
|
+
memoryId: z.ZodString;
|
|
54
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
55
|
+
similarity: z.ZodNumber;
|
|
56
|
+
conflictContentSnapshot: z.ZodString;
|
|
57
|
+
reason: z.ZodEnum<{
|
|
58
|
+
similarity_dedup: "similarity_dedup";
|
|
59
|
+
}>;
|
|
60
|
+
createdAt: z.ZodString;
|
|
61
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
62
|
+
}, z.core.$strip>;
|
|
63
|
+
type ReviewEvent = z.infer<typeof ReviewEventSchema>;
|
|
64
|
+
declare const ReviewEventRowSchema: z.ZodObject<{
|
|
65
|
+
id: z.ZodString;
|
|
66
|
+
memory_id: z.ZodString;
|
|
67
|
+
conflicting_memory_id: z.ZodNullable<z.ZodString>;
|
|
68
|
+
similarity: z.ZodNumber;
|
|
69
|
+
conflict_content_snapshot: z.ZodString;
|
|
70
|
+
reason: z.ZodEnum<{
|
|
71
|
+
similarity_dedup: "similarity_dedup";
|
|
72
|
+
}>;
|
|
73
|
+
created_at: z.ZodString;
|
|
74
|
+
resolved_at: z.ZodNullable<z.ZodString>;
|
|
75
|
+
}, z.core.$strip>;
|
|
76
|
+
type ReviewEventRow = z.infer<typeof ReviewEventRowSchema>;
|
|
44
77
|
declare const MemorySchema: z.ZodObject<{
|
|
45
78
|
id: z.ZodString;
|
|
46
79
|
content: z.ZodString;
|
|
@@ -62,7 +95,18 @@ declare const MemorySchema: z.ZodObject<{
|
|
|
62
95
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
63
96
|
accessCount: z.ZodNumber;
|
|
64
97
|
pinned: z.ZodBoolean;
|
|
65
|
-
|
|
98
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
99
|
+
id: z.ZodString;
|
|
100
|
+
memoryId: z.ZodString;
|
|
101
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
102
|
+
similarity: z.ZodNumber;
|
|
103
|
+
conflictContentSnapshot: z.ZodString;
|
|
104
|
+
reason: z.ZodEnum<{
|
|
105
|
+
similarity_dedup: "similarity_dedup";
|
|
106
|
+
}>;
|
|
107
|
+
createdAt: z.ZodString;
|
|
108
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
109
|
+
}, z.core.$strip>>;
|
|
66
110
|
createdAt: z.ZodString;
|
|
67
111
|
updatedAt: z.ZodString;
|
|
68
112
|
}, z.core.$strip>;
|
|
@@ -101,8 +145,27 @@ type SaveOptions = z.infer<typeof SaveOptionsSchema>;
|
|
|
101
145
|
declare const MemoryPatchSchema: z.ZodObject<{
|
|
102
146
|
content: z.ZodOptional<z.ZodString>;
|
|
103
147
|
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
148
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
149
|
+
correction: "correction";
|
|
150
|
+
preference: "preference";
|
|
151
|
+
decision: "decision";
|
|
152
|
+
learning: "learning";
|
|
153
|
+
fact: "fact";
|
|
154
|
+
}>>;
|
|
104
155
|
}, z.core.$strip>;
|
|
105
156
|
type MemoryPatch = z.infer<typeof MemoryPatchSchema>;
|
|
157
|
+
declare const SynthesisSchema: z.ZodObject<{
|
|
158
|
+
id: z.ZodString;
|
|
159
|
+
scope: z.ZodString;
|
|
160
|
+
content: z.ZodString;
|
|
161
|
+
sourceMemoryHash: z.ZodString;
|
|
162
|
+
synthesizedAt: z.ZodString;
|
|
163
|
+
expiresAt: z.ZodString;
|
|
164
|
+
inFlightSince: z.ZodNullable<z.ZodString>;
|
|
165
|
+
createdAt: z.ZodString;
|
|
166
|
+
updatedAt: z.ZodString;
|
|
167
|
+
}, z.core.$strip>;
|
|
168
|
+
type Synthesis = z.infer<typeof SynthesisSchema>;
|
|
106
169
|
declare const SessionContextSchema: z.ZodObject<{
|
|
107
170
|
stats: z.ZodRecord<z.ZodEnum<{
|
|
108
171
|
correction: "correction";
|
|
@@ -132,7 +195,18 @@ declare const SessionContextSchema: z.ZodObject<{
|
|
|
132
195
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
133
196
|
accessCount: z.ZodNumber;
|
|
134
197
|
pinned: z.ZodBoolean;
|
|
135
|
-
|
|
198
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
199
|
+
id: z.ZodString;
|
|
200
|
+
memoryId: z.ZodString;
|
|
201
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
202
|
+
similarity: z.ZodNumber;
|
|
203
|
+
conflictContentSnapshot: z.ZodString;
|
|
204
|
+
reason: z.ZodEnum<{
|
|
205
|
+
similarity_dedup: "similarity_dedup";
|
|
206
|
+
}>;
|
|
207
|
+
createdAt: z.ZodString;
|
|
208
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
209
|
+
}, z.core.$strip>>;
|
|
136
210
|
createdAt: z.ZodString;
|
|
137
211
|
updatedAt: z.ZodString;
|
|
138
212
|
}, z.core.$strip>>;
|
|
@@ -157,10 +231,22 @@ declare const SessionContextSchema: z.ZodObject<{
|
|
|
157
231
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
158
232
|
accessCount: z.ZodNumber;
|
|
159
233
|
pinned: z.ZodBoolean;
|
|
160
|
-
|
|
234
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
235
|
+
id: z.ZodString;
|
|
236
|
+
memoryId: z.ZodString;
|
|
237
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
238
|
+
similarity: z.ZodNumber;
|
|
239
|
+
conflictContentSnapshot: z.ZodString;
|
|
240
|
+
reason: z.ZodEnum<{
|
|
241
|
+
similarity_dedup: "similarity_dedup";
|
|
242
|
+
}>;
|
|
243
|
+
createdAt: z.ZodString;
|
|
244
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
245
|
+
}, z.core.$strip>>;
|
|
161
246
|
createdAt: z.ZodString;
|
|
162
247
|
updatedAt: z.ZodString;
|
|
163
248
|
}, z.core.$strip>>;
|
|
249
|
+
synthesis: z.ZodOptional<z.ZodString>;
|
|
164
250
|
}, z.core.$strip>;
|
|
165
251
|
type SessionContext = z.infer<typeof SessionContextSchema>;
|
|
166
252
|
declare const MemoryRowSchema: z.ZodObject<{
|
|
@@ -171,7 +257,6 @@ declare const MemoryRowSchema: z.ZodObject<{
|
|
|
171
257
|
source: z.ZodNullable<z.ZodString>;
|
|
172
258
|
access_count: z.ZodNumber;
|
|
173
259
|
pinned: z.ZodNumber;
|
|
174
|
-
needs_review: z.ZodNumber;
|
|
175
260
|
created_at: z.ZodString;
|
|
176
261
|
updated_at: z.ZodString;
|
|
177
262
|
}, z.core.$strip>;
|
|
@@ -186,7 +271,7 @@ declare const ProjectRowSchema: z.ZodObject<{
|
|
|
186
271
|
type ProjectRow = z.infer<typeof ProjectRowSchema>;
|
|
187
272
|
//#endregion
|
|
188
273
|
//#region src/db/row-types.d.ts
|
|
189
|
-
declare function rowToMemory(row: MemoryRow, projects: Project[]): Memory;
|
|
274
|
+
declare function rowToMemory(row: MemoryRow, projects: Project[], reviewEvents?: ReviewEvent[]): Memory;
|
|
190
275
|
declare function rowToProject(row: ProjectRow): Project;
|
|
191
276
|
//#endregion
|
|
192
277
|
//#region src/embedding/service.d.ts
|
|
@@ -218,6 +303,7 @@ declare class ProjectRepository {
|
|
|
218
303
|
}
|
|
219
304
|
//#endregion
|
|
220
305
|
//#region src/memory/repository.d.ts
|
|
306
|
+
declare const PIN_BUDGET_THRESHOLD = 8000;
|
|
221
307
|
declare class MemoryRepository {
|
|
222
308
|
#private;
|
|
223
309
|
constructor(db: DatabaseManager, embeddingService: EmbeddingService, projects: ProjectRepository);
|
|
@@ -228,10 +314,18 @@ declare class MemoryRepository {
|
|
|
228
314
|
type?: MemoryType;
|
|
229
315
|
pinned?: boolean;
|
|
230
316
|
}): Memory[];
|
|
317
|
+
listFlagged(): Memory[];
|
|
318
|
+
listReviewEvents(memoryId: string, opts?: {
|
|
319
|
+
unresolvedOnly?: boolean;
|
|
320
|
+
}): ReviewEvent[];
|
|
321
|
+
resolveReviewEvents(memoryId: string): void;
|
|
322
|
+
getPinnedCharCount(): number;
|
|
231
323
|
stats(): {
|
|
232
324
|
byType: Record<MemoryType, number>;
|
|
233
325
|
total: number;
|
|
326
|
+
pinned: number;
|
|
234
327
|
needsReview: number;
|
|
328
|
+
pinBudgetChars: number;
|
|
235
329
|
};
|
|
236
330
|
setPin(id: string, pinned: boolean): Memory;
|
|
237
331
|
incrementAccessCount(id: string): void;
|
|
@@ -272,8 +366,25 @@ declare function listMemoryTypes(): MemoryType[];
|
|
|
272
366
|
declare class SessionContextBuilder {
|
|
273
367
|
#private;
|
|
274
368
|
constructor(db: DatabaseManager);
|
|
275
|
-
getSessionContext(projectHash: string): SessionContext;
|
|
369
|
+
getSessionContext(projectHash: string, synthesis?: string): SessionContext;
|
|
370
|
+
}
|
|
371
|
+
//#endregion
|
|
372
|
+
//#region src/synthesis/repository.d.ts
|
|
373
|
+
declare class SynthesisRepository {
|
|
374
|
+
#private;
|
|
375
|
+
constructor(db: DatabaseManager);
|
|
376
|
+
saveSynthesis(scope: string, content: string, sourceHash: string): Synthesis;
|
|
377
|
+
getSynthesis(scope: string): Synthesis | undefined;
|
|
378
|
+
markInFlight(scope: string): void;
|
|
379
|
+
clearInFlight(scope: string): void;
|
|
380
|
+
computeSourceMemoryHash(scope: string): string;
|
|
381
|
+
getExpiredOrDirtyScopes(): {
|
|
382
|
+
scope: string;
|
|
383
|
+
reason: "expired" | "dirty" | "missing";
|
|
384
|
+
}[];
|
|
385
|
+
getAllActiveScopes(): string[];
|
|
386
|
+
expireStale(): void;
|
|
276
387
|
}
|
|
277
388
|
//#endregion
|
|
278
|
-
export { DatabaseError, DatabaseManager, EmbeddingService, MEMORY_TYPE_VALUES, MIGRATIONS, MembankError, Memory, MemoryPatch, MemoryPatchSchema, MemoryRepository, MemoryRow, MemoryRowSchema, MemorySchema, MemoryType, MemoryTypeSchema, MigrationMeta, ProgressCallback, Project, ProjectRepository, ProjectRow, ProjectRowSchema, ProjectSchema, QueryEngine, QueryOptions, QueryOptionsSchema, SaveOptions, SaveOptionsSchema, ScopeToProjectsResult, SessionContext, SessionContextBuilder, SessionContextSchema, TagsJsonSchema, listMemoryTypes, resolveProject, resolveScope, rowToMemory, rowToProject, runScopeToProjectsMigration };
|
|
389
|
+
export { DatabaseError, DatabaseManager, EmbeddingService, MEMORY_TYPE_VALUES, MIGRATIONS, MembankError, Memory, MemoryPatch, MemoryPatchSchema, MemoryRepository, MemoryRow, MemoryRowSchema, MemorySchema, MemoryType, MemoryTypeSchema, MigrationMeta, PIN_BUDGET_THRESHOLD, ProgressCallback, Project, ProjectRepository, ProjectRow, ProjectRowSchema, ProjectSchema, QueryEngine, QueryOptions, QueryOptionsSchema, ReviewEvent, ReviewEventRow, ReviewEventRowSchema, ReviewEventSchema, ReviewReason, ReviewReasonSchema, SaveOptions, SaveOptionsSchema, ScopeToProjectsResult, SessionContext, SessionContextBuilder, SessionContextSchema, Synthesis, SynthesisRepository, SynthesisSchema, TagsJsonSchema, isSynthesisEnabled, listMemoryTypes, resolveProject, resolveScope, rowToMemory, rowToProject, runScopeToProjectsMigration };
|
|
279
390
|
//# sourceMappingURL=index.d.cts.map
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/db/errors.ts","../src/db/manager.ts","../src/schemas.ts","../src/db/row-types.ts","../src/embedding/service.ts","../src/project/repository.ts","../src/memory/repository.ts","../src/migrations/index.ts","../src/query/engine.ts","../src/scope/resolver.ts","../src/session/builder.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/config/loader.ts","../src/db/errors.ts","../src/db/manager.ts","../src/schemas.ts","../src/db/row-types.ts","../src/embedding/service.ts","../src/project/repository.ts","../src/memory/repository.ts","../src/migrations/index.ts","../src/query/engine.ts","../src/scope/resolver.ts","../src/session/builder.ts","../src/synthesis/repository.ts"],"mappings":"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"}
|
package/dist/index.d.mts
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import BetterSqlite3 from "better-sqlite3";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
|
|
4
|
+
//#region src/config/loader.d.ts
|
|
5
|
+
declare function isSynthesisEnabled(): boolean;
|
|
6
|
+
//#endregion
|
|
4
7
|
//#region src/db/errors.d.ts
|
|
5
8
|
declare class MembankError extends Error {
|
|
6
9
|
constructor(message: string, options?: ErrorOptions);
|
|
@@ -41,6 +44,36 @@ declare const ProjectSchema: z.ZodObject<{
|
|
|
41
44
|
updatedAt: z.ZodString;
|
|
42
45
|
}, z.core.$strip>;
|
|
43
46
|
type Project = z.infer<typeof ProjectSchema>;
|
|
47
|
+
declare const ReviewReasonSchema: z.ZodEnum<{
|
|
48
|
+
similarity_dedup: "similarity_dedup";
|
|
49
|
+
}>;
|
|
50
|
+
type ReviewReason = z.infer<typeof ReviewReasonSchema>;
|
|
51
|
+
declare const ReviewEventSchema: z.ZodObject<{
|
|
52
|
+
id: z.ZodString;
|
|
53
|
+
memoryId: z.ZodString;
|
|
54
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
55
|
+
similarity: z.ZodNumber;
|
|
56
|
+
conflictContentSnapshot: z.ZodString;
|
|
57
|
+
reason: z.ZodEnum<{
|
|
58
|
+
similarity_dedup: "similarity_dedup";
|
|
59
|
+
}>;
|
|
60
|
+
createdAt: z.ZodString;
|
|
61
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
62
|
+
}, z.core.$strip>;
|
|
63
|
+
type ReviewEvent = z.infer<typeof ReviewEventSchema>;
|
|
64
|
+
declare const ReviewEventRowSchema: z.ZodObject<{
|
|
65
|
+
id: z.ZodString;
|
|
66
|
+
memory_id: z.ZodString;
|
|
67
|
+
conflicting_memory_id: z.ZodNullable<z.ZodString>;
|
|
68
|
+
similarity: z.ZodNumber;
|
|
69
|
+
conflict_content_snapshot: z.ZodString;
|
|
70
|
+
reason: z.ZodEnum<{
|
|
71
|
+
similarity_dedup: "similarity_dedup";
|
|
72
|
+
}>;
|
|
73
|
+
created_at: z.ZodString;
|
|
74
|
+
resolved_at: z.ZodNullable<z.ZodString>;
|
|
75
|
+
}, z.core.$strip>;
|
|
76
|
+
type ReviewEventRow = z.infer<typeof ReviewEventRowSchema>;
|
|
44
77
|
declare const MemorySchema: z.ZodObject<{
|
|
45
78
|
id: z.ZodString;
|
|
46
79
|
content: z.ZodString;
|
|
@@ -62,7 +95,18 @@ declare const MemorySchema: z.ZodObject<{
|
|
|
62
95
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
63
96
|
accessCount: z.ZodNumber;
|
|
64
97
|
pinned: z.ZodBoolean;
|
|
65
|
-
|
|
98
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
99
|
+
id: z.ZodString;
|
|
100
|
+
memoryId: z.ZodString;
|
|
101
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
102
|
+
similarity: z.ZodNumber;
|
|
103
|
+
conflictContentSnapshot: z.ZodString;
|
|
104
|
+
reason: z.ZodEnum<{
|
|
105
|
+
similarity_dedup: "similarity_dedup";
|
|
106
|
+
}>;
|
|
107
|
+
createdAt: z.ZodString;
|
|
108
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
109
|
+
}, z.core.$strip>>;
|
|
66
110
|
createdAt: z.ZodString;
|
|
67
111
|
updatedAt: z.ZodString;
|
|
68
112
|
}, z.core.$strip>;
|
|
@@ -101,8 +145,27 @@ type SaveOptions = z.infer<typeof SaveOptionsSchema>;
|
|
|
101
145
|
declare const MemoryPatchSchema: z.ZodObject<{
|
|
102
146
|
content: z.ZodOptional<z.ZodString>;
|
|
103
147
|
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
148
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
149
|
+
correction: "correction";
|
|
150
|
+
preference: "preference";
|
|
151
|
+
decision: "decision";
|
|
152
|
+
learning: "learning";
|
|
153
|
+
fact: "fact";
|
|
154
|
+
}>>;
|
|
104
155
|
}, z.core.$strip>;
|
|
105
156
|
type MemoryPatch = z.infer<typeof MemoryPatchSchema>;
|
|
157
|
+
declare const SynthesisSchema: z.ZodObject<{
|
|
158
|
+
id: z.ZodString;
|
|
159
|
+
scope: z.ZodString;
|
|
160
|
+
content: z.ZodString;
|
|
161
|
+
sourceMemoryHash: z.ZodString;
|
|
162
|
+
synthesizedAt: z.ZodString;
|
|
163
|
+
expiresAt: z.ZodString;
|
|
164
|
+
inFlightSince: z.ZodNullable<z.ZodString>;
|
|
165
|
+
createdAt: z.ZodString;
|
|
166
|
+
updatedAt: z.ZodString;
|
|
167
|
+
}, z.core.$strip>;
|
|
168
|
+
type Synthesis = z.infer<typeof SynthesisSchema>;
|
|
106
169
|
declare const SessionContextSchema: z.ZodObject<{
|
|
107
170
|
stats: z.ZodRecord<z.ZodEnum<{
|
|
108
171
|
correction: "correction";
|
|
@@ -132,7 +195,18 @@ declare const SessionContextSchema: z.ZodObject<{
|
|
|
132
195
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
133
196
|
accessCount: z.ZodNumber;
|
|
134
197
|
pinned: z.ZodBoolean;
|
|
135
|
-
|
|
198
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
199
|
+
id: z.ZodString;
|
|
200
|
+
memoryId: z.ZodString;
|
|
201
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
202
|
+
similarity: z.ZodNumber;
|
|
203
|
+
conflictContentSnapshot: z.ZodString;
|
|
204
|
+
reason: z.ZodEnum<{
|
|
205
|
+
similarity_dedup: "similarity_dedup";
|
|
206
|
+
}>;
|
|
207
|
+
createdAt: z.ZodString;
|
|
208
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
209
|
+
}, z.core.$strip>>;
|
|
136
210
|
createdAt: z.ZodString;
|
|
137
211
|
updatedAt: z.ZodString;
|
|
138
212
|
}, z.core.$strip>>;
|
|
@@ -157,10 +231,22 @@ declare const SessionContextSchema: z.ZodObject<{
|
|
|
157
231
|
sourceHarness: z.ZodNullable<z.ZodString>;
|
|
158
232
|
accessCount: z.ZodNumber;
|
|
159
233
|
pinned: z.ZodBoolean;
|
|
160
|
-
|
|
234
|
+
reviewEvents: z.ZodArray<z.ZodObject<{
|
|
235
|
+
id: z.ZodString;
|
|
236
|
+
memoryId: z.ZodString;
|
|
237
|
+
conflictingMemoryId: z.ZodNullable<z.ZodString>;
|
|
238
|
+
similarity: z.ZodNumber;
|
|
239
|
+
conflictContentSnapshot: z.ZodString;
|
|
240
|
+
reason: z.ZodEnum<{
|
|
241
|
+
similarity_dedup: "similarity_dedup";
|
|
242
|
+
}>;
|
|
243
|
+
createdAt: z.ZodString;
|
|
244
|
+
resolvedAt: z.ZodNullable<z.ZodString>;
|
|
245
|
+
}, z.core.$strip>>;
|
|
161
246
|
createdAt: z.ZodString;
|
|
162
247
|
updatedAt: z.ZodString;
|
|
163
248
|
}, z.core.$strip>>;
|
|
249
|
+
synthesis: z.ZodOptional<z.ZodString>;
|
|
164
250
|
}, z.core.$strip>;
|
|
165
251
|
type SessionContext = z.infer<typeof SessionContextSchema>;
|
|
166
252
|
declare const MemoryRowSchema: z.ZodObject<{
|
|
@@ -171,7 +257,6 @@ declare const MemoryRowSchema: z.ZodObject<{
|
|
|
171
257
|
source: z.ZodNullable<z.ZodString>;
|
|
172
258
|
access_count: z.ZodNumber;
|
|
173
259
|
pinned: z.ZodNumber;
|
|
174
|
-
needs_review: z.ZodNumber;
|
|
175
260
|
created_at: z.ZodString;
|
|
176
261
|
updated_at: z.ZodString;
|
|
177
262
|
}, z.core.$strip>;
|
|
@@ -186,7 +271,7 @@ declare const ProjectRowSchema: z.ZodObject<{
|
|
|
186
271
|
type ProjectRow = z.infer<typeof ProjectRowSchema>;
|
|
187
272
|
//#endregion
|
|
188
273
|
//#region src/db/row-types.d.ts
|
|
189
|
-
declare function rowToMemory(row: MemoryRow, projects: Project[]): Memory;
|
|
274
|
+
declare function rowToMemory(row: MemoryRow, projects: Project[], reviewEvents?: ReviewEvent[]): Memory;
|
|
190
275
|
declare function rowToProject(row: ProjectRow): Project;
|
|
191
276
|
//#endregion
|
|
192
277
|
//#region src/embedding/service.d.ts
|
|
@@ -218,6 +303,7 @@ declare class ProjectRepository {
|
|
|
218
303
|
}
|
|
219
304
|
//#endregion
|
|
220
305
|
//#region src/memory/repository.d.ts
|
|
306
|
+
declare const PIN_BUDGET_THRESHOLD = 8000;
|
|
221
307
|
declare class MemoryRepository {
|
|
222
308
|
#private;
|
|
223
309
|
constructor(db: DatabaseManager, embeddingService: EmbeddingService, projects: ProjectRepository);
|
|
@@ -228,10 +314,18 @@ declare class MemoryRepository {
|
|
|
228
314
|
type?: MemoryType;
|
|
229
315
|
pinned?: boolean;
|
|
230
316
|
}): Memory[];
|
|
317
|
+
listFlagged(): Memory[];
|
|
318
|
+
listReviewEvents(memoryId: string, opts?: {
|
|
319
|
+
unresolvedOnly?: boolean;
|
|
320
|
+
}): ReviewEvent[];
|
|
321
|
+
resolveReviewEvents(memoryId: string): void;
|
|
322
|
+
getPinnedCharCount(): number;
|
|
231
323
|
stats(): {
|
|
232
324
|
byType: Record<MemoryType, number>;
|
|
233
325
|
total: number;
|
|
326
|
+
pinned: number;
|
|
234
327
|
needsReview: number;
|
|
328
|
+
pinBudgetChars: number;
|
|
235
329
|
};
|
|
236
330
|
setPin(id: string, pinned: boolean): Memory;
|
|
237
331
|
incrementAccessCount(id: string): void;
|
|
@@ -272,8 +366,25 @@ declare function listMemoryTypes(): MemoryType[];
|
|
|
272
366
|
declare class SessionContextBuilder {
|
|
273
367
|
#private;
|
|
274
368
|
constructor(db: DatabaseManager);
|
|
275
|
-
getSessionContext(projectHash: string): SessionContext;
|
|
369
|
+
getSessionContext(projectHash: string, synthesis?: string): SessionContext;
|
|
370
|
+
}
|
|
371
|
+
//#endregion
|
|
372
|
+
//#region src/synthesis/repository.d.ts
|
|
373
|
+
declare class SynthesisRepository {
|
|
374
|
+
#private;
|
|
375
|
+
constructor(db: DatabaseManager);
|
|
376
|
+
saveSynthesis(scope: string, content: string, sourceHash: string): Synthesis;
|
|
377
|
+
getSynthesis(scope: string): Synthesis | undefined;
|
|
378
|
+
markInFlight(scope: string): void;
|
|
379
|
+
clearInFlight(scope: string): void;
|
|
380
|
+
computeSourceMemoryHash(scope: string): string;
|
|
381
|
+
getExpiredOrDirtyScopes(): {
|
|
382
|
+
scope: string;
|
|
383
|
+
reason: "expired" | "dirty" | "missing";
|
|
384
|
+
}[];
|
|
385
|
+
getAllActiveScopes(): string[];
|
|
386
|
+
expireStale(): void;
|
|
276
387
|
}
|
|
277
388
|
//#endregion
|
|
278
|
-
export { DatabaseError, DatabaseManager, EmbeddingService, MEMORY_TYPE_VALUES, MIGRATIONS, MembankError, Memory, MemoryPatch, MemoryPatchSchema, MemoryRepository, MemoryRow, MemoryRowSchema, MemorySchema, MemoryType, MemoryTypeSchema, MigrationMeta, ProgressCallback, Project, ProjectRepository, ProjectRow, ProjectRowSchema, ProjectSchema, QueryEngine, QueryOptions, QueryOptionsSchema, SaveOptions, SaveOptionsSchema, ScopeToProjectsResult, SessionContext, SessionContextBuilder, SessionContextSchema, TagsJsonSchema, listMemoryTypes, resolveProject, resolveScope, rowToMemory, rowToProject, runScopeToProjectsMigration };
|
|
389
|
+
export { DatabaseError, DatabaseManager, EmbeddingService, MEMORY_TYPE_VALUES, MIGRATIONS, MembankError, Memory, MemoryPatch, MemoryPatchSchema, MemoryRepository, MemoryRow, MemoryRowSchema, MemorySchema, MemoryType, MemoryTypeSchema, MigrationMeta, PIN_BUDGET_THRESHOLD, ProgressCallback, Project, ProjectRepository, ProjectRow, ProjectRowSchema, ProjectSchema, QueryEngine, QueryOptions, QueryOptionsSchema, ReviewEvent, ReviewEventRow, ReviewEventRowSchema, ReviewEventSchema, ReviewReason, ReviewReasonSchema, SaveOptions, SaveOptionsSchema, ScopeToProjectsResult, SessionContext, SessionContextBuilder, SessionContextSchema, Synthesis, SynthesisRepository, SynthesisSchema, TagsJsonSchema, isSynthesisEnabled, listMemoryTypes, resolveProject, resolveScope, rowToMemory, rowToProject, runScopeToProjectsMigration };
|
|
279
390
|
//# sourceMappingURL=index.d.mts.map
|
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/db/errors.ts","../src/db/manager.ts","../src/schemas.ts","../src/db/row-types.ts","../src/embedding/service.ts","../src/project/repository.ts","../src/memory/repository.ts","../src/migrations/index.ts","../src/query/engine.ts","../src/scope/resolver.ts","../src/session/builder.ts"],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"index.d.mts","names":[],"sources":["../src/config/loader.ts","../src/db/errors.ts","../src/db/manager.ts","../src/schemas.ts","../src/db/row-types.ts","../src/embedding/service.ts","../src/project/repository.ts","../src/memory/repository.ts","../src/migrations/index.ts","../src/query/engine.ts","../src/scope/resolver.ts","../src/session/builder.ts","../src/synthesis/repository.ts"],"mappings":"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"}
|