Sync the self-hosting stack

This commit is contained in:
2026-08-28 22:36:46 +02:00
parent fd84859756
commit 5770dbe306
+31
View File
@@ -9,6 +9,37 @@ 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 — A machine that moves between replicas lets go of the old one `api 0.98.0`
**Only affects deployments running more than one copy of the api.** Nothing here changes a single-
container stack.
**Reconnections are tidied up immediately instead of being waited out.** When a machine reconnects
to a different replica, the one it left still held its old connection until its own liveness check
noticed — up to thirty seconds in which two replicas each believed they could talk to the same
machine, and a command could be sent down the connection the machine had already abandoned. The
replica that takes over now tells the other one to let go, straight away and precisely: only the
connection that was actually replaced is closed.
**And you can now see what the presence machinery is doing**, at
`GET /api/admin/agents/presence`, for platform administrators. It reports five counters, added up
across every replica rather than only the one that answered your request:
- how often a machine's connection moved from one replica to another;
- how often a closing connection was found to have already been replaced, and correctly ignored;
- how often a command followed a machine that moved instead of failing;
- **how often a command could not be delivered at all** — this is the one worth alerting on, because
it is what someone experiences as "the agent is not connected";
- how often a stored status had to be corrected because it said a live machine was offline. This
should sit at zero; if it does not, please tell us.
It is JSON, every counter only ever goes up, and a replica that has stopped reporting is excluded
from the totals and counted separately — so you can point a scraper at it with a service account.
There is deliberately no unauthenticated `/metrics` endpoint: your replica count and machine totals
are facts about your estate, not about Jarvis.
**Nothing to do.** Take the build.
## 2026-08-28 — Machines no longer flicker offline when they reconnect `api 0.97.0` ## 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 **Only affects deployments running more than one copy of the api.** On Docker Compose one of these