perspt-sdk¶
The domain-neutral SRBN control plane (PSP-8): residual evidence, the
canonical quadratic energy, the measured acceptance gate, capabilities,
scheduling, and the replay ledger. Domain packages such as perspt-coding
provide task-specific residual construction, weights, and correction
directions on top.
Modules¶
Module |
Description |
|---|---|
|
|
|
|
|
Measured acceptance gate and finite-decision bound |
|
Adapter over the published |
|
|
|
Capability-constrained admissibility kernel: proposals, never unmediated effects |
|
The five-clause admissibility kernel (PSP-9) |
|
Typed command IR and governance tiers (no implicit |
|
Dependency-aware parallel ready-queue scheduler |
|
Mutable, revisioned work graph |
|
Append-only, Merkle-chained event stream with audit replay |
|
Context checkpoints: compaction as recorded projection, never deletion |
|
Calibrated risk budgets via conformal risk control |
|
The recovery lattice for classified failures |
|
Phase-aware model routing ( |
|
Provider-neutral model plane identity and contract types (pure data) |
|
The model-conditioned prompt plane: typed sections, composition, digested programs (PSP-10) |
|
The bounded search plane: forests, branches, witnesses, limits (PSP-10) |
|
The typed tool catalog with effect/risk/footprint contracts |
|
Measured validator dependence, never assumed independence |
|
Spectral energy-slope constant |
|
Analytic stability claims ( |
|
|
|
Goal-presence sensor: the verifier that refuses false stability |
|
Read-only dashboard/TUI projections over the event ledger |
|
Mechanism-check benchmark harness and metrics |
|
Domain-tagged canonical byte encoding for replayable digests |
|
Glob-like scope patterns shared by capabilities and grant policies |
|
|
The crate re-exports the published srbn, srbn_ledger, and
srbn_serde kernel crates so consumers depend on one SRBN source.
Key Types¶
evaluate_gate - The measured acceptance gate:
pub fn evaluate_gate(
hard_pass: bool,
candidate_v: f64,
best_accepted_v: f64,
rho_gate: f64,
) -> Result<GateDecision>;
pub fn finite_decision_bound(
baseline_energy: f64,
rho_gate: f64,
rejection_budget: u32,
) -> Result<u64>;
EnergyScore - The result of scoring a candidate:
pub struct EnergyScore {
pub total: f64, // Total energy V
pub components: EnergyComponents, // Derived rollups
pub dominant: Vec<ResidualEventRef>, // Dominant residuals first
pub hard_violations: Vec<ResidualClass>,
}