Skip to content

fix(desktop): remove expired Xiaomi activity support#472

Merged
hiqiancheng merged 8 commits into
mainfrom
fix/remove-xiaomi-activity
Jun 16, 2026
Merged

fix(desktop): remove expired Xiaomi activity support#472
hiqiancheng merged 8 commits into
mainfrom
fix/remove-xiaomi-activity

Conversation

@hiqiancheng

@hiqiancheng hiqiancheng commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Remove TouchAI Hub managed MiMo login, deep-link callback, gateway signing, managed auth invalidation, and activity-only packaging dependencies.
  • Restore Xiaomi MiMo to normal BYOK provider behavior and remove MiMo recommendation badges plus collapsed provider grouping in settings.
  • Remove expired activity copy/docs/assets/tests while keeping seed cleanup for old managed MiMo configs.

Related issue or RFC

Link the issue or RFC:

For code changes, link the tracking issue. Only documentation wording, link fixes, or comment-only cleanups may skip the issue-first flow.

AI assistance disclosure

If AI tools materially assisted this contribution, disclose that here or point to the relevant commit trailer.

  • Tool(s) used: Codex
  • Scope of assistance: implementation, diff audit against the Xiaomi activity commits, and local verification
  • Human review or rewrite performed: pending maintainer review
  • Architecture or boundary impact: removes the temporary TouchAI Hub managed-auth/deep-link boundary and returns MiMo to the standard provider path

Testing evidence

List the commands you ran and the results you observed.

  • pnpm.cmd --filter @touchai/desktop test:typecheck -> passed
  • pnpm.cmd exec vitest run --configLoader runner --pool=forks --maxWorkers=1 tests/database/runtime-seed.test.ts tests/i18n/main-bootstrap.test.ts tests/ci/vite-dev-cache.test.ts tests/SettingsView/ai-services-i18n.test.ts tests/SettingsView/ai-services-section-i18n.test.ts tests/services/AgentService/provider-drivers-i18n.test.ts tests/views/SettingsView/settingsAiServicesLayout.test.ts tests/services/AgentService/execution/executor.test.ts tests/services/AgentService/contracts/errors-i18n.test.ts -> 9 files / 48 tests passed
  • pnpm.cmd exec vitest run --configLoader runner --pool=forks --maxWorkers=1 tests/services/AgentService/execution/retry.test.ts -> 1 file / 1 test passed
  • pnpm.cmd test:coverage -> 150 files / 928 tests passed; command exited 0, with a non-blocking trailing failed to bundle project http status: 504 message after the coverage report
  • pnpm.cmd exec eslint ... on touched TS/Vue files -> passed with existing vue/one-component-per-file warnings in ai-services-section-i18n.test.ts
  • pnpm.cmd exec eslint apps/desktop/tests/services/AgentService/execution/retry.test.ts -> passed
  • cargo fmt --manifest-path apps/desktop/src-tauri/Cargo.toml --all -- --check -> passed
  • git diff --check HEAD~1..HEAD -> passed
  • Activity keyword scan -> only old managed MiMo cleanup SQL remains in seed.sql
  • Diff audit against Xiaomi activity commits 465d2ab and 6199d1c -> checked touched files and unmatched files; no activity entry points found outside seed cleanup
  • pnpm.cmd --filter @touchai/desktop check:rust -> not completed locally: first run hit disk exhaustion while compiling dependencies, later pre-commit run reached the app build script but timed out downloading bundled rtk from GitHub (10060 timeout)
  • pnpm test:pr -> not run locally because Rust check is blocked by the external rtk download timeout; rely on CI for full Rust/package verification before merge

Did you follow TDD (test-first) for feature and fix work? Strongly recommended. See docs/testing/testing.md.

pnpm test:pr
pnpm test:coverage:rust
pnpm test:e2e

Risk notes

  • AgentService, runtime, MCP, or schema impact: AgentService provider/runtime behavior changes by removing managed MiMo gateway/auth paths; no schema change.
  • database baseline or migration impact: runtime seed migrates old built-in MiMo Hub/managed configs back to the normal Xiaomi MiMo endpoint and removes managed config fields.
  • release or packaging impact: removes Tauri/JS deep-link plugin registration and package dependencies.

Screenshots or recordings

Not captured.

