Repository navigation
fix: refresh SSL status after check failures and config reloads - #299
Merged
Merged
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues were identified for the SSL certificate status changes.
No open issues 🎉
What changed in this PR
Fixes stale SSL certificate status reported in #297 by clearing failed check results, refreshing checks after configuration reloads, and displaying consistent status across the dashboard.
Changes:
- Reset certificate check state on reload while preserving notification cooldowns and discarding outdated in-flight results.
- Unify error, pending, and expiry status across desktop tables, mobile cards, and overview counts.
- Add backend and browser regression coverage for failures, recovery, reloads, and status updates.
| File | Description |
|---|---|
web/js/app.js |
Centralizes SSL status classification and hides stale expiry details on errors. |
tests/webui/ssl.spec.js |
Tests desktop/mobile status states and polling through failure and recovery. |
server/ssl.go |
Clears failed results, resets state on reload, and rejects obsolete check results. |
server/ssl_test.go |
Tests failure recovery, reload behavior, cooldown preservation, and in-flight checks. |
Review effort: Balanced
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem and behavior
A failed certificate check could retain a previous expiry timestamp, allowing the dashboard to show a healthy certificate after DNS, connection, or TLS failures. Reloading an unchanged certificate or changing its interval/callback could also preserve the previous check time and delay a new check.
Changes
Validation
go test -race ./...,go vet ./..., andCGO_ENABLED=0 go build -trimpathpassed.The current
status.shrestart function only invokessystemctl restart status-server; it is unchanged. The reporter's installed script/service version and live DNS environment were not available for deployment verification. Local Docker deployment tests were not run because Docker was unavailable; repository CI will run those checks.Fixes #297