refactor(api): TOML 配置 SSOT、统一错误契约、Auth/事务加固与可观测性 (#33)

配置 SSOT(TOML + .env)
统一错误契约
Auth 与事务边界
Redis / Celery 可靠性:业务 Redis(DB/0)与 Celery broker/backend(DB/1)显式拆分;连接池、sync client
可观测性(OpenTelemetry + LGTM)
This commit is contained in:
Sully
2026-05-22 13:44:50 +08:00
committed by GitHub
parent f09ae248f9
commit 53e0065e3e
298 changed files with 15247 additions and 4344 deletions

View File

@@ -22,27 +22,27 @@ def test_apply_rules_no_false_positive_rong() -> None:
def test_normalize_respects_global_off() -> None:
raw = "美看上我"
with patch("app.features.memoir.oral_normalize.settings") as m:
m.memoir_oral_normalize_enabled = False
m.memoir_oral_normalize_mode = "rules"
with patch("app.features.memoir.oral_normalize.memoir") as m:
m.oral_normalize_enabled = False
m.oral_normalize_mode = "rules"
assert normalize_oral_for_memoir(raw, llm=None) == raw
def test_normalize_rules_mode_no_llm() -> None:
raw = "美看上我"
with patch("app.features.memoir.oral_normalize.settings") as m:
m.memoir_oral_normalize_enabled = True
m.memoir_oral_normalize_mode = "rules"
m.memoir_oral_normalize_llm_max_tokens = 512
m.memoir_oral_normalize_llm_max_input_chars = 8000
with patch("app.features.memoir.oral_normalize.memoir") as m:
m.oral_normalize_enabled = True
m.oral_normalize_mode = "rules"
m.oral_normalize_llm_max_tokens = 512
m.oral_normalize_llm_max_input_chars = 8000
assert normalize_oral_for_memoir(raw, llm=None) == "没看上我"
def test_normalize_mode_off_string() -> None:
raw = "美看上我"
with patch("app.features.memoir.oral_normalize.settings") as m:
m.memoir_oral_normalize_enabled = True
m.memoir_oral_normalize_mode = "off"
m.memoir_oral_normalize_llm_max_tokens = 512
m.memoir_oral_normalize_llm_max_input_chars = 8000
with patch("app.features.memoir.oral_normalize.memoir") as m:
m.oral_normalize_enabled = True
m.oral_normalize_mode = "off"
m.oral_normalize_llm_max_tokens = 512
m.oral_normalize_llm_max_input_chars = 8000
assert normalize_oral_for_memoir(raw, llm=None) == raw