Skip to content

refactor(orchestrator): report startup rollback failures - #485

Merged
LukeMathWalker merged 1 commit into
mainfrom
refactor/orchestrator-explicit-startup-rollback
Aug 10, 2026
Merged

refactor(orchestrator): report startup rollback failures#485
LukeMathWalker merged 1 commit into
mainfrom
refactor/orchestrator-explicit-startup-rollback

Conversation

@LukeMathWalker

Copy link
Copy Markdown
Contributor

Why

Normal startup failures relied on StartupGuard::drop, which cannot return cleanup errors and may hide blocking rollback work in destructor control flow. Complete rollback should be an explicit lifecycle transition, while Drop should remain only a fail-closed backstop.

What Changed

  • run one explicit rollback path for every guarded startup failure
  • report planning/startup failures together with rollback failures
  • propagate the combined error through the Firma stack boundary
  • reserve Drop for hard termination and collection handoff
  • retain durable state when destructor cleanup cannot prove safe deletion

Risks / Notes

This changes the error structure when both startup and rollback fail: callers now receive StartError::Rollback instead of only the initiating error. This is the third PR in the lifecycle-ownership stack and targets #484.

AI Assistance

Implementation assisted by OpenAI GPT-5.4.

@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch from 46badc1 to 86970bb Compare August 10, 2026 06:42
@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch 2 times, most recently from d675316 to abbe609 Compare August 10, 2026 07:01
@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch from abbe609 to a5134bb Compare August 10, 2026 08:43
@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch from a5134bb to ea36666 Compare August 10, 2026 14:59
@LukeMathWalker
LukeMathWalker marked this pull request as ready for review August 10, 2026 15:15
@LukeMathWalker
LukeMathWalker added this pull request to the merge queue Aug 10, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue because the pull requests in the stack were not ordered correctly in the queue Aug 10, 2026
@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch from ea36666 to f749f8b Compare August 10, 2026 15:21
Base automatically changed from refactor/orchestrator-detached-launch-guard to main August 10, 2026 16:33
@LukeMathWalker
LukeMathWalker force-pushed the refactor/orchestrator-explicit-startup-rollback branch from f749f8b to ed9e8a1 Compare August 10, 2026 16:33
@LukeMathWalker
LukeMathWalker added this pull request to the merge queue Aug 10, 2026
Merged via the queue into main with commit ed7b3b6 Aug 10, 2026
28 of 29 checks passed
@LukeMathWalker
LukeMathWalker deleted the refactor/orchestrator-explicit-startup-rollback branch August 10, 2026 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant