- Terminate the two banner-path `onToggleConnection` calls through a
`retryConnect` helper. The toggle handles every handshake failure, but
client construction runs ahead of its try/catch, so a throw there
escaped into a discarded promise with the banner already dismissed.
Recorded on `connectErrorMessage` rather than toasted, matching the
deep-link phases' own catch, so the move stays inert.
- Add the unsettled-`/api/config` race test: a connect that starts before
the sandbox answer is held at the gate and builds from the URL as of the
release, which is what `sandboxUrlRef` exists for.
- Correct the harness's `client` doc, which described a
last-constructed fallback the harness never implemented.
Signed-off-by: cliffhall <cliff@futurescale.com>