Per-Plugin Timeouts, Backpressure Unification, and the Deadlock That Almost Was
Merged
Per-Plugin Timeout Enforcement Lands
OpenClaw now supports user-defined timeout thresholds on a per-plugin basis, letting operators cut off runaway extensions without restarting the whole daemon. This is the kind of granular control that prevents 3am pages.
Context Cancellation Fix for HTTP Handlers
The HTTP handler now correctly propagates context cancellations through the plugin call stack. Previously, dangling goroutines could survive after the originating request hit its deadline. Subtle but important for stability.
Structured Benchmark Artifacts in CI Pipeline
CI now exports structured Go benchmark results as build artifacts instead of just dumping text logs. Makes it possible to track regressions over time and wire up automated performance budgets.
Proposal
Unified Backpressure Strategy for Worker Pool
A pending refactor to unify how OpenClaw handles worker backpressure across async and blocking modes. If this ships, it should simplify reasoning about memory usage under load and give cleaner signals for autoscaling.
Fix
Hot-Reload Race Condition Patched
A regression where config hot-reload would silently drop updates under high event throughput has been patched. If you're running OpenClaw in production with frequent config changes, this is a must-pull update.
Incident Report
Healthcheck Endpoint Lock Ordering Fixed
Linearize the lock acquisition path in the healthcheck endpoint to prevent a deadlock scenario exposed during the last stress test. Lock ordering violations are the silent killers, good to see this surfaced and handled.
Stay Ahead
Delivered each morning.