feat(ai): generate covers without new titles

This commit is contained in:
chengma
2026-07-13 15:22:15 +08:00
parent e2fbae2ee1
commit d42a9c8084
13 changed files with 334 additions and 36 deletions
+11 -3
View File
@@ -2,7 +2,7 @@
from __future__ import annotations
from .. import diagnostics
from .. import ai, appconfig, diagnostics
from ..collect_skip import skipped_stage_text
from .widgets import *
@@ -190,10 +190,15 @@ class GenerateTaskTableModel(QAbstractTableModel):
self.db_path = db_path
self.status_callback = status_callback
self.last_edit_error = None
self.generate_mode = "title"
self.generate_cover_enabled = False
def set_generate_cover_enabled(self, enabled):
self.generate_cover_enabled = bool(enabled)
self.set_generate_mode("title_cover" if enabled else "title")
def set_generate_mode(self, mode):
self.generate_mode = appconfig.normalize_generate_mode(mode)
self.generate_cover_enabled = appconfig.generate_mode_includes_cover(self.generate_mode)
if not self.tasks:
return
top_left = self.index(0, 4)
@@ -403,7 +408,10 @@ class GenerateTaskTableModel(QAbstractTableModel):
return "失败"
if not self.generate_cover_enabled:
return "未启用"
if self._is_title_failure(task) or not self._has_new_title(task):
if self.generate_mode == "cover":
if not ai.cover_title_context(task):
return "未开始"
elif self._is_title_failure(task) or not self._has_new_title(task):
return "未开始"
if getattr(task, "status", None) == "running":
return "处理中"