feat: 配置写死与 baked 模块,Alembic 建表,百度仅 BAIDU_*

- 新增 app/baked/algorithm|pipeline,非部署参数不再走 env;Settings 保留 DB/HTTP/RTSP/海康/百度/MinIO/Demo
- 移除 init_db_schema 与 reload 配置;main 仅 check_database;start*.sh 在 uvicorn 前执行 alembic upgrade head
- 依赖 psycopg[binary] 供 Alembic 同步 URL;alembic/env 注释与预发清单更新
- 撕段门控消费管线、各视频/语音/归档调用改为 baked
- 百度环境变量仅 BAIDU_APP_ID、BAIDU_API_KEY、BAIDU_SECRET_KEY 与 BAIDU_* 超时/ASR;人脸脚本与 baidu_speech 文案同步
- 全量单测与 .env.example 更新;.gitignore 忽略 refs/(本地权重/视频不入库)

Made-with: Cursor
This commit is contained in:
Kevin
2026-04-24 15:33:22 +08:00
parent b651364877
commit 8a4bad99d3
47 changed files with 1333 additions and 648 deletions

View File

@@ -26,6 +26,7 @@ from sqlalchemy.ext.asyncio import AsyncSession, async_sessionmaker, create_asyn
import app.db.models # noqa: F401 # register ORM tables on Base.metadata
import main as main_module
from app.baked import pipeline as bp
from app.db.base import Base
from app.dependencies import AppContainer, build_container
from app.domain.consumption import SurgeryConsumptionStored
@@ -165,7 +166,6 @@ def integration_client(
return None
monkeypatch.setattr(main_module, "check_database", _noop)
monkeypatch.setattr(main_module, "init_db_schema", _noop)
class _FakeEngine:
async def dispose(self) -> None:
@@ -176,11 +176,10 @@ def integration_client(
from app.config import settings as real_settings
monkeypatch.setattr(
real_settings,
"archive_persist_durable_fallback_dir",
bp,
"ARCHIVE_PERSIST_DURABLE_FALLBACK_DIR",
str(tmp_path / "pending_archive"),
)
monkeypatch.setattr(real_settings, "auto_create_schema", False)
def _stubbed_build_container(*args, **kwargs) -> AppContainer:
container = build_container(real_settings, session_factory=sqlite_factory)