gioser

tawasuyu/hifas

Motor en Rust para decidir, con demostración y no a ojo, cuándo un conjunto de réplicas local-first puede operar sin coordinación y cuándo no — y, cuando la respuesta es "sí, dentro de límites", proveer el mecanismo que lo garantiza.

Rust 24Markdown 15TOML 1358 Sutichaykuna

⎇ bd89fbb2d1f130276989f6fa0a0623c113d99988 src/error.rs Rust · 22 siq'ikuna · 772 B Ñawpa willay Pi imata llamkarqan ch'uya

M0/T0: scaffold del crate sheafsync 6595dbed8 · Sergio ·

1//! Errores tipados de la librería (§5.1). Nada de `unwrap()` en rutas públicas.
2
3use thiserror::Error;
4
5/// Error raíz de `sheafsync`.
6#[derive(Debug, Error)]
7pub enum SheafError {
8    /// Dimensiones incompatibles al ensamblar el coboundary o multiplicar matrices.
9    #[error("dimensiones incompatibles: {0}")]
10    DimensionMismatch(String),
11
12    /// El haz referencia una réplica o arista que no existe en el nervio.
13    #[error("entidad inexistente en el nervio: {0}")]
14    MissingEntity(String),
15
16    /// Marcador de funcionalidad aún no implementada (scaffolding M0).
17    #[error("no implementado todavía: {0}")]
18    NotImplemented(&'static str),
19}
20
21/// Alias de resultado usado en toda la librería.
22pub type Result<T> = std::result::Result<T, SheafError>;