Skip to content

Commit 7d44cd0

Browse files
authored
docs: remove transient PR notes (#1255)
1 parent c325a14 commit 7d44cd0

10 files changed

Lines changed: 11 additions & 20 deletions

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@
1717
1818
[**功能特性**](#-功能特性) · [**快速开始**](#-快速开始) · [**推送效果**](#-推送效果) · [**文档中心**](docs/INDEX.md) · [**完整指南**](docs/full-guide.md) · [**常见问题**](docs/FAQ.md) · [**更新日志**](docs/CHANGELOG.md)
1919

20-
> 本次仅更新文档与部署说明,未随本次改动新增后端运行时能力;Anspire / AIHubMix / SerpAPI 等配置为现有能力的说明口径。
21-
2220
简体中文 | [English](docs/README_EN.md) | [繁體中文](docs/README_CHT.md)
2321

2422
</div>

docs/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/).
4040
- [文档] 新增可审计兼容证据交叉链:`Config._load_from_env()` 优先级为 `LITELLM_CONFIG` > `LLM_CHANNELS` > legacy,回退路径与回滚策略与 `tests/test_llm_channel_config.py``tests/test_market_review_runtime.py``tests/test_analysis_api_contract.py` 对齐。
4141
- [修复] 修正大盘复盘 Windows fallback 锁的进程存活探测,避免使用 `os.kill(pid, 0)` 误伤正在运行的复盘进程。
4242
- [改进] Web 首页接入首次启动配置状态,基础配置未完成时提示缺口并引导进入系统设置。
43+
- [文档] 移除 README、完整指南与配置指南中的 PR/文档同步临时说明,改为面向使用者的常驻说明。
4344

4445
## [3.15.0] - 2026-05-05
4546

docs/LLM_CONFIG_GUIDE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
### Anspire Open 示例:
2828

2929
> 💡 **推荐 [Anspire Open](https://open.anspire.cn/?share_code=QFBC0FYC)**:支持中文优化的联网搜索与 OpenAI-compatible 路径一体化体验,适合只准备一个 Key 的用户。
30-
> - 以下为配置示例,模型与网关可用性以账号权限和 Anspire 控制台为准;本项目未在本次 PR 中新增可复现的线上连通性 smoke 验证
30+
> - 以下为配置示例,模型与网关可用性以账号权限和 Anspire 控制台为准;文档示例不替代实际连通性验证
3131
> - 建议在 Web 设置页点击“测试连接”进行实际鉴权与模型可用性检查,避免以文档默认值直接当作可用性承诺。
3232
3333
```env
@@ -188,7 +188,7 @@ LITELLM_MODEL=ollama/qwen3:8b
188188
- 问股 Agent 运行时沿用与普通分析相同的三层优先级:`LITELLM_CONFIG`(LiteLLM YAML)> `LLM_CHANNELS` > legacy provider keys。只要上层配置有效生效,下层配置就不会再参与本次请求。
189189
- YAML 模式下,Agent 直接复用 LiteLLM `model_list` / `model_name` 路由语义;渠道模式下,优先读取 `AGENT_LITELLM_MODEL`,留空时继承 `LITELLM_MODEL`,再按 `LITELLM_FALLBACK_MODELS` 继续 fallback。
190190
- 如果你没有启用 YAML / Channels,且 `AGENT_LITELLM_MODEL` 也留空,但本地仍保留 legacy 环境变量,问股 Agent 依然会继承旧配置:`GEMINI_API_KEY + GEMINI_MODEL` -> `gemini/<model>``OPENAI_API_KEY + OPENAI_MODEL` -> `openai/<model>``ANTHROPIC_API_KEY + ANTHROPIC_MODEL` -> `anthropic/<model>`
191-
- 本次修复只增强“失败时保留后端真实错误原因”和“未配置 LLM 时给出更具体诊断”,**不会**静默删除、清空、迁移或改写你现有的 `GEMINI_*` / `OPENAI_*` / `ANTHROPIC_*` / `LITELLM_*` 配置。
191+
- 该兼容逻辑只增强“失败时保留后端真实错误原因”和“未配置 LLM 时给出更具体诊断”,**不会**静默删除、清空、迁移或改写你现有的 `GEMINI_*` / `OPENAI_*` / `ANTHROPIC_*` / `LITELLM_*` 配置。
192192
- 如果当前环境没有任何有效 Agent 模型链路,问股页面会继续按失败语义返回,并直接展示后端真实配置诊断;补齐任一有效模型来源后即可恢复,无需额外执行配置迁移脚本。
193193
- 推荐的新配置方式仍然是显式设置 `LITELLM_MODEL` / `AGENT_LITELLM_MODEL` 或使用 `LLM_CHANNELS`;legacy provider keys 目前保留为兼容回退路径,方便旧 `.env`、本地 macOS 开发环境和历史部署平滑继续运行。
194194

docs/LLM_CONFIG_GUIDE_EN.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ If you only plan to use one single model, this is the fastest way. Open the `.en
2828

2929
> 💡 **[Anspire Open](https://open.anspire.cn/?share_code=QFBC0FYC)**: supports Chinese-optimized search and OpenAI-compatible model access using a shared key.
3030
> - The following values are configuration examples only; model availability depends on your account and Anspire console.
31-
> - This PR does not add a reproducible online smoke test for Anspire connectivity; please validate with the Web "Test connection" flow before relying on production traffic.
31+
> - Documentation examples do not replace connectivity validation; please validate with the Web "Test connection" flow before relying on production traffic.
3232
3333
```env
3434
# Anspire Open API keys (multiple keys supported, separated by commas)

docs/README_CHT.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@
1919

2020
[**功能特性**](#-功能特性) · [**快速開始**](#-快速開始) · [**推送效果**](#-推送效果) · [**文檔中心**](./INDEX.md) · [**完整指南**](./full-guide.md) · [**常見問題**](./FAQ.md) · [**更新日誌**](./CHANGELOG.md)
2121

22-
> 本次為文件更新,未隨本次變更引入新的運行時能力;Anspire / AIHubMix / SerpAPI 等供應商配置為既有能力的使用口徑補充。
23-
2422
繁體中文 | [English](README_EN.md) | [简体中文](../README.md)
2523

2624
</div>

docs/README_EN.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,6 @@ Analyze your watchlist daily -> generate a decision dashboard -> push to Telegra
1919

2020
[**Key Features**](#-key-features) · [**Quick Start**](#-quick-start) · [**Sample Output**](#-sample-output) · [**Documentation Index**](./INDEX_EN.md) · [**Full Guide**](./full-guide_EN.md) · [**FAQ**](./FAQ_EN.md) · [**Changelog**](./CHANGELOG.md)
2121

22-
> This PR-doc update is documentation-only and does not introduce runtime implementation changes. Provider recommendations for Anspire / AIHubMix / SerpAPI reflect existing runtime capabilities and configuration semantics.
23-
2422
English | [简体中文](../README.md) | [繁體中文](README_CHT.md)
2523

2624
</div>

docs/bot-command.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ class CommandDispatcher:
210210
### 回退与迁移边界
211211

212212
- `LITELLM_CONFIG``LLM_CHANNELS` 任一生效时,下层 legacy 配置会被该层忽略(不会继续作为本次调用来源)。
213-
- 本次修复仅增强诊断,不进行 silent migration:不会主动清空/删除 `GEMINI_*``OPENAI_*``ANTHROPIC_*``LITELLM_*` 的历史值,仅在可用性诊断上提示。
213+
- 诊断增强不进行 silent migration:不会主动清空/删除 `GEMINI_*``OPENAI_*``ANTHROPIC_*``LITELLM_*` 的历史值,仅在可用性诊断上提示。
214214

215215
### 官方兼容来源(用于排障核对)
216216

docs/deploy-webui-cloud.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -176,7 +176,7 @@ docker pull ghcr.io/zhulinsen/daily_stock_analysis:v3.12.0
176176

177177
如果你一直使用 `latest`,建议改成显式版本 tag;否则很难仅凭容器内页面信息判断自己是否已经重复更新到同一版本。
178178

179-
在确认本地前端打包链路时,建议执行以下命令用于本次改动的最小验证闭环
179+
在确认本地前端打包链路时,建议执行以下命令作为最小验证闭环
180180

181181
```bash
182182
cd apps/dsa-web

docs/full-guide.md

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,6 @@ daily_stock_analysis/
5555

5656
#### AI 模型配置(至少配置一个)
5757

58-
> 提示:以下配置说明主要用于同步和说明现有运行时能力的官方口径与兼容边界,本次更新为文档同步,不代表新增运行时能力实现。
59-
6058
| Secret 名称 | 说明 | 必填 |
6159
|------------|------|:----:|
6260
| `ANSPIRE_API_KEYS` | [Anspire](https://open.anspire.cn/?share_code=QFBC0FYC) API Key,一 Key 同时启用大模型和中文优化联网搜索,含本项目免费额度 | 推荐 |
@@ -1018,8 +1016,8 @@ python main.py --debug
10181016

10191017
个股报告的操作建议会结合支撑位、压力位、量能/筹码、主力资金流向和风险事件进行校准,避免仅因单日涨跌或评分跨线在“买入/卖出”之间剧烈切换。若价格处在支撑与压力之间且资金流不明确,报告会优先给出“持有、震荡观望、洗盘观察”等中性可执行建议;只有接近支撑确认、有效突破压力且量价/资金配合时才给出买入,跌破关键支撑或主力资金持续流出时才给出卖出/减仓。
10201018
该项调整会影响可操作决策的运行时落盘与提示词约束链路,但不变更 LLM 模型、LiteLLM 路由、Provider/Key 及其兼容边界,不影响配置保存/清理语义。
1021-
兼容性核验结论:除配置和模型侧语义外,本次变更覆盖 `src/analyzer.py`、`src/core/pipeline.py`、`src/core/backtest_engine.py`、`src/report_language.py` 及 `src/agent` 决策路径的运行时行为,建议复核报告决策类型映射与回测入口联动。
1022-
核验路径:本次变更在上述运行时路径与对应测试(`tests/test_backtest_engine.py`、`tests/test_analyzer_news_prompt.py`、`tests/test_decision_stability.py`、`tests/test_agent_pipeline.py` 等)中生效;未在 `src/config.py`、`src/report.py`、存储/持久化链路新增配置字段或清理逻辑。
1019+
兼容性核验结论:除配置和模型侧语义外,该决策稳定性链路覆盖 `src/analyzer.py`、`src/core/pipeline.py`、`src/core/backtest_engine.py`、`src/report_language.py` 及 `src/agent` 决策路径的运行时行为,建议复核报告决策类型映射与回测入口联动。
1020+
核验路径:相关逻辑在上述运行时路径与对应测试(`tests/test_backtest_engine.py`、`tests/test_analyzer_news_prompt.py`、`tests/test_decision_stability.py`、`tests/test_agent_pipeline.py` 等)中生效;未在 `src/config.py`、`src/report.py`、存储/持久化链路新增配置字段或清理逻辑。
10231021

10241022
## 回测功能
10251023

@@ -1117,7 +1115,7 @@ FastAPI 提供 RESTful API 服务,支持配置管理和触发分析。
11171115
| `/docs` | GET | API Swagger 文档 |
11181116

11191117
> 说明:`POST /api/v1/analysis/analyze` 在 `async_mode=false` 时仅支持单只股票;批量 `stock_codes` 需使用 `async_mode=true`。异步 `202` 响应对单股返回 `task_id`,对批量返回 `accepted` / `duplicates` 汇总结构。
1120-
> 说明:`POST /api/v1/analysis/market-review` 采用后端与 CLI/Bot 共用的配置路径(`GeminiAnalyzer(config=...)` 与同样的搜索/提示词构造入口)。本次补充的 provider 路由是兼容扩展:优先识别并使用 `litellm_model`、`llm_model_list`,若未配置则回退 legacy `GEMINI_*`、`OPENAI_*`、`ANTHROPIC_*`、`DEEPSEEK_*` 键;未新增/调整 provider、Base URL 或 LiteLLM 路由语义。
1118+
> 说明:`POST /api/v1/analysis/market-review` 采用后端与 CLI/Bot 共用的配置路径(`GeminiAnalyzer(config=...)` 与同样的搜索/提示词构造入口)。Provider 兼容路由会优先识别并使用 `litellm_model`、`llm_model_list`,若未配置则回退 legacy `GEMINI_*`、`OPENAI_*`、`ANTHROPIC_*`、`DEEPSEEK_*` 键;不会新增/调整 provider、Base URL 或 LiteLLM 路由语义。
11211119
> 审计依据:优先级与回退语义以 `src/config.py` 的 `Config._load_from_env()` 为准(`LITELLM_CONFIG` > `LLM_CHANNELS` > legacy)。配套回归见 `tests/test_llm_channel_config.py`(配置源解析)与 `tests/test_market_review_runtime.py`(共享装配路径)。该接口当前仅提供单进程/单机级防重复能力,若为多实例部署需通过外部任务队列或分布式锁补齐全局幂等。
11221120
> 说明:该端点若返回 `task_id`,WebUI 会轮询 `GET /api/v1/analysis/status/{task_id}` 展示状态。状态为 `completed` 时给出完成提示(报告已生成并按配置推送),状态为 `failed` 时在前端错误区域显示 `error` 原因。
11231121

docs/full-guide_EN.md

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,6 @@ Go to your forked repo → `Settings` → `Secrets and variables` → `Actions`
5555

5656
#### AI Model Configuration (Configure at Least One)
5757

58-
> Note: The configuration below documents existing runtime provider support and compatibility boundaries; this update is documentation-alignment only and does not introduce new runtime implementation.
59-
6058
| Secret Name | Description | Required |
6159
|------------|------|:----:|
6260
| `ANSPIRE_API_KEYS` | [Anspire](https://open.anspire.cn/?share_code=QFBC0FYC) API key, one key for popular LLMs and Chinese-optimized web search with free quota for this project | Recommended |
@@ -865,7 +863,7 @@ You can tune the behavior in `.env`:
865863
Single-stock reports calibrate operation advice with support/resistance, volume/chip context, main-force capital flow, and risk events. This reduces direct buy/sell flips caused only by one-day price movement or score thresholds. When price is between support and resistance and capital flow is unclear, the report prefers neutral actionable wording such as hold, range-bound watch, or shakeout watch. Buy calls require support confirmation or a valid resistance breakout with volume/capital-flow confirmation; sell/reduce calls require support failure, sustained outflow, or clearly elevated risk.
866864
This post-processing update only adjusts advisory wording and stability logic and does not change the configured LLM model/provider routing semantics (including LiteLLM, providers, or API model settings).
867865
Compatibility check result: decision operability and runtime post-processing paths are changed, while model/provider/API configuration and persistence semantics remain unchanged; the compatibility boundary is now in analysis/pipeline/agent intent inference and stabilization mapping.
868-
Verification trail: this PR updates runtime behavior in `src/analyzer.py`, `src/core/pipeline.py`, `src/core/backtest_engine.py`, `src/report_language.py`, and `src/agent` decision-path modules (with corresponding tests in `tests/test_backtest_engine.py`, `tests/test_analyzer_news_prompt.py`, `tests/test_decision_stability.py`, and `tests/test_agent_pipeline.py`); it does not add/remove runtime config fields or config-cleanup logic in `src/config.py` or persistence code paths.
866+
Verification trail: the runtime behavior is implemented in `src/analyzer.py`, `src/core/pipeline.py`, `src/core/backtest_engine.py`, `src/report_language.py`, and `src/agent` decision-path modules (with corresponding tests in `tests/test_backtest_engine.py`, `tests/test_analyzer_news_prompt.py`, `tests/test_decision_stability.py`, and `tests/test_agent_pipeline.py`); it does not add/remove runtime config fields or config-cleanup logic in `src/config.py` or persistence code paths.
869867

870868
## Backtesting
871869

@@ -961,7 +959,7 @@ FastAPI provides RESTful API service for configuration management and triggering
961959
| `/docs` | GET | API Swagger documentation |
962960

963961
> Note: `POST /api/v1/analysis/analyze` supports only one stock when `async_mode=false`; batch `stock_codes` requires `async_mode=true`. The async `202` response returns a single `task_id` for one stock, or an `accepted` / `duplicates` summary for batch requests.
964-
> Note: `POST /api/v1/analysis/market-review` follows the same runtime configuration path as CLI/Bot market review (`GeminiAnalyzer(config=...)`, search setup, and prompt/rendering pipeline). This PR extends compatibility by prioritizing `litellm_model` and `llm_model_list`, then falling back to existing legacy keys (`GEMINI_*`, `OPENAI_*`, `ANTHROPIC_*`, `DEEPSEEK_*`) when those are not set; provider names, Base URL, and LiteLLM routing semantics are otherwise unchanged.
962+
> Note: `POST /api/v1/analysis/market-review` follows the same runtime configuration path as CLI/Bot market review (`GeminiAnalyzer(config=...)`, search setup, and prompt/rendering pipeline). The provider compatibility path prioritizes `litellm_model` and `llm_model_list`, then falls back to existing legacy keys (`GEMINI_*`, `OPENAI_*`, `ANTHROPIC_*`, `DEEPSEEK_*`) when those are not set; provider names, Base URL, and LiteLLM routing semantics are otherwise unchanged.
965963
> Audit note: priority and fallback are defined by `Config._load_from_env()` in `src/config.py` (`LITELLM_CONFIG` > `LLM_CHANNELS` > legacy). Regression coverage is in `tests/test_llm_channel_config.py` (configuration source parsing) and `tests/test_market_review_runtime.py` (shared runtime assembly). The endpoint lock is process/host-level only; multi-instance deployments still need external distributed idempotency controls.
966964
> Note: when `/api/v1/analysis/market-review` returns a `task_id`, the WebUI polls `GET /api/v1/analysis/status/{task_id}`. The UI renders clear `pending/processing` progress, shows completion feedback when status becomes `completed`, and surfaces `error` content on `failed`.
967965

0 commit comments

Comments
 (0)