feat: complete M1-M3 infrastructure — OSS client, native execution chain, rule lifecycle API, system docs

- M1: unified OSS client (upload/download/presign) + path utils + config
- M2: rule service with validate/create/publish/rollback + binding CRUD endpoints
- M3: native AuditCtx runner, file/rule resolvers, storage adapter with full persistence
- docs: SYSTEM_OVERVIEW.md as comprehensive architecture reference
- fix: double finalize — terminal state now written once by finalize_run
This commit is contained in:
wren
2026-04-28 11:49:55 +08:00
parent be9fc4856b
commit 246c0e5ded
26 changed files with 1771 additions and 188 deletions
+3
View File
@@ -27,10 +27,13 @@ REDIS_PASSWORD: str
# OSS
OSS_ENDPOINT: str
OSS_BASE_URL: str
OSS_ACCESS_KEY: str
OSS_SECRET_KEY: str
OSS_BUCKET: str
OSS_REGION: str
OSS_USE_SSL: bool
OSS_PRESIGN_EXPIRE_SECONDS: int
# LLM
LLM_BASE_URL: str
+5
View File
@@ -52,15 +52,19 @@ class RedisSettings(_Base):
REDIS_PORT: int = 6379
REDIS_DB: int = 0
REDIS_PASSWORD: str = ""
REDIS_KEY_PREFIX: str = "leaudit"
class OssSettings(_Base):
"""OSS 对象存储配置 [OSS]。"""
OSS_ENDPOINT: str = ""
OSS_BASE_URL: str = ""
OSS_ACCESS_KEY: str = ""
OSS_SECRET_KEY: str = ""
OSS_BUCKET: str = "leaudit"
OSS_REGION: str = ""
OSS_USE_SSL: bool = True
OSS_PRESIGN_EXPIRE_SECONDS: int = 3600
class LlmSettings(_Base):
@@ -74,6 +78,7 @@ class VlmSettings(_Base):
"""VLM 配置 [VLM]。"""
VLM_BASE_URL: str = ""
VLM_MODEL: str = ""
VLM_API_KEY: str = ""
class OcrSettings(_Base):