Skip to content
This repository was archived by the owner on Jun 1, 2026. It is now read-only.

v31.2.0

Choose a tag to compare

@devinoldenburg devinoldenburg released this 31 May 00:13
· 65 commits to main since this release

Summary

Codeplane v31.2.0 ships a new in-app login screen replacing the browser Basic Auth popup, collapses every client to exactly two color schemes (light and dark), and includes four TUI and app fixes.

Changes

  • packages/codeplane/src/server/routes/ui.ts, packages/codeplane/src/server/middleware.ts, packages/codeplane/src/server/server.ts: replace the browser Basic Auth popup with a clean, in-app login screen. Serves the UI shell pre-auth and adds a GET /global/auth discovery probe; suppresses WWW-Authenticate on 401s so no native popup appears. Credentials captured in the form are stored on the active connection and become the same Authorization: Basic header all non-browser clients already use.
  • packages/app/src/components/login-screen.tsx, auth-gate.tsx, utils/server-auth.ts, context/server.tsx, app.tsx: the web app login screen — centered column, hairline inputs, password reveal toggle, inline error state. Probes /global/auth and gates the app until credentials are provided.
  • packages/app/src/i18n/*: login.* keys added across all 17 locales.
  • packages/ui/src/theme/context.tsx, packages/app/src/components/settings-general.tsx, pages/layout.tsx, public/oc-theme-preload.js: remove the "System" auto-follow color scheme everywhere; the product now ships exactly two schemes (light and dark). A stored "system" value migrates to dark on read.
  • packages/codeplane/src/tui/context/theme.tsx, feature-plugins/home/tips-view.tsx: the TUI now offers only the oc-2 theme (light/dark). The 33 other named themes, the theme picker, the theme_list keybind, and the /themes slash command are removed. Custom theme loading and terminal-derived system theme generation are removed.
  • packages/codeplane/src/tui/context/theme/*.json: 33 non-oc-2 theme JSON files deleted; only oc-2.json remains.
  • packages/codeplane/src/tui/context/theme.tsx, context/theme/oc-2.json: refine the oc-2 palette to match the Web/Desktop light + dark colors exactly.
  • packages/app/src/pages/session/compaction-order.ts, session.tsx: fix compaction "Session compacted" dividers to sit chronologically between the turns they summarized, instead of floating to the bottom of the chat.
  • packages/codeplane/src/tui/boot/wizard.tsx: the boot directory picker now grows to fill terminal height and shows scroll arrows when the list overflows.
  • packages/codeplane/src/tui/feature-plugins/sidebar/footer.tsx, context/args.tsx, node-main.tsx: show the saved instance name under the Codeplane version in the TUI sidebar footer.

Verification

  • bun turbo typecheck — 8/8 green
  • bun lint — 0 errors
  • bun --cwd packages/app test — 635 pass
  • bun --cwd packages/codeplane test test/server/auth-middleware.test.ts test/server/public-ui-middleware.test.ts test/server/ui-routes.test.ts test/server/security.test.ts test/server/auth-policy.test.ts — 72 pass
  • bun --cwd packages/codeplane test test/tui-suite/tests/sidebar-footer.test.tsx — pass
  • bun script/build.ts --skip-embed-web-ui --skip-install --single — smoke test passed, binary prints 31.2.0