style: auto-format with black + isort + ruff + prettier [skip ci-format-check]
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 2m4s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m46s
AI Code Review / AI Code Review (pull_request) Successful in 6m36s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 10s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 12s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 13m26s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 10m44s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 11m54s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 12m46s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 16m11s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 37m34s
CI/CD Pipeline / CI Gate (pull_request) Failing after 1s
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 15h3m28s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 15h3m29s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 15h36m44s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 16h4m32s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 16h4m1s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 16h4m12s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 15h2m46s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 15h24m56s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 15h35m58s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 15h36m2s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 16h3m48s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 16h3m49s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 16h27m53s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 15h2m45s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 15h2m45s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 15h2m46s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 16h4m11s
CI/CD Pipeline / Dedup Check - skip PR tests when covered by push pipeline (pull_request) Successful in 2s
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 1s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 2m4s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 2m46s
AI Code Review / AI Code Review (pull_request) Successful in 6m36s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 10s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 12s
CI/CD Pipeline / Validate - Style (pull_request) Successful in 13m26s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 10m44s
CI/CD Pipeline / Integration Tests (pull_request) Failing after 11m54s
CI/CD Pipeline / Unit Tests (pull_request) Failing after 12m46s
CI/CD Pipeline / Validate - Python (mypy + alembic) (pull_request) Successful in 16m11s
CI/CD Pipeline / Validate - Security (pull_request) Successful in 37m34s
CI/CD Pipeline / CI Gate (pull_request) Failing after 1s
CI/CD Pipeline / Deploy Production (pull_request) Has been cancelled
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / Canary Release to Production (pull_request) Has been cancelled
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 15h3m28s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 15h3m29s
CI/CD Pipeline / Retag skipped Staging Web Image (pull_request) Failing after 15h36m44s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 16h4m32s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 16h4m1s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 16h4m12s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 15h2m46s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 15h24m56s
CI/CD Pipeline / Retag skipped Staging Worker Image (pull_request) Failing after 15h35m58s
CI/CD Pipeline / Retag skipped Staging API Image (pull_request) Failing after 15h36m2s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 16h3m48s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 16h3m49s
CI/CD Pipeline / Check push changed paths (pull_request) Failing after 16h27m53s
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 15h2m45s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 15h2m45s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 15h2m46s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 16h4m11s
This commit is contained in:
@@ -17,8 +17,6 @@ from datetime import UTC
|
||||
|
||||
from app.auth import AuthenticatedUser, get_current_user
|
||||
from app.config import settings
|
||||
from packages.domain.points_rules import calculate_points_cost
|
||||
from packages.domain.points_service import PointsService
|
||||
from app.dependencies import (
|
||||
get_db_session,
|
||||
get_voice_clone_profile_repository,
|
||||
@@ -34,6 +32,9 @@ from app.services.mediakit_client import MediaKitError
|
||||
from fastapi import APIRouter, BackgroundTasks, Depends, HTTPException, Query
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from packages.domain.points_rules import calculate_points_cost
|
||||
from packages.domain.points_service import PointsService
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@@ -13,6 +13,7 @@ import re
|
||||
import tempfile
|
||||
|
||||
from app.auth import AuthenticatedUser, get_current_user
|
||||
from app.dependencies import get_db_session
|
||||
from app.schemas.scripts_ai import (
|
||||
AiGenerateTitlesRequest,
|
||||
AiGenerateTitlesResponse,
|
||||
@@ -29,7 +30,6 @@ from app.services.script_asr_service import (
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.dependencies import get_db_session
|
||||
from packages.middleware.points_gate import points_gate
|
||||
from packages.shared.ai_client import get_doubao_client
|
||||
|
||||
|
||||
@@ -41,8 +41,6 @@ from sqlalchemy.orm import Session
|
||||
from packages.adapters.sqlalchemy_impl.tts_job_repository import (
|
||||
SQLAlchemyTTSJobRepository,
|
||||
)
|
||||
from packages.domain.points_rules import calculate_points_cost
|
||||
from packages.domain.points_service import PointsService
|
||||
from packages.application.cosyvoice_service import CosyVoiceError, CosyVoiceService
|
||||
from packages.application.tts_job.streaming_service import TTSStreamingService
|
||||
from packages.application.tts_job.use_cases import (
|
||||
@@ -55,6 +53,8 @@ from packages.application.tts_job.use_cases import (
|
||||
)
|
||||
from packages.application.tts_job.workflow import TTSWorkflowService
|
||||
from packages.domain import Asset, AssetLibrary, AssetLibraryKind, AssetStatus, ClassificationStatus
|
||||
from packages.domain.points_rules import calculate_points_cost
|
||||
from packages.domain.points_service import PointsService
|
||||
from packages.domain.voice_presets import list_voices
|
||||
from packages.ports.asset_library_repository import AssetLibraryRepository
|
||||
from packages.ports.asset_repository import AssetRepository
|
||||
|
||||
@@ -25,6 +25,7 @@ from app.schemas.voice_clone import (
|
||||
VoiceCloneStatusResponse,
|
||||
)
|
||||
from fastapi import APIRouter, Depends, HTTPException, Query, Response, status
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from packages.adapters.sqlalchemy_impl.voice_clone_profile_repository import (
|
||||
SQLAlchemyVoiceCloneProfileRepository,
|
||||
@@ -43,7 +44,6 @@ from packages.application.voice_clone.workflow import (
|
||||
)
|
||||
from packages.domain.points_rules import calculate_points_cost
|
||||
from packages.domain.points_service import PointsService
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
# remove duplicate
|
||||
_DUMMY_DELETED = ()
|
||||
|
||||
@@ -81,10 +81,10 @@ def points_gate(
|
||||
return decorator
|
||||
|
||||
|
||||
|
||||
def _filter_kwargs(func: Callable, kwargs: dict) -> dict:
|
||||
"""过滤掉目标函数签名不接受的 kwargs(避免 TypeError)。"""
|
||||
import inspect
|
||||
|
||||
try:
|
||||
sig = inspect.signature(func)
|
||||
params = sig.parameters
|
||||
@@ -95,6 +95,7 @@ def _filter_kwargs(func: Callable, kwargs: dict) -> dict:
|
||||
except (ValueError, TypeError):
|
||||
return kwargs
|
||||
|
||||
|
||||
def _extract_kwargs(func: Callable, args: tuple, kwargs: dict) -> dict:
|
||||
"""将位置参数映射到函数签名中的参数名,便于统一按 kwargs 提取。"""
|
||||
sig = inspect.signature(func)
|
||||
|
||||
@@ -13,11 +13,11 @@ from __future__ import annotations
|
||||
import sys
|
||||
from unittest.mock import MagicMock, patch
|
||||
|
||||
import packages.middleware.points_gate as _pg_module
|
||||
|
||||
import pydantic
|
||||
import pytest
|
||||
|
||||
import packages.middleware.points_gate as _pg_module
|
||||
|
||||
sys.path.insert(0, "apps/api")
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user