Clean up unused imports, dead code, and compiler warnings

Remove unused StoreView imports, unused store imports, dead
install_default_file, dead make_report_slug, dead fact-mine/
experience-mine spawning loops in daemon. Fix mut warnings.
Zero compiler warnings now.
This commit is contained in:
ProofOfConcept 2026-03-17 00:47:52 -04:00
parent 6932e05b38
commit 7a24d84ce3
11 changed files with 11 additions and 82 deletions

View file

@ -626,7 +626,7 @@ pub fn run_daemon() -> Result<(), String> {
// already mined, check task registry for what's in-flight, spawn the diff. // already mined, check task registry for what's in-flight, spawn the diff.
// No persistent tracking state — the store is the source of truth. // No persistent tracking state — the store is the source of truth.
let choir_sw = Arc::clone(&choir); let choir_sw = Arc::clone(&choir);
let llm_sw = Arc::clone(&llm); let _llm_sw = Arc::clone(&llm); // kept for future use
let last_daily_sw = Arc::clone(&last_daily); let last_daily_sw = Arc::clone(&last_daily);
let graph_health_sw = Arc::clone(&graph_health); let graph_health_sw = Arc::clone(&graph_health);
choir.spawn("session-watcher").init(move |ctx| { choir.spawn("session-watcher").init(move |ctx| {
@ -703,9 +703,9 @@ pub fn run_daemon() -> Result<(), String> {
}).unwrap_or_default() }).unwrap_or_default()
}; };
let mut extract_queued = 0; let _extract_queued = 0usize;
let mut extract_remaining = 0; let mut _extract_remaining = 0usize;
let mut fact_remaining = 0; let mut _fact_remaining = 0usize;
let mut already_mined = 0; let mut already_mined = 0;
let mut still_open = 0; let mut still_open = 0;
let mut backed_off = 0; let mut backed_off = 0;
@ -856,44 +856,12 @@ pub fn run_daemon() -> Result<(), String> {
} }
} }
// Spawn experience-mine jobs (priority) // experience_mine and fact_mine killed — observation.agent handles transcript mining
for (task_label, path_str, segment) in &needs_extract { _extract_remaining = needs_extract.len();
if extract_queued >= MAX_NEW_PER_TICK { _fact_remaining = needs_fact.len();
extract_remaining += 1;
continue;
}
let task_name = format!("extract:{}", task_label);
log_event("extract", "queued", &task_name);
let path = path_str.clone();
let seg = *segment;
// experience_mine killed — observation.agent handles transcript mining
extract_queued += 1;
}
// Only queue fact-mine when experience backlog is clear let extract_pending = _extract_queued + _extract_remaining;
needs_fact.sort_by_key(|(_, path_str)| { let fact_pending = _fact_remaining;
fs::metadata(path_str).map(|m| m.len()).unwrap_or(u64::MAX)
});
let mut fact_queued = 0;
if needs_extract.len() == extract_queued {
let fact_budget = MAX_NEW_PER_TICK.saturating_sub(extract_queued);
for (filename, path_str) in &needs_fact {
if fact_queued >= fact_budget {
fact_remaining += 1;
continue;
}
let task_name = format!("fact-mine:{}", filename);
log_event("fact-mine", "queued", path_str);
let path = path_str.clone();
// fact_mine killed — observation.agent handles transcript mining
fact_queued += 1;
}
} else {
fact_remaining = needs_fact.len();
}
let extract_pending = extract_queued + extract_remaining;
let fact_pending = fact_queued + fact_remaining;
if extract_pending > 0 || fact_pending > 0 || still_open > 0 || backed_off > 0 { if extract_pending > 0 || fact_pending > 0 || still_open > 0 || backed_off > 0 {
log_event("session-watcher", "tick", log_event("session-watcher", "tick",
&format!("{} stale, {} mined, {} extract, {} fact, {} open, {} backoff", &format!("{} stale, {} mined, {} extract, {} fact, {} open, {} backoff",

View file

@ -18,24 +18,6 @@ use std::path::PathBuf;
// Agent execution // Agent execution
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
/// Extract a short slug from agent output for human-readable report keys.
fn make_report_slug(output: &str) -> String {
let line = output.lines()
.map(|l| l.trim())
.find(|l| !l.is_empty() && !l.starts_with('#') && !l.starts_with("```") && !l.starts_with("---"))
.unwrap_or("");
let clean: String = line.replace("**", "").replace('*', "");
let filtered: String = clean.chars()
.map(|c| if c.is_alphanumeric() || c == ' ' || c == '-' { c } else { ' ' })
.collect();
let slug: String = filtered.split_whitespace()
.take(6)
.collect::<Vec<_>>()
.join("-")
.to_lowercase();
if slug.len() > 60 { slug[..60].to_string() } else { slug }
}
/// Result of running a single agent. /// Result of running a single agent.
pub struct AgentResult { pub struct AgentResult {
pub output: String, pub output: String,

View file

@ -98,7 +98,7 @@ fn call_model_with_tools(agent: &str, model: &str, prompt: &str,
let start = std::time::Instant::now(); let start = std::time::Instant::now();
let mut child = unsafe { let child = unsafe {
cmd.pre_exec(|| { cmd.pre_exec(|| {
libc::prctl(libc::PR_SET_PDEATHSIG, libc::SIGTERM); libc::prctl(libc::PR_SET_PDEATHSIG, libc::SIGTERM);
Ok(()) Ok(())

View file

@ -11,7 +11,6 @@ fn install_default_file(data_dir: &std::path::Path, name: &str, content: &str) -
Ok(()) Ok(())
} }
use crate::store::StoreView;
pub fn cmd_init() -> Result<(), String> { pub fn cmd_init() -> Result<(), String> {
let cfg = crate::config::get(); let cfg = crate::config::get();

View file

@ -1,9 +1,7 @@
// cli/agent.rs — agent subcommand handlers // cli/agent.rs — agent subcommand handlers
use crate::store; use crate::store;
use crate::store::StoreView;
use crate::agents::llm; use crate::agents::llm;
use std::sync::atomic::{AtomicUsize, Ordering};
pub fn cmd_run_agent(agent: &str, count: usize, target: &[String], dry_run: bool, debug: bool) -> Result<(), String> { pub fn cmd_run_agent(agent: &str, count: usize, target: &[String], dry_run: bool, debug: bool) -> Result<(), String> {
if dry_run { if dry_run {

View file

@ -6,7 +6,6 @@
// trace, spectral-*, organize, interference. // trace, spectral-*, organize, interference.
use crate::{store, graph, neuro, spectral}; use crate::{store, graph, neuro, spectral};
use crate::store::StoreView;
pub fn cmd_graph() -> Result<(), String> { pub fn cmd_graph() -> Result<(), String> {
let store = store::Store::load()?; let store = store::Store::load()?;

View file

@ -1,7 +1,5 @@
// cli/journal.rs — journal subcommand handlers // cli/journal.rs — journal subcommand handlers
use crate::store;
use crate::store::StoreView;
pub fn cmd_tail(n: usize, full: bool) -> Result<(), String> { pub fn cmd_tail(n: usize, full: bool) -> Result<(), String> {
let path = crate::store::nodes_path(); let path = crate::store::nodes_path();

View file

@ -1,10 +1,7 @@
// cli/misc.rs — misc subcommand handlers // cli/misc.rs — misc subcommand handlers
use crate::store;
use crate::store::StoreView;
pub fn cmd_search(terms: &[String], pipeline_args: &[String], expand: bool, full: bool, debug: bool, fuzzy: bool, content: bool) -> Result<(), String> { pub fn cmd_search(terms: &[String], pipeline_args: &[String], expand: bool, full: bool, debug: bool, fuzzy: bool, content: bool) -> Result<(), String> {
use crate::store::StoreView;
use std::collections::BTreeMap; use std::collections::BTreeMap;
// Parse pipeline stages (unified: algorithms, filters, transforms, generators) // Parse pipeline stages (unified: algorithms, filters, transforms, generators)
@ -71,6 +68,7 @@ pub fn cmd_search(terms: &[String], pipeline_args: &[String], expand: bool, full
} }
} else { } else {
// Fast MmapView path — algorithm-only pipeline // Fast MmapView path — algorithm-only pipeline
use crate::store::StoreView;
let view = crate::store::AnyView::load()?; let view = crate::store::AnyView::load()?;
let graph = crate::graph::build_graph_fast(&view); let graph = crate::graph::build_graph_fast(&view);

View file

@ -5,7 +5,6 @@
// dump-json, lookup-bump, lookups. // dump-json, lookup-bump, lookups.
use crate::store; use crate::store;
use crate::store::StoreView;
pub fn cmd_used(key: &[String]) -> Result<(), String> { pub fn cmd_used(key: &[String]) -> Result<(), String> {
if key.is_empty() { if key.is_empty() {

View file

@ -9,7 +9,6 @@
// This is the beginning of place cells — the hippocampus doesn't just // This is the beginning of place cells — the hippocampus doesn't just
// store, it maintains a map. The cursor is the map's current position. // store, it maintains a map. The cursor is the map's current position.
use crate::graph::Graph;
use crate::store::{self, Node, Store}; use crate::store::{self, Node, Store};
use std::path::PathBuf; use std::path::PathBuf;
@ -47,7 +46,6 @@ pub fn clear() -> Result<(), String> {
pub fn temporal_neighbors(store: &Store, key: &str) -> (Option<String>, Option<String>) { pub fn temporal_neighbors(store: &Store, key: &str) -> (Option<String>, Option<String>) {
let Some(node) = store.nodes.get(key) else { return (None, None) }; let Some(node) = store.nodes.get(key) else { return (None, None) };
let node_type = node.node_type; let node_type = node.node_type;
let ts = node.timestamp;
let mut same_type: Vec<(&str, i64)> = store.nodes.iter() let mut same_type: Vec<(&str, i64)> = store.nodes.iter()
.filter(|(_, n)| !n.deleted && n.node_type == node_type && n.timestamp > 0) .filter(|(_, n)| !n.deleted && n.node_type == node_type && n.timestamp > 0)

View file

@ -856,16 +856,6 @@ fn main() {
// ── Command implementations ───────────────────────────────────────── // ── Command implementations ─────────────────────────────────────────
fn install_default_file(data_dir: &std::path::Path, name: &str, content: &str) -> Result<(), String> {
let path = data_dir.join(name);
if !path.exists() {
std::fs::write(&path, content)
.map_err(|e| format!("write {}: {}", name, e))?;
println!("Created {}", path.display());
}
Ok(())
}
/// Apply links from a single agent result JSON file. /// Apply links from a single agent result JSON file.
/// Returns (links_applied, errors). /// Returns (links_applied, errors).
fn apply_agent_file( fn apply_agent_file(