@velvetmonkey/flywheel-memory 2.0.38 → 2.0.39
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.js +12 -3
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -17369,6 +17369,7 @@ async function runPostIndexWork(index) {
|
|
|
17369
17369
|
const entitiesAfter = stateDb ? getAllEntitiesFromDb3(stateDb) : [];
|
|
17370
17370
|
const entityDiff = computeEntityDiff(entitiesBefore, entitiesAfter);
|
|
17371
17371
|
const categoryChanges = [];
|
|
17372
|
+
const descriptionChanges = [];
|
|
17372
17373
|
if (stateDb) {
|
|
17373
17374
|
const beforeMap = new Map(entitiesBefore.map((e) => [e.name, e]));
|
|
17374
17375
|
const insertChange = stateDb.db.prepare(
|
|
@@ -17380,9 +17381,17 @@ async function runPostIndexWork(index) {
|
|
|
17380
17381
|
insertChange.run(after.name, "category", before.category, after.category);
|
|
17381
17382
|
categoryChanges.push({ entity: after.name, from: before.category, to: after.category });
|
|
17382
17383
|
}
|
|
17384
|
+
if (before) {
|
|
17385
|
+
const oldDesc = before.description ?? null;
|
|
17386
|
+
const newDesc = after.description ?? null;
|
|
17387
|
+
if (oldDesc !== newDesc) {
|
|
17388
|
+
insertChange.run(after.name, "description", oldDesc, newDesc);
|
|
17389
|
+
descriptionChanges.push({ entity: after.name, from: oldDesc, to: newDesc });
|
|
17390
|
+
}
|
|
17391
|
+
}
|
|
17383
17392
|
}
|
|
17384
17393
|
}
|
|
17385
|
-
tracker.end({ entity_count: entitiesAfter.length, ...entityDiff, category_changes: categoryChanges });
|
|
17394
|
+
tracker.end({ entity_count: entitiesAfter.length, ...entityDiff, category_changes: categoryChanges, description_changes: descriptionChanges });
|
|
17386
17395
|
serverLog("watcher", `Entity scan: ${entitiesAfter.length} entities`);
|
|
17387
17396
|
tracker.start("hub_scores", { entity_count: entitiesAfter.length });
|
|
17388
17397
|
const hubUpdated = await exportHubScores(vaultIndex, stateDb);
|
|
@@ -17521,6 +17530,7 @@ async function runPostIndexWork(index) {
|
|
|
17521
17530
|
}
|
|
17522
17531
|
}
|
|
17523
17532
|
const linkDiffs = [];
|
|
17533
|
+
const survivedLinks = [];
|
|
17524
17534
|
if (stateDb) {
|
|
17525
17535
|
const upsertHistory = stateDb.db.prepare(`
|
|
17526
17536
|
INSERT INTO note_link_history (note_path, target) VALUES (?, ?)
|
|
@@ -17536,7 +17546,6 @@ async function runPostIndexWork(index) {
|
|
|
17536
17546
|
const getEdgeCount = stateDb.db.prepare(
|
|
17537
17547
|
"SELECT edits_survived FROM note_link_history WHERE note_path=? AND target=?"
|
|
17538
17548
|
);
|
|
17539
|
-
const survivedLinks2 = [];
|
|
17540
17549
|
for (const entry of forwardLinkResults) {
|
|
17541
17550
|
const currentSet = /* @__PURE__ */ new Set([
|
|
17542
17551
|
...entry.resolved.map((n) => n.toLowerCase()),
|
|
@@ -17557,7 +17566,7 @@ async function runPostIndexWork(index) {
|
|
|
17557
17566
|
upsertHistory.run(entry.file, link);
|
|
17558
17567
|
const countRow = getEdgeCount.get(entry.file, link);
|
|
17559
17568
|
if (countRow) {
|
|
17560
|
-
|
|
17569
|
+
survivedLinks.push({ entity: link, file: entry.file, count: countRow.edits_survived });
|
|
17561
17570
|
}
|
|
17562
17571
|
const hit = checkThreshold.get(entry.file, link);
|
|
17563
17572
|
if (hit) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@velvetmonkey/flywheel-memory",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.39",
|
|
4
4
|
"description": "MCP server that gives Claude full read/write access to your Obsidian vault. 42 tools for search, backlinks, graph queries, mutations, and hybrid semantic search.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
54
|
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
55
|
-
"@velvetmonkey/vault-core": "^2.0.
|
|
55
|
+
"@velvetmonkey/vault-core": "^2.0.39",
|
|
56
56
|
"better-sqlite3": "^11.0.0",
|
|
57
57
|
"chokidar": "^4.0.0",
|
|
58
58
|
"gray-matter": "^4.0.3",
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"engines": {
|
|
75
75
|
"node": ">=18.0.0"
|
|
76
76
|
},
|
|
77
|
-
"license": "
|
|
77
|
+
"license": "Apache-2.0",
|
|
78
78
|
"files": [
|
|
79
79
|
"dist",
|
|
80
80
|
"README.md",
|