Skip to content

Implement Checkpoint diff preview and proper delete confirmation dialog #47

Description

@frankbria

Problem

CheckpointList component shows checkpoint metadata but lacks diff preview and uses browser's native confirm dialog for deletion.

Affected Tests

  1. test_checkpoint_ui.spec.ts:122 - should display checkpoint diff preview
  2. test_checkpoint_ui.spec.ts:167 - should allow deleting checkpoint

Current State

CheckpointList displays:

  • ✅ Checkpoint metadata (name, timestamp, git SHA)
  • ❌ Git diff preview
  • ❌ Custom delete confirmation dialog (uses window.confirm())

Proposed Solution

  1. Git Diff Preview

    • Show git diff when checkpoint is clicked/expanded
    • Display files changed, additions, deletions
    • Handle "no changes" case
    • Testids: checkpoint-diff, no-changes-message
  2. Custom Delete Dialog

    • Replace window.confirm() with custom React dialog
    • Show delete warning message
    • Confirm/cancel buttons
    • Testids: delete-confirmation-dialog, delete-warning, delete-confirm-button, delete-cancel-button

Acceptance Criteria

  • Checkpoint diff preview displays on expand
  • Diff shows files changed or "no changes" message
  • Custom delete dialog replaces browser confirm
  • All testids implemented
  • Both E2E tests pass
  • Skip decorators removed

Files

  • tests/e2e/test_checkpoint_ui.spec.ts:122,167 (tests)
  • CheckpointList component (implementation)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions