Skip to content

Implement Progress Indication for Long-Running Operations #8

@BhoomiAgrawal12

Description

@BhoomiAgrawal12

Description

Long-running wipe operations (especially for large HDDs) currently show minimal progress feedback, leaving users uncertain about operation status and estimated completion time.

Current Behavior

  • Basic progress bar exists but may not update smoothly
  • No time estimate provided
  • No indication of current phase (preparation, wiping, verification)
  • Difficult to tell if operation is hung or progressing

Proposed Improvements

  1. Enhanced Progress Display

    • Percentage complete
    • Estimated time remaining
    • Current operation phase
    • Data throughput (MB/s)
    • Bytes written / total bytes
  2. Multi-Phase Progress

    • Show progress through multiple stages:
      • Device preparation
      • Security state check
      • Actual wiping
      • Verification (if enabled)
      • Certificate generation
  3. Visual Improvements

    • Use ncurses progress bars effectively
    • Show spinning indicator for operations without percentage
    • Update at reasonable intervals (avoid flicker)

Technical Considerations

  • Progress updates should not significantly impact wipe speed
  • Need to query wipe progress from various commands (hdparm, dd, etc.)
  • Handle cases where progress cannot be determined

Acceptance Criteria

  • Progress percentage shown for all wipe types
  • Time remaining estimate (can be rough)
  • Current phase clearly indicated
  • Progress updates smoothly without flickering
  • Tested on operations taking >10 minutes

User Impact

High - Users frequently interrupt operations thinking they've hung when they're actually progressing normally.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions