Repository navigation
v0.7.1
Turns with large images no longer fail
A conversation carrying screenshots or other images replays those images on every turn. Once the request grew past what the WebSocket connection accepts, the turn died — and the error said only socket closed, which describes a network fault rather than what happened.
Four things were wrong, and all four are fixed.
The real reason was being discarded. The server does say why it hung up: the request was too large. That reason arrived and was then overwritten by a generic "connection closed" before anything could read it. The error now names the cause and the size, for example message too big: request was 16.4 MB.
The same oversized request was sent five times. A request refused for its size will be refused again at that size, so retrying only repeated a 16 MB upload. It is no longer retried.
The turn now completes instead of failing. A request too large for the WebSocket connection is accepted over HTTP, so the session finishes that turn there. Nothing is re-sent and nothing is replayed; the answer simply arrives over the other route. Later turns in that session go directly to HTTP.
Request dumps
/openai-dump on now takes effect immediately. Previously it recorded the setting but the running process kept ignoring it until restarted, so a capture started after switching it on came back empty.
Dumped tool definitions are no longer mangled. A tool parameter named something like api_key describes an argument the tool accepts; it holds no secret. Redacting it left a broken definition that could not be read back. Credentials written into descriptions are still removed.
Reported, captured, and confirmed in production by @iceteaSA (#135), including catching an incomplete first attempt at the fix.