Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: robinebers/openusage
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.1.2
Choose a base ref
...
head repository: robinebers/openusage
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: v0.2.0
Choose a head ref
  • 10 commits
  • 46 files changed
  • 3 contributors

Commits on Feb 3, 2026

  1. feat(panel): implement Escape key functionality to hide panel

    - Added a new command to hide the panel in the Tauri application.
    - Implemented a keydown event listener to hide the panel when the Escape key is pressed, unless the About dialog is open.
    - Enhanced user experience by allowing quick dismissal of the panel without navigating through the UI.
    robinebers committed Feb 3, 2026
    Configuration menu
    Copy the full SHA
    8fd2f77 View commit details
    Browse the repository at this point in the history
  2. feat(update-button): add rotating border beam animation to update but…

    …ton (#58)
    
    Adds a visually distinctive rotating border animation to the "Restart to update" button when an update is ready. The beam travels around the button's edge using CSS mask-composite, making it more noticeable without adding dependencies.
    
    Also fixes dev build by running bundle:plugins before dev server starts.
    
    Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
    robinebers and claude authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    8a5f99c View commit details
    Browse the repository at this point in the history
  3. fix(panel): nudge tray panel up slightly (#59)

    Move the panel a small amount upward (in logical points) so the tray-aligned UI
    looks tighter and consistent across Retina/non-Retina displays.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    robinebers and cursoragent authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    53dd079 View commit details
    Browse the repository at this point in the history
  4. plugin-api: v2 progress + used/left display (#60)

    * fix(panel): nudge tray panel up
    
    Reduces visible gap between tray icon and panel by applying a small scale-factor-aware
    vertical offset.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * feat(plugin-api): v2 progress schema with display mode + resets
    
    Standardizes progress lines to { used, limit, format, resetsAt } and adds a global
    display toggle (used vs remaining) that affects cards and tray bars.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * fix(plugin-api): tighten progress validation and display
    
    - Reject progress lines where used > limit
    - Clamp left display at 0 and centralize clamp01
    - Treat timezone-less resetsAt as UTC
    - Fix Codex credits balance semantics
    - Require displayMode props for consistency
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * refactor(plugin-api): simplify credits balance handling
    
    - Consolidate credits balance logic by using a single variable for remaining credits.
    - Remove redundant checks for credits header and data, streamlining the progress line display.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    ---------
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    robinebers and cursoragent authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    24077c3 View commit details
    Browse the repository at this point in the history
  5. fix(plugin): minify keychain JSON to prevent hex-encoding on read (#61)

    macOS security command hex-encodes credential values containing newlines. Pretty-printed JSON caused the keychain to store hex instead of readable JSON, breaking Claude Code's credential validation on read.
    
    Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com>
    robinebers and claude authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    147ca92 View commit details
    Browse the repository at this point in the history
  6. fix(build): exclude test files from production tsc check (#62)

    * fix(build): exclude test files from production tsc check
    
    The build command (tsc && vite build) type-checked test files alongside
    source code, so any test-only type error would break production builds.
    Exclude *.test.ts(x) from tsconfig.json since vitest handles test
    type-checking independently.
    
    Closes #55
    
    Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
    
    * fix(build): also exclude src/test/** from production tsc check
    
    The test setup file (src/test/setup.ts) imports vitest and
    @testing-library/*, so it needs to be excluded alongside test files.
    
    Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
    
    ---------
    
    Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
    robinebers and claude authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    430f1b9 View commit details
    Browse the repository at this point in the history
  7. ui: default usage display to Left (#63)

    * refactor(tests): update App tests for display mode and error handling
    
    - Changed the default display mode from "used" to "left" in the App tests.
    - Added tests to log errors when saving and loading display modes fail.
    - Implemented a new test to verify panel hiding functionality on Escape key press in Tauri.
    - Enhanced the ProviderCard component to utilize brand colors and improved badge styling.
    - Updated Skeleton components for consistent height adjustments.
    
    * refactor(ui): drop brand-filled badge styling
    
    Revert badge rendering back to outline-only styling.
    Remove ProviderCard brandColor plumbing and delete the unused badge style helper.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * docs(plugin-api): update progress builder and schema for v2
    
    Document ctx.line.progress({ used, limit, format, resetsAt }) and ctx.util.toIso.
    Update MetricLine progress schema and examples to match runtime behavior.
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    ---------
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    robinebers and cursoragent authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    8c0254c View commit details
    Browse the repository at this point in the history
  8. feat(logging): Add debug logging with tray menu level selector (#64)

    * feat(logging): Add debug logging with tray menu level selector
    
    - File logging to ~/Library/Logs with 10MB max size
    - Tray menu "Debug Level" submenu (Error/Warn/Info/Debug/Trace), persisted
    - HTTP request/response logging with PII redaction (first4...last4)
    - Forward frontend console.error/warn to log file
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * feat(plugins): Add diagnostic logging for auth flows
    
    - Log credential loading (source, success/failure)
    - Log token refresh attempts with status codes and error codes
    - Log usage API call results and auth failures
    - Helps debug "Token expired" errors reported by users
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * fix: Address PR review feedback
    
    - Use UTF-8 safe char iteration for redaction (prevents panic on multi-byte)
    - Add missing "off" case in get_stored_log_level
    - Log level change message before set_max_level (so it's visible)
    - Improve frontend logging to serialize objects properly (JSON.stringify)
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    
    * feat(logging): Enhance logging capabilities in test helpers and HTTP response handling
    
    - Added trace and debug logging functions to the test helpers for improved diagnostics.
    - Implemented body redaction before truncation in HTTP response logging to ensure sensitive information is protected.
    - Updated logging to use the redacted body preview for better security and clarity in logs.
    
    ---------
    
    Co-authored-by: Cursor <cursoragent@cursor.com>
    robinebers and cursoragent authored Feb 3, 2026
    Configuration menu
    Copy the full SHA
    03757a6 View commit details
    Browse the repository at this point in the history
  9. feat(hooks): enhance useDarkMode hook to check class-based dark mode …

    …and add documentation
    
    - Updated useDarkMode to determine dark mode based on the presence of the 'dark' class on documentElement instead of system preference.
    - Added a detailed comment explaining the functionality of the hook.
    - Modified the Vite configuration to exclude specific directories from test coverage.
    robinebers committed Feb 3, 2026
    Configuration menu
    Copy the full SHA
    3fba476 View commit details
    Browse the repository at this point in the history
  10. chore: bump version to 0.2.0

    Co-authored-by: Cursor <cursoragent@cursor.com>
    robinebers and cursoragent committed Feb 3, 2026
    Configuration menu
    Copy the full SHA
    2d17f7c View commit details
    Browse the repository at this point in the history
Loading