diff --git a/04-ISSUES/315-a-failed-unit-of-a-module-was-never-raised/01-diagnosis.md b/04-ISSUES/315-a-failed-unit-of-a-module-was-never-raised/01-diagnosis.md index 121b9216..fea0a57e 100644 --- a/04-ISSUES/315-a-failed-unit-of-a-module-was-never-raised/01-diagnosis.md +++ b/04-ISSUES/315-a-failed-unit-of-a-module-was-never-raised/01-diagnosis.md @@ -16,8 +16,8 @@ 2. **The two mounts** are units generated from the machine's own mount table at boot. The service-manager seat says neither is declared by the mesh, and no catalogue module or plan writes the mount table. Both failed at the boot of 2026-10-04: - - one is a share on a game console's address on the home network. Mounting it failed in six seconds - with "could not connect" (the console was off). It had failed the same way at the previous boot, + - one is a share on a retro-gaming box on the home network. Mounting it failed in six seconds + with "could not connect" (the box was off). It had failed the same way at the previous boot, in August; - the other is a media library mount. It mounted at the August boot and timed out after 90 s at this one. That is the stock mount timeout, the usual sign of a network share whose server did not @@ -36,18 +36,18 @@ ## Where it lives -- **mesh-host `internal/liveness`**: `LongRunning` takes containers, services stated `running` and +- **`mesh-host` `internal/liveness`**: `LongRunning` takes containers, services stated `running` and long-running processes. A package's unit is outside it. A service whose lifecycle is the machine's is too, and so is a unit file a module writes. Nothing in the node-engine read `list-units --state=failed`. -- **mesh-host `internal/profile`**: `service-manager` reads `is-system-running` as a capability +- **`mesh-host` `internal/profile`**: `service-manager` reads `is-system-running` as a capability detail, which is never raised. - **mesh-controller**: `node_health` kept resources and network, and nothing about the machine's managers. No condition kind existed for a degraded one. ## Fix -- **The node-engine** (mesh-host PR #53, new `internal/units`). On every liveness look it reads the +- **The node-engine** (`mesh-host` PR #53, new `internal/units`). On every liveness look it reads the failed units of the machine's manager and of every account manager the declaration names. The two-look rule is its own, as in ADR 0241 ยง2. A failed unit is a module's when: 1. the declaration states it as a service or process;