{ "env": { "date": "2026-06-23T20:22:15", "endpoint": "https://obsidian.example.com", "commit": "af16598", "echo_workers": 8, "echo_timeout": 30, "python": "3.10.12", "iterations": null, "count_k": 50 }, "run_id": "20260623-202215-7b414f", "metrics": { "soak": { "result": { "seconds": 22, "iterations": 15, "errors": 0, "per_pass": { "n": 15, "min_ms": 1472.88, "median_ms": 1551.67, "p90_ms": 1648.45, "p95_ms": 1702.66, "max_ms": 1820.58, "mean_ms": 1569.81 }, "early_mean_ms": 1575.63, "late_mean_ms": 1564.72, "drift_ratio_late_over_early": 0.99 }, "gates": [ { "rule": { "field": "errors", "op": "<=", "min": 0, "why": "no read errors across the soak window \u2014 connection leaks/pool exhaustion would surface here" }, "value": 0, "pass": true }, { "rule": { "field": "drift_ratio_late_over_early", "op": "<=", "min": 1.5, "why": "late passes must not be much slower than early ones; >1.5 suggests a leak or degrading pool" }, "value": 0.99, "pass": true } ] } } }