dashboard and status API show why a check failed (closes #225)
check / check (push) Canceled after 0s

/api/v1/status now gives `error` for each nameserver entry and
certificate entry whose status is `error`, copied from the state, which
already kept it. The dashboard shows that reason in place of the records
for a failed nameserver, which used to show the same `-` as one that
answered with no records, and across the CN, issuer and expiry cells
for a failed certificate. The dashboard stylesheet is a trimmed build,
so the new markup uses only classes the page already had. README Web
Dashboard and HTTP API say so.

Model: opus-5-5
This commit is contained in:
2026-10-02 06:00:58 +00:00
parent a18803ff28
commit 8b816f82a0
6 changed files with 219 additions and 2 deletions
@@ -146,7 +146,11 @@
<td
class="py-2 px-3 text-slate-400 break-all max-w-xs"
>
{{ if $nsr.Error }}
<span class="text-red-400">{{ $nsr.Error }}</span>
{{ else }}
{{ formatRecords $nsr.Records }}
{{ end }}
</td>
<td class="py-2 px-3 text-slate-500 whitespace-nowrap">
{{ relTime $nsr.LastChecked }}
@@ -258,6 +262,11 @@
>
{{ end }}
</td>
{{ if $cs.Error }}
<td colspan="3" class="py-2 px-3 text-red-400 break-all">
{{ $cs.Error }}
</td>
{{ else }}
<td class="py-2 px-3 text-slate-200">
{{ $cs.CommonName }}
</td>
@@ -285,6 +294,7 @@
{{ end }}
{{ end }}
</td>
{{ end }}
<td class="py-2 px-3 text-slate-500 whitespace-nowrap">
{{ relTime $cs.LastChecked }}
</td>