Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions CITATION.cff
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ authors:
email: 1.parsa.karkooti@gmail.com
repository-code: https://github.com/ParsaVictor/code-context-engine
license: MIT
version: 1.0.0
date-released: "2026-09-22"
version: 1.1.0
date-released: "2026-10-01"
keywords:
- model-context-protocol
- code-retrieval
Expand Down
45 changes: 28 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ members = [
exclude = ["tests/fixtures/mini-axum"]

[workspace.package]
version = "1.0.0"
version = "1.1.0"
edition = "2021"
rust-version = "1.80"
authors = ["NeuroMesh Team <team@neuromesh.local>"]
Expand Down
3 changes: 3 additions & 0 deletions crates/neuromesh-cli/src/commands/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,9 @@ pub fn spawn_live_sync(
graph.mark_index_ready();
return;
}
// Marked before the scan thread is scheduled: until then the gate still
// said Ready over an empty graph, and a first question got "no seed".
graph.mark_index_indexing();
let bg_graph = graph.clone();
let bg_dir = dir.clone();
let bg_pid = pid.clone();
Expand Down
11 changes: 10 additions & 1 deletion crates/neuromesh-context/src/activator.rs
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,9 @@ impl ContextActivator {
) -> ContextView {
#[cfg(feature = "embeddings")]
neuromesh_embed::packet_cache_begin();
let t_all = std::time::Instant::now();
let view = self.activate_with_hops(graph, signature, mode, 0);
neuromesh_graph::timing("query: activate total", t_all);
#[cfg(feature = "embeddings")]
neuromesh_embed::packet_cache_end();
view
Expand All @@ -187,7 +189,10 @@ impl ContextActivator {
mode: OptimizationMode,
hops_override: u8,
) -> ContextView {
self.activate_inner(graph, signature, mode, hops_override)
let t_inner = std::time::Instant::now();
let view = self.activate_inner(graph, signature, mode, hops_override);
neuromesh_graph::timing("query: activate_inner total", t_inner);
view
}

/// L1→L2→L3 cost-aware retrieval with conservative sufficiency early exit.
Expand Down Expand Up @@ -310,6 +315,7 @@ impl ContextActivator {
OptimizationMode::MaxSavings => 1,
}
};
let t_q = std::time::Instant::now();
let mut seed_resolutions = Vec::new();
let mut seed_energies: HashMap<NodeId, f32> = HashMap::new();
let mut seed_reasons: HashMap<NodeId, String> = HashMap::new();
Expand Down Expand Up @@ -342,6 +348,8 @@ impl ContextActivator {
is_style_task(signature),
);

neuromesh_graph::timing("query: seeds", t_q);
let t_q = std::time::Instant::now();
let scaffold_used = seed_result.scaffold_used;
let embedding_used = seed_result.embedding_used;

Expand Down Expand Up @@ -539,6 +547,7 @@ impl ContextActivator {
} else {
restrict_selection_to_call_graph(graph, &seed_set, &mut selection);
}
neuromesh_graph::timing("query: neighborhood+select", t_q);
let app_cfg = neuromesh_core::Config::load();
if app_cfg.retrieval.engine == neuromesh_core::RetrievalEngine::Hybrid
&& effective_mode == OptimizationMode::Balanced
Expand Down
Loading
Loading