#7651 fixes DDNS updates that receive transient SERVFAIL responses and prevents persistent failures from being reported as success.
Current CI does not exercise this path: its ci_test coverage only checks makedns help output.
Add focused mocked-resolver coverage for send_ddns_update:
SERVFAIL → SERVFAIL → NOERROR retries and returns success.
SERVFAIL → SERVFAIL → SERVFAIL returns failure and emits the terminal error.
- Persistent failure does not allow
add_or_delete_records / makedns to emit either completion message.
- Preserve existing
NOTAUTH retry behavior.
Acceptance criteria: the tests are deterministic, do not require a running DNS server, and run in the project’s normal test workflow.
#7651 fixes DDNS updates that receive transient
SERVFAILresponses and prevents persistent failures from being reported as success.Current CI does not exercise this path: its
ci_testcoverage only checksmakednshelp output.Add focused mocked-resolver coverage for
send_ddns_update:SERVFAIL → SERVFAIL → NOERRORretries and returns success.SERVFAIL → SERVFAIL → SERVFAILreturns failure and emits the terminal error.add_or_delete_records/makednsto emit either completion message.NOTAUTHretry behavior.Acceptance criteria: the tests are deterministic, do not require a running DNS server, and run in the project’s normal test workflow.