批次6:D4文档治理收口 + D13锁文件流程固化
D4 文档/规划/历史混放收口:
- docs/TECH_DEBT.md §2 由'按批次回顾'精简为'按主题摘要',
与§3重复内容(批次0-4详细展开)整体迁入
docs/archive/2026-09_governance_batches.md
- docs/STATUS.md 顶部 2026-09-17 之前条目迁入
docs/archive/2026-09_status_history.md,仅保留指针
- D2 历史口径补齐为 2026-09-18 批次4后续专项清偿
- D4 标已清偿
- AGENTS.md / docs/archive/README.md 同步导航
D13 锁文件流程固化(镜像引入主体已清偿,仅剩锁文件落盘):
- 新增 deploy/generate_lockfiles.{sh,bat}:在 moldinsight conda
环境(仅项目依赖)执行 pip freeze --exclude pythonocc-core,
产出 deploy/requirements-{base,moldinsight}.lock.txt
- deploy/Dockerfile.moldinsight 注释改为指向生成脚本
- docs/OPERATIONS.md §2.1 增加完整流程说明
- tests/test_lockfile_generation.py 加锁文件存在性+体积契约;
tests/conftest.py 注册 --run-lockfile-check 选项,
默认 skip(仓库单测不阻塞),CI 镜像构建 job 显式启用 fail-fast
遗留:锁文件本身尚未落盘(本机Miniforge跨项目开发栈混装,
污染严重不能直接 pip freeze);待 CI / 生产首次构建时按流程落锁。
测试基线:126 passed, 9 skipped(默认4原有skip + D13新增5skip;
启用 --run-lockfile-check 时严格断言2项锁文件契约)
Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
@echo off
|
||||
REM ============================================================
|
||||
REM geMoldInsight pip 锁文件生成脚本(TECH_DEBT D13,Windows 版)
|
||||
REM ============================================================
|
||||
REM
|
||||
REM 用法:在 gemold conda 环境内执行 deploy\generate_lockfiles.bat
|
||||
REM
|
||||
REM 产物:
|
||||
REM deploy\requirements-base.lock.txt
|
||||
REM deploy\requirements-moldinsight.lock.txt
|
||||
REM ============================================================
|
||||
|
||||
setlocal enabledelayedexpansion
|
||||
cd /d "%~dp0\.."
|
||||
|
||||
where conda >nul 2>&1
|
||||
if errorlevel 1 (
|
||||
echo [ERROR] conda 未安装或不在 PATH,请先激活 conda 环境 ^(推荐 moldinsight^) 1>&2
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
if not "%CONDA_DEFAULT_ENV%"=="moldinsight" if not "%CONDA_DEFAULT_ENV%"=="gemold" (
|
||||
echo [WARN] 当前 conda 环境为 '%CONDA_DEFAULT_ENV%',推荐在 'moldinsight' 内执行
|
||||
)
|
||||
|
||||
echo ==^> 生成 base 锁文件
|
||||
pip freeze --exclude pythonocc-core > deploy\requirements-base.lock.txt
|
||||
|
||||
echo ==^> 生成 moldinsight 锁文件
|
||||
pip freeze --exclude pythonocc-core > deploy\requirements-moldinsight.lock.txt
|
||||
|
||||
echo.
|
||||
echo 已生成:
|
||||
echo deploy\requirements-base.lock.txt
|
||||
echo deploy\requirements-moldinsight.lock.txt
|
||||
echo.
|
||||
echo 下一步:提交两个 lock.txt,并按团队策略同步更新 requirements-*.txt 下限。
|
||||
endlocal
|
||||
Reference in New Issue
Block a user