82 lines
4.8 KiB
Markdown
82 lines
4.8 KiB
Markdown
# 当前实现状态
|
||
|
||
> 本文是可覆盖的当前快照,记录代码与任务看板的现实状态,帮助 AI coding agent 避免只看计划而忽略仓库现状。
|
||
> 历史执行流水追加到 [`../progress.md`](../progress.md),不要在本文重复维护完整执行日志。
|
||
|
||
## 职责边界
|
||
|
||
- [`06-tasks.md`](06-tasks.md):任务看板,维护任务状态、依赖和验收要点。
|
||
- [`../progress.md`](../progress.md):执行流水,只追加记录每轮执行、验证、阻塞和决策。
|
||
- `current-state.md`:当前快照,可覆盖更新当前目录、当前命令、已完成摘要和下一步。
|
||
|
||
## 当前快照
|
||
|
||
- 日期:2026-07-02
|
||
- 阶段:Phase 0 地基已完成;下一步进入 Phase 1 的 T-101
|
||
- 技术栈:系统 Python 3.12.3 + Django 5.2.15 + DRF 3.16.1 + PyMySQL 1.1.3 + cryptography 46.0.7 + django-admin;MySQL 8.4 已接入 settings;用户端(模板 SSR/Bootstrap/allauth) 后续任务落地;详见 `03-tech-stack.md`
|
||
- 生产代码:已有最小 Django 工程骨架:`manage.py`、`config/`;T-002 已创建 `apps/users|portal|billing|ai|api`;T-003 已把自定义 `User` 注册进 django-admin
|
||
- 测试:`manage.py check` 通过;`manage.py test` 通过(2 条 admin smoke tests);`./init.ps1` 通过
|
||
- 数据:AI 上游调用与模型配置参考 `D:\chengma\cmbot`(`src/services/ai_text_service.py`、`ai_image_service.py`、`config/ai_models.json`)
|
||
- 标准启动路径:Windows 用 `./init.ps1`;Unix/WSL 用 `./init.sh`
|
||
- 标准验证路径:Windows 用 `py -3.12 manage.py check` / `py -3.12 manage.py test`
|
||
- 设计基线:**自助用户端 + 对外 API + 运营后台**三合一单体;用户模型 `User`(auth)/`UserWallet`(点数,锁 wallet 扣点)/`ApiKey`(1:N,哈希存储);对外两接口 + **能力别名 + Provider 适配器**(可插拔供应商);自助扫码充值;注册不送点数。详见 `04-architecture.md` 与 2026-06-29 / 2026-07-01 的 `progress.md` 决策
|
||
- 配置基线:运行环境变量集中见 `docs/env.md`;真实密钥/支付凭证不得写入代码或文档样例。充值订单在创建时锁定汇率与预计点数,回调入账使用订单值,不按新汇率重算
|
||
- 当前 blocker:无。支付商户密钥/证书仍缺真实值,但不阻塞当前 Phase 1,可在 T-304/T-305 先 mock 联调。
|
||
|
||
## 当前目录要点
|
||
|
||
| 路径 | 状态 | 说明 |
|
||
| --- | --- | --- |
|
||
| `docs/` | 已有 | 全套 harness 文档 |
|
||
| `AGENTS.md` / `CLAUDE.md` | 已有 | 仓库级入口 |
|
||
| `progress.md` | 已有 | 执行流水,已记录多轮文档决策;后续任务继续追加 |
|
||
| `init.sh` / `init.ps1` | 已有 | 启动验证入口,已固定系统 Python 3.12 命令 |
|
||
| `requirements.txt` | 已有 | Django 5.2 / DRF 3.16 / PyMySQL / cryptography 依赖 |
|
||
| `config/`(Django 工程) | 已有 | T-001 创建,含 settings / urls / wsgi / asgi |
|
||
| `apps/`(users/portal/billing/ai/api) | 已有 | T-002 创建;`apps/users` 已定义自定义 `User`;T-003 已注册 admin 与 admin smoke test |
|
||
| `manage.py` | 已有 | T-001 创建 |
|
||
| `tests/` | 待建 | 随各任务补充 |
|
||
|
||
## 任务看板状态
|
||
|
||
任务状态以 [`06-tasks.md`](06-tasks.md) 为准,历史执行记录见 [`../progress.md`](../progress.md)。
|
||
|
||
- 已完成:T-001 初始化 Django + DRF 项目骨架;T-002 建立 apps 目录、自定义 User 与配置;T-003 接通 django-admin 与最小测试。
|
||
- 正在进行:无。
|
||
- 当前 blocker:无。
|
||
- 下一个可领取任务:**T-101 Provider 适配器层 + 移植 cmbot 调用**。
|
||
|
||
## 当前可运行内容
|
||
|
||
```bash
|
||
# Windows PowerShell
|
||
py -3.12 -m pip install -r requirements.txt
|
||
py -3.12 manage.py check
|
||
py -3.12 manage.py test
|
||
py -3.12 manage.py runserver
|
||
|
||
# Unix / WSL
|
||
python3.12 -m pip install -r requirements.txt
|
||
python3.12 manage.py check
|
||
python3.12 manage.py test
|
||
python3.12 manage.py runserver
|
||
```
|
||
|
||
当前骨架可运行。T-002 已在首次迁移前创建自定义 User,并按 `env.md` 接入 MySQL 8.4 / utf8mb4;远程 MySQL 已完成 Django 初始迁移。T-003 已接通 django-admin,标准测试可创建/销毁 `test_cmhub` 测试库并通过。
|
||
|
||
## 开始编码前检查
|
||
|
||
1. 读仓库级 `AGENTS.md` / `CLAUDE.md`。
|
||
2. 读 `docs/00-ai-start-here.md`。
|
||
3. 读 `docs/05-coding-rules.md`(尤其第 8 节资金安全)。
|
||
4. 在 `docs/06-tasks.md` 取第一个 `TODO` 且依赖均 `DONE` 的任务(当前为 T-101)。
|
||
5. 将该任务状态改为 `DOING`。
|
||
|
||
## 维护规则
|
||
|
||
代码状态变化时同步更新本文:新增/移动入口文件、初始化框架或模块、任务状态变化、新增可运行命令、发现文档与代码不一致。
|
||
|
||
- 任务状态变化同步 [`06-tasks.md`](06-tasks.md)。
|
||
- 每轮执行记录、验证命令、阻塞、决策追加到 [`../progress.md`](../progress.md)。
|
||
- 本文件只保留当前快照,不保留完整历史。
|