ProjectForge v0.5.0
任务级路径约束(可选启用)+ 分阶段上线。
Added
Task.allowed_paths:任务可声明允许修改的路径;声明后按声明校验,并自动放行跨切文件(依赖清单、构建配置、文档、任意层级的__init__.py)PROJECTFORGE_SCOPE_MODE:默认warn只记录不判死,enforce才判SCOPE_VIOLATION
Changed
- scope 判定抽到
app/agents/scope_policy.py,消除 validator 与 cli_adapter 的重复实现
Fixed
- 声明路径校验漏掉 Windows 无盘符根路径(
/abs/path的is_absolute()为False),可解析到工作区之外;改用anchor判定
Documentation
- README / docs/demo.md 的 scope 表述改为准确描述(原先宣称的越界拦截在生产路径从不触发)
验证
- 本地:416 passed, 19 skipped
- VM:433 passed(新增 21 项全过);2 项 Hermes 真实推理用例因缺 LLM 凭据失败,与前版基线一致(既存环境问题)