2026-08-16 - 2026-09-16
Overview
3 Pull requests merged by 1 user
Merged
#118 server: set ReadTimeout, WriteTimeout, and IdleTimeout (closes #99)
Merged
#136 next
Merged
#113 notify: drain in-flight deliveries at shutdown (closes #106)
12 Issues closed from 1 user
Closed
#99 http.Server is missing ReadTimeout, WriteTimeout, and IdleTimeout
Closed
#93 internal/resolver tests query live nameservers and fail nondeterministically
Closed
#102 Add the MIT LICENSE file and README licence statement (1.0 blocker)
Closed
#134 Run all linting in Docker via Dockerfile.lint + script/lint
Closed
#137 Stale/incorrect comment text in script/bootstrap and script/cibuild, and record the config-verify tradeoff
Closed
#139 make test is served from Go's test cache, so a repeat green proves no DNS was queried
Closed
#106 In-flight notification goroutines are not awaited at shutdown, so alerts are lost
Closed
#140 TODO.md collides on every single PR, and its Workflow section still says to branch from main
Closed
#141 tryExchange discards a prior attempt's timeout error on context cancellation, downgrading StatusTimeout to StatusNoData
Closed
#142 internal/server has no tests: deleting the SecurityHeaders router registration fails nothing
Closed
#143 Live-DNS test harness never retries an answer that is missing the record type under test, so TestQueryNameserver_TXT flakes
Closed
#135 TOP PRIORITY: consolidate all open PRs onto one next branch, one PR
4 Issues created by 0 users
Opened
#140 TODO.md collides on every single PR, and its Workflow section still says to branch from main
Opened
#141 tryExchange discards a prior attempt's timeout error on context cancellation, downgrading StatusTimeout to StatusNoData
Opened
#142 internal/server has no tests: deleting the SecurityHeaders router registration fails nothing
Opened
#143 Live-DNS test harness never retries an answer that is missing the record type under test, so TestQueryNameserver_TXT flakes
16 Unresolved Conversations
Open
#119
fmt tooling is incomplete: fmt-check does not verify goimports, and no formatter covers Markdown
Open
#121
script/lint shares one golangci-lint cache and lock across concurrent worktrees, so results can come from another codebase
Open
#130
Lint cache follow-ups: same-checkout runs abort instead of queueing, and make clean leaves .lint-cache/
Open
#131
build: always install pinned lint tools in script/bootstrap (closes #117)
Open
#138
queryServers always tries servers in fixed order, so every resolution starts at a.root-servers.net
Open
#112
feat: add security response headers middleware (closes #98)
Open
#115
script/cibuild can report a green it did not earn: RUN make check is served from the Docker layer cache
Open
#98
Add security response headers middleware (HSTS, CSP, X-Frame-Options, nosniff, Referrer-Policy, Permissions-Policy)
Open
#110
internal/globals, internal/healthcheck, and internal/logger have no tests at all
Open
#120
Server timeout tests protect the constructor but not the call site, and carry an inverted rationale comment
Open
#122
ci: re-run make check on every cibuild instead of serving it from the layer cache (closes #115)
Open
#117
script/bootstrap installs pinned tools only when missing, so the golangci-lint pin is inert on any machine that already has one
Open
#133
script/lint and script/fmt invoke golangci-lint and goimports by bare name, so a PATH shadow still overrides the pin
Open
#114
Final state persistence at shutdown depends on implicit fx hook ordering and is untested
Open
#116
internal/notify shutdown tests: misleading failure diagnostic and an overloaded timing constant
Open
#100
CORS wildcard applies to the authenticated /metrics route, and advertises methods that do not exist