Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion spec/SDD-Keylime-Monitoring-Tool.md
Original file line number Diff line number Diff line change
Expand Up @@ -1105,7 +1105,7 @@ Maximum 5 parallel concurrent log fetches to the Verifier API, enforced via Toki
| FR-011 | 3.4.3 | `PUT /api/alerts/thresholds` |
| FR-012 | 3.3.2, 3.4.3 | Agent summary model, `GET /api/agents` |
| FR-013 | 3.4.2 | Paginated response format |
| FR-014 | 3.4.3 | Agent list query params (state, ip, uuid, policy, min_failures) |
| FR-014 | 3.4.3 | Agent list query params (state, ip, uuid, policy, min_failures); state filter grouped by Pull Mode (8 states) and Push Mode (4 states incl. Timeout) |
| FR-016 | 3.4.3 | `POST /api/agents/bulk` |
| FR-018 | 3.3.2, 3.4.3 | Full agent model, `GET /api/agents/:id` |
| FR-019 | 3.4.3, 3.6.1 | `POST /api/agents/:id/actions/:action` |
Expand Down
13 changes: 11 additions & 2 deletions spec/SRS-Keylime-Monitoring-Tool.md
Original file line number Diff line number Diff line change
Expand Up @@ -514,7 +514,7 @@ Feature: Configurable Alert Thresholds

### FR-012: Agent Fleet List View

**Description:** The System MUST display agents in a sortable, paginated table with columns: Agent ID, IP Address, Operational State, Last Attestation time, Assigned Policy, Failure Count, and Actions. Rows for agents in FAILED or INVALID_QUOTE states MUST be visually highlighted. Rows for agents in RETRY state MUST be highlighted with a warning indicator. The System MUST recognize all Keylime operational states including `Start` (1) and `Saved` (2). When the agent list fails to load, the System MUST display a descriptive error message instead of an empty table.
**Description:** The System MUST display agents in a sortable, paginated table with columns: Agent ID, IP Address, Operational State, Last Attestation time, Assigned Policy, Failure Count, and Actions. Rows for agents in FAILED or INVALID_QUOTE states MUST be visually highlighted. Rows for agents in RETRY state MUST be highlighted with a warning indicator. For push-mode (v3 API) agents, rows in FAIL (101) or TIMEOUT (103) states MUST be highlighted with a critical indicator. The System MUST recognize all Keylime operational states including `Start` (1) and `Saved` (2) for pull mode, and `Pass` (100), `Fail` (101), `Pending` (102), and `Timeout` (103) for push mode. When the agent list fails to load, the System MUST display a descriptive error message instead of an empty table.

**Trace:** Agent Fleet - List View

Expand All @@ -528,6 +528,9 @@ Feature: Agent Fleet List View
And agents in FAILED state MUST display with a critical/danger indicator
And agents in RETRY state MUST display with a warning indicator
And agents in START or SAVED state MUST display with an informational indicator
And push-mode agents in PASS state MUST display with a success indicator
And push-mode agents in FAIL or TIMEOUT state MUST display with a critical indicator
And push-mode agents in PENDING state MUST display with an informational indicator
And each row MUST show Agent ID, IP, State, Last Attest, Policy, Failures, and Actions

Scenario: Verifier API unavailable for agent list
Expand Down Expand Up @@ -575,7 +578,7 @@ Feature: Agent List Pagination

### FR-014: Advanced Multi-Criteria Agent Filtering

**Description:** The System MUST allow filtering the agent fleet by multiple criteria simultaneously: Agent UUID (exact or partial), IP Address (CIDR range), Operational State (multi-select), Verifier Assignment, IMA Policy, MB Policy, Last Attestation time range, Failure Count (min/max), Registration Date range, and API Version.
**Description:** The System MUST allow filtering the agent fleet by multiple criteria simultaneously: Agent UUID (exact or partial), IP Address (CIDR range), Operational State (multi-select), Verifier Assignment, IMA Policy, MB Policy, Last Attestation time range, Failure Count (min/max), Registration Date range, and API Version. The Operational State filter MUST present all pull-mode states (Get Quote, Provide V, Registered, Failed, Retry, Terminated, Invalid Quote, Tenant Failed) and all push-mode states (Pass, Fail, Pending, Timeout) grouped by mode.

**Trace:** Agent Fleet - Filtering and Search

Expand All @@ -594,6 +597,12 @@ Feature: Advanced Agent Filtering
Then the agent list MUST display an empty state with message "No agents match the selected filters"
And a "Clear Filters" button MUST be available

Scenario: Filter by push-mode Timeout state
Given the fleet contains push-mode agents in PASS, FAIL, PENDING, and TIMEOUT states
When the user selects state filter "TIMEOUT" from the Push Mode group
Then only agents in TIMEOUT (103) state MUST be displayed
And pull-mode agents MUST be hidden

Scenario: Filter by failure count threshold
Given the fleet contains agents with failure counts 0, 1, 3, 5
When the user sets the failure count minimum to 3
Expand Down
Loading