Read the fleet alerts¶
Nerthus.Core (until cutover). This page describes the frozen system that runs today and is deleted at cutover. Replaced by: not yet written.
The technical channel (kanal-wewnetrzny-it) carries a short stream of automated
notices about the machines that serve the campaign. This page tells you what each kind
of line means and when one of them needs a human. Usually the answer is: none of them
do — the system is built to route around a sleeping laptop on its own.
This is the one page in this tab written to be read by somebody who does not run the fleet. Operators see the same channel, and a Narrator who asks what a message means should be handed this page. The producing side — which job posts which line, and how the channel is wired — is Manage notifications.
The lightning bolt on a closed session¶
When someone closes a session from Discord (/zamknij-sesję), the confirmation message
sometimes ends with a small ⚡. That mark means the close was handled directly by
the live server; a confirmation without the mark means it went the long way round,
through the build pipeline. Both are correct and both do exactly the same thing — the
mark exists so that, if something ever goes wrong, we can tell at a glance which road a
given close travelled. You never need to act on it.
Watchdog mode changes¶
Two lines announce the external watchdog handing work back and forth with the self-hosted monitor:
Monitor aktywny - Worker w trybie czuwania— the always-on monitor is healthy, so the external watchdog went quiet. Good news; nothing to do.Monitor nie odpowiada - Worker wznawia sweep— the monitor went dark and the watchdog took over within the hour. The fleet is still watched; someone should check on the monitor box when convenient.
Seeing these two flap back and forth repeatedly is worth mentioning to whoever runs the monitor box — a single pair is routine.
When the fleet changes its own leadership¶
If the main host goes dark for long enough, the system proposes moving leadership to the healthiest stand-in — as an ordinary merge request that merges itself when its checks pass. The alert lines name the old and new host and link the request. While that request is open you have a veto window: the request's description includes the observations that justified the move, so you can see why before it lands.
Przejęto istniejący MR zmiany hosta APEX— two watchers noticed the outage at once and the second one joined the first one's proposal instead of racing it. The guard worked; read the linked request as usual.- After any leadership change, one follow-up task exists: the Discord-close fast path needs its credential refreshed on the new main host. The rotate-secrets runbook names the step ("The daemon dispatch token — after a takeover"). Until it is done, closes still work — they just always take the long road, and the mark from the first section stops appearing.
The backup road is not exercised¶
When the live server is down, a session report travels a backup road: the edge hands it to CI instead of to a daemon. Nothing tests that road. It is not exercised monthly, it is not exercised on a schedule, and it has never been driven end to end.
Earlier versions of this page described a monthly canary — a scheduled job that submitted a deliberately invalid report, where a refusal was the pass — and told you that a month with no canary line was itself the warning sign. There was no such job. Three independent readings on 2026-08-29 agree: no pipeline schedule in the group matches the word at all; of the 87 pipelines the lore repository has run, none was started by a trigger, which is the only road that leg travels; and the repository's one trigger token has never been redeemed.
So the instruction to watch for an absence was an alarm that had been sounding every month since it was written, and no one could tell it apart from silence. It is gone.
What this leaves you with: if the live server is down and reports start falling
through, the first real report is the first test. Watch the technical channel for a
zgloszenia/ merge request appearing without a daemon mark on it — that is the backup
road working. Nothing appearing is not information.
A host took up new lore¶
Host `torneg`: repozytorium fabularne (`lore`) na `a1b2c3d` (z `9f8e7d6`)
Autor: Jan Kowalski <jan@example.com>
Commit: `a1b2c3d` fix: literówka w opisie Tornegu
Zmiany — commity: 1, pliki: 2
A converge carrying several commits names the authors instead, newest first:
Host `eder`: repozytorium transkryptów (`logi`) na `bbbbbbb` (z `aaaaaaa`)
Autorzy: Anna Nowak <anna@example.com>, Jan Kowalski <jan@example.com>
Ostatni commit: `bbbbbbb` feat: transkrypt sesji 214
Zmiany — commity: 2, pliki: 7
The host has just pulled a commit it did not have, and the lines under it name who wrote it and how much moved. There is one of these per repository the host holds: the lore itself, the transcript archive, the annotation tree, the works repository, the two sample stores and the moderators tree.
This is the line that answers "is my change live yet". It is posted at the moment a host takes the bytes up, which is minutes to a quarter of an hour after the merge request went green — the provisioning notice earlier in the channel is a different event. Nothing here needs a human. A host that never posts one after a merge is the thing worth asking about, and the fleet's own staleness alerts will say so first.
Peer observations¶
Hosts also watch each other and post edge lines — a host observed dark after several
missed checks (Brak odpowiedzi … (peer watch)), its recovery, a clock running more
than a couple of seconds off, or — the one that always deserves attention —
split-brain: two hosts each believing they lead. The system deliberately takes
no action on that one; it reports and waits for a human, because acting on confusion
is how confusion spreads. Raise it with the infrastructure owner immediately.
Two kinds of line report it, and each posts once:
Błąd: … (split-brain - nic nie zmieniam, role zmienia tylko git)— a finding, on the check that first sees it. A second, different finding gets its own line.OK: rozbieżność primary ustąpiła, tylko jeden host twierdzi, że jest primary (split-brain)— the check on which the last finding drops out.
Nothing goes up while a finding merely persists, so silence after the alert is not an all-clear. Every check still records it on the host that ran the check. To learn whether two hosts are still both claiming to lead, ask the infrastructure owner what the hosts currently observe about each other.
See also¶
- Manage notifications — the wiring and the full event catalog
- The fleet — the model behind every line on this page
- Run a failover — what to do when leadership moves
- What happens every month — the lore-side monthly sweep, which is a different thing entirely