36 lines
1.7 KiB
Markdown
36 lines
1.7 KiB
Markdown
# Approvals Inbox with Diff-First Presentation
|
|
|
|
## Module
|
|
Web
|
|
|
|
## Status
|
|
IMPLEMENTED
|
|
|
|
## Description
|
|
Approvals inbox showing pending approval requests with diff-first card design highlighting what changed, enabling quick triage of release promotion requests.
|
|
|
|
## Implementation Details
|
|
- **Feature directory**: `src/Web/StellaOps.Web/src/app/features/approvals/`
|
|
- **Routes**: `approvals.routes.ts`
|
|
- **Components**:
|
|
- `approval-detail-page` (`src/Web/StellaOps.Web/src/app/features/approvals/approval-detail-page.component.ts`)
|
|
- `approval-detail` (`src/Web/StellaOps.Web/src/app/features/approvals/approval-detail.component.ts`)
|
|
- `approvals-inbox-page` (`src/Web/StellaOps.Web/src/app/features/approvals/approvals-inbox-page.component.ts`)
|
|
- `approvals-inbox` (`src/Web/StellaOps.Web/src/app/features/approvals/approvals-inbox.component.ts`)
|
|
- `request-exception-modal` (`src/Web/StellaOps.Web/src/app/features/approvals/modals/request-exception-modal.component.ts`)
|
|
- **Source**: SPRINT_20260118_005_FE_approvals_feature.md
|
|
|
|
## E2E Test Plan
|
|
- **Setup**:
|
|
- [ ] Log in with a user that has appropriate permissions
|
|
- [ ] Navigate to `/approvals`
|
|
- [ ] Ensure test data exists (scanned artifacts, SBOM data, or seed data as needed)
|
|
- **Core verification**:
|
|
- [ ] Verify side-by-side comparison view renders correctly with two versions
|
|
- [ ] Verify additions, removals, and changes are visually highlighted
|
|
- [ ] Verify diff data matches the expected delta between versions
|
|
- **Edge cases**:
|
|
- [ ] Verify graceful handling when backend API is unavailable (error state)
|
|
- [ ] Verify responsive layout at different viewport sizes
|
|
- [ ] Verify accessibility (keyboard navigation, screen reader labels, ARIA attributes)
|