|
|
e22b44ff07
|
fix(群赛马): 降低测试命令优先级并添加确认消息
将测试模拟赛马命令的优先级从5调整为1,以避免与正式命令冲突。
在执行测试模拟前发送确认消息,明确告知用户此为无副作用的完全模拟。
|
2026-04-04 21:30:55 +08:00 |
|
|
|
699b57d1ea
|
feat(赛马插件): 为测试模拟赛马命令添加别名
添加"测试模拟"作为"测试模拟赛马"命令的别名,并设置block=True防止命令冲突
|
2026-04-04 21:25:45 +08:00 |
|
|
|
1c9d964747
|
test(group_horse_racing): 重构模拟赛马测试以使用依赖注入
重构测试命令 `测试模拟赛马`,使用模拟依赖(内存存储、积分服务)替换真实组件,避免测试产生数据库副作用。
新增模拟类 `_FakeBot`、`_InMemoryRoomStore`、`_InMemoryPointsService` 和 `_NoopMessageService`,并临时替换模块中的全局依赖以执行完整比赛流程。
验证开赛消息、回合进度、结束结算、赛史保存及积分奖励调用的正确性,确保核心逻辑在隔离环境中正常工作。
|
2026-04-04 21:21:36 +08:00 |
|
|
|
c0798d127b
|
test(赛马插件): 添加模拟赛马测试命令
新增测试命令“测试模拟赛马”,用于验证赛马引擎的核心逻辑。该命令会:
- 自动创建包含8匹随机命名赛马的房间
- 运行赛马引擎直至比赛结束
- 验证进度渲染格式的正确性
- 输出比赛结果和进度片段
这有助于在开发过程中快速验证赛马功能的完整性和正确性。
|
2026-04-04 17:08:45 +08:00 |
|
|
|
adccbfebb5
|
添加赛马实时进度播报
将比赛循环从race_engine移到commands中,每回合发送进度条:
马匹名 |████████░░░░░░| 45.2m
race_engine改为提供tick/determine_champion/format_progress方法
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:32:42 +08:00 |
|
|
|
1dd247ab4b
|
修复:参赛奖励改为结算时发放
报名时不再立即发放积分,改为比赛结算时统一发放参与奖励,
防止通过反复报名/取消刷积分
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:23:06 +08:00 |
|
|
|
e341fc085c
|
补全赛马插件完整游戏逻辑
实现所有帮助文本中声明的命令和比赛结算流程:
- 赛马报名:解析马匹名、创建Horse对象、防重复报名、发放参赛奖励
- 赛马取消报名:移除马匹、退还相关下注
- 赛马下注:扣积分、记录下注、不能给自己的马下注
- 赛马赔率:基于下注分布动态计算赔率
- 赛马开赛:异步执行比赛、自动结算冠军奖励和下注赔付、保存结果
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
2026-04-04 01:18:49 +08:00 |
|
|
|
633294f6cc
|
修复:group_horse_racing 配置键大小写匹配问题
NoneBot 将 .env 键名转为小写,前缀匹配需使用小写 group_horse_racing_
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-04 00:55:21 +08:00 |
|
|
|
4c9e2814ca
|
debug 11
|
2026-04-04 00:50:38 +08:00 |
|
|
|
3372242d78
|
testenv1
|
2026-04-04 00:42:51 +08:00 |
|
|
|
28702e3228
|
debug
|
2026-04-04 00:12:49 +08:00 |
|
|
|
fb3cc67b68
|
修改env读取手段
|
2026-04-04 00:05:56 +08:00 |
|
|
|
387dd3a0bb
|
修复:group_horse_racing 环境变量加载问题
- 修改 __init__.py 在插件初始化时加载 Config
- 修改 commands.py 和 test_commands.py 从 __init__.py 导入 plugin_config
- 确保配置通过 NoneBot 的 driver 正确加载环境变量
- 这样可以正确解析 .env 中的 JSON 格式环境变量
这解决了权限检查中 TESTERS 集合为空的问题。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:50:20 +08:00 |
|
|
|
8eca8fba49
|
修复:group_horse_racing 权限检查问题1
- 添加 field_validator 来正确解析环境变量中的 ID 集合
- 支持 JSON 格式 "[1424473282]" 和逗号分隔格式 "1424473282,621016172"
- 修复 TESTERS、TEST_GROUPS、ALLOWED_GROUPS 的环境变量解析
- 移除调试日志,保持代码整洁
这解决了环境变量中的 JSON 字符串无法正确解析为集合的问题。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:47:01 +08:00 |
|
|
|
756019b9ef
|
功能:完整实现测试设置积分命令
- 实现 handle_test_set_points 函数的完整逻辑
- 支持解析命令参数中的金额值
- 添加参数验证(非负数、整数类型)
- 返回设置结果反馈给用户
用法: /测试设置积分 <金额>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:41:54 +08:00 |
|
|
|
21a936fee6
|
修复:group_horse_racing 测试命令权限检查
- 修复 check_tester() 函数未检查 TEST_MODE 状态的问题
- 现在测试命令会正确验证 TEST_MODE 是否启用
- 确保只有在测试模式下且用户在 TESTERS 列表中才能执行测试命令
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:37:33 +08:00 |
|
|
|
6eed4bf3a2
|
修复:升级 Pydantic v2 兼容性,修复插件加载错误
- 更新 danding_points 配置使用 pydantic_settings.BaseSettings 和 SettingsConfigDict
- 更新 onmyoji_gacha 配置使用 pydantic_settings.BaseSettings
- 修复 danding_qqpush 配置加载使用 model_validate 替代 parse_obj
- 添加 group_horse_racing 插件的详细 README 文档
这些修复解决了 Pydantic v2 迁移中的导入错误和 API 变更问题。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-04-03 22:27:45 +08:00 |
|
|
|
ab1b25e239
|
功能:实现 Group_Horse_Racing 群赛马插件
- 新增群赛马游戏插件,支持多人参与赛马竞猜
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
2026-04-03 00:24:25 +08:00 |
|