1. 01 Mar, 2026 5 commits
    • erio's avatar
      fix: use i18n for mixed-channel warning messages and improve bulk pre-check · 3a04552f
      erio authored
      - BulkUpdate handler: add structured details to 409 response
      - BulkUpdateAccounts: simplify to global pre-check before any DB write;
        remove per-account snapshot tracking which is no longer needed
      - MixedChannelError.Error(): restore English message for API compatibility
      - BulkEditAccountModal: use t() with details for both pre-check and 409
        fallback paths instead of displaying raw backend strings
      - Update test to verify pre-check blocks on existing group conflicts
      3a04552f
    • erio's avatar
      fix: update mixed channel warning message · b67bf222
      erio authored
      b67bf222
    • erio's avatar
      fix: handle mixed channel warning for multi-platform bulk edit · dde3b59e
      erio authored
      Previously, preCheckMixedChannelRisk() skipped when selectedPlatforms
      had more than one entry, and the catch block in submitBulkUpdate had no
      409 handling — so multi-platform conflicts just showed a generic error.
      
      - Rename canPreCheck(): only call pre-check API for single-platform
        antigravity/anthropic selections (API requires a single platform param)
      - Pass `built` into preCheckMixedChannelRisk() so pendingUpdatesForConfirm
        is set before returning false
      - submitBulkUpdate: add 409 mixed_channel_warning catch as fallback for
        multi-platform case, saving baseUpdates for retry
      - Remove needsMixedChannelCheck() gate on confirm_mixed_channel_risk flag;
        use mixedChannelConfirmed alone so multi-platform retry also works
      dde3b59e
    • erio's avatar
      fix: bulk edit mixed channel warning not showing confirmation dialog · 947800b9
      erio authored
      The response interceptor in client.ts transforms errors into plain
      objects {status, code, message}, but catch blocks were checking
      error.response?.status (AxiosError format) which never matched.
      
      - Add error field passthrough in client.ts interceptor
      - Refactor BulkEditAccountModal to use pre-check API (checkMixedChannelRisk)
        before submit, matching the single edit flow
      - Fix EditAccountModal catch blocks to use interceptor error format
      - Add bulk-update mixed channel unit tests
      947800b9
    • erio's avatar
      feat: bulk update accounts pre-check mixed channel risk with confirm dialog · 7aa4c083
      erio authored
      - Move mixed channel check before any DB writes in BulkUpdateAccounts
      - Return 409 from BulkUpdate handler for MixedChannelError
      - Add ConfirmDialog to BulkEditAccountModal for mixed channel warning
      - Update mixed channel warning message to Chinese
      7aa4c083
  2. 28 Feb, 2026 35 commits