(path: &str, status: &VersionGateStatus)
| 585 | } |
| 586 | |
| 587 | fn print_migration_status(path: &str, status: &VersionGateStatus) { |
| 588 | match status { |
| 589 | VersionGateStatus::Current(version) => { |
| 590 | tui::print_info("Schema version", &version.to_string()); |
| 591 | } |
| 592 | VersionGateStatus::Missing => { |
| 593 | tui::print_warning("Schema version: missing (migration required)"); |
| 594 | tui::print_info( |
| 595 | "Run", |
| 596 | &format!("sudo clawshell migrate-config --config {path}"), |
| 597 | ); |
| 598 | } |
| 599 | VersionGateStatus::Mismatch { found } => { |
| 600 | tui::print_warning(&format!( |
| 601 | "Schema version mismatch: found {}, expected {}", |
| 602 | found, |
| 603 | crate::migration::core::ConfigVersion::current() |
| 604 | )); |
| 605 | tui::print_info( |
| 606 | "Run", |
| 607 | &format!("sudo clawshell migrate-config --config {path}"), |
| 608 | ); |
| 609 | } |
| 610 | } |
| 611 | } |
| 612 | |
| 613 | fn ensure_rustls_crypto_provider() -> Result<(), Box<dyn Error>> { |
| 614 | if rustls::crypto::CryptoProvider::get_default().is_some() { |
no test coverage detected