Repository navigation
Unify application and download names under DS Bot - #794
Conversation
Use DS Bot for product labels and dsbot for executable and package identifiers. Keep the published Windows installer GUID, existing shell data and Chromium encryption identity so upgrades retain locations, preferences and browser sessions. Publish compatible asset aliases for already released macOS and deb update clients, update package checks and reject new retired-name references outside compatibility code and historical release notes.
| appId: io.github.fei2411.deepseekbot | ||
| productName: DeepSeek Bot | ||
| appId: io.github.fei2411.dsbot | ||
| productName: DS Bot |
There was a problem hiding this comment.
🟡 macOS upgrades retain a stale app
When a macOS user installs the new zip, productName creates DS Bot.app beside the existing DeepSeek Bot.app. Finder cannot replace the differently named bundle, leaving the old app available to launch against the shared team data.
Learn more
The macOS release is a zip whose application bundle derives its name from productName. Existing installations use /Applications/DeepSeek Bot.app, but the renamed release contains DS Bot.app. The manual update instructions tell users to drag the new bundle to Applications, which does not overwrite the old bundle because the filenames differ. The new app explicitly reuses the previous shell data in configureIdentity, and both bundles also use the same team data location.
Example: A user with /Applications/DeepSeek Bot.app downloads the new arm64 zip and drags DS Bot.app into Applications. Both apps remain. Opening the old Dock icon still launches the previous version instead of the updated app.
Recommended fix: Provide a migration path that removes or redirects the legacy bundle and its Dock entry, or explicitly require removal of the legacy app as part of the update instructions. Test an upgrade from the published macOS zip rather than only a fresh install.
Was this helpful? React with 👍 or 👎 to provide feedback.
The assisted installer normally appends the product name to a selected folder. Resolve the destination through the same supported page hook used by the writable-directory check, and keep a registered installation path unchanged. This prevents manual upgrades from nesting the renamed app under the old installation directory.
Call the builder-provided instFilesPre function when there is no matching registered installation. The writable-directory check and install page share that result, and the default function remains referenced under NSIS warnings-as-errors.
# Conflicts: # ds-bot/client.js
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Issue
Fixes #793
What changed / 改了什么
Use DS Bot throughout the desktop application, mobile scaffold, dialogs, tray, update messages, installers and current documentation. Executables and private application packages use
dsbot; release artifacts useDS-Bot-*. Keep the existingds-botplugin and profile identifiers.Preserve the published Windows installer GUID and reuse existing shell data before Electron initializes its sessions. Keep the old Chromium encryption identity during initialization on macOS/Linux, then restore the visible DS Bot name before menus and windows are built. Existing data locations, workspaces, browser storage and preferences stay in place. The Windows installer also keeps the registered installation directory when its name differs from the new product name. The deb declares replacement/conflict with its retired package. Released macOS/deb clients receive byte-identical asset aliases so their update detection continues to work.
Add regression coverage for data discovery, isolated runs, asset aliases, retired profile bundles and the installer GUID. Extend the source scan to reject retired product names outside compatibility code and historical release notes.
Changelog
The desktop application and downloads are now named DS Bot, with existing teams, settings and browser storage retained across the rename.
How I checked it / 怎么验证的
8758e0d; tracked by PR Fix the restart poll test after team tools became agent-scoped #790 (restart-poll test after tools became agent-scoped).node scripts/build-client.mjs --checknpm run lint(existing warnings only)Checklist / 检查
src/client/changed, build ran andclient.jsis committed.