pub struct BudgetTelemetry {Show 20 fields
pub schema_version: u16,
pub level: DegradationLevel,
pub pid_output: f64,
pub pid_p: f64,
pub pid_i: f64,
pub pid_d: f64,
pub e_value: f64,
pub frames_observed: u32,
pub frames_since_change: u32,
pub last_decision: BudgetDecision,
pub decision_reason: BudgetDecisionReason,
pub transition_seq: u64,
pub transition_correlation_id: u64,
pub frame_time_ms: f64,
pub target_ms: f64,
pub pid_gate_threshold: f64,
pub pid_gate_margin: f64,
pub evidence_threshold: f64,
pub evidence_margin: f64,
pub in_warmup: bool,
}Expand description
Snapshot of budget controller telemetry for diagnostics and debug overlay.
All fields are Copy — no allocations. Intended to be cheaply captured
once per frame and forwarded to a tracing subscriber or debug overlay widget.
Fields§
§schema_version: u16Telemetry schema version for CI/E2E consumers.
level: DegradationLevelCurrent degradation level.
pid_output: f64Last PID control signal (positive = over budget).
pid_p: f64Last PID proportional term.
pid_i: f64Last PID integral term.
pid_d: f64Last PID derivative term.
e_value: f64Current e-process value E_t.
frames_observed: u32Frames observed by the e-process.
frames_since_change: u32Frames since last level change.
last_decision: BudgetDecisionLast decision made by the controller.
decision_reason: BudgetDecisionReasonRationale code describing why the last decision was taken.
transition_seq: u64Monotonic transition sequence number (increments on degrade/upgrade).
transition_correlation_id: u64Correlation ID for the most recent transition event (0 if none yet).
frame_time_ms: f64Last observed frame time in milliseconds.
target_ms: f64Current target frame budget in milliseconds.
pid_gate_threshold: f64PID gate threshold used for the last decision path.
pid_gate_margin: f64PID gate margin (positive values indicate stronger gate pass).
evidence_threshold: f64Evidence (e-process) threshold used for the last decision path.
evidence_margin: f64Evidence gate margin (positive values indicate stronger gate pass).
in_warmup: boolWhether the controller is in warmup (e-process not yet active).
Trait Implementations§
Source§impl Clone for BudgetTelemetry
impl Clone for BudgetTelemetry
Source§fn clone(&self) -> BudgetTelemetry
fn clone(&self) -> BudgetTelemetry
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more