DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Assistant Verifier — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

@dsh-enhanced/assistant-verifier

Assistant Verifier

独立的、有边界的任务验收验证,配有持久化契约和回执。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add @dsh-enhanced/assistant-verifier@0.1.53
README兼容性版本

兼容性与来源证明

Assistant Verifier 以 @dsh-enhanced/assistant-verifier 发布,当前版本为 0.1.53。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/10/16

版本

0.1.53stable
2026/10/16
0.1.49stable
2026/10/14
0.1.48stable
2026/9/26
查看其余 17 个版本收起版本
0.1.47stable
2026/9/25
0.1.46stable
2026/9/25
0.1.45stable
2026/9/24
0.1.44stable
2026/9/24
0.1.43stable
2026/9/24
0.1.42stable
2026/9/23
0.1.41stable
2026/9/23
0.1.40stable
2026/9/23
0.1.39stable
2026/9/22
0.1.38stable
2026/9/22
0.1.37stable
2026/9/21
0.1.36stable
2026/9/21
0.1.35stable
2026/9/21
0.1.34stable
2026/9/21
0.1.32stable
2026/9/13
0.1.31stable
2026/9/12
0.1.30stable
2026/9/12

相关插件

正在加载相关插件…

最新版
0.1.53
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
745.6 kB
文件数
92
Surface
any
许可证
MIT
发布源
npm
GitHub
★ 0
周下载
23
最近提交
2026/10/16
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 security-access 分类下经过校验的插件。

Cc Safety Netcc-safety-net编码代理 CLI 钩子——阻止破坏性命令和访问机密文件Doctor@linxin666/dsh-doctorDSH 配置档案的事务性救援模式,配备受监督的启动器、隔离的恢复容器、确定性修复、健康监控以及本地 Web 恢复控制台Mobiledsh-mobileDeepSeek Harness 移动端适配与安全访问插件,支持局域网、远程连接、Android App 和手机浏览器。Codex Subscriptiondsh-codex-subscription通过 OAuth 在 DeepSeek Harness 中使用 ChatGPT 和 Codex 订阅,支持配额管理、安全重置、网页搜索、图像和快速模式

README

@dsh-enhanced/assistant-verifier

独立核对事先确定的任务验收条件,分别记录执行状态与目标是否达成。验收契约、验证任务和结果回执保存在本地 SQLite,验证重试不会重新执行原任务。

当前已接通前台、Automations 的 AgentLoop 生产入口和 Goals 的可选原生回合入口,以及 Evaluation canonical 判断和前台/Automation owner 反馈修订,已发布基线与开发增量以根发布账本为准;完整自治目标的剩余工作见 RSI 当前状态。

安装与默认行为

本包使用标准 DSH bundle patch,可在同一发布批次可用后安装:

dsh plugin --profile web add @dsh-enhanced/assistant-verifier
dsh --profile web --dump-config

默认配置创建独立账本,但没有验收 profile 或执行权限。requireAcceptance: false 时,没有匹配 profile 的任务继续原有执行路径,其结果不会由本插件授予可信成功。启用 requireAcceptance: true 后,已支持的 Host 入口必须在提交任务前取得匹配的验收契约;缺少 owner 身份或验收配置会阻止该次提交。它不拦截第三方绕过 Host 入口的任意代码。

本包接入 Delivery 的普通前台 AgentLoop 任务,以及 Automations 的 production AgentLoop 任务,原始目标分别来自入站文字与已批准 definition 的 prompt。/stop 等控制命令、preview 和独立的 Host runbook executor 不在这个入口范围;它们继续使用各自的执行协议。Host runbook 没有原始用户 prompt,不能用生成的文字冒充其目标契约;该类执行也不能作为行为学习的目标样本。

同一 Delivery/Automations 服务生命周期内,一旦注册过必需验收,验证器短暂卸载或重新注册为可选都不能降低要求。缺失时停止新提交;恢复验证器后继续。管理员永久关闭必需验收需要调整 Host 配置并重启相应生产服务。

