northroot-proof-engine 0.2.0

Core proof computation and validation library for PoSH (Proof of Shape) and PoX (Proof of Execution)
Documentation
//! Engine v0.2.0 - LOCKED
//! DO NOT MODIFY without version bump
//! Last frozen: 2025-11-06
//!
//! Northroot Proof Engine v0.2 — Core proof computation and validation library
//!
//! This library provides the foundational cryptographic and validation primitives
//! for the modular proof architecture (PoSH, PoX).
//!
//! # Architecture
//!
//! - **PoSH (Proof of Shape)**: Method transformation contracts
//! - **PoX (Proof of Execution)**: Run evidence and commitments
//!
//! # Modules
//!
//! - `types`: v0.2 proof type definitions
//! - `canonical`: Deterministic JSON canonicalization
//! - `hash`: SHA-256 hash computation
//! - `signature`: ed25519 signature handling
//! - `validation`: Input validation functions
//! - `data_shape`: Data shape hashing
//! - `ids`: OTEL ID validation (legacy compatibility)

pub mod canonical;
pub mod data_shape;
pub mod hash;
pub mod ids;
pub mod signature;
pub mod types;
pub mod validation;

// Re-export commonly used types
pub use types::{
    ArtifactRef, Did, IsoTime, MethodRef, MethodShapeManifest, RuntimePins, Sha256, Signature,
    SignedSpan, SpanCommitment, SpanMeta, SpanShape, SpanStatus, Trace, TraceRoots, Uri,
};

// Re-export canonicalization functions
pub use canonical::{
    canonicalize_method_shape, canonicalize_span_commitment, canonicalize_span_shape,
    canonicalize_trace, canonicalize_trace_roots, normalize_timestamp, CanonicalError,
};

// Re-export hash functions
pub use hash::{
    compute_identity_root, compute_method_shape_hash, compute_method_shape_root, compute_sha256,
    compute_span_commitment_hash, compute_span_shape_hash, compute_trace_hash,
    compute_trace_roots_hash, compute_trace_seq_root, compute_trace_set_root, HashError,
};

// Re-export signature functions
pub use signature::{
    sign_message, sign_span_commitment, validate_signature_format, verify_signature,
    verify_span_commitment_signature, SignatureError,
};

// Re-export validation functions
pub use validation::{
    validate_iso_time, validate_method_ref, validate_sha256_format, validate_span_commitment,
    validate_span_id, validate_trace_id, ValidationError,
};

// Re-export data shape functions
pub use data_shape::{compute_data_shape_hash, validate_data_shape_hash, DataShapeError};

// Re-export ID validation (for OTEL compatibility)
pub use ids::{
    validate_span_id as validate_otel_span_id, validate_trace_id as validate_otel_trace_id,
    OtelIdError,
};