Skip to main content

Crate aristo_core

Crate aristo_core 

Source
Expand description

Aristo SDK shared library.

Houses protocol logic shared between the proc-macro crate and the CLI:

  • .aristo/index.toml schema and IO (see index)
  • B5b four-check verification pipeline (signature → identity → content → ancestry)
  • Bundled server public-key registry
  • LanguageSyntax registry (per K5)

§Design: serde-first, schema-derived

Types in this crate are the canonical source of truth for every Aristo file format. Validation falls out of serde::Deserialize via newtype patterns — invalid values fail at parse time with a structural error. Cross-language consumers receive a JSON Schema derived from these types via schemars (see the dump-schemas example in a later slice).

Modules§

auth
Auth — Aretta credential resolution + on-disk persistence + (soon) the GitHub OAuth login flow.
badge
Badge tier scoring — D7 visible-score formula + D8 tier cutoffs.
canon
§13 canon-and-matching: client trait, wire types, and impls.
canon_verify
§14 canon-verification execution — SDK side.
config
aristo.toml document schema (per TOOLS.md §4 field map).
critique
.aristo/critiques/<id>.critique document schema (slice 27).
cycle
Detect cycles in the annotation parent graph.
git
Thin git shell-out helpers.
hash
Deterministic hashing helpers for annotation text and covered-region bodies.
id
Annotation-id generation: the two paths aristo stamp uses when an author leaves id unset.
index
.aristo/index.toml document schema (per D1 + B5a-revised + B5b).
proof
.aristo/proofs/<id>.proof document schema (per milestone E v2 design).
spec
.aristo/specs/<id>.spec document schema (per G5 + B3).
walk
Source walker — discover Aristo annotations in Rust source.