moon-change-point

    Production-oriented MoonBit change-point detection, streaming windows, multivariate monitoring, replay, SLO and alert routing

    change-point
    anomaly-detection
    time-series
    cusum
    Download zip
    Author
    Version
    0.3.1
    License
    Apache-2.0
    Last updated
    2 months ago
    Downloads
    59

    No dependencies

    #moon-change-point

    moon-change-point is a MoonBit library for online and offline statistical change-point detection in production telemetry and time-series pipelines. It targets WASM, WASM-GC, JavaScript, and native builds through the standard MoonBit toolchain.

    #Project positioning

    The library provides composable detection primitives for mean shifts, variance changes, spikes, trends, distribution drift, and multivariate changes. It also includes the surrounding data-quality, streaming, evaluation, replay, and alerting utilities needed to move from a detector score to an operational signal.

    #Core capabilities

    • Online detection: CUSUM, Page-Hinkley, simplified Bayesian online detection, EWMA, Robust-Z, IQR, trend, variance, seasonal, rank, and distribution detectors.
    • Streaming pipelines: bounded windows, time aggregation, watermark-based late-data handling, multi-metric monitoring, suppression, ensembles, and multi-scale evidence.
    • Offline analysis: binary segmentation, dynamic programming, split inspection, change-point metrics, tolerance-aware evaluation, and piecewise-constant error.
    • Multivariate monitoring: vector statistics, projection detection, Mahalanobis distance, covariance/correlation analysis, and correlated-change scoring.
    • Operational utilities: data-quality contracts, threshold calibration, bootstrap estimates, deterministic signal generation, replay comparison, explanations, SLO tracking, incident clustering, alert routing, rollout guardrails, and canary plans.
    • Integration outputs: stable JSON Lines, CSV, Prometheus, Markdown, and summary JSON exports for logs, notebooks, CI artifacts, and dashboards.

    #Quick start

    Add the package to a MoonBit module:

    moon add Zy789kl/moon-change-point

    Use a detector through the public package API:

    ///|
    import {
    "Zy789kl/moon-change-point" @cp,
    }

    ///|
    fn main {
    let detector = @cp.Cusum::new(target_mean=0.0, control_limit=5.0, drift=0.5)
    let result = detector.update_result(2.0, index=1)
    println(result.summary())
    }

    DetectionResult exposes changed, score, confidence, direction, index, and evidence, so callers can choose their own storage and alerting policy.

    #CLI

    The repository includes a small reproducible command-line program:

    moon run cmd/main

    It generates a fixed 512-sample mean-and-variance-shift scenario and prints a Markdown benchmark table for CUSUM, Robust-Z, and projection ensemble detection. The library API remains the primary integration surface for applications.

    #Architecture

    The root package is organized by responsibility:

    • types.mbt, stats.mbt, and window.mbt define public results, stable online statistics, and bounded windows.
    • cusum.mbt, page_hinkley.mbt, bayesian.mbt, adaptive_detectors.mbt, and advanced_detectors.mbt implement online detectors.
    • pipeline.mbt, stream_engine.mbt, time_windows.mbt, events.mbt, and alert_routing.mbt compose detectors into streaming workflows.
    • offline_analysis.mbt, segment_quality.mbt, features.mbt, and rank_tests.mbt provide historical analysis and feature-level evidence.
    • multivariate.mbt, matrix.mbt, and correlation.mbt cover vector and cross-series monitoring.
    • quality.mbt, calibration.mbt, sampling.mbt, replay.mbt, explainability.mbt, and reporting.mbt support validation, reproducibility, and integration.
    • production_*.mbt provides production-facing contracts, preprocessing, forecasting, monitoring, incident lifecycle, SLOs, rollout guardrails, canary control, and telemetry export.
    • cmd/main is a runnable benchmark entry point; it does not add a second library abstraction.

    #Benchmark

    The benchmark uses a deterministic 512-sample scenario with change point 256, baseline 10.0, mean shift 2.0, pre-change noise 0.15, post-change noise 0.7, and seed 20260818.

    detectordetectionsfirst detectionprecisionrecallF1
    CUSUM772580.01298701298701298810.025641025641025647
    Robust-Z112570.0909090909090909110.16666666666666669
    Projection ensemble1257111

    The complete table, checksums, reproduction command, and local wall-clock measurements are in BENCHMARK.md.

    #Tests

    The repository contains boundary, regression, integration, and long-stream tests for the public API:

    moon fmt --check moon check --deny-warn --target all moon build --target all moon test --deny-warn --target all

    The current test suite passes 425 tests. moon info regenerates the tracked public interface files so API changes are visible in review.

    #CI

    GitHub Actions installs the latest stable MoonBit toolchain and runs format, warning-free checks, all-target builds, generated-interface checks, and tests on Ubuntu, macOS, and Windows. The reproducible benchmark workflow runs manually or for version tags.

    #License

    Apache-2.0. See LICENSE.

    The published package is available on Mooncakes as Zy789kl/moon-change-point@0.3.1, and the source repository is github.com/Zy789kl/moon-change-point.

    AdaptiveBaseline

    pub struct AdaptiveBaseline {
    moments : OnlineMoments
    value : Double
    learning_rate : Double
    initialized : Bool
    }

    A slowly adapting baseline for streams whose normal level changes over time.

    AdaptiveBaseline::new

    fn AdaptiveBaseline::new(learning_rate? : Double) -> AdaptiveBaseline

    AdaptiveBaseline::sample_count

    fn AdaptiveBaseline::sample_count(self : AdaptiveBaseline) -> Int

    AdaptiveBaseline::summary

    AdaptiveBaseline::update

    fn AdaptiveBaseline::update(self : AdaptiveBaseline, observation : Double) -> Double

    AdaptiveBaseline::value

    fn AdaptiveBaseline::value(self : AdaptiveBaseline) -> Double

    AdaptiveThreshold

    pub struct AdaptiveThreshold {
    threshold : Double
    rate : Double
    minimum : Double
    maximum : Double
    count : Int
    }

    AdaptiveThreshold::count

    fn AdaptiveThreshold::count(self : AdaptiveThreshold) -> Int

    AdaptiveThreshold::new

    fn AdaptiveThreshold::new(initial? : Double, rate? : Double, minimum? : Double, maximum? : Double) -> AdaptiveThreshold

    AdaptiveThreshold::observe

    fn AdaptiveThreshold::observe(self : AdaptiveThreshold, score : Double, positive : Bool) -> Double

    AdaptiveThreshold::value

    fn AdaptiveThreshold::value(self : AdaptiveThreshold) -> Double

    AggregationKind

    pub(all) enum AggregationKind {
    MeanAggregate
    SumAggregate
    MinimumAggregate
    MaximumAggregate
    StandardDeviationAggregate
    }

    Aggregation choices for a fixed streaming window.

    AlertBudget

    pub struct AlertBudget {
    capacity : Double
    refill : Double
    tokens : Double
    suppressed : Int
    }

    AlertBudget::allow

    fn AlertBudget::allow(self : AlertBudget) -> Bool

    AlertBudget::new

    fn AlertBudget::new(capacity? : Int, refill? : Double) -> AlertBudget

    AlertBudget::suppressed

    fn AlertBudget::suppressed(self : AlertBudget) -> Int

    AlertBudget::tick

    fn AlertBudget::tick(self : AlertBudget) -> Unit

    AlertEvent

    pub struct AlertEvent {
    metric : String
    point : ChangePoint
    suppressed : Bool
    ordinal : Int
    }

    A named alert emitted by a multi-series pipeline.

    AlertEvent::new

    fn AlertEvent::new(metric : String, point : ChangePoint, suppressed? : Bool, ordinal? : Int) -> AlertEvent

    Constructs an alert event.

    AlertPolicy

    pub struct AlertPolicy {
    minimum_score : Double
    minimum_confidence : Double
    minimum_gap : Int
    recovery_points : Int
    quiet_points : Int
    healthy_points : Int
    }

    Controls deduplication, minimum severity, and recovery for one metric.

    AlertPolicy::accept

    fn AlertPolicy::accept(self : AlertPolicy, result : DetectionResult) -> Bool

    AlertPolicy::minimum_score

    fn AlertPolicy::minimum_score(self : AlertPolicy) -> Double

    AlertPolicy::new

    fn AlertPolicy::new(minimum_score? : Double, minimum_confidence? : Double, minimum_gap? : Int, recovery_points? : Int) -> AlertPolicy

    AlertPolicy::reset

    fn AlertPolicy::reset(self : AlertPolicy) -> Unit

    AlertSeverity

    pub(all) enum AlertSeverity {
    Informational
    Warning
    Critical
    }

    The severity used by alerting integrations.

    Ar1Forecaster

    pub struct Ar1Forecaster {
    mean : Double
    covariance : Double
    variance : Double
    previous : Double
    count : Int
    forgetting : Double
    }

    Ar1Forecaster::new

    fn Ar1Forecaster::new(forgetting? : Double) -> Ar1Forecaster

    Ar1Forecaster::update

    fn Ar1Forecaster::update(self : Ar1Forecaster, value : Double) -> ForecastPoint

    Bayesian

    pub struct Bayesian {
    hazard_rate : Double
    run_length_probs : Array[Double]
    mu_t : Array[Double]
    kappa_t : Array[Double]
    alpha_t : Array[Double]
    beta_t : Array[Double]
    mu0 : Double
    kappa0 : Double
    alpha0 : Double
    beta0 : Double
    max_run_length : Int
    }

    Bayesian implements a simplified Bayesian Online Change Point Detection using a Normal-Gamma conjugate prior.

    Bayesian::new

    fn Bayesian::new(hazard_rate? : Double, mu0? : Double, kappa0? : Double, alpha0? : Double, beta0? : Double, max_run_length? : Int) -> Bayesian

    Creates a new Bayesian Online Change Point Detector.

    Bayesian::update

    fn Bayesian::update(self : Bayesian, value : Double) -> Double

    Updates the detector and returns the probability of a change point at the current step.

    Bayesian::update_result

    fn Bayesian::update_result(self : Bayesian, value : Double, index? : Int) -> DetectionResult

    Rich result form of the Bayesian update.

    BenchmarkResult

    pub struct BenchmarkResult {
    name : String
    samples : Int
    passes : Int
    detections : Int
    first_detection : Int
    checksum : Double
    truth_count : Int
    metrics : ChangePointMetrics
    }

    Results of a deterministic detector benchmark.

    BenchmarkResult::empty

    fn BenchmarkResult::empty(name : String) -> BenchmarkResult

    BenchmarkResult::summary

    fn BenchmarkResult::summary(self : BenchmarkResult) -> String

    BootstrapEstimate

    pub struct BootstrapEstimate {
    mean : Double
    lower : Double
    upper : Double
    standard_error : Double
    replicates : Int
    }

    ChangeDirection

    pub(all) enum ChangeDirection {
    Increase
    Decrease
    VarianceIncrease
    VarianceDecrease
    DistributionShift
    Unknown
    }

    The direction of a distributional change.

    ChangePoint

    pub struct ChangePoint {
    timestamp : Int64
    index : Int
    score : Double
    confidence : Double
    severity : AlertSeverity
    direction : ChangeDirection
    detector : String
    baseline : Double
    observed : Double
    }

    A detected change with enough context for a downstream alert or dashboard.

    ChangePoint::from_result

    fn ChangePoint::from_result(point : SignalPoint, result : DetectionResult, detector : String, baseline : Double) -> ChangePoint

    Creates a change point from an online result.

    ChangePoint::summary

    fn ChangePoint::summary(self : ChangePoint) -> String

    Returns a stable log line for a change point.

    ChangePointMetrics

    pub struct ChangePointMetrics {
    true_positives : Int
    false_positives : Int
    false_negatives : Int
    precision : Double
    recall : Double
    f1 : Double
    mean_detection_delay : Double
    }

    Quality metrics for a set of predicted change indices.

    ChangePointMetrics::empty

    ConsecutiveRule

    pub struct ConsecutiveRule {
    required : Int
    hits : Int
    misses : Int
    }

    A debouncer that requires several consecutive positive observations.

    ConsecutiveRule::hits

    fn ConsecutiveRule::hits(self : ConsecutiveRule) -> Int

    ConsecutiveRule::new

    fn ConsecutiveRule::new(required? : Int) -> ConsecutiveRule

    ConsecutiveRule::push

    fn ConsecutiveRule::push(self : ConsecutiveRule, positive : Bool) -> Bool

    Cusum

    pub struct Cusum {
    target_mean : Double
    control_limit : Double
    drift : Double
    g_positive : Double
    g_negative : Double
    t : Int
    }

    Cusum implements the Cumulative Sum algorithm for detecting shifts in the mean.

    Cusum::new

    fn Cusum::new(target_mean? : Double, control_limit? : Double, drift? : Double) -> Cusum

    Creates a new CUSUM detector.

    Cusum::reset

    fn Cusum::reset(self : Cusum) -> Unit

    Resets the internal accumulators.

    Cusum::update

    fn Cusum::update(self : Cusum, value : Double) -> Bool

    Updates the CUSUM detector with a new value and returns true if a change is detected.

    Cusum::update_result

    fn Cusum::update_result(self : Cusum, value : Double, index? : Int) -> DetectionResult

    Rich result form of update, retaining the direction and evidence.

    DataQualityGate

    pub struct DataQualityGate {
    minimum_ratio : Double
    reject_non_monotonic : Bool
    reject_dimension_mismatch : Bool
    }

    DataQualityGate::accept

    fn DataQualityGate::accept(self : DataQualityGate, report : QualityReport) -> Bool

    DataQualityGate::new

    fn DataQualityGate::new(minimum_ratio? : Double, reject_non_monotonic? : Bool, reject_dimension_mismatch? : Bool) -> DataQualityGate

    DetectionExplanation

    pub struct DetectionExplanation {
    result : DetectionResult
    baseline : Double
    observed : Double
    deviation : Double
    relative_change : Double
    contributions : Array[EvidenceContribution]
    recommendation : String
    }

    DetectionExplanation::empty

    fn DetectionExplanation::empty(index? : Int) -> DetectionExplanation

    DetectionResult

    pub struct DetectionResult {
    changed : Bool
    score : Double
    confidence : Double
    direction : ChangeDirection
    index : Int
    evidence : Double
    }

    A normalized result returned by online and offline detectors.

    DetectionResult::new

    fn DetectionResult::new(changed : Bool, score : Double, confidence : Double, direction : ChangeDirection, index : Int, evidence? : Double) -> DetectionResult

    Builds a result while keeping confidence and evidence in a safe range.

    DetectionResult::quiet

    fn DetectionResult::quiet(index? : Int) -> DetectionResult

    Returns a result that represents an ordinary observation.

    DetectionResult::summary

    fn DetectionResult::summary(self : DetectionResult) -> String

    Produces a compact representation suitable for logs.

    Detector

    pub struct Detector {
    detector : DetectorType
    suppression_count : Int
    suppression_limit : Int
    }

    Detector wraps a specific algorithm and supports multi-metric alert suppression.

    Detector::new

    fn Detector::new(detector : DetectorType, suppression_limit? : Int) -> Detector

    Creates a new multi-metric detector wrapper.

    Detector::update

    fn Detector::update(self : Detector, value : Double) -> Bool

    Updates the detector and handles alert suppression. Returns true if an unsuppressed alert is triggered.

    Detector::update_result

    fn Detector::update_result(self : Detector, value : Double, index? : Int) -> DetectionResult

    Rich result form of the detector wrapper. Suppression is applied to the change flag only.

    DetectorSpec

    pub struct DetectorSpec {
    name : String
    family : String
    online : Bool
    multivariate : Bool
    robust : Bool
    default_threshold : Double
    description : String
    }

    Public algorithm metadata for dashboards and configuration UIs.

    DetectorSpec::new

    fn DetectorSpec::new(name : String, family : String, online : Bool, multivariate : Bool, robust : Bool, default_threshold : Double, description : String) -> DetectorSpec

    DetectorSpec::summary

    fn DetectorSpec::summary(self : DetectorSpec) -> String

    DetectorType

    pub(all) enum DetectorType {
    CusumDetector(Cusum)
    PageHinkleyDetector(PageHinkley)
    BayesianDetector(Bayesian)
    }

    DetectorType represents the type of change point detector to use.

    DeterministicRng

    pub struct DeterministicRng {
    state : Int64
    }

    A deterministic pseudo-random source used by benchmarks and reproducible tests.

    DeterministicRng::new

    fn DeterministicRng::new(seed? : Int64) -> DeterministicRng

    DeterministicRng::next

    fn DeterministicRng::next(self : DeterministicRng) -> Int64

    DeterministicRng::normalish

    fn DeterministicRng::normalish(self : DeterministicRng, amplitude? : Double) -> Double

    DeterministicRng::symmetric

    fn DeterministicRng::symmetric(self : DeterministicRng) -> Double

    DeterministicRng::unit

    fn DeterministicRng::unit(self : DeterministicRng) -> Double

    DistributionShiftDetector

    pub struct DistributionShiftDetector {
    reference : DoubleWindow
    current : DoubleWindow
    threshold : Double
    index : Int
    }

    Compares adjacent windows and emits a distribution-shift result.

    DistributionShiftDetector::new

    fn DistributionShiftDetector::new(window_size? : Int, threshold? : Double) -> DistributionShiftDetector

    DistributionShiftDetector::update

    DoubleWindow

    pub struct DoubleWindow {
    capacity : Int
    values : Array[Double]
    start : Int
    length : Int
    }

    A bounded ring buffer for numeric streaming windows.

    DoubleWindow::capacity

    fn DoubleWindow::capacity(self : DoubleWindow) -> Int

    DoubleWindow::clear

    fn DoubleWindow::clear(self : DoubleWindow) -> Unit

    DoubleWindow::first

    fn DoubleWindow::first(self : DoubleWindow) -> Double?

    DoubleWindow::get

    fn DoubleWindow::get(self : DoubleWindow, index : Int) -> Double?

    DoubleWindow::is_empty

    fn DoubleWindow::is_empty(self : DoubleWindow) -> Bool

    DoubleWindow::is_full

    fn DoubleWindow::is_full(self : DoubleWindow) -> Bool

    DoubleWindow::last

    fn DoubleWindow::last(self : DoubleWindow) -> Double?

    DoubleWindow::length

    fn DoubleWindow::length(self : DoubleWindow) -> Int

    DoubleWindow::mean

    fn DoubleWindow::mean(self : DoubleWindow) -> Double

    DoubleWindow::median

    fn DoubleWindow::median(self : DoubleWindow) -> Double

    DoubleWindow::new

    fn DoubleWindow::new(capacity : Int) -> DoubleWindow

    Creates a fixed-capacity window. Non-positive capacities are normalized to one.

    DoubleWindow::push

    fn DoubleWindow::push(self : DoubleWindow, value : Double) -> Double?

    Adds a value and returns the value evicted from a full window, if any.

    DoubleWindow::quantile

    fn DoubleWindow::quantile(self : DoubleWindow, probability : Double) -> Double

    DoubleWindow::slope

    fn DoubleWindow::slope(self : DoubleWindow) -> Double

    DoubleWindow::snapshot

    fn DoubleWindow::snapshot(self : DoubleWindow) -> StatsSummary

    DoubleWindow::standard_deviation

    fn DoubleWindow::standard_deviation(self : DoubleWindow) -> Double

    DoubleWindow::sum

    fn DoubleWindow::sum(self : DoubleWindow) -> Double

    DoubleWindow::to_array

    fn DoubleWindow::to_array(self : DoubleWindow) -> Array[Double]

    DoubleWindow::variance

    fn DoubleWindow::variance(self : DoubleWindow) -> Double

    DualSidedDetector

    pub struct DualSidedDetector {
    positive : Cusum
    negative : Cusum
    index : Int
    }

    DualSidedDetector::new

    fn DualSidedDetector::new(target? : Double, limit? : Double, drift? : Double) -> DualSidedDetector

    DualSidedDetector::update

    fn DualSidedDetector::update(self : DualSidedDetector, value : Double) -> DetectionResult

    EnsembleResult

    pub struct EnsembleResult {
    result : DetectionResult
    votes : Int
    detector_count : Int
    agreement : Double
    }

    EventHistory

    pub struct EventHistory {
    capacity : Int
    events : Array[AlertEvent]
    total : Int
    }

    EventHistory::critical_count

    fn EventHistory::critical_count(self : EventHistory) -> Int

    EventHistory::events

    fn EventHistory::events(self : EventHistory) -> Array[AlertEvent]

    EventHistory::latest

    fn EventHistory::latest(self : EventHistory) -> AlertEvent?

    EventHistory::length

    fn EventHistory::length(self : EventHistory) -> Int

    EventHistory::new

    fn EventHistory::new(capacity? : Int) -> EventHistory

    EventHistory::push

    fn EventHistory::push(self : EventHistory, event : AlertEvent) -> Unit

    EventHistory::total

    fn EventHistory::total(self : EventHistory) -> Int

    EventHistory::unsuppressed_count

    fn EventHistory::unsuppressed_count(self : EventHistory) -> Int

    EvidenceContribution

    pub struct EvidenceContribution {
    name : String
    value : Double
    weight : Double
    contribution : Double
    }

    Structured evidence for explaining why a detector emitted an alert.

    EvidenceContribution::new

    fn EvidenceContribution::new(name : String, value : Double, weight? : Double) -> EvidenceContribution

    EwmaDetector

    pub struct EwmaDetector {
    baseline : Double
    variance : Double
    alpha : Double
    threshold : Double
    warmup : Int
    count : Int
    index : Int
    initialized : Bool
    }

    EWMA residual detector. It is useful for low-latency monitoring of a service metric.

    EwmaDetector::baseline

    fn EwmaDetector::baseline(self : EwmaDetector) -> Double

    EwmaDetector::new

    fn EwmaDetector::new(alpha? : Double, threshold? : Double, warmup? : Int, initial_mean? : Double, initial_variance? : Double) -> EwmaDetector

    EwmaDetector::reset

    fn EwmaDetector::reset(self : EwmaDetector) -> Unit

    EwmaDetector::scale

    fn EwmaDetector::scale(self : EwmaDetector) -> Double

    EwmaDetector::update

    fn EwmaDetector::update(self : EwmaDetector, value : Double) -> DetectionResult

    FeatureExtractor

    pub struct FeatureExtractor {
    left : DoubleWindow
    right : DoubleWindow
    threshold : Double
    index : Int
    }

    FeatureExtractor::new

    fn FeatureExtractor::new(window_size? : Int, threshold? : Double) -> FeatureExtractor

    FeatureExtractor::update

    fn FeatureExtractor::update(self : FeatureExtractor, value : Double) -> DetectionResult

    ForecastPoint

    pub struct ForecastPoint {
    prediction : Double
    lower : Double
    upper : Double
    residual : Double
    }

    ForecastPoint::new

    fn ForecastPoint::new(prediction : Double, residual : Double, uncertainty? : Double) -> ForecastPoint

    Histogram

    pub struct Histogram {
    minimum : Double
    maximum : Double
    bins : Int
    counts : Array[Int]
    total : Int
    }

    A fixed-edge histogram for monitoring changes in value distribution.

    Histogram::bins

    fn Histogram::bins(self : Histogram) -> Int

    Histogram::counts

    fn Histogram::counts(self : Histogram) -> Array[Int]

    Histogram::new

    fn Histogram::new(minimum : Double, maximum : Double, bins : Int) -> Histogram

    Histogram::probabilities

    fn Histogram::probabilities(self : Histogram) -> Array[Double]

    Histogram::push

    fn Histogram::push(self : Histogram, value : Double) -> Unit

    Histogram::reset

    fn Histogram::reset(self : Histogram) -> Unit

    Histogram::total

    fn Histogram::total(self : Histogram) -> Int

    HoltForecaster

    pub struct HoltForecaster {
    level : Double
    trend : Double
    alpha : Double
    beta : Double
    count : Int
    }

    HoltForecaster::new

    fn HoltForecaster::new(alpha? : Double, beta? : Double) -> HoltForecaster

    HoltForecaster::update

    fn HoltForecaster::update(self : HoltForecaster, value : Double, horizon? : Int) -> ForecastPoint

    HysteresisRule

    pub struct HysteresisRule {
    enter_threshold : Double
    exit_threshold : Double
    active : Bool
    }

    Hysteresis prevents alert flapping around a single threshold.

    HysteresisRule::active

    fn HysteresisRule::active(self : HysteresisRule) -> Bool

    HysteresisRule::new

    fn HysteresisRule::new(enter_threshold? : Double, exit_threshold? : Double) -> HysteresisRule

    HysteresisRule::push

    fn HysteresisRule::push(self : HysteresisRule, score : Double) -> Bool

    Incident

    pub struct Incident {
    metric : String
    first_timestamp : Int64
    last_timestamp : Int64
    alerts : Int
    critical : Int
    maximum_score : Double
    direction : ChangeDirection
    }

    Groups nearby alert events into incidents for operators.

    Incident::add

    fn Incident::add(self : Incident, event : AlertEvent) -> Unit

    Incident::duration

    fn Incident::duration(self : Incident) -> Int64

    Incident::empty

    fn Incident::empty(metric : String) -> Incident

    Incident::is_critical

    fn Incident::is_critical(self : Incident) -> Bool

    Incident::summary

    fn Incident::summary(self : Incident) -> String

    IqrSpikeDetector

    pub struct IqrSpikeDetector {
    window : DoubleWindow
    multiplier : Double
    warmup : Int
    index : Int
    }

    A lightweight detector for isolated spikes using a rolling interquartile fence.

    IqrSpikeDetector::new

    fn IqrSpikeDetector::new(window_size? : Int, multiplier? : Double) -> IqrSpikeDetector

    IqrSpikeDetector::update

    fn IqrSpikeDetector::update(self : IqrSpikeDetector, value : Double) -> DetectionResult

    LateDataPolicy

    pub(all) enum LateDataPolicy {
    Drop
    KeepForCorrection
    ReplaceSameTimestamp
    }

    The policy applied when a timestamp is older than the accepted watermark.

    LinearForecaster

    pub struct LinearForecaster {
    window : DoubleWindow
    horizon : Int
    uncertainty_multiplier : Double
    }

    LinearForecaster::fit

    fn LinearForecaster::fit(self : LinearForecaster, value : Double) -> ForecastPoint

    LinearForecaster::new

    fn LinearForecaster::new(window_size? : Int, horizon? : Int, uncertainty_multiplier? : Double) -> LinearForecaster

    MahalanobisDetector

    pub struct MahalanobisDetector {
    stats : OnlineVectorStats
    threshold : Double
    warmup : Int
    index : Int
    }

    Diagonal Mahalanobis detector. It remains usable when a full covariance matrix is unavailable.

    MahalanobisDetector::count

    fn MahalanobisDetector::count(self : MahalanobisDetector) -> Int

    MahalanobisDetector::dimension

    fn MahalanobisDetector::dimension(self : MahalanobisDetector) -> Int

    MahalanobisDetector::new

    fn MahalanobisDetector::new(dimension : Int, threshold? : Double, warmup? : Int) -> MahalanobisDetector

    MahalanobisDetector::update

    fn MahalanobisDetector::update(self : MahalanobisDetector, values : Array[Double]) -> DetectionResult

    MeanVarianceDetector

    pub struct MeanVarianceDetector {
    baseline : DoubleWindow
    current : DoubleWindow
    mean_threshold : Double
    variance_threshold : Double
    index : Int
    }

    MeanVarianceDetector::new

    fn MeanVarianceDetector::new(window_size? : Int, mean_threshold? : Double, variance_threshold? : Double) -> MeanVarianceDetector

    MeanVarianceDetector::update

    fn MeanVarianceDetector::update(self : MeanVarianceDetector, value : Double) -> DetectionResult

    MetricPipeline

    pub struct MetricPipeline {
    name : String
    detector : PipelineDetector
    policy : AlertPolicy
    index : Int
    ordinal : Int
    baseline : Double
    }

    One named metric with a detector and an alert policy.

    MetricPipeline::index

    fn MetricPipeline::index(self : MetricPipeline) -> Int

    MetricPipeline::new

    fn MetricPipeline::new(name : String, detector : PipelineDetector, policy? : AlertPolicy, baseline? : Double) -> MetricPipeline

    MetricPipeline::process

    fn MetricPipeline::process(self : MetricPipeline, timestamp : Int64, value : Double) -> AlertEvent?

    MetricPipeline::reset

    fn MetricPipeline::reset(self : MetricPipeline) -> Unit

    MissingValueStrategy

    pub(all) enum MissingValueStrategy {
    DropValue
    ImputeLast
    ImputeMean
    ImputeZero
    MarkUnknown
    }

    Strategy used when an input value is not usable.

    MultiMetricMonitor

    pub struct MultiMetricMonitor {
    pipelines : Array[MetricPipeline]
    processed : Int
    emitted : Int
    suppressed : Int
    }

    A deterministic multi-metric monitor. It is intentionally array-backed for WASM portability.

    MultiMetricMonitor::emitted_count

    fn MultiMetricMonitor::emitted_count(self : MultiMetricMonitor) -> Int

    MultiMetricMonitor::metric_count

    fn MultiMetricMonitor::metric_count(self : MultiMetricMonitor) -> Int

    MultiMetricMonitor::new

    MultiMetricMonitor::process

    fn MultiMetricMonitor::process(self : MultiMetricMonitor, metric_index : Int, timestamp : Int64, value : Double) -> AlertEvent?

    MultiMetricMonitor::process_batch

    fn MultiMetricMonitor::process_batch(self : MultiMetricMonitor, metric_index : Int, points : Array[SignalPoint]) -> Array[AlertEvent]

    MultiMetricMonitor::processed_count

    fn MultiMetricMonitor::processed_count(self : MultiMetricMonitor) -> Int

    MultiMetricMonitor::suppressed_count

    fn MultiMetricMonitor::suppressed_count(self : MultiMetricMonitor) -> Int

    MultiScaleDetector

    pub struct MultiScaleDetector {
    short : RobustZDetector
    medium : RobustZDetector
    long : TrendShiftDetector
    minimum_consensus : Double
    index : Int
    }

    MultiScaleDetector::new

    fn MultiScaleDetector::new(short? : Int, medium? : Int, long? : Int, minimum_consensus? : Double) -> MultiScaleDetector

    MultiScaleDetector::update

    fn MultiScaleDetector::update(self : MultiScaleDetector, value : Double) -> DetectionResult

    MultivariateEnsemble

    pub struct MultivariateEnsemble {
    detectors : Array[ProjectionDetector]
    quorum : Int
    index : Int
    }

    An ensemble that combines several multivariate views with a quorum rule.

    MultivariateEnsemble::detector_count

    fn MultivariateEnsemble::detector_count(self : MultivariateEnsemble) -> Int

    MultivariateEnsemble::new

    fn MultivariateEnsemble::new(detectors : Array[ProjectionDetector], quorum? : Int) -> MultivariateEnsemble

    MultivariateEnsemble::update

    fn MultivariateEnsemble::update(self : MultivariateEnsemble, values : Array[Double]) -> DetectionResult

    OfflineChange

    pub struct OfflineChange {
    index : Int
    score : Double
    left_mean : Double
    right_mean : Double
    left_variance : Double
    right_variance : Double
    direction : ChangeDirection
    }

    A candidate change point returned by offline analysis.

    OnlineEnsemble

    pub struct OnlineEnsemble {
    detectors : Array[PipelineDetector]
    quorum : Int
    index : Int
    }

    OnlineEnsemble::count

    fn OnlineEnsemble::count(self : OnlineEnsemble) -> Int

    OnlineEnsemble::new

    fn OnlineEnsemble::new(detectors : Array[PipelineDetector], quorum? : Int) -> OnlineEnsemble

    OnlineEnsemble::update

    fn OnlineEnsemble::update(self : OnlineEnsemble, value : Double) -> EnsembleResult

    OnlineMoments

    pub struct OnlineMoments {
    count : Int
    mean : Double
    m2 : Double
    minimum : Double
    maximum : Double
    }

    Numerically stable online moments using Welford's recurrence.

    OnlineMoments::count

    fn OnlineMoments::count(self : OnlineMoments) -> Int

    OnlineMoments::maximum

    fn OnlineMoments::maximum(self : OnlineMoments) -> Double

    OnlineMoments::mean

    fn OnlineMoments::mean(self : OnlineMoments) -> Double

    OnlineMoments::merge

    fn OnlineMoments::merge(self : OnlineMoments, other : OnlineMoments) -> Unit

    OnlineMoments::minimum

    fn OnlineMoments::minimum(self : OnlineMoments) -> Double

    OnlineMoments::new

    Creates an empty accumulator.

    OnlineMoments::population_variance

    fn OnlineMoments::population_variance(self : OnlineMoments) -> Double

    OnlineMoments::push

    fn OnlineMoments::push(self : OnlineMoments, value : Double) -> Unit

    Adds one observation.

    OnlineMoments::standard_deviation

    fn OnlineMoments::standard_deviation(self : OnlineMoments) -> Double

    OnlineMoments::summary

    fn OnlineMoments::summary(self : OnlineMoments, median? : Double) -> StatsSummary

    OnlineMoments::variance

    fn OnlineMoments::variance(self : OnlineMoments) -> Double

    OnlineMoments::with_prior

    fn OnlineMoments::with_prior(mean : Double, variance : Double, weight : Int) -> OnlineMoments

    Creates an accumulator with a prior mean and effective sample size.

    OnlineVectorStats

    pub struct OnlineVectorStats {
    dimension : Int
    count : Int
    means : Array[Double]
    m2 : Array[Double]
    minima : Array[Double]
    maxima : Array[Double]
    }

    Per-dimension Welford statistics for a vector stream.

    OnlineVectorStats::count

    fn OnlineVectorStats::count(self : OnlineVectorStats) -> Int

    OnlineVectorStats::dimension

    fn OnlineVectorStats::dimension(self : OnlineVectorStats) -> Int

    OnlineVectorStats::maximums

    fn OnlineVectorStats::maximums(self : OnlineVectorStats) -> Array[Double]

    OnlineVectorStats::means

    fn OnlineVectorStats::means(self : OnlineVectorStats) -> Array[Double]

    OnlineVectorStats::minimums

    fn OnlineVectorStats::minimums(self : OnlineVectorStats) -> Array[Double]

    OnlineVectorStats::new

    fn OnlineVectorStats::new(dimension : Int) -> OnlineVectorStats

    OnlineVectorStats::push

    fn OnlineVectorStats::push(self : OnlineVectorStats, values : Array[Double]) -> Bool

    OnlineVectorStats::standard_deviations

    fn OnlineVectorStats::standard_deviations(self : OnlineVectorStats) -> Array[Double]

    OnlineVectorStats::standardized

    fn OnlineVectorStats::standardized(self : OnlineVectorStats, values : Array[Double]) -> Array[Double]

    OnlineVectorStats::variances

    fn OnlineVectorStats::variances(self : OnlineVectorStats) -> Array[Double]

    OrderedPoint

    pub struct OrderedPoint {
    point : SignalPoint
    late : Bool
    arrival_order : Int
    }

    A timestamped sample that has passed through a reorder buffer.

    PageHinkley

    pub struct PageHinkley {
    target_mean : Double
    control_limit : Double
    delta : Double
    alpha : Double
    sum : Double
    min_sum : Double
    n : Int
    }

    PageHinkley implements the Page-Hinkley test for online change point detection.

    PageHinkley::new

    fn PageHinkley::new(target_mean? : Double, control_limit? : Double, delta? : Double, alpha? : Double) -> PageHinkley

    Creates a new Page-Hinkley detector.

    PageHinkley::reset

    fn PageHinkley::reset(self : PageHinkley) -> Unit

    Resets the internal accumulators.

    PageHinkley::update

    fn PageHinkley::update(self : PageHinkley, value : Double) -> Bool

    Updates the Page-Hinkley detector with a new value and returns true if a change is detected.

    PageHinkley::update_result

    fn PageHinkley::update_result(self : PageHinkley, value : Double, index? : Int) -> DetectionResult

    Rich result form of update, retaining direction and cumulative evidence.

    PersistenceDetector

    pub struct PersistenceDetector {
    detector : EwmaDetector
    rule : ConsecutiveRule
    index : Int
    }

    PersistenceDetector::new

    fn PersistenceDetector::new(warmup? : Int, persistence? : Int) -> PersistenceDetector

    PersistenceDetector::update

    fn PersistenceDetector::update(self : PersistenceDetector, value : Double) -> DetectionResult

    PipelineDetector

    pub(all) enum PipelineDetector {
    LegacyDetector(Detector)
    Ewma(EwmaDetector)
    RobustZ(RobustZDetector)
    VarianceShift(VarianceShiftDetector)
    TrendShift(TrendShiftDetector)
    IqrSpike(IqrSpikeDetector)
    }

    A detector that can be selected for a production metric pipeline.

    PipelineDetector::update

    fn PipelineDetector::update(self : PipelineDetector, value : Double, index : Int) -> DetectionResult

    ProductionAdaptiveBaselineDetector

    pub struct ProductionAdaptiveBaselineDetector {
    window : DoubleWindow
    learning_rate : Double
    threshold : Double
    warmup : Int
    baseline : Double
    index : Int
    initialized : Bool
    }

    Baseline-relative detector for services whose normal level changes gradually.

    ProductionAdaptiveBaselineDetector::baseline

    ProductionAdaptiveBaselineDetector::index

    ProductionAdaptiveBaselineDetector::new

    fn ProductionAdaptiveBaselineDetector::new(window_size? : Int, learning_rate? : Double, threshold? : Double, warmup? : Int) -> ProductionAdaptiveBaselineDetector

    ProductionAdaptiveBaselineDetector::reset

    ProductionAdaptiveBaselineDetector::update

    ProductionAlertConfig

    pub struct ProductionAlertConfig {
    minimum_score : Double
    minimum_confidence : Double
    minimum_gap : Int64
    recovery_points : Int
    action : RecoveryAction
    severity : AlertSeverity
    budget_per_window : Int
    budget_window : Int64
    }

    Alert and recovery settings for a monitored metric.

    ProductionAlertConfig::action

    ProductionAlertConfig::budget_per_window

    fn ProductionAlertConfig::budget_per_window(self : ProductionAlertConfig) -> Int

    ProductionAlertConfig::budget_window

    fn ProductionAlertConfig::budget_window(self : ProductionAlertConfig) -> Int64

    ProductionAlertConfig::minimum_confidence

    fn ProductionAlertConfig::minimum_confidence(self : ProductionAlertConfig) -> Double

    ProductionAlertConfig::minimum_gap

    fn ProductionAlertConfig::minimum_gap(self : ProductionAlertConfig) -> Int64

    ProductionAlertConfig::minimum_score

    fn ProductionAlertConfig::minimum_score(self : ProductionAlertConfig) -> Double

    ProductionAlertConfig::new

    fn ProductionAlertConfig::new(minimum_score? : Double, minimum_confidence? : Double, minimum_gap? : Int64, recovery_points? : Int, action? : RecoveryAction, severity? : AlertSeverity, budget_per_window? : Int, budget_window? : Int64) -> ProductionAlertConfig

    ProductionAlertConfig::recovery_points

    fn ProductionAlertConfig::recovery_points(self : ProductionAlertConfig) -> Int

    ProductionAlertConfig::severity

    ProductionAlertEnvelope

    pub struct ProductionAlertEnvelope {
    fingerprint : String
    event : AlertEvent
    delivery_attempts : Int
    delivered : Bool
    deduplicated : Int
    }

    Stable alert envelope used for deduplication and delivery retries.

    ProductionAlertEnvelope::attempt

    ProductionAlertEnvelope::deduplicated

    fn ProductionAlertEnvelope::deduplicated(self : ProductionAlertEnvelope) -> Int

    ProductionAlertEnvelope::delivered

    fn ProductionAlertEnvelope::delivered(self : ProductionAlertEnvelope) -> Bool

    ProductionAlertEnvelope::delivery_attempts

    fn ProductionAlertEnvelope::delivery_attempts(self : ProductionAlertEnvelope) -> Int

    ProductionAlertEnvelope::event

    ProductionAlertEnvelope::fingerprint

    fn ProductionAlertEnvelope::fingerprint(self : ProductionAlertEnvelope) -> String

    ProductionAlertEnvelope::mark_delivered

    fn ProductionAlertEnvelope::mark_delivered(self : ProductionAlertEnvelope) -> Unit

    ProductionAlertEnvelope::mark_duplicate

    fn ProductionAlertEnvelope::mark_duplicate(self : ProductionAlertEnvelope) -> Unit

    ProductionAlertEnvelope::new

    fn ProductionAlertEnvelope::new(fingerprint : String, event : AlertEvent) -> ProductionAlertEnvelope

    ProductionBackpressurePolicy

    pub(all) enum ProductionBackpressurePolicy {
    DropNewestSample
    DropOldestSample
    RejectProducer
    }

    Policy used when an in-memory stream queue reaches capacity.

    ProductionBaselineStrategy

    pub(all) enum ProductionBaselineStrategy {
    FixedBaseline
    RollingMedian
    RollingMean
    ExponentiallyWeighted
    SeasonalBaseline
    }

    Strategy used to establish a detector baseline.

    ProductionBatchResult

    pub struct ProductionBatchResult {
    batch_id : String
    input_count : Int
    accepted_count : Int
    rejected_count : Int
    event_count : Int
    alert_count : Int
    checksum : Double
    duration_ticks : Int64
    }

    Summary of a bounded batch processing run.

    ProductionBatchResult::accepted_count

    fn ProductionBatchResult::accepted_count(self : ProductionBatchResult) -> Int

    ProductionBatchResult::alert_count

    fn ProductionBatchResult::alert_count(self : ProductionBatchResult) -> Int

    ProductionBatchResult::checksum

    fn ProductionBatchResult::checksum(self : ProductionBatchResult) -> Double

    ProductionBatchResult::duration_ticks

    fn ProductionBatchResult::duration_ticks(self : ProductionBatchResult) -> Int64

    ProductionBatchResult::event_count

    fn ProductionBatchResult::event_count(self : ProductionBatchResult) -> Int

    ProductionBatchResult::input_count

    fn ProductionBatchResult::input_count(self : ProductionBatchResult) -> Int

    ProductionBatchResult::rejected_count

    fn ProductionBatchResult::rejected_count(self : ProductionBatchResult) -> Int

    ProductionBatchResult::summary

    fn ProductionBatchResult::summary(self : ProductionBatchResult) -> String

    ProductionBatchResult::throughput

    fn ProductionBatchResult::throughput(self : ProductionBatchResult) -> Double

    ProductionBucket

    pub struct ProductionBucket {
    start_timestamp : Int64
    end_timestamp : Int64
    samples : Array[ProductionSample]
    }

    Fixed-size aggregation by event-time interval.

    ProductionBucket::count

    fn ProductionBucket::count(self : ProductionBucket) -> Int

    ProductionBucket::end

    fn ProductionBucket::end(self : ProductionBucket) -> Int64

    ProductionBucket::mean

    fn ProductionBucket::mean(self : ProductionBucket) -> Double

    ProductionBucket::new

    fn ProductionBucket::new(start_timestamp : Int64, size : Int64) -> ProductionBucket

    ProductionBucket::push

    fn ProductionBucket::push(self : ProductionBucket, sample : ProductionSample) -> Bool

    ProductionBucket::start

    fn ProductionBucket::start(self : ProductionBucket) -> Int64

    ProductionBucket::sum

    fn ProductionBucket::sum(self : ProductionBucket) -> Double

    ProductionBucket::summary

    ProductionBucket::to_points

    ProductionBucketizer

    pub struct ProductionBucketizer {
    interval : Int64
    origin : Int64
    current : ProductionBucket?
    flushed : Int
    dropped : Int
    }

    Event-time bucketizer that flushes complete intervals in order.

    ProductionBucketizer::dropped

    fn ProductionBucketizer::dropped(self : ProductionBucketizer) -> Int

    ProductionBucketizer::flush

    ProductionBucketizer::flushed

    fn ProductionBucketizer::flushed(self : ProductionBucketizer) -> Int

    ProductionBucketizer::interval

    fn ProductionBucketizer::interval(self : ProductionBucketizer) -> Int64

    ProductionBucketizer::new

    fn ProductionBucketizer::new(interval? : Int64, origin? : Int64) -> ProductionBucketizer

    ProductionBucketizer::push

    ProductionCalibrationBin

    pub struct ProductionCalibrationBin {
    lower : Double
    upper : Double
    count : Int
    positives : Int
    mean_score : Double
    observed_rate : Double
    }

    A reliability bin used to audit score calibration.

    ProductionCalibrationBin::count

    ProductionCalibrationBin::lower

    ProductionCalibrationBin::mean_score

    fn ProductionCalibrationBin::mean_score(self : ProductionCalibrationBin) -> Double

    ProductionCalibrationBin::observed_rate

    fn ProductionCalibrationBin::observed_rate(self : ProductionCalibrationBin) -> Double

    ProductionCalibrationBin::positives

    ProductionCalibrationBin::upper

    ProductionCalibrationMode

    pub(all) enum ProductionCalibrationMode {
    IdentityCalibration
    HistogramCalibration
    PriorWeightedCalibration
    }

    Online score calibration mode for deployment-specific alert rates.

    ProductionCanaryTracker

    pub struct ProductionCanaryTracker {
    plan : ProductionRolloutPlan
    guardrail : ProductionGuardrailController
    observations : Int
    healthy_observations : Int
    blocked_observations : Int
    last_decision : ProductionGuardrailDecision?
    }

    Bounded canary tracker that joins guard decisions with rollout stages.

    ProductionCanaryTracker::blocked_observations

    fn ProductionCanaryTracker::blocked_observations(self : ProductionCanaryTracker) -> Int

    ProductionCanaryTracker::guardrail

    ProductionCanaryTracker::health

    ProductionCanaryTracker::healthy_observations

    fn ProductionCanaryTracker::healthy_observations(self : ProductionCanaryTracker) -> Int

    ProductionCanaryTracker::last_decision

    ProductionCanaryTracker::observations

    fn ProductionCanaryTracker::observations(self : ProductionCanaryTracker) -> Int

    ProductionCanaryTracker::observe

    ProductionCanaryTracker::plan

    ProductionCanaryTracker::reset

    ProductionCanaryTracker::try_promote

    fn ProductionCanaryTracker::try_promote(self : ProductionCanaryTracker, timestamp : Int64) -> Bool

    ProductionCatalogSummary

    pub struct ProductionCatalogSummary {
    names : Array[String]
    means : Array[Double]
    variances : Array[Double]
    counts : Array[Int]
    quality : Array[Double]
    }

    A matrix of rolling metric summaries for health dashboards.

    ProductionCatalogSummary::counts

    ProductionCatalogSummary::markdown

    fn ProductionCatalogSummary::markdown(self : ProductionCatalogSummary) -> String

    ProductionCatalogSummary::means

    ProductionCatalogSummary::names

    ProductionCatalogSummary::quality

    ProductionCatalogSummary::variances

    ProductionConfidenceInterval

    pub struct ProductionConfidenceInterval {
    estimate : Double
    lower : Double
    upper : Double
    confidence : Double
    samples : Int
    test_kind : ProductionStatTestKind
    }

    Confidence interval for a production effect estimate.

    ProductionConfidenceInterval::confidence

    ProductionConfidenceInterval::contains

    fn ProductionConfidenceInterval::contains(self : ProductionConfidenceInterval, value : Double) -> Bool

    ProductionConfidenceInterval::estimate

    ProductionConfidenceInterval::lower

    ProductionConfidenceInterval::samples

    ProductionConfidenceInterval::summary

    ProductionConfidenceInterval::test_kind

    ProductionConfidenceInterval::upper

    ProductionConfidenceInterval::width

    ProductionConfigIssue

    pub struct ProductionConfigIssue {
    field : String
    message : String
    fatal : Bool
    }

    A single issue found while validating production configuration.

    ProductionConfigIssue::fatal

    ProductionConfigIssue::field

    fn ProductionConfigIssue::field(self : ProductionConfigIssue) -> String

    ProductionConfigIssue::message

    fn ProductionConfigIssue::message(self : ProductionConfigIssue) -> String

    ProductionConfigIssue::new

    fn ProductionConfigIssue::new(field : String, message : String, fatal? : Bool) -> ProductionConfigIssue

    ProductionConfigIssue::summary

    fn ProductionConfigIssue::summary(self : ProductionConfigIssue) -> String

    ProductionConfusionMatrix

    pub struct ProductionConfusionMatrix {
    true_positive : Int
    false_positive : Int
    true_negative : Int
    false_negative : Int
    }

    Confusion counts for a thresholded change-point decision stream.

    ProductionConfusionMatrix::balanced_accuracy

    fn ProductionConfusionMatrix::balanced_accuracy(self : ProductionConfusionMatrix) -> Double

    ProductionConfusionMatrix::empty

    ProductionConfusionMatrix::f1

    ProductionConfusionMatrix::false_negative

    fn ProductionConfusionMatrix::false_negative(self : ProductionConfusionMatrix) -> Int

    ProductionConfusionMatrix::false_positive

    fn ProductionConfusionMatrix::false_positive(self : ProductionConfusionMatrix) -> Int

    ProductionConfusionMatrix::false_positive_rate

    fn ProductionConfusionMatrix::false_positive_rate(self : ProductionConfusionMatrix) -> Double

    ProductionConfusionMatrix::from_scores

    fn ProductionConfusionMatrix::from_scores(scores : Array[Double], labels : Array[Bool], threshold : Double) -> ProductionConfusionMatrix

    ProductionConfusionMatrix::precision

    ProductionConfusionMatrix::recall

    ProductionConfusionMatrix::specificity

    fn ProductionConfusionMatrix::specificity(self : ProductionConfusionMatrix) -> Double

    ProductionConfusionMatrix::summary

    ProductionConfusionMatrix::support

    ProductionConfusionMatrix::true_negative

    fn ProductionConfusionMatrix::true_negative(self : ProductionConfusionMatrix) -> Int

    ProductionConfusionMatrix::true_positive

    fn ProductionConfusionMatrix::true_positive(self : ProductionConfusionMatrix) -> Int

    ProductionContractFieldKind

    pub(all) enum ProductionContractFieldKind {
    Numeric
    Timestamp
    Sequence
    Label
    Boolean
    }

    Runtime data types accepted by a production change-point pipeline.

    ProductionContractReport

    pub struct ProductionContractReport {
    metric : String
    checked : Int
    accepted : Int
    rejected : Int
    missing : Int
    warnings : Int
    violations : Array[ProductionContractViolation]
    distinct_labels : Array[String]
    first_timestamp : Int64
    last_timestamp : Int64
    has_timestamp : Bool
    monotonic : Bool
    }

    Result of validating one metric stream.

    ProductionContractReport::acceptance_rate

    fn ProductionContractReport::acceptance_rate(self : ProductionContractReport) -> Double

    ProductionContractReport::accepted

    ProductionContractReport::checked

    ProductionContractReport::distinct_count

    fn ProductionContractReport::distinct_count(self : ProductionContractReport) -> Int

    ProductionContractReport::first_timestamp

    fn ProductionContractReport::first_timestamp(self : ProductionContractReport) -> Int64

    ProductionContractReport::is_valid

    ProductionContractReport::last_timestamp

    fn ProductionContractReport::last_timestamp(self : ProductionContractReport) -> Int64

    ProductionContractReport::metric

    ProductionContractReport::missing

    ProductionContractReport::monotonic

    ProductionContractReport::new

    ProductionContractReport::rejected

    ProductionContractReport::summary

    ProductionContractReport::violations

    ProductionContractReport::warnings

    ProductionContractRule

    pub struct ProductionContractRule {
    name : String
    field_kind : ProductionContractFieldKind
    required : Bool
    allow_missing : Bool
    minimum : Double
    maximum : Double
    has_minimum : Bool
    has_maximum : Bool
    minimum_samples : Int
    maximum_gap : Int64
    monotonic_timestamps : Bool
    maximum_label_length : Int
    maximum_distinct_values : Int
    severity : ProductionContractSeverity
    }

    Declarative validation rules for a metric stream.

    ProductionContractRule::allow_missing

    fn ProductionContractRule::allow_missing(self : ProductionContractRule) -> Bool

    ProductionContractRule::field_kind

    ProductionContractRule::has_maximum

    fn ProductionContractRule::has_maximum(self : ProductionContractRule) -> Bool

    ProductionContractRule::has_minimum

    fn ProductionContractRule::has_minimum(self : ProductionContractRule) -> Bool

    ProductionContractRule::maximum

    fn ProductionContractRule::maximum(self : ProductionContractRule) -> Double

    ProductionContractRule::maximum_distinct_values

    fn ProductionContractRule::maximum_distinct_values(self : ProductionContractRule) -> Int

    ProductionContractRule::maximum_gap

    fn ProductionContractRule::maximum_gap(self : ProductionContractRule) -> Int64

    ProductionContractRule::maximum_label_length

    fn ProductionContractRule::maximum_label_length(self : ProductionContractRule) -> Int

    ProductionContractRule::minimum

    fn ProductionContractRule::minimum(self : ProductionContractRule) -> Double

    ProductionContractRule::minimum_samples

    fn ProductionContractRule::minimum_samples(self : ProductionContractRule) -> Int

    ProductionContractRule::monotonic_timestamps

    fn ProductionContractRule::monotonic_timestamps(self : ProductionContractRule) -> Bool

    ProductionContractRule::name

    ProductionContractRule::new

    fn ProductionContractRule::new(name : String, field_kind? : ProductionContractFieldKind, required? : Bool, allow_missing? : Bool, minimum? : Double, maximum? : Double, has_minimum? : Bool, has_maximum? : Bool, minimum_samples? : Int, maximum_gap? : Int64, monotonic_timestamps? : Bool, maximum_label_length? : Int, maximum_distinct_values? : Int, severity? : ProductionContractSeverity) -> ProductionContractRule

    ProductionContractRule::required

    fn ProductionContractRule::required(self : ProductionContractRule) -> Bool

    ProductionContractRule::severity

    ProductionContractSeverity

    pub(all) enum ProductionContractSeverity {
    ContractError
    ContractWarning
    }

    Validation severity used by a data contract.

    ProductionContractSummary

    pub struct ProductionContractSummary {
    contract_count : Int
    report_count : Int
    valid_count : Int
    rejected_count : Int
    warning_count : Int
    total_samples : Int
    total_violations : Int
    }

    A compact contract snapshot suitable for health endpoints.

    ProductionContractSummary::contract_count

    fn ProductionContractSummary::contract_count(self : ProductionContractSummary) -> Int

    ProductionContractSummary::health_score

    fn ProductionContractSummary::health_score(self : ProductionContractSummary) -> Double

    ProductionContractSummary::rejected_count

    fn ProductionContractSummary::rejected_count(self : ProductionContractSummary) -> Int

    ProductionContractSummary::report_count

    ProductionContractSummary::total_samples

    fn ProductionContractSummary::total_samples(self : ProductionContractSummary) -> Int

    ProductionContractSummary::total_violations

    fn ProductionContractSummary::total_violations(self : ProductionContractSummary) -> Int

    ProductionContractSummary::valid_count

    ProductionContractSummary::warning_count

    fn ProductionContractSummary::warning_count(self : ProductionContractSummary) -> Int

    ProductionContractValidator

    pub struct ProductionContractValidator {
    rules : Array[ProductionContractRule]
    reports : Array[ProductionContractReport]
    total_batches : Int
    total_samples : Int
    total_violations : Int
    }

    Runtime validator for metric contracts. Rules stay in memory so a service can validate every batch without rebuilding schema state.

    ProductionContractValidator::clear_reports

    ProductionContractValidator::filter_numeric_batch

    fn ProductionContractValidator::filter_numeric_batch(self : ProductionContractValidator, metric : String, timestamps : Array[Int64], values : Array[Double]) -> (Array[Int64], Array[Double], ProductionContractReport)

    Validate a batch and return only the samples accepted by the contract.

    ProductionContractValidator::latest_report

    ProductionContractValidator::new

    ProductionContractValidator::register

    ProductionContractValidator::remove

    fn ProductionContractValidator::remove(self : ProductionContractValidator, name : String) -> Bool

    ProductionContractValidator::reports

    ProductionContractValidator::rule_count

    ProductionContractValidator::rules

    ProductionContractValidator::summary

    ProductionContractValidator::total_batches

    ProductionContractValidator::total_samples

    ProductionContractValidator::total_violations

    fn ProductionContractValidator::total_violations(self : ProductionContractValidator) -> Int

    ProductionContractValidator::validate_label_batch

    fn ProductionContractValidator::validate_label_batch(self : ProductionContractValidator, metric : String, timestamps : Array[Int64], labels : Array[String]) -> ProductionContractReport

    Validate categorical labels while tracking bounded cardinality.

    ProductionContractValidator::validate_numeric_batch

    fn ProductionContractValidator::validate_numeric_batch(self : ProductionContractValidator, metric : String, timestamps : Array[Int64], values : Array[Double]) -> ProductionContractReport

    Validate numeric samples and event-time ordering for one metric batch.

    ProductionContractViolation

    pub struct ProductionContractViolation {
    code : ProductionContractViolationCode
    severity : ProductionContractSeverity
    metric : String
    rule : String
    index : Int
    value : Double
    has_value : Bool
    message : String
    }

    One contract violation retained for audit and diagnostics.

    ProductionContractViolation::has_value

    ProductionContractViolation::index

    ProductionContractViolation::message

    ProductionContractViolation::metric

    ProductionContractViolation::new

    fn ProductionContractViolation::new(code : ProductionContractViolationCode, severity : ProductionContractSeverity, metric : String, rule : String, index? : Int, value? : Double, has_value? : Bool, message? : String) -> ProductionContractViolation

    ProductionContractViolation::rule

    ProductionContractViolation::severity

    ProductionContractViolation::summary

    ProductionContractViolation::value

    ProductionContractViolationCode

    pub(all) enum ProductionContractViolationCode {
    MissingMetric
    MissingValue
    NonFiniteValue
    ValueBelowMinimum
    ValueAboveMaximum
    TimestampOutOfOrder
    TimestampTooOld
    DuplicateSequence
    EmptyLabel
    LabelTooLong
    InvalidBoolean
    InsufficientSamples
    ExcessiveGap
    CardinalityExceeded
    SchemaMismatch
    }

    Machine-readable reason for rejecting or downgrading an observation.

    ProductionCurvePoint

    pub struct ProductionCurvePoint {
    threshold : Double
    precision : Double
    recall : Double
    f1 : Double
    false_positive_rate : Double
    support : Int
    }

    A point on a threshold evaluation curve.

    ProductionCurvePoint::f1

    ProductionCurvePoint::false_positive_rate

    fn ProductionCurvePoint::false_positive_rate(self : ProductionCurvePoint) -> Double

    ProductionCurvePoint::from_matrix

    fn ProductionCurvePoint::from_matrix(threshold : Double, matrix : ProductionConfusionMatrix) -> ProductionCurvePoint

    ProductionCurvePoint::precision

    fn ProductionCurvePoint::precision(self : ProductionCurvePoint) -> Double

    ProductionCurvePoint::recall

    fn ProductionCurvePoint::recall(self : ProductionCurvePoint) -> Double

    ProductionCurvePoint::support

    fn ProductionCurvePoint::support(self : ProductionCurvePoint) -> Int

    ProductionCurvePoint::threshold

    fn ProductionCurvePoint::threshold(self : ProductionCurvePoint) -> Double

    ProductionDashboardPoint

    pub struct ProductionDashboardPoint {
    timestamp : Int64
    value : Double
    baseline : Double
    score : Double
    changed : Bool
    state : ProductionHealthState
    }

    A time-series point prepared for dashboard rendering.

    ProductionDashboardPoint::baseline

    fn ProductionDashboardPoint::baseline(self : ProductionDashboardPoint) -> Double

    ProductionDashboardPoint::changed

    ProductionDashboardPoint::new

    fn ProductionDashboardPoint::new(timestamp : Int64, value : Double, baseline : Double, result : DetectionResult, state : ProductionHealthState) -> ProductionDashboardPoint

    ProductionDashboardPoint::score

    ProductionDashboardPoint::state

    ProductionDashboardPoint::timestamp

    fn ProductionDashboardPoint::timestamp(self : ProductionDashboardPoint) -> Int64

    ProductionDashboardPoint::value

    ProductionDashboardSeries

    pub struct ProductionDashboardSeries {
    name : String
    points : Array[ProductionDashboardPoint]
    dropped : Int
    }

    ProductionDashboardSeries::changed_count

    fn ProductionDashboardSeries::changed_count(self : ProductionDashboardSeries) -> Int

    ProductionDashboardSeries::dropped

    ProductionDashboardSeries::latest

    ProductionDashboardSeries::length

    ProductionDashboardSeries::name

    ProductionDashboardSeries::new

    fn ProductionDashboardSeries::new(name : String, capacity? : Int) -> ProductionDashboardSeries

    ProductionDashboardSeries::points

    ProductionDashboardSeries::push

    fn ProductionDashboardSeries::push(self : ProductionDashboardSeries, point : ProductionDashboardPoint, capacity? : Int) -> Unit

    ProductionDeliveryChannel

    pub(all) enum ProductionDeliveryChannel {
    ConsoleChannel
    LogChannel
    TicketChannel
    PagerChannel
    WebhookChannel
    DashboardChannel
    }

    Delivery destination for an operational alert.

    ProductionDeliveryDecision

    pub struct ProductionDeliveryDecision {
    rule : String
    channel : ProductionDeliveryChannel
    allowed : Bool
    reason : String
    fingerprint : String
    }

    The result of evaluating one event against a delivery rule.

    ProductionDeliveryDecision::allowed

    ProductionDeliveryDecision::channel

    ProductionDeliveryDecision::fingerprint

    fn ProductionDeliveryDecision::fingerprint(self : ProductionDeliveryDecision) -> String

    ProductionDeliveryDecision::reason

    ProductionDeliveryDecision::rule

    ProductionDeliveryDecision::summary

    ProductionDeliveryRule

    pub struct ProductionDeliveryRule {
    name : String
    channel : ProductionDeliveryChannel
    minimum_severity : AlertSeverity
    include_suppressed : Bool
    minimum_score : Double
    cooldown : Int64
    }

    A rule deciding whether an event should reach one delivery channel.

    ProductionDeliveryRule::channel

    ProductionDeliveryRule::cooldown

    fn ProductionDeliveryRule::cooldown(self : ProductionDeliveryRule) -> Int64

    ProductionDeliveryRule::include_suppressed

    fn ProductionDeliveryRule::include_suppressed(self : ProductionDeliveryRule) -> Bool

    ProductionDeliveryRule::matches

    fn ProductionDeliveryRule::matches(self : ProductionDeliveryRule, event : AlertEvent) -> Bool

    ProductionDeliveryRule::minimum_score

    fn ProductionDeliveryRule::minimum_score(self : ProductionDeliveryRule) -> Double

    ProductionDeliveryRule::minimum_severity

    ProductionDeliveryRule::name

    ProductionDeliveryRule::new

    fn ProductionDeliveryRule::new(name : String, channel : ProductionDeliveryChannel, minimum_severity? : AlertSeverity, include_suppressed? : Bool, minimum_score? : Double, cooldown? : Int64) -> ProductionDeliveryRule

    ProductionDetectionConfig

    pub struct ProductionDetectionConfig {
    detector_name : String
    threshold : Double
    confidence : Double
    warmup_points : Int
    minimum_segment : Int
    maximum_score : Double
    direction_filter : ChangeDirection?
    }

    Detection settings shared by online monitor instances.

    ProductionDetectionConfig::accepts

    ProductionDetectionConfig::confidence

    fn ProductionDetectionConfig::confidence(self : ProductionDetectionConfig) -> Double

    ProductionDetectionConfig::detector_name

    fn ProductionDetectionConfig::detector_name(self : ProductionDetectionConfig) -> String

    ProductionDetectionConfig::direction_filter

    ProductionDetectionConfig::maximum_score

    fn ProductionDetectionConfig::maximum_score(self : ProductionDetectionConfig) -> Double

    ProductionDetectionConfig::minimum_segment

    fn ProductionDetectionConfig::minimum_segment(self : ProductionDetectionConfig) -> Int

    ProductionDetectionConfig::new

    fn ProductionDetectionConfig::new(detector_name? : String, threshold? : Double, confidence? : Double, warmup_points? : Int, minimum_segment? : Int, maximum_score? : Double, direction_filter? : ChangeDirection?) -> ProductionDetectionConfig

    ProductionDetectionConfig::threshold

    ProductionDetectionConfig::warmup_points

    fn ProductionDetectionConfig::warmup_points(self : ProductionDetectionConfig) -> Int

    ProductionDetectorKind

    pub(all) enum ProductionDetectorKind {
    CusumStackDetector
    RobustZStackDetector
    EwmaStackDetector
    VarianceStackDetector
    TrendStackDetector
    SeasonalStackDetector
    DistributionStackDetector
    }

    Detector selection for the production stack.

    ProductionDetectorStack

    pub struct ProductionDetectorStack {
    kinds : Array[ProductionDetectorKind]
    detectors : Array[PipelineDetector]
    weights : Array[Double]
    minimum_votes : Int
    index : Int
    }

    An array-backed ensemble that keeps detector order stable across targets.

    ProductionDetectorStack::index

    ProductionDetectorStack::length

    ProductionDetectorStack::new

    fn ProductionDetectorStack::new(kinds : Array[ProductionDetectorKind], detectors : Array[PipelineDetector], weights? : Array[Double], minimum_votes? : Int) -> ProductionDetectorStack

    ProductionDetectorStack::reset

    ProductionDetectorStack::update

    ProductionDetectorVote

    pub struct ProductionDetectorVote {
    kind : ProductionDetectorKind
    result : DetectionResult
    weight : Double
    accepted : Bool
    }

    One weighted vote from a detector stack.

    ProductionDetectorVote::accepted

    fn ProductionDetectorVote::accepted(self : ProductionDetectorVote) -> Bool

    ProductionDetectorVote::kind

    ProductionDetectorVote::result

    ProductionDetectorVote::weight

    fn ProductionDetectorVote::weight(self : ProductionDetectorVote) -> Double

    ProductionDriftReport

    pub struct ProductionDriftReport {
    baseline_count : Int
    current_count : Int
    mean_shift : Double
    variance_ratio : Double
    ks_distance : Double
    energy_distance : Double
    drift_score : Double
    drifted : Bool
    }

    A summary of baseline/current distribution drift.

    ProductionDriftReport::baseline_count

    fn ProductionDriftReport::baseline_count(self : ProductionDriftReport) -> Int

    ProductionDriftReport::current_count

    fn ProductionDriftReport::current_count(self : ProductionDriftReport) -> Int

    ProductionDriftReport::drift_score

    fn ProductionDriftReport::drift_score(self : ProductionDriftReport) -> Double

    ProductionDriftReport::drifted

    fn ProductionDriftReport::drifted(self : ProductionDriftReport) -> Bool

    ProductionDriftReport::energy_distance

    fn ProductionDriftReport::energy_distance(self : ProductionDriftReport) -> Double

    ProductionDriftReport::from_values

    fn ProductionDriftReport::from_values(baseline : Array[Double], current : Array[Double], threshold? : Double) -> ProductionDriftReport

    ProductionDriftReport::ks_distance

    fn ProductionDriftReport::ks_distance(self : ProductionDriftReport) -> Double

    ProductionDriftReport::mean_shift

    fn ProductionDriftReport::mean_shift(self : ProductionDriftReport) -> Double

    ProductionDriftReport::summary

    fn ProductionDriftReport::summary(self : ProductionDriftReport) -> String

    ProductionDriftReport::variance_ratio

    fn ProductionDriftReport::variance_ratio(self : ProductionDriftReport) -> Double

    ProductionEscalationPolicy

    pub struct ProductionEscalationPolicy {
    steps : Array[ProductionEscalationStep]
    delivered : Int
    }

    ProductionEscalationPolicy::add

    ProductionEscalationPolicy::delivered

    ProductionEscalationPolicy::due

    ProductionEscalationPolicy::mark_delivered

    fn ProductionEscalationPolicy::mark_delivered(self : ProductionEscalationPolicy) -> Unit

    ProductionEscalationPolicy::steps

    ProductionEscalationPolicy::summary

    ProductionEscalationStep

    pub struct ProductionEscalationStep {
    channel : String
    delay : Int64
    minimum_severity : AlertSeverity
    }

    One escalation destination and the delay before it is eligible.

    ProductionEscalationStep::channel

    ProductionEscalationStep::delay

    ProductionEscalationStep::eligible

    fn ProductionEscalationStep::eligible(self : ProductionEscalationStep, incident : ProductionIncident, now : Int64) -> Bool

    ProductionEscalationStep::minimum_severity

    ProductionEscalationStep::new

    fn ProductionEscalationStep::new(channel : String, delay : Int64, minimum_severity? : AlertSeverity) -> ProductionEscalationStep

    ProductionEventBudget

    pub struct ProductionEventBudget {
    capacity : Int
    interval : Int64
    window_start : Int64?
    used : Int
    denied : Int
    }

    A finite alert budget measured over a rolling event-time interval.

    ProductionEventBudget::allow

    fn ProductionEventBudget::allow(self : ProductionEventBudget, timestamp : Int64) -> Bool

    ProductionEventBudget::denied

    ProductionEventBudget::new

    fn ProductionEventBudget::new(capacity? : Int, interval? : Int64) -> ProductionEventBudget

    ProductionEventBudget::remaining

    fn ProductionEventBudget::remaining(self : ProductionEventBudget) -> Int

    ProductionEventBudget::used

    ProductionExportBatch

    pub struct ProductionExportBatch {
    records : Array[ProductionExportRecord]
    capacity : Int
    accepted : Int
    rejected : Int
    duplicate : Int
    }

    Bounded in-memory batch used to make exports deterministic.

    ProductionExportBatch::accepted

    fn ProductionExportBatch::accepted(self : ProductionExportBatch) -> Int

    ProductionExportBatch::add

    ProductionExportBatch::add_many

    ProductionExportBatch::capacity

    fn ProductionExportBatch::capacity(self : ProductionExportBatch) -> Int

    ProductionExportBatch::clear

    ProductionExportBatch::count

    ProductionExportBatch::duplicate

    fn ProductionExportBatch::duplicate(self : ProductionExportBatch) -> Int

    ProductionExportBatch::new

    fn ProductionExportBatch::new(capacity? : Int) -> ProductionExportBatch

    ProductionExportBatch::ordered

    Return records ordered by event time without mutating the input batch.

    ProductionExportBatch::records

    ProductionExportBatch::rejected

    fn ProductionExportBatch::rejected(self : ProductionExportBatch) -> Int

    ProductionExportField

    pub(all) enum ProductionExportField {
    ExportTimestamp
    ExportMetric
    ExportValue
    ExportBaseline
    ExportScore
    ExportHealth
    ExportState
    ExportSource
    }

    Fields that can be selected in a telemetry export.

    ProductionExportFormat

    pub(all) enum ProductionExportFormat {
    ExportJsonLines
    ExportCsv
    ExportPrometheus
    ExportMarkdown
    ExportSummaryJson
    }

    Wire formats supported by the production telemetry exporter.

    ProductionExportOptions

    pub struct ProductionExportOptions {
    format : ProductionExportFormat
    delimiter : String
    include_header : Bool
    include_metadata : Bool
    pretty : Bool
    max_records : Int
    metric_prefix : String
    metric_namespace : String
    line_ending : String
    }

    Export settings shared by all serializers.

    ProductionExportOptions::delimiter

    fn ProductionExportOptions::delimiter(self : ProductionExportOptions) -> String

    ProductionExportOptions::format

    ProductionExportOptions::include_header

    fn ProductionExportOptions::include_header(self : ProductionExportOptions) -> Bool

    ProductionExportOptions::include_metadata

    fn ProductionExportOptions::include_metadata(self : ProductionExportOptions) -> Bool

    ProductionExportOptions::line_ending

    fn ProductionExportOptions::line_ending(self : ProductionExportOptions) -> String

    ProductionExportOptions::max_records

    fn ProductionExportOptions::max_records(self : ProductionExportOptions) -> Int

    ProductionExportOptions::metric_namespace

    fn ProductionExportOptions::metric_namespace(self : ProductionExportOptions) -> String

    ProductionExportOptions::metric_prefix

    fn ProductionExportOptions::metric_prefix(self : ProductionExportOptions) -> String

    ProductionExportOptions::new

    fn ProductionExportOptions::new(format? : ProductionExportFormat, delimiter? : String, include_header? : Bool, include_metadata? : Bool, pretty? : Bool, max_records? : Int, metric_prefix? : String, metric_namespace? : String, line_ending? : String) -> ProductionExportOptions

    ProductionExportOptions::pretty

    ProductionExportOptions::with_format

    ProductionExportRecord

    pub struct ProductionExportRecord {
    timestamp : Int64
    metric : String
    value : Double
    baseline : Double
    score : Double
    health : Double
    state : String
    source : String
    }

    One normalized telemetry row emitted by a monitor or replay.

    ProductionExportRecord::as_key

    fn ProductionExportRecord::as_key(self : ProductionExportRecord) -> String

    ProductionExportRecord::baseline

    fn ProductionExportRecord::baseline(self : ProductionExportRecord) -> Double

    ProductionExportRecord::field

    ProductionExportRecord::health

    fn ProductionExportRecord::health(self : ProductionExportRecord) -> Double

    ProductionExportRecord::is_finite

    fn ProductionExportRecord::is_finite(self : ProductionExportRecord) -> Bool

    ProductionExportRecord::metric

    fn ProductionExportRecord::metric(self : ProductionExportRecord) -> String

    ProductionExportRecord::new

    fn ProductionExportRecord::new(timestamp : Int64, metric : String, value : Double, baseline? : Double, score? : Double, health? : Double, state? : String, source? : String) -> ProductionExportRecord

    ProductionExportRecord::score

    ProductionExportRecord::source

    fn ProductionExportRecord::source(self : ProductionExportRecord) -> String

    ProductionExportRecord::state

    ProductionExportRecord::timestamp

    fn ProductionExportRecord::timestamp(self : ProductionExportRecord) -> Int64

    ProductionExportRecord::value

    ProductionExportRecord::with_state

    fn ProductionExportRecord::with_state(self : ProductionExportRecord, state : String) -> ProductionExportRecord

    ProductionExportStats

    pub struct ProductionExportStats {
    batches : Int
    records : Int
    bytes : Int
    failures : Int
    truncated : Int
    }

    Exporter counters are kept separately from the batch so operators can monitor serialization failures across multiple flushes.

    ProductionExportStats::batches

    fn ProductionExportStats::batches(self : ProductionExportStats) -> Int

    ProductionExportStats::bytes

    ProductionExportStats::failures

    fn ProductionExportStats::failures(self : ProductionExportStats) -> Int

    ProductionExportStats::new

    ProductionExportStats::records

    fn ProductionExportStats::records(self : ProductionExportStats) -> Int

    ProductionExportStats::success_rate

    fn ProductionExportStats::success_rate(self : ProductionExportStats) -> Double

    ProductionExportStats::summary

    fn ProductionExportStats::summary(self : ProductionExportStats) -> String

    ProductionExportStats::truncated

    fn ProductionExportStats::truncated(self : ProductionExportStats) -> Int

    ProductionFeature

    pub struct ProductionFeature {
    name : String
    kind : ProductionFeatureKind
    value : Double
    valid : Bool
    sample_count : Int
    source_window : Int
    }

    One named feature value with quality and provenance metadata.

    ProductionFeature::kind

    ProductionFeature::name

    fn ProductionFeature::name(self : ProductionFeature) -> String

    ProductionFeature::new

    fn ProductionFeature::new(kind : ProductionFeatureKind, value : Double, sample_count : Int, source_window : Int) -> ProductionFeature

    ProductionFeature::sample_count

    fn ProductionFeature::sample_count(self : ProductionFeature) -> Int

    ProductionFeature::source_window

    fn ProductionFeature::source_window(self : ProductionFeature) -> Int

    ProductionFeature::valid

    fn ProductionFeature::valid(self : ProductionFeature) -> Bool

    ProductionFeature::value

    fn ProductionFeature::value(self : ProductionFeature) -> Double

    ProductionFeatureConfig

    pub struct ProductionFeatureConfig {
    window_size : Int
    seasonal_period : Int
    include_distribution : Bool
    include_autocorrelation : Bool
    outlier_threshold : Double
    }

    Configuration for an explainable feature extraction pass.

    ProductionFeatureConfig::include_autocorrelation

    fn ProductionFeatureConfig::include_autocorrelation(self : ProductionFeatureConfig) -> Bool

    ProductionFeatureConfig::include_distribution

    fn ProductionFeatureConfig::include_distribution(self : ProductionFeatureConfig) -> Bool

    ProductionFeatureConfig::new

    fn ProductionFeatureConfig::new(window_size? : Int, seasonal_period? : Int, include_distribution? : Bool, include_autocorrelation? : Bool, outlier_threshold? : Double) -> ProductionFeatureConfig

    ProductionFeatureConfig::outlier_threshold

    fn ProductionFeatureConfig::outlier_threshold(self : ProductionFeatureConfig) -> Double

    ProductionFeatureConfig::seasonal_period

    fn ProductionFeatureConfig::seasonal_period(self : ProductionFeatureConfig) -> Int

    ProductionFeatureConfig::window_size

    fn ProductionFeatureConfig::window_size(self : ProductionFeatureConfig) -> Int

    ProductionFeatureKind

    pub(all) enum ProductionFeatureKind {
    LevelFeature
    SpreadFeature
    TrendFeature
    VolatilityFeature
    SkewFeature
    KurtosisFeature
    AutocorrelationFeature
    DifferenceFeature
    QuantileFeature
    DistributionEntropyFeature
    MissingRatioFeature
    OutlierRatioFeature
    SeasonalStrengthFeature
    }

    Feature family exposed by the production feature pipeline.

    ProductionFeaturePipeline

    pub struct ProductionFeaturePipeline {
    config : ProductionFeatureConfig
    windows : Array[ProductionTimeWindow]
    extracted : Int
    invalid : Int
    }

    Feature pipeline used before a model or detector call.

    ProductionFeaturePipeline::config

    ProductionFeaturePipeline::extract

    ProductionFeaturePipeline::extract_batch

    ProductionFeaturePipeline::extract_from_window

    ProductionFeaturePipeline::extracted

    ProductionFeaturePipeline::feature_names

    fn ProductionFeaturePipeline::feature_names(self : ProductionFeaturePipeline) -> Array[String]

    ProductionFeaturePipeline::invalid

    ProductionFeaturePipeline::new

    ProductionFeatureScaler

    pub struct ProductionFeatureScaler {
    centers : Array[Double]
    scales : Array[Double]
    fitted : Bool
    }

    Robust location and scale parameters learned from feature vectors.

    ProductionFeatureScaler::centers

    ProductionFeatureScaler::dimension

    ProductionFeatureScaler::fit

    ProductionFeatureScaler::inverse

    fn ProductionFeatureScaler::inverse(self : ProductionFeatureScaler, values : Array[Double]) -> Array[Double]

    ProductionFeatureScaler::is_fitted

    fn ProductionFeatureScaler::is_fitted(self : ProductionFeatureScaler) -> Bool

    ProductionFeatureScaler::new

    ProductionFeatureScaler::scales

    ProductionFeatureScaler::transform

    ProductionFeatureVector

    pub struct ProductionFeatureVector {
    features : Array[ProductionFeature]
    values : Array[Double]
    valid_count : Int
    missing_count : Int
    }

    A fixed-order feature vector suitable for a model or report.

    ProductionFeatureVector::distance

    ProductionFeatureVector::features

    ProductionFeatureVector::get

    ProductionFeatureVector::missing_count

    fn ProductionFeatureVector::missing_count(self : ProductionFeatureVector) -> Int

    ProductionFeatureVector::new

    ProductionFeatureVector::summary

    fn ProductionFeatureVector::summary(self : ProductionFeatureVector) -> String

    ProductionFeatureVector::valid_count

    fn ProductionFeatureVector::valid_count(self : ProductionFeatureVector) -> Int

    ProductionFeatureVector::valid_ratio

    fn ProductionFeatureVector::valid_ratio(self : ProductionFeatureVector) -> Double

    ProductionFeatureVector::values

    ProductionFillPolicy

    pub(all) enum ProductionFillPolicy {
    ForwardFill
    ZeroFill
    LinearInterpolate
    SkipEmpty
    }

    Policy for values in empty resampling buckets.

    ProductionForecastInterval

    pub struct ProductionForecastInterval {
    timestamp : Int64
    prediction : Double
    lower : Double
    upper : Double
    confidence : Double
    horizon : Int
    model : ProductionForecastKind
    }

    Forecast interval with explicit coverage and residual diagnostics.

    ProductionForecastInterval::confidence

    ProductionForecastInterval::horizon

    ProductionForecastInterval::lower

    ProductionForecastInterval::new

    fn ProductionForecastInterval::new(timestamp : Int64, prediction : Double, uncertainty : Double, confidence? : Double, horizon? : Int, model? : ProductionForecastKind) -> ProductionForecastInterval

    ProductionForecastInterval::prediction

    ProductionForecastInterval::timestamp

    ProductionForecastInterval::upper

    ProductionForecastInterval::width

    ProductionForecastKind

    pub(all) enum ProductionForecastKind {
    LastValueForecast
    MeanForecast
    HoltForecast
    SeasonalNaiveForecast
    HoltWintersForecast
    }

    Forecast family supported by the production model wrapper.

    ProductionForecastScore

    pub struct ProductionForecastScore {
    model : ProductionForecastKind
    mae : Double
    rmse : Double
    bias : Double
    coverage : Double
    }

    Compares several deterministic forecast families on a holdout suffix.

    ProductionForecastScore::bias

    ProductionForecastScore::coverage

    fn ProductionForecastScore::coverage(self : ProductionForecastScore) -> Double

    ProductionForecastScore::mae

    ProductionForecastScore::model

    ProductionForecastScore::rmse

    ProductionForecaster

    pub struct ProductionForecaster {
    kind : ProductionForecastKind
    period : Int
    horizon : Int
    window : DoubleWindow
    holt : HoltForecaster
    seasonal : ProductionHoltWinters
    residuals : ProductionQuantileState
    count : Int
    missing : Int
    }

    A model-agnostic production forecaster with a rolling residual envelope.

    ProductionForecaster::count

    ProductionForecaster::forecast

    fn ProductionForecaster::forecast(self : ProductionForecaster, start_timestamp : Int64, step : Int64, horizon? : Int, confidence? : Double) -> Array[ProductionForecastInterval]

    ProductionForecaster::kind

    ProductionForecaster::missing

    fn ProductionForecaster::missing(self : ProductionForecaster) -> Int

    ProductionForecaster::new

    fn ProductionForecaster::new(kind? : ProductionForecastKind, window_size? : Int, period? : Int, horizon? : Int) -> ProductionForecaster

    ProductionForecaster::predict

    fn ProductionForecaster::predict(self : ProductionForecaster) -> Double

    ProductionForecaster::uncertainty

    fn ProductionForecaster::uncertainty(self : ProductionForecaster, confidence? : Double) -> Double

    ProductionForecaster::update

    ProductionGuardrailAction

    pub(all) enum ProductionGuardrailAction {
    GuardrailAllow
    GuardrailObserve
    GuardrailWarn
    GuardrailBlock
    GuardrailRollback
    }

    Action selected by a production rollout guard.

    ProductionGuardrailController

    pub struct ProductionGuardrailController {
    rules : Array[ProductionGuardrailRule]
    history : Array[ProductionGuardrailDecision]
    failure_streak : Int
    recovery_streak : Int
    sequence : Int64
    blocked : Bool
    paused : Bool
    last_timestamp : Int64
    evaluated : Int
    triggered : Int
    }

    Stateful canary and rollout gate.

    ProductionGuardrailController::clear_history

    ProductionGuardrailController::evaluate

    Evaluate one signal and update the controller state.

    ProductionGuardrailController::evaluate_batch

    Evaluate aligned observations and return one decision per signal.

    ProductionGuardrailController::evaluated

    ProductionGuardrailController::failure_streak

    ProductionGuardrailController::history

    ProductionGuardrailController::is_blocked

    ProductionGuardrailController::is_paused

    ProductionGuardrailController::latest

    ProductionGuardrailController::new

    ProductionGuardrailController::pause

    ProductionGuardrailController::recovery_streak

    ProductionGuardrailController::register

    ProductionGuardrailController::remove

    fn ProductionGuardrailController::remove(self : ProductionGuardrailController, name : String) -> Bool

    ProductionGuardrailController::resume_guardrail

    ProductionGuardrailController::rule_count

    ProductionGuardrailController::rules

    ProductionGuardrailController::summary

    ProductionGuardrailController::triggered

    ProductionGuardrailController::unblock

    ProductionGuardrailDecision

    pub struct ProductionGuardrailDecision {
    action : ProductionGuardrailAction
    rule_name : String
    metric : ProductionGuardrailMetricKind
    value : Double
    threshold : Double
    score : Double
    triggered : Bool
    failure_streak : Int
    recovery_streak : Int
    sequence : Int64
    reason : String
    }

    Decision emitted by a guard after evaluating an observation.

    ProductionGuardrailDecision::action

    ProductionGuardrailDecision::failure_streak

    ProductionGuardrailDecision::metric

    ProductionGuardrailDecision::reason

    ProductionGuardrailDecision::recovery_streak

    fn ProductionGuardrailDecision::recovery_streak(self : ProductionGuardrailDecision) -> Int

    ProductionGuardrailDecision::rule_name

    ProductionGuardrailDecision::score

    ProductionGuardrailDecision::sequence

    ProductionGuardrailDecision::summary

    ProductionGuardrailDecision::threshold

    ProductionGuardrailDecision::triggered

    ProductionGuardrailDecision::value

    ProductionGuardrailDirection

    pub(all) enum ProductionGuardrailDirection {
    GuardrailAbove
    GuardrailBelow
    GuardrailOutside
    }

    Direction of an operational threshold.

    ProductionGuardrailMetricKind

    pub(all) enum ProductionGuardrailMetricKind {
    GuardrailErrorRate
    GuardrailFalsePositiveRate
    GuardrailDetectionDelay
    GuardrailDataQuality
    GuardrailThroughput
    GuardrailLatency
    GuardrailCoverage
    GuardrailDriftScore
    }

    Operational signal monitored during a canary rollout.

    ProductionGuardrailObservation

    pub struct ProductionGuardrailObservation {
    timestamp : Int64
    metric : ProductionGuardrailMetricKind
    value : Double
    baseline : Double
    sample_count : Int
    confidence : Double
    source : String
    }

    Observed value supplied to a rollout guard.

    ProductionGuardrailObservation::baseline

    ProductionGuardrailObservation::confidence

    ProductionGuardrailObservation::is_finite

    ProductionGuardrailObservation::new

    fn ProductionGuardrailObservation::new(timestamp : Int64, metric : ProductionGuardrailMetricKind, value : Double, sample_count? : Int, baseline? : Double, confidence? : Double, source? : String) -> ProductionGuardrailObservation

    ProductionGuardrailObservation::relative_change

    ProductionGuardrailObservation::sample_count

    ProductionGuardrailObservation::source

    ProductionGuardrailObservation::timestamp

    ProductionGuardrailObservation::value

    ProductionGuardrailRule

    pub struct ProductionGuardrailRule {
    name : String
    metric : ProductionGuardrailMetricKind
    direction : ProductionGuardrailDirection
    warning_threshold : Double
    blocking_threshold : Double
    rollback_threshold : Double
    minimum_samples : Int
    window_size : Int
    consecutive_failures : Int
    recovery_samples : Int
    weight : Double
    enabled : Bool
    }

    A single rollout policy for one service-level signal.

    ProductionGuardrailRule::blocking_threshold

    fn ProductionGuardrailRule::blocking_threshold(self : ProductionGuardrailRule) -> Double

    ProductionGuardrailRule::consecutive_failures

    fn ProductionGuardrailRule::consecutive_failures(self : ProductionGuardrailRule) -> Int

    ProductionGuardrailRule::direction

    ProductionGuardrailRule::enabled

    ProductionGuardrailRule::metric

    ProductionGuardrailRule::minimum_samples

    fn ProductionGuardrailRule::minimum_samples(self : ProductionGuardrailRule) -> Int

    ProductionGuardrailRule::name

    ProductionGuardrailRule::new

    fn ProductionGuardrailRule::new(name : String, metric? : ProductionGuardrailMetricKind, direction? : ProductionGuardrailDirection, warning_threshold? : Double, blocking_threshold? : Double, rollback_threshold? : Double, minimum_samples? : Int, window_size? : Int, consecutive_failures? : Int, recovery_samples? : Int, weight? : Double, enabled? : Bool) -> ProductionGuardrailRule

    ProductionGuardrailRule::recovery_samples

    fn ProductionGuardrailRule::recovery_samples(self : ProductionGuardrailRule) -> Int

    ProductionGuardrailRule::rollback_threshold

    fn ProductionGuardrailRule::rollback_threshold(self : ProductionGuardrailRule) -> Double

    ProductionGuardrailRule::warning_threshold

    fn ProductionGuardrailRule::warning_threshold(self : ProductionGuardrailRule) -> Double

    ProductionGuardrailRule::weight

    ProductionGuardrailRule::window_size

    fn ProductionGuardrailRule::window_size(self : ProductionGuardrailRule) -> Int

    ProductionGuardrailRule::with_enabled

    fn ProductionGuardrailRule::with_enabled(self : ProductionGuardrailRule, enabled : Bool) -> ProductionGuardrailRule

    ProductionGuardrailSummary

    pub struct ProductionGuardrailSummary {
    evaluated : Int
    triggered : Int
    blocked : Bool
    paused : Bool
    failure_streak : Int
    recovery_streak : Int
    risk_score : Double
    }

    Compact rollout health summary.

    ProductionGuardrailSummary::blocked

    ProductionGuardrailSummary::evaluated

    ProductionGuardrailSummary::failure_streak

    fn ProductionGuardrailSummary::failure_streak(self : ProductionGuardrailSummary) -> Int

    ProductionGuardrailSummary::paused

    ProductionGuardrailSummary::recovery_streak

    fn ProductionGuardrailSummary::recovery_streak(self : ProductionGuardrailSummary) -> Int

    ProductionGuardrailSummary::risk_score

    ProductionGuardrailSummary::triggered

    ProductionHealthState

    pub(all) enum ProductionHealthState {
    ColdStart
    Healthy
    DegradedQuality
    AlertingState
    RecoveringState
    DisabledState
    }

    Lifecycle state of an online production monitor.

    ProductionHoltWinters

    pub struct ProductionHoltWinters {
    period : Int
    alpha : Double
    beta : Double
    gamma : Double
    levels : Array[Double]
    level : Double
    trend : Double
    count : Int
    index : Int
    initialized : Bool
    residuals : ProductionResidualScale
    }

    Additive Holt-Winters state for periodic production telemetry.

    ProductionHoltWinters::count

    ProductionHoltWinters::level

    fn ProductionHoltWinters::level(self : ProductionHoltWinters) -> Double

    ProductionHoltWinters::new

    fn ProductionHoltWinters::new(period? : Int, alpha? : Double, beta? : Double, gamma? : Double) -> ProductionHoltWinters

    ProductionHoltWinters::period

    ProductionHoltWinters::predict

    fn ProductionHoltWinters::predict(self : ProductionHoltWinters, horizon? : Int) -> Double

    ProductionHoltWinters::predict_interval

    fn ProductionHoltWinters::predict_interval(self : ProductionHoltWinters, timestamp : Int64, horizon? : Int, confidence? : Double) -> ProductionForecastInterval

    ProductionHoltWinters::seasonals

    fn ProductionHoltWinters::seasonals(self : ProductionHoltWinters) -> Array[Double]

    ProductionHoltWinters::trend

    fn ProductionHoltWinters::trend(self : ProductionHoltWinters) -> Double

    ProductionHoltWinters::update

    fn ProductionHoltWinters::update(self : ProductionHoltWinters, value : Double) -> ForecastPoint

    ProductionIncident

    pub struct ProductionIncident {
    id : Int
    metric : String
    first_timestamp : Int64
    last_timestamp : Int64
    alert_count : Int
    max_score : Double
    severity : AlertSeverity
    state : ProductionIncidentState
    acknowledged : Bool
    snooze_until : Int64?
    escalation_level : Int
    recovery_observations : Int
    }

    A grouped set of related monitor events for one metric.

    ProductionIncident::absorb

    ProductionIncident::acknowledge

    fn ProductionIncident::acknowledge(self : ProductionIncident) -> Unit

    ProductionIncident::acknowledged

    fn ProductionIncident::acknowledged(self : ProductionIncident) -> Bool

    ProductionIncident::alert_count

    fn ProductionIncident::alert_count(self : ProductionIncident) -> Int

    ProductionIncident::duration

    fn ProductionIncident::duration(self : ProductionIncident) -> Int64

    ProductionIncident::escalate

    fn ProductionIncident::escalate(self : ProductionIncident) -> Int

    ProductionIncident::escalation_level

    fn ProductionIncident::escalation_level(self : ProductionIncident) -> Int

    ProductionIncident::first_timestamp

    fn ProductionIncident::first_timestamp(self : ProductionIncident) -> Int64

    ProductionIncident::id

    ProductionIncident::is_open

    fn ProductionIncident::is_open(self : ProductionIncident) -> Bool

    ProductionIncident::last_timestamp

    fn ProductionIncident::last_timestamp(self : ProductionIncident) -> Int64

    ProductionIncident::max_score

    fn ProductionIncident::max_score(self : ProductionIncident) -> Double

    ProductionIncident::metric

    fn ProductionIncident::metric(self : ProductionIncident) -> String

    ProductionIncident::new

    ProductionIncident::observe_recovery

    fn ProductionIncident::observe_recovery(self : ProductionIncident) -> Unit

    ProductionIncident::recovery_observations

    fn ProductionIncident::recovery_observations(self : ProductionIncident) -> Int

    ProductionIncident::reopen

    fn ProductionIncident::reopen(self : ProductionIncident) -> Unit

    ProductionIncident::resolve

    fn ProductionIncident::resolve(self : ProductionIncident) -> Unit

    ProductionIncident::severity

    ProductionIncident::snooze

    fn ProductionIncident::snooze(self : ProductionIncident, until : Int64) -> Unit

    ProductionIncident::state

    ProductionIncident::summary

    fn ProductionIncident::summary(self : ProductionIncident) -> String

    ProductionIncidentManager

    pub struct ProductionIncidentManager {
    policy : ProductionIncidentPolicy
    incidents : Array[ProductionIncident]
    next_id : Int
    ingested : Int
    grouped : Int
    resolved : Int
    }

    Incident manager used by streaming and batch integrations.

    ProductionIncidentManager::escalate_due

    ProductionIncidentManager::grouped

    ProductionIncidentManager::incident_count

    fn ProductionIncidentManager::incident_count(self : ProductionIncidentManager) -> Int

    ProductionIncidentManager::incidents

    ProductionIncidentManager::ingest

    ProductionIncidentManager::ingested

    ProductionIncidentManager::new

    ProductionIncidentManager::observe_healthy

    fn ProductionIncidentManager::observe_healthy(self : ProductionIncidentManager, metric : String, timestamp : Int64) -> Array[ProductionIncident]

    ProductionIncidentManager::open_incidents

    ProductionIncidentManager::policy

    ProductionIncidentManager::reset

    ProductionIncidentManager::resolved

    ProductionIncidentPolicy

    pub struct ProductionIncidentPolicy {
    grouping_gap : Int64
    recovery_points : Int
    escalation_after : Int
    retention : Int
    }

    Controls incident grouping, recovery and retention.

    ProductionIncidentPolicy::escalation_after

    fn ProductionIncidentPolicy::escalation_after(self : ProductionIncidentPolicy) -> Int

    ProductionIncidentPolicy::grouping_gap

    fn ProductionIncidentPolicy::grouping_gap(self : ProductionIncidentPolicy) -> Int64

    ProductionIncidentPolicy::new

    fn ProductionIncidentPolicy::new(grouping_gap? : Int64, recovery_points? : Int, escalation_after? : Int, retention? : Int) -> ProductionIncidentPolicy

    ProductionIncidentPolicy::recovery_points

    fn ProductionIncidentPolicy::recovery_points(self : ProductionIncidentPolicy) -> Int

    ProductionIncidentPolicy::retention

    ProductionIncidentState

    pub(all) enum ProductionIncidentState {
    OpenIncident
    AcknowledgedIncident
    SnoozedIncident
    ResolvedIncident
    ReopenedIncident
    }

    Lifecycle of a grouped production incident.

    ProductionMaintenanceWindow

    pub struct ProductionMaintenanceWindow {
    name : String
    start : Int64
    end : Int64
    reason : String
    }

    A maintenance interval during which alert delivery is intentionally muted.

    ProductionMaintenanceWindow::contains

    fn ProductionMaintenanceWindow::contains(self : ProductionMaintenanceWindow, timestamp : Int64) -> Bool

    ProductionMaintenanceWindow::duration

    ProductionMaintenanceWindow::end

    ProductionMaintenanceWindow::name

    ProductionMaintenanceWindow::new

    fn ProductionMaintenanceWindow::new(name : String, start : Int64, end : Int64, reason? : String) -> ProductionMaintenanceWindow

    ProductionMaintenanceWindow::reason

    ProductionMaintenanceWindow::start

    ProductionMetricCatalog

    pub struct ProductionMetricCatalog {
    series : Array[ProductionMetricSeries]
    ingested : Int
    rejected : Int
    }

    A deterministic collection of named series for multimetric monitoring.

    ProductionMetricCatalog::find

    ProductionMetricCatalog::ingest

    fn ProductionMetricCatalog::ingest(self : ProductionMetricCatalog, name : String, sample : ProductionSample) -> Bool

    ProductionMetricCatalog::ingest_point

    fn ProductionMetricCatalog::ingest_point(self : ProductionMetricCatalog, name : String, point : SignalPoint) -> Bool

    ProductionMetricCatalog::ingested

    ProductionMetricCatalog::metric_count

    fn ProductionMetricCatalog::metric_count(self : ProductionMetricCatalog) -> Int

    ProductionMetricCatalog::names

    ProductionMetricCatalog::new

    ProductionMetricCatalog::register

    ProductionMetricCatalog::rejected

    ProductionMetricCatalog::relations

    fn ProductionMetricCatalog::relations(self : ProductionMetricCatalog, correlation_threshold? : Double) -> Array[ProductionMetricRelation]

    ProductionMetricCatalog::series

    ProductionMetricCatalog::summary

    ProductionMetricFrame

    pub struct ProductionMetricFrame {
    timestamp : Int64
    names : Array[String]
    values : Array[Double]
    valid : Array[Bool]
    }

    A synchronized row across several metric series.

    ProductionMetricFrame::dimension

    fn ProductionMetricFrame::dimension(self : ProductionMetricFrame) -> Int

    ProductionMetricFrame::is_complete

    fn ProductionMetricFrame::is_complete(self : ProductionMetricFrame) -> Bool

    ProductionMetricFrame::names

    ProductionMetricFrame::new

    fn ProductionMetricFrame::new(timestamp : Int64, names : Array[String], values : Array[Double]) -> ProductionMetricFrame

    ProductionMetricFrame::timestamp

    fn ProductionMetricFrame::timestamp(self : ProductionMetricFrame) -> Int64

    ProductionMetricFrame::valid_count

    fn ProductionMetricFrame::valid_count(self : ProductionMetricFrame) -> Int

    ProductionMetricFrame::values

    fn ProductionMetricFrame::values(self : ProductionMetricFrame) -> Array[Double]

    ProductionMetricRelation

    pub struct ProductionMetricRelation {
    left : String
    right : String
    correlation : Double
    distance : Double
    related : Bool
    }

    Cross-series relation used to prioritize correlated incidents.

    ProductionMetricRelation::correlation

    fn ProductionMetricRelation::correlation(self : ProductionMetricRelation) -> Double

    ProductionMetricRelation::distance

    fn ProductionMetricRelation::distance(self : ProductionMetricRelation) -> Double

    ProductionMetricRelation::left

    ProductionMetricRelation::related

    ProductionMetricRelation::right

    ProductionMetricSeries

    pub struct ProductionMetricSeries {
    name : String
    unit : String
    window : ProductionTimeWindow
    updates : Int
    invalid : Int
    }

    A named metric series with bounded event-time retention.

    ProductionMetricSeries::change_score

    fn ProductionMetricSeries::change_score(self : ProductionMetricSeries, split : Int) -> Double

    ProductionMetricSeries::correlation

    fn ProductionMetricSeries::correlation(self : ProductionMetricSeries, other : ProductionMetricSeries) -> Double

    ProductionMetricSeries::invalid

    ProductionMetricSeries::latest

    ProductionMetricSeries::name

    ProductionMetricSeries::new

    fn ProductionMetricSeries::new(name : String, unit? : String, capacity? : Int) -> ProductionMetricSeries

    ProductionMetricSeries::push

    ProductionMetricSeries::push_point

    fn ProductionMetricSeries::push_point(self : ProductionMetricSeries, point : SignalPoint) -> Bool

    ProductionMetricSeries::summary

    ProductionMetricSeries::unit

    ProductionMetricSeries::updates

    ProductionMetricSeries::values

    ProductionMetricSeries::window

    ProductionMonitor

    pub struct ProductionMonitor {
    config : ProductionMonitorConfig
    detector : PipelineDetector
    baseline_window : DoubleWindow
    recent_window : ProductionTimeWindow
    events : Array[ProductionMonitorEvent]
    state : ProductionHealthState
    processed : Int
    valid : Int
    invalid : Int
    changes : Int
    emitted : Int
    suppressed : Int
    recovery_count : Int
    consecutive_healthy : Int
    consecutive_alerts : Int
    ordinal : Int
    latest_score : Double
    latest_baseline : Double
    latest_value : Double
    last_timestamp : Int64
    last_value : Double?
    }

    Stateful online monitor joining data quality, baselines, detection, and alert policy.

    ProductionMonitor::changes

    fn ProductionMonitor::changes(self : ProductionMonitor) -> Int

    ProductionMonitor::checkpoint

    ProductionMonitor::config

    ProductionMonitor::emitted

    fn ProductionMonitor::emitted(self : ProductionMonitor) -> Int

    ProductionMonitor::event_count

    fn ProductionMonitor::event_count(self : ProductionMonitor) -> Int

    ProductionMonitor::events

    ProductionMonitor::invalid

    fn ProductionMonitor::invalid(self : ProductionMonitor) -> Int

    ProductionMonitor::latest_baseline

    fn ProductionMonitor::latest_baseline(self : ProductionMonitor) -> Double

    ProductionMonitor::latest_score

    fn ProductionMonitor::latest_score(self : ProductionMonitor) -> Double

    ProductionMonitor::latest_value

    fn ProductionMonitor::latest_value(self : ProductionMonitor) -> Double

    ProductionMonitor::new

    ProductionMonitor::processed

    fn ProductionMonitor::processed(self : ProductionMonitor) -> Int

    ProductionMonitor::recent_summary

    ProductionMonitor::recent_values

    fn ProductionMonitor::recent_values(self : ProductionMonitor) -> Array[Double]

    ProductionMonitor::recovery_count

    fn ProductionMonitor::recovery_count(self : ProductionMonitor) -> Int

    ProductionMonitor::reset

    fn ProductionMonitor::reset(self : ProductionMonitor) -> Unit

    ProductionMonitor::snapshot

    ProductionMonitor::state

    ProductionMonitor::suppressed

    fn ProductionMonitor::suppressed(self : ProductionMonitor) -> Int

    ProductionMonitor::update

    ProductionMonitor::update_batch

    ProductionMonitor::update_point

    ProductionMonitor::valid

    fn ProductionMonitor::valid(self : ProductionMonitor) -> Int

    ProductionMonitorCheckpoint

    pub struct ProductionMonitorCheckpoint {
    config_fingerprint : String
    processed : Int
    valid : Int
    invalid : Int
    changes : Int
    emitted : Int
    suppressed : Int
    recovery_count : Int
    last_timestamp : Int64
    baseline : Double
    latest_value : Double
    latest_score : Double
    state : ProductionHealthState
    baseline_values : Array[Double]
    recent_values : Array[Double]
    }

    Checkpoint data that can be persisted by an embedding service.

    ProductionMonitorCheckpoint::baseline

    ProductionMonitorCheckpoint::changes

    ProductionMonitorCheckpoint::fingerprint

    ProductionMonitorCheckpoint::invalid

    ProductionMonitorCheckpoint::latest_value

    fn ProductionMonitorCheckpoint::latest_value(self : ProductionMonitorCheckpoint) -> Double

    ProductionMonitorCheckpoint::processed

    ProductionMonitorCheckpoint::recent_values

    ProductionMonitorCheckpoint::state

    ProductionMonitorCheckpoint::valid

    ProductionMonitorConfig

    pub struct ProductionMonitorConfig {
    name : String
    mode : ProductionMonitorMode
    missing_values : MissingValueStrategy
    baseline : ProductionBaselineStrategy
    fixed_baseline : Double
    detection : ProductionDetectionConfig
    window : ProductionWindowConfig
    alerts : ProductionAlertConfig
    dimensions : Int
    version : Int
    }

    Complete configuration for one production monitor.

    ProductionMonitorConfig::alerts

    ProductionMonitorConfig::baseline

    ProductionMonitorConfig::detection

    ProductionMonitorConfig::dimensions

    fn ProductionMonitorConfig::dimensions(self : ProductionMonitorConfig) -> Int

    ProductionMonitorConfig::fingerprint

    fn ProductionMonitorConfig::fingerprint(self : ProductionMonitorConfig) -> String

    A compact configuration fingerprint for cache keys and deployment audits.

    ProductionMonitorConfig::fixed_baseline

    fn ProductionMonitorConfig::fixed_baseline(self : ProductionMonitorConfig) -> Double

    ProductionMonitorConfig::is_actionable

    fn ProductionMonitorConfig::is_actionable(self : ProductionMonitorConfig, result : DetectionResult) -> Bool

    Determines whether a result is actionable for the configured mode.

    ProductionMonitorConfig::is_valid

    ProductionMonitorConfig::missing_values

    ProductionMonitorConfig::mode

    ProductionMonitorConfig::name

    ProductionMonitorConfig::new

    fn ProductionMonitorConfig::new(name? : String, mode? : ProductionMonitorMode, missing_values? : MissingValueStrategy, baseline? : ProductionBaselineStrategy, fixed_baseline? : Double, detection? : ProductionDetectionConfig, window? : ProductionWindowConfig, alerts? : ProductionAlertConfig, dimensions? : Int, version? : Int) -> ProductionMonitorConfig

    ProductionMonitorConfig::next_version

    Returns a copy with a bumped configuration version.

    ProductionMonitorConfig::summary

    fn ProductionMonitorConfig::summary(self : ProductionMonitorConfig) -> String

    ProductionMonitorConfig::validate

    Validates a complete configuration without throwing, suitable for CI and startup checks.

    ProductionMonitorConfig::version

    ProductionMonitorConfig::window

    ProductionMonitorEvent

    pub struct ProductionMonitorEvent {
    metric : String
    timestamp : Int64
    sequence : Int
    kind : ProductionMonitorEventKind
    state : ProductionHealthState
    result : DetectionResult
    baseline : Double
    value : Double
    message : String
    ordinal : Int
    }

    A durable audit record for each significant state transition.

    ProductionMonitorEvent::baseline

    fn ProductionMonitorEvent::baseline(self : ProductionMonitorEvent) -> Double

    ProductionMonitorEvent::kind

    ProductionMonitorEvent::message

    fn ProductionMonitorEvent::message(self : ProductionMonitorEvent) -> String

    ProductionMonitorEvent::metric

    fn ProductionMonitorEvent::metric(self : ProductionMonitorEvent) -> String

    ProductionMonitorEvent::ordinal

    ProductionMonitorEvent::result

    ProductionMonitorEvent::sequence

    ProductionMonitorEvent::state

    ProductionMonitorEvent::summary

    fn ProductionMonitorEvent::summary(self : ProductionMonitorEvent) -> String

    ProductionMonitorEvent::timestamp

    fn ProductionMonitorEvent::timestamp(self : ProductionMonitorEvent) -> Int64

    ProductionMonitorEvent::value

    ProductionMonitorEventKind

    pub(all) enum ProductionMonitorEventKind {
    Observation
    InvalidInput
    WarmupObservation
    ChangeDetected
    AlertEmitted
    AlertSuppressed
    RecoveryStarted
    RecoveryCompleted
    QualityDegraded
    }

    Reason carried by an audit event emitted from a monitor.

    ProductionMonitorMode

    pub(all) enum ProductionMonitorMode {
    ObserveOnly
    Alerting
    Backfill
    Replay
    }

    Operating mode for a production monitor.

    ProductionMonitorSnapshot

    pub struct ProductionMonitorSnapshot {
    name : String
    state : ProductionHealthState
    processed : Int
    valid : Int
    invalid : Int
    warmup_remaining : Int
    changes : Int
    emitted : Int
    suppressed : Int
    recovery_count : Int
    latest_score : Double
    baseline : Double
    latest_value : Double
    quality_ratio : Double
    last_timestamp : Int64
    }

    A compact operational snapshot suitable for a dashboard or heartbeat endpoint.

    ProductionMonitorSnapshot::baseline

    ProductionMonitorSnapshot::changes

    ProductionMonitorSnapshot::emitted

    ProductionMonitorSnapshot::invalid

    ProductionMonitorSnapshot::is_healthy

    ProductionMonitorSnapshot::last_timestamp

    fn ProductionMonitorSnapshot::last_timestamp(self : ProductionMonitorSnapshot) -> Int64

    ProductionMonitorSnapshot::latest_score

    fn ProductionMonitorSnapshot::latest_score(self : ProductionMonitorSnapshot) -> Double

    ProductionMonitorSnapshot::latest_value

    fn ProductionMonitorSnapshot::latest_value(self : ProductionMonitorSnapshot) -> Double

    ProductionMonitorSnapshot::name

    ProductionMonitorSnapshot::processed

    ProductionMonitorSnapshot::quality_ratio

    fn ProductionMonitorSnapshot::quality_ratio(self : ProductionMonitorSnapshot) -> Double

    ProductionMonitorSnapshot::recovery_count

    fn ProductionMonitorSnapshot::recovery_count(self : ProductionMonitorSnapshot) -> Int

    ProductionMonitorSnapshot::state

    ProductionMonitorSnapshot::summary

    ProductionMonitorSnapshot::suppressed

    ProductionMonitorSnapshot::valid

    ProductionMonitorSnapshot::warmup_remaining

    fn ProductionMonitorSnapshot::warmup_remaining(self : ProductionMonitorSnapshot) -> Int

    ProductionOnlineCalibrator

    pub struct ProductionOnlineCalibrator {
    bins : Array[ProductionScoreBin]
    mode : ProductionCalibrationMode
    observations : Int
    positive : Int
    negative : Int
    }

    Bounded online calibrator with deployment-safe priors.

    ProductionOnlineCalibrator::bin_count

    ProductionOnlineCalibrator::bins

    ProductionOnlineCalibrator::calibrate

    fn ProductionOnlineCalibrator::calibrate(self : ProductionOnlineCalibrator, score : Double) -> Double

    ProductionOnlineCalibrator::negative

    ProductionOnlineCalibrator::new

    ProductionOnlineCalibrator::observations

    ProductionOnlineCalibrator::positive

    ProductionOnlineCalibrator::reliability_error

    fn ProductionOnlineCalibrator::reliability_error(self : ProductionOnlineCalibrator) -> Double

    ProductionOnlineCalibrator::reset

    ProductionOnlineCalibrator::update

    fn ProductionOnlineCalibrator::update(self : ProductionOnlineCalibrator, score : Double, changed : Bool, weight? : Double) -> Unit

    ProductionPolicyEngine

    pub struct ProductionPolicyEngine {
    rules : Array[ProductionDeliveryRule]
    schedule : ProductionSuppressionSchedule
    budget : ProductionEventBudget
    recent : Array[ProductionAlertEnvelope]
    evaluated : Int
    delivered : Int
    suppressed : Int
    duplicates : Int
    }

    Policy engine combining maintenance, budgets, cooldowns and deduplication.

    ProductionPolicyEngine::add_maintenance

    fn ProductionPolicyEngine::add_maintenance(self : ProductionPolicyEngine, window : ProductionMaintenanceWindow) -> Bool

    ProductionPolicyEngine::add_rule

    ProductionPolicyEngine::delivered

    fn ProductionPolicyEngine::delivered(self : ProductionPolicyEngine) -> Int

    ProductionPolicyEngine::duplicates

    fn ProductionPolicyEngine::duplicates(self : ProductionPolicyEngine) -> Int

    ProductionPolicyEngine::evaluate

    ProductionPolicyEngine::evaluated

    fn ProductionPolicyEngine::evaluated(self : ProductionPolicyEngine) -> Int

    ProductionPolicyEngine::new

    ProductionPolicyEngine::reset

    ProductionPolicyEngine::rules

    ProductionPolicyEngine::suppressed

    fn ProductionPolicyEngine::suppressed(self : ProductionPolicyEngine) -> Int

    ProductionPreprocessingReport

    pub struct ProductionPreprocessingReport {
    input_count : Int
    output_count : Int
    invalid_input : Int
    invalid_output : Int
    clipped : Int
    imputed : Int
    transformed : Int
    finite : Bool
    }

    Diagnostics from one preprocessing pass.

    ProductionPreprocessingReport::clipped

    ProductionPreprocessingReport::empty

    ProductionPreprocessingReport::finite

    ProductionPreprocessingReport::imputed

    ProductionPreprocessingReport::input_count

    ProductionPreprocessingReport::invalid_input

    ProductionPreprocessingReport::invalid_output

    ProductionPreprocessingReport::output_count

    ProductionPreprocessingReport::quality

    ProductionPreprocessingReport::summary

    ProductionPreprocessingReport::transformed

    ProductionPreprocessor

    pub struct ProductionPreprocessor {
    specs : Array[ProductionTransformSpec]
    missing : MissingValueStrategy
    batches : Int
    values : Int
    failed : Int
    }

    A transform chain that can be reused across batches.

    ProductionPreprocessor::add

    ProductionPreprocessor::batches

    ProductionPreprocessor::clear

    ProductionPreprocessor::failed

    ProductionPreprocessor::new

    ProductionPreprocessor::specs

    ProductionPreprocessor::transform

    fn ProductionPreprocessor::transform(self : ProductionPreprocessor, values : Array[Double]) -> (Array[Double], ProductionPreprocessingReport)

    ProductionPreprocessor::transform_batches

    fn ProductionPreprocessor::transform_batches(self : ProductionPreprocessor, batches : Array[Array[Double]]) -> Array[Array[Double]]

    ProductionPreprocessor::transform_points

    ProductionPreprocessor::values

    ProductionQuantileState

    pub struct ProductionQuantileState {
    capacity : Int
    residuals : Array[Double]
    cursor : Int
    }

    Robust quantile state for models with non-Gaussian residuals.

    ProductionQuantileState::absolute_quantile

    fn ProductionQuantileState::absolute_quantile(self : ProductionQuantileState, probability : Double) -> Double

    ProductionQuantileState::count

    ProductionQuantileState::middle_spread

    fn ProductionQuantileState::middle_spread(self : ProductionQuantileState) -> Double

    ProductionQuantileState::new

    ProductionQuantileState::push

    fn ProductionQuantileState::push(self : ProductionQuantileState, residual : Double) -> Unit

    ProductionQuantileState::quantile

    fn ProductionQuantileState::quantile(self : ProductionQuantileState, probability : Double) -> Double

    ProductionQueryResult

    pub struct ProductionQueryResult {
    metric : String
    window : ProductionQueryWindow
    function : ProductionWindowFunction
    value : Double
    count : Int
    quality : Double
    }

    ProductionQueryResult::count

    ProductionQueryResult::function

    ProductionQueryResult::metric

    fn ProductionQueryResult::metric(self : ProductionQueryResult) -> String

    ProductionQueryResult::quality

    fn ProductionQueryResult::quality(self : ProductionQueryResult) -> Double

    ProductionQueryResult::summary

    fn ProductionQueryResult::summary(self : ProductionQueryResult) -> String

    ProductionQueryResult::value

    fn ProductionQueryResult::value(self : ProductionQueryResult) -> Double

    ProductionQueryResult::window

    ProductionQueryWindow

    pub struct ProductionQueryWindow {
    start : Int64
    end : Int64
    }

    ProductionQueryWindow::contains

    fn ProductionQueryWindow::contains(self : ProductionQueryWindow, timestamp : Int64) -> Bool

    ProductionQueryWindow::duration

    fn ProductionQueryWindow::duration(self : ProductionQueryWindow) -> Int64

    ProductionQueryWindow::end

    ProductionQueryWindow::new

    fn ProductionQueryWindow::new(start : Int64, end : Int64) -> ProductionQueryWindow

    ProductionQueryWindow::start

    fn ProductionQueryWindow::start(self : ProductionQueryWindow) -> Int64

    ProductionRateSummary

    pub struct ProductionRateSummary {
    samples : Int
    resets : Int
    invalid : Int
    mean_rate : Double
    maximum_rate : Double
    latest_rate : Double
    }

    A rolling rate and change summary used for counter-based metrics.

    ProductionRateSummary::from_points

    ProductionRateSummary::invalid

    fn ProductionRateSummary::invalid(self : ProductionRateSummary) -> Int

    ProductionRateSummary::latest_rate

    fn ProductionRateSummary::latest_rate(self : ProductionRateSummary) -> Double

    ProductionRateSummary::maximum_rate

    fn ProductionRateSummary::maximum_rate(self : ProductionRateSummary) -> Double

    ProductionRateSummary::mean_rate

    fn ProductionRateSummary::mean_rate(self : ProductionRateSummary) -> Double

    ProductionRateSummary::resets

    ProductionRateSummary::samples

    fn ProductionRateSummary::samples(self : ProductionRateSummary) -> Int

    ProductionRateTracker

    pub struct ProductionRateTracker {
    previous_timestamp : Int64?
    previous_value : Double?
    resets : Int
    invalid : Int
    }

    Tracks rates and counter resets for monotonic telemetry.

    ProductionRateTracker::invalid

    fn ProductionRateTracker::invalid(self : ProductionRateTracker) -> Int

    ProductionRateTracker::new

    ProductionRateTracker::push

    fn ProductionRateTracker::push(self : ProductionRateTracker, timestamp : Int64, value : Double) -> Double?

    ProductionRateTracker::resets

    ProductionReadinessCheck

    pub struct ProductionReadinessCheck {
    name : String
    passed : Bool
    critical : Bool
    value : Double
    expected : Double
    message : String
    }

    Result of one startup or liveness check.

    ProductionReadinessCheck::critical

    ProductionReadinessCheck::expected

    fn ProductionReadinessCheck::expected(self : ProductionReadinessCheck) -> Double

    ProductionReadinessCheck::message

    ProductionReadinessCheck::name

    ProductionReadinessCheck::new

    fn ProductionReadinessCheck::new(name : String, passed : Bool, expected : Double, value : Double, message? : String, critical? : Bool) -> ProductionReadinessCheck

    ProductionReadinessCheck::passed

    ProductionReadinessCheck::summary

    ProductionReadinessCheck::value

    ProductionReadinessReport

    pub struct ProductionReadinessReport {
    checks : Array[ProductionReadinessCheck]
    passed : Bool
    critical_failures : Int
    warnings : Int
    status : ProductionServiceStatus
    }

    Aggregate startup and liveness status.

    ProductionReadinessReport::checks

    ProductionReadinessReport::critical_failures

    fn ProductionReadinessReport::critical_failures(self : ProductionReadinessReport) -> Int

    ProductionReadinessReport::from_checks

    ProductionReadinessReport::markdown

    ProductionReadinessReport::passed

    ProductionReadinessReport::status

    ProductionReadinessReport::summary

    ProductionReadinessReport::warnings

    ProductionReplayConfig

    pub struct ProductionReplayConfig {
    mode : ProductionReplayMode
    start_timestamp : Int64
    step : Int64
    maximum_points : Int
    compare_tolerance : Double
    include_quiet : Bool
    }

    Replay options for deterministic regression and incident investigation.

    ProductionReplayConfig::compare_tolerance

    fn ProductionReplayConfig::compare_tolerance(self : ProductionReplayConfig) -> Double

    ProductionReplayConfig::include_quiet

    fn ProductionReplayConfig::include_quiet(self : ProductionReplayConfig) -> Bool

    ProductionReplayConfig::maximum_points

    fn ProductionReplayConfig::maximum_points(self : ProductionReplayConfig) -> Int

    ProductionReplayConfig::mode

    ProductionReplayConfig::new

    fn ProductionReplayConfig::new(mode? : ProductionReplayMode, start_timestamp? : Int64, step? : Int64, maximum_points? : Int, compare_tolerance? : Double, include_quiet? : Bool) -> ProductionReplayConfig

    ProductionReplayConfig::start_timestamp

    fn ProductionReplayConfig::start_timestamp(self : ProductionReplayConfig) -> Int64

    ProductionReplayConfig::step

    ProductionReplayDifference

    pub struct ProductionReplayDifference {
    points_delta : Int
    changes_delta : Int
    emitted_delta : Int
    checksum_delta : Double
    score_delta : Double
    equivalent : Bool
    }

    Difference between two deterministic replay results.

    ProductionReplayDifference::changes_delta

    ProductionReplayDifference::checksum_delta

    fn ProductionReplayDifference::checksum_delta(self : ProductionReplayDifference) -> Double

    ProductionReplayDifference::emitted_delta

    ProductionReplayDifference::equivalent

    ProductionReplayDifference::from_summaries

    ProductionReplayDifference::points_delta

    ProductionReplayDifference::score_delta

    fn ProductionReplayDifference::score_delta(self : ProductionReplayDifference) -> Double

    ProductionReplayDifference::summary

    ProductionReplayMode

    pub(all) enum ProductionReplayMode {
    StatefulReplay
    ShadowReplay
    CompareReplay
    }

    Replay mode controls whether detector state is allowed to mutate.

    ProductionReplayObservation

    pub struct ProductionReplayObservation {
    index : Int
    timestamp : Int64
    value : Double
    baseline : Double
    result : DetectionResult
    state : ProductionHealthState
    emitted : Bool
    }

    One normalized replay output row.

    ProductionReplayObservation::baseline

    ProductionReplayObservation::emitted

    ProductionReplayObservation::index

    ProductionReplayObservation::result

    ProductionReplayObservation::state

    ProductionReplayObservation::summary

    ProductionReplayObservation::timestamp

    ProductionReplayObservation::value

    ProductionReplayRunner

    pub struct ProductionReplayRunner {
    config : ProductionReplayConfig
    observations : Array[ProductionReplayObservation]
    skipped : Int
    }

    Runs a configured monitor over a reproducible input signal.

    ProductionReplayRunner::config

    ProductionReplayRunner::new

    ProductionReplayRunner::observations

    ProductionReplayRunner::reset

    ProductionReplayRunner::run

    ProductionReplayRunner::skipped

    ProductionReplaySummary

    pub struct ProductionReplaySummary {
    points : Int
    valid : Int
    invalid : Int
    changes : Int
    emitted : Int
    suppressed : Int
    checksum : Double
    first_change : Int
    mean_score : Double
    maximum_score : Double
    final_state : ProductionHealthState
    }

    Aggregate replay statistics and a deterministic checksum.

    ProductionReplaySummary::changes

    ProductionReplaySummary::checksum

    fn ProductionReplaySummary::checksum(self : ProductionReplaySummary) -> Double

    ProductionReplaySummary::emitted

    ProductionReplaySummary::final_state

    ProductionReplaySummary::first_change

    fn ProductionReplaySummary::first_change(self : ProductionReplaySummary) -> Int

    ProductionReplaySummary::invalid

    ProductionReplaySummary::maximum_score

    fn ProductionReplaySummary::maximum_score(self : ProductionReplaySummary) -> Double

    ProductionReplaySummary::mean_score

    fn ProductionReplaySummary::mean_score(self : ProductionReplaySummary) -> Double

    ProductionReplaySummary::points

    ProductionReplaySummary::summary

    fn ProductionReplaySummary::summary(self : ProductionReplaySummary) -> String

    ProductionReplaySummary::suppressed

    fn ProductionReplaySummary::suppressed(self : ProductionReplaySummary) -> Int

    ProductionReplaySummary::valid

    ProductionReportFormat

    pub(all) enum ProductionReportFormat {
    CsvReport
    MarkdownReport
    LineReport
    }

    Report formats supported by the operational reporting helpers.

    ProductionReportOptions

    pub struct ProductionReportOptions {
    format : ProductionReportFormat
    include_events : Bool
    include_features : Bool
    maximum_rows : Int
    decimals : Int
    }

    Options controlling report size and precision.

    ProductionReportOptions::decimals

    ProductionReportOptions::format

    ProductionReportOptions::include_events

    fn ProductionReportOptions::include_events(self : ProductionReportOptions) -> Bool

    ProductionReportOptions::include_features

    fn ProductionReportOptions::include_features(self : ProductionReportOptions) -> Bool

    ProductionReportOptions::maximum_rows

    fn ProductionReportOptions::maximum_rows(self : ProductionReportOptions) -> Int

    ProductionReportOptions::new

    fn ProductionReportOptions::new(format? : ProductionReportFormat, include_events? : Bool, include_features? : Bool, maximum_rows? : Int, decimals? : Int) -> ProductionReportOptions

    ProductionResampler

    pub struct ProductionResampler {
    step : Int64
    policy : ProductionFillPolicy
    origin : Int64?
    last : ProductionSample?
    pending_empty : Int
    produced : Int
    }

    Converts irregular event-time samples into a regular grid.

    ProductionResampler::flush

    ProductionResampler::new

    fn ProductionResampler::new(step? : Int64, policy? : ProductionFillPolicy) -> ProductionResampler

    ProductionResampler::pending_empty

    fn ProductionResampler::pending_empty(self : ProductionResampler) -> Int

    ProductionResampler::produced

    fn ProductionResampler::produced(self : ProductionResampler) -> Int

    ProductionResampler::push

    ProductionResampler::step

    fn ProductionResampler::step(self : ProductionResampler) -> Int64

    ProductionResidualScale

    pub struct ProductionResidualScale {
    alpha : Double
    center : Double
    deviation : Double
    count : Int
    missing : Int
    }

    An exponentially weighted residual scale used to construct robust intervals.

    ProductionResidualScale::center

    ProductionResidualScale::count

    ProductionResidualScale::deviation

    fn ProductionResidualScale::deviation(self : ProductionResidualScale) -> Double

    ProductionResidualScale::missing

    ProductionResidualScale::new

    ProductionResidualScale::uncertainty

    fn ProductionResidualScale::uncertainty(self : ProductionResidualScale, confidence? : Double) -> Double

    ProductionResidualScale::update

    fn ProductionResidualScale::update(self : ProductionResidualScale, residual : Double) -> Double

    ProductionRolloutPlan

    pub struct ProductionRolloutPlan {
    name : String
    stages : Array[ProductionRolloutStage]
    active_stage : Int
    started_at : Int64
    completed : Bool
    aborted : Bool
    }

    Ordered rollout plan used by deployment orchestration.

    ProductionRolloutPlan::abort

    ProductionRolloutPlan::active_stage

    fn ProductionRolloutPlan::active_stage(self : ProductionRolloutPlan) -> Int

    ProductionRolloutPlan::add_stage

    ProductionRolloutPlan::current_stage

    ProductionRolloutPlan::describe

    fn ProductionRolloutPlan::describe(self : ProductionRolloutPlan) -> String

    Stable text representation for deployment audit logs.

    ProductionRolloutPlan::is_aborted

    fn ProductionRolloutPlan::is_aborted(self : ProductionRolloutPlan) -> Bool

    ProductionRolloutPlan::is_completed

    fn ProductionRolloutPlan::is_completed(self : ProductionRolloutPlan) -> Bool

    ProductionRolloutPlan::name

    fn ProductionRolloutPlan::name(self : ProductionRolloutPlan) -> String

    ProductionRolloutPlan::new

    ProductionRolloutPlan::promote

    fn ProductionRolloutPlan::promote(self : ProductionRolloutPlan, timestamp : Int64, health : Double) -> Bool

    ProductionRolloutPlan::stage_count

    fn ProductionRolloutPlan::stage_count(self : ProductionRolloutPlan) -> Int

    ProductionRolloutPlan::stages

    ProductionRolloutPlan::start

    fn ProductionRolloutPlan::start(self : ProductionRolloutPlan, timestamp : Int64) -> Bool

    ProductionRolloutPlan::started_at

    fn ProductionRolloutPlan::started_at(self : ProductionRolloutPlan) -> Int64

    ProductionRolloutPlan::validate

    fn ProductionRolloutPlan::validate(self : ProductionRolloutPlan) -> Array[String]

    Validate a plan before it is handed to a deployment service.

    ProductionRolloutStage

    pub struct ProductionRolloutStage {
    name : String
    exposure : Double
    minimum_duration : Int64
    maximum_duration : Int64
    required_health : Double
    automatic_promotion : Bool
    }

    A named canary stage with an explicit exposure range.

    ProductionRolloutStage::automatic_promotion

    fn ProductionRolloutStage::automatic_promotion(self : ProductionRolloutStage) -> Bool

    ProductionRolloutStage::exposure

    fn ProductionRolloutStage::exposure(self : ProductionRolloutStage) -> Double

    ProductionRolloutStage::maximum_duration

    fn ProductionRolloutStage::maximum_duration(self : ProductionRolloutStage) -> Int64

    ProductionRolloutStage::minimum_duration

    fn ProductionRolloutStage::minimum_duration(self : ProductionRolloutStage) -> Int64

    ProductionRolloutStage::name

    ProductionRolloutStage::new

    fn ProductionRolloutStage::new(name : String, exposure? : Double, minimum_duration? : Int64, maximum_duration? : Int64, required_health? : Double, automatic_promotion? : Bool) -> ProductionRolloutStage

    ProductionRolloutStage::required_health

    fn ProductionRolloutStage::required_health(self : ProductionRolloutStage) -> Double

    ProductionSample

    pub struct ProductionSample {
    timestamp : Int64
    value : Double
    sequence : Int
    imputed : Bool
    late : Bool
    }

    A validated sample entering a production analytics pipeline.

    ProductionSample::imputed

    fn ProductionSample::imputed(self : ProductionSample) -> Bool

    ProductionSample::late

    fn ProductionSample::late(self : ProductionSample) -> Bool

    ProductionSample::new

    fn ProductionSample::new(timestamp : Int64, value : Double, sequence? : Int, imputed? : Bool, late? : Bool) -> ProductionSample

    ProductionSample::sequence

    fn ProductionSample::sequence(self : ProductionSample) -> Int

    ProductionSample::timestamp

    fn ProductionSample::timestamp(self : ProductionSample) -> Int64

    ProductionSample::value

    fn ProductionSample::value(self : ProductionSample) -> Double

    ProductionSampleQueue

    pub struct ProductionSampleQueue {
    capacity : Int
    policy : ProductionBackpressurePolicy
    samples : Array[ProductionSample]
    accepted : Int
    dropped : Int
    rejected : Int
    }

    Bounded queue with explicit loss accounting.

    ProductionSampleQueue::accepted

    fn ProductionSampleQueue::accepted(self : ProductionSampleQueue) -> Int

    ProductionSampleQueue::capacity

    fn ProductionSampleQueue::capacity(self : ProductionSampleQueue) -> Int

    ProductionSampleQueue::clear

    ProductionSampleQueue::drain

    ProductionSampleQueue::dropped

    fn ProductionSampleQueue::dropped(self : ProductionSampleQueue) -> Int

    ProductionSampleQueue::length

    ProductionSampleQueue::new

    ProductionSampleQueue::peek

    ProductionSampleQueue::policy

    ProductionSampleQueue::pop

    ProductionSampleQueue::push

    ProductionSampleQueue::rejected

    fn ProductionSampleQueue::rejected(self : ProductionSampleQueue) -> Int

    ProductionScoreBin

    pub struct ProductionScoreBin {
    lower : Double
    upper : Double
    total : Double
    positives : Double
    prior_positive : Double
    prior_negative : Double
    }

    A bin of online score-to-outcome evidence.

    ProductionScoreBin::add

    fn ProductionScoreBin::add(self : ProductionScoreBin, positive : Bool, weight : Double) -> Unit

    ProductionScoreBin::contains

    fn ProductionScoreBin::contains(self : ProductionScoreBin, score : Double) -> Bool

    ProductionScoreBin::mean_score

    fn ProductionScoreBin::mean_score(self : ProductionScoreBin) -> Double

    ProductionScoreBin::new

    fn ProductionScoreBin::new(lower : Double, upper : Double, prior_positive? : Double, prior_negative? : Double) -> ProductionScoreBin

    ProductionScoreBin::positives

    fn ProductionScoreBin::positives(self : ProductionScoreBin) -> Double

    ProductionScoreBin::rate

    fn ProductionScoreBin::rate(self : ProductionScoreBin) -> Double

    ProductionScoreBin::summary

    fn ProductionScoreBin::summary(self : ProductionScoreBin) -> String

    ProductionScoreBin::total

    fn ProductionScoreBin::total(self : ProductionScoreBin) -> Double

    ProductionSeriesQuery

    pub struct ProductionSeriesQuery {
    metric : String
    window : ProductionQueryWindow
    function : ProductionWindowFunction
    minimum_quality : Double
    }

    ProductionSeriesQuery::execute

    ProductionSeriesQuery::function

    ProductionSeriesQuery::metric

    fn ProductionSeriesQuery::metric(self : ProductionSeriesQuery) -> String

    ProductionSeriesQuery::minimum_quality

    fn ProductionSeriesQuery::minimum_quality(self : ProductionSeriesQuery) -> Double

    ProductionSeriesQuery::new

    fn ProductionSeriesQuery::new(metric : String, window : ProductionQueryWindow, function? : ProductionWindowFunction, minimum_quality? : Double) -> ProductionSeriesQuery

    ProductionSeriesQuery::window

    ProductionServiceHeartbeat

    pub struct ProductionServiceHeartbeat {
    service : String
    timestamp : Int64
    status : ProductionServiceStatus
    monitor_count : Int
    fleet_score : Double
    processed : Int
    alerts : Int
    incidents : Int
    p95_latency : Double
    }

    Heartbeat record for a service exposing monitor health.

    ProductionServiceHeartbeat::alerts

    ProductionServiceHeartbeat::fleet_score

    fn ProductionServiceHeartbeat::fleet_score(self : ProductionServiceHeartbeat) -> Double

    ProductionServiceHeartbeat::incidents

    ProductionServiceHeartbeat::monitor_count

    ProductionServiceHeartbeat::new

    fn ProductionServiceHeartbeat::new(service : String, timestamp : Int64, snapshots : Array[ProductionMonitorSnapshot], incidents : Int, p95_latency? : Double) -> ProductionServiceHeartbeat

    ProductionServiceHeartbeat::p95_latency

    fn ProductionServiceHeartbeat::p95_latency(self : ProductionServiceHeartbeat) -> Double

    ProductionServiceHeartbeat::processed

    ProductionServiceHeartbeat::service

    ProductionServiceHeartbeat::status

    ProductionServiceHeartbeat::summary

    ProductionServiceHeartbeat::timestamp

    ProductionServiceRegistry

    pub struct ProductionServiceRegistry {
    service : String
    monitors : Array[ProductionMonitor]
    heartbeats : Int
    status : ProductionServiceStatus
    }

    A registry for coordinated monitor heartbeats.

    ProductionServiceRegistry::heartbeat

    fn ProductionServiceRegistry::heartbeat(self : ProductionServiceRegistry, timestamp : Int64, incidents : Int, p95_latency? : Double) -> ProductionServiceHeartbeat

    ProductionServiceRegistry::heartbeats

    ProductionServiceRegistry::monitor_count

    fn ProductionServiceRegistry::monitor_count(self : ProductionServiceRegistry) -> Int

    ProductionServiceRegistry::names

    ProductionServiceRegistry::new

    ProductionServiceRegistry::process

    ProductionServiceRegistry::process_all

    ProductionServiceRegistry::register

    ProductionServiceRegistry::snapshots

    ProductionServiceRegistry::status

    ProductionServiceStatus

    pub(all) enum ProductionServiceStatus {
    StartingService
    ReadyService
    DegradedService
    DrainingService
    FailedService
    }

    Lifecycle status of an embedding service.

    ProductionSloObjective

    pub struct ProductionSloObjective {
    name : String
    target : Double
    window : Int64
    burn_limit : Double
    kind : ProductionSloWindowKind
    }

    Objective for one service-level indicator.

    ProductionSloObjective::burn_limit

    fn ProductionSloObjective::burn_limit(self : ProductionSloObjective) -> Double

    ProductionSloObjective::error_budget

    fn ProductionSloObjective::error_budget(self : ProductionSloObjective) -> Double

    ProductionSloObjective::kind

    ProductionSloObjective::name

    ProductionSloObjective::new

    fn ProductionSloObjective::new(name : String, target? : Double, window? : Int64, burn_limit? : Double, kind? : ProductionSloWindowKind) -> ProductionSloObjective

    ProductionSloObjective::summary

    fn ProductionSloObjective::summary(self : ProductionSloObjective) -> String

    ProductionSloObjective::target

    fn ProductionSloObjective::target(self : ProductionSloObjective) -> Double

    ProductionSloObjective::window

    ProductionSloReport

    pub struct ProductionSloReport {
    objective : ProductionSloObjective
    total : Int
    good : Int
    bad : Int
    compliance : Double
    burn_rate : Double
    remaining_budget : Double
    breached : Bool
    }

    Current burn and compliance state for one SLO.

    ProductionSloReport::bad

    ProductionSloReport::breached

    fn ProductionSloReport::breached(self : ProductionSloReport) -> Bool

    ProductionSloReport::burn_rate

    fn ProductionSloReport::burn_rate(self : ProductionSloReport) -> Double

    ProductionSloReport::compliance

    fn ProductionSloReport::compliance(self : ProductionSloReport) -> Double

    ProductionSloReport::good

    ProductionSloReport::objective

    ProductionSloReport::remaining_budget

    fn ProductionSloReport::remaining_budget(self : ProductionSloReport) -> Double

    ProductionSloReport::summary

    fn ProductionSloReport::summary(self : ProductionSloReport) -> String

    ProductionSloReport::total

    fn ProductionSloReport::total(self : ProductionSloReport) -> Int

    ProductionSloTracker

    pub struct ProductionSloTracker {
    objective : ProductionSloObjective
    total : Int
    good : Int
    bad : Int
    window_start : Int64?
    }

    Mutable SLO tracker fed by accepted/rejected monitor outcomes.

    ProductionSloTracker::bad

    ProductionSloTracker::good

    ProductionSloTracker::new

    ProductionSloTracker::objective

    ProductionSloTracker::observe

    fn ProductionSloTracker::observe(self : ProductionSloTracker, timestamp : Int64, good : Bool) -> Unit

    ProductionSloTracker::observe_event

    fn ProductionSloTracker::observe_event(self : ProductionSloTracker, timestamp : Int64, event : ProductionMonitorEvent) -> Unit

    ProductionSloTracker::report

    ProductionSloTracker::reset

    fn ProductionSloTracker::reset(self : ProductionSloTracker) -> Unit

    ProductionSloTracker::total

    ProductionSloWindowKind

    pub(all) enum ProductionSloWindowKind {
    ShortSloWindow
    LongSloWindow
    RollingSloWindow
    }

    SLO window kind for operational change detection services.

    ProductionStackResult

    pub struct ProductionStackResult {
    result : DetectionResult
    votes : Array[ProductionDetectorVote]
    agreement : Double
    strongest : ProductionDetectorKind
    }

    Result of a weighted, explainable ensemble pass.

    ProductionStackResult::agreement

    fn ProductionStackResult::agreement(self : ProductionStackResult) -> Double

    ProductionStackResult::result

    ProductionStackResult::strongest

    ProductionStackResult::summary

    fn ProductionStackResult::summary(self : ProductionStackResult) -> String

    ProductionStackResult::votes

    ProductionStatTestKind

    pub(all) enum ProductionStatTestKind {
    MeanDifferenceTest
    MedianDifferenceTest
    PermutationShiftTest
    BootstrapIntervalTest
    CorrelationTest
    VarianceRatioTest
    }

    Statistical test kind used in an evidence report.

    ProductionStatTestResult

    pub struct ProductionStatTestResult {
    kind : ProductionStatTestKind
    statistic : Double
    p_value : Double
    effect : Double
    interval : ProductionConfidenceInterval
    significant : Bool
    }

    Test result with a bounded score and actionable interpretation.

    ProductionStatTestResult::effect

    ProductionStatTestResult::interval

    ProductionStatTestResult::kind

    ProductionStatTestResult::p_value

    ProductionStatTestResult::significant

    fn ProductionStatTestResult::significant(self : ProductionStatTestResult) -> Bool

    ProductionStatTestResult::statistic

    fn ProductionStatTestResult::statistic(self : ProductionStatTestResult) -> Double

    ProductionStatTestResult::summary

    ProductionStreamMetrics

    pub struct ProductionStreamMetrics {
    enqueued : Int
    processed : Int
    emitted : Int
    rejected : Int
    aggregates : Int
    flushes : Int
    last_timestamp : Int64
    }

    Counters emitted by an online stream processor.

    ProductionStreamMetrics::aggregates

    fn ProductionStreamMetrics::aggregates(self : ProductionStreamMetrics) -> Int

    ProductionStreamMetrics::emitted

    ProductionStreamMetrics::enqueued

    ProductionStreamMetrics::flushes

    ProductionStreamMetrics::last_timestamp

    fn ProductionStreamMetrics::last_timestamp(self : ProductionStreamMetrics) -> Int64

    ProductionStreamMetrics::new

    ProductionStreamMetrics::processed

    ProductionStreamMetrics::rejected

    ProductionStreamMetrics::summary

    fn ProductionStreamMetrics::summary(self : ProductionStreamMetrics) -> String

    ProductionStreamMetrics::throughput

    fn ProductionStreamMetrics::throughput(self : ProductionStreamMetrics, elapsed : Int64) -> Double

    ProductionStreamProcessor

    pub struct ProductionStreamProcessor {
    queue : ProductionSampleQueue
    bucketizer : ProductionBucketizer
    monitor : ProductionMonitor
    status : ProductionStreamStatus
    metrics : ProductionStreamMetrics
    started_at : Int64?
    }

    Backpressure-aware processor joining queue, event-time bucketization and monitor state.

    ProductionStreamProcessor::continue_processing

    fn ProductionStreamProcessor::continue_processing(self : ProductionStreamProcessor) -> Unit

    ProductionStreamProcessor::drain

    ProductionStreamProcessor::elapsed

    fn ProductionStreamProcessor::elapsed(self : ProductionStreamProcessor, now : Int64) -> Int64

    ProductionStreamProcessor::enqueue

    ProductionStreamProcessor::flush

    ProductionStreamProcessor::metrics

    ProductionStreamProcessor::monitor

    ProductionStreamProcessor::new

    fn ProductionStreamProcessor::new(monitor : ProductionMonitor, queue_capacity? : Int, queue_policy? : ProductionBackpressurePolicy, bucket_interval? : Int64) -> ProductionStreamProcessor

    ProductionStreamProcessor::pause

    ProductionStreamProcessor::queue_length

    ProductionStreamProcessor::restart

    fn ProductionStreamProcessor::restart(self : ProductionStreamProcessor, timestamp : Int64) -> Unit

    ProductionStreamProcessor::start

    fn ProductionStreamProcessor::start(self : ProductionStreamProcessor, timestamp : Int64) -> Unit

    ProductionStreamProcessor::status

    ProductionStreamStatus

    pub(all) enum ProductionStreamStatus {
    StartingStream
    RunningStream
    PausedStream
    DrainingStream
    StoppedStream
    }

    Runtime state of a stream processor.

    ProductionSuppressionSchedule

    pub struct ProductionSuppressionSchedule {
    windows : Array[ProductionMaintenanceWindow]
    suppressed : Int
    }

    A suppression schedule composed of non-overlapping maintenance windows.

    ProductionSuppressionSchedule::active

    ProductionSuppressionSchedule::add

    ProductionSuppressionSchedule::allow

    fn ProductionSuppressionSchedule::allow(self : ProductionSuppressionSchedule, timestamp : Int64) -> Bool

    ProductionSuppressionSchedule::new

    ProductionSuppressionSchedule::suppressed

    ProductionSuppressionSchedule::windows

    ProductionTelemetryCounters

    pub struct ProductionTelemetryCounters {
    samples_received : Int
    samples_rejected : Int
    samples_imputed : Int
    late_samples : Int
    detector_updates : Int
    alerts_emitted : Int
    alerts_suppressed : Int
    incidents_opened : Int
    incidents_resolved : Int
    report_exports : Int
    }

    Counter set for monitoring ingestion and alert delivery itself.

    ProductionTelemetryCounters::alerts_emitted

    ProductionTelemetryCounters::alerts_suppressed

    fn ProductionTelemetryCounters::alerts_suppressed(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::detector_updates

    fn ProductionTelemetryCounters::detector_updates(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::incidents_opened

    fn ProductionTelemetryCounters::incidents_opened(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::incidents_resolved

    fn ProductionTelemetryCounters::incidents_resolved(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::late_samples

    ProductionTelemetryCounters::new

    ProductionTelemetryCounters::observe_export

    fn ProductionTelemetryCounters::observe_export(self : ProductionTelemetryCounters) -> Unit

    ProductionTelemetryCounters::observe_incident

    fn ProductionTelemetryCounters::observe_incident(self : ProductionTelemetryCounters, opened : Bool, resolved : Bool) -> Unit

    ProductionTelemetryCounters::observe_result

    fn ProductionTelemetryCounters::observe_result(self : ProductionTelemetryCounters, result : DetectionResult, emitted : Bool) -> Unit

    ProductionTelemetryCounters::observe_sample

    fn ProductionTelemetryCounters::observe_sample(self : ProductionTelemetryCounters, sample : ProductionSample, accepted : Bool) -> Unit

    ProductionTelemetryCounters::report_exports

    ProductionTelemetryCounters::samples_imputed

    fn ProductionTelemetryCounters::samples_imputed(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::samples_received

    fn ProductionTelemetryCounters::samples_received(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::samples_rejected

    fn ProductionTelemetryCounters::samples_rejected(self : ProductionTelemetryCounters) -> Int

    ProductionTelemetryCounters::summary

    ProductionTelemetryExporter

    pub struct ProductionTelemetryExporter {
    options : ProductionExportOptions
    stats : ProductionExportStats
    }

    ProductionTelemetryExporter::export_batch

    ProductionTelemetryExporter::export_csv

    ProductionTelemetryExporter::export_json_lines

    fn ProductionTelemetryExporter::export_json_lines(self : ProductionTelemetryExporter, records : Array[ProductionExportRecord]) -> String

    ProductionTelemetryExporter::export_markdown

    ProductionTelemetryExporter::export_prometheus

    fn ProductionTelemetryExporter::export_prometheus(self : ProductionTelemetryExporter, records : Array[ProductionExportRecord]) -> String

    ProductionTelemetryExporter::export_summary

    ProductionTelemetryExporter::new

    ProductionTelemetryExporter::options

    ProductionTelemetryExporter::reset_stats

    ProductionTelemetryExporter::stats

    ProductionThresholdController

    pub struct ProductionThresholdController {
    scores : DoubleWindow
    target_alert_rate : Double
    minimum_threshold : Double
    maximum_threshold : Double
    hysteresis : Double
    threshold : Double
    updates : Int
    }

    Adaptive threshold controller based on a recent score window and hysteresis.

    ProductionThresholdController::new

    fn ProductionThresholdController::new(window_size? : Int, target_alert_rate? : Double, minimum_threshold? : Double, maximum_threshold? : Double, hysteresis? : Double) -> ProductionThresholdController

    ProductionThresholdController::push

    fn ProductionThresholdController::push(self : ProductionThresholdController, score : Double) -> Double

    ProductionThresholdController::reset

    ProductionThresholdController::summary

    ProductionThresholdController::threshold

    ProductionThresholdController::updates

    ProductionThresholdCost

    pub struct ProductionThresholdCost {
    false_positive : Double
    false_negative : Double
    alert_volume : Double
    }

    Cost weights used to select an operating threshold.

    ProductionThresholdCost::alert_volume

    fn ProductionThresholdCost::alert_volume(self : ProductionThresholdCost) -> Double

    ProductionThresholdCost::false_negative

    fn ProductionThresholdCost::false_negative(self : ProductionThresholdCost) -> Double

    ProductionThresholdCost::false_positive

    fn ProductionThresholdCost::false_positive(self : ProductionThresholdCost) -> Double

    ProductionThresholdCost::new

    fn ProductionThresholdCost::new(false_positive? : Double, false_negative? : Double, alert_volume? : Double) -> ProductionThresholdCost

    ProductionThresholdCost::score

    ProductionThresholdSelection

    pub struct ProductionThresholdSelection {
    threshold : Double
    matrix : ProductionConfusionMatrix
    objective : Double
    strategy : String
    }

    Result of threshold selection on labeled historical data.

    ProductionThresholdSelection::matrix

    ProductionThresholdSelection::objective

    ProductionThresholdSelection::strategy

    ProductionThresholdSelection::threshold

    ProductionTimeWindow

    pub struct ProductionTimeWindow {
    capacity : Int
    values : Array[ProductionSample]
    start_index : Int
    length : Int
    dropped : Int
    }

    A bounded time-ordered window with explicit retention accounting.

    ProductionTimeWindow::capacity

    fn ProductionTimeWindow::capacity(self : ProductionTimeWindow) -> Int

    ProductionTimeWindow::clear

    fn ProductionTimeWindow::clear(self : ProductionTimeWindow) -> Unit

    ProductionTimeWindow::dropped

    fn ProductionTimeWindow::dropped(self : ProductionTimeWindow) -> Int

    ProductionTimeWindow::first

    ProductionTimeWindow::get

    ProductionTimeWindow::is_empty

    fn ProductionTimeWindow::is_empty(self : ProductionTimeWindow) -> Bool

    ProductionTimeWindow::is_full

    fn ProductionTimeWindow::is_full(self : ProductionTimeWindow) -> Bool

    ProductionTimeWindow::last

    ProductionTimeWindow::length

    fn ProductionTimeWindow::length(self : ProductionTimeWindow) -> Int

    ProductionTimeWindow::new

    fn ProductionTimeWindow::new(capacity? : Int) -> ProductionTimeWindow

    ProductionTimeWindow::outlier_count

    fn ProductionTimeWindow::outlier_count(self : ProductionTimeWindow, z_limit? : Double) -> Int

    ProductionTimeWindow::push

    ProductionTimeWindow::rolling_change

    fn ProductionTimeWindow::rolling_change(self : ProductionTimeWindow, split : Int) -> Double

    ProductionTimeWindow::summary

    ProductionTimeWindow::timestamps

    fn ProductionTimeWindow::timestamps(self : ProductionTimeWindow) -> Array[Int64]

    ProductionTimeWindow::to_array

    ProductionTimeWindow::values

    fn ProductionTimeWindow::values(self : ProductionTimeWindow) -> Array[Double]

    ProductionTransformKind

    pub(all) enum ProductionTransformKind {
    IdentityTransform
    ClipTransform
    DifferenceTransform
    Log1pTransform
    SqrtTransform
    ZScoreTransform
    RobustZTransform
    DetrendTransform
    SmoothTransform
    WinsorizeTransform
    SeasonalRemoveTransform
    RateTransform
    }

    Transformation kinds available in the preprocessing chain.

    ProductionTransformSpec

    pub struct ProductionTransformSpec {
    kind : ProductionTransformKind
    parameter_a : Double
    parameter_b : Double
    integer_parameter : Int
    }

    One configured preprocessing operation.

    ProductionTransformSpec::integer_parameter

    fn ProductionTransformSpec::integer_parameter(self : ProductionTransformSpec) -> Int

    ProductionTransformSpec::kind

    ProductionTransformSpec::new

    fn ProductionTransformSpec::new(kind : ProductionTransformKind, parameter_a? : Double, parameter_b? : Double, integer_parameter? : Int) -> ProductionTransformSpec

    ProductionTransformSpec::parameter_a

    fn ProductionTransformSpec::parameter_a(self : ProductionTransformSpec) -> Double

    ProductionTransformSpec::parameter_b

    fn ProductionTransformSpec::parameter_b(self : ProductionTransformSpec) -> Double

    ProductionTransformSpec::summary

    fn ProductionTransformSpec::summary(self : ProductionTransformSpec) -> String

    ProductionWindowConfig

    pub struct ProductionWindowConfig {
    reorder_capacity : Int
    allowed_lateness : Int64
    aggregate_size : Int
    retention_points : Int
    maximum_gap : Int64?
    deduplicate_timestamps : Bool
    }

    Event-time and memory settings for an operational stream.

    ProductionWindowConfig::aggregate_size

    fn ProductionWindowConfig::aggregate_size(self : ProductionWindowConfig) -> Int

    ProductionWindowConfig::allowed_lateness

    fn ProductionWindowConfig::allowed_lateness(self : ProductionWindowConfig) -> Int64

    ProductionWindowConfig::deduplicate_timestamps

    fn ProductionWindowConfig::deduplicate_timestamps(self : ProductionWindowConfig) -> Bool

    ProductionWindowConfig::maximum_gap

    fn ProductionWindowConfig::maximum_gap(self : ProductionWindowConfig) -> Int64?

    ProductionWindowConfig::new

    fn ProductionWindowConfig::new(reorder_capacity? : Int, allowed_lateness? : Int64, aggregate_size? : Int, retention_points? : Int, maximum_gap? : Int64?, deduplicate_timestamps? : Bool) -> ProductionWindowConfig

    ProductionWindowConfig::reorder_capacity

    fn ProductionWindowConfig::reorder_capacity(self : ProductionWindowConfig) -> Int

    ProductionWindowConfig::retention_points

    fn ProductionWindowConfig::retention_points(self : ProductionWindowConfig) -> Int

    ProductionWindowFunction

    pub(all) enum ProductionWindowFunction {
    QueryMean
    QuerySum
    QueryMinimum
    QueryMaximum
    QueryMedian
    QueryP95
    QueryCount
    QueryRate
    QueryChange
    }

    Aggregation function for a production query window.

    ProductionWindowSummary

    pub struct ProductionWindowSummary {
    start_timestamp : Int64
    end_timestamp : Int64
    count : Int
    valid_count : Int
    imputed_count : Int
    late_count : Int
    sum : Double
    mean : Double
    variance : Double
    minimum : Double
    maximum : Double
    median : Double
    first : Double
    last : Double
    }

    Aggregation statistics for a bounded event-time window.

    ProductionWindowSummary::count

    ProductionWindowSummary::empty

    ProductionWindowSummary::end

    ProductionWindowSummary::first

    ProductionWindowSummary::has_imputation

    fn ProductionWindowSummary::has_imputation(self : ProductionWindowSummary) -> Bool

    ProductionWindowSummary::imputed_count

    fn ProductionWindowSummary::imputed_count(self : ProductionWindowSummary) -> Int

    ProductionWindowSummary::last

    ProductionWindowSummary::late_count

    fn ProductionWindowSummary::late_count(self : ProductionWindowSummary) -> Int

    ProductionWindowSummary::maximum

    fn ProductionWindowSummary::maximum(self : ProductionWindowSummary) -> Double

    ProductionWindowSummary::mean

    ProductionWindowSummary::median

    ProductionWindowSummary::minimum

    fn ProductionWindowSummary::minimum(self : ProductionWindowSummary) -> Double

    ProductionWindowSummary::quality_ratio

    fn ProductionWindowSummary::quality_ratio(self : ProductionWindowSummary) -> Double

    ProductionWindowSummary::range

    ProductionWindowSummary::slope

    ProductionWindowSummary::start

    ProductionWindowSummary::sum

    ProductionWindowSummary::valid_count

    fn ProductionWindowSummary::valid_count(self : ProductionWindowSummary) -> Int

    ProductionWindowSummary::variance

    fn ProductionWindowSummary::variance(self : ProductionWindowSummary) -> Double

    ProjectionDetector

    pub struct ProjectionDetector {
    weights : Array[Double]
    baseline : Double
    variance : Double
    alpha : Double
    threshold : Double
    count : Int
    index : Int
    }

    Tracks a weighted projection of a vector and detects changes in both projection and energy.

    ProjectionDetector::dimension

    fn ProjectionDetector::dimension(self : ProjectionDetector) -> Int

    ProjectionDetector::new

    fn ProjectionDetector::new(weights : Array[Double], alpha? : Double, threshold? : Double) -> ProjectionDetector

    ProjectionDetector::update

    fn ProjectionDetector::update(self : ProjectionDetector, values : Array[Double]) -> DetectionResult

    QualityIssue

    pub(all) enum QualityIssue {
    MissingValue
    NonFiniteValue
    OutOfRange
    NonMonotonicTimestamp
    ExcessiveGap
    DimensionMismatch
    }

    QualityReport

    pub struct QualityReport {
    count : Int
    valid : Int
    missing : Int
    non_finite : Int
    out_of_range : Int
    non_monotonic : Int
    excessive_gaps : Int
    issues : Array[QualityIssue]
    }

    QualityReport::empty

    QualityReport::is_healthy

    fn QualityReport::is_healthy(self : QualityReport) -> Bool

    QualityReport::valid_ratio

    fn QualityReport::valid_ratio(self : QualityReport) -> Double

    RankShiftDetector

    pub struct RankShiftDetector {
    left : DoubleWindow
    right : DoubleWindow
    threshold : Double
    index : Int
    }

    RankShiftDetector::new

    fn RankShiftDetector::new(window_size? : Int, threshold? : Double) -> RankShiftDetector

    RankShiftDetector::update

    fn RankShiftDetector::update(self : RankShiftDetector, value : Double) -> DetectionResult

    RecoveryAction

    pub(all) enum RecoveryAction {
    KeepOpen
    AutoResolve
    RequireAcknowledgement
    Escalate
    }

    Action taken after a detector has reached a stable state.

    RecoveryPlan

    pub struct RecoveryPlan {
    severity : AlertSeverity
    immediate_action : String
    verification_window : Int
    cooldown : Int
    escalation_score : Double
    }

    Recovery guidance and cooldown state for alert consumers.

    RecoveryPlan::for_result

    fn RecoveryPlan::for_result(result : DetectionResult) -> RecoveryPlan

    RecoveryTracker

    pub struct RecoveryTracker {
    plan : RecoveryPlan
    attempts : Int
    acknowledged : Bool
    recovered : Bool
    }

    RecoveryTracker::acknowledge

    fn RecoveryTracker::acknowledge(self : RecoveryTracker) -> Unit

    RecoveryTracker::attempt

    fn RecoveryTracker::attempt(self : RecoveryTracker) -> Int

    RecoveryTracker::attempts

    fn RecoveryTracker::attempts(self : RecoveryTracker) -> Int

    RecoveryTracker::is_closed

    fn RecoveryTracker::is_closed(self : RecoveryTracker) -> Bool

    RecoveryTracker::mark_recovered

    fn RecoveryTracker::mark_recovered(self : RecoveryTracker) -> Unit

    RecoveryTracker::new

    ReorderBuffer

    pub struct ReorderBuffer {
    capacity : Int
    policy : LateDataPolicy
    pending : Array[OrderedPoint]
    watermark : Int64
    arrival_order : Int
    dropped : Int
    late_count : Int
    }

    A small bounded reorder buffer for streams with late data.

    ReorderBuffer::dropped_count

    fn ReorderBuffer::dropped_count(self : ReorderBuffer) -> Int

    ReorderBuffer::flush

    Flushes every pending item at the end of a stream.

    ReorderBuffer::late_count

    fn ReorderBuffer::late_count(self : ReorderBuffer) -> Int

    ReorderBuffer::new

    fn ReorderBuffer::new(capacity? : Int, policy? : LateDataPolicy) -> ReorderBuffer

    ReorderBuffer::peek

    Returns a copy of the buffered points without changing the buffer.

    ReorderBuffer::pending_count

    fn ReorderBuffer::pending_count(self : ReorderBuffer) -> Int

    ReorderBuffer::push

    Inserts a point. Returned points are safe to process in timestamp order.

    ReorderBuffer::watermark

    fn ReorderBuffer::watermark(self : ReorderBuffer) -> Int64

    ReplayComparator

    pub struct ReplayComparator {
    score_tolerance : Double
    confidence_tolerance : Double
    compared : Int
    mismatches : Int
    }

    ReplayComparator::compare

    fn ReplayComparator::compare(self : ReplayComparator, expected : DetectionResult, actual : DetectionResult) -> Bool

    ReplayComparator::compared

    fn ReplayComparator::compared(self : ReplayComparator) -> Int

    ReplayComparator::mismatches

    fn ReplayComparator::mismatches(self : ReplayComparator) -> Int

    ReplayComparator::new

    fn ReplayComparator::new(score_tolerance? : Double, confidence_tolerance? : Double) -> ReplayComparator

    ReplayRecord

    pub struct ReplayRecord {
    point : SignalPoint
    result : DetectionResult
    elapsed : Int64
    }

    Deterministic replay utilities for incident investigation and regression tests.

    ReplayRecord::new

    fn ReplayRecord::new(point : SignalPoint, result : DetectionResult, elapsed : Int64) -> ReplayRecord

    ReplaySummary

    pub struct ReplaySummary {
    total : Int
    changed : Int
    first_change : Int
    last_change : Int
    mean_score : Double
    max_score : Double
    elapsed : Int64
    }

    ReplaySummary::empty

    ReservoirSample

    pub struct ReservoirSample {
    capacity : Int
    values : Array[Double]
    seen : Int
    rng : DeterministicRng
    }

    ReservoirSample::new

    fn ReservoirSample::new(capacity : Int, seed? : Int64) -> ReservoirSample

    ReservoirSample::push

    fn ReservoirSample::push(self : ReservoirSample, value : Double) -> Unit

    ReservoirSample::seen

    fn ReservoirSample::seen(self : ReservoirSample) -> Int

    ReservoirSample::values

    fn ReservoirSample::values(self : ReservoirSample) -> Array[Double]

    RobustZDetector

    pub struct RobustZDetector {
    window : DoubleWindow
    threshold : Double
    warmup : Int
    index : Int
    }

    A robust detector based on the rolling median and MAD.

    RobustZDetector::new

    fn RobustZDetector::new(window_size? : Int, threshold? : Double) -> RobustZDetector

    RobustZDetector::reset

    fn RobustZDetector::reset(self : RobustZDetector) -> Unit

    RobustZDetector::update

    fn RobustZDetector::update(self : RobustZDetector, value : Double) -> DetectionResult

    RoutingBudget

    pub struct RoutingBudget {
    capacity : Int
    used : Int
    }

    RoutingBudget::allow

    fn RoutingBudget::allow(self : RoutingBudget, decision : RoutingDecision) -> Bool

    RoutingBudget::new

    fn RoutingBudget::new(capacity? : Int) -> RoutingBudget

    RoutingBudget::remaining

    fn RoutingBudget::remaining(self : RoutingBudget) -> Int

    RoutingBudget::used

    fn RoutingBudget::used(self : RoutingBudget) -> Int

    RoutingDecision

    pub struct RoutingDecision {
    metric : String
    channel : String
    priority : Int
    acknowledged : Bool
    reason : String
    }

    Converts alert severity into deterministic notification channels.

    RoutingDecision::acknowledge

    fn RoutingDecision::acknowledge(self : RoutingDecision) -> Unit

    RoutingDecision::is_page

    fn RoutingDecision::is_page(self : RoutingDecision) -> Bool

    RoutingDecision::new

    fn RoutingDecision::new(metric : String, channel : String, priority : Int, reason : String) -> RoutingDecision

    RoutingDecision::summary

    fn RoutingDecision::summary(self : RoutingDecision) -> String

    ScaleEvidence

    pub struct ScaleEvidence {
    short_score : Double
    medium_score : Double
    long_score : Double
    consensus : Double
    changed : Bool
    }

    Evidence at multiple temporal scales.

    ScaleEvidence::empty

    ScoreCalibrator

    pub struct ScoreCalibrator {
    observations : Array[ScoreObservation]
    max_observations : Int
    positive_weight : Double
    negative_weight : Double
    }

    ScoreCalibrator::best

    fn ScoreCalibrator::best(self : ScoreCalibrator, candidates : Array[Double]) -> ThresholdReport

    ScoreCalibrator::count

    fn ScoreCalibrator::count(self : ScoreCalibrator) -> Int

    ScoreCalibrator::negative_weight

    fn ScoreCalibrator::negative_weight(self : ScoreCalibrator) -> Double

    ScoreCalibrator::new

    fn ScoreCalibrator::new(max_observations? : Int) -> ScoreCalibrator

    ScoreCalibrator::positive_weight

    fn ScoreCalibrator::positive_weight(self : ScoreCalibrator) -> Double

    ScoreCalibrator::push

    fn ScoreCalibrator::push(self : ScoreCalibrator, score : Double, changed : Bool, weight? : Double) -> Unit

    ScoreCalibrator::report

    fn ScoreCalibrator::report(self : ScoreCalibrator, threshold : Double) -> ThresholdReport

    ScoreObservation

    pub struct ScoreObservation {
    score : Double
    changed : Bool
    weight : Double
    }

    Stores labeled detector scores for threshold selection.

    ScoreObservation::new

    fn ScoreObservation::new(score : Double, changed : Bool, weight? : Double) -> ScoreObservation

    SeasonalAnomalyDetector

    pub struct SeasonalAnomalyDetector {
    profile : SeasonalProfile
    threshold : Double
    index : Int
    }

    SeasonalAnomalyDetector::new

    fn SeasonalAnomalyDetector::new(period : Int, threshold? : Double, alpha? : Double) -> SeasonalAnomalyDetector

    SeasonalAnomalyDetector::update

    SeasonalProfile

    pub struct SeasonalProfile {
    period : Int
    levels : Array[Double]
    counts : Array[Int]
    alpha : Double
    index : Int
    }

    A lightweight seasonal profile updated online with exponential forgetting.

    SeasonalProfile::baseline

    fn SeasonalProfile::baseline(self : SeasonalProfile, index : Int) -> Double

    SeasonalProfile::count

    fn SeasonalProfile::count(self : SeasonalProfile, index : Int) -> Int

    SeasonalProfile::levels

    fn SeasonalProfile::levels(self : SeasonalProfile) -> Array[Double]

    SeasonalProfile::new

    fn SeasonalProfile::new(period : Int, alpha? : Double) -> SeasonalProfile

    SeasonalProfile::period

    fn SeasonalProfile::period(self : SeasonalProfile) -> Int

    SeasonalProfile::update

    fn SeasonalProfile::update(self : SeasonalProfile, value : Double) -> Double

    SegmentQuality

    pub struct SegmentQuality {
    count : Int
    mean : Double
    deviation : Double
    stability : Double
    completeness : Double
    score : Double
    }

    Segment-level diagnostics used to decide whether a change is actionable.

    SegmentQuality::empty

    SegmentRange

    pub struct SegmentRange {
    start : Int
    end : Int
    }

    A half-open segment used by dynamic programming and binary segmentation.

    SegmentRange::length

    fn SegmentRange::length(self : SegmentRange) -> Int

    SegmentRange::new

    fn SegmentRange::new(start : Int, end : Int) -> SegmentRange

    SignalPattern

    pub(all) enum SignalPattern {
    Stable
    MeanShift
    VarianceShift
    Trend
    Spike
    MeanAndVarianceShift
    }

    SignalPoint

    pub struct SignalPoint {
    timestamp : Int64
    value : Double
    sequence : Int
    }

    A point in a time series. Timestamps are integer ticks supplied by the caller.

    SignalPoint::new

    fn SignalPoint::new(timestamp : Int64, value : Double, sequence? : Int) -> SignalPoint

    Creates a signal point.

    SignalScenario

    pub struct SignalScenario {
    name : String
    length : Int
    change_at : Int
    baseline : Double
    shift : Double
    noise : Double
    post_noise : Double
    trend : Double
    pattern : SignalPattern
    seed : Int64
    }

    A scenario definition shared by tests, examples, and benchmarks.

    SignalScenario::mean_and_variance

    fn SignalScenario::mean_and_variance(length? : Int, change_at? : Int, baseline? : Double, shift? : Double, noise? : Double, post_noise? : Double, seed? : Int64) -> SignalScenario

    SignalScenario::mean_shift

    fn SignalScenario::mean_shift(length? : Int, change_at? : Int, baseline? : Double, shift? : Double, noise? : Double, seed? : Int64) -> SignalScenario

    SignalScenario::spike

    fn SignalScenario::spike(length? : Int, spike_at? : Int, baseline? : Double, spike? : Double, noise? : Double, seed? : Int64) -> SignalScenario

    SignalScenario::stable

    fn SignalScenario::stable(length? : Int, baseline? : Double, noise? : Double, seed? : Int64) -> SignalScenario

    SignalScenario::trend

    fn SignalScenario::trend(length? : Int, change_at? : Int, baseline? : Double, trend? : Double, noise? : Double, seed? : Int64) -> SignalScenario

    SignalScenario::variance_shift

    fn SignalScenario::variance_shift(length? : Int, change_at? : Int, baseline? : Double, noise? : Double, post_noise? : Double, seed? : Int64) -> SignalScenario

    SloReport

    pub struct SloReport {
    window : SloWindow
    target : Double
    budget : Double
    burn : Double
    breached : Bool
    recommendation : String
    }

    SloReport::availability

    fn SloReport::availability(self : SloReport) -> Double

    SloReport::breached

    fn SloReport::breached(self : SloReport) -> Bool

    SloReport::budget

    fn SloReport::budget(self : SloReport) -> Double

    SloReport::burn

    fn SloReport::burn(self : SloReport) -> Double

    SloReport::summary

    fn SloReport::summary(self : SloReport) -> String

    SloTracker

    pub struct SloTracker {
    window : SloWindow
    target : Double
    burn_limit : Double
    periods : Int
    }

    SloTracker::close_period

    fn SloTracker::close_period(self : SloTracker) -> SloReport

    SloTracker::new

    fn SloTracker::new(target? : Double, burn_limit? : Double) -> SloTracker

    SloTracker::observe

    fn SloTracker::observe(self : SloTracker, result : DetectionResult) -> Unit

    SloTracker::periods

    fn SloTracker::periods(self : SloTracker) -> Int

    SloTracker::window

    fn SloTracker::window(self : SloTracker) -> SloWindow

    SloWindow

    pub struct SloWindow {
    total : Int
    bad : Int
    changed : Int
    severe : Int
    }

    Service-level indicators derived from change-point evidence.

    SloWindow::availability

    fn SloWindow::availability(self : SloWindow) -> Double

    SloWindow::bad

    fn SloWindow::bad(self : SloWindow) -> Int

    SloWindow::change_rate

    fn SloWindow::change_rate(self : SloWindow) -> Double

    SloWindow::changed

    fn SloWindow::changed(self : SloWindow) -> Int

    SloWindow::new

    fn SloWindow::new() -> SloWindow

    SloWindow::observe

    fn SloWindow::observe(self : SloWindow, result : DetectionResult) -> Unit

    SloWindow::severe

    fn SloWindow::severe(self : SloWindow) -> Int

    SloWindow::total

    fn SloWindow::total(self : SloWindow) -> Int

    SquareMatrix

    pub struct SquareMatrix {
    size : Int
    data : Array[Double]
    }

    Small dense matrix type used for low-dimensional covariance diagnostics.

    SquareMatrix::add

    SquareMatrix::determinant

    fn SquareMatrix::determinant(self : SquareMatrix) -> Double

    SquareMatrix::diagonal

    fn SquareMatrix::diagonal(self : SquareMatrix) -> Array[Double]

    SquareMatrix::get

    fn SquareMatrix::get(self : SquareMatrix, row : Int, column : Int) -> Double

    SquareMatrix::identity

    fn SquareMatrix::identity(size : Int) -> SquareMatrix

    SquareMatrix::multiply

    fn SquareMatrix::multiply(self : SquareMatrix, other : SquareMatrix) -> SquareMatrix

    SquareMatrix::new

    fn SquareMatrix::new(size : Int, fill? : Double) -> SquareMatrix

    SquareMatrix::quadratic_form

    fn SquareMatrix::quadratic_form(self : SquareMatrix, vector : Array[Double]) -> Double

    SquareMatrix::regularize

    fn SquareMatrix::regularize(self : SquareMatrix, diagonal : Double) -> Unit

    SquareMatrix::scale

    fn SquareMatrix::scale(self : SquareMatrix, factor : Double) -> SquareMatrix

    SquareMatrix::set

    fn SquareMatrix::set(self : SquareMatrix, row : Int, column : Int, value : Double) -> Unit

    SquareMatrix::size

    fn SquareMatrix::size(self : SquareMatrix) -> Int

    SquareMatrix::transpose

    fn SquareMatrix::transpose(self : SquareMatrix) -> SquareMatrix

    StatsSummary

    pub struct StatsSummary {
    count : Int
    mean : Double
    variance : Double
    standard_deviation : Double
    minimum : Double
    maximum : Double
    median : Double
    first : Double
    last : Double
    }

    A compact summary of a numeric sample.

    StatsSummary::empty

    fn StatsSummary::empty() -> StatsSummary

    Creates an empty summary.

    StepChangeDetector

    pub struct StepChangeDetector {
    reference : DoubleWindow
    current : DoubleWindow
    threshold : Double
    index : Int
    }

    Detects a persistent step change by comparing a reference and a current block.

    StepChangeDetector::new

    fn StepChangeDetector::new(window_size? : Int, threshold? : Double) -> StepChangeDetector

    StepChangeDetector::update

    fn StepChangeDetector::update(self : StepChangeDetector, value : Double) -> DetectionResult

    StreamEngine

    pub struct StreamEngine {
    reorder : ReorderBuffer
    tracker : WatermarkTracker
    aggregator : WindowAggregator
    pipeline : MetricPipeline
    processed : Int
    aggregates : Int
    alerts : Int
    }

    End-to-end stream state: reorder, aggregate, and detect.

    StreamEngine::aggregate_count

    fn StreamEngine::aggregate_count(self : StreamEngine) -> Int

    StreamEngine::alert_count

    fn StreamEngine::alert_count(self : StreamEngine) -> Int

    StreamEngine::flush

    StreamEngine::new

    fn StreamEngine::new(metric : String, detector : PipelineDetector, window_size? : Int, lateness? : Int) -> StreamEngine

    StreamEngine::process_point

    fn StreamEngine::process_point(self : StreamEngine, point : SignalPoint) -> Array[AlertEvent]

    StreamEngine::processed

    fn StreamEngine::processed(self : StreamEngine) -> Int

    ThresholdPoint

    pub struct ThresholdPoint {
    index : Int
    threshold : Double
    score : Double
    accepted : Bool
    }

    Threshold schedules used when a service changes its noise profile over time.

    ThresholdPoint::new

    fn ThresholdPoint::new(index : Int, score : Double, threshold : Double) -> ThresholdPoint

    ThresholdReport

    pub struct ThresholdReport {
    threshold : Double
    true_positives : Int
    false_positives : Int
    true_negatives : Int
    false_negatives : Int
    precision : Double
    recall : Double
    f1 : Double
    expected_cost : Double
    }

    ThresholdReport::empty

    fn ThresholdReport::empty(threshold : Double) -> ThresholdReport

    TimeWindow

    pub struct TimeWindow {
    start : Int64
    end : Int64
    ordinal : Int
    }

    Time-window planning utilities for batch and streaming consumers.

    TimeWindow::contains

    fn TimeWindow::contains(self : TimeWindow, timestamp : Int64) -> Bool

    TimeWindow::duration

    fn TimeWindow::duration(self : TimeWindow) -> Int64

    TimeWindow::is_empty

    fn TimeWindow::is_empty(self : TimeWindow) -> Bool

    TimeWindow::new

    fn TimeWindow::new(start : Int64, end : Int64, ordinal : Int) -> TimeWindow

    TrendShiftDetector

    pub struct TrendShiftDetector {
    window : DoubleWindow
    slope_threshold : Double
    persistence : Int
    consecutive : Int
    index : Int
    }

    Detects a sustained slope rather than a one-point spike.

    TrendShiftDetector::new

    fn TrendShiftDetector::new(window_size? : Int, slope_threshold? : Double, persistence? : Int) -> TrendShiftDetector

    TrendShiftDetector::reset

    fn TrendShiftDetector::reset(self : TrendShiftDetector) -> Unit

    TrendShiftDetector::update

    fn TrendShiftDetector::update(self : TrendShiftDetector, value : Double) -> DetectionResult

    VarianceShiftDetector

    pub struct VarianceShiftDetector {
    short_window : DoubleWindow
    long_window : DoubleWindow
    threshold : Double
    warmup : Int
    index : Int
    }

    Detects variance changes by comparing short and long rolling windows.

    VarianceShiftDetector::new

    fn VarianceShiftDetector::new(short_window? : Int, long_window? : Int, threshold? : Double) -> VarianceShiftDetector

    VarianceShiftDetector::reset

    VarianceShiftDetector::update

    fn VarianceShiftDetector::update(self : VarianceShiftDetector, value : Double) -> DetectionResult

    VectorPoint

    pub struct VectorPoint {
    timestamp : Int64
    values : Array[Double]
    sequence : Int
    }

    A validated vector observation for multivariate streams.

    VectorPoint::dimension

    fn VectorPoint::dimension(self : VectorPoint) -> Int

    VectorPoint::is_valid

    fn VectorPoint::is_valid(self : VectorPoint) -> Bool

    VectorPoint::new

    fn VectorPoint::new(timestamp : Int64, values : Array[Double], sequence? : Int) -> VectorPoint

    VoteRule

    pub struct VoteRule {
    required : Int
    window : Array[Bool]
    size : Int
    }

    VoteRule::new

    fn VoteRule::new(size? : Int, required? : Int) -> VoteRule

    VoteRule::push

    fn VoteRule::push(self : VoteRule, positive : Bool) -> Bool

    VoteRule::votes

    fn VoteRule::votes(self : VoteRule) -> Int

    WatermarkTracker

    pub struct WatermarkTracker {
    allowed_lateness : Int64
    maximum_seen : Int64
    accepted : Int
    dropped : Int
    }

    WatermarkTracker::accepted

    fn WatermarkTracker::accepted(self : WatermarkTracker) -> Int

    WatermarkTracker::dropped

    fn WatermarkTracker::dropped(self : WatermarkTracker) -> Int

    WatermarkTracker::new

    fn WatermarkTracker::new(allowed_lateness? : Int64) -> WatermarkTracker

    WatermarkTracker::observe

    fn WatermarkTracker::observe(self : WatermarkTracker, timestamp : Int64) -> Bool

    WatermarkTracker::watermark

    fn WatermarkTracker::watermark(self : WatermarkTracker) -> Int64

    WindowAggregate

    pub struct WindowAggregate {
    start_timestamp : Int64
    end_timestamp : Int64
    count : Int
    value : Double
    summary : StatsSummary
    }

    WindowAggregator

    pub struct WindowAggregator {
    size : Int
    kind : AggregationKind
    window : DoubleWindow
    start_timestamp : Int64
    end_timestamp : Int64
    count : Int
    }

    WindowAggregator::flush

    WindowAggregator::new

    fn WindowAggregator::new(size : Int, kind? : AggregationKind) -> WindowAggregator

    WindowAggregator::push

    WindowDiagnostic

    pub struct WindowDiagnostic {
    before : StatsSummary
    after : StatsSummary
    mean_shift : Double
    variance_ratio : Double
    distribution_shift : Double
    severity : AlertSeverity
    actionable : Bool
    }

    Diagnostic comparison between two adjacent windows.

    WindowDiagnostic::empty

    WindowFeatures

    pub struct WindowFeatures {
    count : Int
    mean : Double
    standard_deviation : Double
    median : Double
    mad : Double
    minimum : Double
    maximum : Double
    range : Double
    slope : Double
    autocorrelation : Double
    change_rate : Double
    }

    Features extracted from a bounded window for dashboards and model input.

    WindowFeatures::empty

    absolute

    fn absolute(value : Double) -> Double

    Returns the absolute value without exposing math implementation details.

    absolute_change

    fn absolute_change(baseline : Double, observed : Double) -> Double

    actionable_diagnostics

    fn actionable_diagnostics(diagnostics : Array[WindowDiagnostic]) -> Int

    adaptive_threshold

    fn adaptive_threshold(scores : Array[Double], false_positive_rate? : Double) -> Double

    alerts_markdown

    fn alerts_markdown(alerts : Array[AlertEvent]) -> String

    align_by_timestamp

    fn align_by_timestamp(left : Array[SignalPoint], right : Array[SignalPoint]) -> (Array[Double], Array[Double])

    array_maximum

    fn array_maximum(values : Array[Double]) -> Double

    array_minimum

    fn array_minimum(values : Array[Double]) -> Double

    autocorrelation

    fn autocorrelation(values : Array[Double], lag : Int) -> Double

    average_pairwise_correlation

    fn average_pairwise_correlation(series : Array[Array[Double]]) -> Double

    baseline_strategy_name

    fn baseline_strategy_name(strategy : ProductionBaselineStrategy) -> String

    benchmark_cusum

    fn benchmark_cusum(scenario : SignalScenario, rounds? : Int) -> BenchmarkResult

    benchmark_ensemble

    fn benchmark_ensemble(scenario : SignalScenario, rounds? : Int) -> BenchmarkResult

    benchmark_markdown

    fn benchmark_markdown(results : Array[BenchmarkResult]) -> String

    benchmark_robust_z

    fn benchmark_robust_z(scenario : SignalScenario, rounds? : Int) -> BenchmarkResult

    benchmark_suite

    fn benchmark_suite(rounds? : Int) -> Array[BenchmarkResult]

    Runs the deterministic benchmark suite on a fixed synthetic scenario.

    best_boundary

    fn best_boundary(values : Array[Double], minimum_segment? : Int) -> Int

    best_f1_threshold

    fn best_f1_threshold(scores : Array[Double], labels : Array[Bool], candidates : Array[Double]) -> ThresholdPoint

    best_lag

    fn best_lag(left : Array[Double], right : Array[Double], maximum_lag : Int) -> Int

    best_threshold

    fn best_threshold(observations : Array[ScoreObservation], candidates : Array[Double], false_positive_cost? : Double, false_negative_cost? : Double) -> ThresholdReport

    binary_segmentation

    fn binary_segmentation(values : Array[Double], threshold? : Double, min_segment? : Int, max_changes? : Int) -> Array[OfflineChange]

    Greedy binary segmentation for a small number of interpretable changes.

    bootstrap_change_score

    fn bootstrap_change_score(left : Array[Double], right : Array[Double], replicates? : Int, seed? : Int64) -> BootstrapEstimate

    bootstrap_mean

    fn bootstrap_mean(values : Array[Double], replicates? : Int, seed? : Int64) -> BootstrapEstimate

    boundary_quality

    fn boundary_quality(values : Array[Double], boundary : Int, minimum_segment? : Int) -> Double

    bucket_timestamp

    fn bucket_timestamp(timestamp : Int64, origin : Int64, width : Int64) -> Int64

    burn_rate

    fn burn_rate(window : SloWindow, target : Double) -> Double

    calibration_bins

    fn calibration_bins(observations : Array[ScoreObservation], bins? : Int) -> Array[Double]

    catalog_markdown

    fn catalog_markdown() -> String

    change_direction_from_values

    fn change_direction_from_values(baseline : Double, observed : Double) -> ChangeDirection

    change_point_csv

    fn change_point_csv(point : ChangePoint) -> String

    change_point_csv_header

    fn change_point_csv_header() -> String

    changes_csv

    fn changes_csv(points : Array[ChangePoint]) -> String

    clamp_probability

    fn clamp_probability(value : Double) -> Double

    Clamps a probability-like number to the closed unit interval.

    clip

    fn clip(values : Array[Double], lower : Double, upper : Double) -> Array[Double]

    clip_values

    fn clip_values(values : Array[Double], minimum : Double, maximum : Double) -> Array[Double]

    cluster_incidents

    fn cluster_incidents(events : Array[AlertEvent], maximum_gap : Int64) -> Array[Incident]

    combine_scores

    fn combine_scores(scores : Array[Double], weights : Array[Double]) -> Double

    compare_segment_quality

    fn compare_segment_quality(left : Array[Double], right : Array[Double]) -> Double

    consensus_score

    fn consensus_score(results : Array[DetectionResult]) -> Double

    contiguous_ranges

    fn contiguous_ranges(points : Array[SignalPoint], maximum_gap : Int64) -> Array[SegmentRange]

    cooldown_schedule

    fn cooldown_schedule(plan : RecoveryPlan, attempts : Int) -> Array[Int]

    correlated_change_score

    fn correlated_change_score(before : Array[Array[Double]], after : Array[Array[Double]]) -> Double

    correlation

    fn correlation(left : Array[Double], right : Array[Double]) -> Double

    correlation_alert

    fn correlation_alert(before : Array[Array[Double]], after : Array[Array[Double]], threshold? : Double) -> DetectionResult

    correlation_matrix

    fn correlation_matrix(series : Array[Array[Double]]) -> SquareMatrix

    cosine_similarity

    fn cosine_similarity(left : Array[Double], right : Array[Double]) -> Double

    covariance

    fn covariance(left : Array[Double], right : Array[Double]) -> Double

    covariance_matrix

    fn covariance_matrix(series : Array[Array[Double]]) -> SquareMatrix

    critical_incident_count

    fn critical_incident_count(incidents : Array[Incident]) -> Int

    cumulative_sum

    fn cumulative_sum(values : Array[Double], initial? : Double) -> Array[Double]

    cumulative_total

    fn cumulative_total(values : Array[Double]) -> Array[Double]

    deduplicate_events

    fn deduplicate_events(events : Array[AlertEvent], minimum_gap : Int64) -> Array[AlertEvent]

    deseasonalize

    fn deseasonalize(values : Array[Double], period : Int) -> Array[Double]

    detection_csv

    fn detection_csv(result : DetectionResult) -> String

    Converts a detection result to a stable CSV row.

    detection_csv_header

    fn detection_csv_header() -> String

    detector_catalog

    fn detector_catalog() -> Array[DetectorSpec]

    detector_names

    fn detector_names() -> Array[String]

    detector_reliability

    fn detector_reliability(results : Array[DetectionResult]) -> Double

    diagnose_series

    fn diagnose_series(values : Array[Double], split : Int, minimum_segment? : Int) -> WindowDiagnostic

    diagnose_windows

    fn diagnose_windows(before_values : Array[Double], after_values : Array[Double], shift_threshold? : Double, distribution_threshold? : Double) -> WindowDiagnostic

    diagnostic_direction

    fn diagnostic_direction(diagnostic : WindowDiagnostic) -> ChangeDirection

    diagnostic_label

    fn diagnostic_label(diagnostic : WindowDiagnostic) -> String

    diagnostic_markdown

    fn diagnostic_markdown(diagnostic : WindowDiagnostic) -> String

    diagnostic_score

    fn diagnostic_score(diagnostic : WindowDiagnostic) -> Double

    diagnostics_batch

    fn diagnostics_batch(values : Array[Double], splits : Array[Int]) -> Array[WindowDiagnostic]

    diagonal_mahalanobis

    fn diagonal_mahalanobis(vector : Array[Double], means : Array[Double], variances : Array[Double]) -> Double

    difference

    fn difference(values : Array[Double], lag? : Int) -> Array[Double]

    direction_name

    fn direction_name(direction : ChangeDirection) -> String

    Returns a human-readable direction label.

    distribution_change_score

    fn distribution_change_score(left : Array[Double], right : Array[Double]) -> Double

    distribution_overlap

    fn distribution_overlap(left : Array[Double], right : Array[Double], bins? : Int) -> Double

    downsample_mean

    fn downsample_mean(values : Array[Double], factor : Int) -> Array[Double]

    energy_distance

    fn energy_distance(left : Array[Double], right : Array[Double]) -> Double

    error_budget

    fn error_budget(availability : Double, target : Double) -> Double

    euclidean_distance

    fn euclidean_distance(left : Array[Double], right : Array[Double]) -> Double

    evaluate_change_points

    fn evaluate_change_points(predicted : Array[Int], truth : Array[Int], tolerance? : Int) -> ChangePointMetrics

    Matches a prediction to at most one truth within a tolerance window.

    evaluate_slo

    fn evaluate_slo(window : SloWindow, target? : Double, burn_limit? : Double) -> SloReport

    evaluate_threshold

    fn evaluate_threshold(observations : Array[ScoreObservation], threshold : Double, false_positive_cost? : Double, false_negative_cost? : Double) -> ThresholdReport

    event_rate

    fn event_rate(events : Array[AlertEvent], start : Int64, end : Int64) -> Double

    evidence_strength

    fn evidence_strength(score : Double, confidence : Double, deviation : Double) -> Double

    expected_alert_cost

    fn expected_alert_cost(false_positive_rate : Double, false_negative_rate : Double, false_positive_cost? : Double, false_negative_cost? : Double) -> Double

    explain_batch

    fn explain_batch(results : Array[DetectionResult], baseline : Double, values : Array[Double], detector : String) -> Array[DetectionExplanation]

    explanation_alerts

    fn explanation_alerts(explanations : Array[DetectionExplanation]) -> Int

    explanation_csv

    fn explanation_csv(explanation : DetectionExplanation) -> String

    explanation_csv_header

    fn explanation_csv_header() -> String

    explanation_markdown

    fn explanation_markdown(explanation : DetectionExplanation) -> String

    explanation_strength

    fn explanation_strength(explanation : DetectionExplanation) -> Double

    exponential_smooth

    fn exponential_smooth(values : Array[Double], alpha? : Double) -> Array[Double]

    extract_features

    fn extract_features(values : Array[Double]) -> WindowFeatures

    feature_change_score

    fn feature_change_score(left : Array[Double], right : Array[Double]) -> Double

    feature_distance

    fn feature_distance(left : WindowFeatures, right : WindowFeatures) -> Double

    feature_names

    fn feature_names() -> Array[String]

    find_detector

    fn find_detector(name : String) -> DetectorSpec?

    first_difference

    fn first_difference(values : Array[Double]) -> Array[Double]

    forecast_mae

    fn forecast_mae(actual : Array[Double], predicted : Array[Double]) -> Double

    forecast_mape

    fn forecast_mape(actual : Array[Double], predicted : Array[Double]) -> Double

    forecast_rmse

    fn forecast_rmse(actual : Array[Double], predicted : Array[Double]) -> Double

    forward_fill

    fn forward_fill(values : Array[Double], fallback? : Double) -> Array[Double]

    generate_signal

    fn generate_signal(scenario : SignalScenario) -> Array[Double]

    Generates a deterministic signal and its known change indices.

    hampel_filter

    fn hampel_filter(values : Array[Double], window_size? : Int, threshold? : Double) -> Array[Double]

    highest_priority

    fn highest_priority(decisions : Array[RoutingDecision]) -> Int

    histogram_distance

    fn histogram_distance(left : Histogram, right : Histogram) -> Double

    histogram_hellinger

    fn histogram_hellinger(left : Histogram, right : Histogram) -> Double

    incident_alert_count

    fn incident_alert_count(incidents : Array[Incident]) -> Int

    incident_rate

    fn incident_rate(incidents : Array[Incident], start : Int64, end : Int64) -> Double

    incidents_markdown

    fn incidents_markdown(incidents : Array[Incident]) -> String

    inspect_split

    fn inspect_split(values : Array[Double], split : Int, min_segment? : Int) -> OfflineChange?

    Returns a change record for a split, or None when the split is outside the valid range.

    interpolate_missing

    fn interpolate_missing(values : Array[Double]) -> Array[Double]

    Linearly interpolates invalid observations while retaining valid endpoints.

    interpolate_points

    fn interpolate_points(points : Array[SignalPoint], step : Int64) -> Array[SignalPoint]

    interquartile_range

    fn interquartile_range(values : Array[Double]) -> Double

    is_finite

    fn is_finite(value : Double) -> Bool

    Returns whether a value is finite enough for detector state.

    ks_statistic

    fn ks_statistic(left : Array[Double], right : Array[Double]) -> Double

    Kolmogorov-Smirnov distance between two samples.

    lag_points

    fn lag_points(points : Array[SignalPoint], lag : Int64) -> Array[SignalPoint]

    lag_values

    fn lag_values(values : Array[Double], lag : Int) -> Array[Double]

    lagged_correlation

    fn lagged_correlation(left : Array[Double], right : Array[Double], lag : Int) -> Double

    linear_slope

    fn linear_slope(values : Array[Double]) -> Double

    locate_time_window

    fn locate_time_window(windows : Array[TimeWindow], timestamp : Int64) -> Int

    make_explanation

    fn make_explanation(result : DetectionResult, baseline : Double, observed : Double, detector : String) -> DetectionExplanation

    make_time_windows

    fn make_time_windows(start : Int64, end : Int64, width : Int64, step? : Int64) -> Array[TimeWindow]

    mann_whitney_u

    fn mann_whitney_u(left : Array[Double], right : Array[Double]) -> Double

    mask_every

    fn mask_every(values : Array[Double], period : Int, offset? : Int) -> Array[Double]

    Applies deterministic missingness without changing the length of the sample.

    mean

    fn mean(values : Array[Double]) -> Double

    mean_absolute_difference

    fn mean_absolute_difference(values : Array[Double]) -> Double

    mean_shift_score

    fn mean_shift_score(values : Array[Double], split : Int, min_segment? : Int) -> Double

    Standardized mean difference between two adjacent segments.

    median

    fn median(values : Array[Double]) -> Double

    median_absolute_deviation

    fn median_absolute_deviation(values : Array[Double]) -> Double

    merge_nearby_changes

    fn merge_nearby_changes(changes : Array[OfflineChange], minimum_distance : Int) -> Array[OfflineChange]

    Removes candidates closer than minimum_distance, preserving the highest score.

    metrics_markdown

    fn metrics_markdown(metrics : ChangePointMetrics) -> String

    missing_value_strategy_name

    fn missing_value_strategy_name(strategy : MissingValueStrategy) -> String

    moving_average

    fn moving_average(values : Array[Double], window_size : Int) -> Array[Double]

    moving_median

    fn moving_median(values : Array[Double], window_size : Int) -> Array[Double]

    normalize_minmax

    fn normalize_minmax(values : Array[Double]) -> Array[Double]

    normalize_range

    fn normalize_range(values : Array[Double], minimum? : Double, maximum? : Double) -> Array[Double]

    normalize_scores

    fn normalize_scores(scores : Array[Double]) -> Array[Double]

    normalize_zscore

    fn normalize_zscore(values : Array[Double]) -> Array[Double]

    online_detector_count

    fn online_detector_count() -> Int

    optimal_changepoints

    fn optimal_changepoints(values : Array[Double], penalty? : Double, min_segment? : Int, max_changes? : Int) -> Array[Int]

    Penalized dynamic programming for minimum-description-length style segmentation.

    outlier_mask

    fn outlier_mask(values : Array[Double], threshold? : Double) -> Array[Bool]

    page_count

    fn page_count(decisions : Array[RoutingDecision]) -> Int

    percentile

    fn percentile(values : Array[Double], percent : Double) -> Double

    piecewise_constant_error

    fn piecewise_constant_error(values : Array[Double], changes : Array[Int]) -> Double

    Computes a reconstruction error when each segment is represented by its mean.

    production_autocorrelation_profile

    fn production_autocorrelation_profile(values : Array[Double], maximum_lag? : Int) -> Array[Double]

    production_backpressure_policy_name

    fn production_backpressure_policy_name(policy : ProductionBackpressurePolicy) -> String

    production_bootstrap_difference

    fn production_bootstrap_difference(left : Array[Double], right : Array[Double], replicates? : Int, confidence? : Double, seed? : Int64) -> ProductionConfidenceInterval

    production_bootstrap_interval

    fn production_bootstrap_interval(values : Array[Double], replicates? : Int, confidence? : Double, seed? : Int64) -> ProductionConfidenceInterval

    production_brier_score

    fn production_brier_score(probabilities : Array[Double], labels : Array[Bool]) -> Double

    Brier score for probabilistic change likelihoods.

    production_calibrate_result

    fn production_calibrate_result(calibrator : ProductionOnlineCalibrator, result : DetectionResult) -> DetectionResult

    Converts a detector score into a calibrated detection result.

    production_calibration_bins

    fn production_calibration_bins(probabilities : Array[Double], labels : Array[Bool], bins? : Int) -> Array[ProductionCalibrationBin]

    production_calibration_markdown

    fn production_calibration_markdown(bins : Array[ProductionCalibrationBin]) -> String

    production_calibration_mode_name

    fn production_calibration_mode_name(mode : ProductionCalibrationMode) -> String

    production_center_scale

    fn production_center_scale(values : Array[Double]) -> Array[Double]

    production_checkpoint_csv

    fn production_checkpoint_csv(checkpoint : ProductionMonitorCheckpoint) -> String

    production_clip_percentiles

    fn production_clip_percentiles(values : Array[Double], lower? : Double, upper? : Double) -> Array[Double]

    production_config_issues_summary

    fn production_config_issues_summary(issues : Array[ProductionConfigIssue]) -> String

    production_config_lines

    fn production_config_lines(config : ProductionMonitorConfig) -> Array[String]

    A stable line-oriented representation used in deployment logs.

    production_contract_checksum

    fn production_contract_checksum(rule : ProductionContractRule) -> String

    Stable, order-sensitive checksum for a contract definition.

    production_contract_distinct_labels

    fn production_contract_distinct_labels(labels : Array[String]) -> Int

    production_contract_field_kind_name

    fn production_contract_field_kind_name(kind : ProductionContractFieldKind) -> String

    production_contract_largest_gap

    fn production_contract_largest_gap(timestamps : Array[Int64]) -> Int64

    Returns the largest time gap in a timestamp series.

    production_contract_report_json

    fn production_contract_report_json(report : ProductionContractReport) -> String

    production_contract_severity_name

    fn production_contract_severity_name(severity : ProductionContractSeverity) -> String

    production_contract_summary_markdown

    fn production_contract_summary_markdown(summary : ProductionContractSummary) -> String

    production_contract_violation_code_name

    fn production_contract_violation_code_name(code : ProductionContractViolationCode) -> String

    production_control_limits

    fn production_control_limits(baseline : Array[Double], sigma_multiplier? : Double) -> (Double, Double)

    production_dashboard_csv

    fn production_dashboard_csv(series : ProductionDashboardSeries) -> String

    production_dashboard_series

    fn production_dashboard_series(name : String, events : Array[ProductionMonitorEvent], maximum_rows? : Int) -> ProductionDashboardSeries

    Produces a bounded dashboard-friendly time series from monitor events.

    production_decisions_markdown

    fn production_decisions_markdown(decisions : Array[ProductionDeliveryDecision]) -> String

    production_delivery_channel_name

    fn production_delivery_channel_name(channel : ProductionDeliveryChannel) -> String

    production_detector_kind_name

    fn production_detector_kind_name(kind : ProductionDetectorKind) -> String

    production_drift_markdown

    fn production_drift_markdown(report : ProductionDriftReport) -> String

    production_effect_size

    fn production_effect_size(left : Array[Double], right : Array[Double]) -> Double

    production_export_checksum

    fn production_export_checksum(payload : String) -> String

    production_export_field_name

    fn production_export_field_name(field : ProductionExportField) -> String

    production_export_format_name

    fn production_export_format_name(format : ProductionExportFormat) -> String

    production_export_group_by_metric

    fn production_export_group_by_metric(records : Array[ProductionExportRecord]) -> Array[String]

    production_export_manifest

    fn production_export_manifest(options : ProductionExportOptions) -> String

    Produce a manifest describing the selected export schema.

    production_export_merge_batches

    fn production_export_merge_batches(left : ProductionExportBatch, right : ProductionExportBatch) -> ProductionExportBatch

    production_export_metric_count

    fn production_export_metric_count(records : Array[ProductionExportRecord], metric : String) -> Int

    production_export_metric_mean

    fn production_export_metric_mean(records : Array[ProductionExportRecord], metric : String) -> Double

    production_export_normalize_metric_name

    fn production_export_normalize_metric_name(metric : String) -> String

    production_export_record_csv

    fn production_export_record_csv(record : ProductionExportRecord, delimiter? : String) -> String

    production_export_record_json

    fn production_export_record_json(record : ProductionExportRecord, pretty? : Bool) -> String

    production_export_record_markdown

    fn production_export_record_markdown(record : ProductionExportRecord) -> String

    production_export_record_prometheus

    fn production_export_record_prometheus(record : ProductionExportRecord, options : ProductionExportOptions) -> String

    production_export_validate_metric_name

    fn production_export_validate_metric_name(metric : String) -> Bool

    production_feature_contributions

    fn production_feature_contributions(vector : ProductionFeatureVector, weights : Array[Double]) -> Array[EvidenceContribution]

    Builds a compact feature-to-score summary used for explanations.

    production_feature_kind_name

    fn production_feature_kind_name(kind : ProductionFeatureKind) -> String

    production_features_csv

    fn production_features_csv(vector : ProductionFeatureVector) -> String

    production_features_csv_header

    fn production_features_csv_header() -> String

    production_fleet_health_label

    fn production_fleet_health_label(score : Double) -> String

    production_fleet_health_score

    fn production_fleet_health_score(snapshots : Array[ProductionMonitorSnapshot]) -> Double

    Aggregates multiple monitor snapshots into a fleet health score.

    production_forecast_kind_name

    fn production_forecast_kind_name(kind : ProductionForecastKind) -> String

    production_forecast_score

    fn production_forecast_score(actual : Array[Double], predictions : Array[ProductionForecastInterval]) -> ProductionForecastScore

    production_forecast_scores_markdown

    fn production_forecast_scores_markdown(scores : Array[ProductionForecastScore]) -> String

    production_frame_change_score

    fn production_frame_change_score(before : ProductionMetricFrame, after : ProductionMetricFrame) -> Double

    Computes vector-level changes over synchronized frames.

    production_guardrail_action_is_failure

    fn production_guardrail_action_is_failure(action : ProductionGuardrailAction) -> Bool

    production_guardrail_action_is_terminal

    fn production_guardrail_action_is_terminal(action : ProductionGuardrailAction) -> Bool

    production_guardrail_action_name

    fn production_guardrail_action_name(action : ProductionGuardrailAction) -> String

    production_guardrail_decisions_json

    fn production_guardrail_decisions_json(decisions : Array[ProductionGuardrailDecision]) -> String

    production_guardrail_direction_name

    fn production_guardrail_direction_name(direction : ProductionGuardrailDirection) -> String

    production_guardrail_health_from_actions

    fn production_guardrail_health_from_actions(actions : Array[ProductionGuardrailAction]) -> Double

    production_guardrail_metric_name

    fn production_guardrail_metric_name(metric : ProductionGuardrailMetricKind) -> String

    production_health_state_name

    fn production_health_state_name(state : ProductionHealthState) -> String

    production_impute_values

    fn production_impute_values(values : Array[Double], strategy : MissingValueStrategy) -> Array[Double]

    Returns a copy with invalid values replaced according to a production policy.

    production_incident_rate_markdown

    fn production_incident_rate_markdown(incidents : Array[ProductionIncident], start : Int64, end : Int64) -> String

    production_incident_state_name

    fn production_incident_state_name(state : ProductionIncidentState) -> String

    production_incidents_markdown

    fn production_incidents_markdown(incidents : Array[ProductionIncident]) -> String

    production_join_series

    fn production_join_series(series : Array[ProductionMetricSeries], tolerance : Int64) -> Array[ProductionMetricFrame]

    Builds frames by joining series at the nearest timestamp within a tolerance.

    production_log_loss

    fn production_log_loss(probabilities : Array[Double], labels : Array[Bool]) -> Double

    Numerically stable binary log loss.

    production_mean_difference

    fn production_mean_difference(left : Array[Double], right : Array[Double]) -> Double

    production_mean_shift_test

    fn production_mean_shift_test(left : Array[Double], right : Array[Double], alpha? : Double, replicates? : Int) -> ProductionStatTestResult

    Runs a mean-shift evidence test with a bootstrap interval and permutation p-value.

    production_median_difference

    fn production_median_difference(left : Array[Double], right : Array[Double]) -> Double

    production_median_shift_test

    fn production_median_shift_test(left : Array[Double], right : Array[Double], alpha? : Double, replicates? : Int) -> ProductionStatTestResult

    Runs a median-shift evidence test for heavy-tailed telemetry.

    production_mode_name

    fn production_mode_name(mode : ProductionMonitorMode) -> String

    Returns the enum value as a stable configuration token.

    production_monitor_event_name

    fn production_monitor_event_name(kind : ProductionMonitorEventKind) -> String

    production_monitor_events_csv

    fn production_monitor_events_csv(events : Array[ProductionMonitorEvent]) -> String

    production_monitor_events_csv_header

    fn production_monitor_events_csv_header() -> String

    production_monitor_signal

    fn production_monitor_signal(monitor : ProductionMonitor, points : Array[SignalPoint]) -> ProductionMonitorSnapshot

    Runs a monitor over a sorted signal and returns its final snapshot.

    production_normalize_range

    fn production_normalize_range(values : Array[Double], lower? : Double, upper? : Double) -> Array[Double]

    production_observations_csv

    fn production_observations_csv(observations : Array[ProductionReplayObservation]) -> String

    production_observations_csv_header

    fn production_observations_csv_header() -> String

    production_out_of_control_count

    fn production_out_of_control_count(values : Array[Double], lower : Double, upper : Double) -> Int

    production_percent_changes

    fn production_percent_changes(values : Array[Double]) -> Array[Double]

    Computes a bounded rolling percentage change series.

    production_permutation_shift_score

    fn production_permutation_shift_score(left : Array[Double], right : Array[Double], permutations? : Int, seed? : Int64) -> Double

    production_precision_recall_curve

    fn production_precision_recall_curve(scores : Array[Double], labels : Array[Bool], steps? : Int) -> Array[ProductionCurvePoint]

    production_quantile_profile

    fn production_quantile_profile(values : Array[Double], probabilities? : Array[Double]) -> Array[Double]

    production_query_results_markdown

    fn production_query_results_markdown(results : Array[ProductionQueryResult]) -> String

    production_query_rollup

    fn production_query_rollup(series : ProductionMetricSeries, start : Int64, end : Int64, step : Int64, function? : ProductionWindowFunction) -> Array[ProductionQueryResult]

    production_replay_mode_name

    fn production_replay_mode_name(mode : ProductionReplayMode) -> String

    production_report_format_name

    fn production_report_format_name(format : ProductionReportFormat) -> String

    production_residuals_from_trend

    fn production_residuals_from_trend(values : Array[Double]) -> Array[Double]

    production_roc_curve

    fn production_roc_curve(scores : Array[Double], labels : Array[Bool], steps? : Int) -> Array[ProductionCurvePoint]

    production_rolling_ranges

    fn production_rolling_ranges(values : Array[Double], width? : Int) -> Array[Double]

    Calculates a rolling range without exposing mutable window state.

    production_rolling_volatility

    fn production_rolling_volatility(values : Array[Double], width? : Int) -> Array[Double]

    Computes rolling volatility using a population standard deviation.

    production_run_batch

    fn production_run_batch(batch_id : String, monitor : ProductionMonitor, samples : Array[ProductionSample]) -> ProductionBatchResult

    production_sample_quality

    fn production_sample_quality(samples : Array[ProductionSample]) -> (Int, Int, Int)

    Counts samples by late-data and imputation flags for quality dashboards.

    production_scenario_points

    fn production_scenario_points(scenario : SignalScenario, start_timestamp? : Int64, step? : Int64) -> Array[SignalPoint]

    Creates sorted points from a deterministic scenario for benchmark harnesses.

    production_select_cost_threshold

    fn production_select_cost_threshold(scores : Array[Double], labels : Array[Bool], cost? : ProductionThresholdCost, steps? : Int) -> ProductionThresholdSelection

    production_select_f1_threshold

    fn production_select_f1_threshold(scores : Array[Double], labels : Array[Bool], steps? : Int) -> ProductionThresholdSelection

    production_service_status_name

    fn production_service_status_name(status : ProductionServiceStatus) -> String

    production_slo_reports_markdown

    fn production_slo_reports_markdown(reports : Array[ProductionSloReport]) -> String

    production_slo_window_name

    fn production_slo_window_name(kind : ProductionSloWindowKind) -> String

    production_smoothed_values

    fn production_smoothed_values(values : Array[Double], width? : Int) -> Array[Double]

    production_snapshot_csv

    fn production_snapshot_csv(snapshot : ProductionMonitorSnapshot) -> String

    production_snapshots_csv

    fn production_snapshots_csv(snapshots : Array[ProductionMonitorSnapshot]) -> String

    production_snapshots_csv_header

    fn production_snapshots_csv_header() -> String

    Exports monitor snapshots as a stable CSV schema.

    production_startup_report

    fn production_startup_report(config : ProductionMonitorConfig, initial_values : Array[Double]) -> ProductionReadinessReport

    production_stat_test_kind_name

    fn production_stat_test_kind_name(kind : ProductionStatTestKind) -> String

    production_stream_metrics_markdown

    fn production_stream_metrics_markdown(metrics : ProductionStreamMetrics, elapsed : Int64) -> String

    production_stream_process_points

    fn production_stream_process_points(processor : ProductionStreamProcessor, points : Array[SignalPoint]) -> Array[ProductionMonitorEvent]

    production_stream_status_name

    fn production_stream_status_name(status : ProductionStreamStatus) -> String

    production_threshold_grid

    fn production_threshold_grid(scores : Array[Double], steps? : Int) -> Array[Double]

    production_top_changes

    fn production_top_changes(values : Array[Double], maximum? : Int) -> Array[Int]

    Returns the largest absolute changes in a numeric series.

    production_transform_kind_name

    fn production_transform_kind_name(kind : ProductionTransformKind) -> String

    production_transform_values

    fn production_transform_values(values : Array[Double], specs : Array[ProductionTransformSpec], missing? : MissingValueStrategy) -> Array[Double]

    production_validate_monotonic_timestamps

    fn production_validate_monotonic_timestamps(timestamps : Array[Int64]) -> Bool

    Returns whether a timestamp series is non-decreasing.

    production_values_checksum

    fn production_values_checksum(values : Array[Double]) -> Double

    Computes a stable hash-like checksum over a numeric output series.

    production_variance_ratio

    fn production_variance_ratio(left : Array[Double], right : Array[Double]) -> Double

    production_window_feature_distance

    fn production_window_feature_distance(left : Array[Double], right : Array[Double], config? : ProductionFeatureConfig) -> Double

    Computes a robustly scaled distance between two production windows.

    production_window_function_name

    fn production_window_function_name(kind : ProductionWindowFunction) -> String

    quality_gate

    fn quality_gate(values : Array[Double], minimum_score? : Double) -> Bool

    quality_score

    fn quality_score(report : QualityReport) -> Double

    quantile

    fn quantile(values : Array[Double], probability : Double) -> Double

    quantile_shift_score

    fn quantile_shift_score(left : Array[Double], right : Array[Double]) -> Double

    rank_biserial_effect

    fn rank_biserial_effect(left : Array[Double], right : Array[Double]) -> Double

    ranks

    fn ranks(values : Array[Double]) -> Array[Double]

    fn recommended_detector(multivariate : Bool, offline : Bool, robust : Bool) -> String

    recovery_action_name

    fn recovery_action_name(action : RecoveryAction) -> String

    recovery_message

    fn recovery_message(plan : RecoveryPlan) -> String

    recovery_priority

    fn recovery_priority(result : DetectionResult) -> Int

    recovery_report

    fn recovery_report(plans : Array[RecoveryPlan]) -> String

    relative_change

    fn relative_change(baseline : Double, observed : Double) -> Double

    remove_invalid

    fn remove_invalid(values : Array[Double]) -> Array[Double]

    reorder_periodic

    fn reorder_periodic(points : Array[SignalPoint], period : Int) -> Array[SignalPoint]

    Reorders every period-th point to model a small late-data burst.

    replace_invalid

    fn replace_invalid(values : Array[Double], replacement? : Double) -> Array[Double]

    replay_changed_indices

    fn replay_changed_indices(records : Array[ReplayRecord]) -> Array[Int]

    replay_checksum

    fn replay_checksum(records : Array[ReplayRecord]) -> Double

    replay_latency_percentile

    fn replay_latency_percentile(records : Array[ReplayRecord], probability : Double) -> Int64

    replay_summary_markdown

    fn replay_summary_markdown(summary : ReplaySummary) -> String

    replay_values

    fn replay_values(records : Array[ReplayRecord]) -> Array[Double]

    replay_window

    fn replay_window(records : Array[ReplayRecord], start : Int, end : Int) -> Array[ReplayRecord]

    resample_linear

    fn resample_linear(points : Array[SignalPoint], step : Int64) -> Array[SignalPoint]

    results_csv

    fn results_csv(results : Array[DetectionResult]) -> String

    robust_detector_count

    fn robust_detector_count() -> Int

    robust_scale

    fn robust_scale(values : Array[Double]) -> Double

    robust_z_score

    fn robust_z_score(value : Double, center : Double, scale : Double) -> Double

    robust_z_scores

    fn robust_z_scores(values : Array[Double]) -> Array[Double]

    rolling_correlation

    fn rolling_correlation(left : Array[Double], right : Array[Double], window_size : Int) -> Array[Double]

    rolling_mean

    fn rolling_mean(values : Array[Double], window_size : Int) -> Array[Double]

    rolling_origins

    fn rolling_origins(length : Int, train_size : Int, horizon : Int, step? : Int) -> Array[SegmentRange]

    rolling_quantile

    fn rolling_quantile(values : Array[Double], window_size : Int, probability : Double) -> Array[Double]

    rolling_slope

    fn rolling_slope(values : Array[Double], window_size : Int) -> Array[Double]

    rolling_standard_deviation

    fn rolling_standard_deviation(values : Array[Double], window_size : Int) -> Array[Double]

    route_alert

    fn route_alert(alert : AlertEvent) -> RoutingDecision

    route_alerts

    fn route_alerts(alerts : Array[AlertEvent]) -> Array[RoutingDecision]

    routing_summary

    fn routing_summary(decisions : Array[RoutingDecision]) -> String

    runs_test_score

    fn runs_test_score(values : Array[Double]) -> Double

    safe_correlation

    fn safe_correlation(left : Array[Double], right : Array[Double]) -> Double

    Cross-series relationship helpers for multivariate monitoring.

    scale_profile

    fn scale_profile(values : Array[Double], sizes : Array[Int]) -> Array[ScaleEvidence]

    scenario_truth

    fn scenario_truth(scenario : SignalScenario) -> Array[Int]

    score_f1

    fn score_f1(scores : Array[Double], labels : Array[Bool], threshold : Double) -> Double

    score_margin

    fn score_margin(score : Double, threshold : Double) -> Double

    score_precision

    fn score_precision(scores : Array[Double], labels : Array[Bool], threshold : Double) -> Double

    score_recall

    fn score_recall(scores : Array[Double], labels : Array[Bool], threshold : Double) -> Double

    score_to_confidence

    fn score_to_confidence(score : Double, threshold : Double) -> Double

    seasonal_naive_forecast

    fn seasonal_naive_forecast(values : Array[Double], period : Int, horizon : Int) -> Array[Double]

    seasonal_strength

    fn seasonal_strength(values : Array[Double], period : Int) -> Double

    second_difference

    fn second_difference(values : Array[Double]) -> Array[Double]

    segment_means

    fn segment_means(values : Array[Double], boundaries : Array[Int]) -> Array[Double]

    segment_profile

    fn segment_profile(values : Array[Double], boundaries : Array[Int]) -> Array[StatsSummary]

    segment_quality

    fn segment_quality(values : Array[Double]) -> SegmentQuality

    segment_variances

    fn segment_variances(values : Array[Double], boundaries : Array[Int]) -> Array[Double]

    severity_from_score

    fn severity_from_score(score : Double) -> AlertSeverity

    Converts a score into a stable three-level severity.

    severity_name

    fn severity_name(severity : AlertSeverity) -> String

    Returns a human-readable severity label.

    should_escalate

    fn should_escalate(plan : RecoveryPlan, score : Double) -> Bool

    sigmoid_score

    fn sigmoid_score(value : Double) -> Double

    sign

    fn sign(value : Double) -> Int

    Returns the sign of a number.

    sign_change_rate

    fn sign_change_rate(values : Array[Double]) -> Double

    signal_checksum

    fn signal_checksum(values : Array[Double]) -> Double

    Returns a deterministic checksum useful for detecting accidental benchmark dead-code elimination.

    slope_confidence

    fn slope_confidence(values : Array[Double]) -> Double

    sorted_copy

    fn sorted_copy(values : Array[Double]) -> Array[Double]

    Returns a sorted copy using insertion sort. It is stable and allocation-bounded for small windows.

    spearman_correlation

    fn spearman_correlation(left : Array[Double], right : Array[Double]) -> Double

    split_train_test

    fn split_train_test(values : Array[Double], train_fraction? : Double) -> (Array[Double], Array[Double])

    standard_deviation

    fn standard_deviation(values : Array[Double]) -> Double

    stratified_counts

    fn stratified_counts(values : Array[Double], bins : Int) -> Array[Int]

    strongest_contribution

    fn strongest_contribution(explanation : DetectionExplanation) -> EvidenceContribution?

    sum

    fn sum(values : Array[Double]) -> Double

    summarize_replay

    fn summarize_replay(records : Array[ReplayRecord]) -> ReplaySummary

    summary_markdown

    fn summary_markdown(summary : StatsSummary) -> String

    tail_confidence

    fn tail_confidence(score : Double, scale? : Double) -> Double

    threshold_for_false_positive

    fn threshold_for_false_positive(scores : Array[Double], target_rate : Double) -> Double

    threshold_from_mad

    fn threshold_from_mad(scores : Array[Double], multiplier? : Double) -> Double

    threshold_from_mean

    fn threshold_from_mean(scores : Array[Double], standard_deviations? : Double) -> Double

    threshold_from_quantile

    fn threshold_from_quantile(scores : Array[Double], false_positive_rate : Double) -> Double

    threshold_grid

    fn threshold_grid(minimum : Double, maximum : Double, steps : Int) -> Array[Double]

    threshold_points

    fn threshold_points(scores : Array[Double], threshold : Double) -> Array[ThresholdPoint]

    time_window_csv

    fn time_window_csv(windows : Array[TimeWindow], counts : Array[Int]) -> String

    timestamped_signal

    fn timestamped_signal(values : Array[Double], start? : Int64, step? : Int64) -> Array[SignalPoint]

    Converts a signal to timestamped points.

    trimmed_mean

    fn trimmed_mean(values : Array[Double], trim_fraction : Double) -> Double

    validate_points

    fn validate_points(points : Array[SignalPoint], maximum_gap? : Int64?) -> QualityReport

    validate_values

    fn validate_values(values : Array[Double], lower? : Double?, upper? : Double?) -> QualityReport

    variance

    fn variance(values : Array[Double]) -> Double

    vector_dot

    fn vector_dot(left : Array[Double], right : Array[Double]) -> Double

    vector_norm

    fn vector_norm(values : Array[Double]) -> Double

    Computes the Euclidean norm of a vector.

    weighted_consensus

    fn weighted_consensus(results : Array[DetectionResult], weights : Array[Double], quorum : Double) -> DetectionResult

    weighted_mean

    fn weighted_mean(values : Array[Double], weights : Array[Double]) -> Double

    window_change_scores

    fn window_change_scores(values : Array[Double], min_segment? : Int) -> Array[Double]

    Scans every valid split and returns a score for each index.

    window_counts

    fn window_counts(points : Array[SignalPoint], windows : Array[TimeWindow]) -> Array[Int]

    window_means

    fn window_means(points : Array[SignalPoint], windows : Array[TimeWindow]) -> Array[Double]

    window_summaries

    fn window_summaries(points : Array[SignalPoint], windows : Array[TimeWindow]) -> Array[StatsSummary]

    winsorize

    fn winsorize(values : Array[Double], lower_probability? : Double, upper_probability? : Double) -> Array[Double]

    winsorize_robust

    fn winsorize_robust(values : Array[Double], lower_probability : Double, upper_probability : Double) -> Array[Double]

    Robust preprocessing helpers for production telemetry.