Checklist

  • The PR title follows Conventional Commits and is valid for squash merge.
  • This PR is either ready for review or explicitly marked as a Draft PR.
  • I did not use [WIP] or similar title prefixes.
  • If AI materially assisted this PR, I disclosed the tools and scope and I personally reviewed every affected change.
  • I can explain the why, what, and how of this change without relying on an AI tool.
  • If this touches AgentService, runtime, MCP, or schema boundaries, there is an accepted RFC.
  • If this changes architecture or adds a new cross-boundary abstraction, there is an accepted RFC.
  • I ran pnpm test:pr for this code PR, or this is a docs-only change.
  • If I changed Rust behavior or tests, I reviewed pnpm test:coverage:rust or relied on CI coverage evidence.
  • If I changed desktop startup/window/search/popup/settings/E2E paths, I ran pnpm test:e2e locally or documented why CI is the first valid proof.
  • I added tests or explained why tests are not appropriate.
  • I updated docs when behavior changed.

@github-actions github-actions Bot added area:tauri Tauri shell or desktop runtime changes area:frontend Frontend UI or view-layer changes area:database Schema, persistence, or migration changes area:agent-service AgentService and conversation runtime changes labels Jun 15, 2026
@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

This PR removes the TouchAI Hub managed authentication system, Tauri deep-link plugin integration, and MiMo gateway/signing logic across the desktop app. It simplifies the MiMo provider to direct API endpoint configuration, migrates existing database rows away from legacy managed-auth fields, flattens the AI services settings UI, and adds a new WiX MSI installer template for Windows packaging.

Changes

Managed Auth and Hub Integration Removal

