kaizen/core/data_source.rs
1// SPDX-License-Identifier: AGPL-3.0-or-later
2//! Whether read-side commands use local SQLite, provider cache, or a merged view.
3
4use clap::ValueEnum;
5
6/// Data source for `retro` and observe-style commands.
7#[derive(Clone, Copy, Debug, Default, ValueEnum, Eq, PartialEq)]
8pub enum DataSource {
9 /// Local SQLite and filesystem (default).
10 #[default]
11 Local,
12 /// Rows from the `remote_*` cache (filled by `kaizen telemetry pull` when a provider is configured).
13 Provider,
14 /// Local rows plus `remote_*` with deduplication for overlapping keys.
15 Mixed,
16}