mumu
3b5ef16144
feat: harden AlphaSift data source routing ( #1680 )
...
* feat: harden alphasift data source routing
* fix(review-feedback-1680): Keep the sample AlphaSift pin in sync and Avoid circuit-breaking
* fix(review-feedback-1680): Defer half-open health checks until a source is attempted and Treat
* fix(review-feedback-1680): fix only bypasses this branch for fetchers that opt into allow empty
* fix(review-feedback-1680): Avoid accepting truncated Tencent histories
* fix(review-feedback-1680): 修正 .env.example 的 AlphaSift 快照源默认说明,并避免在 docs/CHANGELOG.md
* fix(review-feedback-1680): src/config.py、src/services/alphasift service.py
* fix(review-feedback-1680): requirements.txt、src/config.py、.env.example、src/services/alphasift
* fix(review-feedback-1680): 修复 TencentFetcher 对显式历史窗口的处理问题
* fix(review-feedback-1680): Check the cap was hit before rejecting Tencent history
* fix(review-feedback-1680): Use Tencent's hyphenated date format and Convert Tencent daily volume
* fix(review-feedback-1680): Accept the executor timeout argument and preserve capped windows with
* fix: limit empty daily data opt-in behavior
* docs: restore AlphaSift 3.22 changelog entry
2026-06-14 18:47:41 +08:00
Alfred
6d4c93d2b7
feat: extract decision signals from analysis reports ( #1686 )
2026-06-14 18:26:30 +08:00
LouisHong
145ee6b5a5
fix: [issue #1652 ] stabilize run-flow live states and layout polish ( #1682 )
...
* fix: polish run-flow topology layout and i18n
* fix: prevent task panel layout squeeze
* test: update run flow frontend coverage
* fix: isolate market context run flow
* fix: handle completed task flow refresh
* feat: show running run-flow nodes
* fix: show chip provider runs in flow
* fix: stabilize stock run flow live updates
* fix: refine run-flow history lookup and spacing
* fix: update run-flow edge states and layout gaps
* fix: polish run-flow task panel text
2026-06-14 17:57:16 +08:00
mumu
b9f5989a21
fix(issue-1683): [bug]-发布说明生成在作者查询失败时缺少诊断日志 ( #1684 )
2026-06-14 17:55:52 +08:00
ZhuLinsen
02ca95efd1
ci: simplify release notes generation
2026-06-13 19:27:14 +08:00
ZhuLinsen
7afbc33e0c
docs: prepare v3.22.0 changelog
v3.22.0
2026-06-13 19:01:57 +08:00
mumu
a81dc3b4af
fix: optimize alphasift hotspot details ( #1677 )
2026-06-13 18:57:43 +08:00
mumu
89fab774f6
fix: 过滤低质量股票新闻结果 ( #1674 )
...
* fix: filter low-quality stock news results
* fix: filter adult spam news results
* fix(review-feedback-1674): Require content evidence before dropping URL-only hits and Match
* fix(review-feedback-1674): Move admission filtering before dimension limiting
* fix(review-feedback-1674): Match app/download terms as tokens before filtering
* fix(review-feedback-1674): Recognize Chinese numeric ratings in app-page filter
* fix(review-feedback-1674): 收敛后再合入
* fix(review-feedback-1674): 收敛后再合入
* fix: tighten stock news admission signals
* fix: narrow noisy news admission heuristics
* fix: handle app metric news admission
* fix: require context for app listing spam
* fix: preserve app metric news results
* fix: require strong app spam evidence
* fix: honor official source labels
* fix: preserve official labels and app metrics
* fix: detect separated adult contact ids
* fix: preserve app metrics and service news
* fix: match alphanumeric adult contacts
* fix: require adult spam solicitation signals
* fix: preserve neutral mobile app metrics
* fix: reduce app and adult false positives
2026-06-13 15:19:44 +08:00
mumu
3902670f02
docs: add README tutorial links ( #1676 )
2026-06-13 15:19:04 +08:00
mumu
ecc370e50b
feat: adapt AlphaSift hotspot contract ( #1675 )
...
* feat: adapt alphasift hotspot contract
* fix(review-feedback-1675): update sample install spec with new allowed pin
* fix(review-feedback-1675): 补充 “revert 本 PR / 恢复旧 AlphaSift pin” 级别的回滚说明,并明确无关联 issue 或补充 Refs
* fix: harden alphasift hotspot metadata migration
* fix(review-feedback-1675): preserve hotspot route events in the new detail path
* fix(review-feedback-1675): 修正旧 AlphaSift pin 回滚/重装路径说明,避免运维按文档操作时被 install allow-list 拒绝
* fix(review-feedback-1675): src/services/alphasift service.py:当 AlphaSift v2 detail payload
* fix(review-feedback-1675): 补对应回归测试
2026-06-13 14:46:18 +08:00
mumu
a82ae51ca8
feat: enable daily market context by default ( #1673 )
2026-06-13 10:58:18 +08:00
mumu
716128d1d2
fix: avoid live AlphaSift hotspot import on cache miss ( #1671 )
2026-06-13 10:34:07 +08:00
LouisHong
65d698b970
feat: [issue #1652 ] improve run-flow topology drilldown ( #1657 )
...
* feat: improve run-flow topology model and drilldown
* fix: tighten run-flow topology review handling
* fix: prevent live run-flow reverse provider edges
2026-06-13 10:33:40 +08:00
mumu
0db0c78da8
feat: 个股分析接入当日大盘上下文 ( #1623 )
...
* feat: add daily market context for stock analysis
* fix(review-feedback-1623): Share the market context service across worker threads and Use the
* fix(review-feedback-1623): Avoid overwriting per-region context reports and Expand history lookup
* fix(review-feedback-1623): add position even though the guardrail supposedly softened the
* fix(review-feedback-1623): Avoid generating the CLI market review twice
* fix(review-feedback-1623): 修正
* fix(review-feedback-1623): 修复普通 CLI/调度运行中大盘复盘被上下文预热摘要替代的问题,并收敛 PR 描述与当前实现范围
* fix(review-feedback-1623): 修正保守护栏的误判风险,并同步收敛 PR 描述范围
* fix(review-feedback-1623): 处理并发生成大盘上下文的锁语义风险,并澄清/补充外部模型或运行时配置风险检测的依据
* fix(review-feedback-1623): 收敛大盘上下文预热对用户可见大盘复盘的行为影响,并补齐外部模型/API 与运行时配置检测风险的澄清或验证证据
* fix(review-feedback-1623): Do not skip multi-market reviews after one cached context and Do not
* fix(review-feedback-1623): Prime context with the effective trading date
* fix(review-feedback-1623): 收敛 PR 描述与实际 diff 的范围不一致,并澄清结构化检测提示的 provider/model/base
* fix(review-feedback-1623): 补一句“本 PR 不修改 LLM provider/model/base url、默认模型、配置清理或迁移逻辑”,避免后续审查继续误判
* fix(review-feedback-1623): 收敛 PR 描述与实际 diff 的范围矛盾
* fix(review-feedback-1623): 补齐这些承诺的实现
* fix(review-feedback-1623): 收敛 PR 描述与实际 diff 范围,避免以未实现能力作为验收项
* fix(review-feedback-1623): 收敛 PR 描述与实际范围,并澄清外部模型/API 与运行时配置检测风险
* fix(review-feedback-1623): Match freshly saved reviews to the target trade date
* fix(review-feedback-1623): preserve structured market-light risk signals
* fix(review-feedback-1623): Escape market-summary sentinels before prompting
* fix(review-feedback-1623): 修复同日缓存复用时把低敏摘要当完整大盘复盘输出的行为风险,并收敛 PR 描述与实际 diff
* fix(review-feedback-1623): 收敛
* fix(review-feedback-1623): 收敛 PR 描述与实际 scope
* fix(review-feedback-1623): 修正大盘复盘复用语义,并让 PR 描述与实际 scope 对齐
* fix(review-feedback-1623): 修正同日大盘上下文缓存复用语义,并让 PR 描述与实际 scope 对齐
* fix(review-feedback-1623): Disable cached market context when skipping market review
* fix(review-feedback-1623): 收敛 PR 描述与实际 scope,并补充外部模型/API 与运行时配置语义未变化的可核验证据
* fix(review-feedback-1623): 修正 PR 描述与实际 scope 的实质性不一致,并补齐或澄清 LLM/provider/model/base URL
* fix(review-feedback-1623): 修正 operation advice 契约漂移,并让 PR 描述/验收范围与当前实际 diff 对齐
* fix(review-feedback-1623): 收敛 main.py 中大盘复盘复用导致的通知/执行语义变化,并补对应回归测试
* fix(review-feedback-1623): 修复生成型大盘上下文未绑定当前 query id 的行为风险,并收敛 PR body 与实际 diff 范围
* fix(review-feedback-1623): 修复缓存语言匹配问题,并收敛 PR 描述与实际 diff/验收范围的一致性
* fix(review-feedback-1623): 收敛当前实现与描述/文档中的验收边界,并澄清 schedule/CLI 首次运行无历史大盘复盘时是否应生成并注入上下文
* fix(review-feedback-1623): 收敛 PR 描述与 docs/CHANGELOG.md 中关于验收边界的表述,避免与实际 diff 实质性矛盾
* fix(review-feedback-1623): 修正 PR 描述与实际 diff 的范围漂移
* fix(review-feedback-1623): Reuse the cached runtime market context on fallback
* fix(review-feedback-1623): PR 描述:当前完整改动文件列表没有 api/ 、apps/dsa-web/ 、日报状态表或四阶段日报持久化相关实现,但 PR
* fix(review-feedback-1623): 收敛描述范围
* fix(review-feedback-1623): 收敛并发生成复用路径的正确性风险,并修正 PR 描述的实际范围与验收项
* fix(review-feedback-1623): 收敛描述和验收范围
* fix(review-feedback-1623): PR 描述的 Background / Acceptance Criteria 仍包含独立 API、Web
* fix(review-feedback-1623): 收敛 PR 描述与实际实现边界,并补齐 LLM/provider/base url 相关兼容性说明或验证证据
* fix(review-feedback-1623): PR 描述与实际 diff 范围不一致:描述和验收项仍写有独立 API、Web
* fix(review-feedback-1623): Wait long enough for in-flight market reviews
* fix(review-feedback-1623): 修复共享 market review lock 释放后仍不生成匹配上下文的行为风险,并同步收敛 PR description 的实际范围
* fix(review-feedback-1623): 修复锁竞争 fallback 下丢失运行时服务的问题,并同步收敛 PR description 与实际 diff 范围
* fix(review-feedback-1623): 收敛 PR description 与实际改动范围
* fix(review-feedback-1623): PR 描述与实际 diff 存在实质性矛盾:描述声称提供独立 API、Web
* fix(review-feedback-1623): reuse runtime market context and handle English negations
* fix: honor daily market context config
* docs: remove unrelated changelog entries
* fix(review-feedback-1623): preserve the skipped market-review artifact
* fix(review-feedback-1623): add low position cap and are not in CONSERVATIVE TEXT MARKERS , so an
2026-06-13 10:33:04 +08:00
mumu
4b3f679b2d
feat: adapt AlphaSift hotspot topics ( #1635 )
...
* feat: adapt AlphaSift hotspot topics
* fix(review-feedback-1635): preserve cached hotspots when refresh returns no rows and Avoid
* fix(review-feedback-1635): Reload detail when refreshing the selected hotspot and Fall back when
* fix(review-feedback-1635): update by the requested topic or a request token
* fix(review-feedback-1635): preserve analysis when optional serve startup fails and Fall back when
* fix(review-feedback-1635): 当前 CI 状态为 failure,且 backend-gate 为 cancelled、docker-build 为 skipped
* fix(review-feedback-1635): 让 backend-gate / docker-build 在当前 head 上完成并通过,或给出可接受的维护者级豁免说明
* fix(review-feedback-1635): 当前 CI 仍未闭环:结构化事实显示 backend-gate 被取消、docker-build skipped
* fix(review-feedback-1635): 修复 hotspot detail 的上游 schema 容错问题,并让当前 head 的阻断 CI 重新跑通
* fix(review-feedback-1635): docs/CHANGELOG.md:当前 diff 不是在 [Unreleased] 扁平格式下追加本 PR
* fix(review-feedback-1635): CI 闭环未完成:结构化事实显示当前 CI 状态为 failure,backend-gate cancelled、docker-build
* fix(review-feedback-1635): 让当前 head 的阻断型 CI 完整通过,并修正文档中的 AlphaSift commit hash 不一致
* fix(review-feedback-1635): CI 仍未在当前 head 完整通过:结构化事实显示
* fix(review-feedback-1635): 修复 docs/CHANGELOG.md 对主线既有 [Unreleased] 条目的删除,并补齐 AlphaSift
* fix(review-feedback-1635): Accept slash-containing hotspot topics
* fix(review-feedback-1635): Try industry constituents for industry hotspots
* fix(review-feedback-1635): Clear old hotspot details when loading a new topic and preserve the
* test: isolate main schedule environment
* chore: clean AlphaSift PR scope
* fix: respect AlphaSift hotspot fallbacks
2026-06-12 22:38:42 +08:00
LouisHong
efa41e0ada
feat: [issue #1652 ] add live run-flow diagnostics ( #1656 )
...
* feat: add live run-flow updates and diagnostics
* feat: update task status filter to include 'cancel_requested'
* feat: enhance run-flow diagnostics and task management with cancel-requested status handling
* fix: stabilize run flow live updates
* fix: align live run-flow review contracts
* fix: sanitize live run-flow events
2026-06-12 20:58:58 +08:00
Alfred
4082c0d012
改进: 补充 #1390 P1 DecisionSignal 前端契约与隔离测试 ( #1666 )
...
* feat: add decision signal web contract wrapper
* fix: reject unsupported decision signal latest paths
* fix: tighten decision signal list response contract
2026-06-11 22:13:24 +08:00
LouisHong
f7ac00bda9
feat:[issue #1652 ] add web run-flow viewer ( #1654 )
...
* feat: add web run-flow viewer
* docs: document run-flow web viewer contracts
* fix: add market review run flow entry
2026-06-11 22:08:55 +08:00
LouisHong
fa9d9b0084
feat: [issue #1652 ] add run-flow snapshot contract and APIs ( #1653 )
...
* feat: add run-flow snapshot contract and APIs
* fix: address run-flow contract review notes
---------
Co-authored-by: mumu <42829555+ZhuLinsen@users.noreply.github.com >
2026-06-10 22:50:35 +08:00
volcanoAlbert
f587459ed1
feat: add portfolio account archive action 持仓管理页面添加账户删除功能 ( #1647 )
...
* feat: add portfolio account archive action
* fix: exclude archived accounts from risk snapshots
2026-06-10 22:48:08 +08:00
Alfred
ad15ebcec5
feat: 新增 DecisionSignal 持久化 API(#1390 P1) ( #1645 )
...
* feat: add decision signal persistence api
Refs #1390
* fix: handle HK decision signal filters without market
2026-06-10 22:46:33 +08:00
Alfred
da274f7061
fix: 锁定问股追问的当前标的上下文 P2 ( #1619 )
...
* fix: keep ask-stock follow-ups scoped
* fix: normalize watchlist stock comparisons
* docs: document watchlist stock code equivalence
* fix: tighten ask-stock tool scope guard
* fix: close ask-stock review gaps
* fix: close ask-stock review gaps
2026-06-10 22:45:58 +08:00
LouisHong
4f536026f8
fix: clarify runtime logging context ( #1643 )
...
* fix: clarify market review logging context
* docs: update changelog for logging context
2026-06-09 01:08:55 +08:00
Alfred
ff6494b5d7
feat: 新增建议动作 taxonomy 字段边界 P0 ( #1631 )
...
* feat: add decision action taxonomy fields
* fix: tighten decision action fallback handling
* fix: align legacy decision action guard fallback
* fix: tighten legacy decision action word boundaries
* fix: align decision action compound parsing
* fix: clean decision action residue
* fix: align web action label contract
* fix: classify avoided sell actions as hold
v3.21.1
2026-06-08 07:24:07 +08:00
mumu
e2fe6e3056
fix: verify packaged AlphaSift adapter at runtime ( #1637 )
...
* fix: verify packaged AlphaSift adapter at runtime
* fix(review-feedback-1637): Wait for the windowed probe process
* fix(review-feedback-1637): 收敛 docs/CHANGELOG.md 的范围漂移/描述不一致问题
* fix(review-feedback-1637): 收敛 docs/CHANGELOG.md 的无关历史改动,只保留本 PR 对 [Unreleased] 的新增修复条目
2026-06-08 07:21:59 +08:00
zhulinsen
40c5c75b2e
chore: prepare v3.21.0 release
v3.21.0
2026-06-07 22:41:33 +08:00
mumu
12a7e6d3c7
fix: make AlphaSift screening recoverable ( #1628 )
...
* fix: make AlphaSift screening recoverable
* fix(review-feedback-1628): Keep polling state across transient status errors
2026-06-07 16:22:36 +08:00
mumu
513271bd5f
fix(issue-1626): [bug]-web-英文界面仍残留中文文案 ( #1632 )
2026-06-07 16:08:43 +08:00
mumu
8909168a64
fix: run manual market review on non-trading days ( #1627 )
2026-06-07 09:39:00 +08:00
mumu
649f7757ae
chore: remove one-off PR screenshot assets ( #1625 )
...
* chore: remove one-off PR screenshots
* chore: remove one-off issue screenshots
2026-06-06 22:54:41 +08:00
mumu
d704fe377d
feat: add Web UI language switch ( #1621 )
...
* feat: add Web UI language switch
* fix(review-feedback-1621): 补充 zh/en 切换后的登录页、首页、设置页和侧边导航截图或可访问构建预览证据
* fix(review-feedback-1621): 补对应回归测试
* fix(review-feedback-1621): Pin the smoke test's initial language
* fix(review-feedback-1621): Web UI 改动缺少截图或等价可视证据
* fix(review-feedback-1621): 补一个 storage accessor 抛错时 fallback 到 zh 或 navigator 语言的回归测试
* fix(review-feedback-1621): 修复前端 lint/build 失败并补齐 Web 验证证据
* fix(review-feedback-1621): apps/dsa-web/ :本 PR 新增语言切换入口并改动
* fix(review-feedback-1621): 解决冲突
* fix(review-feedback-1621): 解决冲突,并补齐 Web UI 变更的可视证据与 Web 侧验证说明
* fix(review-feedback-1621): 解决冲突并重新确认 diff 与 CI 结果
* fix(review-feedback-1621): 解决冲突
* fix(review-feedback-1621): add a file-level test
* fix: complete Web UI language switch evidence
* fix(review-feedback-1621): 确认设置页英文字段 label 语义回归、Playwright smoke locale 稳定性,以及结构化检测命中的外部模型/API
* fix(review-feedback-1621): 修正 PR 描述与实际实现不一致,并补齐 Playwright smoke 验证结果或明确未执行原因
* fix: complete web language behavior
* fix(review-feedback-1621): src/services/task queue.py / src/services/analysis service.py /
* fix: honor market review request language
* fix(review-feedback-1621): Keep UI language from overriding report language and Use localized
* fix(review-feedback-1621): docs/full-guide.md / docs/full-guide EN.md 把 PR 评审证据、执行命令、沙箱
* fix(review-feedback-1621): 修正 PR 描述与当前实现不一致的问题,并补齐运行时模型配置相关的兼容性/迁移证据
* fix(review-feedback-1621): 收敛后再合入
2026-06-06 21:45:20 +08:00
mumu
617b11d62d
fix: restore market review in stock bar ( #1620 )
...
* fix: restore market review in stock bar
* fix(review-feedback-1620): Refresh market history non-silently after deleting MARKET
2026-06-06 10:03:17 +08:00
mumu
1e94490953
fix: widen analytical intel search lookback ( #1615 )
...
* fix: widen analytical intel search lookback
* fix(review-feedback-1615): 澄清或修正分析类 180 天目标窗口在 provider 粗粒度映射下可能实际扩大到 1 年的问题
2026-06-06 06:49:38 +08:00
mumu
2f26042b05
fix: 报告页运行诊断与输入数据块状态口径不一致 ( #1602 ) ( #1603 )
...
* fix(issue-1602): [bug]-报告页运行诊断与输入数据块状态口径不一致
* fix: clarify report diagnostics evidence scope
* fix(review-feedback-1603): 更新 PR body,使范围、验证、兼容性风险和回滚说明与当前 head 一致
2026-06-05 23:19:52 +08:00
mumu
3153c764a4
fix: 收敛多股通知摘要的市场状态展示 ( #1612 )
...
* fix: compact aggregate report market status
* fix(review-feedback-1612): preserve input order when selecting market status
* chore: rerun review after clarifying PR scope
2026-06-05 22:47:39 +08:00
mumu
8a77960bcb
docs: require screenshots for visual PR changes ( #1613 )
2026-06-05 22:04:50 +08:00
fzxiong
39f24df60b
代码健康修复:稳定测试、健康检查、错误响应与 schema 版本记录 ( #1607 )
...
* fix(api): return json from root health endpoint
* test(web): stabilize vitest runtime setup
* chore(security): warn on public web exposure without auth
* refactor(api): centralize error response helpers
* chore(db): record baseline schema version
* refactor(web): extract portfolio formatting helpers
* fix(db): make schema baseline initialization idempotent
* docs: document health check and schema baseline changes
2026-06-05 21:26:06 +08:00
Delicious233
3471afbd98
feat: add Feishu App Bot notification sender with P2P and group support ( #1553 )
...
* feat: add Feishu App Bot notification sender with P2P and group support
The existing FeishuSender only supports custom robot Webhook mode.
This commit extends it to support App Bot (lark-oapi SDK) mode, auto-routing
between webhook (priority) and App Bot when FEISHU_APP_ID + FEISHU_APP_SECRET
+ FEISHU_CHAT_ID are configured.
Design:
- send_to_feishu() routes: webhook if URL set, else App Bot
- DCLP lazy client init with thread-safe sentinel guard
- Retry (3 attempts, exponential backoff) with fixed UUID for idempotency
- Card-first / text-fallback content strategy
- Chunking for long messages
- Runtime enum validation for FEISHU_RECEIVE_ID_TYPE and FEISHU_DOMAIN
- Safe SDK defaults (FEISHU_DOMAIN/LARK_DOMAIN) before import try-block
so Webhook path never depends on lark-oapi SDK presence
- Config, diagnostics, setup check, notification test, and CI workflow
all consistent with the new App Bot channel semantics
- lark-oapi>=1.0.0 already in requirements.txt (line 23)
Verification:
- 20/20 unit tests pass (help metadata + FeishuSender)
- E2E: real Feishu API — SDK import, token, client init, P2P text+card send all PASS
- Webhook regression: verified no SDK dependency for existing Webhook path
* fix: add missing Feishu App Bot locale entries and env table keys, harden sender error handling
CI fix 1 (test_registry_help_keys_exist_in_locales):
- Add zh-CN and en-US locale entries for FEISHU_CHAT_ID,
FEISHU_RECEIVE_ID_TYPE, FEISHU_DOMAIN in settingsHelp.ts
CI fix 2 (test_notification_actions_env_table_matches_generated_output):
- Add FEISHU_RECEIVE_ID_TYPE, FEISHU_DOMAIN to feishu advanced_keys
in CHANNEL_SPECS so they appear in KEY_SPECS
- Regenerate managed env table in docs/notifications.md
feishu_sender.py hardening:
- Catch network exceptions in webhook _post_payload so card-to-text
fallback actually executes on transient failures
- Guard response.json() and isinstance(result, dict) against
non-JSON / non-dict HTTP 200 responses
- Extract shared _build_card_body() to de-duplicate card payload
construction between webhook and App Bot paths
- Rename module-level lark -> _lark to avoid shadowing
- Guard resp.get_log_id() with try/except
- Add None guard on send_to_feishu content parameter
e2e script improvements:
- Support FEISHU_OPEN_ID for P2P test, FEISHU_DOMAIN for Lark
- Add FEISHU_TEST_SEND_TEXT=1 for plain-text-only path testing
- Clarify docstring: setup validation + smoke test, not full e2e
* fix: consolidate Feishu App Bot notification contract
* fix: align Feishu domain help scope
---------
Co-authored-by: mumu <42829555+ZhuLinsen@users.noreply.github.com >
2026-06-05 08:56:42 +08:00
mumu
0ca4e07b0e
feat: integrate AlphaSift with DSA runtime enrichment ( #1577 )
...
* feat: integrate AlphaSift with DSA runtime enrichment
* feat: pin AlphaSift DSA provider context
* fix: clean up AlphaSift warning display
* fix(review-feedback-1577): pass the headers through a path AlphaSift actually uses, such as a
* fix(review-feedback-1577): 补齐 LLM 运行时桥接兼容性的关键证据
* fix: keep AlphaSift screening lightweight
* fix(review-feedback-1577): Populate DSA news when reusing context
* fix(review-feedback-1577): 补齐外部 LLM/LiteLLM 兼容依据,并修正 docs/CHANGELOG.md 的格式/重复条目问题
* fix(review-feedback-1577): 补齐外部模型/API 兼容依据或在 PR 正文中明确指向已更新文档中的官方来源与迁移/回退边界
* fix(review-feedback-1577): scripts/build-backend.ps1 已随本 PR 调整 AlphaSift 打包/收集逻辑,但完整改动文件列表未包含
* fix(review-feedback-1577): 处理 AlphaSift LLM bridge 对全局 LiteLLM 状态的并发污染风险
* fix: reuse DSA daily history for AlphaSift
* fix(review-feedback-1577): 补齐 --collect-all alphasift 或等价 hidden imports,并增加打包产物级导入验证
* fix(review-feedback-1577): fix the macOS AlphaSift package verifier
* fix(review-feedback-1577): scripts/build-backend-macos.sh 和 scripts/build-backend.ps1
* fix(review-feedback-1577): 处理运行时阻塞风险、CHANGELOG 删除既有条目,以及补齐外部模型/API 兼容证据
* fix(review-feedback-1577): scripts/build-backend-macos.sh:当前“Verifying packaged AlphaSift
* fix(review-feedback-1577): 收敛下面的可用性判断和外部 API/模型兼容证据缺口
* fix(review-feedback-1577): src/config.py、src/core/config registry.py、src/services/alphasift
* fix(review-feedback-1577): scripts/build-backend-macos.sh:新增的 packaged AlphaSift importability
* fix(review-feedback-1577): make the archive fallback require a dsa adapter entry or exercise the
* fix(review-feedback-1577): 处理无关测试改动,并补齐桌面打包文档/验证边界
2026-06-05 08:53:55 +08:00
Alfred
813b5d6cf0
fix: prevent stock card phase label overlap ( #1605 )
...
Co-authored-by: mumu <42829555+ZhuLinsen@users.noreply.github.com >
2026-06-05 08:52:18 +08:00
Alfred
71055c449c
fix: 问股自由文本金融缩写不再误识别为股票代码 ( #1604 )
...
* fix: prevent finance abbreviations from becoming chat tickers
* fix: filter uppercase filler words in chat ticker extraction
2026-06-05 08:51:12 +08:00
mumu
8df69fe036
feat: 完善大盘复盘历史聚合、查看与删除能力 ( #1580 ) ( #1598 )
...
* feat(issue-1580): feat:-完善大盘复盘历史聚合、查看与删除能力
* fix(review-feedback-1598): resetting the paged window or deduping the merged list before storing it
* fix(review-feedback-1598): 补齐 AGENTS.md 要求的用户可见能力文档同步
2026-06-04 22:29:20 +08:00
Alfred
e6302a0b9c
docs: add #1386 P7 market-phase guide ( #1597 )
2026-06-04 20:30:38 +08:00
mumu
649413cf1a
fix: pass SearXNG Actions variables to daily workflow ( #1567 )
2026-06-04 19:50:33 +08:00
mumu
d6234cd7f0
fix: clarify Docker env runtime config ( #1586 )
...
* fix: clarify Docker env runtime config
* fix(review-feedback-1586): 确认并修复启动环境变量兜底对 switch 类型配置的展示正确性,否则 Docker 用户仍可能在关键布尔配置上看到错误状态
* fix(review-feedback-1586): 修正 docs/CHANGELOG.md 的范围漂移和重复内容
* fix(review-feedback-1586): 补充说明这些值仅作为已有配置键的展示 fallback,不新增默认 provider/model/Base URL,也不会静默迁移或清空用户配置
* fix(review-feedback-1586): 确认并修复运行时注入的 LLM channel 支持键在 Settings 保存/校验路径中的一致性问题
* fix(review-feedback-1586): 修复下述运行时配置静默持久化风险
* fix(review-feedback-1586): 修复 runtime-only LLM support key 过滤逻辑对“同一 channel 部分字段来自
* fix(review-feedback-1586): apps/dsa-web/src/components/settings/LLMChannelEditor.tsx、src/services/s
* fix(review-feedback-1586): Avoid migrating runtime-only secrets on rename
* fix(review-feedback-1586): 补充该说明
* fix(review-feedback-1586): docs/CHANGELOG.md 新增说明直接引用 litellm =1.80.10,!=1.82.7,!=1.82.8,<2.0.0
* fix(review-feedback-1586): 补齐“持久化 API KEY + runtime-only API KEYS
* fix(review-feedback-1586): 收敛
2026-06-04 19:17:36 +08:00
mumu
c6221ba50e
fix: avoid quoting desktop updater install directory ( #1587 )
2026-06-04 13:42:13 +08:00
mumu
b612fb23e4
fix: 结构化大盘复盘报告展示 ( #1576 )
...
* feat: add dedicated market review report view
* fix(review-feedback-1576): Use localized labels for English market reviews
* fix: structure market review payload rendering
* fix(review-feedback-1576): preserve market labels when rendering combined reviews and Use the
* fix(review-feedback-1576): Render structured data for every combined market and Localize
* fix: dedupe market review rendering
* test: align market review language prompt expectation
* fix(review-feedback-1576): 澄清并补足 LLM/运行时配置相关检测命中的兼容性证据
* fix(review-feedback-1576): 解决冲突并重新确认 CI
* fix(review-feedback-1576): docs/CHANGELOG.md:[Unreleased] 新增内容中除 1555 大盘复盘展示外,还包含 Agent
* fix(review-feedback-1576): 修复
* fix(review-feedback-1576): 修复美股中文大盘复盘仍混入英文策略/市场标签的问题,并补齐对应回归测试
2026-06-04 13:40:42 +08:00
Alfred
3281d96788
docs: close analysis context pack P6 ( #1592 )
2026-06-04 12:37:48 +08:00
Alfred
6784409183
docs: harden PR quality guardrails ( #1593 )
2026-06-04 09:43:30 +08:00
Alfred
9b76f8d240
feat: #1386 P6 联动告警、持仓和历史阶段摘要 ( #1589 )
...
* feat: link phase summaries across P6 surfaces
* fix: align portfolio analysis response status
* fix: stabilize backtest phase filtering
* fix: normalize portfolio analysis symbols
2026-06-04 09:17:39 +08:00