OpenChrome v1.12.8
Broker auto-election and reliability hardening release on top of v1.12.7.
Highlights
Broker Auto-Election (#1480)
Multi-instance setups now self-heal without manual intervention. When the broker owner process dies or becomes a half-zombie, surviving instances automatically elect a new owner and re-attach — no more deadlocks waiting for a ghost lock.
- broker: auto-elect lock winner as broker owner (93ff0ac)
- broker: auto-elect loser attaches to owner broker (d4f87e5)
- broker: re-elect when broker owner dies (e9439b5)
Health-Aware Controller Lock (#1474)
The controller lock now detects half-zombie owners (process alive but unresponsive) and proactively takes over, eliminating the deadlock scenario where all workers stall waiting for a stuck owner.
- reliability: health-aware controller lock — take over half-zombie owner instead of deadlocking (#1477)
- reliability: release controller lock after Chrome death (1af956e)
DuplicateController Surfacing
DuplicateController errors are now surfaced over MCP as actionable diagnostics instead of being silently swallowed, making multi-instance conflicts visible to agents and operators.
- observability: surface DuplicateController remediation over MCP (25e0297)
Fixes
- cli: expose broker flags in
serve --help+ forward unknowns (I1 of #1480, #1482) - chrome: reap orphaned headed-fallback Chrome via ownership marker (I2 of #1480, #1483)
- cli: warn when setup migration is required after updates (#1491)
- schemas: enforce array items in tool schemas (880b2c3)
- extract_data: add items to
alreadyCollectedarray schema (#1473, #1475)
Docs
- explain update vs MCP host config migration (#1490)
- amend D3 — opt-in auto-elect coordinated sharing path (S1 of #1480, #1481)
CI
- keep PR CI from saturating macOS runners (4979348)
Full Changelog: v1.12.7...v1.12.8
🤖 Generated with Claude Code