From 30d6d9e146fab28dee1eddace2415d82cc35a746 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sun, 13 Sep 2026 14:55:22 +0800 Subject: [PATCH] chore(architecture): align complexity baseline with formatting --- app/chain/scraping.py | 3 +++ app/chain/workflow.py | 2 ++ tests/fixtures/architecture/complexity-v2-baseline.json | 4 ++-- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/app/chain/scraping.py b/app/chain/scraping.py index b6d494116..af7bdd5f5 100644 --- a/app/chain/scraping.py +++ b/app/chain/scraping.py @@ -132,6 +132,7 @@ def _scraping_http_snapshot() -> ScrapingHttpPort: raise RuntimeError("刮削 HTTP 端口尚未由启动组合根装配") return http + scraping_lock = Lock() current_umask = os.umask(0) @@ -145,6 +146,7 @@ class _MusicScrapeFileResult: metadata_success: bool = True lyrics_status: str = "disabled" + class ScrapingOption: """刮削选项""" @@ -193,6 +195,7 @@ class ScrapingOption: """是否只在歌词等产物质量更高时替换。""" return self.policy == ScrapingPolicy.UPGRADE + class ScrapingConfig: """媒体刮削配置""" diff --git a/app/chain/workflow.py b/app/chain/workflow.py index caa8aae68..2067606dd 100644 --- a/app/chain/workflow.py +++ b/app/chain/workflow.py @@ -31,6 +31,8 @@ ARTIFACT_FIELDS = {"torrents", "medias", "fileitems", "downloads", "sites", "sub DEFAULT_WORKFLOW_MAX_WORKERS = 4 WORKFLOW_EXECUTOR_STOP_TIMEOUT_SECONDS = 10.0 CIRCULAR_REFERENCE_PLACEHOLDER = "[Circular]" + + def _serialize_workflow_key(key: Any) -> Any: """将映射键转换为 JSON 安全值。""" if key is None or isinstance(key, (str, int, float, bool)): diff --git a/tests/fixtures/architecture/complexity-v2-baseline.json b/tests/fixtures/architecture/complexity-v2-baseline.json index 1a5cfeb18..45c411be5 100644 --- a/tests/fixtures/architecture/complexity-v2-baseline.json +++ b/tests/fixtures/architecture/complexity-v2-baseline.json @@ -44,11 +44,11 @@ "app/chain/base.py": 1201, "app/chain/interaction.py": 1571, "app/chain/message.py": 1984, - "app/chain/scraping.py": 2065, + "app/chain/scraping.py": 2068, "app/chain/site.py": 1187, "app/chain/transfer/queue.py": 1631, "app/chain/transfer/workflow.py": 1106, - "app/chain/workflow.py": 1391 + "app/chain/workflow.py": 1393 }, "method": { "app/api/endpoints/transfer.py:_execute_manual_transfer": 296,