File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -539,15 +539,18 @@ func ApplyPlan(
539539 if err := SaveState (gitDir , stateFile ); err != nil {
540540 cfg .Warningf ("failed to update modify state: %s" , err )
541541 }
542- } else {
543- ClearState (gitDir )
544542 }
545543
546544 // Save stack metadata — this must succeed since git refs have been rewritten
547545 if err := stack .SaveWithLock (gitDir , sf , lock ); err != nil {
548546 return nil , nil , fmt .Errorf ("saving stack metadata: %w" , err )
549547 }
550548
549+ // Clear state after metadata save succeeds to preserve --abort recovery
550+ if ! needsSubmit {
551+ ClearState (gitDir )
552+ }
553+
551554 return result , nil , nil
552555}
553556
@@ -842,15 +845,18 @@ func ContinueApply(
842845 if err := SaveState (gitDir , state ); err != nil {
843846 cfg .Warningf ("failed to update modify state: %s" , err )
844847 }
845- } else {
846- ClearState (gitDir )
847848 }
848849
849850 // Save stack metadata
850851 if err := stack .SaveWithLock (gitDir , sf , lock ); err != nil {
851852 cfg .Warningf ("failed to save stack: %v" , err )
852853 }
853854
855+ // Clear state after metadata save succeeds to preserve --abort recovery
856+ if ! needsSubmit {
857+ ClearState (gitDir )
858+ }
859+
854860 cfg .Successf ("Stack modified successfully" )
855861 if needsSubmit {
856862 cfg .Printf ("" )
You can’t perform that action at this time.
0 commit comments