feat(cli): add stack restart - #6603
Merged
Merged
Conversation
Contributor
There was a problem hiding this comment.
🤖 AI Review
All seven source findings were verified and deduplicated into six entries: four confirmed and two refuted. The confirmed issues are two minor behavioral/error-handling concerns and two coverage/help-text nits; no critical or major defect was verified.
Findings
| Severity | Location | Category | Sources | Claim |
|---|---|---|---|---|
| 🟡 MINOR | apps/cli/src/commands/experimental/stack/restart/restart.handler.ts:146 |
behavior |
claude | Restart can re-enable capabilities previously disabled through one-off stack start --exclude flags without warning. |
| 🟡 MINOR | apps/cli/src/commands/experimental/stack/restart/restart.handler.ts:75 |
error-handling |
claude+codex | Known StackRuntimeError and StackCleanupError failures lose the actionable recovery guidance provided by sibling lifecycle commands. |
| ⚪ NIT | apps/cli/src/commands/experimental/stack/restart/restart.command.ts:8 |
help-text |
claude | The --stack flag description does not state that omitting it targets the current project's stack. |
| ⚪ NIT | apps/cli/src/commands/experimental/stack/restart/restart.integration.test.ts:177 |
test-coverage |
claude | The restart handler suite lacks direct coverage for conflicting target flags, legacy output-flag rejection, and an inspectStack failure on the ID-target path. |
Refuted findings (kept for transparency, not posted as review comments)
apps/cli/src/commands/experimental/stack/restart/restart.handler.ts:149(consistency): Clearing the successful restart task instead of completing it is inconsistent with stack lifecycle output conventions.
Refuted: The surrounding stack commands establish both output patterns: stop.handler.ts:141 and 181 and destroy.handler.ts:131 clear their tasks before emitting dedicated text results. Restart likewise immediately renders a full status block, so clearing avoids a redundant completion line and is consistent with those siblings.apps/cli/docs/stack-commands.md:155(documentation): The restart documentation is placed under an unrelated "Service selection and shutdown" heading.
Refuted: The paragraph explicitly explains selecting a stack, stopping it, starting it again, and how service-selection flags are handled. Those subjects directly match the section's "Service selection and shutdown" heading.
Stats
Claude findings: 6 · Codex findings: 1 · Confirmed: 4 · Refuted: 2 · Uncertain: 0
Models: claude-opus-5 + gpt-5.6-sol · Trigger: auto · Workflow run
This review runs once per PR. A maintainer can request another with a /ai-review comment.
Coly010
approved these changes
Sep 14, 2026
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add
supabase stack restartfor an existing managed stack, selected by the current project,--stack, or--stack-id. It stops and starts the same stack using its saved effective configuration, preserving its identity, data, service exclusions, activation settings, and preparation policy.Restart does not reload project configuration or explicitly prepare artifacts. Runtime startup reuses cached artifacts and may fetch missing ones according to the saved policy. A normal
startstill loads project configuration and applies only its current flags, sostart --exclude studiofollowed bystopand a plainstartrestores Studio when enabled in project configuration.Stacks without a saved configuration are directed to
stack startbefore they can be restarted.Reimplemented directly on
developusing the current stack command infrastructure.Supersedes #6512