supercode-interchange 0.4.16

Canonical, provider-neutral session interchange primitives for Supercode
Documentation
//! The supercode ontology (`docs/ONTOLOGY.md`): the one model under the
//! session spine and the orchestration world. Lower layers never import upper
//! ones — this module depends on nothing above it except the session layer's
//! [`crate::session::OrchestrationNouns`] wire block, which a [`Binding`]
//! projects onto.
//!
//! * identity — [`HarnessId`], the one list every registry keys on
//! * surface  — [`SurfaceKey`], [`Trigger`], [`Recurrence`], [`CrossSurface`], [`WorkspaceRef`]
//! * binding  — [`Binding`], the one conversation record, decoded once per source
//! * fidelity — [`Fidelity`], one vocabulary for what a codec gave up
//! * residue  — [`Residue`], retained source fields (distinct from measured loss)
//! * secret   — [`SecretRef`] / [`Vault`]: credentials are named, never held
//! * codec    — [`ArtifactFidelity`], [`WorldCodec`]: the contract both halves obey

pub mod binding;
pub mod codec;
pub mod fidelity;
pub mod identity;
pub mod residue;
pub mod secret;
pub mod surface;

pub use binding::{
    hermes_cron_job_id, hermes_trigger_for_source, parse_hermes_session_key,
    parse_openclaw_session_key, render_hermes_session_key, Binding, EndReason, Handoff,
    HermesSessionRow, OrchestratorBindingRow, Worker,
};
pub use codec::{ArtifactFidelity, WorldCodec};
pub use fidelity::{
    core_messages, measure_fidelity, messages_equal, messages_equal_multimodal, replay_eligible,
    replay_excluded, Fidelity, FidelityMetric, FidelityResidue,
};
pub use identity::HarnessId;
pub use residue::Residue;
pub use secret::{SecretRef, Vault};
pub use surface::{CrossSurface, Recurrence, SurfaceKey, Trigger, WorkspaceKind, WorkspaceRef};