The term-blind ha_apply_single_entry direct-persist branch (carried forward from task 2.4) is unreachable with a real non-zero term in any current production path: its only trigger, raft_send_append_entries, has zero production call sites (library simulator only). Both real senders (repl_broadcast, ha_stream_wal_to_standby) always emit a non-zero term for a present LSN. Documents this in ha.c and design.md rather than structurally retiring a dormant path (YAGNI), with an explicit flag for future re-evaluation if a heartbeat-driver task ever wires up raft_send_append_entries. Adds two regression pins: restart preserves (term,lsn) identity (replay_wal already reconstructs the term index via record_entry_term), and real senders never produce the term-blind wire shape. test_ha_core_safety 28/0, no regression, no ASAN reports. |
||
|---|---|---|
| .. | ||
| settings | ||
| specs | ||
| steering | ||