Stamps ha_state_t.last_known_elected_at_ms (CLOCK_REALTIME, epoch-ms) in both ha_do_promote (non-raft road) and raft_cb_become_leader (raft road), placed at each road's genuine, final commit point to CTRL_PRIMARY -- past every early-return refusal path in raft_cb_become_leader (first-boot phase2 failure, the Live Apply Resource Fence re-check, the promotion eligibility gate, config-serve-fenced, upgrade-materialization-fenced). Purely observational: does not change whether/when a promotion succeeds or is refused. Three new tests (2 positive, 1 negative) prove placement: a refused promotion leaves the field at its pre-attempt value. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RLSNJhNoULvVcUhXEFafQC |
||
|---|---|---|
| .. | ||
| autoscaler | ||
| configs | ||
| controller | ||
| docs | ||
| frontend | ||
| harness | ||
| include | ||
| lib | ||
| nixSupport | ||
| scheduler | ||
| schema | ||
| tools | ||
| worker | ||
| xceadmin | ||
| flake.lock | ||
| flake.nix | ||
| meson.build | ||
| meson.options | ||