usecornercase/cornercase-terminal은 프로젝트와 git worktree, 코딩 에이전트를 마우스로 다루는 터미널 멀티플렉서다. Rust로 쓰였고 라이선스는 MIT OR Apache-2.0이다. 2026-11-06 커밋 7f08441은 머신 연결(link)이 끊겼을 때 다음 재시도 시각을 알려주는 `retry_at` 필드를 추가했다. Cargo.toml과 CHANGELOG의 버전은 0.13.18에서 0.13.19로 올랐다.
이 필드는 `cornercase machines --json`과 `status --app`, `status --json`의 machines 항목에 들어가고, 값은 `seen`과 같은 UTC 형식이다. 떨어진 링크가 다음에 다시 시도하는 시각으로, 자체 UI는 이 값으로 창에 이미 있는 `reconnecting in 4 s` 같은 재연결 카운트다운을 그릴 수 있다. 그 시각은 시도가 실패할 때까지 그대로 남고, 이미 지난 시각은 시도가 진행 중이라는 뜻이다. `cornercase machines retry`를 부르거나 컴퓨터가 깨어나고 네트워크가 바뀔 때 그 값이 다시 잡힌다. 계약 기능으로는 `machine-retry-at`이 되어 `cornercase contract`에서 확인할 수 있다.
같은 커밋에는 링크 상태 표시를 바로잡는 두 가지 수정이 함께 들어갔다. 하나는 링크가 연결되었다고 알린 뒤에야 다음 시도 시각을 지우도록 순서를 바꾼 것이다. 이전에는 시각을 먼저 지워서 앱 스트림에서 최대 500ms 동안 시각 없는 `unreachable` 행이 남았고, 이는 사람이 개입해야 하는 대기로 읽혔다. 다른 하나는 머신 이름이 바뀌면 링크가 따라가야 할 때 이동한 시각을 한 번만 보내게 한 것이다. `machines`의 `set`이 `watch` 줄을 먼저 보내고 다음 갱신이 링크를 건드려 새 이름을 주는데, 갱신은 표시될 때만 스냅숏을 만들기 때문에 `status --follow`가 다른 이벤트가 올 때까지 옛 시각과 이름을 계속 보여주었다.
`retry_at`은 링크가 살아 있거나 연결 중일 때는 빠지고, 사람이 개입해야 하는 대기로 남았을 때도 없다. 오래된 cornercase 서버에는 `error` 필드가 없으므로 `state`가 그 이유를 대신 알려주고, 이 컴퓨터나 같은 서버의 다른 머신인 경우에는 `error`가 그 역할을 한다. 서버 스케줄을 클라이언트가 직접 계산하는 안은 시계 차이와 그 사이의 실패를 클라이언트가 듣지 못한다는 이유로 기각되었다고 설계 문서에 적혀 있다. 커밋 메시지에는 release 0.13.3이라고 적혀 있으나 버전 파일과 CHANGELOG는 0.13.19를 가리킨다. 변경은 498줄 추가와 38줄 삭제로, 테스트와 설계 문서, 사이트 문서가 함께 갱신됐다. 노드별 재시도 시각만 그려야 하는 외부 UI에는 바로 쓸 만하지만, 연결 상태를 함께 해석해야 하는 자리에서는 필드가 빠지는 경우를 따로 감안해야 한다.