remove hardcoded skip lists, prune orphan edges in fsck
All nodes in the store are memory — none should be excluded from knowledge extraction, search, or graph algorithms by name. Removed the MEMORY/where-am-i/work-queue/work-state skip lists entirely. Deleted where-am-i and work-queue nodes from the store (ephemeral scratchpads that don't belong). Added orphan edge pruning to fsck so broken links get cleaned up automatically. Co-Authored-By: ProofOfConcept <poc@bcachefs.org>
This commit is contained in:
parent
70c0276fa0
commit
fd5591653d
4 changed files with 23 additions and 26 deletions
|
|
@ -515,11 +515,7 @@ fn spectral_distance(embedding: &HashMap<String, Vec<f64>>, a: &str, b: &str) ->
|
|||
|
||||
fn select_extractor_clusters(_store: &Store, n: usize) -> Vec<Vec<String>> {
|
||||
let embedding = load_spectral_embedding();
|
||||
let skip = ["MEMORY", "where-am-i", "work-queue", "work-state"];
|
||||
|
||||
let semantic_keys: Vec<&String> = embedding.keys()
|
||||
.filter(|k| !skip.contains(&k.as_str()))
|
||||
.collect();
|
||||
let semantic_keys: Vec<&String> = embedding.keys().collect();
|
||||
|
||||
let cluster_size = 5;
|
||||
let mut used = HashSet::new();
|
||||
|
|
@ -578,12 +574,7 @@ pub fn run_extractor(store: &Store, graph: &Graph, batch_size: usize) -> Result<
|
|||
|
||||
fn select_connector_pairs(store: &Store, graph: &Graph, n: usize) -> Vec<(Vec<String>, Vec<String>)> {
|
||||
let embedding = load_spectral_embedding();
|
||||
let skip_exact: HashSet<&str> = ["MEMORY", "where-am-i",
|
||||
"work-queue", "work-state"].iter().copied().collect();
|
||||
|
||||
let semantic_keys: Vec<&String> = embedding.keys()
|
||||
.filter(|k| !skip_exact.contains(k.as_str()))
|
||||
.collect();
|
||||
let semantic_keys: Vec<&String> = embedding.keys().collect();
|
||||
|
||||
let mut pairs = Vec::new();
|
||||
let mut used = HashSet::new();
|
||||
|
|
@ -651,9 +642,6 @@ pub fn run_challenger(store: &Store, graph: &Graph, batch_size: usize) -> Result
|
|||
let topology = get_graph_topology(store, graph);
|
||||
|
||||
let mut candidates: Vec<(&String, usize)> = store.nodes.iter()
|
||||
.filter(|(k, _)| {
|
||||
!["MEMORY", "where-am-i", "work-queue", "work-state"].contains(&k.as_str())
|
||||
})
|
||||
.map(|(k, _)| (k, graph.degree(k)))
|
||||
.collect();
|
||||
candidates.sort_by(|a, b| b.1.cmp(&a.1));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue