merge: 同步 main (辐射本地读 + 传输压缩/网络设置) 到全量分钟分支

冲突两处均为 minute-refresh status 字段两侧各自新增, 两者全保留
(healthy + provider/provider_effective/repair_only)。
This commit is contained in:
shy3130
2026-09-01 13:05:21 +08:00
12 changed files with 513 additions and 27 deletions
+26
View File
@@ -428,6 +428,14 @@ class DataSourceJobTimeoutPrefs(BaseModel):
data_source_long_job_timeout_s: int = Field(ge=60)
class MinuteBatchCompressPrefs(BaseModel):
minute_batch_compress: bool
class DailyBatchCompressPrefs(BaseModel):
daily_batch_compress: bool
class DatasetFieldMapItem(BaseModel):
source: str
target: str
@@ -506,6 +514,8 @@ def get_preferences() -> dict:
"financial_data_provider": preferences.get_financial_provider(),
"data_source_job_timeout_s": preferences.get_data_source_job_timeout_s(),
"data_source_long_job_timeout_s": preferences.get_data_source_long_job_timeout_s(),
"minute_batch_compress": preferences.get_minute_batch_compress(),
"daily_batch_compress": preferences.get_daily_batch_compress(),
**preferences.get_realtime_quote_scope(),
"pipeline_pull_a_share": preferences.get_pipeline_pull_a_share(),
"pipeline_pull_etf": preferences.get_pipeline_pull_etf(),
@@ -793,6 +803,22 @@ def update_data_source_job_timeouts(req: DataSourceJobTimeoutPrefs) -> dict:
return req.model_dump()
@router.put("/preferences/minute-batch-compress")
def update_minute_batch_compress(req: MinuteBatchCompressPrefs) -> dict:
"""保存分时批量响应的 gzip 传输压缩开关。逐请求即时读取, 保存后立即生效。"""
from app.services import preferences
preferences.save({"minute_batch_compress": req.minute_batch_compress})
return {"minute_batch_compress": preferences.get_minute_batch_compress()}
@router.put("/preferences/daily-batch-compress")
def update_daily_batch_compress(req: DailyBatchCompressPrefs) -> dict:
"""保存日K批量响应的 gzip 传输压缩开关 (与分时独立)。逐请求即时读取。"""
from app.services import preferences
preferences.save({"daily_batch_compress": req.daily_batch_compress})
return {"daily_batch_compress": preferences.get_daily_batch_compress()}
@router.put("/preferences/mining-schedule")
def update_mining_schedule(req: MiningSchedulePrefs) -> dict:
"""一次更新周度自动 mining 配置。"""