feat(sandokan): B1.5 — umbrella + Engine::auto()
Crate sandokan (umbrella): re-exporta core/local/daemon y provee la selección de transporte. - auto(socket) — patrón "el primero que arranca gana": prueba si hay un daemon escuchando; si lo hay devuelve DaemonEngine, si no LocalEngine. Box<dyn Engine> (el trait es object-safe vía async_trait). - auto_default() — auto() con default_socket_path(). - default_socket_path() — $XDG_RUNTIME_DIR/sandokan.sock o /run/brahman/sandokan.sock. 3 tests: fallback a Local sin daemon, pick Daemon con serve() activo, default path absoluto. cargo check --workspace verde. sandokan ya es usable end-to-end en modo local y daemon. Falta RemoteEngine (B1.4, depende de brahman-ssh-multiplex). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
[package]
|
||||
name = "sandokan"
|
||||
description = "Orquestador sandokan (umbrella): re-exporta core/local/daemon + Engine::auto() que elige transporte según haya un daemon escuchando."
|
||||
version.workspace = true
|
||||
edition.workspace = true
|
||||
license.workspace = true
|
||||
authors.workspace = true
|
||||
publish.workspace = true
|
||||
|
||||
[dependencies]
|
||||
sandokan-core = { path = "../sandokan-core" }
|
||||
sandokan-lifecycle = { path = "../sandokan-lifecycle" }
|
||||
sandokan-local = { path = "../sandokan-local" }
|
||||
sandokan-daemon = { path = "../sandokan-daemon" }
|
||||
tokio = { workspace = true }
|
||||
|
||||
[dev-dependencies]
|
||||
tempfile = { workspace = true }
|
||||
Reference in New Issue
Block a user