|
| 1 | +# Changelog |
| 2 | + |
| 3 | +## [0.7.0] - 2026-03-25 |
| 4 | + |
| 5 | +### Added |
| 6 | +- **File watcher** — `engraph serve` now watches the vault for changes and re-indexes automatically (2s debounce) |
| 7 | +- **Placement correction learning** — detects when users move notes from suggested folders, updates centroids |
| 8 | +- **Fuzzy link matching** — sliding window Levenshtein matching (0.92 threshold) during note creation |
| 9 | +- **First-name matching** — matches "Steve" to `[[Steve Barbera]]` for People folder notes (suggestion-only) |
| 10 | +- `created_by` column and filter — track note origin, filter with `engraph context list --created-by` |
| 11 | +- `placement_corrections` table for observability |
| 12 | +- `link_skiplist` table schema (reserved for future use) |
| 13 | + |
| 14 | +### Changed |
| 15 | +- Centroid updates use true online mean (was EMA 0.9/0.1) |
| 16 | +- Indexer refactored: `index_file`, `remove_file`, `rename_file` extracted as public functions |
| 17 | +- Bulk indexing uses batched transactions for performance |
| 18 | +- `run_index_shared` variant accepts external store/embedder references |
| 19 | + |
| 20 | +### Fixed |
| 21 | +- Content hash consistency between `diff_vault` and `index_file` (BOM handling) |
| 22 | + |
| 23 | +## [0.6.0] - 2026-03-25 |
| 24 | + |
| 25 | +### Added |
| 26 | +- **Write pipeline** — create, append, update_metadata, move, archive, unarchive notes |
| 27 | +- **sqlite-vec** replaces HNSW for vector search (single SQLite database) |
| 28 | +- **Tag registry** with fuzzy Levenshtein resolution |
| 29 | +- **Link discovery** — exact basename and alias matching during note creation |
| 30 | +- **Folder placement** — type rules, semantic centroids, inbox fallback |
| 31 | +- **Archive/unarchive** — soft delete with metadata preservation |
| 32 | +- 6 new MCP write tools (13 total) |
| 33 | + |
| 34 | +### Changed |
| 35 | +- All vectors stored in SQLite vec0 virtual table (was HNSW + separate files) |
| 36 | +- Atomic writes via temp file + rename for crash safety |
| 37 | +- Mtime-based conflict detection for concurrent edits |
| 38 | + |
| 39 | +## [0.5.0] - 2026-03-24 |
| 40 | + |
| 41 | +### Added |
| 42 | +- **MCP server** — `engraph serve` starts stdio MCP server via rmcp SDK |
| 43 | +- 7 read-only MCP tools: search, read, list, vault_map, who, project, context |
| 44 | + |
| 45 | +## [0.4.0] - 2026-03-24 |
| 46 | + |
| 47 | +### Added |
| 48 | +- **Context engine** — 6 functions: read, list, vault_map, who, project, topic |
| 49 | +- Token-budgeted context bundles for AI agents |
| 50 | +- Person and project context assembly from graph + search |
| 51 | + |
| 52 | +## [0.3.0] - 2026-03-24 |
| 53 | + |
| 54 | +### Added |
| 55 | +- **Vault graph** — bidirectional wikilink + mention edges built during indexing |
| 56 | +- **Graph search agent** — 3rd RRF lane with 1-2 hop expansion |
| 57 | +- People detection from configured People folder |
| 58 | + |
| 59 | +## [0.2.0] - 2026-03-24 |
| 60 | + |
| 61 | +### Added |
| 62 | +- **Hybrid search** — semantic (embeddings) + keyword (FTS5 BM25) fused via RRF |
| 63 | +- Smart chunking with break-point scoring algorithm |
| 64 | +- Docid system (6-char hex file IDs) |
| 65 | +- Vault profiles with auto-detection (`engraph init`) |
| 66 | +- Pluggable model layer (`ModelBackend` trait) |
| 67 | +- `--explain` flag for per-lane score breakdown |
| 68 | + |
| 69 | +## [0.1.0] - 2026-03-19 |
| 70 | + |
| 71 | +### Added |
| 72 | +- Initial release |
| 73 | +- ONNX embedding model (all-MiniLM-L6-v2, 384-dim) |
| 74 | +- SQLite metadata storage |
| 75 | +- Incremental indexing |
| 76 | +- `.gitignore`-aware vault walking |
0 commit comments