Private
Public Access
1
0

feat: add CRL health status schema and UI (PR 3 of 6)
All checks were successful
CI Pipeline / Rust Format Check (push) Successful in 5s
CI Pipeline / Clippy Lints (push) Successful in 52s
CI Pipeline / Rust Unit Tests (push) Successful in 1m8s
CI Pipeline / Security Audit (push) Successful in 5s
CI Pipeline / Frontend Lint & Type Check (push) Successful in 15s
CI Pipeline / Build .deb & Release (push) Has been skipped

* feat: add CRL health status schema and UI (PR 3 of 6)

* fix(lint): strict equality for crl_age_seconds

---------

Co-authored-by: Draco Lunaris <331325+Draco-Lunaris@users.noreply.github.com>
This commit is contained in:
Draco-Lunaris-Echo
2026-06-05 16:17:17 -05:00
committed by GitHub
parent 5aec9e629c
commit ea8337b944
12 changed files with 345 additions and 78 deletions

View File

@ -141,6 +141,26 @@ Each job summary object includes:
| GET | `/reports/vulnerability` | Generate vulnerability exposure report |
| GET | `/reports/audit` | Generate audit trail report |
### CRL Status Fields
Host list and detail responses include CRL (Certificate Revocation List) status fields:
| Field | Type | Description |
|-------|------|-------------|
| `crl_status` | `string?` | CRL status: `valid`, `expired`, `missing`, `invalid`, or `null` (older agents) |
| `crl_age_seconds` | `integer?` | Seconds since the agent's CRL was last refreshed |
| `crl_next_update` | `datetime?` | When the agent's CRL expires (ISO-8601) |
Fleet status response includes CRL counts:
| Field | Type | Description |
|-------|------|-------------|
| `crl_valid` | `integer` | Hosts with CRL status `valid` |
| `crl_expired` | `integer` | Hosts with CRL status `expired` |
| `crl_missing` | `integer` | Hosts with CRL status `missing` |
| `crl_invalid` | `integer` | Hosts with CRL status `invalid` (security event) |
| `crl_not_reporting` | `integer` | Hosts not reporting CRL status (older agents) |
## 14. Real-Time Updates (WebSocket)
| Method | Endpoint | Description |
|--------|----------|-------------|