feat(sandokan-lifecycle): A4 — primitivas de lifecycle agnósticas
Nuevo crate runtime/sandokan-lifecycle: lógica pura reutilizable por cualquier supervisor de procesos (shuma, matilda Ghost, charka-shadow, mirada). Sin syscalls, sin proceso, sin UI. Módulos: - backoff — Backoff exponencial con tope - ttl — Ttl anclado a Instant - quota — ResourceQuota + check_quota + Breach + QuotaAction - restart — RestartPolicy + RestartTracker (conteo + backoff) - state — LifecycleState (Pending/Running/Exited/Failed/Killed) 15 tests verdes. cargo check --workspace verde. Variante segura de A4: se crea la library limpia sin tocar shuma-core (módulo maduro). La migración de WorkspaceManager a consumir estas primitivas queda registrada como A4.2 (refactor diferido, no urgente). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
//! sandokan-lifecycle — primitivas de ciclo de vida agnósticas.
|
||||
//!
|
||||
//! Lógica pura reutilizable por cualquier supervisor de procesos
|
||||
//! (shuma, matilda Ghost, charka-shadow, mirada). Sin dependencias de
|
||||
//! syscalls, proceso, ni UI: solo cálculo.
|
||||
//!
|
||||
//! - [`backoff`] — backoff exponencial con tope.
|
||||
//! - [`ttl`] — time-to-live anclado a un `Instant`.
|
||||
//! - [`quota`] — cuotas de recursos + chequeo de breaches.
|
||||
//! - [`restart`] — política de restart con conteo + backoff.
|
||||
//! - [`state`] — máquina de estados del ciclo de vida.
|
||||
|
||||
pub mod backoff;
|
||||
pub mod ttl;
|
||||
pub mod quota;
|
||||
pub mod restart;
|
||||
pub mod state;
|
||||
|
||||
pub use backoff::Backoff;
|
||||
pub use ttl::Ttl;
|
||||
pub use quota::{Breach, QuotaAction, QuotaReport, ResourceQuota, ResourceUsage, check_quota};
|
||||
pub use restart::{RestartPolicy, RestartTracker};
|
||||
pub use state::LifecycleState;
|
||||
Reference in New Issue
Block a user