Serendipity
|
966ecaef3d
|
chore: bump version to 2.0.1
v2.0.1
|
2026-05-31 13:56:24 +08:00 |
|
Serendipity
|
a16041cd67
|
fix: 计时器改为双方独立象棋钟 + 超时自动判负
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:53:47 +08:00 |
|
Serendipity
|
063a181a6e
|
fix: AI 使用 Arc 实现真正的后台线程执行,不阻塞 Tauri 命令线程池
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:53:06 +08:00 |
|
Serendipity
|
3331d567c0
|
refactor: 提取 refreshBoard status 计算逻辑提高可读性
|
2026-05-31 13:52:10 +08:00 |
|
Serendipity
|
4ed66377d2
|
feat: 实现认输和保存棋谱功能
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:47:50 +08:00 |
|
Serendipity
|
dddfd035c6
|
feat: 接入 LLM AI 引擎到 GUI,GameConfig 支持 useLlm 切换 AI 类型
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:46:45 +08:00 |
|
Serendipity
|
75c980e2b6
|
feat: 添加棋盘大小选择器 (9x9 ~ 19x19)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:45:02 +08:00 |
|
Serendipity
|
c1c64b0155
|
perf: AI 搜索移到独立后台线程避免阻塞 GUI
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:43:25 +08:00 |
|
Serendipity
|
e7a32ef8df
|
fix: 补全 i18n 国际化,消除所有硬编码中文
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:43:02 +08:00 |
|
Serendipity
|
955396a74d
|
feat: 添加 env_logger 基础日志系统
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:41:06 +08:00 |
|
Serendipity
|
ec4aae37d9
|
fix: 棋谱日期从 Unix 时间戳改为 ISO 8601 可读格式
|
2026-05-31 13:40:28 +08:00 |
|
Serendipity
|
3bbbe73b1f
|
test: 添加前端核心逻辑和棋盘渲染单元测试
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:40:21 +08:00 |
|
Serendipity
|
ac62da2ad8
|
feat: 添加 React Error Boundary 组件防止渲染异常白屏
|
2026-05-31 13:40:05 +08:00 |
|
Serendipity
|
e1bf667519
|
fix: 禁用未完成的网络对战入口,标注开发中
|
2026-05-31 13:40:02 +08:00 |
|
Serendipity
|
43d50bd9b2
|
docs: 修正 CONTRIBUTING.md 中不存在的 tests/ e2e/ 目录引用
|
2026-05-31 13:39:52 +08:00 |
|
Serendipity
|
cd9c3a79ab
|
fix: 修复悔棋奇数步崩溃及空历史错误语义 (NoHistory)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:38:04 +08:00 |
|
Serendipity
|
8c3289e631
|
chore: 删除未使用的 get_board IPC 命令,修复 clippy needless_range_loop 警告
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:36:42 +08:00 |
|
Serendipity
|
dd84ff95d5
|
feat: 添加图标文件,支持不同分辨率的应用界面
|
2026-05-31 13:28:40 +08:00 |
|
Serendipity
|
5598f72cf7
|
docs: 添加 CLAUDE.md 项目文档
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:20:05 +08:00 |
|
Serendipity
|
834d61f896
|
fix: 移除 GameMode 的 camelCase 重命名,修复前端传 Local/VsAi 无法匹配
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:09:11 +08:00 |
|
Serendipity
|
0b8130a71f
|
fix: main.tsx 导入 i18n 初始化模块,修复界面显示原始 key
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:06:02 +08:00 |
|
Serendipity
|
90de72d67a
|
fix: 打包目标改为 NSIS,移除需要 WiX 的 MSI
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 13:04:49 +08:00 |
|
Serendipity
|
605e01803f
|
docs: 重写 README 并更新 .gitignore 适配 v2.0 架构
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 12:57:27 +08:00 |
|
Serendipity
|
ffcc7a7675
|
fix: 代码审查修复 — serde camelCase/CSP/TS检查/replay/undo/AI禁手/星位/未使用依赖
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 12:51:53 +08:00 |
|
Serendipity
|
bb4f393229
|
chore: 删除旧 C+IUP 代码,仅保留 Rust+Tauri+React v2.0 代码
|
2026-05-31 12:48:37 +08:00 |
|
Serendipity
|
4126b9f74c
|
docs: 开源文件 — LICENSE/CHANGELOG/CODE_OF_CONDUCT/CONTRIBUTING/SECURITY/README
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:29:00 +08:00 |
|
Serendipity
|
e395ea424b
|
feat(frontend): App 路由集成 + 木纹风格 CSS
App.tsx 添加 menu/game/replay 三页面路由切换,MainMenu 新增
onReplayStart 属性区分对局与回放入口。App.css 实现经典木纹
视觉风格(深棕底色、米黄文字、皮革纹理按钮),index.css 基础
重置。修复 tsconfig 中 erasableSyntaxOnly 无效选项并安装
@types/node。
|
2026-05-31 00:27:34 +08:00 |
|
Serendipity
|
0138d80f2a
|
feat(frontend): 对局视图 + 回放视图 + 计时器 hook
|
2026-05-31 00:25:41 +08:00 |
|
Serendipity
|
a4b3b5c380
|
feat(frontend): 菜单组件 — 主菜单/本地双人/AI设置/网络/加载棋谱
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:25:19 +08:00 |
|
Serendipity
|
6d8a62eca5
|
feat(frontend): Canvas 棋盘渲染 — 木纹风格, 棋子渐变, 最后一手高亮
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:22:47 +08:00 |
|
Serendipity
|
eeafa92e90
|
feat(frontend): 类型定义 + i18n 中英双语 + Zustand store
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:20:32 +08:00 |
|
Serendipity
|
36f6b15b8e
|
feat(gui): Tauri IPC 命令 — new_game/place_piece/undo/ai_move/get_board/get_game_state
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:18:07 +08:00 |
|
Serendipity
|
a17fba8ff5
|
feat: Tauri + React + Vite + TypeScript 前端脚手架
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:14:31 +08:00 |
|
Serendipity
|
820f35f444
|
feat(core): LLM AI — OpenAI 兼容 API 调用 + prompt/parse
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:09:44 +08:00 |
|
Serendipity
|
6a78631ad4
|
feat(core): 网络模块 — GameMessage 协议定义 + NetworkSession
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:05:58 +08:00 |
|
Serendipity
|
4dc837a29a
|
feat(core): 棋谱记录 — JSON 序列化/反序列化 + 复盘重建
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:04:42 +08:00 |
|
Serendipity
|
556ee39a28
|
feat(core): AI Alpha-Beta 搜索 — Negamax + 剪枝 + 启发式排序
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:03:38 +08:00 |
|
Serendipity
|
5230adacde
|
feat(core): AI 棋形评分模块 — 连五/活四/冲四/活三等棋形打分
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-31 00:00:48 +08:00 |
|
Serendipity
|
963fc78007
|
feat(core): 禁手规则 — 长连/双三/双四检测
实现黑棋禁手检测(is_forbidden),包含:
- 长连禁手(超过5子连珠)
- 双三禁手(同时形成两个活三)
- 双四禁手(同时形成两个活四)
- 白棋不受禁手规则限制
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:59:19 +08:00 |
|
Serendipity
|
4e336308ab
|
feat(core): 棋盘引擎 — 不可变 Board, 落子/胜负/悔棋/候选位
实现不可变风格的 Board 结构体,place()/undo() 返回新 Board。
包含 bounds 检查、四方向五连胜负判定、悔棋历史管理、
空棋盘天元候选等功能。新增 11 个单元测试全部通过。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:55:21 +08:00 |
|
Serendipity
|
fd307addc8
|
feat(core): 定义基础类型 — Position, Color, CellState, Move, GameConfig
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:51:00 +08:00 |
|
Serendipity
|
1e0d5f0c43
|
feat: 初始化 Cargo workspace + core crate 脚手架
创建 Rust 工作区,包含 core(纯游戏逻辑)和 gui(Tauri 占位)两个 crate。
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:49:50 +08:00 |
|
Serendipity
|
1d2cd15fe9
|
docs: Gobang v2.0 详细实施计划 — 17 任务逐步构建
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:44:45 +08:00 |
|
Serendipity
|
214acaf0fe
|
docs: Gobang v2.0 Rust 重写设计规格
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-30 23:34:22 +08:00 |
|
Serendipity
|
c6053585d4
|
fix(gui): 增大主菜单窗口尺寸防止内容截断
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-02 16:02:59 +08:00 |
|
Serendipity
|
e41e856fe0
|
feat(gui): 经典木纹风格 UI 视觉美化
- 配色方案:暖木色棋盘、米白窗口背景、深棕按钮,统一视觉语言
- 主菜单:IupFrame 分组(选择模式/功能),主按钮深棕底白字
- 棋盘渲染:渐变棋子(3层同心圆模拟立体感)、坐标标注(A-O/1-15)、
蓝色圆环最后落子标记、深色棋盘边框、加大星位天元
- 侧边面板:IupFrame 包裹对局信息,按钮统一样式
- 设置页面:IupFrame 分组(基本/AI/大模型),按钮样式统一
- 网络/复盘对话框:IupFrame 分组,配色和按钮样式统一
- 全局字体:SimHei 11 作为默认字体
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-02 15:57:06 +08:00 |
|
Serendipity
|
bf21efbbc0
|
rename: ENet 库目录重命名为 libs/ENET
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-02 15:41:48 +08:00 |
|
Serendipity
|
b616a4662b
|
rename: IUP 库目录重命名为 libs/IUP
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-02 15:39:42 +08:00 |
|
Serendipity
|
96a94aaddf
|
feat: 集成大模型AI、重构构建系统并修复多项代码质量问题
- 构建系统:Makefile 迁移至 CMakeLists.txt,支持 cJSON 和 WinHTTP
- 项目结构:src/ 按功能拆分为 core/、gui/、network/、record/、llm/ 子目录
- 新功能:集成大模型 AI(WinHTTP + cJSON,兼容 OpenAI 协议),支持异步请求
- 渲染修复:IupDraw* 替换为 Windows GDI,修复画布黑屏问题
- 网络修复:ENet 初始化幂等化,实现真实 get_local_ip() (Winsock)
- 代码质量:删除死代码 (dfs/count_threats_in_direction),修复头文件守卫,
sprintf→snprintf 防溢出,strncpy 安全终止,GDI 资源泄漏修复
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
2026-05-02 15:32:54 +08:00 |
|
Serendipity
|
f897536a45
|
refactor(config): 更新时间限制为30分钟并调整配置文件存储格式
refactor(globals): 移除不必要的GUI运行状态标志
refactor(gui): 更新注释以反映使用IUP库
refactor(ai): 修改威胁检测逻辑以提升威胁等级
refactor(config): 修改加载和保存配置的时间限制逻辑
refactor(network): 更新默认网络端口常量
refactor(record): 移除冗余注释并增强复盘步骤的合法性检查
|
2026-05-02 12:24:27 +08:00 |
|