Feature: Plan Resume Service - Coverage Boost As a developer I want to ensure all validation error branches in PlanResumeService are tested So that edge-case error handling is verified # --- __init__ validation (line 75) --- Scenario: Creating PlanResumeService with None lifecycle_service raises ValidationError When I try to create a PlanResumeService with None lifecycle_service Then a coverage-boost ValidationError should be raised with message "lifecycle_service must not be None" # --- get_resume_metadata validation (line 93) --- Scenario: Getting resume metadata with empty plan_id raises ValidationError Given I have a coverage-boost PlanResumeService When I try to get resume metadata with empty plan_id Then a coverage-boost ValidationError should be raised with message "plan_id must not be empty" # --- build_resume_summary validation (line 186) --- Scenario: Building resume summary with empty plan_id raises ValidationError Given I have a coverage-boost PlanResumeService When I try to build resume summary with empty plan_id Then a coverage-boost ValidationError should be raised with message "plan_id must not be empty" # --- record_step_checkpoint validation (lines 303, 305, 307, 309) --- Scenario: Recording step checkpoint with empty plan_id raises ValidationError Given I have a coverage-boost PlanResumeService When I try to record a step checkpoint with empty plan_id Then a coverage-boost ValidationError should be raised with message "plan_id must not be empty" Scenario: Recording step checkpoint with negative step_index raises ValidationError Given I have a coverage-boost PlanResumeService And I have a coverage-boost plan in execute phase When I try to record a step checkpoint with step_index -1 Then a coverage-boost ValidationError should be raised with message "step_index must be >= 0" Scenario: Recording step checkpoint with empty decision_id raises ValidationError Given I have a coverage-boost PlanResumeService And I have a coverage-boost plan in execute phase When I try to record a step checkpoint with empty decision_id Then a coverage-boost ValidationError should be raised with message "decision_id must not be empty" Scenario: Recording step checkpoint with empty step_text raises ValidationError Given I have a coverage-boost PlanResumeService And I have a coverage-boost plan in execute phase When I try to record a step checkpoint with empty step_text Then a coverage-boost ValidationError should be raised with message "step_text must not be empty" # --- record_shutdown validation (line 354) --- Scenario: Recording shutdown with empty plan_id raises ValidationError Given I have a coverage-boost PlanResumeService When I try to record shutdown with empty plan_id Then a coverage-boost ValidationError should be raised with message "plan_id must not be empty" # --- set_total_steps validation (line 384) --- Scenario: Setting total steps with negative value raises ValidationError Given I have a coverage-boost PlanResumeService And I have a coverage-boost plan in execute phase When I try to set total steps to -1 Then a coverage-boost ValidationError should be raised with message "total must be >= 0"