usecornercase/cornercase-terminal is a terminal multiplexer that lets you drive projects, git worktrees, and coding agents with the mouse. It is written in Rust and its license is MIT OR Apache-2.0. The 2026-11-06 commit 7f08441 added a `retry_at` field that tells you the next retry time when a machine connection (link) is broken. The versions in Cargo.toml and CHANGELOG went from 0.13.18 to 0.13.19.
This field appears in `cornercase machines --json` and in the machines entries of `status --app` and `status --json`, and its value uses the same UTC format as `seen`. It is the time at which a dropped link will be tried again next, so the native UI can draw a reconnection countdown such as the `reconnecting in 4 s` already present in the window by using this value. That time stays as it is until an attempt fails, and a time already in the past means that an attempt is in progress. It is recalculated when you call `cornercase machines retry` or when the computer wakes up and the network changes. As a contract capability it is `machine-retry-at`, and it can be checked in `cornercase contract`.
The same commit also brought two fixes that straighten out how link state is displayed. One changed the order so that the next attempt time is cleared only after the link has been reported as connected. Previously the time was cleared first, so a `unreachable` row without a time remained in the app stream for up to 500ms, which read as a wait that requires human intervention. The other made the moved time be sent only once when the machine name changes and the link has to follow it. The `set` of `machines` sends the `watch` line first and the next update touches the link to give the new name, but because an update only creates a snapshot when it is displayed, `status --follow` kept showing the old time and name until some other event arrived.
`retry_at` is absent when the link is alive or connecting, and it is also absent when it has remained in a wait that requires human intervention. Older cornercase servers have no `error` field, so `state` tells you the reason instead, and in the case of this computer or another machine on the same server, `error` plays that role. The design document records that the plan of having the client compute the server schedule itself was rejected because of clock skew and because the client cannot hear about failures that occur in between. The commit message says release 0.13.3, but the version file and CHANGELOG point to 0.13.19. The change amounts to 498 added lines and 38 deleted lines, and the tests, the design document, and the site documentation were updated along with it. It is directly usable for an external UI that only needs to draw a per-node retry time, but in places that also have to interpret connection state, the case of the field being missing needs to be accounted for separately.