Goals 原生回合使用显式 task-acceptance/v2 / task-verification/v2 和 taskKind: goal-step,绑定目标定义、step/run、原 Session 与 native goal/revision。前台和 Automation 保留 v1。整体业务目标使用独立的 v3 goal-outcome,绑定定义摘要、原 Session/GoalId 和 assessment ID,不伪造 step/run/revision。启用 Goals verifyNativeRounds 后,该生产者总是要求精确的 goal-step profile;owner 反馈修订协议仍仅覆盖原有两种任务,不会把目标步骤错当普通前台。

验收配置

authorities 是管理员控制的验证资源,profiles 是管理员确认的精确任务规格。每个 profile 绑定 scope.workspace、scope.preset、真实 owner 的 principalRecordId/principalVersion、taskKind 和原始 objective,并包含版本、有效期、验证预算及非空条件集合。更改已接受任务的规格会被拒绝,不能在看到结果后放宽要求。

类型读取或执行内容能证明的范围
runner固定程序、固定参数、明确环境变量、workspace 产物和有限 stdin/stdout指定输入的实际输出和退出码同时符合预期
documentworkspace 文档、配置的 HTTPS 来源指定文字存在;直接引文、来源 URI 与字节摘要匹配
readback固定 HTTPS 模板,仅替换一个路径段的对象 ID目标 ID、可选版本和指定 JSON Pointer 字段符合预期
repository-readback通过当前 Actions grant 与 Keychain 读取实际提交的 checks、reviews、PR、branch准确 head 的指定 checks/评审符合配置条件

通过 createVerifierAuthorities({ authorities }) 得到冻结配置和每个资源的 digest,将 { id, digest } 填入条件的 authority。profile 类型为包导出的 AcceptanceProfile,条件格式来自 @dsh-enhanced/task-acceptance-contract。资源变更会改变摘要,旧契约不能悄悄使用新资源。

可信 Host 可用 inspectAcceptanceProfile({ scope, owner, objective, taskKind }) 查询精确配置,返回独立深冻结的 { profile, digest },无匹配返回 null。参数不允许缺字段、额外字段或 getter;objective 保持精确文本,不默认选择 owner 或 task kind。inspectAcceptanceObjectives({ scope, owner, taskKind }) 使用相同的严格输入规则,返回该边界内去重并冻结的原始 objective 数组。它不返回 profile、criteria、验证命令或输入,也不越过 scope、owner record/version 或 task kind 发现其他配置。两个入口都不创建契约、不调用执行生产者或验证程序,不是授权或目标达成证明;服务卸载后拒绝查询。可用于安装配置诊断和提交前预检,真实执行仍必须取得绑定到实际任务身份的验收契约。

databasePath 是私有 SQLite 文件绝对路径;默认 dshHomePath('assistant-verifier/verification.sqlite')。tickIntervalMs 默认 5000,0 表示由 Host 调用 tick()。契约最长有效 7 天,单轮验证最长 5 分钟,不确定的验证最多尝试 3 次。无法证明执行已停止、契约过期或尝试耗尽时保留待处理状态;Host 通过 inspect(contractId) 和 continuations() 查看。需要把回执逐项绑定到完整已接纳契约的 Host,可同步调用 inspectAcceptedTask(contractId);它仅在契约和状态都存在时返回冻结的 { contract, ...state },不会把单独的回执状态当作验收证据。过期回执不会作为新的可信结果投递。

回执描述该次任务在观测时刻的结果,validUntil 限制结果进入 Evaluation 的时间。已接纳的历史结果不会仅因时间流逝被改写;它不证明外部系统现在仍处于同一状态。持续目标、发布或权限决策需要自己的新鲜度要求及新契约回读。owner 的显式纠正与撤回仍可修改 canonical 判断。

health() 给出准确的等待执行、等待验证、未投递回执、过期回执和待处理数量。配合 assistant-health,待处理结果或缺少 Evaluation 的积压会显示诊断;默认空 profile 显示验收未启用。分页轮转避免前 100 条未完成任务或过期回执阻塞后续任务。Host 回读与 Evaluation 投递各等待最多 5 秒,关闭服务会中断等待;失去确认的回执保留待投递,原任务不会重跑。

权限与数据

  • 文件系统:读 workspace 下指定普通文件,拒绝符号链接与越界产物,限制大小并核对读前后身份。写独立 SQLite 主文件、WAL、SHM。账本包含目标、预期字段与证据引用,应按私有任务数据保存。
  • 网络:获取配置来源或精确目标,不跟随重定向,不接受 URL 凭据。HTTPS 默认;allowHttpLoopback 仅显式允许本机 HTTP。它不是进程级网络隔离。
  • 子进程:固定程序和参数,末尾追加私有只读产物快照路径,工作目录保持原 workspace;不用 shell,不继承环境凭据。快照只涵盖指定文件,按产物自身路径解析的相对 import 不再指向原目录,因此该驱动适用于明确的单文件输入检查。时间和输出有上限,超时尝试终止所建 POSIX 进程组并关闭本方管道,有界返回 unknown;逃离进程组的后代不保证已停止。可执行文件 SHA 检查与实际 spawn 仍是两个操作,不提供原子执行身份保证。
  • 凭据、浏览器、安装脚本:没有通用凭据或浏览器接口,没有额外安装脚本。仓库认证回读通过 Actions 的受保护 broker 与短凭据租约完成,不应把密钥写入 profile。

执行产物代码仍使用 Host 的 OS 用户;进程组、摘要和进程内 capability 不能防止同 UID 恶意代码修改授权器、期望、数据库或读取其他文件。插件也不证明所有程序输入正确、未列出的文档陈述属实或一般性的目标完成。高权限代码隔离与受保护评测须完成工作包 08–10。

文件路径检查拒绝读取时发现的 symlink,但 Node 的逐段检查无法消除恶意并发替换父目录的窗口;固定 runner 的解释器参数所引用的额外文件也不纳入单 artifact 摘要。当前应只使用管理员维护的 runner 与合作式任务,不能将其接纳结果当作不可信自生成代码的发布安全证明。

兼容性

遵循 兼容基线。实际 Host producer 须实现 TaskAcceptanceProducer,Evaluation 须实现对应私有注册协议;仅安装名称相同的旧版本不会获得新接口。模型不能通过公开工具创建可信验收结果。

测试使用实际文件、SQLite、子进程和本机 HTTP。组合测试通过真实 owner 配对、前台 AgentLoop、Automation 提案审批与调度入口验证契约先于模型调用落库,以及反馈纠正、撤回和服务卸载恢复;模型与外部 transport 仍为确定性替身。单元测试的 producer fixture 本身不作为生产接线证据。仓库验收为根 pnpm check,真实外部系统、隔离运行和长期收益另行验证。

Goals Host 的 prepareGoalAssessment(input, template) 从已持久化的初始 v3 契约派生新 assessment,完整保留条件、profile、验证预算和绝对有效期。模板身份、owner、定义或当前 profile 摘要改变会拒绝。v3 验证结束后再次读取同一 Host 的执行证明和注册代次,失效或不同的证明产生 unknown,不能签发 achieved。该能力不对 Delivery、Automations 或模型工具开放。

隔离代码产物验收(v4)

isolated-process-behavior 只用于 goal-step / goal-outcome,使用 task-acceptance/v4 与 task-verification/v4。条件包含 id、authority: { id, digest }、artifactPath、testSetId;不允许与旧 criterion 混用。v1/v2/v3 的原有格式和摘要保持兼容。

对应 Host authority 为 isolated-runner,配置固定 stateRoot、已存在的 sha256:… 镜像、绝对 dockerPath、固定 command、绝对 expiresAt、maxRuns、maxTotalDurationMs、maxDurationMs、maxOutputBytes,以及 testSets: [{ id, cases: [{ stdin, expectedStdout, expectedExitCode }] }]。例如固定命令 /bin/sh /workspace/artifact < /workspace/input 在容器内运行复制的 shell 产物。authority 摘要覆盖全部配置和测试向量;验收 profile 必须引用编译后的精确摘要。不能把模型生成的测试向量当作 Host 验收条件。

预期结果只保存在 Host authority 中。容器每次只收到 artifact 和当前 input;模型反馈、契约、回执不包含测试输入或预期输出。反馈会披露有限的通过/失败信息,这不是密码学意义的测试集保密。

此能力需要同一 Host 中已启用的 assistant-isolation 服务;Verifier 的正式包依赖仅安装其 runner 代码,普通验收不会自动激活 Isolation 服务。Verifier 通过当前 Goals producer 找回真实 step acceptance,再核对 owner、workspace、preset、Session、原生目标、定义与 run。产物只能来自该次 admitted native round 派发前绑定的 Isolation job;新的失败/unknown 产物尝试会遮蔽旧成功,已清理正文或缺少 provenance 时返回 unknown。whole-goal 使用其持久 triggerRunId,不能换成上下文 focus 的目标。

独立验收使用另一私有 stateRoot 和 Isolation 持久控制器、资源池与预算,不使用模型 Agent 身份,也不在 Host 上执行产物。每测试用例的幂等键绑定契约、criterion、源 job、内容摘要、authority、testSet 和序号。相同 key 重读已知结果;派发不明的任务保留 unknown 和占用,重启不重放。更改配置不会自动扩额或续期;需要 operator 明确处置私有账本和未确认的运行资源。Docker 文件系统、网络、子进程和凭据边界与 Isolation 一致;Host 插件和同 UID 管理者仍属于可信控制面。

仓库整体验收

repository-readback authority 固定 grantId、grantRevision、repository、branch、baseBranch、requiredChecks: [{ name, appId }]、reviewerIds、minApprovals、timeoutMs(最多 30 秒)及 freshnessMs(最多 60 秒)。使用现有 v3 goal-outcome 的 target-readback,objectId 必须为准确的 repository:branch;以 /ready 等于 true 作为目标条件。正式配置入口见 WebOwner README。

此路径需要当前 Actions 可选 Host peer。Actions 从已验收步骤的持久交付结果选择实际 commit/PR,绑定原 Goal/Session、owner、定义及当前 assessment;允许后续回合验收较早步骤的交付。每次验证通过既有动作账本分别消耗四次读取额度,逐次重查授权与来源;不会从旧成功结果绕过新的 pending/unknown 交付。没有当前成功且 quiescent 的执行证明不签发成功。

待运行 CI、待评审、截断数据或无法认证返回 unknown;失败 CI/请求修改不能通过 /ready。回执有效期从读取开始计时,最多为 freshnessMs 且不晚于契约到期。回执仅描述这次观察,不能证明远端之后不变,也不自动配置事件订阅。测试覆盖真实 Verifier→Actions Host 调用,GitHub 传输为替身;真实远端认证与完整事件跟进仍需验证。

新插件包的隔离行为观察

从 @dsh-enhanced/assistant-verifier/plugin-behavior-runner 显式导入 PluginBehaviorRunner,它是供可信 Host 构造的观察器,未自动激活,也不注册模型工具。Verifier 将 Isolation 代码作为正式运行依赖打包安装,但只在使用这个子入口时构造 runner;包依赖不会挂载 Isolation 的 Cordis 服务。旧 Docker 构造参数复用 IsolatedVerifierRunnerConfig,省略 command;命令由实现固定。Docker 路径必须使用专用镜像、私有 stateRoot、不可变镜像 ID、有限次数与累计时间,maxOutputBytes 至少 65536。Host 持有实例并在所属 Cordis effect 的 disposer 中等待 close()。

macOS 使用显式 backend: 'macos-seatbelt'、私有固定 runtime 与相同的持久次数、时长和输出预算;部署配置省略 authorityDigest,认证 Host 在构造时注入。validatePluginBehaviorDeploymentConfig 与 validatePluginBehaviorRunnerConfig 是同步严格校验。固定源码在只读 Seatbelt 单进程中加载 Cordis、SystemPrompt、Tools 和候选,只将操作输入传入候选;预期答案、签名私钥和持久账本留在 Host。Host 安全解析 npm tarball 为普通文件,拒绝链接及越界路径;从已核验的 runtime 填入环境与 macos-seatbelt-single-process-v1 边界。候选仍与观察代码同进程,其输出和结果均视为不可信,必须由独立私有 held-out 答案裁决;该边界不声称具备 Linux 双进程隔离的等价防篡改性。v2 创建证书签名绑定运行时摘要和固定构建证据摘要,采用及后续调用再次比对运行时;旧 v1 凭证及 Docker 路径保留。

run({ key, artifact, operation, signal }) 接受真实 tgz 的 Buffer:operation: { kind: 'discover' } 返回工具 schema 与摘要;{ kind: 'invoke', schemaDigest, calls: [{ id, toolName, arguments }] } 仅在 schema 摘要匹配时执行调用。每包最多 512 KiB,每轮最多 8 次调用。两轮分别消耗持久预算,key 须绑定候选、操作与调用输入;派发不明的 key 不重放。

新版镜像的父观察器不导入候选;候选在另一个受限进程中用固定 Cordis、SystemPrompt 和原生 Tools 加载,不提供模拟 Agent、owner 或缺失注入。父进程核对包字节、调用身份和结果大小,自行计算 schema 摘要与环境版本,等候子进程真实退出;候选 stdout/stderr 不作为父观察协议。worker 协议 v2 拒绝旧同进程镜像的 v1 结果,需要重新构建专用镜像。候选没有工具、注入不满足、包非法、超时、结果帧非法或无法确认资源结束时返回 unknown。

该镜像目前要求 Linux x64。固定原生启动器在加载候选前设置 no_new_privs 与 seccomp,限制文件写入、非线程进程创建、网络和跨进程操作;父进程禁用信号启动调试器并设置 non-dumpable,避免同 UID 子进程重开其受保护的 /proc 内存或描述符。设置失败即拒绝运行;容器仍沿用 Isolation 的无网络、只读根文件系统、无 capability 和资源限额,不新增 Host 权限。Node 的路径权限只是额外限制,官方权限模型并不保证抵抗恶意代码;seccomp 不检查路径内容,不能单独当完整沙箱。

容器只收到制品与调用输入;预期结果、验收政策和签名密钥留在 Host。schema 和工具结果仍是候选的黑箱输出;observed 与 quiescent 只说明本次输出、子进程退出与外层容器回收,不能证明候选按原语义执行了工具或 Cordis disposer,也不能单独证明目标达成或发布安全。可选创建验收见下文;真实加载后的外部观察与自动采用仍需接通。

新增权限为通过固定 Docker executable 写入私有隔离账本、暂存包和输入,在无网络、只读根文件系统且有资源上限的容器内执行候选。运行时不执行安装脚本、不挂载 Host 仓库或凭据。专用镜像准备会联网下载公开系统依赖,随后按完整锁文件离线安装且禁用依赖脚本;详见镜像指南。

普通任务产生的新插件验收

creationReviews 是可选 Host 配置。Control Plane 复用原生 SourceJobs 续跑调用 verifyPluginCreation({ protocol: 'assistant-growth/creation-verification-request/v1', planId });此入口不注册为模型工具。相关原生服务与可选 Control Plane peer 未就绪时返回 unknown,provider 替换或卸载时取消并等待在途验收。

配置必须包括以下字段;owner 是与 sourceReviews.owner 相同的七字段稳定身份,不包含每任务变化的 session/binding/generation。完整任务身份仍由 Control Plane 当前来源检查。

字段约束
authorityId, keyId, namePrefix, expiresAt明确的有限验收授权,与 Control Plane 创建命名空间和期限一致。
ownerauthorityId, authorityHash, principalId, principalRecordId, principalVersion, workspace, agentPreset。workspace 为已存在的 canonical 绝对路径。
keyPathowner 私有、单链接、非符号链接的 Ed25519 PKCS8 文件;不会交给模型或容器。
maxVerifications1–1000;失败与未知派发也消费持久额度,不随重启返还。
runnerstateRoot, image, dockerPath, expiresAt, maxRuns, maxTotalDurationMs, maxDurationMs, maxOutputBytes;使用当前锁文件的专用观察镜像。最坏每次消耗 1 + maxCases 个独立容器调用。
policyowner 固定的验收政策,最多 8192 字节。
maxInputBytes, maxOutputTokens输入 4096–262144 字节,每个模型回合 1–32768 输出 token。
maxDurationMs, maxCases, receiptTtlMs整次验收 1 秒至 30 分钟;2–8 个不同输入;回执 1 秒至 24 小时,受所有原授权窗口收窄。

