Skip to main content

aristo_core/
lib.rs

1//! Aristo SDK shared library.
2//!
3//! Houses protocol logic shared between the proc-macro crate and the CLI:
4//! - `.aristo/index.toml` schema and IO (see [`index`])
5//! - B5b four-check verification pipeline (signature → identity → content → ancestry)
6//! - Bundled server public-key registry
7//! - `LanguageSyntax` registry (per K5)
8//!
9//! ## Design: serde-first, schema-derived
10//!
11//! Types in this crate are the canonical source of truth for every Aristo
12//! file format. Validation falls out of `serde::Deserialize` via newtype
13//! patterns — invalid values fail at parse time with a structural error.
14//! Cross-language consumers receive a JSON Schema derived from these types
15//! via `schemars` (see the `dump-schemas` example in a later slice).
16
17pub mod auth;
18pub mod badge;
19pub mod canon;
20pub mod canon_verify;
21pub mod config;
22pub mod critique;
23pub mod cycle;
24pub mod git;
25pub mod hash;
26pub mod id;
27pub mod index;
28pub mod proof;
29pub mod spec;
30pub mod walk;