ai-mind-map 1.6.0 → 1.6.2
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/change-tracker/change-log.js +123 -123
- package/dist/cli.js +83 -83
- package/dist/cli.js.map +1 -1
- package/dist/context/compressor.js +3 -3
- package/dist/context/compressor.js.map +1 -1
- package/dist/context/progressive-disclosure.js +4 -4
- package/dist/context/progressive-disclosure.js.map +1 -1
- package/dist/index.d.ts +0 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1371
- package/dist/index.js.map +1 -1
- package/dist/install.js +114 -114
- package/dist/install.js.map +1 -1
- package/dist/knowledge-graph/changelog.js +62 -62
- package/dist/knowledge-graph/dead-code.js +31 -31
- package/dist/knowledge-graph/graph.js +201 -201
- package/dist/knowledge-graph/indexer.d.ts +20 -0
- package/dist/knowledge-graph/indexer.d.ts.map +1 -1
- package/dist/knowledge-graph/indexer.js +55 -4
- package/dist/knowledge-graph/indexer.js.map +1 -1
- package/dist/knowledge-graph/semantic-search.js +50 -50
- package/dist/memory/decision-log.js +61 -61
- package/dist/memory/persistent-memory.js +70 -70
- package/dist/memory/session-memory.js +54 -54
- package/dist/tools/context-tools.js +2 -2
- package/dist/tools/context-tools.js.map +1 -1
- package/dist/tools/debug-tools.js +9 -9
- package/dist/tools/debug-tools.js.map +1 -1
- package/dist/tools/evolving-tools.js +3 -3
- package/dist/tools/evolving-tools.js.map +1 -1
- package/dist/tools/flow-tools.js +29 -29
- package/dist/tools/flow-tools.js.map +1 -1
- package/dist/tools/session-tools.js +2 -2
- package/dist/tools/session-tools.js.map +1 -1
- package/dist/tools/snapshot-tools.js +24 -24
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/knowledge-graph/indexer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"indexer.js","sourceRoot":"","sources":["../../src/knowledge-graph/indexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -221,29 +221,29 @@ function cosineSimilarity(vecA, vecB, magB) {
|
|
|
221
221
|
// Semantic Search Engine
|
|
222
222
|
// ============================================================
|
|
223
223
|
/** Schema for semantic search tables */
|
|
224
|
-
const SEMANTIC_SCHEMA = `
|
|
225
|
-
-- TF-IDF vectors for each indexed node
|
|
226
|
-
CREATE TABLE IF NOT EXISTS tfidf_vectors (
|
|
227
|
-
node_id TEXT PRIMARY KEY,
|
|
228
|
-
terms TEXT NOT NULL,
|
|
229
|
-
magnitude REAL NOT NULL,
|
|
230
|
-
updated_at INTEGER NOT NULL
|
|
231
|
-
);
|
|
232
|
-
|
|
233
|
-
-- Inverse document frequency stats
|
|
234
|
-
CREATE TABLE IF NOT EXISTS corpus_stats (
|
|
235
|
-
term TEXT PRIMARY KEY,
|
|
236
|
-
doc_frequency INTEGER NOT NULL
|
|
237
|
-
);
|
|
238
|
-
|
|
239
|
-
-- Metadata for the semantic index
|
|
240
|
-
CREATE TABLE IF NOT EXISTS search_metadata (
|
|
241
|
-
key TEXT PRIMARY KEY,
|
|
242
|
-
value TEXT NOT NULL
|
|
243
|
-
);
|
|
244
|
-
|
|
245
|
-
-- Index for fast lookups
|
|
246
|
-
CREATE INDEX IF NOT EXISTS idx_tfidf_updated ON tfidf_vectors(updated_at);
|
|
224
|
+
const SEMANTIC_SCHEMA = `
|
|
225
|
+
-- TF-IDF vectors for each indexed node
|
|
226
|
+
CREATE TABLE IF NOT EXISTS tfidf_vectors (
|
|
227
|
+
node_id TEXT PRIMARY KEY,
|
|
228
|
+
terms TEXT NOT NULL,
|
|
229
|
+
magnitude REAL NOT NULL,
|
|
230
|
+
updated_at INTEGER NOT NULL
|
|
231
|
+
);
|
|
232
|
+
|
|
233
|
+
-- Inverse document frequency stats
|
|
234
|
+
CREATE TABLE IF NOT EXISTS corpus_stats (
|
|
235
|
+
term TEXT PRIMARY KEY,
|
|
236
|
+
doc_frequency INTEGER NOT NULL
|
|
237
|
+
);
|
|
238
|
+
|
|
239
|
+
-- Metadata for the semantic index
|
|
240
|
+
CREATE TABLE IF NOT EXISTS search_metadata (
|
|
241
|
+
key TEXT PRIMARY KEY,
|
|
242
|
+
value TEXT NOT NULL
|
|
243
|
+
);
|
|
244
|
+
|
|
245
|
+
-- Index for fast lookups
|
|
246
|
+
CREATE INDEX IF NOT EXISTS idx_tfidf_updated ON tfidf_vectors(updated_at);
|
|
247
247
|
`;
|
|
248
248
|
/**
|
|
249
249
|
* SemanticSearchEngine — TF-IDF cosine similarity search with synonym expansion.
|
|
@@ -282,40 +282,40 @@ export class SemanticSearchEngine {
|
|
|
282
282
|
}
|
|
283
283
|
/** Prepare reusable SQL statements */
|
|
284
284
|
prepareStatements() {
|
|
285
|
-
this.stmtUpsertVector = this.db.prepare(`
|
|
286
|
-
INSERT OR REPLACE INTO tfidf_vectors (node_id, terms, magnitude, updated_at)
|
|
287
|
-
VALUES (?, ?, ?, ?)
|
|
285
|
+
this.stmtUpsertVector = this.db.prepare(`
|
|
286
|
+
INSERT OR REPLACE INTO tfidf_vectors (node_id, terms, magnitude, updated_at)
|
|
287
|
+
VALUES (?, ?, ?, ?)
|
|
288
288
|
`);
|
|
289
|
-
this.stmtDeleteVector = this.db.prepare(`
|
|
290
|
-
DELETE FROM tfidf_vectors WHERE node_id = ?
|
|
289
|
+
this.stmtDeleteVector = this.db.prepare(`
|
|
290
|
+
DELETE FROM tfidf_vectors WHERE node_id = ?
|
|
291
291
|
`);
|
|
292
|
-
this.stmtUpsertCorpusStat = this.db.prepare(`
|
|
293
|
-
INSERT OR REPLACE INTO corpus_stats (term, doc_frequency)
|
|
294
|
-
VALUES (?, ?)
|
|
292
|
+
this.stmtUpsertCorpusStat = this.db.prepare(`
|
|
293
|
+
INSERT OR REPLACE INTO corpus_stats (term, doc_frequency)
|
|
294
|
+
VALUES (?, ?)
|
|
295
295
|
`);
|
|
296
|
-
this.stmtGetVector = this.db.prepare(`
|
|
297
|
-
SELECT terms, magnitude FROM tfidf_vectors WHERE node_id = ?
|
|
296
|
+
this.stmtGetVector = this.db.prepare(`
|
|
297
|
+
SELECT terms, magnitude FROM tfidf_vectors WHERE node_id = ?
|
|
298
298
|
`);
|
|
299
|
-
this.stmtGetAllVectors = this.db.prepare(`
|
|
300
|
-
SELECT node_id, terms, magnitude FROM tfidf_vectors
|
|
299
|
+
this.stmtGetAllVectors = this.db.prepare(`
|
|
300
|
+
SELECT node_id, terms, magnitude FROM tfidf_vectors
|
|
301
301
|
`);
|
|
302
|
-
this.stmtGetCorpusStats = this.db.prepare(`
|
|
303
|
-
SELECT term, doc_frequency FROM corpus_stats
|
|
302
|
+
this.stmtGetCorpusStats = this.db.prepare(`
|
|
303
|
+
SELECT term, doc_frequency FROM corpus_stats
|
|
304
304
|
`);
|
|
305
|
-
this.stmtSetMetadata = this.db.prepare(`
|
|
306
|
-
INSERT OR REPLACE INTO search_metadata (key, value) VALUES (?, ?)
|
|
305
|
+
this.stmtSetMetadata = this.db.prepare(`
|
|
306
|
+
INSERT OR REPLACE INTO search_metadata (key, value) VALUES (?, ?)
|
|
307
307
|
`);
|
|
308
|
-
this.stmtGetMetadata = this.db.prepare(`
|
|
309
|
-
SELECT value FROM search_metadata WHERE key = ?
|
|
308
|
+
this.stmtGetMetadata = this.db.prepare(`
|
|
309
|
+
SELECT value FROM search_metadata WHERE key = ?
|
|
310
310
|
`);
|
|
311
|
-
this.stmtCountVectors = this.db.prepare(`
|
|
312
|
-
SELECT COUNT(*) as count FROM tfidf_vectors
|
|
311
|
+
this.stmtCountVectors = this.db.prepare(`
|
|
312
|
+
SELECT COUNT(*) as count FROM tfidf_vectors
|
|
313
313
|
`);
|
|
314
|
-
this.stmtCountTerms = this.db.prepare(`
|
|
315
|
-
SELECT COUNT(*) as count FROM corpus_stats
|
|
314
|
+
this.stmtCountTerms = this.db.prepare(`
|
|
315
|
+
SELECT COUNT(*) as count FROM corpus_stats
|
|
316
316
|
`);
|
|
317
|
-
this.stmtDeleteCorpusStats = this.db.prepare(`
|
|
318
|
-
DELETE FROM corpus_stats
|
|
317
|
+
this.stmtDeleteCorpusStats = this.db.prepare(`
|
|
318
|
+
DELETE FROM corpus_stats
|
|
319
319
|
`);
|
|
320
320
|
}
|
|
321
321
|
/** Load corpus statistics from SQLite */
|
|
@@ -389,9 +389,9 @@ export class SemanticSearchEngine {
|
|
|
389
389
|
* Remove all nodes for a file path from the semantic index.
|
|
390
390
|
*/
|
|
391
391
|
removeFileNodes(filePath) {
|
|
392
|
-
this.db.prepare(`
|
|
393
|
-
DELETE FROM tfidf_vectors
|
|
394
|
-
WHERE node_id IN (SELECT id FROM nodes WHERE filePath = ?)
|
|
392
|
+
this.db.prepare(`
|
|
393
|
+
DELETE FROM tfidf_vectors
|
|
394
|
+
WHERE node_id IN (SELECT id FROM nodes WHERE filePath = ?)
|
|
395
395
|
`).run(filePath);
|
|
396
396
|
this.idfStale = true;
|
|
397
397
|
}
|
|
@@ -41,68 +41,68 @@ export class DecisionLog {
|
|
|
41
41
|
// Schema
|
|
42
42
|
// ────────────────────────────────────────────────────────────
|
|
43
43
|
ensureSchema() {
|
|
44
|
-
this.db.exec(`
|
|
45
|
-
CREATE TABLE IF NOT EXISTS decisions (
|
|
46
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
47
|
-
title TEXT NOT NULL,
|
|
48
|
-
description TEXT NOT NULL,
|
|
49
|
-
rationale TEXT NOT NULL,
|
|
50
|
-
alternatives TEXT NOT NULL DEFAULT '[]',
|
|
51
|
-
consequences TEXT NOT NULL DEFAULT '[]',
|
|
52
|
-
related_files TEXT NOT NULL DEFAULT '[]',
|
|
53
|
-
tags TEXT NOT NULL DEFAULT '[]',
|
|
54
|
-
decided_at INTEGER NOT NULL,
|
|
55
|
-
decided_by TEXT NOT NULL DEFAULT 'agent',
|
|
56
|
-
status TEXT NOT NULL DEFAULT 'active',
|
|
57
|
-
superseded_by INTEGER
|
|
58
|
-
);
|
|
59
|
-
|
|
60
|
-
CREATE INDEX IF NOT EXISTS idx_decisions_status ON decisions(status);
|
|
61
|
-
CREATE INDEX IF NOT EXISTS idx_decisions_decided_at ON decisions(decided_at DESC);
|
|
44
|
+
this.db.exec(`
|
|
45
|
+
CREATE TABLE IF NOT EXISTS decisions (
|
|
46
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
47
|
+
title TEXT NOT NULL,
|
|
48
|
+
description TEXT NOT NULL,
|
|
49
|
+
rationale TEXT NOT NULL,
|
|
50
|
+
alternatives TEXT NOT NULL DEFAULT '[]',
|
|
51
|
+
consequences TEXT NOT NULL DEFAULT '[]',
|
|
52
|
+
related_files TEXT NOT NULL DEFAULT '[]',
|
|
53
|
+
tags TEXT NOT NULL DEFAULT '[]',
|
|
54
|
+
decided_at INTEGER NOT NULL,
|
|
55
|
+
decided_by TEXT NOT NULL DEFAULT 'agent',
|
|
56
|
+
status TEXT NOT NULL DEFAULT 'active',
|
|
57
|
+
superseded_by INTEGER
|
|
58
|
+
);
|
|
59
|
+
|
|
60
|
+
CREATE INDEX IF NOT EXISTS idx_decisions_status ON decisions(status);
|
|
61
|
+
CREATE INDEX IF NOT EXISTS idx_decisions_decided_at ON decisions(decided_at DESC);
|
|
62
62
|
`);
|
|
63
63
|
// FTS5 for full-text search across title, description, rationale
|
|
64
64
|
try {
|
|
65
|
-
this.db.exec(`
|
|
66
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS decisions_fts USING fts5(
|
|
67
|
-
title,
|
|
68
|
-
description,
|
|
69
|
-
rationale,
|
|
70
|
-
tags,
|
|
71
|
-
content='decisions',
|
|
72
|
-
content_rowid='id',
|
|
73
|
-
tokenize='porter unicode61'
|
|
74
|
-
);
|
|
65
|
+
this.db.exec(`
|
|
66
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS decisions_fts USING fts5(
|
|
67
|
+
title,
|
|
68
|
+
description,
|
|
69
|
+
rationale,
|
|
70
|
+
tags,
|
|
71
|
+
content='decisions',
|
|
72
|
+
content_rowid='id',
|
|
73
|
+
tokenize='porter unicode61'
|
|
74
|
+
);
|
|
75
75
|
`);
|
|
76
76
|
}
|
|
77
77
|
catch {
|
|
78
78
|
// Already exists; ignore
|
|
79
79
|
}
|
|
80
80
|
// Sync triggers
|
|
81
|
-
this.db.exec(`
|
|
82
|
-
CREATE TRIGGER IF NOT EXISTS decisions_ai AFTER INSERT ON decisions BEGIN
|
|
83
|
-
INSERT INTO decisions_fts(rowid, title, description, rationale, tags)
|
|
84
|
-
VALUES (new.id, new.title, new.description, new.rationale, new.tags);
|
|
85
|
-
END;
|
|
86
|
-
|
|
87
|
-
CREATE TRIGGER IF NOT EXISTS decisions_ad AFTER DELETE ON decisions BEGIN
|
|
88
|
-
INSERT INTO decisions_fts(decisions_fts, rowid, title, description, rationale, tags)
|
|
89
|
-
VALUES ('delete', old.id, old.title, old.description, old.rationale, old.tags);
|
|
90
|
-
END;
|
|
91
|
-
|
|
92
|
-
CREATE TRIGGER IF NOT EXISTS decisions_au
|
|
93
|
-
AFTER UPDATE OF title, description, rationale, tags ON decisions BEGIN
|
|
94
|
-
INSERT INTO decisions_fts(decisions_fts, rowid, title, description, rationale, tags)
|
|
95
|
-
VALUES ('delete', old.id, old.title, old.description, old.rationale, old.tags);
|
|
96
|
-
INSERT INTO decisions_fts(rowid, title, description, rationale, tags)
|
|
97
|
-
VALUES (new.id, new.title, new.description, new.rationale, new.tags);
|
|
98
|
-
END;
|
|
81
|
+
this.db.exec(`
|
|
82
|
+
CREATE TRIGGER IF NOT EXISTS decisions_ai AFTER INSERT ON decisions BEGIN
|
|
83
|
+
INSERT INTO decisions_fts(rowid, title, description, rationale, tags)
|
|
84
|
+
VALUES (new.id, new.title, new.description, new.rationale, new.tags);
|
|
85
|
+
END;
|
|
86
|
+
|
|
87
|
+
CREATE TRIGGER IF NOT EXISTS decisions_ad AFTER DELETE ON decisions BEGIN
|
|
88
|
+
INSERT INTO decisions_fts(decisions_fts, rowid, title, description, rationale, tags)
|
|
89
|
+
VALUES ('delete', old.id, old.title, old.description, old.rationale, old.tags);
|
|
90
|
+
END;
|
|
91
|
+
|
|
92
|
+
CREATE TRIGGER IF NOT EXISTS decisions_au
|
|
93
|
+
AFTER UPDATE OF title, description, rationale, tags ON decisions BEGIN
|
|
94
|
+
INSERT INTO decisions_fts(decisions_fts, rowid, title, description, rationale, tags)
|
|
95
|
+
VALUES ('delete', old.id, old.title, old.description, old.rationale, old.tags);
|
|
96
|
+
INSERT INTO decisions_fts(rowid, title, description, rationale, tags)
|
|
97
|
+
VALUES (new.id, new.title, new.description, new.rationale, new.tags);
|
|
98
|
+
END;
|
|
99
99
|
`);
|
|
100
100
|
}
|
|
101
101
|
prepareStatements() {
|
|
102
|
-
this.stmtInsert = this.db.prepare(`
|
|
103
|
-
INSERT INTO decisions (title, description, rationale, alternatives, consequences,
|
|
104
|
-
related_files, tags, decided_at, decided_by, status)
|
|
105
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, 'active')
|
|
102
|
+
this.stmtInsert = this.db.prepare(`
|
|
103
|
+
INSERT INTO decisions (title, description, rationale, alternatives, consequences,
|
|
104
|
+
related_files, tags, decided_at, decided_by, status)
|
|
105
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, 'active')
|
|
106
106
|
`);
|
|
107
107
|
this.stmtGetById = this.db.prepare(`SELECT * FROM decisions WHERE id = ?`);
|
|
108
108
|
this.stmtUpdateStatus = this.db.prepare(`UPDATE decisions SET status = ? WHERE id = ?`);
|
|
@@ -112,12 +112,12 @@ export class DecisionLog {
|
|
|
112
112
|
this.stmtActive = this.db.prepare(`SELECT * FROM decisions WHERE status = 'active' ORDER BY decided_at DESC`);
|
|
113
113
|
this.stmtByStatus = this.db.prepare(`SELECT * FROM decisions WHERE status = ? ORDER BY decided_at DESC`);
|
|
114
114
|
this.stmtCount = this.db.prepare(`SELECT COUNT(*) AS cnt FROM decisions`);
|
|
115
|
-
this.stmtSearchFts = this.db.prepare(`
|
|
116
|
-
SELECT d.*, bm25(decisions_fts, 10.0, 5.0, 5.0, 2.0) AS rank
|
|
117
|
-
FROM decisions_fts f
|
|
118
|
-
JOIN decisions d ON d.id = f.rowid
|
|
119
|
-
WHERE decisions_fts MATCH ?
|
|
120
|
-
ORDER BY rank
|
|
115
|
+
this.stmtSearchFts = this.db.prepare(`
|
|
116
|
+
SELECT d.*, bm25(decisions_fts, 10.0, 5.0, 5.0, 2.0) AS rank
|
|
117
|
+
FROM decisions_fts f
|
|
118
|
+
JOIN decisions d ON d.id = f.rowid
|
|
119
|
+
WHERE decisions_fts MATCH ?
|
|
120
|
+
ORDER BY rank
|
|
121
121
|
`);
|
|
122
122
|
}
|
|
123
123
|
// ────────────────────────────────────────────────────────────
|
|
@@ -395,9 +395,9 @@ export class DecisionLog {
|
|
|
395
395
|
return;
|
|
396
396
|
// Remove oldest non-active decisions first
|
|
397
397
|
const toRemove = this.db
|
|
398
|
-
.prepare(`SELECT id FROM decisions
|
|
399
|
-
WHERE status != 'active'
|
|
400
|
-
ORDER BY decided_at ASC
|
|
398
|
+
.prepare(`SELECT id FROM decisions
|
|
399
|
+
WHERE status != 'active'
|
|
400
|
+
ORDER BY decided_at ASC
|
|
401
401
|
LIMIT ?`)
|
|
402
402
|
.all(excess);
|
|
403
403
|
const txn = this.db.transaction(() => {
|
|
@@ -422,8 +422,8 @@ export class DecisionLog {
|
|
|
422
422
|
fallbackLikeSearch(text) {
|
|
423
423
|
const pattern = `%${text}%`;
|
|
424
424
|
return this.db
|
|
425
|
-
.prepare(`SELECT *, 0 AS rank FROM decisions
|
|
426
|
-
WHERE title LIKE ? OR description LIKE ? OR rationale LIKE ?
|
|
425
|
+
.prepare(`SELECT *, 0 AS rank FROM decisions
|
|
426
|
+
WHERE title LIKE ? OR description LIKE ? OR rationale LIKE ?
|
|
427
427
|
ORDER BY decided_at DESC LIMIT 50`)
|
|
428
428
|
.all(pattern, pattern, pattern);
|
|
429
429
|
}
|
|
@@ -68,82 +68,82 @@ export class PersistentMemory {
|
|
|
68
68
|
// Schema
|
|
69
69
|
// ────────────────────────────────────────────────────────────
|
|
70
70
|
ensureSchema() {
|
|
71
|
-
this.db.exec(`
|
|
72
|
-
CREATE TABLE IF NOT EXISTS memories (
|
|
73
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
74
|
-
category TEXT NOT NULL,
|
|
75
|
-
content TEXT NOT NULL,
|
|
76
|
-
importance REAL NOT NULL,
|
|
77
|
-
tags TEXT NOT NULL DEFAULT '[]',
|
|
78
|
-
related_files TEXT NOT NULL DEFAULT '[]',
|
|
79
|
-
created_at INTEGER NOT NULL,
|
|
80
|
-
last_accessed_at INTEGER NOT NULL,
|
|
81
|
-
access_count INTEGER NOT NULL DEFAULT 0,
|
|
82
|
-
session_id TEXT NOT NULL DEFAULT '',
|
|
83
|
-
source TEXT NOT NULL DEFAULT 'agent'
|
|
84
|
-
);
|
|
85
|
-
|
|
86
|
-
CREATE INDEX IF NOT EXISTS idx_memories_category ON memories(category);
|
|
87
|
-
CREATE INDEX IF NOT EXISTS idx_memories_importance ON memories(importance DESC);
|
|
88
|
-
CREATE INDEX IF NOT EXISTS idx_memories_accessed ON memories(last_accessed_at DESC);
|
|
71
|
+
this.db.exec(`
|
|
72
|
+
CREATE TABLE IF NOT EXISTS memories (
|
|
73
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
74
|
+
category TEXT NOT NULL,
|
|
75
|
+
content TEXT NOT NULL,
|
|
76
|
+
importance REAL NOT NULL,
|
|
77
|
+
tags TEXT NOT NULL DEFAULT '[]',
|
|
78
|
+
related_files TEXT NOT NULL DEFAULT '[]',
|
|
79
|
+
created_at INTEGER NOT NULL,
|
|
80
|
+
last_accessed_at INTEGER NOT NULL,
|
|
81
|
+
access_count INTEGER NOT NULL DEFAULT 0,
|
|
82
|
+
session_id TEXT NOT NULL DEFAULT '',
|
|
83
|
+
source TEXT NOT NULL DEFAULT 'agent'
|
|
84
|
+
);
|
|
85
|
+
|
|
86
|
+
CREATE INDEX IF NOT EXISTS idx_memories_category ON memories(category);
|
|
87
|
+
CREATE INDEX IF NOT EXISTS idx_memories_importance ON memories(importance DESC);
|
|
88
|
+
CREATE INDEX IF NOT EXISTS idx_memories_accessed ON memories(last_accessed_at DESC);
|
|
89
89
|
`);
|
|
90
90
|
// FTS5 virtual table — created only if it doesn't already exist.
|
|
91
91
|
// We use a content-sync approach: manual sync via triggers.
|
|
92
92
|
try {
|
|
93
|
-
this.db.exec(`
|
|
94
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS memories_fts USING fts5(
|
|
95
|
-
content,
|
|
96
|
-
category,
|
|
97
|
-
tags,
|
|
98
|
-
content='memories',
|
|
99
|
-
content_rowid='id',
|
|
100
|
-
tokenize='porter unicode61'
|
|
101
|
-
);
|
|
93
|
+
this.db.exec(`
|
|
94
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS memories_fts USING fts5(
|
|
95
|
+
content,
|
|
96
|
+
category,
|
|
97
|
+
tags,
|
|
98
|
+
content='memories',
|
|
99
|
+
content_rowid='id',
|
|
100
|
+
tokenize='porter unicode61'
|
|
101
|
+
);
|
|
102
102
|
`);
|
|
103
103
|
}
|
|
104
104
|
catch {
|
|
105
105
|
// FTS table may already exist; ignore duplicate errors.
|
|
106
106
|
}
|
|
107
107
|
// Sync triggers — keep FTS in lockstep with the main table.
|
|
108
|
-
this.db.exec(`
|
|
109
|
-
CREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN
|
|
110
|
-
INSERT INTO memories_fts(rowid, content, category, tags)
|
|
111
|
-
VALUES (new.id, new.content, new.category, new.tags);
|
|
112
|
-
END;
|
|
113
|
-
|
|
114
|
-
CREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN
|
|
115
|
-
INSERT INTO memories_fts(memories_fts, rowid, content, category, tags)
|
|
116
|
-
VALUES ('delete', old.id, old.content, old.category, old.tags);
|
|
117
|
-
END;
|
|
118
|
-
|
|
119
|
-
CREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content, category, tags ON memories BEGIN
|
|
120
|
-
INSERT INTO memories_fts(memories_fts, rowid, content, category, tags)
|
|
121
|
-
VALUES ('delete', old.id, old.content, old.category, old.tags);
|
|
122
|
-
INSERT INTO memories_fts(rowid, content, category, tags)
|
|
123
|
-
VALUES (new.id, new.content, new.category, new.tags);
|
|
124
|
-
END;
|
|
108
|
+
this.db.exec(`
|
|
109
|
+
CREATE TRIGGER IF NOT EXISTS memories_ai AFTER INSERT ON memories BEGIN
|
|
110
|
+
INSERT INTO memories_fts(rowid, content, category, tags)
|
|
111
|
+
VALUES (new.id, new.content, new.category, new.tags);
|
|
112
|
+
END;
|
|
113
|
+
|
|
114
|
+
CREATE TRIGGER IF NOT EXISTS memories_ad AFTER DELETE ON memories BEGIN
|
|
115
|
+
INSERT INTO memories_fts(memories_fts, rowid, content, category, tags)
|
|
116
|
+
VALUES ('delete', old.id, old.content, old.category, old.tags);
|
|
117
|
+
END;
|
|
118
|
+
|
|
119
|
+
CREATE TRIGGER IF NOT EXISTS memories_au AFTER UPDATE OF content, category, tags ON memories BEGIN
|
|
120
|
+
INSERT INTO memories_fts(memories_fts, rowid, content, category, tags)
|
|
121
|
+
VALUES ('delete', old.id, old.content, old.category, old.tags);
|
|
122
|
+
INSERT INTO memories_fts(rowid, content, category, tags)
|
|
123
|
+
VALUES (new.id, new.content, new.category, new.tags);
|
|
124
|
+
END;
|
|
125
125
|
`);
|
|
126
126
|
}
|
|
127
127
|
prepareStatements() {
|
|
128
|
-
this.stmtInsert = this.db.prepare(`
|
|
129
|
-
INSERT INTO memories (category, content, importance, tags, related_files,
|
|
130
|
-
created_at, last_accessed_at, access_count, session_id, source)
|
|
131
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?)
|
|
128
|
+
this.stmtInsert = this.db.prepare(`
|
|
129
|
+
INSERT INTO memories (category, content, importance, tags, related_files,
|
|
130
|
+
created_at, last_accessed_at, access_count, session_id, source)
|
|
131
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, 0, ?, ?)
|
|
132
132
|
`);
|
|
133
|
-
this.stmtUpdate = this.db.prepare(`
|
|
134
|
-
UPDATE memories
|
|
135
|
-
SET category = ?, content = ?, importance = ?, tags = ?, related_files = ?,
|
|
136
|
-
last_accessed_at = ?, session_id = ?, source = ?
|
|
137
|
-
WHERE id = ?
|
|
133
|
+
this.stmtUpdate = this.db.prepare(`
|
|
134
|
+
UPDATE memories
|
|
135
|
+
SET category = ?, content = ?, importance = ?, tags = ?, related_files = ?,
|
|
136
|
+
last_accessed_at = ?, session_id = ?, source = ?
|
|
137
|
+
WHERE id = ?
|
|
138
138
|
`);
|
|
139
139
|
this.stmtDelete = this.db.prepare(`DELETE FROM memories WHERE id = ?`);
|
|
140
140
|
this.stmtGetById = this.db.prepare(`SELECT * FROM memories WHERE id = ?`);
|
|
141
|
-
this.stmtBumpAccess = this.db.prepare(`
|
|
142
|
-
UPDATE memories
|
|
143
|
-
SET access_count = access_count + 1,
|
|
144
|
-
last_accessed_at = ?,
|
|
145
|
-
importance = MIN(1.0, importance + 0.1)
|
|
146
|
-
WHERE id = ?
|
|
141
|
+
this.stmtBumpAccess = this.db.prepare(`
|
|
142
|
+
UPDATE memories
|
|
143
|
+
SET access_count = access_count + 1,
|
|
144
|
+
last_accessed_at = ?,
|
|
145
|
+
importance = MIN(1.0, importance + 0.1)
|
|
146
|
+
WHERE id = ?
|
|
147
147
|
`);
|
|
148
148
|
this.stmtAll = this.db.prepare(`SELECT * FROM memories ORDER BY importance DESC`);
|
|
149
149
|
this.stmtCount = this.db.prepare(`SELECT COUNT(*) AS cnt FROM memories`);
|
|
@@ -152,18 +152,18 @@ export class PersistentMemory {
|
|
|
152
152
|
this.stmtOldest = this.db.prepare(`SELECT MIN(created_at) AS ts FROM memories`);
|
|
153
153
|
this.stmtNewest = this.db.prepare(`SELECT MAX(created_at) AS ts FROM memories`);
|
|
154
154
|
this.stmtTotalAccess = this.db.prepare(`SELECT SUM(access_count) AS total FROM memories`);
|
|
155
|
-
this.stmtPrunable = this.db.prepare(`
|
|
156
|
-
SELECT id FROM memories
|
|
157
|
-
WHERE importance < ?
|
|
158
|
-
ORDER BY importance ASC, last_accessed_at ASC
|
|
159
|
-
LIMIT ?
|
|
155
|
+
this.stmtPrunable = this.db.prepare(`
|
|
156
|
+
SELECT id FROM memories
|
|
157
|
+
WHERE importance < ?
|
|
158
|
+
ORDER BY importance ASC, last_accessed_at ASC
|
|
159
|
+
LIMIT ?
|
|
160
160
|
`);
|
|
161
|
-
this.stmtSearchFts = this.db.prepare(`
|
|
162
|
-
SELECT m.*, bm25(memories_fts, 10.0, 5.0, 2.0) AS rank
|
|
163
|
-
FROM memories_fts f
|
|
164
|
-
JOIN memories m ON m.id = f.rowid
|
|
165
|
-
WHERE memories_fts MATCH ?
|
|
166
|
-
ORDER BY rank
|
|
161
|
+
this.stmtSearchFts = this.db.prepare(`
|
|
162
|
+
SELECT m.*, bm25(memories_fts, 10.0, 5.0, 2.0) AS rank
|
|
163
|
+
FROM memories_fts f
|
|
164
|
+
JOIN memories m ON m.id = f.rowid
|
|
165
|
+
WHERE memories_fts MATCH ?
|
|
166
|
+
ORDER BY rank
|
|
167
167
|
`);
|
|
168
168
|
}
|
|
169
169
|
// ────────────────────────────────────────────────────────────
|