部署前用导出的 compileCreationReviewConfig(config) 取得 { authority, publicKey },只将这两个公开字段写入 Control Plane 的 creationVerifications。验收政策、固定规则、密钥指纹、镜像及预算纳入 authority digest。Growth 在首次作者模型请求前持久冻结这个引用;历史无引用的候选不会取得新签名资格。

封存精确 tgz 后,第一轮全新、无工具的原生 Agent 从当前认证任务/纠正正文与候选参数结构生成私有用例;不读取候选代码、测试或调用结果。schema 的说明文字不进入此轮。Host 在调用前持久保存用例,分别在独立子进程执行并精确比较文本或 JSON 值。第二轮全新 Agent 检查实际已核对的源码补丁、任务语义与固定用例;两轮均使用来源 Growth run 的准确模型,不增加默认供应商或隐式恢复切换。

只有实际比较通过、源码审查通过且最终当前来源 fence 有效,才签发 assistant-growth/creation-verification/v1 Ed25519 凭证。它绑定任务修订、Growth run、精确源码/制品、私有合同摘要、观察作业、SDK 环境、模型和预算。私有 SQLite 在每次派发前持久 claim;崩溃、取消或不明执行不自动重放。含糊任务、不可支持的行为或缺失证据保持 unknown。

生成用例与源码审查仍依赖模型语义判断;剥离 schema 说明和禁止工具不证明模型判断总是正确。此凭证仅证明这些任务派生检查通过,不是 owner 审批、通用目标成功、发布许可或采用授权。Control Plane 仍保留 pending-approval;之后的有限采用、Cordis 动态加载及真实后续收益必须分别验收。

新增数据与权限:读取当前 Host 认证任务和检查补丁,向该任务模型供应商发送这些材料;写私有合同、观察摘要、模型 Session、有限额度与签名账本;读取私有签名密钥,并通过固定 Docker executable 执行封存候选。没有浏览器或运行时联网容器权限,没有安装脚本或公开验收写工具。

已采用插件的新任务修订验收

revisionReviews 是可选、独立的 Host 配置,字段及限制与上表 creationReviews 相同;须单独配置修订 authority、Ed25519 密钥引用、政策和有限额度,密钥文件可与创建验收共用,但两种用途不能互相代用。用 compileRevisionReviewConfig(config) 取得 { authority, publicKey },仅将这两个公开字段交给 Control Plane 的 revisionVerifications;还须配置其独立的 sourceJobs.revision 授权和保留的已采用父版本源码。revisionReviews 缺省时不启用本轨,不借用创建验收引用或额度。修订 authority 使用 assistant-growth/revision-acceptance-authority/v1 和独立政策摘要,私有账本位于 databasePath + '.revision-reviews';失败与 unknown 派发也占用修订额度,未知结果不自动重放。

新的普通认证失败任务经 Growth 冻结 revisionAcceptance、原任务模型及预算,并选择同 owner 已采用父版本后,Control Plane 原生 SourceJobs 才能调用 Host-only verifyPluginRevision({ protocol: 'assistant-growth/revision-verification-request/v1', planId })。它不注册为模型工具。Host 重新核对当前 owner/任务、父版本签名归档、精确源码基线、父绑定及封存制品;任务纠正、撤回、授权或 provider 变化会使旧验收失效。父绑定含 planId、certificateDigest、artifactSha256、sourceArchiveDigest、sourceDigest,并同时进入持久 claim、最终 fence 和凭证。

验收沿用两个全新的无工具原生模型回合与有界 Docker 行为观察:先依据这次任务和工具结构生成私有用例,不看候选源码;再对实际补丁、已观察用例及父绑定作源码审查。两轮使用这次新任务冻结的 supplier,另受 revisionReviews 的独立模型调用、输出和时限预算约束。通过后签发独立 assistant-growth/revision-verification/v1 Ed25519 凭证,绑定父版本、当前任务、Growth run、精确制品/源码、观察环境与结果;修订签名域与旧创建凭证不互通。验收仅覆盖本次新任务及这些检查,不能推断父版本全部行为已回归通过。结果保留为 prepared-revise / pending-approval 候选;本阶段不授权执行、替换当前版本、扩大旧创建采用额度或声称版本回滚与后续收益已验证。

