feat: initialize flask app skeleton

This commit is contained in:
ila
2026-07-04 23:20:40 +08:00
parent 22e69ccce1
commit 5a7ea348e5
12 changed files with 82 additions and 17 deletions
+2 -2
View File
@@ -39,8 +39,8 @@
| 用途 | 命令 |
| --- | --- |
| 安装依赖 | `python -m pip install -r requirements.txt` |
| 本地开发 | 待定 |
| 测试 | 待定 |
| 本地开发 | `python run.py` |
| 测试 | `python -m unittest discover -s tests` |
| 格式化 / 静态检查 | 待定 |
当前可用文档检查:
+1 -1
View File
@@ -18,7 +18,7 @@
| ID | 任务 | 依赖 | 验收要点 | 状态 |
| --- | --- | --- | --- | --- |
| T-001 | 初始化 Flask 项目骨架 | - | 使用当前系统 Python 3.8,不创建虚拟环境;创建 `requirements.txt` 并固定 `Flask==3.0.3`;使用 application factory 模式实现 `create_app(config_object=None)`;本地 health check API 可启动;真实命令同步到技术栈和当前状态 | TODO |
| T-001 | 初始化 Flask 项目骨架 | - | 使用当前系统 Python 3.8,不创建虚拟环境;创建 `requirements.txt` 并固定 `Flask==3.0.3`;使用 application factory 模式实现 `create_app(config_object=None)`;本地 health check API 可启动;真实命令同步到技术栈和当前状态 | DONE |
| T-002 | 建立基础配置与目录 | T-001 | 目录符合架构文档;配置从环境变量读取;无真实密钥 | TODO |
| T-003 | 建立最小测试框架 | T-001 | pytest 可运行;至少有 `create_app` / health check 测试,能通过测试配置创建 Flask app | TODO |
+14 -13
View File
@@ -5,13 +5,13 @@
## 当前快照
- 日期:2026-07-04
- 阶段:MVP 起步 / 文档与逆向资料整理
- 技术栈:目标为当前系统 Python 3.8、Flask 3.0.3 application factory、Redis;代码尚未初始化;不创建虚拟环境
- 生产代码:暂无
- 测试:暂无
- 阶段:MVP 起步 / Flask 地基已初始化
- 技术栈:当前系统 Python 3.8、Flask 3.0.3 application factory;不创建虚拟环境
- 生产代码:`app/__init__.py`、`app/api/health.py`、`app/config.py`、`run.py`
- 测试:`tests/test_app_factory.py`
- 数据 / 资料:`reverse_file/` 下已有 CHIS HAR、前端脚本和 schema;`D:\hans\chupd\chis\login_client_v2.py` 可作为登录链路参考
- 标准启动路径:待 T-001 初始化后补齐
- 标准验证路径:当前仅文档文件检查
- 标准启动路径:`python run.py`
- 标准验证路径:`python -m unittest discover -s tests`
- 当前 blocker:无硬阻塞;后续实现需要把 Django 登录代码迁移为 Flask 版本,并通过配置提供 CHIS public key
## 当前目录要点
@@ -22,17 +22,17 @@
| `reverse_file/` | 已有 | CHIS 逆向资料,当前重要事实来源 |
| `reverse_file/20260704_query_health_check.har` | 已有 | 体检详情只读查询 HAR,包含 `getHMNIListOfHTML` 和 `getCheckInfoDetail` |
| `D:\hans\chupd\chis\login_client_v2.py` | 外部参考 | CHIS 登录、SM2 加密、角色选择、cookie 拼接、`getLanderInfo` 会话验证 |
| `app/` | 待建 | Flask 应用代码 |
| `tests/` | 待建 | 测试目录 |
| `requirements.txt` | 待建 | Python 依赖 |
| `app/` | 已有 | Flask application factory 和 health check API |
| `tests/` | 已有 | `unittest` 测试 |
| `requirements.txt` | 已有 | Python 依赖,固定 `Flask==3.0.3` |
## 任务看板状态
任务状态以 [06-tasks.md](06-tasks.md) 为准。
- 已完成:DOC-001 建立 harness coding 项目文档;DOC-002 更新 CHIS 登录与只读查询验证路线;DOC-003 明确使用系统 Python 3.8;DOC-004 明确 Flask factory 模式;DOC-005 明确日志与请求归档方案。详见 [../progress.md](../progress.md)。
- 已完成:DOC-001 建立 harness coding 项目文档;DOC-002 更新 CHIS 登录与只读查询验证路线;DOC-003 明确使用系统 Python 3.8;DOC-004 明确 Flask factory 模式;DOC-005 明确日志与请求归档方案;T-001 初始化 Flask 项目骨架。详见 [../progress.md](../progress.md)。
- 正在进行:无。
- 下一个可领取任务:T-001 初始化 Flask 项目骨架。
- 下一个可领取任务:T-002 建立基础配置与目录。
## 已确认技术事实
@@ -50,8 +50,9 @@
## 当前可运行内容
```powershell
Get-ChildItem -Recurse -File # PowerShell
# bash 等价: find . -type f -not -path './.git/*'
python -m pip install -r requirements.txt
python -m unittest discover -s tests
python run.py
```
## 开始编码前检查