Skip to main content

mars_agents/sync/
types.rs

1//! Shared types for the sync pipeline.
2
3/// Options controlling sync behavior.
4#[derive(Debug, Clone, Default)]
5pub struct SyncOptions {
6    /// Force overwrite on conflicts (skip merge).
7    pub force: bool,
8    /// Compute plan but don't execute (dry run).
9    pub dry_run: bool,
10    /// Error if lock file would change (CI mode).
11    pub frozen: bool,
12    /// Force synchronous models cache + probe refresh.
13    pub refresh_models: bool,
14    /// Skip automatic models cache refresh.
15    pub no_refresh_models: bool,
16}
17
18#[cfg(test)]
19mod tests {
20    use super::SyncOptions;
21
22    #[test]
23    fn default_no_refresh_models_is_false() {
24        let options = SyncOptions::default();
25        assert!(!options.no_refresh_models);
26        assert!(!options.refresh_models);
27    }
28}