chore(election-iomgr-refactor): mark tasks 6.1 and 6.2 complete in tasks.md

This commit is contained in:
Rongsong Shen 2026-05-30 13:46:17 +00:00
parent 052c891ac0
commit e875cae7ad

View file

@ -127,7 +127,7 @@
- _Boundary: ha.c (RDHUP path)_
- _Depends: 5.1_
- [ ] 5.3 Remove bootstrap_config_if_needed and old election blocking path
- [x] 5.3 Remove bootstrap_config_if_needed and old election blocking path
- Delete `bootstrap_config_if_needed` call from myapp_run; delete the function body from config_repl.c if no other callers remain
- Delete `ha_wait_for_heartbeat_or_timeout` call from myapp_run (now internal to ha_start_election_async's watchdog)
- Delete `am_i_primary_quorum` blocking pthread loop from ha.c (keep unit-test stub in testsuite)
@ -138,7 +138,7 @@
- _Depends: 5.1, 5.2_
- [ ] 6. Validation: tests, ASAN, and integration verification
- [ ] 6.1 Unit tests for election timeout and committing timeout watchdogs
- [x] 6.1 Unit tests for election timeout and committing timeout watchdogs
- Test `election_timeout_fn`: fires `ha_elect_evaluate_and_signal` when not cancelled; no-op when `cancelled=1`
- Test `committing_timeout_fn`: promotes to PRIMARY (degraded) when not cancelled; no-op when cancelled
- Test `delay_task_ms` precision: 500ms task fires within ±200ms (delaymgr precision_ms = 50ms for test)
@ -147,7 +147,7 @@
- _Boundary: ha.c unit tests_
- _Depends: 1.1, 4.4_
- [ ] 6.2 Unit tests for FSM gate and role-based vote denial
- [x] 6.2 Unit tests for FSM gate and role-based vote denial
- Test `ha_dispatch_gate`: COMMITTING allows replCatchUpDone, denies jobsubmit; ELECTING allows requestVote, denies jobsubmit
- Test `handle_request_vote` role gate: all 5 cases (PRIMARY, COMMITTING, STANDBY+fresh, STANDBY+stale, ELECTING)
- Test `ha_repl_ack_received`: quorum=1 of 2 peers acks → PRIMARY; 0 of 2 → stays COMMITTING