@tdd_issue @tdd_issue_822 @tdd_issue_4178
Feature: TDD Issue #822 — checkpoint rollback is simulated, does not execute real git reset
  As a developer
  I want to verify that CheckpointService.rollback_to_checkpoint()
  actually restores file system state via git reset --hard
  So that rollback is not merely simulated and the bug is captured

  The rollback_to_checkpoint() method constructs a RollbackResult with
  checkpoint metadata but skips the real git reset --hard operation.
  After rollback, files modified since the checkpoint should be reverted
  to their checkpoint-time content.  Currently they are not, proving the
  bug exists.

  @tdd_issue @tdd_issue_4276
  Scenario: Rollback restores file content to checkpoint state
    Given a temporary git workspace with an initial committed file
    And a checkpoint is created from the current commit
    And the tracked file is modified after the checkpoint
    When I invoke rollback_to_checkpoint targeting the checkpoint
    Then the tracked file content should match the checkpoint state

  @tdd_issue @tdd_issue_4276
  Scenario: Rollback removes files added after the checkpoint
    Given a temporary git workspace with an initial committed file
    And a checkpoint is created from the current commit
    And a new file is added and committed after the checkpoint
    When I invoke rollback_to_checkpoint targeting the checkpoint
    Then the new file should not exist in the workspace