revisionRegressions 是另一个可选 Host 配置,用于对上述候选做父版本保留用例回归。它需要独立的 authorityId、有限额度及 runner 配置,不能由 revisionReviews 或 creationReviews 自动启用。配置字段为 authorityId、owner、namePrefix、keyId、keyPath、expiresAt、maxVerifications、runner、maxDurationMs、maxCases、receiptTtlMs;类型是创建验收配置去掉 policy、maxInputBytes、maxOutputTokens,其余字段沿用上表校验。maxCases 为 2–8,runner.maxRuns 至少为 maxVerifications * (2 + 2 * maxCases),覆盖每次两侧发现及每条用例两侧调用。compileRevisionRegressionReviewConfig(config) 返回独立的 { authority, publicKey },公开引用使用 assistant-growth/revision-regression-acceptance-authority/v1;部署时将其配置到 Control Plane 的独立回归授权。旧配置缺少此字段时本轨保持关闭。

Host-only verifyPluginRevisionRegression({ protocol: 'assistant-growth/revision-regression-request/v1', planId }) 从已签发的新任务修订候选出发。Verifier 只从自身创建验收私有 SQLite 读取父版本当时保存的用例,核对历史创建凭证签名、合同摘要、观察操作及原记录;过期的父凭证可作历史证据,缺失或被改写的记录不能推测恢复。它不读取或扣减旧创建额度,也不向模型或服务调用者暴露私有用例。运行时不用额外模型回合,而是对父制品和候选制品分别做全新的隔离发现与调用,要求完整工具结构和 SDK 环境一致,并将两侧结果各自与原用例期望比较。两侧完整原始结果可不同;任一侧未达到期望即拒绝。databasePath + '.revision-regressions' 存储独立 claim、额度及结果;调用不明、取消或私有证据缺失返回 unknown,未完成的 claim 在重启后也不自动重放 Docker 调用。

通过后独立签发 assistant-growth/revision-regression/v1 Ed25519 凭证,绑定父凭证合同摘要、两侧观察、候选验收凭证、精确源码摘要、冻结的新任务 Growth run 与回归 authority。它只证明这些父保留用例在本次两个制品的隔离观察中达到原期望,不授予候选执行、工具版本切换、旧创建额度扩张或回滚权限。

父私有用例必须在首次签发时完整可用;已完成的同一 plan/binding 重试在当前来源围栏与授权窗口内返回原签名凭证,不重新读取用例、派发观察或恢复额度。签发后的私有记录丢失不撤销当时的历史证明,但不能据此为新候选恢复或重建用例。Control Plane 消费签名凭证时核对父凭证及合同摘要,不获得私有用例读取权限。

独立源码审查

sourceReviews 是可选 Host 能力,供 Control Plane 的 sourceReleaseExecution.independentReview 调用。复用当前 DSH agents、sessions、tools、llm、systemPrompt 与 assistantPolicy,不新增调度器。缺少这些服务时保持未就绪,依赖替换或卸载会取消并等待当前审查。Host 在 PR 前检查精确 owner、插件、模型、目录与剩余额度;已存在的 operation 可进入终态恢复核验。

sourceReviews:
  authorityId: owner-source-review-1
  expiresAt: 1790000000000 # 必须替换为本次授权期限
  maxReviews: 10
  repository: /private/owner/source.git # 固定 bare remote,与 release PR 仓库一致
  git:
    path: /usr/bin/git # canonical executable
    sha256: <git-executable-sha256>
  decisionRoot: /private/owner/review-decisions # 已存在、0700,与 Control Plane/review adapter 相同
  plugins: [personal-memory]
  owner:
    authorityId: <delivery-owner-route>
    authorityHash: <owner-authority-sha256>
    principalId: <owner-principal>
    principalRecordId: <owner-record>
    principalVersion: 1
    workspace: /private/owner/workspace
    agentPreset: primary
  reviewerPrincipal: source-reviewer
  policy: Check the actual task, correctness, regressions and Cordis resource ownership.
  maxChangedFiles: 30
  maxInputBytes: 262144
  maxOutputTokens: 4096
  timeoutMs: 120000
  # 不填 model 时继承原任务的 provider/model/reasoningEffort;缺失或不一致则等待。
  # model: { provider: super-relay, model: day1 }

