tawasuyu

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 Definiciones

⎇ 74acdb9dbca5fc2399bce6f3d65a3bf865c01c22 src/lib.rs Rust · 49 líneas · 1.3 KB Historia Quién tocó qué crudo

reach: multi-invariante + Laplaciano de haces vectorial (experimental, no toca M4) 9de0cc601 · Sergio ·

1//! # sheafsync
2//!
3//! Motor de consistencia sin coordinación. Modela el estado distribuido como un
4//! haz celular sobre el grafo de réplicas (el nervio) y calcula su cohomología
5//! `H⁰`/`H¹` para decidir, con demostración, cuándo se puede fundir sin
6//! coordinación y cuándo hay una obstrucción localizada.
7//!
8//! Ver `DESIGN.md` para el diseño completo. Este es el scaffold de M0: la forma
9//! de todos los módulos, sin lógica de negocio todavía.
10//!
11//! Pipeline (§5):
12//! `cell` → `nerve` → `sheaf` → `cohomology` → `verdict`, validado por `oracle`.
13
14pub mod adapter;
15pub mod cell;
16pub mod cohomology;
17pub mod durable;
18pub mod error;
19pub mod escrow;
20pub mod fencing;
21pub mod gf2;
22pub mod invariant;
23pub mod lattice;
24pub mod linalg;
25pub mod native;
26pub mod nerve;
27pub mod oracle;
28pub mod reach;
29pub mod router;
30pub mod sheaf;
31pub mod tarski;
32pub mod verdict;
33
34pub use error::{Result, SheafError};
35
36#[cfg(test)]
37mod tests {
38    use crate::linalg::Matrix;
39
40    /// Test dummy de M0: el andamio compila y los tipos básicos existen.
41    /// La lógica real (cohomología, cordura topológica) llega en T1.
42    #[test]
43    fn scaffold_compila() {
44        let m = Matrix::zeros(2, 3);
45        assert_eq!(m.rows, 2);
46        assert_eq!(m.cols, 3);
47        assert_eq!(m.data.len(), 6);
48    }
49}