LinkDesk/.kiro/specs/recovery-management-rename/tasks.md

5.8 KiB

Implementation Plan

Overview

This implementation plan covers renaming "Deleted Items Management" to "Recovery Management" and adding permanent delete functionality for soft-deleted items. The tasks are organized to first implement the terminology changes, then add the hard delete features.

Tasks

  • 1. Update navigation and routing terminology

    • Update AppSidebar navigation item from "Deleted Items" to "Recovery Management"
    • Preserve existing route paths for backward compatibility
    • Update browser tab titles and page metadata
    • Requirements: 1.1, 1.2, 1.3, 5.1, 5.2, 5.3
  • * 1.1 Write property test for navigation terminology

    • Property 1: Navigation displays recovery terminology
    • Validates: Requirements 1.1
  • 2. Update main recovery management page terminology

    • Update page title from "Deleted Items Management" to "Recovery Management"
    • Revise page description to use recovery-focused language
    • Update loading messages, empty states, and filter labels
    • Update all user-facing text to use recovery terminology
    • Requirements: 1.4, 2.1, 2.2, 2.3, 2.4, 2.5, 3.1, 3.2, 3.3, 3.4, 3.5
  • * 2.1 Write property test for page content terminology

    • Property 3: Page content uses recovery terminology
    • Validates: Requirements 1.4, 2.2, 2.5, 3.2, 3.3, 3.4, 3.5
  • 3. Verify existing functionality preservation

    • Test that all existing API endpoints continue to work
    • Verify navigation and routing functionality is preserved
    • Ensure component interfaces remain unchanged
    • Requirements: 4.1, 4.2, 4.3, 4.4, 4.5
  • * 3.1 Write property test for API endpoint preservation

    • Property 4: API endpoints remain functional
    • Validates: Requirements 4.2, 4.3
  • 4. Checkpoint - Verify terminology updates

    • Ensure all tests pass, ask the user if questions arise.
  • 5. Design permanent delete confirmation dialog

    • Create PermanentDeleteConfirmDialog component
    • Implement warning messages about irreversible data loss
    • Add support for both individual and bulk operations
    • Include confirmation token generation for security
    • Requirements: 6.3, 8.1
  • 6. Implement backend permanent delete service

    • Add permanent delete methods to recovery service
    • Implement cascading deletion for related data (tasks, submissions, attachments, notes, reviews)
    • Add file system cleanup for associated files
    • Ensure transactional integrity with rollback on failure
    • Add audit logging for permanent deletion operations
    • Requirements: 6.4, 7.1, 7.2, 7.3, 7.4, 7.5, 8.1, 8.3, 8.4
  • * 6.1 Write property test for cascading deletion

    • Property 5: Permanent deletion removes all related data
    • Validates: Requirements 6.4, 7.1, 7.2, 7.3, 7.4
  • * 6.2 Write property test for transactional deletion

    • Property 6: Permanent deletion is transactional
    • Validates: Requirements 8.1, 8.4
  • 7. Add permanent delete API endpoints

    • Create DELETE endpoints for permanent shot deletion
    • Create DELETE endpoints for permanent asset deletion
    • Add bulk permanent delete endpoints
    • Implement proper error handling and validation
    • Add rate limiting for permanent delete operations
    • Requirements: 6.4, 8.1, 8.4
  • 8. Update recovery management interface with permanent delete actions

    • Add "Permanent Delete" buttons to individual item cards
    • Add bulk permanent delete option when items are selected
    • Integrate confirmation dialog into the workflow
    • Update success/error messaging for permanent deletions
    • Remove permanently deleted items from the recovery list
    • Requirements: 6.1, 6.2, 6.5
  • * 8.1 Write property test for permanent delete UI actions

    • Property 7: Permanent delete actions are available
    • Validates: Requirements 6.1, 6.2
  • * 8.2 Write property test for confirmation workflow

    • Property 8: Permanent deletion requires confirmation
    • Validates: Requirements 6.3
  • * 8.3 Write property test for deletion feedback

    • Property 9: Permanent deletion provides feedback
    • Validates: Requirements 6.5, 8.3
  • 9. Implement permanent delete confirmation workflow

    • Wire up confirmation dialog to permanent delete actions
    • Implement confirmation token validation
    • Add loading states during permanent deletion
    • Handle success and error responses appropriately
    • Update UI state after successful permanent deletion
    • Requirements: 6.3, 6.5, 8.1, 8.4
  • 10. Add bulk permanent delete functionality

    • Implement bulk selection for permanent deletion
    • Add bulk confirmation dialog with item summary
    • Handle partial success/failure scenarios in bulk operations
    • Provide detailed feedback on bulk operation results
    • Requirements: 6.2, 6.5
  • 11. Checkpoint - Verify permanent delete functionality

    • Ensure all tests pass, ask the user if questions arise.
  • 12. Update documentation and help text

    • Add help text explaining permanent deletion consequences
    • Update any existing documentation references
    • Add tooltips and contextual help for permanent delete actions
    • Requirements: 6.3, 8.5
  • * 12.1 Write unit tests for permanent delete components

    • Test confirmation dialog rendering and behavior
    • Test permanent delete button states and interactions
    • Test bulk selection and permanent delete workflows
    • Requirements: 6.1, 6.2, 6.3
  • 13. Final integration testing

    • Test complete workflow from soft delete to permanent delete
    • Verify file system cleanup works correctly
    • Test error scenarios and rollback behavior
    • Verify audit logging is working properly
    • Requirements: 7.4, 8.1, 8.3, 8.4
  • 14. Final checkpoint - Complete system verification

    • Ensure all tests pass, ask the user if questions arise.