feat: Improve stability of file search discovery in background (#431)

* feat: Improve scan runtime performance and RSS

* chore: Comprehensive randomized fuzzy mutation testing

It's such a shame that we keep commiting regressions that are leading ot
the missed events from the file watcher. I want to minimize this to 0.

* chore: Update docs for - chore: Comprehensive randomized fuzzy mutation testing

* chore: Update docs for - chore: Update docs for - chore: Comprehensive randomized fuzzy mutation testing

* test: Verbose stress test output
This commit is contained in:
Dmitriy Kovalenko
2026-05-02 09:28:14 -07:00
committed by GitHub
parent 573a783d2f
commit 1bcbce2bc6
44 changed files with 5181 additions and 1681 deletions
+2 -2
View File
@@ -15,7 +15,7 @@ mod update_check;
use clap::Parser;
use fff::file_picker::FilePicker;
use fff::frecency::FrecencyTracker;
use fff::{FFFMode, SharedFrecency, SharedPicker};
use fff::{FFFMode, SharedFilePicker, SharedFrecency};
use git2::Repository;
use mimalloc::MiMalloc;
use rmcp::{ServiceExt, transport::stdio};
@@ -232,7 +232,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
}
};
let shared_picker = SharedPicker::default();
let shared_picker = SharedFilePicker::default();
let shared_frecency = SharedFrecency::default();
if let Some(frecency_db_path) = args.frecency_db_path {
match FrecencyTracker::new(&frecency_db_path, false) {
+3 -3
View File
@@ -12,7 +12,7 @@ use crate::cursor::CursorStore;
use crate::output::{GrepFormatter, OutputMode, file_suffix};
use fff::grep::{GrepMode, GrepSearchOptions, has_regex_metacharacters};
use fff::types::{FileItem, PaginationArgs};
use fff::{FuzzySearchOptions, QueryParser, SharedFrecency, SharedPicker};
use fff::{FuzzySearchOptions, QueryParser, SharedFilePicker, SharedFrecency};
use fff_query_parser::AiGrepConfig;
use rmcp::handler::server::router::tool::ToolRouter;
use rmcp::handler::server::wrapper::Parameters;
@@ -160,7 +160,7 @@ pub struct MultiGrepParams {
#[derive(Clone)]
pub struct FffServer {
picker: SharedPicker,
picker: SharedFilePicker,
#[allow(dead_code)]
frecency: SharedFrecency,
cursor_store: Arc<Mutex<CursorStore>>,
@@ -169,7 +169,7 @@ pub struct FffServer {
}
impl FffServer {
pub fn new(picker: SharedPicker, frecency: SharedFrecency) -> Self {
pub fn new(picker: SharedFilePicker, frecency: SharedFrecency) -> Self {
Self {
picker,
frecency,