fix(api): 修復全部 lint 錯誤 (ruff --fix)

- Import sorting (I001)
- Unused imports (F401)
- f-string without placeholders (F541)
- Loop variable unused (B007)
- zip() strict parameter (B905)
- Exception chaining (B904)
- collections.abc imports (UP035)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
OG T
2026-03-26 16:06:20 +08:00
parent e26ea526b1
commit 30153496d1
38 changed files with 3041 additions and 101 deletions

View File

@@ -12,13 +12,15 @@ Phase 7.1: 資料模型定義
- 支援 PostgreSQL + Redis 雙層儲存
"""
from datetime import UTC, datetime
from datetime import datetime
from enum import Enum
from typing import Any
from uuid import uuid4
from pydantic import BaseModel, ConfigDict, Field
from src.utils.timezone import now_taipei
# =============================================================================
# Enums
# =============================================================================
@@ -123,8 +125,8 @@ class RepairStep(BaseModel):
def generate_playbook_id() -> str:
"""生成 Playbook ID"""
return f"PB-{datetime.now(UTC).strftime('%Y%m%d')}-{uuid4().hex[:6].upper()}"
"""生成 Playbook ID (台北時區)"""
return f"PB-{now_taipei().strftime('%Y%m%d')}-{uuid4().hex[:6].upper()}"
class Playbook(BaseModel):
@@ -195,8 +197,8 @@ class Playbook(BaseModel):
notes: str | None = Field(None, description="人工補充說明")
# === 時間軸 ===
created_at: datetime = Field(default_factory=lambda: datetime.now(UTC))
updated_at: datetime = Field(default_factory=lambda: datetime.now(UTC))
created_at: datetime = Field(default_factory=now_taipei)
updated_at: datetime = Field(default_factory=now_taipei)
model_config = ConfigDict(extra="ignore")