Skip to content

feat: deploy is a button again — one visible action, honest feedback, no phantom docs - #160

Merged
lex00 merged 1 commit into
mainfrom
feat/deploy-is-a-button
Aug 7, 2026
Merged

feat: deploy is a button again — one visible action, honest feedback, no phantom docs#160
lex00 merged 1 commit into
mainfrom
feat/deploy-is-a-button

Conversation

@lex00

@lex00 lex00 commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Moving every write into the ⌘K palette (#73) left the header with zero action buttons: behold looked read-only unless you happened to press ⌘K, the docs still said "click Run floci-apply" about buttons that no longer existed, and an estate had three differently-named routes to the same apply.

  • The PRIMARY deploy gesture is a header button again: ▶ Deploy (<op>) for a committed ApplyOp (+ Approve <gate> beside it when gated), ▶ Deploy… (opens the dial's component picker) for a components-only project. One intent, one word — the tooltip carries the mechanism. Everything else stays in ⌘K.
  • The dial no longer vanishes wordlessly when no env is picked — it says what's missing and where to pick it.
  • Errors get a toast at the point of gesture, not only a line in a bottom log pane that is display:none until something writes to it; successes toast too, so a palette action no longer closes into dead air.
  • The Floci writes: delegated Adopt — foreign node → ReconcileOp → PR (#8) #16 warnings only appear when the estate actually targets Floci (server side landed in feat: the k3d/floci estates render whole — cluster root, helm releases, honest component status #159).
  • Docs describe the UI that exists: README, example-k8s/README, run-it.mdx, and acting.mdx's action table.

🤖 Generated with Claude Code

https://claude.ai/code/session_01NEtbXBSwLiYFMKv2o4VMb4

… no phantom docs

Moving every write into the ⌘K palette (#73) left the header with zero action
buttons: behold looked read-only unless you happened to press ⌘K, the docs
still said "click Run floci-apply" about buttons that no longer existed, and
an estate had three differently-named routes to the same apply. Concretely:

- The PRIMARY deploy gesture is a header button again. A committed ApplyOp
  gets `▶ Deploy (<op>)` (+ `Approve <gate>` beside it when gated); a
  project with only components gets `▶ Deploy…`, which opens the dial's
  component picker. One intent, one word — the tooltip carries the
  mechanism. Everything else stays in ⌘K.

- The dial no longer vanishes wordlessly when no env is picked — it says
  what's missing and where to pick it. A static export keeps the silence
  (there is genuinely nothing to offer).

- Errors get a toast at the point of gesture, not only a line in a bottom
  log pane that is display:none until something writes to it. Successes
  toast too ("running <op> — output streams in the log below"), so a
  palette action no longer closes into dead air.

- The Floci #16 warnings (re-apply collides on the emulator) only appear
  when the estate actually targets Floci — a k3d/helm estate used to be
  warned about an emulator it doesn't use, in dialogs and in the 409 (the
  server side of this gating landed in #159).

- Docs describe the UI that exists: README, example-k8s/README, run-it.mdx,
  and acting.mdx's action table (button vs palette, per action).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NEtbXBSwLiYFMKv2o4VMb4
@lex00
lex00 merged commit 938c9b5 into main Aug 7, 2026
3 checks passed
@lex00
lex00 deleted the feat/deploy-is-a-button branch August 7, 2026 05:41
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