The README describes several features that are not implemented in the codebase:
1. "Inconsistency resolved" detection
The README states under DNS Hostname Monitoring:
Inconsistency resolved: Nameservers that previously disagreed are now back in agreement.
The code in watcher.go has detectInconsistencies() which checks for current inconsistencies between nameservers, but there is no logic to detect when a previously-detected inconsistency has been resolved. There is no state tracking of previous inconsistency status.
2. State status values nxdomain and nodata
The README State File Format section documents these status values:
Status
Meaning
nxdomain
Authoritative NXDOMAIN response
nodata
Authoritative empty response (NODATA)
But the code only ever sets NameserverRecordState status to "ok" (in buildHostnameState(), line 346 of watcher.go). The values "nxdomain" and "nodata" are never written anywhere in the watcher or state code.
3. "Empty response" detection
The README states:
Empty response: A nameserver that previously returned records now returns an authoritative empty response (NODATA/NXDOMAIN).
While a change from records to no-records would be caught by detectRecordChanges() as a generic record change, it is not specifically identified or labeled as a NODATA/NXDOMAIN event.
Impact
Users expect these features to work as documented. The README is the primary documentation.
Recommendation
Either implement the features or update the README to remove the claims. For 1.0 MVP, removing the unimplemented items from the README is probably the faster path.
Category
Should-fix before 1.0.
## Problem
The README describes several features that are not implemented in the codebase:
### 1. "Inconsistency resolved" detection
The README states under DNS Hostname Monitoring:
> **Inconsistency resolved**: Nameservers that previously disagreed are now back in agreement.
The code in `watcher.go` has `detectInconsistencies()` which checks for current inconsistencies between nameservers, but there is **no logic to detect when a previously-detected inconsistency has been resolved**. There is no state tracking of previous inconsistency status.
### 2. State status values `nxdomain` and `nodata`
The README State File Format section documents these status values:
| Status | Meaning |
|---|---|
| `nxdomain` | Authoritative NXDOMAIN response |
| `nodata` | Authoritative empty response (NODATA) |
But the code only ever sets NameserverRecordState status to `"ok"` (in `buildHostnameState()`, line 346 of watcher.go). The values `"nxdomain"` and `"nodata"` are never written anywhere in the watcher or state code.
### 3. "Empty response" detection
The README states:
> **Empty response**: A nameserver that previously returned records now returns an authoritative empty response (NODATA/NXDOMAIN).
While a change from records to no-records would be caught by `detectRecordChanges()` as a generic record change, it is not specifically identified or labeled as a NODATA/NXDOMAIN event.
## Impact
Users expect these features to work as documented. The README is the primary documentation.
## Recommendation
Either implement the features or update the README to remove the claims. For 1.0 MVP, removing the unimplemented items from the README is probably the faster path.
## Category
Should-fix before 1.0.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem
The README describes several features that are not implemented in the codebase:
1. "Inconsistency resolved" detection
The README states under DNS Hostname Monitoring:
The code in
watcher.gohasdetectInconsistencies()which checks for current inconsistencies between nameservers, but there is no logic to detect when a previously-detected inconsistency has been resolved. There is no state tracking of previous inconsistency status.2. State status values
nxdomainandnodataThe README State File Format section documents these status values:
nxdomainnodataBut the code only ever sets NameserverRecordState status to
"ok"(inbuildHostnameState(), line 346 of watcher.go). The values"nxdomain"and"nodata"are never written anywhere in the watcher or state code.3. "Empty response" detection
The README states:
While a change from records to no-records would be caught by
detectRecordChanges()as a generic record change, it is not specifically identified or labeled as a NODATA/NXDOMAIN event.Impact
Users expect these features to work as documented. The README is the primary documentation.
Recommendation
Either implement the features or update the README to remove the claims. For 1.0 MVP, removing the unimplemented items from the README is probably the faster path.
Category
Should-fix before 1.0.