Commit 2eb30cc
feat(frontend): Add ComplianceScanWizard with per-host progress tracking
Implement a new 4-step compliance scan wizard with comprehensive
per-host progress tracking and cancellation support:
New Files:
- ComplianceScanWizard.tsx: Main wizard component with stepper UI
- useScanWizard.ts: Custom hook for wizard state management
- TargetSelectionStep.tsx: Host/group selection (step 1)
- FrameworkConfigStep.tsx: Framework/platform configuration (step 2)
- RuleConfigStep.tsx: Rule selection for custom scans (step 3)
- ReviewStartStep.tsx: Summary review and scan execution (step 4)
Features:
- Per-host scan status tracking (pending/connecting/scanning/completed/failed/cancelled)
- Visual progress indicators with icons for each status
- Cancel scan functionality with backend API integration
- Sequential scan execution to avoid overwhelming targets
- JIT platform detection for hosts without OS discovery data
- SSH connection params passed to backend for remote execution
- Pre-flight validation dialog integration
Updated scanService.ts:
- Added ConnectionParams interface for SSH configuration
- Added startComplianceScan() method with connection params support
- Extended WizardHost interface with SSH fields (ipAddress, port, username, authMethod)
Technical Details:
- Uses React refs for cancellation state across async iterations
- Tracks started scan IDs for cleanup on cancellation
- Shows summary with completed/failed/cancelled counts
- MUI components: Stepper, LinearProgress, Chip, List for UI
Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>1 parent f8c6635 commit 2eb30cc
7 files changed
Lines changed: 3710 additions & 10 deletions
File tree
- frontend/src
- pages/scans
- components
- hooks
- services
0 commit comments