feat(ha-config-bootstrap): implement xce_probe_config_tag() (task 5.2)

- Non-blocking TCP connect + poll(500ms) + capnp ProbeConfigTagRequest/Reply
- Returns 0 with *tag_out on success; -ECONNREFUSED/-ETIMEDOUT on failure
- INFO log per probe outcome (Req 10.2)
- bootstrap_config_if_needed() minimal linkage stub (task 5.3 will complete)
- Dispatch gate already exempts OP_probeConfigTag in CTRL_INIT/CTRL_ELECTING
- Probe test GREEN; 1 expected task-5.3 failure remains
This commit is contained in:
Rongsong Shen 2026-05-28 09:03:09 +00:00
parent 3cf82721d6
commit 0c4a0760d1
2 changed files with 208 additions and 1 deletions

View file

@ -115,7 +115,7 @@ Dependency order: startup validation (D) unblocks vtaskmgr before election (A);
- `make test` fails
- _Requirements: 3.1, 3.2, 3.3, 3.4, 3.5_
- [ ] 5.2 Implement xce_probe_config_tag()
- [x] 5.2 Implement xce_probe_config_tag()
- Single-RTT SSL probe: `connect_ssl_raw()` + xce encode `OP_probeConfigTag` + decode `ProbeConfigTagReply`
- Returns 0 on success with `*tag_out` set; returns `-ECONNREFUSED` / `-ETIMEDOUT` on unreachable peer
- Peer dispatch gate exempts `OP_probeConfigTag` in `CTRL_INIT` and `CTRL_ELECTING` states