You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A request is cut for silence, not for size (M93, ADR-0056)
A slow upload completes. Both HTTP providers used to end a request 60 s after send() began, upload included, so a long session on a slow relay was cut mid-body and retried forever while the relay logged a 400 "Failed to read request body". Now connecting has its own bound (20 s) and everything after it is cut only when no byte has moved on the wire in either direction for 300 s. The body goes out metered in 64 KiB frames, keeps its Content-Length, and the sign-in-again retry still works.
A reasoning model that is quiet for under five minutes is no longer cut either.
A sleep is not a wait (M94, ADR-0018 §9)
A bare foreground sleep is refused with the way round: end the turn and let the job or agent wake you, run the same sleep with background: true as a timer, or put the check in the same call when a pause must precede it. The Bash description and every job-start receipt now say that ending the turn is how you wait.
The window follows the stream (M96, ADR-0018 §8)
notify_all no longer waits a fixed thirty seconds. The quiet window starts at zero, so a slow stream wakes the session on every line; a burst grows the window by its observed rate (two seconds per line per second, capped at thirty); a line held inside the window goes out when the window ends instead of riding the next hit, so the delay is bounded by the window the notice names.
Every notice says its pace: the clock time, the lines and seconds since the last notice, and how soon the next can come. notify_quiet (milliseconds) pins the window when the model would rather choose; it is refused without notify_all.
The foot is a row away (M95)
While the transcript is scrolled back, the activity band's first row carries ↓ 37 lines below · end or click to follow, centred on the raised bar. A click on it follows the tail again, as end does. It rides a row the frame already holds, so nothing moves.