pingdotgg / pingdotgg/t3code

[Bug]: Cannot downgrade nightly to stable; channel switch does nothing and manual downgrade hides existing chats

Open
#4,374 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
23k
Forks
5.9k
Avg merge
11h 14m
Merged PRs (30d)
357

Description

Area

apps/desktop

Steps to reproduce
  1. Running nightly 0.0.29-nightly.20260722.875 (stable is 0.0.28).
  2. Switch update channel from nightly to stable, restart.
  3. Manually replace the AppImage with the staged 0.0.28 build, relaunch.
Actual behavior

Step 2: 0.0.28 gets downloaded to ~/.cache/t3code-updater/pending/ but is never installed. The app stays on the nightly. 0.0.29-nightly is a higher semver than 0.0.28, so the updater won't apply it.

Step 3, on 0.0.28: projects and chat threads show up missing/wrong in the UI.

state.sqlite is intact throughout (checked read-only): orchestration_events = 64148 rows through the current session, projection_threads all present with correct titles, projection_thread_messages = 5808 rows, effect_sql_migrations = 15, all projectors in projection_state caught up to the max sequence.

Restoring the nightly 0.0.29 AppImage and relaunching brings all projects and chats back. No data was lost; the threads are just not surfaced by 0.0.28.

Looks like the same class as #4261 (OrchestrationGetSnapshotError: Thread <id> was not found after a version change with events still present). Possibly related: #961, #2181.

Version or commit

0.0.29-nightly.20260722.875 downgraded to 0.0.28.

Environment

Ubuntu 22.04.5 LTS, x86_64, Desktop AppImage, nightly channel, Claude provider, local.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the update-channel switch and manual AppImage downgrade in apps/desktop, then inspect the updater's pending path and state.sqlite projections. Confirm that switching from nightly to stable installs the stable version and that existing projects and chats remain surfaced on 0.0.28 without altering the stored data.

Written by the indexing model from the issue text.

Assessment

Tech stack
sqlite, typescript
Domain
database, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.