Skip to content

Conversation

@notkainoa
Copy link
Contributor

Summary
This PR adds remote branch deletion, consolidates Electron API types, and improves shell command quoting for reliable project opening on Windows, macOS, and Linux. Sorry the pr's kinda big I got carried away :)

What’s new

  • Delete GitHub branches
    You can delete remote GitHub branches without leaving the app. When you delete a task that links to a remote branch, you can delete the branch at the same time.
image
  • Improved type safety
    Electron API type definitions are now consistent across the app. We use getAppVersion and getElectronVersion everywhere to reduce TypeScript errors and keep preload and renderer types in sync.

  • Better cross‑platform support
    File paths with spaces now work reliably when opening projects in tools like VS Code, Cursor, Finder, and Linux terminals by using correct quoting rules per platform.

Technical details

  • Added remote branch deletion using the GitHub CLI and git push --delete with error handling and safeguards. We block deletion of the default branch.
  • Standardized the electronAPI interface to use getAppVersion and getElectronVersion across preload and renderer type definitions.
  • Improved shell command quoting: double quotes on Windows and properly escaped single quotes on POSIX systems.
  • Cleaned up related hooks and improved GitHub auth fallback behavior.

Tests

  • All relevant automated tests pass.
  • Added and updated tests for:
    • Branch deletion and safety checks
    • Container and configuration loading
    • Git and project operations (worktrees, snapshots, auth detection)
    • Renderer state and event handling
    • Type safety and schema validation

- Replace getVersion with getAppVersion/getElectronVersion in preload and type definitions
- Ensure single source of truth for Electron API types across preload.ts, electron-api.d.ts, and global.d.ts
- Fix platform-specific shell command quoting in appIpc.ts (use double quotes on Windows, proper single quote escaping on POSIX)
- Remove duplicate/conflicting ElectronAPI interface declarations

All tests pass (type-check, lint, vitest)
@vercel
Copy link

vercel bot commented Dec 13, 2025

@notkainoa is attempting to deploy a commit to the General Action Team on Vercel.

A member of the Team first needs to authorize it.

@notkainoa notkainoa marked this pull request as ready for review December 14, 2025 00:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant