Files
huajishe-tts/docs/dev-log/README.md
e2hang ddcb28472c feat(double-up): 双升游戏 + 单端口 start.sh 部署 + 文档统一更新
- 新增双升(DoubleUp)完整实现:引擎 double-up-core.ts / double-up.ts、牌桌 UI DoubleUpBoard.tsx、单测与 E2E
- 甩牌跟牌修复:validateFollow 新增 mixed 分支,甩牌后其他家可正常跟单张同花色牌
- start.sh:PORT=5173 单端口一键启动(Koa 同时 serve 页面+/api+/socket.io),浏览器直连无需 Vite 代理
- 玩家名 server 权威化(join 时写入 G.playerNames);LobbyRoomList 支持 fixedSeats(双升固定 4 人)
- 文档:新增 dev-log/14、更新 dev-log README 索引与进度、更新根 README 启动/部署说明
- .gitignore 忽略根目录 data/*.db 运行时 SQLite
2026-08-30 02:11:04 +08:00

62 lines
3.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 开发日志 · Dev Log
按时间 + 主题切的开发过程记录。每篇文档遵循同一结构:
> **做什么**(用户要求)→ **遇到什么问题** → **怎么解决**
## 索引
| # | 文档 | 主题 |
| --- | --- | --- |
| 01 | [初始需求与架构设计](./01-initial-scope-and-design.md) | TTS-like 桌游模拟器的目标、约束、决策 |
| 02 | [UI 原语 API 设计](./02-ui-primitives-api-design.md) | `<Board> <Zone> <Card> <Token> <ActionButton>` 接口规范 |
| 03 | [项目骨架搭建](./03-monorepo-scaffold.md) | pnpm workspace + Vite + Tauri 初始结构 |
| 04 | [UI 原语实现](./04-ui-primitive-impl.md) | Board/Zone/Card 联通 game.ui schema |
| 05 | [拖拽 + 落点判定](./05-drag-and-drop.md) | HTML5 drag-and-drop + 多选 + 验证 |
| 06 | [三个示例游戏](./06-three-games.md) | DragTest / War / Mill (九子棋) |
| 07 | [Bug 修复 · 第一轮](./07-bugfixes-round-1.md) | War 牌堆不可见、DragTest 桌→桌重复加卡 |
| 08 | [本地局域网联机](./08-local-lan-multiplayer.md) | tsx server + SocketIO + 2 客户端实测 |
| 09 | [房间列表 UI + 完整测试](./09-room-list-ui-and-complete-tests.md) | LobbyRoomList + E2E/unit/Docker 修复 |
| 10 | [部署后修复LAN CORS + join 409](./10-cors-and-join-bugs.md) | CORS 覆盖 LAN、joinRoom refresh、tie 容忍测试 |
| 11 | [用户测试反馈 · 第一轮](./11-user-test-feedback-round-1.md) | connecting 卡死、UI 重复入口、无法自检、防误删缺失 |
| 12 | [统一端口 + 玩家命名系统](./12-unified-port-and-player-names.md) | /api 前缀、vite proxy、静态 serve、名字显示/改名 |
| 13 | [德州扑克Holdem游戏](./13-holdem-game.md) | 引擎 + 评估器 + 牌桌 UI + 可变人数大厅 + E2E |
| 14 | [双升游戏 + 单端口启动/部署](./14-double-up-game.md) | DoubleUp 引擎+UI+联机、start.sh(PORT=5173)、玩家名 server 权威、固定人数大厅 |
| — | [踩坑总结](./lessons-learned.md) | 所有踩过的坑(按现象分类) |
| — | [决策记录](./decisions.md) | 已锁定决策 + 日期 |
## 仓库结构
```
docs/
├── dev-log/ ← 本目录
│ ├── README.md
│ ├── 01-initial-scope-and-design.md
│ ├── 02-ui-primitives-api-design.md
│ ├── 03-monorepo-scaffold.md
│ ├── 04-ui-primitive-impl.md
│ ├── 05-drag-and-drop.md
│ ├── 06-three-games.md
│ ├── 07-bugfixes-round-1.md
│ ├── 08-local-lan-multiplayer.md
│ ├── 09-room-list-ui-and-complete-tests.md
│ ├── 10-cors-and-join-bugs.md
│ ├── 11-user-test-feedback-round-1.md
│ ├── 12-unified-port-and-player-names.md
│ ├── 13-holdem-game.md
│ ├── 14-double-up-game.md
│ ├── lessons-learned.md
│ └── decisions.md
├── impl.md 整体实现规划(高层)
└── ui-primitives.md UI 原语 API 详细规范
```
## 进度总览
- **架构 + 骨架**:✅ 完成
- **本地 2D MVP**(拖拽 + 3 个游戏):✅ 完成
- **联机**:✅ Phase 2创建房间 + 房间列表 + E2E/unit 覆盖)
- **游戏生态**:✅ Holdem德州扑克2-9 人,含隐藏信息 + 边池);✅ DoubleUp双升固定 4 人,拖拉机/甩牌/抠底)
- **桌面壳Tauri**:⏳ Phase 4待启动
- **脚本化层(玩家自写游戏)**:⏳ Phase 3待启动