mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-11-15 18:59:33 +01:00
fix(settings): re-evaluate the keep-warm only when its default or cap changes
Merge-time fix for #666 (the review's nit). The settings PUT called `rescheduleAll()` whenever the body carried either keep-warm key, and the browser sends both on every App Settings save, so every save of anything re-read the settings and re-evaluated every session. It now compares the merged settings with the stored ones, following the rule that a settings action resolves from `merged`, never from the raw body. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
2a56b2a997
commit
0ca64f8256
3 files changed
+31
-3
No files matched your search
@@ -1113,7 +1113,11 @@ export function registerSystemRoutes(
|
||||
toggleService((merged.subagentTrackingEnabled as boolean) ?? true, subagentWatcher, 'Subagent watcher');
|
||||
// The prompt-cache keep-warm keeps its default and cap in memory; a changed default or cap
|
||||
// makes it re-read them and re-evaluate every session now rather than at its next cache report.
|
||||
if ('promptCacheKeepWarm' in settingsToStore || 'promptCacheKeepWarmMaxHours' in settingsToStore) {
|
||||
// Compared on `merged`, not tested for in the body: the browser sends both keys on every save.
|
||||
if (
|
||||
merged.promptCacheKeepWarm !== existing.promptCacheKeepWarm ||
|
||||
merged.promptCacheKeepWarmMaxHours !== existing.promptCacheKeepWarmMaxHours
|
||||
) {
|
||||
ctx.keepWarm.rescheduleAll();
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user