feat(wire): search_hit.v1 + citation.v1 require indexed_at + stale (fb-32)

Additive minor — schema_version unchanged. Existing v1 consumers
that ignore unknown fields stay compatible; consumers that validate
strictly will reject pre-fb-32 payloads, which matches the wire
contract escape hatch (recipient version >= producer required).

Cross-task placeholders: kebab-eval / kebab-tui synthetic test
fixtures pin UNIX_EPOCH + stale=false (same pattern as
hybrid.rs / vector.rs). These don't exercise staleness — Task 11
adds dedicated TUI staleness rendering tests.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
th-kim0823
2026-05-09 02:17:15 +09:00
parent 16db60f7bd
commit cc41adabb5
6 changed files with 29 additions and 4 deletions

View File

@@ -42,6 +42,10 @@ fn make_answer(grounded: bool, refusal: Option<RefusalReason>, body: &str) -> An
end: 14,
section: Some("Section A".into()),
},
// fb-32: TUI ask test fixture pinned to UNIX_EPOCH + stale=false;
// staleness rendering covered in dedicated tests (Task 11).
indexed_at: OffsetDateTime::UNIX_EPOCH,
stale: false,
}],
grounded,
refusal_reason: refusal,