# Performance Probes `dag-ml` does not treat microbenchmarks as public API. The 0.2.x RC baseline is a set of ignored Rust tests that can be run on demand in release mode to catch large regressions on critical control paths. ## Current Probes | Probe | Command | Purpose | |---|---|---| | OOF campaign join | `cargo test -p dag-ml-core oof_join_large_campaign_under_1500ms --release -- --ignored --nocapture` | Joins 12k samples across 4 producers and 6 folds by stable sample id. | | Execution-plan build | `cargo test -p dag-ml-core build_execution_plan_large_linear_graph_under_1500ms --release -- --ignored --nocapture` | Builds a 401-node linear graph into a validated `ExecutionPlan`. | ## Policy - Probes are intentionally private tests, not exported signatures. - They should be run before releases and after scheduler, OOF, graph or planning rewrites. - Thresholds are generous sanity gates, not formal service-level objectives. - If a probe becomes flaky on CI hardware, keep the measurement but move the threshold to a manual release checklist rather than weakening correctness tests. ## Next Baselines Post-0.2.x, add probes for: - prediction-cache row-major and columnar export; - bundle replay data/artifact/prediction-cache materialization; - process-adapter persistent worker pool throughput on the branch/merge smoke.