fix(fb-32): address PR #122 round 1 review

- config: rename env-silent-ignore test + add file-load negative test
  asserting ConfigInvalid for negative TOML stale_threshold_days
- rag: add 5 boundary unit tests pinning compute_stale mirror equivalence
- search: rewrite "Task 6" plan refs in lexical/vector to point at
  actual function names (mark_stale_in_place / RagPipeline::ask)
- cli: dedupe write_config / ingest / backdate_updated_at helpers
  from wire_search_stale + wire_ask_stale into tests/common/mod.rs
- tui: clarify inspect.rs uses same source-of-truth as SearchHit
- rag: PackedCitation.stale invariant doc comment
- HOTFIXES: log conscious decision on wire-schema required-field
  expansion (strict-validator concern)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
th-kim0823
2026-05-09 12:04:28 +09:00
parent 1008bca342
commit efc6b7ebb0
9 changed files with 292 additions and 258 deletions

View File

@@ -417,7 +417,9 @@ fn build_hit(
embedding_model: None,
chunker_version: ChunkerVersion(raw.chunker_version),
indexed_at,
// Placeholder — App layer overwrites against config threshold (Task 6).
// Placeholder — overwritten by `kebab_app::staleness::mark_stale_in_place`
// (called from `App::search` / `App::search_uncached`) and the equivalent
// in `RagPipeline::ask` against the configured threshold.
stale: false,
})
}

View File

@@ -322,7 +322,9 @@ fn build_hit(
embedding_model: Some(model_id.clone()),
chunker_version: ChunkerVersion(meta.chunker_version.clone()),
indexed_at,
// Placeholder — App layer overwrites against config threshold (Task 6).
// Placeholder — overwritten by `kebab_app::staleness::mark_stale_in_place`
// (called from `App::search` / `App::search_uncached`) and the equivalent
// in `RagPipeline::ask` against the configured threshold.
stale: false,
})
}