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: fetep/opencode-pulse
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: fetep/opencode-pulse
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: petef/github-actions
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 6 commits
  • 16 files changed
  • 1 contributor

Commits on Mar 14, 2026

  1. test: add unit tests for plugin and TUI

    125 tests across 4 files covering plugin event handler state machine,
    DB query layer, theme resolution, and SessionList helper functions.
    
    Export testable functions from plugin (summarizeEvent, parseCmdlineFlags)
    and SessionList helpers. Refactor parseCmdlineFlags to accept optional
    args for testability.
    fetep committed Mar 14, 2026
    Configuration menu
    Copy the full SHA
    d229a12 View commit details
    Browse the repository at this point in the history
  2. feat: add config file, CLI flags, and env var support via citty

    Options (columns, theme, dbPath, debug) can be set three ways:
    CLI flag > env var > config file (~/.config/opencode/pulse.jsonc) > default.
    
    - Add citty for CLI arg parsing with auto-generated help
    - Add config.ts for unified config resolution across all sources
    - Plugin reads shared config file for debug and dbPath options
    - Debug logging now off by default, opt-in via config/env/flag
    - JSONC (JSON with comments) supported for config files
    - Theme resolution deferred via Proxy so CLI/config takes effect
    - db.ts uses setDbPath() instead of direct env var reads
    fetep committed Mar 14, 2026
    Configuration menu
    Copy the full SHA
    d4250ef View commit details
    Browse the repository at this point in the history
  3. fix(tui): remove unnecessary "(not in tmux)" header warning

    Attaching to tmux sessions works fine from outside tmux via
    attach-session, so the error-colored warning was misleading.
    fetep committed Mar 14, 2026
    Configuration menu
    Copy the full SHA
    13dab01 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    aa98369 View commit details
    Browse the repository at this point in the history
  5. perf(tui): defer cleanup and cache prepared statement for faster startup

    Render session data before running cleanupStaleSessions() so the first
    frame appears immediately in tmux popups. Cache the querySessions()
    prepared statement across poll ticks instead of re-preparing every 500ms.
    fetep committed Mar 14, 2026
    Configuration menu
    Copy the full SHA
    0b6f406 View commit details
    Browse the repository at this point in the history
  6. perf(tui): cache theme resolution and warm DB before renderer

    Cache the resolved Theme object in getTheme() so the Proxy avoids
    repeated name resolution and object lookup on every color access.
    Open the DB connection before createCliRenderer() so the file
    descriptor is ready when SessionList mounts.
    fetep committed Mar 14, 2026
    Configuration menu
    Copy the full SHA
    d0ed41b View commit details
    Browse the repository at this point in the history
Loading