c940349fe8
The hw2 read-only Makino gate (Z-34184, 31i-B) logged the fixed-tree bootstrap failing with ObjectDisposedException: FocasWireClient. EnsureConnectedAsync was unserialized: the alarm poll loop and the fixed-tree loop both reached it right after init, the second saw the first's still-connecting client as not connected, disposed it and opened a second session, and the first caller's catch then disposed the second caller's client (and recorded a spurious backoff failure). A per-device ConnectGate now serializes the connect with a re-check after acquire, and the failure path disposes only its own client. FocasConcurrentConnectTests goes red without the gate. Docs: a Byte PMC tag is signed, so G12 at 100% feed override reads -101 on the Makino and the recipe's 255 - value gave 356; recipe now masks. Adds the live statinfo/alarm-watch observations. Claude-Session: https://claude.ai/code/session_01Ef2ozxS7QPanGT8uoATbTe