diff --git a/.gitea/workflows/ci-cd.yml b/.gitea/workflows/ci-cd.yml index 12de27421..24cef1aa9 100644 --- a/.gitea/workflows/ci-cd.yml +++ b/.gitea/workflows/ci-cd.yml @@ -29,16 +29,16 @@ jobs: python3 -m venv .venv . .venv/bin/activate python -m pip install --index-url https://pypi.org/simple --upgrade pip - python -m pip install --index-url https://pypi.org/simple -r requirements-dev.txt + python -m pip install --index-url https://pypi.org/simple -r requirements-quality.txt - name: Run checks run: | . .venv/bin/activate - black --version - isort --version-number - flake8 --version - mypy --version - bandit --version + python -m black --version + python -m isort --version-number + python -m flake8 --version + python -m mypy --version + python -m bandit --version echo "✅ Code quality environment is ready" test: diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 12de27421..24cef1aa9 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -29,16 +29,16 @@ jobs: python3 -m venv .venv . .venv/bin/activate python -m pip install --index-url https://pypi.org/simple --upgrade pip - python -m pip install --index-url https://pypi.org/simple -r requirements-dev.txt + python -m pip install --index-url https://pypi.org/simple -r requirements-quality.txt - name: Run checks run: | . .venv/bin/activate - black --version - isort --version-number - flake8 --version - mypy --version - bandit --version + python -m black --version + python -m isort --version-number + python -m flake8 --version + python -m mypy --version + python -m bandit --version echo "✅ Code quality environment is ready" test: diff --git a/docs/PHASE7-PROGRESS.md b/docs/PHASE7-PROGRESS.md index 20dc4e6fd..9ea4abbb7 100644 --- a/docs/PHASE7-PROGRESS.md +++ b/docs/PHASE7-PROGRESS.md @@ -2,7 +2,7 @@ **Phase**: Phase 7 - 核心视频剪辑业务 **状态**: 🔄 进行中 -**最后更新**: 2026-06-18 21:47 GMT+8 +**最后更新**: 2026-06-19 03:28 GMT+8 --- @@ -77,7 +77,15 @@ 文档现在已经补齐,但后续如果不随着真实进展更新,依然会重新变成摆设。 必须把更新动作视为开发流程的一部分,而不是事后补写。 -### 阻塞点 C:数据库模型字段命名仍保留历史包袱 +### 阻塞点 C:本轮暴露出 CI/CD 质量检查异常,但不得在业务收尾中顺手修改 +已确认提交 `e5d5ae4` 对应的 `ci-cd.yml #239` 失败,失败点位于 `Code Quality Check`。 +当前判断属于 CI/CD 环境 / 开发依赖工具链可执行性异常,而非本轮 Phase 7 业务代码主链缺陷。 +**老大已明确决策**: +- 本轮只记录问题,不边做边改 CI/CD +- CI/CD 修复必须留到下一次单独规划、单独执行 +- 不得把 CI/CD 专项修复混入当前 Phase 7 业务收尾提交 + +### 阻塞点 D:数据库模型字段命名仍保留历史包袱 当前 `sqlalchemy_impl.models.AssetModel` 及相关存储层字段仍使用历史命名: - `asset_library_id` - `file_type` @@ -112,11 +120,28 @@ - [ ] 记录 Agent runtime 阻塞结论 - [ ] 后续在不影响业务主线时继续修复 OpenClaw 子 Agent 问题 +### Step 4:CI/CD 问题进入单独规划,不并入本轮业务收尾 +- [x] 已记录 `ci-cd.yml #239` 在 `Code Quality Check` 失败 +- [x] 已记录本轮处理原则:只暴露问题,不顺手改流水线 +- [x] 已形成 CI/CD 后续专项治理清单 +- [x] 已形成 `CI-CD-稳定性修复专项规划-草案.md` +- [x] 已正式启动 CI/CD 稳定性修复专项(独立分支) +- [x] 已完成 `#239` 失败链路复盘与第一轮根因确认 +- [x] 已完成质量检查依赖与测试依赖拆分收敛 +- [ ] 推送专项修复并等待新一轮 CI 验证 + +### Step 5:全局质量审计与专项治理计划落档 +- [x] 已完成一次面向整个 SaaS 仓库的全面质量审计 +- [x] 已生成完整审计报告 +- [x] 已生成执行摘要 +- [x] 已生成后续专项整治清单 +- [ ] 按专项清单逐项进入后续治理 + --- ## 五、当前判断 -**当前 Phase 7 已完成素材前半主链打通,并把生成链推进到“最小可运行闭环 + 结果查询/下载接口可用(预签名优先)+ 输出路径结构对齐 + 前端生成/结果主链联调完成 + 前端构建恢复可用”,整体仍保持在既定规则内推进。** +**当前 Phase 7 已完成素材前半主链打通,并把生成链推进到“最小可运行闭环 + 结果查询/下载接口可用(预签名优先)+ 输出路径结构对齐 + 前端生成/结果主链联调完成 + 前端构建恢复可用”,整体仍保持在既定规则内推进。与此同时,已完成一次面向整个 SaaS 仓库的全面质量审计,确认项目已具备可运行产品雏形,但全局一致性、测试可信度与 CI/CD 稳定性仍需专项收口。** 当前执行策略是: - 暂停 Agent 实跑 @@ -153,6 +178,7 @@ - 一个业务里程碑完成 - 创建或试跑新的 Agent - 规则文档路径发生变化 +- 老大明确新增了流程约束(例如“只记录问题,不在业务收尾里顺手改 CI/CD”) ### 最低更新要求(强制) - 每次完成一个阶段性收口动作,必须更新一次 @@ -161,4 +187,4 @@ --- -**状态结论**:Phase 7 未跑偏,已暂停 Agent 实跑并切回主会话直开;当前素材前半主链已打通,生成链已进入最小可运行闭环且结果查询/下载可用(预签名优先),输出路径结构与前端主链联调均已完成,前端构建链也已恢复可用,现继续通过提交与 CI/CD 验证推进。 +**状态结论**:Phase 7 未跑偏,已暂停 Agent 实跑并切回主会话直开;当前素材前半主链已打通,生成链已进入最小可运行闭环且结果查询/下载可用(预签名优先),输出路径结构与前端主链联调均已完成,前端构建链也已恢复可用。`ci-cd.yml #239` 失败的第一轮根因已确认:`Code Quality Check` 使用 `requirements-dev.txt` 拉起整套运行时/测试依赖,导致质量工具链安装链过重且不稳定。当前已将质量检查依赖拆分为独立入口 `requirements-quality.txt`,并同步调整 workflow,现进入推送与 CI 验证阶段。 diff --git a/requirements-quality.txt b/requirements-quality.txt new file mode 100644 index 000000000..ab208bcb0 --- /dev/null +++ b/requirements-quality.txt @@ -0,0 +1,8 @@ +# 小虾 SaaS - 代码质量 / CI 质量门禁依赖 + +# 只保留 Code Quality Check 真正需要的工具,避免拉整套运行时依赖 +black==26.5.1 +isort==8.0.1 +flake8==7.3.0 +mypy==2.1.0 +bandit==1.9.4