refactor(stack): consolidate local lifecycle ownership - #6085
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 3e5662291a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…-model # Conflicts: # packages/stack/README.md # packages/stack/docs/architecture.md
…ementation # Conflicts: # packages/process-compose/src/Orchestrator.ts # packages/process-compose/src/Orchestrator.unit.test.ts # packages/stack/src/Stack.unit.test.ts
…-model # Conflicts: # packages/stack/src/versions.ts
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fa591c0c79
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…/process-compose-supervisor-cleanup
…/stack-runtime-implementation # Conflicts: # packages/process-compose/src/Orchestrator.ts # packages/process-compose/src/Orchestrator.unit.test.ts
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 77782dfe2f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…/process-compose-supervisor-cleanup # Conflicts: # packages/process-compose/src/ServiceTransition.ts
…ack-runtime-implementation # Conflicts: # packages/stack/tests/createStack-docker.e2e.test.ts
…-cleanup' into agent/stack-runtime-implementation # Conflicts: # packages/stack/src/StackBuilder.ts # packages/stack/src/StackBuilder.unit.test.ts
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e403043044
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…correctness' into agent/process-compose-supervisor-cleanup
…-cleanup' into agent/stack-runtime-implementation # Conflicts: # packages/stack/src/StackLifecycleCoordinator.ts
…/process-compose-supervisor-cleanup
…ack-runtime-implementation # Conflicts: # packages/stack/src/StackBuilder.ts # packages/stack/src/StackBuilder.unit.test.ts
…/process-compose-supervisor-cleanup
…ack-runtime-implementation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 24a9dca0e2
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
|
Codex Review: Didn't find any major issues. Delightful! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
…-model # Conflicts: # packages/stack/src/ServiceActivation.ts # packages/stack/src/StackBuilder.ts # packages/stack/src/StackLifecycleCoordinator.ts
…gent/process-compose-supervisor-cleanup # Conflicts: # packages/process-compose/docs/architecture.md # packages/process-compose/src/Orchestrator.ts # packages/process-compose/src/ServiceTransition.ts # packages/stack/src/ServiceActivation.ts # packages/stack/src/StackBuilder.ts # packages/stack/src/StackLifecycleCoordinator.ts
…-cleanup' into agent/stack-runtime-implementation # Conflicts: # packages/stack/src/ServiceActivation.ts # packages/stack/src/StackLifecycleCoordinator.ts
Supabase CLI previewnpx --yes https://pkg.pr.new/supabase/cli/supabase@2434029bd44a69449f94c09de8a350261afe1470Preview package for commit |
…e-implementation # Conflicts: # packages/stack/README.md # packages/stack/docs/architecture.md # packages/stack/src/Stack.ts # packages/stack/src/StackBuilder.ts # packages/stack/src/StackConfig.ts # packages/stack/src/StackConfig.unit.test.ts # packages/stack/src/StackLifecycleCoordinator.ts # packages/stack/src/createStack.ts # packages/stack/src/createStack.unit.test.ts # packages/stack/src/daemon.ts
## What changed - makes StackBuilder the sole owner of dependency topology and passes explicit dependencies into every service factory, including the native-initialization versus Docker-readiness choice for PostgREST - moves Docker network and port argument construction into service factories and migrates PostgreSQL, Auth, and PostgREST onto the common Docker definition helper - centralizes container identity so launch, exact cleanup, orphan cleanup, and catalog-derived candidate cleanup use the same naming source - captures exact build-produced cleanup targets before persistence and orchestrator setup, and disposes already-started resources after any partial startup failure - expands semantic service-definition coverage and documents the exact-versus-candidate cleanup model ## Why Service construction and resource identity were split across the builder, individual factories, and fallback cleanup code. Keeping topology in the builder while concentrating executable details and Docker identity in factories makes service definitions easier to change safely, prevents launch and cleanup names from drifting, and ensures failed startup cannot leave an earlier service running. Depends on supabase#6085 and supabase#6084 (and transitively supabase#6081, supabase#6080, and supabase#6078).
What changed
Why
Lifecycle state previously had redundant interface layers and readiness deadlines were enforced only by the Promise adapter. Keeping policy and cleanup inside the single runtime owner makes every adapter observe the same semantics and prevents a timed-out runtime from relaunching resources after cleanup.
Depends on #6081 and #6080 (and transitively #6078).