Layer / File(s) Summary
Provider config, event, and i18n contract simplification
apps/desktop/src/services/AgentService/infrastructure/providers/types.ts, apps/desktop/src/services/AgentService/infrastructure/providers/config.ts, apps/desktop/src/services/AgentService/infrastructure/providers/index.ts, apps/desktop/src/services/EventService/types.ts, apps/desktop/src/i18n/messages.ts, apps/desktop/src/i18n/textMap.ts
ProviderConfigJson drops managedAuth/touchAiMode/touchAiCustom fields; config.ts exports MIMO_API_BASE_URL and removes isTouchAiManagedMode; EventService removes SETTINGS_AI_SERVICES_FOCUS_PROVIDER event; i18n removes managed-mode and recommended message keys.
Desktop plugin and build wiring cleanup
apps/desktop/package.json, apps/desktop/src-tauri/Cargo.toml, apps/desktop/src-tauri/capabilities/default.json, apps/desktop/src-tauri/src/lib.rs, apps/desktop/vite.config.ts
@tauri-apps/plugin-deep-link removed from all dependency/config lists; lib.rs replaces callback-based single-instance activation with a direct focus_single_instance_activation_window call and drops the deep-link setup block.
Bootstrap and agent runtime/retry simplification
apps/desktop/src/bootstrap.ts, apps/desktop/src/services/AgentService/execution/runtime.ts, apps/desktop/src/services/AgentService/execution/retry.ts
bootstrap.ts removes deep-link listener and managed-provider init steps; AiConversationRuntime drops invalidateManagedAuthIfNeeded and the UNAUTHORIZED error rewrite; retry.ts removes RETRYABLE_PROVIDER_GATEWAY_CODES and requiresRelogin gating, retaining only statusCode-based retry checks.
MiMo adapter refactor and database seed migration
apps/desktop/src/services/AgentService/infrastructure/providers/adapters/mimo.ts, apps/desktop/src/services/AgentService/infrastructure/providers/drivers.ts, apps/desktop/src/database/artifacts/runtime/seed.sql, apps/desktop/src/database/queries/providers.ts
MiMoProviderAdapter uses direct apiKey/baseURL removing gateway/signing helpers; seed SQL inserts MiMo with the token-plan endpoint and replaces unconditional hub-migration with a conditional UPDATE that clears legacy auth fields from config_json; providers.ts adds BUILTIN_PROVIDER_DISPLAY_ORDER stable sort and removes reassignModelsAndDeleteProvider.
Settings AI services UI simplification
apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderConfig.vue, apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderList.vue, apps/desktop/src/views/SettingsView/components/AiServices/components/BadgedLogo.vue, apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderCard.vue, apps/desktop/src/views/SettingsView/components/AiServices/index.vue, apps/desktop/src/views/SettingsView/index.vue
ProviderConfig.vue emits only api_endpoint/api_key; ProviderList.vue renders a flat v-for removing promoted/expand toggle; BadgedLogo and ProviderCard drop the promoted prop; AiServices/index.vue removes managed-focus subscription and session-expired refresh variants; SettingsView initializes activeSection to 'general' unconditionally.
Test suite alignment
apps/desktop/tests/SettingsView/*, apps/desktop/tests/ci/vite-dev-cache.test.ts, apps/desktop/tests/database/runtime-seed.test.ts, apps/desktop/tests/i18n/main-bootstrap.test.ts, apps/desktop/tests/services/AgentService/..., apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts
Removes isTouchAiManagedMode mocks from provider stubs; drops deep-link/AuthService/EventService bootstrap mocks; updates MiMo endpoint strings; removes MiMo promoted/managed/login-gating test cases; rewrites retry tests to use statusCode-only assertions.
README cleanup
README.md, README.en.md
Hub/Hub站 navigation links and TouchAI × Xiaomi MIMO image blocks removed from both README files.

WiX MSI Installer Addition

Layer / File(s) Summary
WiX installer template and Tauri config reference
apps/desktop/src-tauri/wix/main.wxs, apps/desktop/src-tauri/tauri.conf.json, apps/desktop/tests/ci/tauri-wix-install-dir.test.ts
main.wxs defines the full MSI installer: architecture detection, Product/Package metadata, INSTALLDIR registry-search order (including Velopack reuse), shortcut/protocol components, WebView2 conditional install modes, and optional elevated task scheduler actions; tauri.conf.json now references this template; a new CI test verifies the INSTALLDIR registry identifiers and their ordering.
Prettier configuration for WiX templates
.prettierignore
Added *.wxs pattern to exclude WiX installer templates from Prettier formatting.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

  • TouchAI-org/TouchAI#375: This PR directly removes the managed-auth/deep-link/Tauri deep-link wiring and related runtime/bootstrap/AuthService and provider config pieces that #375 introduced for the Hub flow.
  • TouchAI-org/TouchAI#448: Both PRs modify AiConversationRuntime's managed-auth invalidation path — #448 adjusts the cleanup behavior while this PR removes it entirely.
  • TouchAI-org/TouchAI#283: This PR removes the MiMo "promoted/recommended" badge UI (promoted props, partitioned provider list) in BadgedLogo.vue, ProviderCard.vue, and ProviderList.vue that #283 introduced.

Poem

🐇 Hop, hop, the Hub links are gone,
No managed tokens to carry along!
The deep-link tunnel is sealed with care,
Just API keys floating in the air.
MiMo now speaks direct and plain—
A simpler burrow after the rain! 🌿

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 44.44% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title follows Conventional Commits format with 'fix' prefix, clear scope 'desktop', and concise description accurately summarizing the main change.
Description check ✅ Passed The description includes all key sections: Summary, Related issue/RFC, AI assistance disclosure, Testing evidence, Risk notes, Screenshots, and Checklist with appropriate detail.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/remove-xiaomi-activity

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

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot added the kind:docs Documentation-related work label Jun 15, 2026
coderabbitai[bot]
coderabbitai Bot previously requested changes Jun 15, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts`:
- Line 1: The file begins with a UTF-8 BOM (Byte Order Mark) character which is
unnecessary and can cause issues with some tools. Remove the BOM character from
the very beginning of the file, before the import statement that imports
flushPromises and mount from '`@vue/test-utils`'.
- Line 116: Replace all instances of the corrupted Chinese text '鐏北寮曟搸' with the
correct provider name '火山引擎' (Volcengine) in the test fixture. The corrupted
text appears in the provider name fields within the test data structure and
should be corrected to match the actual provider name defined in seed.sql.
Update both occurrences of this corrupted text to ensure the test fixture
contains valid and correct Chinese characters.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 105a9619-dd41-4e61-a062-a4b6c0c21c05

📥 Commits

Reviewing files that changed from the base of the PR and between ebc3494 and 749316e.

⛔ Files ignored due to path filters (4)
  • apps/desktop/src-tauri/Cargo.lock is excluded by !**/*.lock
  • docs/images/touchai-mimo.en.png is excluded by !**/*.png
  • docs/images/touchai-mimo.png is excluded by !**/*.png
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (43)
  • README.en.md
  • README.md
  • apps/desktop/CHANGELOG.md
  • apps/desktop/package.json
  • apps/desktop/src-tauri/Cargo.toml
  • apps/desktop/src-tauri/capabilities/default.json
  • apps/desktop/src-tauri/src/lib.rs
  • apps/desktop/src-tauri/tauri.conf.json
  • apps/desktop/src/bootstrap.ts
  • apps/desktop/src/database/artifacts/runtime/seed.sql
  • apps/desktop/src/database/queries/providers.ts
  • apps/desktop/src/i18n/messages.ts
  • apps/desktop/src/i18n/textMap.ts
  • apps/desktop/src/services/AgentService/execution/retry.ts
  • apps/desktop/src/services/AgentService/execution/runtime.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/adapters/mimo.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/config.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/drivers.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/index.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/types.ts
  • apps/desktop/src/services/AuthService/index.ts
  • apps/desktop/src/services/AuthService/managedSettingsFocus.ts
  • apps/desktop/src/services/EventService/types.ts
  • apps/desktop/src/views/SettingsView/components/AiServices/components/BadgedLogo.vue
  • apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderCard.vue
  • apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderConfig.vue
  • apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderList.vue
  • apps/desktop/src/views/SettingsView/components/AiServices/index.vue
  • apps/desktop/src/views/SettingsView/index.vue
  • apps/desktop/tests/SettingsView/ai-services-i18n.test.ts
  • apps/desktop/tests/SettingsView/ai-services-section-i18n.test.ts
  • apps/desktop/tests/ci/vite-dev-cache.test.ts
  • apps/desktop/tests/database/runtime-seed.test.ts
  • apps/desktop/tests/i18n/main-bootstrap.test.ts
  • apps/desktop/tests/services/AgentService/catalog/providers.test.ts
  • apps/desktop/tests/services/AgentService/contracts/errors-i18n.test.ts
  • apps/desktop/tests/services/AgentService/execution/executor.test.ts
  • apps/desktop/tests/services/AgentService/execution/runtime.test.ts
  • apps/desktop/tests/services/AgentService/infrastructure/providers/mimo.test.ts
  • apps/desktop/tests/services/AuthService/index.test.ts
  • apps/desktop/tests/views/SettingsView/providerConfig.test.ts
  • apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts
  • apps/desktop/vite.config.ts
