Skip to content

Commit 3116fb5

Browse files
committed
fix: improve v2.4 setup and indexing flow
1 parent a719ea6 commit 3116fb5

24 files changed

Lines changed: 742 additions & 172 deletions

File tree

Cargo.lock

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ members = [
1313
]
1414

1515
[workspace.package]
16-
version = "2.3.0"
16+
version = "2.4.0"
1717
authors = ["JJ Adonis"]
1818
edition = "2024"
1919
rust-version = "1.94.1"
@@ -23,11 +23,11 @@ homepage = "https://github.com/thedoublejay/gather-step"
2323
description = "High-performance multi-repo codebase intelligence engine"
2424

2525
[workspace.dependencies]
26-
gather-step-analysis = { path = "crates/gather-step-analysis", version = "2.3.0" }
27-
gather-step-core = { path = "crates/gather-step-core", version = "2.3.0" }
28-
gather-step-mcp = { path = "crates/gather-step-mcp", version = "2.3.0" }
29-
gather-step-parser = { path = "crates/gather-step-parser", version = "2.3.0" }
30-
gather-step-storage = { path = "crates/gather-step-storage", version = "2.3.0" }
26+
gather-step-analysis = { path = "crates/gather-step-analysis", version = "2.4.0" }
27+
gather-step-core = { path = "crates/gather-step-core", version = "2.4.0" }
28+
gather-step-mcp = { path = "crates/gather-step-mcp", version = "2.4.0" }
29+
gather-step-parser = { path = "crates/gather-step-parser", version = "2.4.0" }
30+
gather-step-storage = { path = "crates/gather-step-storage", version = "2.4.0" }
3131

3232
tree-sitter = "=0.26.8"
3333
tree-sitter-typescript = "0.23.2"

crates/gather-step-bench/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ harness = false
3030

3131
[dependencies]
3232
gather-step-core.workspace = true
33-
gather-step = { path = "../gather-step-cli", version = "2.3.0" }
33+
gather-step = { path = "../gather-step-cli", version = "2.4.0" }
3434
gather-step-mcp.workspace = true
3535
gather-step-storage.workspace = true
3636
anyhow.workspace = true

crates/gather-step-cli/Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,11 @@ clap.workspace = true
2323
comfy-table.workspace = true
2424
console.workspace = true
2525
crossbeam-channel.workspace = true
26-
gather-step-analysis = { path = "../gather-step-analysis", version = "2.3.0" }
26+
gather-step-analysis = { path = "../gather-step-analysis", version = "2.4.0" }
2727
gather-step-core.workspace = true
28-
gather-step-git = { path = "../gather-step-git", version = "2.3.0" }
29-
gather-step-mcp = { path = "../gather-step-mcp", version = "2.3.0" }
30-
gather-step-output = { path = "../gather-step-output", version = "2.3.0" }
28+
gather-step-git = { path = "../gather-step-git", version = "2.4.0" }
29+
gather-step-mcp = { path = "../gather-step-mcp", version = "2.4.0" }
30+
gather-step-output = { path = "../gather-step-output", version = "2.4.0" }
3131
gather-step-parser.workspace = true
3232
gather-step-storage.workspace = true
3333
indicatif.workspace = true

crates/gather-step-cli/src/commands/generate.rs

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ use gather_step_output::{
1212
render_workspace_summary_claude,
1313
};
1414
use gather_step_storage::{GraphStoreDb, MetadataStore, MetadataStoreDb};
15+
use indicatif::{ProgressBar, ProgressStyle};
1516
use serde::Serialize;
1617

1718
use crate::app::AppContext;
@@ -185,6 +186,7 @@ pub fn run_summary_pair(app: &AppContext) -> Result<()> {
185186
let output = app.output();
186187
let paths = app.workspace_paths();
187188
let metadata_path = paths.storage_root.join("metadata.sqlite");
189+
let generation_bar = ai_generation_bar(app);
188190

189191
if paths.graph_path.exists() && metadata_path.exists() {
190192
run_claude_md_rules(
@@ -201,6 +203,10 @@ pub fn run_summary_pair(app: &AppContext) -> Result<()> {
201203
"hint: run `gather-step index`, then `gather-step generate claude-md --target rules`",
202204
);
203205
}
206+
if let Some(bar) = &generation_bar {
207+
bar.inc(1);
208+
bar.set_message("Generating CLAUDE.gather.md...");
209+
}
204210

205211
run_claude_md_summary(
206212
app,
@@ -210,7 +216,33 @@ pub fn run_summary_pair(app: &AppContext) -> Result<()> {
210216
target: ClaudeMdTarget::Summary,
211217
},
212218
)?;
213-
run_agents_md(app, GenerateAgentsMdArgs { output: None })
219+
if let Some(bar) = &generation_bar {
220+
bar.inc(1);
221+
bar.set_message("Generating AGENTS.gather.md...");
222+
}
223+
run_agents_md(app, GenerateAgentsMdArgs { output: None })?;
224+
if let Some(bar) = generation_bar {
225+
bar.inc(1);
226+
bar.finish_and_clear();
227+
}
228+
Ok(())
229+
}
230+
231+
fn ai_generation_bar(app: &AppContext) -> Option<ProgressBar> {
232+
app.progress_is_visible().then(|| {
233+
let bar = app.multi_progress.add(ProgressBar::new(3));
234+
bar.set_style(
235+
ProgressStyle::with_template(
236+
" {spinner:.cyan.bold} [{elapsed_precise}] [{bar:40.cyan/blue}] {pos}/{len} {msg}",
237+
)
238+
.expect("AI context progress template is valid")
239+
.progress_chars("█░░")
240+
.tick_chars("⠋⠙⠹⠸⠼⠴⠦⠧⠇⠏ "),
241+
);
242+
bar.set_message("Generating AI context files...");
243+
bar.enable_steady_tick(std::time::Duration::from_millis(80));
244+
bar
245+
})
214246
}
215247

216248
fn run_codeowners(app: &AppContext, args: GenerateCodeownersArgs) -> Result<()> {

0 commit comments

Comments
 (0)