Sync the self-hosting stack

This commit is contained in:
2026-08-28 22:25:34 +02:00
parent dd3b76d68b
commit fd84859756
+32
View File
@@ -9,6 +9,38 @@ one of them changed. An entry says which artefact and which version, so `web 0.1
Every version published to a channel appears here. Nothing is written from memory afterwards: a build Every version published to a channel appears here. Nothing is written from memory afterwards: a build
cannot be published without its entry. cannot be published without its entry.
## 2026-08-28 — Machines no longer flicker offline when they reconnect `api 0.97.0`
**Only affects deployments running more than one copy of the api.** On Docker Compose one of these
could still happen — a machine reconnecting to the single container — and the fix applies there too,
but the wave of them does not.
**The one to read if you run several replicas.** When something in front of Jarvis closes a batch of
agent connections at once — a rollout of your ingress controller, a proxy being replaced, a load
balancer reloading — every affected machine reconnects within a second. That is normal and the
agents handle it. Jarvis did not: the reconnections raced the bookkeeping for the connections they
were replacing, and machines that were connected and working were recorded as offline. Calls to them
were refused with "the agent is not connected" while a terminal to the same machine was open.
Four things were wrong underneath, and all four are fixed:
- **A connection that had already been replaced still did the bookkeeping for its own ending** —
including writing "offline" about a machine whose new connection was already live.
- **Two connections from the same machine to the same replica could not be told apart**, so the old
one's cleanup deleted the new one's registration, and the old one's keep-alive timer kept a dead
registration alive.
- **Registration was published without waiting**, leaving a moment where a replica held a working
connection that none of the others could see.
- **A command sent to the replica that held the machine a moment ago gave up** instead of asking
again where it had moved. It now retries once, so a reconnection costs a pause rather than an
error.
**What you should see afterwards.** Reconnections still happen when proxies restart — that part is
not something Jarvis can prevent — but they stop producing false "offline" states, and commands in
flight during one survive it.
**Nothing to do.** Take the build.
## 2026-08-28 — Models other than OpenAI's work again `api 0.96.0` ## 2026-08-28 — Models other than OpenAI's work again `api 0.96.0`
**Read this if you point Jarvis at anything other than OpenAI.** Self-hosted models, Qwen, Llama, **Read this if you point Jarvis at anything other than OpenAI.** Self-hosted models, Qwen, Llama,