# 项目统一约束 自 2026-10-18 起,本文件约束本仓库的设计、开发、测试、安装与交付。完整定义及验收标准见 [ADR-001:官方插件扩展边界与交付](docs/decisions/001-official-plugin-boundary.md)。与旧说明冲突时,按本文件执行;用户后续明确指令优先。 ## 1. 不修改 DeepSeek Harness - 不修改 Harness 的源码、构建产物、内置插件或安装目录中的文件;不得通过源码补丁、运行时 monkey patch、替换原生组件或修改宿主的 `node_modules` 达成功能。 - 安装可以通过官方插件管理机制维护目标 profile 的依赖、bundle 清单和本插件配置;不得覆盖用户其他配置或其他插件。 - 允许只读研究官方源码、类型和文档,不得把用户准备或修改一份 Harness 源码仓库作为正式安装前提。 - `integration/harness-workspace-slots.patch` 及要求应用它的旧流程仅供历史追溯,禁止作为后续开发或交付方案。当前运行环境不因规范生效而自动回滚或清理。 ## 2. 只通过官方公开机制扩展 - 本项目是独立第三方插件,使用目标官方发行版已提供的 Cordis 插件、bundle/profile 配置、公开服务、技能、工具、Remote 和 UI 插槽等扩展机制。不得把本地增加的接口称为官方接口。 - 每个接入点记录官方依据、适用版本、所需依赖及生命周期清理方式。能力缺失时改用已有官方入口、明确降级或等待上游支持,不向宿主补接口。 - 维护包名、版本、许可证、入口、打包白名单、Node/Harness 兼容范围、运行时 peer 依赖、`dsh.bundle.patch`、按需 `dsh.client`/服务注入等必要声明。兼容范围须有官方原版验证依据,不得仅改版本号放行。 - `cordis.patch.yml` 是官方声明式插件组合配置,可使用;它与修改宿主源码的 `.patch` 文件不同。 ## 3. 安装后可完全卸载 - 安装和移除通过官方插件管理器或 CLI;重启/刷新要求必须说明。卸载后所有插件入口、API、工具、技能、事件订阅、定时器、样式和后台任务均停止或移除。 - 必须提供可执行的完整清理流程,移除本插件专属的 profile 配置、运行数据、缓存、日志和自建服务;列明实际路径与归属,避免误删共享数据。 - 用户项目文件、已交付成果、宿主共享会话/凭据及其他插件的数据保留。确实属于本插件的记录只能通过官方支持的方式清理;无法清理时必须列为未满足项。 - 可另提供“保留数据卸载”便于重装恢复,但不能用它替代“完全卸载”验收。清理只在用户选择相应卸载方式时执行,不因新增本规范删除现有数据。 ## 4. 交付与验收 - 主交付物是 `dsh-plugin-composable-workforce-.tgz` npm 插件包,通过 `npm pack` 或等价包管理命令生成;源码仓库为审查与复现材料。 - 同时交付安装/卸载说明、兼容声明、更新记录、许可声明、SHA-256 校验和,以及绑定该归档版本和哈希的验收记录。 - 安装包不得包含宿主源码补丁、宿主构建物、本机路径依赖、用户数据、凭据或测试夹具。不得要求接收者克隆、修补和重建 Harness。 - 必须在干净官方发行版和独立临时 profile 中验证安装、核心功能、普通卸载与重装、完全清理及宿主原生功能;核对宿主程序文件前后未变。 - 当前补丁宿主上的演示、历史测试和已有 `.tgz` 不等同于新约束验收通过。完成迁移前如实报告差距,不发布为合规成品。