refactor(app): search LRU 캐시 제거 (p9-fb-19) — 동작 불변, 표면 축소

- App::search() → search_uncached() 직통 (캐시 로직 전체 삭제)
- SearchCacheKey struct + impl 제거
- App.search_cache 필드 + 초기화 블록 제거
- build_cache_key() / clear_search_cache() 제거
- config SearchCfg.cache_capacity + default_cache_capacity() 제거
- CLI clear_search_cache() 호출 제거; --no-cache 플래그는 유지(no-op)
- wire/schema search_cache 값 true → false (필드 유지)
- lru workspace dep + kebab-app direct dep 제거
- unicode-normalization dep 유지 (first_question_title() 에서 사용 중)
This commit is contained in:
2026-06-24 09:36:22 +00:00
parent 7c935c6b96
commit 470e94bb2d
8 changed files with 7 additions and 187 deletions

View File

@@ -845,7 +845,7 @@ fn run(cli: &Cli) -> anyhow::Result<()> {
k,
mode,
explain: _,
no_cache,
no_cache: _,
max_tokens,
snippet_chars,
cursor,
@@ -1015,12 +1015,8 @@ fn run(cli: &Cli) -> anyhow::Result<()> {
cursor: cursor.clone(),
trace: *trace,
};
// p9-fb-34: budget-aware path. --no-cache still bypasses the
// App-level LRU; wire wrapper applies regardless.
// p9-fb-34: budget-aware path.
let app = kebab_app::App::open_with_config(cfg)?;
if *no_cache {
app.clear_search_cache();
}
let resp = app.search_with_opts(q, opts)?;
if cli.json {