style: color in-progress session spinners by result type#85
Merged
Conversation
Previously, pending timeline items (pending-commit, generating-note) had a generic gray background (--bg-elevated) on their spinner icons. This made it impossible to tell whether a running session would produce a commit or a note. Replace the single .timeline-row.pending .timeline-icon override with type-specific rules so that: - pending-commit spinners use --commit-bg/--commit-color (green tint) - generating-note spinners use --note-bg/--note-color (orange tint) This matches the existing styling of completed commits and notes, giving users immediate visual context about what the in-progress session will produce.
wesbillman
approved these changes
Feb 12, 2026
loganj
added a commit
that referenced
this pull request
Feb 26, 2026
* feat: split server into dual ports — React SPA at :8080, Go templates at :8081
React SPA, API, SSE, and MCP are served on :8080 (default). Go template
UI moves to :8081 (-go-port flag). Both ports use /app/ as the entry
point with / redirecting there.
Key changes:
- Add goMux for Go template routes behind /app/ prefix via appHandler
- Add appPath JS variable and {{.Nav.BasePath}} for URL construction
- Vite base='/app/' for Go-served builds, '/' for dev/Tauri
- React Router basename derived from import.meta.env.BASE_URL
- API/SSE routes registered on both muxes at root level
- justfile: `just run` builds frontend+Go, `just dev` runs Go+Vite
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* docs: reorganize README around user vs developer workflows
Sections: Quick Start (run, install-claude), Desktop App (dev-tauri,
install), Development (everything else). Adds -go-port to server options.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* refactor: rename tauri -> desktop in just commands and README
`just dev-tauri` -> `just dev-desktop`, `just build-tauri` -> `just build-desktop`.
Keeps the commands implementation-agnostic.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: set VITE_API_URL for desktop production builds
The Tauri app loads frontend from disk (tauri:// protocol), so relative
API paths don't reach the Go sidecar. Set VITE_API_URL=http://localhost:8080
in the build-desktop recipe so the React app knows where to find the API.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: disable Tauri beforeBuildCommand to preserve env vars
Tauri's beforeBuildCommand was re-running `npm run build` without
VITE_BASE and VITE_API_URL, overwriting the correctly configured
frontend build from the justfile.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: remove dmg from bundle targets to avoid Finder popup on install
Only build the .app bundle since `just install` copies it directly
to /Applications.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: add CORS headers for Tauri desktop app
The production desktop app loads from tauri://localhost and fetches
the Go API at http://localhost:8080 — a cross-origin request. Without
CORS headers the browser blocks all API calls, causing a blank screen.
Allow origins matching tauri://, localhost, and 127.0.0.1.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: Cmd+Q now fully quits the desktop app and kills the sidecar
prevent_exit() was called on every ExitRequested event, so Cmd+Q
never actually quit the process — it just hid the windows while the
sidecar kept running. Now only prevent exit when windows still exist
(last-window-closed case), allowing Cmd+Q to quit properly.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: just install quits running Penpal and relaunches after install
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* fix: properly handle macOS window close vs quit lifecycle
Use an atomic flag to distinguish "last window closed" (keep app alive
in dock) from "user quit" (Cmd+Q, dock quit). Move sidecar cleanup to
RunEvent::Exit so it runs on all exit paths.
Co-Authored-By: Claude Opus 4.6 <[email protected]>
---------
Co-authored-by: Claude Opus 4.6 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This helps me understand what is being created