pmem-ai 0.7.2 → 0.7.4

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 (55) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/README.md +29 -27
  3. package/dist/commands/capture.d.ts +8 -0
  4. package/dist/commands/capture.d.ts.map +1 -0
  5. package/dist/commands/capture.js +69 -0
  6. package/dist/commands/capture.js.map +1 -0
  7. package/dist/commands/context.d.ts +5 -0
  8. package/dist/commands/context.d.ts.map +1 -0
  9. package/dist/commands/context.js +109 -0
  10. package/dist/commands/context.js.map +1 -0
  11. package/dist/commands/install.d.ts +5 -0
  12. package/dist/commands/install.d.ts.map +1 -1
  13. package/dist/commands/install.js +54 -35
  14. package/dist/commands/install.js.map +1 -1
  15. package/dist/commands/mcp.d.ts +1 -1
  16. package/dist/commands/mcp.d.ts.map +1 -1
  17. package/dist/commands/mcp.js +2 -2
  18. package/dist/commands/mcp.js.map +1 -1
  19. package/dist/commands/rebuild.d.ts.map +1 -1
  20. package/dist/commands/rebuild.js +51 -7
  21. package/dist/commands/rebuild.js.map +1 -1
  22. package/dist/commands/verify.d.ts +1 -0
  23. package/dist/commands/verify.d.ts.map +1 -1
  24. package/dist/commands/verify.js +6 -3
  25. package/dist/commands/verify.js.map +1 -1
  26. package/dist/core/agentRules.d.ts +13 -0
  27. package/dist/core/agentRules.d.ts.map +1 -0
  28. package/dist/core/agentRules.js +131 -0
  29. package/dist/core/agentRules.js.map +1 -0
  30. package/dist/core/capture.d.ts +15 -0
  31. package/dist/core/capture.d.ts.map +1 -0
  32. package/dist/core/capture.js +380 -0
  33. package/dist/core/capture.js.map +1 -0
  34. package/dist/core/db.d.ts +20 -0
  35. package/dist/core/db.d.ts.map +1 -1
  36. package/dist/core/db.js +30 -0
  37. package/dist/core/db.js.map +1 -1
  38. package/dist/core/query/context.d.ts +3 -0
  39. package/dist/core/query/context.d.ts.map +1 -0
  40. package/dist/core/query/context.js +158 -0
  41. package/dist/core/query/context.js.map +1 -0
  42. package/dist/index.js +46 -4
  43. package/dist/index.js.map +1 -1
  44. package/dist/mcp/security.d.ts +4 -0
  45. package/dist/mcp/security.d.ts.map +1 -1
  46. package/dist/mcp/security.js +35 -0
  47. package/dist/mcp/security.js.map +1 -1
  48. package/dist/mcp/server.d.ts +1 -1
  49. package/dist/mcp/server.d.ts.map +1 -1
  50. package/dist/mcp/server.js +73 -5
  51. package/dist/mcp/server.js.map +1 -1
  52. package/dist/types.d.ts +31 -0
  53. package/dist/types.d.ts.map +1 -1
  54. package/package.json +5 -2
  55. package/skills/pmem/SKILL.md +11 -19
