watcher: notify NS query failure and recovery (closes #104)
check / check (push) Successful in 1m5s
check / check (push) Successful in 1m5s
LookupAllRecords now returns each nameserver's response, so the watcher saves its status: ok when it answered, NXDOMAIN and no records included, and error with the reason when it timed out, answered SERVFAIL or REFUSED, or could not be reached. A nameserver that starts failing sends NS Failure and one that answers again sends NS Recovery. A failing nameserver is left out of the record change and inconsistency comparisons. The resolver used to report REFUSED and network errors as an answer with no records; they are now errors. A lookup cut short by its context now returns an error instead of a failure of the nameserver it was querying. Model: opus-5-5
This commit is contained in:
@@ -19,6 +19,8 @@ Rationale, Design, TODO, License, Author) if any are still missing.
|
||||
|
||||
# Completed Steps
|
||||
|
||||
- 2026-10-01: a nameserver that does not answer is saved as `error` with the
|
||||
reason, and NS failure and NS recovery are notified (closes #104).
|
||||
- 2026-09-29: the live-DNS test package is renamed `internal/livednstest` and
|
||||
added to the `test-support` `deny` list in `.golangci.yml`, so `make lint`
|
||||
fails when program code imports it (closes #164).
|
||||
|
||||
Reference in New Issue
Block a user