附录 F 功能状态、安全与许可证¶
目标¶
明确当前版本中已实现、实验性和未实现的边界,并说明安全、许可证和上游署名要求。
适用范围¶
适用于 0.7.1-beta.3(测试版),后续版本应重新核对。
前置条件¶
以当前仓库代码、帮助、模板和测试为准,不以上游规划代替事实。
操作步骤¶
| 功能 | 状态 | 边界 |
|---|---|---|
| 安装、初始化、更新、卸载预览 | 已实现 | 卸载实际执行会删除整个工作流目录 |
| 项目初始化闭环 | 已实现、实验性 | 区分空仓库与已有项目;事实索引只提供读取路径,不自动提取或确认项目事实 |
| 任务、规范、上下文清单 | 已实现 | 规划质量仍需人工审阅 |
| Lean Research Closure | 已实现、实验性 | 默认 1–4 个工作包;自动候选仍需人工审阅 |
| 默认任务生命周期协调 | 已实现、实验性 | 幂等修复派生状态并记录事件;不接受证据、不完成工作包、不批准主张、不自动关闭任务 |
| Task Capsule 与条件式 Handoff | 已实现 | 平台没有主会话 hook 时需手动调用 |
| 五角色与 Profile | 已实现、实验性 | 正式平台代理模板当前只提供 Claude Code 和 Codex;旧任务卡可兼容读取 |
| Agent Context Firewall | 已实现、实验性 | Claude 支持派发替换与结果净化;Codex 支持写入、命令和结束门禁,子代理输入仍依赖协议 |
| 结构化 Result Envelope | 已实现 | 拒绝日志、完整差异、搜索过程和敏感信息;原始跟踪只保存在忽略发布的本地运行目录 |
| 计划/状态双修订号 | 已实现 | 计划变化使旧派发过期;普通进度更新不影响并行兄弟派发;保留旧字段兼容 |
| 确定性证据整理 | 已实现 | 校验和汇总引用,不判断证据质量或批准主张 |
| Closure Audit 与有限 Repair | 已实现 | 只处理缺口和状态,不自动运行实验或批准主张 |
| 科研记录与结构校验 | 已实现、实验性 | 追加式约定,不防篡改 |
| 科研状态流程 | 协议模板 | state_machine.yaml(状态协议)未作为通用运行时迁移引擎强制执行 |
| 实验运行与运行清单 | 已实现、实验性 | 默认无隔离,允许命令不是强沙箱 |
| 容器或外部沙箱运行 | 不提供 | 当前版本直接在真实项目环境运行,不把流程门禁描述为隔离环境 |
| 比较命令 | 已实现但有限制 | 不写统计字段,无法直接通过质量门禁 |
| 报告和主张审查 | 已实现 | 报告保持待审批,不自动批准 |
| 人工审批界面与身份认证 | 未实现 | 只校验记录字段,真实性靠外部流程 |
| 频道事件与本地工作代理 | 已实现、实验性 | 工作代理仅支持 Claude 与 Codex 提供方 |
| Claude、Codex 会话检索 | 已实现、实验性 | 读取本机历史文件 |
| OpenCode 会话读取 | 未实现 | 当前适配器为空实现并给出警告 |
| 操作系统级沙箱、防篡改账本、远程服务 | 未实现 | 不应从名称推断为具备 |
所有功能都属于非上游官方的科研改造测试版。
安全边界¶
allowed_commands(允许命令)和代理文件范围用于流程约束,不是操作系统级沙箱。RecordBus(记录总线)使用本地JSONL(逐行 JSON)文件,便于审计,但不能防止有文件权限的进程篡改历史。- 平台钩子可以未启用、被环境变量关闭或因平台差异失效。执行危险命令前仍需人工确认。
- 缺少新鲜钩子时三种 closure 模式都会提示降级;
standard(标准)和publication(发表)仍通过更严格的运行、证据、统计、主张和人工审批记录完成审计。 - 不要把
.env(环境变量文件)、访问令牌、密码、私有数据或未脱敏实验输入写入任务、记录和报告,也不要提交到Git(版本控制系统)。 - 外部文献、数据、模型和网络服务需要单独核对许可证、隐私和访问权限。
许可证与上游署名¶
- 本项目基于
mindfold-ai/Trellis(上游项目)修改,不是上游官方版本,也不代表上游立场。 - 项目和两个发布包的
SPDX(许可证标识)以及根说明统一使用AGPL-3.0-or-later(AGPL 第 3 版或任何后续版本),与上游COPYRIGHT(版权声明)中“version 3 or any later version”(第 3 版或任何后续版本)的授权口径一致。 - 根目录
LICENSE(许可证原文)和COPYRIGHT(版权声明)必须随分发内容保留;发布预检只核对元数据与说明的一致性,不改写或缩减上游权利文本。 - 发布修改版时应明确标注修改事实和日期,保留上游版权信息,并提供许可证要求的对应源码获取方式。
research-trellis(CLI 包)和research-trellis-core(核心包)的打包清单都必须包含LICENSE(许可证)和COPYRIGHT(版权声明);发布预检会对缺失文件失败关闭,不改写上游权利文本。
预期结果¶
使用者不会把存在命令误解为生产级安全能力,也不会把未实现功能写入操作流程;分发前能够找到上游来源、许可证原文和待确认的口径差异。
失败恢复¶
发现手册与新版本不一致时,以新版本帮助、实现和测试为准,并更新本页状态。
验证记录¶
- 日期:2026-07-15。
- 版本:
0.7.1-beta.3(测试版)。 - 更名前基准提交:
9f7dc8497b4782878d6fa7ac3b63eba5bde507df。 - 命令:
node packages/cli/scripts/release-preflight.js check-licenses(许可证元数据与权利说明一致性检查);rg -n -m 1 "COPYRIGHT|LICENSE|files" packages/cli/package.json packages/core/package.json packages/cli/scripts/release-preflight.js(打包权利文件核对)。 - 结果:项目和两个包的
SPDX(许可证标识)均为AGPL-3.0-or-later(AGPL 第 3 版或任何后续版本);两个包均声明LICENSE(许可证)和COPYRIGHT(版权声明),发布预检也将其列为必需文件。 - 未验证项:许可证对特定分发或部署场景的适用性仍需维护者或法律专业人员确认。
来源¶
S1、S2、S3、S7、S8、S10、S11、S12、S13