Shared command-line filtering: the cross-cutting --provider/--model/ --since/--until/--on-disk-only flags every reporting command accepts,
resolved into a ResolvedFilter that the index queries (and the
--no-index fallback) apply uniformly.
Presentation layer — one place owns the palette, table style, terminal
width, color detection, and progress indicators. Commands call semantic
helpers (project, timestamp, emphasis, …) rather than raw
owo_colors methods so the palette can change in one place.