Files
brahman/crates/apps/matilda/Cargo.toml
T
sergio df8f92fbb0 feat(matilda): ghost + linker + CLI — el ciclo completo de aplicación
matilda-ghost: el agente que ejecuta los ApplySteps en la máquina
destino — escribe archivos, corre comandos, reporta paso a paso;
semántica set -e (se detiene en el primer error). dry_run previsualiza
sin tocar nada. 5 tests.

matilda-linker: aplica los pasos en un host remoto por SSH sobre
brahman-ssh-multiplex; produce el mismo ApplyReport que el ghost local.

apps/matilda: deja de ser una demo hardcoded — ahora es una CLI real:
  matilda example | plan | script | apply  (local · --dry-run · --host)
Carga el inventario de un JSON, reconcilia y aplica.

matilda: 6 crates + CLI, ~42 tests. La cadena va de la declaración
a la aplicación local/remota.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-20 20:27:28 +00:00

25 lines
894 B
TOML

[package]
name = "matilda"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
publish.workspace = true
description = "matilda — CLI de administración de servidores: carga un inventario, muestra el plan, emite el script y lo aplica (local, remoto por SSH, o en seco)."
[[bin]]
name = "matilda"
path = "src/main.rs"
[dependencies]
matilda-core = { path = "../../modules/matilda/matilda-core" }
matilda-config = { path = "../../modules/matilda/matilda-config" }
matilda-plan = { path = "../../modules/matilda/matilda-plan" }
matilda-apply = { path = "../../modules/matilda/matilda-apply" }
matilda-ghost = { path = "../../modules/matilda/matilda-ghost" }
matilda-linker = { path = "../../modules/matilda/matilda-linker" }
clap = { workspace = true }
serde_json = { workspace = true }
tokio = { workspace = true }