Skip to content

Merge upstream main (10 commits after v0.2.20) - #17

Merged
lightcloud00 merged 12 commits into
base/upstream-0.2.20from
chore/upstream-main-sync-20261031
Oct 31, 2026
Merged

lightcloud00 merged 12 commits into
base/upstream-0.2.20from
chore/upstream-main-sync-20261031

Conversation

@lightcloud00

Copy link
Copy Markdown
Owner

Brings the fork up to date with Lampese/codex-switcher main (84eb480). Upstream has no release newer than v0.2.20, but main has 10 fixes since then.

From upstream

Conflicts

Gates on ed64878

  • pnpm test: 125 pass, 1 skipped
  • pnpm build (tsc + vite): ok
  • cargo test: 137 pass, 4 ignored

🤖 Generated with Claude Code

capaj and others added 11 commits September 30, 2026 17:39
…e#191)

Filter appmenu-gtk-module from GTK_MODULES and GTK3_MODULES before Tauri initializes, preserving accessibility modules, unrelated entries, non-UTF-8 paths, and GDK_BACKEND.

Add Rust unit tests and Linux entry-point regression coverage. Linux startup CI passes; actual GNOME/Wayland launch and menu acceptance remains a release check.

Fixes Lampese#176.
Upgrade the Tauri CLI and locked platform binaries to 2.10.1 so Linux packages receive bundle metadata compatible with the runtime. Separate download completion from successful installation before offering a restart.

Updater CI and the combined frontend build pass. Native packaging and a signed Debian update remain release checks; existing affected installations require a one-time manual upgrade.

Fixes Lampese#189.
Add read-only pull request validation for frontend builds and focused tests, Rust tests and changed-file formatting, and macOS/Windows compilation. Discover TypeScript and JavaScript test suites through the aggregate pnpm test command.

The existing updater and Linux startup workflows continue to provide focused checks and main-branch push coverage. Refresh the PR against current main so validation includes both Linux fixes.

Closes Lampese#164.
Defer native window access until a Tauri runtime is available so browser mode can render without throwing at module initialization. Keep desktop window actions intact and hide native window controls in the browser.

Validation: all six PR checks passed against current main; frontend production build and 23 local tests passed; Chromium home page and Add Account dialog smoke passed without console errors; desktop window IPC mock probe passed.

Closes Lampese#145.
Preserve the latest cached usage when deleting accounts. Reload backend account metadata after every successful deletion so a concurrent account switch cannot leave stale active-account flags.

The maintainer follow-up removes the inactive-account fast path after reproducing the concurrent-switch regression.

Validation: all six PR checks passed against current main; frontend production build and 23 local tests passed; six real React hook scenarios in Chromium with a mocked backend passed, covering active/inactive deletion, failure, concurrent switching, concurrent usage refresh and deleting the last account.
…ese#198)

Keep the native application menu on macOS and remove the native window menu on other desktop platforms. Add eight resize handles for frameless windows, hidden in browsers, on macOS, and while maximized. Preserve cross-platform tray settings.

Validation: all six PR checks passed on d5dd866. Frontend build and tests passed. Chromium interaction checks covered resize IPC, mouse buttons, maximize/restore, modal layering, titlebar controls, and tray settings.
Accept legacy ChatGPT authentication type spellings when reading saved accounts while continuing to serialize the canonical spelling. Add deserialization coverage for both authentication enums.

Validation: independent full AccountsStore round trips cover legacy and canonical formats; the combined Lampese#196/Lampese#153 integration on current main passes 61 Rust tests (1 ignored).
Adding an account preserves the current active account, live auth.json and usage timestamps. Activation remains an explicit account-switch operation, including when adding the first account.

Add isolated command-level OAuth regression coverage. Validation: the four OAuth scenarios pass; restoring the old behavior reproduces three failures. The combined Lampese#196/Lampese#153 integration on current main passes 61 Rust tests (1 ignored).

Co-authored-by: legibet <legibetpeng@gmail.com>
Co-authored-by: Jeakcey <237689947+Jeakcey@users.noreply.github.com>
Brings in Lampese/codex-switcher main up to 84eb480: legacy ChatGPT auth
spellings (Lampese#196), cached usage kept on account delete (Lampese#142), browser-mode
window access (Lampese#179), frameless resize borders (Lampese#198), Linux GTK/updater
fixes (Lampese#190, Lampese#191), PR validation CI (Lampese#188), gpt-6-luna warm-up and the
MIT license.

Conflicts: the fork already carries Lampese#153 (new accounts stay inactive)
inside its reworked complete_login with re-login and cancel, so oauth.rs,
oauth_tests.rs (fork tests are a superset) and storage.rs keep the fork
side. App.tsx, components/index.ts and package.json take both sides.

Gates: pnpm test 125 pass / 1 skip, tsc + vite build ok, cargo test 137 pass.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 31, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 44e6fc4e-9d67-40fd-bd3e-399608f815e6

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

The PR validation fmt check (stable rustfmt on CI) wraps this assertion;
rustfmt 1.9.0 locally accepts both forms.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@lightcloud00
lightcloud00 merged commit aedd5f9 into base/upstream-0.2.20 Oct 31, 2026
7 checks passed
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.

9 participants