💤 Files with no reviewable changes (24)
  • apps/desktop/tests/services/AgentService/catalog/providers.test.ts
  • apps/desktop/tests/views/SettingsView/providerConfig.test.ts
  • apps/desktop/src/services/AuthService/managedSettingsFocus.ts
  • apps/desktop/src/services/AgentService/infrastructure/providers/types.ts
  • apps/desktop/package.json
  • apps/desktop/src/services/AuthService/index.ts
  • apps/desktop/tests/services/AgentService/infrastructure/providers/mimo.test.ts
  • apps/desktop/tests/services/AgentService/execution/runtime.test.ts
  • apps/desktop/src-tauri/tauri.conf.json
  • apps/desktop/tests/SettingsView/ai-services-i18n.test.ts
  • apps/desktop/tests/services/AuthService/index.test.ts
  • apps/desktop/src/services/EventService/types.ts
  • apps/desktop/tests/ci/vite-dev-cache.test.ts
  • apps/desktop/src/services/AgentService/execution/runtime.ts
  • apps/desktop/tests/SettingsView/ai-services-section-i18n.test.ts
  • apps/desktop/src-tauri/capabilities/default.json
  • apps/desktop/vite.config.ts
  • apps/desktop/src/database/queries/providers.ts
  • apps/desktop/src/services/AgentService/execution/retry.ts
  • apps/desktop/src/i18n/textMap.ts
  • apps/desktop/tests/database/runtime-seed.test.ts
  • apps/desktop/src/bootstrap.ts
  • apps/desktop/src/i18n/messages.ts
  • apps/desktop/tests/i18n/main-bootstrap.test.ts
📜 Review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: Frontend Quality
  • GitHub Check: Frontend Tests
  • GitHub Check: Rust Checks
  • GitHub Check: Desktop E2E Smoke (Windows)
  • GitHub Check: CodeQL (rust)
🧰 Additional context used
🪛 SQLFluff (4.2.1)
apps/desktop/src/database/artifacts/runtime/seed.sql

[error] 74-74: The 'WHERE' keyword should always start a new line.

(LT14)

🔇 Additional comments (19)
apps/desktop/src-tauri/Cargo.toml (1)

42-42: LGTM!

apps/desktop/src-tauri/src/lib.rs (3)

59-63: LGTM!


