store: strip .md suffix from all keys
Keys were a vestige of the file-based era. resolve_key() added .md to lookups while upsert() used bare keys, creating phantom duplicate nodes (the instructions bug: writes went to "instructions", reads found "instructions.md"). - Remove .md normalization from resolve_key, strip instead - Update all hardcoded key patterns (journal.md# → journal#, etc) - Add strip_md_keys() migration to fsck: renames nodes and relations - Add broken link detection to health report - Delete redirect table (no longer needed) - Update config defaults and config.jsonl Migration: run `poc-memory fsck` to rename existing keys. Co-Authored-By: ProofOfConcept <poc@bcachefs.org>
This commit is contained in:
parent
77fc533631
commit
46f8fe662e
12 changed files with 289 additions and 132 deletions
10
src/llm.rs
10
src/llm.rs
|
|
@ -137,11 +137,11 @@ pub(crate) fn parse_json_response(response: &str) -> Result<serde_json::Value, S
|
|||
pub(crate) fn semantic_keys(store: &Store) -> Vec<String> {
|
||||
let mut keys: Vec<String> = store.nodes.keys()
|
||||
.filter(|k| {
|
||||
!k.starts_with("journal.md#")
|
||||
&& *k != "journal.md"
|
||||
&& *k != "MEMORY.md"
|
||||
&& *k != "where-am-i.md"
|
||||
&& *k != "work-queue.md"
|
||||
!k.starts_with("journal#")
|
||||
&& *k != "journal"
|
||||
&& *k != "MEMORY"
|
||||
&& *k != "where-am-i"
|
||||
&& *k != "work-queue"
|
||||
&& *k != "work-state"
|
||||
})
|
||||
.cloned()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue