@owrede/vault-memory 2.2.1 → 2.3.1
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/CHANGELOG.md +54 -0
- package/README.md +4 -2
- package/dist/cli.js +364 -62
- package/dist/cli.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,60 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
14
14
|
|
|
15
15
|
_Nothing yet._
|
|
16
16
|
|
|
17
|
+
## [2.3.1] — 2026-07-02
|
|
18
|
+
|
|
19
|
+
### Fixed
|
|
20
|
+
|
|
21
|
+
- **`index --full` no longer crashes with `FOREIGN KEY constraint failed`** (#16).
|
|
22
|
+
The full-mode wipe loop deleted chunks while `sections.chunk_id_first/last`
|
|
23
|
+
(`REFERENCES chunks(id)`, no `ON DELETE`) still pointed at them, so any vault
|
|
24
|
+
with a populated `sections` table failed to full-index. Sections are now
|
|
25
|
+
deleted before chunks in the wipe loop, matching the per-note re-index path.
|
|
26
|
+
- **Concurrent ContextFit ingests no longer corrupt the KB** (#17). A CLI
|
|
27
|
+
`index` running alongside a serve-side debounced re-ingest (or a second stale
|
|
28
|
+
`serve`) had both `contextfit ingest` calls clear and rewrite the same KB
|
|
29
|
+
directory; the loser crashed mid-write and could leave a half-written KB. A
|
|
30
|
+
dedicated per-vault ingest mutex (`locks/<vault>.ingest.lock`, separate from
|
|
31
|
+
the staleness daemon's lifetime-held `<vault>.lock`) now serializes all four
|
|
32
|
+
ingest call sites. A second-comer marks the vault dirty and returns
|
|
33
|
+
immediately (no wait, no wasted double-rebuild); the in-flight holder does one
|
|
34
|
+
trailing re-ingest so the latest change is never lost across processes, and a
|
|
35
|
+
crash-stranded dirty flag is honored on the next server start.
|
|
36
|
+
|
|
37
|
+
## [2.3.0] — 2026-07-01
|
|
38
|
+
|
|
39
|
+
### Added
|
|
40
|
+
|
|
41
|
+
- **Datacore/Dataview rendered indexing — foundation** (ADR-033). Phase 1 strips
|
|
42
|
+
Datacore/Dataview query source from indexed text so raw query blocks no longer
|
|
43
|
+
pollute search (`src/reader/datacore.ts`). Phase 2 adds migration 016
|
|
44
|
+
(`notes.rendered_source_hash`) as the schema foundation for indexing rendered
|
|
45
|
+
content supplied by the Obsidian plugin. _Note: later phases of ADR-033 are not
|
|
46
|
+
yet complete; this release ships the foundation only._
|
|
47
|
+
|
|
48
|
+
### Fixed
|
|
49
|
+
|
|
50
|
+
- **Incremental full-vault indexer now re-indexes changed notes** (#14). `indexVault`
|
|
51
|
+
in `incremental` mode decided whether to re-index from chunk count alone, so a note
|
|
52
|
+
whose body changed but already had chunks kept stale chunks/embeddings/sections/edges
|
|
53
|
+
while its `hash`/`content` were updated in place. The reindex decision now mirrors the
|
|
54
|
+
single-note indexer's three-way logic (hash-unchanged / frontmatter-only / body-changed),
|
|
55
|
+
and a latent foreign-key ordering bug (sections must be deleted before chunks) is fixed.
|
|
56
|
+
- **MCP server version is derived from `package.json`** (#14). `server.ts` hardcoded
|
|
57
|
+
`VERSION = "1.0.0"`, so the server advertised the wrong version and sink provisioning
|
|
58
|
+
stamped a stale sentinel. A new `src/version.ts` is the single source of truth.
|
|
59
|
+
- **Frontmatter long-string serialization** (#14). Long string values are written
|
|
60
|
+
single-line instead of being folded into a `>-` YAML block scalar that Obsidian's
|
|
61
|
+
Properties editor mishandles.
|
|
62
|
+
|
|
63
|
+
### Changed
|
|
64
|
+
|
|
65
|
+
- **`engines.node` narrowed to `>=22 <26`** (#14). Node 26+ has no `better-sqlite3`
|
|
66
|
+
prebuild for the new ABI and building from source currently fails. README prerequisites
|
|
67
|
+
updated accordingly.
|
|
68
|
+
- **Release versions reconciled to 2.3.0** across `package.json`, `plugin/package.json`,
|
|
69
|
+
`plugin/manifest.json`, and README (#14).
|
|
70
|
+
|
|
17
71
|
## [2.2.1] — 2026-06-29
|
|
18
72
|
|
|
19
73
|
### Fixed
|
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
**Local-first, source-agnostic-ready agentic knowledge layer over your Obsidian notes,
|
|
4
4
|
exposed to any MCP-aware agent.**
|
|
5
5
|
|
|
6
|
-
> See [CHANGELOG.md](./CHANGELOG.md) for release history. Latest: **v2.
|
|
6
|
+
> See [CHANGELOG.md](./CHANGELOG.md) for release history. Latest: **v2.3.1** — additive
|
|
7
7
|
> over v1.x; the 23 v1 tool names + input schemas are preserved byte-identical.
|
|
8
8
|
|
|
9
9
|
## 30-second example
|
|
@@ -198,7 +198,9 @@ vault-memory supports two engines, selectable **per vault**:
|
|
|
198
198
|
|
|
199
199
|
### Prerequisites
|
|
200
200
|
|
|
201
|
-
- **Node.js
|
|
201
|
+
- **Node.js 22–25** (`>=22 <26`) — runtime for the MCP server (`brew install node@22`).
|
|
202
|
+
Node 26+ is not yet supported: the native `better-sqlite3` dependency has no
|
|
203
|
+
prebuild for the new ABI and building from source currently fails.
|
|
202
204
|
- One or more Obsidian vaults; an MCP-aware client.
|
|
203
205
|
- **Ollama engine only:** [Ollama](https://ollama.com) on `localhost:11434`
|
|
204
206
|
(`brew install ollama && brew services start ollama`) + the `bge-m3` model
|