fix: scheduled-task none-delivery and settings model-delete fix#2256
Closed
tsonglew wants to merge 1 commit into
Closed
fix: scheduled-task none-delivery and settings model-delete fix#2256tsonglew wants to merge 1 commit into
tsonglew wants to merge 1 commit into
Conversation
- fix(scheduledTask): clear stale delivery target when switching to "不通知" - fix(settings): prevent white screen when deleting active custom model
Collaborator
|
感谢提交 PR,此 PR 已经通过 #2282 合并到 release/2026.7.6 分支。本 PR 将关闭,相关改动会在 release 合回 main 时自动带入。 |
This was referenced Jul 7, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR squashes two fixes:
Scheduled task notification channel「不通知」not taking effect — switching a task's notification channel to 「不通知」in the edit page and saving did not work; the form kept showing the previously selected channel.
White screen when deleting active custom model — deleting the currently active custom model in Settings caused a white screen.
Related Issue
Changes Made
fix(scheduledTask): clear stale delivery target when switching to "不通知"
channel/to/accountIdinmapGatewayJobwhendelivery.mode === 'none'— coversupdateJob/listJobs/getJob/addJob/toggleJobincluding theonRefresh → loadTasksrefresh pathmapGatewayDeliveryTargethelper for non-nonedelivery mapping with sessionKey inferencetoGatewayDelivery'snonebranch to send a clean{ mode: 'none' }patchnone, and not inferring channel fromsessionKeywhen mode isnonefix(settings): prevent white screen when deleting active custom model
Type of Change
Testing
Tested locally
Added new tests
Updated existing tests
Manual testing performed
npx vitest run src/scheduledTask/cronJobService.test.ts src/scheduledTask/modelMapper.test.ts→ 34 passed (incl. 2 new tests)npx eslint --max-warnings 0on touched files → cleanPre-existing env failure (unrelated):
metaStore.test.ts/integration.test.tsfail atnew Database(':memory:')due tobetter-sqlite3native-module version mismatch (NODE_MODULE_VERSION 143 vs 137)Screenshots (if applicable)
Checklist
Electron-Specific Changes
Additional Notes
The scheduled task fix is a client-side data-mapping fix in the scheduledTask model layer (
src/scheduledTask/cronJobService.ts). It does not touch IPC channels, the storage schema, OpenClaw configuration, runtime behavior, or restart logic. The root cause is that the OpenClaw gatewaycron.updatepatch-mergesdeliveryand cannot clear a previously-setchannel/to— stripping them client-side inmapGatewayJob(the single chokepoint for all gateway→UI job mappings) is the most robust solution.Manual validation recommended for the scheduled task fix:
npm run electron:dev→ edit a task's notification channel to 「不通知」 → save → reopen edit page / refresh → confirm it stays 「不通知」.