agentmux_srv/migrations/
m0004_registry_from_sqlite.rs1use crate::registry;
5use super::{Migration, MigrationContext, MigrationError, MigrationScope};
6
7pub struct M0004RegistryFromSqlite;
8
9impl Migration for M0004RegistryFromSqlite {
10 fn id(&self) -> &'static str { "0004_registry_from_sqlite" }
11 fn scope(&self) -> MigrationScope { MigrationScope::Global }
12 fn description(&self) -> &'static str { "Migrate named agent instances from SQLite to shared file registry" }
13
14 fn up(&self, ctx: &MigrationContext) -> Result<(), MigrationError> {
15 let registry_root = ctx.home.join("shared").join("agents").join("registry");
16 let reg = registry::Registry::open(registry_root)
17 .map_err(|e| MigrationError(format!("registry_from_sqlite: open registry: {}", e)))?;
18 registry::migrate_from_sqlite_once(&ctx.home, ®)
19 .map(|_| ())
20 .map_err(|e| MigrationError(format!("registry_from_sqlite: {}", e)))
21 }
22}