69-75: LGTM!


182-182: LGTM!

apps/desktop/src/services/AgentService/infrastructure/providers/config.ts (1)

7-16: LGTM!

apps/desktop/src/services/AgentService/infrastructure/providers/index.ts (1)

6-6: LGTM!

apps/desktop/src/services/AgentService/infrastructure/providers/drivers.ts (1)

19-19: LGTM!

Also applies to: 115-121

apps/desktop/src/database/artifacts/runtime/seed.sql (2)

73-74: LGTM!


76-93: Migration logic correctly handles all legacy configurations.

The UPDATE statement properly:

  • Extracts custom endpoint/apiKey when touchAiMode='custom'
  • Nullifies managed keys (ta_live_%) for non-custom mode while preserving user keys
  • Clears all legacy JSON fields (managedAuth, touchAiMode, touchAiCustom)
  • Targets rows via both old hub endpoint and presence of any legacy JSON fields
apps/desktop/tests/services/AgentService/contracts/errors-i18n.test.ts (1)

74-76: LGTM!

apps/desktop/tests/services/AgentService/execution/executor.test.ts (1)

42-44: LGTM!

Also applies to: 64-66

apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts (1)

79-98: LGTM!

apps/desktop/src/services/AgentService/infrastructure/providers/adapters/mimo.ts (1)

1-73: LGTM!

apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderConfig.vue (1)

1-121: LGTM!

apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderList.vue (1)

1-86: LGTM!

apps/desktop/src/views/SettingsView/components/AiServices/components/BadgedLogo.vue (1)

1-69: LGTM!

apps/desktop/src/views/SettingsView/components/AiServices/components/ProviderCard.vue (1)

1-115: LGTM!

apps/desktop/src/views/SettingsView/components/AiServices/index.vue (1)

1-782: LGTM!

apps/desktop/src/views/SettingsView/index.vue (1)

1-333: LGTM!

Comment thread apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts Outdated
Comment thread apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts Outdated
@hiqiancheng

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@hiqiancheng hiqiancheng dismissed coderabbitai[bot]’s stale review June 15, 2026 15:36

Dismiss stale CodeRabbit review after fixing BOM and provider fixture text in 515c3ed.

@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@apps/desktop/tests/services/AgentService/execution/retry.test.ts`:
- Around line 6-16: The test file for shouldRetryRequestFailure() currently only
covers API_ERROR with a retryable HTTP status code, but the function has two
additional code paths that need testing: error.isRetryable() which should return
true for network errors like TIMEOUT, RATE_LIMIT, SERVICE_UNAVAILABLE,
BAD_GATEWAY, GATEWAY_TIMEOUT, and EMPTY_RESPONSE (which are actively used at
runtime), and non-API_ERROR errors with retryable status codes. Add test cases
to cover these missing scenarios, including at minimum a test case that verifies
shouldRetryRequestFailure() returns true when passed an AiError with
AiErrorCode.TIMEOUT (or similar retryable error codes), and a test case for a
non-API_ERROR error type with a retryable status code to ensure these critical
error handling paths are validated and prevent regressions.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: a4da992b-0214-4852-8037-bf94ae72d35f

📥 Commits

Reviewing files that changed from the base of the PR and between 749316e and 515c3ed.

📒 Files selected for processing (2)
  • apps/desktop/tests/services/AgentService/execution/retry.test.ts
  • apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts
📜 Review details
🔇 Additional comments (1)
apps/desktop/tests/views/SettingsView/settingsAiServicesLayout.test.ts (1)

1-1: LGTM!

Also applies to: 116-116, 151-151

Comment thread apps/desktop/tests/services/AgentService/execution/retry.test.ts
@hiqiancheng

Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jun 15, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

coderabbitai[bot]
coderabbitai Bot previously approved these changes Jun 15, 2026
coderabbitai[bot]
coderabbitai Bot previously approved these changes Jun 16, 2026
@hiqiancheng hiqiancheng added this pull request to the merge queue Jun 16, 2026
Merged via the queue into main with commit ba8011f Jun 16, 2026
27 checks passed
@hiqiancheng hiqiancheng deleted the fix/remove-xiaomi-activity branch June 16, 2026 05:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:agent-service AgentService and conversation runtime changes area:database Schema, persistence, or migration changes area:frontend Frontend UI or view-layer changes area:tauri Tauri shell or desktop runtime changes kind:docs Documentation-related work

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant