viettranx
4b7a2e6e58
feat(vault): replace auto-linking with LLM-classified relationship types
Replace vector-similarity-only auto-linking (creating generic "semantic"
links) with an LLM classification step that determines actual relationship
types (reference, depends_on, extends, related, supersedes, contradicts)
and generates meaningful context descriptions.
- Add enrich_classify.go: orchestration, retry with escalating timeouts,
candidate gathering with bidirectional dedup, 20-doc cap per batch
- Add enrich_classify_prompt.go: system prompt, JSON parsing with partial
success model, UTF-8 safe truncation
- Restructure processBatch: summarize → embed → classify → dedup+wikilinks
- Move dedup recording after classify (failed classify allows re-enrichment)
- Remove autoLink method (fully replaced by classifyLinks)
- Add DeleteDocLinksByTypes to VaultStore interface + PG/SQLite (IN clause)
- Guard old link deletion behind len(newLinks) > 0 (no data loss on all-SKIP)
2026-04-10 09:54:02 +07:00
..
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-04-06 12:54:44 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-29 22:33:17 +07:00
2026-03-27 09:28:42 +07:00
2026-04-02 08:23:01 +07:00
2026-03-29 12:43:19 +07:00
2026-03-30 15:19:43 +07:00
2026-04-09 23:40:46 +07:00
2026-04-10 07:34:03 +07:00
2026-04-01 11:12:35 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-04-05 13:13:02 +07:00
2026-03-27 09:28:42 +07:00
2026-03-28 08:31:18 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-30 14:12:08 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-30 21:58:29 +07:00
2026-04-09 21:29:48 +07:00
2026-03-30 21:58:29 +07:00
2026-03-30 21:58:29 +07:00
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-04-09 21:29:48 +07:00
2026-03-27 09:28:42 +07:00
2026-03-27 09:28:42 +07:00
2026-04-08 15:56:18 +07:00
2026-04-09 22:14:04 +07:00
2026-04-10 09:54:02 +07:00