@@ -0,0 +1,380 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.captureCore = captureCore;
37
+ const path = __importStar(require("path"));
38
+ const fs = __importStar(require("fs"));
39
+ const crypto = __importStar(require("crypto"));
40
+ const child_process_1 = require("child_process");
41
+ const fs_1 = require("./fs");
42
+ const manifest_1 = require("./manifest");
43
+ const rebuild_1 = require("../commands/rebuild");
44
+ const verify_1 = require("../commands/verify");
45
+ const db_1 = require("./db");
46
+ const status_1 = require("./query/status");
47
+ function captureCore(pmemPath, options = {}) {
48
+ const cwd = process.cwd();
49
+ if (!(0, fs_1.fileExists)(pmemPath)) {
50
+ return {
51
+ success: false,
52
+ message: 'No .pmem directory found. Run pmem init first.'
53
+ };
54
+ }
55
+ // 1. Detect changed files
56
+ let status;
57
+ try {
58
+ status = (0, status_1.statusQuery)(pmemPath);
59
+ }
60
+ catch (err) {
61
+ return {
62
+ success: false,
63
+ message: `Failed to detect changes: ${err.message}`
64
+ };
65
+ }
66
+ const changedFiles = (status.changes || []).filter(f => !f.path.startsWith('.pmem/') && !f.path.startsWith('.pmem\\') && f.path !== '.pmem');
67
+ if (changedFiles.length === 0 && !options.force) {
68
+ return {
69
+ success: true,
70
+ message: 'No changed files detected. Memory is up-to-date.',
71
+ skipped: true
72
+ };
73
+ }
74
+ // 2. Compute git/mtime diff hash for duplicate check
75
+ let diffHash = '';
76
+ try {
77
+ const isGit = (() => {
78
+ try {
79
+ (0, child_process_1.execSync)('git rev-parse --git-dir', { cwd, stdio: 'ignore' });
80
+ return true;
81
+ }
82
+ catch {
83
+ return false;
84
+ }
85
+ })();
86
+ if (isGit) {
87
+ const statusOutput = (0, child_process_1.execSync)("git status --porcelain --untracked-files=all -- . ':!.pmem'", { cwd, encoding: 'utf8', timeout: 5000 });
88
+ const diffOutput = (0, child_process_1.execSync)("git diff HEAD -- . ':!.pmem'", { cwd, encoding: 'utf8', timeout: 5000 });
89
+ const untrackedHashes = changedFiles
90
+ .filter(f => f.status.includes('?') || f.status === '??')
91
+ .map(f => {
92
+ const fullPath = path.join(cwd, f.path);
93
+ if (!(0, fs_1.fileExists)(fullPath))
94
+ return `${f.path}:missing`;
95
+ try {
96
+ const content = fs.readFileSync(fullPath);
97
+ return `${f.path}:${crypto.createHash('sha256').update(content).digest('hex')}`;
98
+ }
99
+ catch {
100
+ return `${f.path}:error`;
101
+ }
102
+ })
103
+ .join('\n');
104
+ const combined = [
105
+ statusOutput,
106
+ diffOutput,
107
+ untrackedHashes
108
+ ].join('\n---pmem-diff-boundary---');
109
+ diffHash = crypto.createHash('sha256').update(combined).digest('hex');
110
+ }
111
+ else {
112
+ // Fallback mtime-based hash of changed files and mtimes
113
+ const mtimeList = changedFiles.map(c => {
114
+ const fullPath = path.join(cwd, c.path);
115
+ const mtime = (0, fs_1.fileExists)(fullPath) ? (0, fs_1.getFileMtime)(fullPath) || 0 : 0;
116
+ return `${c.path}:${mtime}:${c.status}`;
117
+ }).join('\n');
118
+ diffHash = crypto.createHash('sha256').update(mtimeList).digest('hex');
119
+ }
120
+ }
121
+ catch (err) {
122
+ // If diff computation fails, we use a fallback hash based on file names only
123
+ const fallbackList = changedFiles.map(c => `${c.path}:${c.status}`).join('\n');
124
+ diffHash = crypto.createHash('sha256').update(fallbackList).digest('hex');
125
+ }
126
+ // 3. Find the latest trace card and check its diff_hash
127
+ const traceDir = path.resolve(pmemPath, 'traces');
128
+ (0, fs_1.ensureDir)(traceDir);
129
+ if (!options.force && diffHash) {
130
+ try {
131
+ const existingTraceFiles = fs.readdirSync(traceDir)
132
+ .filter((f) => f.endsWith('.md'))
133
+ .sort((a, b) => b.localeCompare(a)); // Sort descending to get latest first
134
+ if (existingTraceFiles.length > 0) {
135
+ const latestTracePath = path.join(traceDir, existingTraceFiles[0]);
136
+ const latestTraceContent = (0, fs_1.readFile)(latestTracePath) || '';
137
+ // Match diff_hash: "..." or diff_hash: ...
138
+ const diffHashMatch = latestTraceContent.match(/diff_hash:\s*["']?([a-fA-F0-9]+)["']?/);
139
+ if (diffHashMatch && diffHashMatch[1] === diffHash) {
140
+ return {
141
+ success: true,
142
+ message: 'No new capture created. Existing trace already records this diff.',
143
+ skipped: true
144
+ };
145
+ }
146
+ }
147
+ }
148
+ catch {
149
+ // Ignore directory read/parse errors for safety
150
+ }
151
+ }
152
+ // 4. Resolve summary
153
+ let summary = options.summary;
154
+ if (!summary) {
155
+ // Try to get latest task from session.json
156
+ const sessionPath = path.join(pmemPath, 'session.json');
157
+ if ((0, fs_1.fileExists)(sessionPath)) {
158
+ try {
159
+ const sessionContent = (0, fs_1.readFile)(sessionPath);
160
+ if (sessionContent) {
161
+ const sessionData = JSON.parse(sessionContent);
162
+ if (sessionData.latest_task) {
163
+ summary = `Capture: ${sessionData.latest_task}`;
164
+ }
165
+ }
166
+ }
167
+ catch {
168
+ // Fallback if parsing fails
169
+ }
170
+ }
171
+ }
172
+ if (!summary) {
173
+ // Fallback: list changed files
174
+ const filePaths = changedFiles.map(f => f.path);
175
+ summary = `Automated capture: changed ${filePaths.join(', ')}`;
176
+ }
177
+ // 5. Resolve next
178
+ const next = options.next || 'Continue development.';
179
+ // 6. Create trace card
180
+ const today = new Date().toISOString().split('T')[0];
181
+ let traceFile = '';
182
+ try {
183
+ const existingTraces = fs.readdirSync(traceDir)
184
+ .filter((f) => f.startsWith(today) && f.endsWith('.md'))
185
+ .length;
186
+ const traceNum = String(existingTraces + 1).padStart(3, '0');
187
+ traceFile = path.resolve(traceDir, `${today}-${traceNum}.md`);
188
+ // Strict path traversal validation
189
+ if (!traceFile.startsWith(traceDir)) {
190
+ throw new Error('Security: trace path traversal detected');
191
+ }
192
+ const cardId = `trace.${today}-${traceNum}`;
193
+ const traceContent = `---
194
+ id: ${cardId}
195
+ type: trace
196
+ created: ${new Date().toISOString()}
197
+ diff_hash: ${diffHash}
198
+ ---
199
+
200
+ # Capture: ${summary}
201
+
202
+ ## What changed
203
+
204
+ ${summary}
205
+
206
+ ## Changed files
207
+
208
+ ${changedFiles.map(f => `- ${f.path}`).join('\n')}
209
+
210
+ ## Next
211
+
212
+ - ${next}
213
+ `;
214
+ (0, fs_1.atomicWrite)(traceFile, traceContent);
215
+ }
216
+ catch (err) {
217
+ return {
218
+ success: false,
219
+ message: `Failed to write trace card: ${err.message}`
220
+ };
221
+ }
222
+ // 7. Update .pmem/next.md in managed block
223
+ const nextPath = path.join(pmemPath, 'next.md');
224
+ const managedStart = '<!-- pmem:next:start -->';
225
+ const managedEnd = '<!-- pmem:next:end -->';
226
+ const managedContent = `${managedStart}\n- Recommended next step: ${next}\n${managedEnd}`;
227
+ try {
228
+ if ((0, fs_1.fileExists)(nextPath)) {
229
+ const currentNext = (0, fs_1.readFile)(nextPath) || '';
230
+ const startIndex = currentNext.indexOf(managedStart);
231
+ const endIndex = currentNext.indexOf(managedEnd);
232
+ if (startIndex >= 0 && endIndex >= 0 && endIndex > startIndex) {
233
+ const updatedNext = currentNext.substring(0, startIndex) +
234
+ managedContent +
235
+ currentNext.substring(endIndex + managedEnd.length);
236
+ (0, fs_1.writeFile)(nextPath, updatedNext);
237
+ }
238
+ else {
239
+ // Managed block not found, append it
240
+ const spacer = currentNext.endsWith('\n') ? '' : '\n';
241
+ (0, fs_1.writeFile)(nextPath, `${currentNext}${spacer}\n${managedContent}\n`);
242
+ }
243
+ }
244
+ else {
245
+ // Create new file
246
+ (0, fs_1.writeFile)(nextPath, `# Next Steps\n\n${managedContent}\n`);
247
+ }
248
+ }
249
+ catch (err) {
250
+ return {
251
+ success: false,
252
+ message: `Failed to update next.md: ${err.message}`
253
+ };
254
+ }
255
+ // 8. DB transaction to resolve dirty flags
256
+ const dbPath = path.join(pmemPath, 'pmem.db');
257
+ let db = null;
258
+ let transactionActive = false;
259
+ let backupManifest = null;
260
+ const manifestPath = path.join(pmemPath, 'manifest.yml');
261
+ const dirtyPath = path.join(pmemPath, '.dirty');
262
+ try {
263
+ const manifest = (0, manifest_1.loadManifest)(pmemPath);
264
+ if (manifest) {
265
+ backupManifest = JSON.stringify(manifest);
266
+ }
267
+ if ((0, fs_1.fileExists)(dbPath)) {
268
+ db = (0, db_1.openDatabase)(pmemPath);
269
+ (0, db_1.createSchema)(db);
270
+ // Start transaction
271
+ db.prepare('BEGIN TRANSACTION').run();
272
+ transactionActive = true;
273
+ const activeSession = (0, db_1.getActiveSession)(db);
274
+ // Auto mark changed files dirty first to make sure they are tracked before resolving
275
+ const allPaths = db.prepare("SELECT card_id, path FROM paths").all();
276
+ const dirtyCards = [];
277
+ for (const change of changedFiles) {
278
+ for (const p of allPaths) {
279
+ if (p.card_id && p.path && change.path) {
280
+ // Check if matches
281
+ const isMatch = (() => {
282
+ const p1 = change.path.replace(/\\/g, '/');
283
+ const p2 = p.path.replace(/\\/g, '/');
284
+ return p1 === p2 || p1.endsWith('/' + p2) || p2.endsWith('/' + p1);
285
+ })();
286
+ if (isMatch) {
287
+ if (!dirtyCards.includes(p.card_id)) {
288
+ (0, db_1.insertDirtyFlag)(db, 'card', p.card_id, 'file_changed: ' + change.path, activeSession?.id);
289
+ dirtyCards.push(p.card_id);
290
+ }
291
+ }
292
+ }
293
+ }
294
+ }
295
+ // Resolve affected cards dirty flags
296
+ const affectedCards = status.affected_cards || [];
297
+ const cardsToResolve = Array.from(new Set([
298
+ ...dirtyCards,
299
+ ...affectedCards.map((ac) => ac.card_id)
300
+ ]));
301
+ for (const cardId of cardsToResolve) {
302
+ (0, db_1.resolveDirtyFlags)(db, 'card', cardId);
303
+ }
304
+ // Resolve project level dirty flag
305
+ (0, db_1.resolveDirtyFlags)(db, 'project', '.pmem');
306
+ // Log update to SQLite
307
+ const todayNum = path.basename(traceFile, '.md').split('-').pop() || '001';
308
+ const traceCardId = `trace.${today}-${todayNum}`;
309
+ (0, db_1.insertUpdateLog)(db, 'confirm_update', summary, activeSession?.id, [traceCardId], true);
310
+ // Commit transaction
311
+ db.prepare('COMMIT').run();
312
+ transactionActive = false;
313
+ (0, db_1.closeDatabase)();
314
+ }
315
+ // Clean up dirty state in files
316
+ if ((0, fs_1.fileExists)(dirtyPath)) {
317
+ fs.unlinkSync(dirtyPath);
318
+ }
319
+ if (manifest) {
320
+ manifest.memory_status.dirty = false;
321
+ manifest.memory_status.dirty_reason = null;
322
+ manifest.memory_status.dirty_since = null;
323
+ (0, manifest_1.saveManifest)(pmemPath, manifest);
324
+ }
325
+ }
326
+ catch (err) {
327
+ if (db && transactionActive) {
328
+ try {
329
+ db.prepare('ROLLBACK').run();
330
+ }
331
+ catch { }
332
+ }
333
+ try {
334
+ (0, db_1.closeDatabase)();
335
+ }
336
+ catch { }
337
+ // Rollback manifest
338
+ if (backupManifest && (0, fs_1.fileExists)(manifestPath)) {
339
+ try {
340
+ (0, manifest_1.saveManifest)(pmemPath, JSON.parse(backupManifest));
341
+ }
342
+ catch { }
343
+ }
344
+ // Rollback trace file
345
+ if ((0, fs_1.fileExists)(traceFile)) {
346
+ try {
347
+ fs.unlinkSync(traceFile);
348
+ }
349
+ catch { }
350
+ }
351
+ return {
352
+ success: false,
353
+ message: `Failed SQLite transaction: ${err.message}`
354
+ };
355
+ }
356
+ // 9. Run rebuild (incremental or full)
357
+ try {
358
+ (0, rebuild_1.rebuildCommand)({ full: options.full === true });
359
+ }
360
+ catch (err) {
361
+ return {
362
+ success: false,
363
+ message: `Failed rebuild: ${err.message}`,
364
+ tracePath: traceFile
365
+ };
366
+ }
367
+ // 10. Run lightweight verify
368
+ try {
369
+ (0, verify_1.verifyCommand)({ fix: false, fixLocks: false, fixStale: false, relaxed: true, noExit: true });
370
+ }
371
+ catch (err) {
372
+ // Verification warning only, do not fail capture
373
+ }
374
+ return {
375
+ success: true,
376
+ message: 'Memory sync and update completed successfully.',
377
+ tracePath: traceFile
378
+ };
379
+ }
380
+ //# sourceMappingURL=capture.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../../src/core/capture.ts"],"names":[],"mappings":"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"}
package/dist/core/db.d.ts CHANGED
@@ -12,6 +12,17 @@ export declare function upsertCard(db: Database.Database, card: import('../types
12
12
  export declare function deleteCardEdges(db: Database.Database, cardId: string): void;
13
13
  export declare function deleteExplicitCardEdges(db: Database.Database, cardId: string): void;
14
14
  export declare function deleteMentionEdges(db: Database.Database, cardId: string): void;
15
+ /**
16
+ * v0.7.3 (issue #6): per-card inferred edge cleanup.
17
+ *
18
+ * Rebuilds need to re-derive inferred edges (e.g. task→module
19
+ * next_step_of) from the card's *current* frontmatter. Without this,
20
+ * an incremental rebuild that only re-processes one card would leave
21
+ * stale inferred edges in the DB that point to modules the card no
22
+ * longer references. Used by `rebuildCommand` for every re-processed
23
+ * card, in both full and incremental modes.
24
+ */
25
+ export declare function deleteInferredCardEdges(db: Database.Database, cardId: string): void;
15
26
  export declare function insertEdge(db: Database.Database, edge: import('../types').EdgeRow): void;
16
27
  export declare function deleteCardAliases(db: Database.Database, cardId: string): void;
17
28
  export declare function insertAlias(db: Database.Database, cardId: string, alias: string, language?: string): void;
@@ -62,4 +73,13 @@ export declare function getEdgesForCard(db: Database.Database, cardId: string, s
62
73
  export declare function updateEdgeSource(db: Database.Database, edgeIds: number[], newSource: 'explicit' | 'inferred', newConfidence: number): number;
63
74
  export declare function deleteEdgesByIds(db: Database.Database, edgeIds: number[]): number;
64
75
  export declare function getOrphanEdges(db: Database.Database): EdgeRow[];
76
+ /**
77
+ * v0.7.3 (issue #6): prune edges whose endpoints reference cards that
78
+ * no longer exist in the `cards` table. Returns the number of rows
79
+ * deleted. Called by `rebuildCommand --full` after the rebuild loop
80
+ * so that a deleted-card file can't leave behind edges that point to
81
+ * it. The matching `select` form lives in `getOrphanEdges` for ad-hoc
82
+ * inspection.
83
+ */
84
+ export declare function deleteOrphanEdges(db: Database.Database): number;
65
85
  //# sourceMappingURL=db.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
package/dist/core/db.js CHANGED
@@ -48,6 +48,7 @@ exports.upsertCard = upsertCard;
48
48
  exports.deleteCardEdges = deleteCardEdges;
49
49
  exports.deleteExplicitCardEdges = deleteExplicitCardEdges;
50
50
  exports.deleteMentionEdges = deleteMentionEdges;
51
+ exports.deleteInferredCardEdges = deleteInferredCardEdges;
51
52
  exports.insertEdge = insertEdge;
52
53
  exports.deleteCardAliases = deleteCardAliases;
53
54
  exports.insertAlias = insertAlias;
@@ -72,6 +73,7 @@ exports.getEdgesForCard = getEdgesForCard;
72
73
  exports.updateEdgeSource = updateEdgeSource;
73
74
  exports.deleteEdgesByIds = deleteEdgesByIds;
74
75
  exports.getOrphanEdges = getOrphanEdges;
76
+ exports.deleteOrphanEdges = deleteOrphanEdges;
75
77
  const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
76
78
  const path = __importStar(require("path"));
77
79
  const fs_1 = require("./fs");
@@ -261,6 +263,19 @@ function deleteExplicitCardEdges(db, cardId) {
261
263
  function deleteMentionEdges(db, cardId) {
262
264
  db.prepare("DELETE FROM edges WHERE from_id = ? AND source = 'mention'").run(cardId);
263
265
  }
266
+ /**
267
+ * v0.7.3 (issue #6): per-card inferred edge cleanup.
268
+ *
269
+ * Rebuilds need to re-derive inferred edges (e.g. task→module
270
+ * next_step_of) from the card's *current* frontmatter. Without this,
271
+ * an incremental rebuild that only re-processes one card would leave
272
+ * stale inferred edges in the DB that point to modules the card no
273
+ * longer references. Used by `rebuildCommand` for every re-processed
274
+ * card, in both full and incremental modes.
275
+ */
276
+ function deleteInferredCardEdges(db, cardId) {
277
+ db.prepare("DELETE FROM edges WHERE from_id = ? AND source = 'inferred'").run(cardId);
278
+ }
264
279
  function insertEdge(db, edge) {
265
280
  db.prepare(`
266
281
  INSERT OR IGNORE INTO edges (from_id, to_id, type, source, confidence, created_at, updated_at)
@@ -378,4 +393,19 @@ function getOrphanEdges(db) {
378
393
  WHERE c1.id IS NULL OR c2.id IS NULL
379
394
  `).all();
380
395
  }
396
+ /**
397
+ * v0.7.3 (issue #6): prune edges whose endpoints reference cards that
398
+ * no longer exist in the `cards` table. Returns the number of rows
399
+ * deleted. Called by `rebuildCommand --full` after the rebuild loop
400
+ * so that a deleted-card file can't leave behind edges that point to
401
+ * it. The matching `select` form lives in `getOrphanEdges` for ad-hoc
402
+ * inspection.
403
+ */
404
+ function deleteOrphanEdges(db) {
405
+ return db.prepare(`
406
+ DELETE FROM edges
407
+ WHERE from_id NOT IN (SELECT id FROM cards WHERE is_deleted = 0)
408
+ OR to_id NOT IN (SELECT id FROM cards WHERE is_deleted = 0)
409
+ `).run().changes;
410
+ }
381
411
  //# sourceMappingURL=db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/core/db.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ContextQueryResult } from '../../types';
2
+ export declare function contextQuery(pmemPath: string, task: string, budget?: number): ContextQueryResult;
3
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/core/query/context.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAmB,MAAM,aAAa,CAAC;AAEvE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,SAAO,GAAG,kBAAkB,CAkI9F"}