Skip to content

fix(app): settings, terminal, connection and composer say what they can and can't do - #589

Merged
iamnbutler merged 4 commits into
mainfrom
fix-settings-terminal
Oct 22, 2026
Merged

iamnbutler merged 4 commits into
mainfrom
fix-settings-terminal

Conversation

@iamnbutler

Copy link
Copy Markdown
Contributor

Settings, terminal, connection, and composer fixes from the Ace flow map: ^52 ^761 ^791 ^399 ^418 ^425 ^491 ^492 ^508 ^511.

  • ^52 Settings → Providers hides Add/Replace key while an environment variable overrides the Keychain key.
  • ^761 The terminal follows a live theme switch. It now reads tokens after ThemeProvider's layout effect has toggled dark.
  • ^791 The deployed web app separates two cases. When the host answers HTTP but refuses the WebSocket, it says " refused this web app. On that host, run ace web <origin>, then reload." The Tailscale hint is kept for a host that can't be reached.
  • ^399 A rename refusal clears as soon as you type.
  • ^418 Archive inactive is in the Channels section's ⋯ menu.
  • ^425 An empty Move to… item says "no available destinations" and explains what would let a channel move.
  • ^491 ^492 Each format button has an aria-label, aria-keyshortcuts, and its shortcut in the tooltip (for example ⇧⌘S). The Show/Hide tools toggle is labelled "Formatting tools".
  • ^508 The composer keeps at most MAX_IMAGES (4) images and says how many it dropped. MAX_IMAGES moved to @ace/channel/protocol so the app and room.ts share it.
  • ^511 Voice input says why it stopped (microphone denied, no microphone, network, …). Silence still ends without a message.

Smoke-tested on an isolated host (ace serve --port 4431 --loopback) driven by headless Chromium:

  • Tooltip shows "Strikethrough ⇧⌘S".
  • Attaching six images keeps four and toasts "2 images weren't attached."
  • Record without mic permission toasts the not-allowed reason.
  • Providers shows no key button under OPENAI_API_KEY/ANTHROPIC_API_KEY overrides.
  • A duplicate rename error clears on typing.
  • The section menu lists Archive inactive, and running it reports "No inactive channels on this host".
  • Move to… shows the new text.
  • The terminal text flips dark/light with the system scheme.
  • For the connection message, a VITE_ACE_WEB=1 build was pointed first at example.com, which shows "refused this web app", and then at an .invalid host, which shows "Can't reach … Tailscale".

Built in Ace

No. Built by Claude Code (fix-train worker) outside Ace. It ran headless Playwright for the smoke tests, which Ace has no tool for. See #5.

…an and can't do

Hide Add key while an environment variable overrides it; the terminal follows a live
theme switch; a host that answers but refuses the web app gets its own message; a
rename error clears on typing; Archive inactive in the section menu; an empty Move to
says why; format buttons get labels and shortcut hints; a fifth image is refused; and
voice input says why it stopped.
@iamnbutler
iamnbutler force-pushed the fix-settings-terminal branch from 602f38d to 6631bb2 Compare October 22, 2026 15:31
@iamnbutler
iamnbutler merged commit 0dd5b23 into main Oct 22, 2026
1 check passed
@iamnbutler
iamnbutler deleted the fix-settings-terminal branch October 22, 2026 15:32
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