Complete the frontend Tailwind migration - #89
Conversation
…ilwind-fresh-20260804 # Conflicts: # src/frontend/components/Composer.tsx
# Conflicts: # src/frontend/components/Sidebar.tsx # src/frontend/components/TurnBlock.tsx
…ilwind-fresh-20260804 # Conflicts: # src/frontend/components/Sidebar.tsx # src/frontend/components/TurnBlock.tsx
# Conflicts: # src/frontend/components/TurnBlock.tsx
…ilwind-fresh-20260804 # Conflicts: # src/frontend/components/TurnBlock.tsx
…h-20260804' into migrate/global-css-tailwind-fresh-20260804 # Conflicts: # src/frontend/components/Sidebar.tsx
…ilwind-fresh-20260804
…h-20260804' into merge-tailwind-pr89
…h-20260804' into merge-tailwind-pr89
🤖 Michael review · request changes · confidence 3/5Safe once the P1 below is fixed. The production build, fail-closed validation, CI gate, and standalone frontend-dev compiler path are coherent, but the documented built-in dev mode now serves the application without any stylesheet.
🔁 Not merge-ready and no live session owns this branch — add the |
tella-butler
left a comment
There was a problem hiding this comment.
Michael review · f64b4ef
| import { copySessionTranscript } from "./lib/transcript-copy"; | ||
| import { effectiveTheme, setThemePref } from "./lib/theme"; | ||
| import type { UnifiedSession } from "./lib/types"; | ||
| import "./styles/global.css"; |
There was a problem hiding this comment.
🔴 P1 — Keep CSS available in the documented OPENSESSION_DEV mode
Removing this import leaves OPENSESSION_DEV=1 bun opensession.ts with no stylesheet at all. That remains a documented mode (docs/setup/install.md:137), and its spaEntry directly serves the Bun HTML import while frontend is null; unlike scripts/frontend-dev.ts, this path neither injects /tailwind-dev.css nor enables the hashed CSS asset route. The concrete result is that launching the server with OPENSESSION_DEV=1 loads the React application using only browser defaults, so the migrated layout and controls are effectively unusable. Reuse compileTailwindCss() in the built-in dev path and inject/serve that sheet, or retire this mode and its documentation as part of the same change.
There was a problem hiding this comment.
I did not apply this to the stale branch. Current main already addresses the dev-mode stylesheet gap in e98509f, and the Tailwind migration itself subsequently completed on main in e345c45. A current-main merge produces 86 conflicts, largely because the frontend moved under packages/ after this branch diverged; resolving those by reviving this branch would risk restoring removed legacy CSS and superseded UI. This PR is therefore obsolete rather than safely convergent.
Summary
global.csssurface with Tailwind utilities plus a focusedfoundation-adapters.csscompatibility layermainThis supersedes the closed migration PR #84 and was rebuilt on current
mainrather than reviving its stale application code.Verification
bun run typecheckbun run frontend:checkbuildFrontend()bun run website:buildgit diff --check origin/main...HEADbun test: 1,424 passed; the worktree-only TUI test could not resolve@opentui/react/test-utils, while that same test passes frommain(20/20)