Phase 0 评审修复:init.sh 跨平台兼容 + production SECRET_KEY 强制校验 + 文档同步
This commit is contained in:
+18
@@ -154,3 +154,21 @@
|
||||
- 决策:`init.sh` 的 `VERIFY_CMD` 已在上轮设为 `manage.py check`,无需修改。
|
||||
- 下一步:T-101 建立场景、语言、框架、数据库、功能标签模型。
|
||||
|
||||
## 2026-07-06 Phase 0 评审修复
|
||||
|
||||
- 状态:DONE
|
||||
- 变更(按 `docs/review/phase0-review.md` 评审逐项修复):
|
||||
- **Issue 1 (High)**:`init.sh` / `init.ps1` 改用 `python3.12`/`pip3.12` 替代 `python`/`pip`,解决 MSYS2 venv 中 `.venv/bin/python` 不存在的问题;增加 venv 存在性检查
|
||||
- **Issue 2 (High)**:`production.py` 新增 `ImproperlyConfigured` 检查,`SECRET_KEY` 缺失或仍为 `django-insecure-` 前缀时启动即失败;修复 `ALLOWED_HOSTS=['']` 空字符串问题(过滤空值)
|
||||
- **Issue 3 (Medium)**:`AGENTS.md` 更新当前阶段(Phase 0 已完成,下一步 T-101)和验证命令;`current-state.md` 修复 blocker 行(T-002→T-101)和 init 脚本状态;`00-ai-start-here.md` 替换为真实验证命令
|
||||
- **Issue 4 (Low)**:`.env.example` 重写说明,明确列出四种环境变量注入方式(shell export、systemd、托管平台、Docker),不再误导用户以为复制即生效
|
||||
- 验证:
|
||||
- `manage.py check`:0 errors(dev settings)
|
||||
- `manage.py test`:5 tests passed
|
||||
- `DJANGO_SETTINGS_MODULE=skelet.settings.production manage.py check`:正确抛出 `ImproperlyConfigured`(SECRET_KEY 缺失)
|
||||
- `SECRET_KEY=<valid> ALLOWED_HOSTS=example.com DJANGO_SETTINGS_MODULE=skelet.settings.production manage.py check`:0 errors(production settings 含正确 SECRET_KEY)
|
||||
- `.env.example` grep:仅占位值,无真实密钥
|
||||
- 阻塞:无。
|
||||
- 决策:因 WSL2 不可用,当前实际开发环境为 MSYS2/MinGW;venv 使用 `--system-site-packages` 复用 MSYS2 Pillow;`init.sh` 使用 `python3.12`/`pip3.12` 实现跨平台兼容。
|
||||
- 下一步:T-101 建立场景、语言、框架、数据库、功能标签模型。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user