Host 独立读取精确 PR ref、单一 base parent、改动范围和已检查 tree/patch digest,再给全新、无 preset、无工具的原生 Agent 审查。候选代码和任务文本仅作为不可信数据;固定政策、模型、一次调用、输入字节、输出 token、期限与累计调用数构成审查边界。完整 completed 回合、用量和严格 JSON 结果缺一不可;源码审查不等于行为改善证明,后续构建、签名和采用仍有各自检查。

持久账本位于 databasePath + '.source-reviews',目录须私有且 canonical。调用前落 claim;崩溃、取消或不明确结果不会自动重调模型。相同授权下的已完成批准可在再次核对来源与 PR 后恢复同一 decision 文件;改变政策、模型、目录或额度须使用新的授权标识。拒绝不会写批准文件。已 claim 的未知调用需要管理员核查本地 Session/账本,Host 返回的 sessionId 可定位该请求的原生会话;当前没有自动重审或模型自我批准入口。

新增权限为:读取固定 Git executable/仓库、执行受限 Git 读命令、经 Host 模型供应商发送任务目标与补丁、写私有 SQLite/Session/decision。模型不能读取凭据、执行命令或写文件。该进程内工具边界不构成 OS 隔离;候选构建与 decision 写权限必须由部署隔离。原始任务、补丁、审查输出和账本留本地,不提交到 GitHub。

普通任务记忆候选审查

可选 memoryReviews 提供 Host-only reviewMemoryLearning(request, signal?) 与 lookupMemoryLearningReview(request)。调用者只传共享库的候选和来源定位,不传入批准结论。 Host-only inspectMemoryLearningReviewAvailability({ owner }) 返回当前配置授权的 authorityId、authorityDigest、expiresAt、remainingReviews、available。 它核对完整 owner 与当前 Delivery route、Policy 及私有账本;首次 claim 前显示配置上限, 到期、服务缺失、授权变化、账本损坏或额度耗尽时不可用。查询只读,不建立 claim、 消耗额度或调用模型;历史 unknown 仍须按原 operation ID 精确查询,不能通过该探针重派。 Verifier 独立读取 Delivery 原任务、普通回复与当前 owner;经验还须绑定当前 canonical 结果,允许保留失败经验。事实引用只能来自 owner 原文,任务未获目标结果不妨碍审查事实, 明确的 owner 撤回则会阻止审查。替换/删除还需 PersonalMemory 的 exact managed target reader; 缺少该服务或目标版本不符即拒绝,不把手动记录交给模型自动接管。

memoryReviews 必填字段为 authorityId、owner(同上七个 owner 字段)、expiresAt、 maxReviews、policy、maxInputBytes、maxOutputTokens、timeoutMs。model 可选, 默认继承原任务冻结的供应商、模型和推理强度。最多 10000 次审查、128 KiB 输入、8192 输出 tokens、每次 5 分钟;配置更改不能给原授权续期或补额度。Policy 还必须允许精确 background subject assistant-memory-learning(绑定 workspace/principal),action review、memory resource learning:<authorityId>;可通过该规则的持久预算进一步限制调用。未配置时没有默认审查权限。

原生审查使用新会话、固定规则和零工具,每次至多一次模型调用。它只判断候选是否受来源支持, 不证明事实在现实中为真或后续任务得到改善,也不直接写入 Memory。完整原文被截断时拒绝审查。 .memory-reviews 私有 SQLite 使用独立授权和持久 claim;重复调用/重启只回读既有结果,unknown 不重派。来源、owner、canonical 状态与目标版本在结束后重验,批准落盘使用 Delivery → Evaluation → review ledger 同步 writer fence;卸载会先取消并等待在途审查。

普通任务的自动发现、提取与调度见独立 assistant-memory-learning; 有限采用与下一任务召回由 Memory 负责。批准回执不能替代采用时的当前来源与权限检查。新增数据权限仅为读取这些 owner 来源/受管理目标,经既有 Host 模型供应商发送有界文本,并写私有审查账本和原生会话; 无新增浏览器、子进程、凭据读取或安装脚本权限。