ProjectForge v0.3.0
v0.3.0 主题:「约束可审计」——规划接入 LLM、执行全程可审计、超时可调。
主要变化
LLM Planner:一条命令从 JD 到任务图
projectforge plan <jd_file> --planner llm:LLM 按 JD 生成项目蓝图与 6–12 个带依赖、验收标准的任务,输出经 pydantic schema 与任务图(环检测/拓扑)双重校验- 任何 OpenAI 兼容厂商均可(StepFun / DeepSeek / OpenRouter / 本地 ollama),三个环境变量配置
- 坏输出重试一次后自动回退离线规则版,
plan命令永不失败 - 规则版保留为离线默认(
--planner rule),无需任何 key
git checkpoint:执行全程可审计
- 执行器 workspace 自动 git 基线化(非仓库时 init + baseline commit)
- 每个任务成功后自动提交——每个任务一个独立可回滚的 commit,checkpoint 为逐任务精确 diff
- validator 新增 GIT 判据:自报改动与 git 实况矛盾 = 硬 FAIL;无 git 环境仅警告不阻塞
超时参数化
run start/resume --timeout与PROJECTFORGE_TASK_TIMEOUT_SECONDS,默认 300 秒,终结隐藏的 900s×3 最坏 45 分钟
验证证据
| 层 | 结果 |
|---|---|
| GitHub Actions CI(3.10/3.11/3.12) | 通过 |
| 本地全量多轮 | 360 passed / 19 skipped,零 flake |
| 真实执行环境(Hermes + bwrap sandbox) | 379 passed / 0 skipped |
| 干净 venv wheel 冒烟 | 安装 → plan → run → COMPLETED |
离线体验:python scripts/demo.py 或 projectforge plan ./jd.txt --planner rule,见 docs/demo.md。
升级注意
- v0.3.0 声明了完整运行时依赖(含此前缺失的 httpx 与 pytest),
pip install projectforge即装即用 - 沙箱与宿主共享网络(真隔离需 slirp4netns,未实现)