999 Commits

Author SHA1 Message Date
zhulinsen
5bc95c9088 feat: 实现4个用户反馈issue并修复延迟逻辑 (#112, #128, #38, #119)
新增功能:
- feat(notification): 通知开头添加评分摘要 (#112)
  - 在决策仪表盘开头显示所有股票的评分、操作建议、趋势预测
  - 便于用户快速查看整体分析结果

- feat(main): 支持分析间隔配置 (#128)
  - 新增 ANALYSIS_DELAY 环境变量(秒)
  - 在个股之间添加延迟(避免并发触发API限流)
  - 在个股分析和大盘分析之间添加延迟
  - 完全解决 Gemini API 429错误问题

- feat(notification): 新增PushPlus推送支持 (#38)
  - 支持国内PushPlus推送服务
  - 新增 PUSHPLUS_TOKEN 环境变量
  - 支持 Markdown 格式推送到微信

Bug修复:
- fix(main): 修复Docker环境下单股推送不完整问题 (#119)
  - 新增 REPORT_TYPE 环境变量(simple/full)
  - 从配置读取报告类型并传递给单股推送
  - Docker用户可设置 REPORT_TYPE=full 获取完整报告

文档更新:
- docs: 更新 README.md 配置说明
- docs: 更新 .env.example 配置模板
- docs: 更新 CHANGELOG.md 版本记录

相关Issue:
- Closes #112
- Closes #128
- Closes #38
- Closes #119
2026-01-24 14:50:47 +08:00
birdxs
8c0c380c99 Merge branch 'ZhuLinsen:main' into main 2026-01-24 14:39:38 +08:00
birdxs
82f3b43e3b Add daily cron schedule for analysis workflow 2026-01-24 14:38:28 +08:00
Jealh
eb534bda1b feat: 增加 action 配置文件中的企微消息类型读取 2026-01-24 11:52:32 +08:00
Jealh
a226d110e8 chore: debug logger 2026-01-24 11:34:34 +08:00
Jealh
657d18f3ec chore: add logger 2026-01-24 10:59:01 +08:00
Jealh
dcddda6b9b feat: 添加企微消息类型配置读取 2026-01-24 10:19:43 +08:00
huhengdong
eb26b1d58a feat: 添加企微消息类型配置 2026-01-23 20:02:47 +08:00
mumu
3b8e7e70a7 Merge pull request #124 from adminlove520/feat/discord-notification
Feat/discord notification
2026-01-23 19:15:19 +08:00
mumu
ff44da7607 Merge pull request #113 from freesme/main-v1.6.0
Feature: 机器人命令交互触发分析报告
2026-01-23 18:46:21 +08:00
birdxs
e8b2a170d3 Update daily_analysis.yml 2026-01-23 15:12:14 +08:00
adminlove520
6f76df436a refactor(discord-bot): 优化Discord机器人代码结构和功能\n\n1. 封装命令处理逻辑,实现统一的错误管理\n2. 优化异步任务处理,添加超时支持\n3. 增强错误处理和日志记录\n4. 优化配置管理,添加Discord相关配置项\n5. 改进用户体验,添加操作状态提示\n6. 添加.trae/目录到.gitignore 2026-01-23 14:30:14 +08:00
adminlove520
b0489a14bf refactor: optimize discord_bot.py according to AI review 2026-01-23 14:04:51 +08:00
adminlove520
63889b1b8c fix: refactor discord_bot.py according to AI code review 2026-01-23 13:55:20 +08:00
adminlove520
c2f21b762c fix: recreate discord_bot.py with proper UTF-8 encoding and complete content 2026-01-23 13:49:45 +08:00
adminlove520
c1e1d05c38 feat: add Discord environment variables to workflow 2026-01-23 13:26:48 +08:00
birdxs
5a8fea22c2 Merge branch 'ZhuLinsen:main' into main 2026-01-23 10:12:58 +08:00
zhulinsen
187b37fb39 fix(docker): force WebUI bind to 0.0.0.0 in compose; fixed #118 2026-01-22 21:30:16 +08:00
Krane
dd923ad67e fix: 飞书长连接通知 2026-01-22 20:24:34 +08:00
Krane
31b3899fc2 Merge remote-tracking branch 'origin/main-v1.6.0' into main-v1.6.0 2026-01-22 17:52:35 +08:00
Krane
88ff4c9d55 Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-22 17:52:20 +08:00
Krane
1bacb2bbc6 优化文档 2026-01-22 17:52:20 +08:00
Krane
b3e5be0af2 机器人命令设计说明 2026-01-22 17:52:20 +08:00
Krane
95975ea2df remove wecom tg 2026-01-22 17:52:20 +08:00
Krane
01da14be0a Add bot-cmd doc 2026-01-22 17:52:20 +08:00
Krane
2fda768cdf feature: 机器人命令交互触发分析功能 2026-01-22 17:52:20 +08:00
birdxs
46d96cfb5f Comment out unused cron schedules in daily_analysis.yml
Comment out additional cron schedules for clarity.
2026-01-22 16:55:02 +08:00
adminlove520
e58750eb5d feat: add Discord bot support 2026-01-22 16:38:53 +08:00
adminlove520
9502a02df2 feat: add Discord notification support 2026-01-22 16:37:48 +08:00
birdxs
0bb198f975 Update daily_analysis.yml with new cron schedules
Added additional cron schedules for daily analysis.
2026-01-22 15:45:41 +08:00
Krane
dcc4eae259 Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-22 13:13:22 +08:00
Krane
60d2823b02 优化文档 2026-01-22 12:47:00 +08:00
Krane
073e00881f 机器人命令设计说明 2026-01-22 12:41:27 +08:00
Krane
370aaf877b remove wecom tg 2026-01-22 12:37:55 +08:00
Krane
62c286eb0f Add bot-cmd doc 2026-01-22 12:37:42 +08:00
Krane
adb43bca9e Add bot-cmd doc 2026-01-22 11:46:18 +08:00
birdxs
6b623478d5 Delete .github/workflows/docker.yml 2026-01-22 09:09:28 +08:00
Krane
267138caeb fix: @user error 2026-01-22 01:55:35 +08:00
Krane
9115e124d8 fix: update Dockerfile copy /bot 2026-01-22 00:32:24 +08:00
Krane
5f3dae967a fix: 钉钉Stream SDK 2026-01-21 23:48:29 +08:00
Krane
dae5fe4bfa fix: @触发消息用户 2026-01-21 23:43:19 +08:00
birdxs
b6a2b30faf Merge branch 'ZhuLinsen:main' into main 2026-01-21 23:09:56 +08:00
Krane
ef9f086e35 fix: 优化命令参考模板 2026-01-21 23:03:05 +08:00
Krane
5920420544 fix: 优化命令参考模板 2026-01-21 23:02:28 +08:00
Krane
0c99cddb3c fix: 通过钉钉Stream返回报告 2026-01-21 22:41:57 +08:00
mumu
aba6e8a715 Merge pull request #106 from iseeicee/feature/notification_fix
fix: 启动时config.py检测通知渠道,在已配置自定义渠道情况下仍然提示未配置问题
2026-01-21 22:39:14 +08:00
mumu
2d297c3f26 Merge pull request #102 from mrhaoji/frosty-mclaren
优化数据源 Tushare 优先级封装及代码、日志重复问题
2026-01-21 22:38:57 +08:00
kip
7b26d3c388 fix: 启动时config.py检测通知渠道,在已配置自定义渠道情况下仍然提示未配置问题 2026-01-21 17:28:00 +08:00
陈浩
7530e775c6 refactor: 优化 Tushare 优先级判断逻辑,提升封装性
问题:
1. DataFetcherManager 访问 TushareFetcher 私有属性 _api,违反封装原则
2. 优先级判断逻辑分散,DataFetcherManager 重复设置 priority
3. 冗余日志和重复代码(elif/else 分支完全相同)

改进:
1. 将优先级判断内聚到 TushareFetcher.__init__()
   - 新增 _determine_priority() 方法
   - 根据 Token 和 API 状态自动确定优先级
   - 新增 is_available() 公开方法供外部检查状态

2. 简化 DataFetcherManager._init_default_fetchers()
   - 移除对 _api 私有属性的访问
   - 移除手动设置 priority 的代码
   - 移除冗余的 elif 分支和重复日志
   - 统一使用 sort() 排序,由各 Fetcher 自行决定优先级

优势:
- 单一职责:优先级判断由 TushareFetcher 自己负责
- 更好封装:不暴露内部实现细节
- 代码更简洁:从 40+ 行减少到 20 行
- 易于扩展:其他 Fetcher 也可以采用类似模式

测试:
- 未配置 Token: TushareFetcher Priority 2 ✓
- 配置 Token: TushareFetcher Priority 0 ✓

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-21 11:02:14 +08:00
birdxs
57f3fcbd5c Update docker.yml
暂时不用这个,目前只推送至ghcr
2026-01-21 10:31:14 +08:00