internal/gui: surface warn status + new voice tests in Classic UI
Frontend now renders three-tier status (passed/warn/failed) instead of
two. Warn rows get a yellow exclamation-mark dot, expand by default to
show the hint, and contribute to a new "(with warnings)" suffix on the
"All checks passed" header.
Test catalog gains "voice-quality" and "voice-srv" rows replacing the
single "stun" row, in the same position (after udp, before api). RU
descriptions explain what each test actually probes.
useDrover's lastSummary now reports {total, failed, warnings} so the
Classic header can pick the right tier color.
App.go counts StatusWarn as passed in the final {passed, failed} summary
emitted via "check:done" — warn is a soft pass per spec.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
+5
-3
@@ -68,8 +68,8 @@ type Config struct {
|
||||
// for them on the "check:result" event. Mirrors checker.Result but with
|
||||
// Duration converted to milliseconds (int) for the JS side.
|
||||
type CheckResult struct {
|
||||
ID string `json:"id"` // tcp / greet / auth / connect / udp / stun / api
|
||||
Status string `json:"status"` // running | passed | failed | skipped
|
||||
ID string `json:"id"` // tcp / greet / auth / connect / udp / voice-quality / voice-srv / api
|
||||
Status string `json:"status"` // running | passed | warn | failed | skipped
|
||||
Metric string `json:"metric,omitempty"`
|
||||
Error string `json:"error,omitempty"`
|
||||
Hint string `json:"hint,omitempty"`
|
||||
@@ -136,7 +136,9 @@ func (a *App) RunCheck(cfg Config) {
|
||||
Attempt: r.Attempt,
|
||||
})
|
||||
switch r.Status {
|
||||
case checker.StatusPassed:
|
||||
case checker.StatusPassed, checker.StatusWarn:
|
||||
// Warn is a "soft pass" — counted as passed for the
|
||||
// final summary, but the row still surfaces the hint.
|
||||
passed++
|
||||
case checker.StatusFailed:
|
||||
failed++
|
||||
|
||||
Reference in New Issue
Block a user