Skip to content

feat(cli): floo deploy --preflight replaces floo preflight - #398

Merged
pdonohoe02 merged 1 commit into
mainfrom
claude/project-thread-9c6u2q
Nov 7, 2026
Merged

pdonohoe02 merged 1 commit into
mainfrom
claude/project-thread-9c6u2q

Conversation

@pdonohoe02

Copy link
Copy Markdown
Contributor

Summary

floo deploy --preflight replaces floo preflight. It runs the same config checks, then shows what the deploy would do: the plan, or the first thing that would stop it. Nothing is created or pushed. This is the "Check before deploying" row of the deploy rework plan (getfloo/floo#4262, step 4).

Issue Closure

Part of getfloo/floo#4262 (step 4, cut the old surface). Does not close it.

Changes

  • floo deploy --preflight prints the full preflight report (findings, runtime plan, env plan, the server's runtime plan for an existing app) and adds deploy_plan to the JSON: the API plan when signed in, or the stop the deploy would hit first (NOT_A_GIT_REPOSITORY, NO_COMMITS, UNCOMMITTED_CHANGES, SECRET_FILES_NOT_IGNORED, NOT_AUTHENTICATED) with next. The config checks need neither git nor sign-in, so they run on a folder that isn't committed yet. An invalid config exits 1 and never asks for the plan.
  • --env dev|prod|preview resolves another environment's runtime values; clap only accepts it with --preflight. --name stands in for the old --app. --service is gone because a deploy builds every service.
  • The checks follow a git-push deploy, so a missing env_file no longer fails them (env files stay local). The upload-deploy env-file tests now run against floo redeploy --preflight, which still uploads until the redeploy fold.
  • floo preflight fails with COMMAND_REMOVED and names floo deploy --preflight (src/commands/removed.rs). Auth-exempt list, skill permissions and the floo init next step are updated.
  • Real deploys are unchanged: the folder checks moved into folder_blocker, which both paths share.

Test Plan

  • cargo fmt --check, cargo clippy --all-targets -- -D warnings, cargo test (all suites pass).
  • New: preflight_checks_the_config_then_shows_the_plan_and_changes_nothing (report plus plan, no create or push, invalid config never plans) and preflight_runs_the_config_checks_before_the_folder_is_a_repository (plan names the git step; --env needs --preflight).
  • Existing preflight tests now call floo deploy --preflight. Tests that ran from a nested directory with --app run at the repository root with --name, since floo deploy reads floo.app.toml there.

Discovered Issues

  • The floo API hints, KB and floo-docs pages still say floo preflight. They move to floo deploy --preflight in follow-up PRs once this merges.

Generated by Claude Code

floo deploy --preflight runs the config checks floo preflight ran, then
shows what the deploy would do: the plan, or the first thing that would
stop it (no repository, no commit, uncommitted work, not signed in).
The config checks need neither git nor sign-in, so they run on a folder
that isn't committed yet. --env resolves another environment's runtime
values and only applies with --preflight. --name replaces --app; deploy
checks every service, so --service is gone.

The checks follow a git-push deploy: env files stay local, so a missing
env_file no longer fails them. floo preflight fails with COMMAND_REMOVED
naming floo deploy --preflight.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Eufw476uDAxxXQi632Y2Eq
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Codex Review Summary: ✅ Completed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-07T19:32:07.831092Z 6ee7154 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@pdonohoe02
pdonohoe02 merged commit 9e28473 into main Nov 7, 2026
6 checks passed
@pdonohoe02
pdonohoe02 deleted the claude/project-thread-9c6u2q branch November 7, 2026 19:39
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.

2 participants