@dsh-enhanced/assistant-growth-driver 0.1.65 → 0.1.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @dsh-enhanced/assistant-growth-driver
2
2
 
3
- 默认关闭的有界后台成长驱动。可通过 `usageLearning` 让真实前台任务结果自动触发持久成长作业,或由 Host 显式唤醒。Agent 回顾 owner 的已验收成功、沉淀 pending 技能候选;启用源码轨后可准备已有 gap 对应的插件修改提案。当前自动入口已接通,修复后的有限采用与持续观察需另配 Control Plane;可安装部署与独立行为验收仍未贯通,`reviewed` 仅表示本次成长复盘结束。
3
+ 默认关闭的有界后台成长驱动。可通过 `usageLearning` 让真实前台任务结果自动触发持久成长作业,另经显式 `workItemFailures` 授权消费后台失败反馈,或由 Host 显式唤醒。Agent 回顾 owner 的已验收成功、沉淀 pending 技能候选;启用源码轨后可准备已有 gap 对应的插件修改提案。在配套 Control Plane、有限授权和独立验收配置齐备时,工具创建轨已接通持久构建、独立行为验收和受限动态采用。技能候选仍须另经独立验证与重复成功门;修改、修订和持续观察各有自己的授权与验收条件,不能由一次 `reviewed` 推定完成。`reviewed` 仅表示本次成长复盘结束,不代表完整长期成长闭环已验收。
4
4
 
5
5
  有源码接口且普通认证反馈的 objective 为 `not-achieved` 时,本轮先查看当前 owner 的任务缺口与任务证据,再按相关性读取目标清单、源码或已授权的创建模板。文件清单只供发现路径,替换前仍须读取正文;证据不足时可以不提案。成功、周期唤醒和缺少源码接口的反馈仍用通用成功工作流;技能候选始终经过独立验证与重复成功门。新运行将实际发送的完整提示(含脱敏反馈数据)绑定到执行摘要;旧来源绑定不补写,也不自动重放 unknown。
6
6
 
@@ -12,20 +12,20 @@
12
12
 
13
13
  ## 安装
14
14
 
15
- 先装好 `assistant-delivery`、`assistant-goals`、`assistant-skills`、`assistant-policy` 和所用模型 adapter,再安装本包。只有选用 super-relay 时才需要安装并启用 `assistant-super-relay-budget`:
15
+ 先装好 `assistant-delivery`、`assistant-goals`、`assistant-skills`、`assistant-policy` 和所用模型 adapter,再安装本包。模型供应完全由 owner 配置的 provider/model 与对应 adapter 决定:
16
16
 
17
17
  ```sh
18
18
  dsh plugin --profile web add @dsh-enhanced/assistant-growth-driver
19
19
  dsh --profile web --dump-config
20
20
  ```
21
21
 
22
- 包内 `cordis.patch.yml` 只注册插件、不带任何 `enabled` 配置,因此**安装后处于休眠状态**:无 timer、不起 Agent、零写入。第一期不随任何生产 profile 默认启用。
22
+ 单独添加本包时,包内 `cordis.patch.yml` 只注册插件、不带任何 `enabled` 配置,因此**处于休眠状态**:无 timer、不起 Agent、零写入。安装器在取得 owner 授权并完成资源准备后生成的原生 RSI 组合会显式启用本包及 `usageLearning`,固定 owner scope、期限和有限预算,并设置 `intervalMs: 0` 复用原生调度。该组合允许工具创建提案,不默认开放修改或修订;这与单独添加本包的休眠默认值不同。
23
23
 
24
24
  ## 工作机制
25
25
 
26
26
  每次唤醒(`intervalMs > 0` 的 unref timer,或显式调用 `wake()`):
27
27
 
28
- 1. **Preflight(不触网、不起 Agent)**:用配置中冻结的 owner scope 经 `assistantDelivery.validateOwnerRoute` 重新锚定真实 owner route 并铸造一枚短-lived authority(寿命 `≤ maxDurationMs`,硬顶 300000ms,每次使用都重新校验 route,route 漂移即整轮作废);读取并冻结所选模型;仅使用 super-relay 时检查其契约和默认凭据引用,其他供应由对应 DSH adapter 管理凭据;确认 policy 服务在线;可选地预留 owner 配置的后台预算。
28
+ 1. **Preflight(不触网、不起 Agent)**:用配置中冻结的 owner scope 经 `assistantDelivery.validateOwnerRoute` 重新锚定真实 owner route 并铸造一枚短-lived authority(寿命 `≤ maxDurationMs`,硬顶 300000ms,每次使用都重新校验 route,route 漂移即整轮作废);读取并冻结所选模型;若配置了 `apiKeyEnv` 则按该引用解析凭据,否则由对应 DSH adapter 管理凭据;确认 policy 服务在线;可选地预留 owner 配置的后台预算。
29
29
  2. **有界后台 Agent**:照 `assistant-skills` repair-agent 的冻结范式运行——`llm/stream` 逐请求钉 provider/model/maxTokens/tools digest,`tools.guard` 白名单 + 双预算计数,system-prompt 按身份过滤,`deadline = min(expiresAt, now + maxDurationMs)` 到点 abort。刻意**不挂载任何 preset**:默认工具面恰好是下面四个 `growth_*` realm 工具;显式开启源码提案且 control-plane 服务在线且配置了构建器时增加三个基础 `plugin_source_*` 工具;可选 provider 另有目标发现、durable 状态或创建接口时按配置追加相应工具。任何其它可见工具都会在发请求前被拒绝。
30
30
  - `growth_list_owner_goals`:列最近的 owner-root goal(只读投影)。
31
31
  - `growth_read_verified_workflow`:读一条已完成 goal 的**脱敏**摘要;Host 独立复核 owner-root(非 subagent、无 parent session、delegationDepth=0)、whole-goal succeeded 且 quiescent,cwd/preset 精确匹配;不返回步骤参数与验收回执。
@@ -33,6 +33,48 @@ dsh --profile web --dump-config
33
33
  - `growth_propose_skill_candidate`:唯一的写工具,只产「提议」。
34
34
  3. **Host 侧复核沉淀(系统 authority,非模型)**:提议携带的每个 `{session_id, goal_id}` 都由 skills 服务经 goals 独立重读、逐条重新验收;必须有 **≥ `minRepeatedSuccesses` 个不同** 的 owner-verified 成功(模型无法把门槛降到配置值以下,谎报/伪造/重复 locator 一律拒绝且零写入),同名 active / pending / retired 冲突不写。通过后只 `stageCandidate` 产一条 **pending candidate**(TTL ≤ 7 天,带 reason/trigger/parentVersion):不进 current 版本,`skill_run` 不可达。
35
35
 
36
+ ## PTC 呈现(可选,默认 native)
37
+
38
+ `toolPresentation: ptc` 只把**模型看到的工具形态**从「逐条 schema」换成 Host 原生的 PTC 模式:
39
+ 模型只看到保留传输 `run_code` 与由冻结 allowlist 生成的 TypeScript SDK,可在一次模型回合内用程序
40
+ 编排多次嵌套工具调用,嵌套结果不逐条进入上下文,只有脚本 curated 输出回到模型。它**不改变**工具
41
+ 许可、审批、预算或输出上限:PTC 不是安全边界,脚本只能经冻结工具面触达宿主。
42
+
43
+ - **冻结工具面不变**:工具集合、`tools.guard` allowlist、每轮 `maxToolCalls`、Policy 预授权与
44
+ `health().run.sourceProposals` 语义都保持;`schemas()` 仍返回完整 allowlist(`toolContractDigest`
45
+ 与执行契约摘要只对 allowlist 计算,native 与 PTC 对同一配置得到相同摘要)。PTC 下 registry 会追加
46
+ 唯一的保留 `run_code` 传输:driver 不注册、不覆盖它;setup 会核对它的存在与身份,并拒绝任何多余/
47
+ 缺失/重复的工具;模型可见 wire schema 摘要另算,native 与 PTC 各自稳定。
48
+ - **预算语义**:`maxToolCalls` 统计 `run_code` 本身与每个通过 guard 的嵌套子调用(含其后失败或取消
49
+ 的调用);被预算拒绝而未执行的调用不计数。嵌套调用仍逐次经过同一 `tools/pre-execute`、Policy
50
+ guard、审批与输出上限。
51
+ - **轨迹摘要**:PTC 运行结果的 `usage.ptc` 只含 `assistant-growth/ptc-trajectory/v1` 有界结构化计数
52
+ (`run_code` 调用/失败数、脚本总字节与 SHA-256 摘要、嵌套调用/失败/非 allowlist 计数、按工具名
53
+ 计数、最长子调用与 `run_code` 耗时)。脚本正文、嵌套参数和工具结果正文不进入运行结果;native
54
+ 运行的 `usage` 形状与旧版逐字段一致(没有 `ptc` 键)。
55
+
56
+ **前置条件(缺一不可;不满足时 fail-closed,绝不静默回退 native):**
57
+
58
+ 1. profile 挂载 `ctx.ptcRuntime`(例如 `@deepseek-ai/dsh-ptc-runtime-node`);缺省时 Host 的
59
+ `dsh-tools` 会拒绝 PTC prompt。driver 在创建 Agent 前检查,缺失即失败并给出可操作错误。
60
+ PTC 的 `run_code` 还要求 Host 有 `workingDirectory` 服务。
61
+ 2. 审批策略不得对 `run_code` 请求人工审批:后台 Agent 无法回答交互审批。`assistant-policy` 把顶层
62
+ `run_code` 归为 `ask-human`,因此默认 `never` 会直接拒绝(`approval-disabled`),其他弹审批的
63
+ profile 也不可用。默认关闭;只有明确不请求人工审批的后台策略才可开启。
64
+ 3. Policy 需要为 growth agent 的 background `run_code` 建立精确 allow 规则(`action: execute`,
65
+ `resource: {kind: tool, id: run_code}`)。RSI 生成 profile 目前只给 `growth_*` / `plugin_source_*`
66
+ 建规则,**本切片不生成该规则、也不改 assistant-policy**;缺失时 `run_code` 按 default-deny 失败
67
+ 关闭(计入 `health().run.usage.ptc.failedRunCodeCalls`),wake 不会伪造成功。
68
+ 4. WorkItem author lane(`usageLearning.workItemFailures`)暂不支持 PTC:其冻结预授权只有 4 个
69
+ `plugin_source_*` 工具,保留传输不在其中。driver 在创建 Agent 前直接拒绝
70
+ (`PTC presentation is not supported for the WorkItem author lane yet`);启用该 lane 时需要
71
+ Host 侧预授权或规则后才可开启,本切片不生成。
72
+
73
+ **未覆盖**:真实 `@deepseek-ai/dsh-ptc-runtime-node` 的沙箱执行与真实模型长跑未验收(本切片不新增
74
+ devDependency 或锁文件变更)。聚焦测试用最小 fake `ctx.ptcRuntime` 驱动 Host 原生 `run_code` 桥、
75
+ 嵌套调度、Policy/guard 与 session 事件,属工程层证据;真实执行测试仅在 runtime 包可解析时运行,
76
+ 当前跳过。
77
+
36
78
  ## 配置与使用
37
79
 
38
80
  所有配置项 fail-closed;未知字段直接报错。
@@ -47,10 +89,11 @@ dsh --profile web --dump-config
47
89
  | `candidateTtlMs` | `86400000` | pending candidate TTL,schema 硬顶 7 天。 |
48
90
  | `maxModelCalls` / `maxToolCalls` / `maxOutputTokens` | `8` / `24` / `8192` | 单轮预算,到顶即 abort/cancel。 |
49
91
  | `maxDurationMs` | `120000` | 单轮墙钟上限,**硬顶 300000ms**(安全根,配置不可越过)。 |
92
+ | `toolPresentation` | `native` | 工具呈现模式:`native` 直接发送冻结 allowlist 的每个 schema;`ptc` 只发送 Host 保留的 `run_code` 传输与生成 SDK(见 [PTC 呈现](#ptc-呈现可选默认-native))。只改呈现,不改 allowlist/审批/预算/输出上限;开启需满足该节全部前置条件,默认关闭且关闭时行为与旧版完全一致。 |
50
93
  | `budgetId` / `budgetAmount` | 均无 | 必须**同时出现**;显式 wake 经 Policy 预留;usage 作业由 Automations 预留,避免重复扣取。已提交的未知消耗不退回。 |
51
94
  | `provider` / `model` | 继承会话 | 同时配置以固定修复/成长模型;只配置一个会拒绝。不会自动回退到 Day1。 |
52
95
  | `reasoningEffort` | 继承会话;固定模型时用供应默认 | 只有同时配置固定 provider/model 时可覆盖。 |
53
- | `apiKeyEnv` | 随供应 | 可选凭据引用名;未设置时,super-relay 使用 `SUPER_RELAY_API_KEY`,其他供应由对应 adapter 管理。引用优先经 credentials 解析,再读同名环境变量;不接受或打印明文 key。 |
96
+ | `apiKeyEnv` | 随供应 | 可选凭据引用名;未设置时由对应 adapter 管理凭据。引用优先经 credentials 解析,再读同名环境变量;不接受或打印明文 key。 |
54
97
  | `workflowOwnerAnchored.enabled` | `false` | owner-anchored workflow 轨独立开关;置 `true` 时要求驱动本体 `enabled: true` 且已声明 `scope`,否则启动报错。 |
55
98
  | `workflowOwnerAnchored.maxCommitsPerWake` | `5` | 单轮最多尝试提交的候选数(1–50);goals/delivery 不可用、authority/route 漂移即中断本轮。幂等重放代价很低。 |
56
99
  | `pluginSourceProposals.enabled` | `false` | 开启后通过可选 `pluginControlPlane` 服务准备既有插件的 pending 修改提案。缺少该服务或构建器未配置时仍保持四工具基线。 |
@@ -61,15 +104,17 @@ dsh --profile web --dump-config
61
104
  | `pluginSourceProposals.allowRevision` | `false` | 仅在 `pluginSourceProposals.enabled: true`、`preparationMode: durable` 且 `usageLearning.enabled: true` 时可显式开启已采用插件的修订候选;另需 Control Plane 的独立有限修订授权和验收引用。`allowCreation` 不会开启此轨。 |
62
105
  | `pluginSourceProposals.maxPlansPerWake` | `1` | 每轮源码提案尝试上限(1–5);inline 的 prepared 与 durable 的 queued 都占用此预算,失败也占一次。 |
63
106
  | `pluginSourceProposals.isolatedBuildTimeoutMs` | `180000` | 仅 `inline` 使用的构建时间上限(60000–240000ms);控制面可进一步收窄,单轮 authority 到期仍会取消。`durable` 使用控制面 `sourceBuild.timeoutMs`。 |
64
- | `pluginSourceProposals.offline` | `true` | 源码提案必须离线构建;`false` 配置会拒绝。镜像须预先准备依赖。 |
107
+ | `pluginSourceProposals.offline` | `true` | 源码提案必须离线构建;`false` 配置会拒绝。所选隔离后端须预先准备运行时和依赖。 |
65
108
  | `pluginSourceProposals.planTtlMs` | `86400000` | 待批 worktree 保留期限(15 分钟–24 小时)。 |
66
109
  | `workflowOwnerAnchored.lookbackMs` | `86400000` | 只枚举该回看窗口内更新过的 owner goal(1 分钟–7 天)。 |
67
110
  | `usageLearning.enabled` | `false` | 真实任务触发开关;要求主开关、owner scope、预算及 Evaluation/Automations 服务。 |
111
+ | `usageLearning.workItemFailures` | `false` | 严格可选布尔值;缺失/false 在授权摘要中省略,true 要求 usageLearning、durable source、allowCreation 与显式 workItemAuthorities。只允许后台新工具创建;前台 modify/revise 开关不改变。 |
112
+ | `usageLearning.workItemAuthorities` | 无 | 后台开关开启时必填的准确四份 pins:sourceJobs(authorityId/authorityDigest/expiresAt)、creationGrant(id/digest/expiresAt)、creationAcceptance(完整独立验收引用)、adoption(authorityId/authorityDigest/expiresAt),外层 protocol 为 `assistant-growth/work-item-authorities/v1`。从已授权当前 CP 免费 readiness 获取并由 owner 显式冻结,不自动补签或扩大旧 grant。 |
68
113
  | `usageLearning.databasePath` | 无 | 开启时必填的私有 SQLite 绝对路径,保存游标、冻结来源与作业状态。 |
69
114
  | `usageLearning.maxPending` | `16` | 同时 queued/running 上限(1–100);满时保留未消费游标,释放容量后继续。 |
70
115
  | `usageLearning.lookbackMs` | `86400000` | 来源结果最大年龄与排队 TTL(1 分钟–7 天)。 |
71
116
 
72
- super-relay 自身的 5 个键(`enabled` / `apiKeyEnv` / `timeoutMs` / `maxResponseBytes` / `defaultMaxTokens`)在 `assistant-super-relay-budget` 插件上配置;driver 不重复定义。
117
+ 所选供应自身的配置键由对应 adapter/插件定义;driver 不重复定义。
73
118
 
74
119
  ### copy-paste opt-in 片段
75
120
 
@@ -85,8 +130,8 @@ super-relay 自身的 5 个键(`enabled` / `apiKeyEnv` / `timeoutMs` / `maxRes
85
130
  minRepeatedSuccesses: 3
86
131
  maxDurationMs: 120000
87
132
  # 默认继承会话;需要固定模型时添加以下两项:
88
- # provider: super-relay
89
- # model: auto_model/alwaysday1
133
+ # provider: custom-gateway
134
+ # model: configured-model-id
90
135
  scope:
91
136
  workspace: /abs/path/to/owner/workspace
92
137
  preset: primary
@@ -125,7 +170,7 @@ rules:
125
170
 
126
171
  ### 观察与关闭
127
172
 
128
- - 服务方法 `health()` 返回最近一次唤醒的 `lastWakeAt` / `outcome`(`never-run`/`ran`/`skipped`/`failed`)/ `reason` / 运行用量;跳过原因包括 `missing-scope`、`missing-binding:*`、`contract-expired:*`、`missing-credential`、`missing-policy`、`budget:*`。
173
+ - 服务方法 `health()` 返回最近一次唤醒的 `lastWakeAt` / `outcome`(`never-run`/`ran`/`skipped`/`failed`)/ `reason` / 运行用量;PTC 呈现下运行用量另含 `usage.ptc`(有界轨迹摘要,见上文),native 下没有该键。跳过原因包括 `missing-scope`、`missing-binding:*`、`contract-expired:*`、`missing-credential`、`missing-policy`、`budget:*`。
129
174
  - `health().ownerAnchored`(仅该轨启用且本轮跑过时存在)给本地轨计数:`considered`(窗口内完成的 goal)/ `attempted`(实际尝试提交)/ `recorded`(新沉淀)/ `replayed`(幂等重放)/ `abstained`(多工具等无法归约为单步 agent-turn,诚实跳过)/ `stopped`(非空时为 fail-closed 中断原因,如 `inspect:*`、`authority:*`、`runtime-unavailable:*`)。
130
175
  - 停用:把 `enabled` 置回 `false`(或移除插件配置)即恢复休眠,不影响已经 staged 的 pending candidate——它们仍只由 owner 在既有 skills/automations 审批面处理。
131
176
 
@@ -133,7 +178,7 @@ rules:
133
178
 
134
179
  源码审阅与技能沉淀分别执行:启用本能力后,即使没有历史完成目标,也会检查已登记的开放 gap。重复、独立验收成功仍是技能候选的必要条件;源码候选按 gap、读取版本、权限和隔离检查规则准入。
135
180
 
136
- 另行安装同批 `plugin-control-plane`,按其 README 配置 owner trust 和隔离构建镜像,再给 driver 增加:
181
+ 另行安装同批 `plugin-control-plane`,按其 README 配置 owner trust 和隔离构建后端,再给 driver 增加:
137
182
 
138
183
  ```yaml
139
184
  pluginSourceProposals:
@@ -158,7 +203,7 @@ Agent 先通过 `plugin_source_gaps` 发现 owner 配置的控制面账本中已
158
203
 
159
204
  Host 在本轮内按 gap 与插件保存首次读取的 commit,后续读取和准备均绑定该 commit;HEAD 变化即拒绝旧上下文。同一文件在同一 commit 的再次读取若内容漂移也会拒绝。完整替换既有文件前必须读取原内容;精确编辑只能作用于已读的既有文件,可在已有目录中增加源码或测试文件。模型不能指定 commit,也不能只凭文件清单覆盖未读文件。服务提供者更换后读上下文与待执行动作一并失效;未提供源码读取接口的旧版 control-plane 保持四工具基础模式。
160
205
 
161
- Control Plane 拥有 worktree、源码快照、容器构建和 SQLite 写入。`inline` 成功时仅返回待审批 plan id 与检查摘要;`durable` 成功时只返回 content-free job id/status,Host 接受队列后继续以它自己的 durable authority 运行,即使模型 wake 随后到期也不会伪造为 prepared。`plugin_source_job_status` 只在 durable 模式出现,并用当前 Growth authority 的 owner scope 查询 job。owner 仍需通过控制面的签名审批、源码复核和发布流程处理。模型看不到 worktree 路径或构建日志。检查失败、owner route 漂移、provider 移除、插件卸载或本轮到期均终止尚未被 Host 接受的操作。`health().run.sourceProposals` 分别提供 `queued`、`prepared` / `rejected` 数量;可选 provider 更换后下一轮重新绑定,旧轮次不会跨代继续写入。
206
+ Control Plane 拥有 worktree、源码快照、隔离构建和 SQLite 写入。`inline` 成功时仅返回待审批 plan id 与检查摘要;`durable` 成功时只返回 content-free job id/status,Host 接受队列后继续以它自己的 durable authority 运行,即使模型 wake 随后到期也不会伪造为 prepared。`plugin_source_job_status` 只在 durable 模式出现,并用当前 Growth authority 的 owner scope 查询 job。owner 仍需通过控制面的签名审批、源码复核和发布流程处理。模型看不到 worktree 路径或构建日志。检查失败、owner route 漂移、provider 移除、插件卸载或本轮到期均终止尚未被 Host 接受的操作。`health().run.sourceProposals` 分别提供 `queued`、`prepared` / `rejected` 数量;可选 provider 更换后下一轮重新绑定,旧轮次不会跨代继续写入。
162
207
 
163
208
  ### 新插件候选
164
209
 
@@ -214,13 +259,42 @@ usageLearning:
214
259
 
215
260
  源码检查、最终计划提交及 durable job 的排队、恢复和执行都重新核对来源。完整原执行 owner receipt 固定后,同主人 `/new` 可在原授权窗口内继续;身份或授权变化、纠正或撤回会拒绝旧来源继续产出计划,历史引用保留。Driver 负责候选生成;后续有限审批、发布、独立审查、采用与真实任务观察由另行配置的 [Control Plane](../plugin-control-plane/README.md) 接续。组件已接线,可安装部署与独立行为验收尚未贯通,不能据此宣称生产自迭代已完成。
216
261
 
262
+ ### 后台失败的工程来源
263
+
264
+ 后台分支使用 schema3 的独立 WorkItem 游标与持久定位表;旧前台游标、意图 JSON、摘要、source-run 和 unknown 保留。仅当前认证 not-achieved 可登记,同 item/canonical 修订只接纳一次。先原子保存定位与游标,再完整读取工程上下文;reader 或 peer 临时缺失保留同定位及原到期时间,不返还或重置 Policy/Automations 额度。
265
+
266
+ 工程 objective 是 Delivery 逐段核对的根→当前 child 原样主人输入及有版本 JSON framing,总 UTF-8 不超过16KiB;不得改用 worker brief、根目标摘要或 owner 反馈。背景报告与反馈分栏作为不可信材料,封存 manifest 绑定精确父链及报告版本。完整来源、原 supplier(或显式固定覆盖)、有限预算与 pins 在 Delivery → Evaluation → WorkItems → UsageStore writer frame 内冻结后才进入原生作业;缺失 reasoning effort 保持缺失。同 owner 新 Session 不改写冻结 owner/source-run 摘要。
267
+
268
+ CP 免费 readiness 必须明确返回工程来源协议、source-run v2、后台能力及完全相同且未过期的 pins。schedule/activate、claim 和首次 LLM 前要求正余额与 available;缺方法、旧协议或摘要不符时不启动付费作者。既有 run 不因自己的末次额度消耗而失效;后续授权仍核对当前活 peer、原 pins、来源及各独立账本。后台作者只看到 gaps/read/job-status/create 工具,不进入技能写、modify/revise 或通用成功轨。候选仍需独立真实构建、held-out 验收及采用,不把主人 testimony 或工具成功当证书。
269
+
270
+ 后台四个 source 工具还要求当前 Policy 的 WorkItem Growth 预授权能力。仅实际发布的 `dsh-enhanced-assistant-growth-driver` plugin Fiber 可注册本 Agent realm 的准确工具定义;注册初始不可用,真实持久化 v2 source-run 返回并匹配 session、occurrence、来源、工具摘要及预算后才启用。每次执行重核当前 owner/source、Policy、期限和工具次数,关闭或取消立即撤销;此许可仅跳过这四个工具的逐次审批,不绕过 Policy 的 execute 规则、预算或急停。前台 v1 仍保留既有审批流程,后续普通任务调用新工具也沿用其真实前台权限/审批通道。
271
+
272
+ source-run v2 producer 将持久 binding 深冻结后,在真实 UsageStore writer frame 内交给同步 CP consumer;禁止 thenable、同实例写方法重入及上游回读。running/reviewed 才可提供通用 producer 授权;unknown 保留原作业且不重派、不重扣,不能借其创建新作业或签新采用授权。旧 v1 协议与校验保留。本轮包内 fixture 不证明真实跨包工程创建/采用/后续工具调用链,完整组合与长期真实收益仍需独立验收。
273
+
274
+ ### 显式 native 验收入口
275
+
276
+ Node 24+,在仓库根目录显式准备资源;替换绝对仓库路径与已验证提交(Linux 两项均必填)。准备可能下载依赖,不会由普通根检查自动执行:
277
+
278
+ ```sh
279
+ node --experimental-strip-types plugins/assistant-growth-driver/tests/work-item-engineering.native.ts --prepare-macos /absolute/repository 876f4b66760cca67d619e8848e414e58edb8698a
280
+ node --experimental-strip-types plugins/assistant-growth-driver/tests/work-item-engineering.native.ts --prepare-linux /absolute/repository 876f4b66760cca67d619e8848e414e58edb8698a
281
+ ```
282
+
283
+ 保存输出的 `resourcePath` 后,从 `plugins/assistant-growth-driver` 目录运行:
284
+
285
+ ```sh
286
+ CI=1 VITEST_MAX_WORKERS=1 DSH_WORK_ITEM_ENGINEERING_RESOURCES=/absolute/native-resources.json node ../../node_modules/vitest/vitest.mjs run --dir tests tests/work-item-engineering.integration.spec.ts
287
+ ```
288
+
289
+ Linux 需要预先存在的 delegated cgroups/user namespace helpers;准备命令不更改主机设置。未配置资源时跳过 native 项,跳过不是验收。helper 的静态/无命令检查不证明完整链路;完整 native 创建、验收、采用与后续真实任务调用仍按独立结果核验。
290
+
217
291
  ## 权限与数据
218
292
 
219
293
  - 网络:经本轮冻结的 DSH 模型 adapter 发出请求,目标及凭据由该供应配置决定;没有模型之外的网络工具。
220
- - 文件系统:启用 `usageLearning` 后写私有 SQLite(文件权限 `0600`),保存冻结任务正文、owner 与模型,未自动清理历史。正文最多 4096 字符,经 owner 校验后作为不可信数据交给获授权的成长模型;Automations 定义与公开 health 不含正文。skill candidate 由 Skills 入库,源码提案经 Control Plane 写入其私有 worktree 和 SQLite。
221
- - 子进程:源码轨开启时委托 Control Plane 调用 Git 与隔离容器构建;构建权属于 owner 配置的 Control Plane,见其权限说明。driver 无浏览器能力。
294
+ - 文件系统:启用 `usageLearning` 后写私有 SQLite(文件权限 `0600`),保存冻结任务正文、owner 与模型,未自动清理历史。前台正文最多 4096 字符;后台完整 objective 最多16KiB,另有封存背景报告(单条64KiB、合计256KiB)和有界反馈。均经 owner 校验后作为不可信数据交给获授权的成长模型;Automations 定义与公开 health 不含正文。skill candidate 由 Skills 入库,源码提案经 Control Plane 写入其私有 worktree 和 SQLite。
295
+ - 子进程:源码轨开启时委托 Control Plane 调用 Git 与实际隔离 runner(按 CP 配置支持 native 等后端)构建;构建权属于 owner 配置的 Control Plane,见其权限说明。driver 无浏览器能力。
222
296
  - 凭据:只读解析一次凭据引用(存在性检查),不持久化、不回显、不入日志。
223
- - 审批/策略:每次沉淀与每个工具调用都在 service 边界经 `assistant-policy`;空规则默认拒绝。产物仅 pending,零 activate/install。
297
+ - 审批/策略:每次沉淀与每个工具调用都在 service 边界经 `assistant-policy`;空规则默认拒绝。driver 只产候选;独立 CP 另获创建审查与采用授权后可有限 adopt,driver 不直接 activate/install。
224
298
 
225
299
  ## 明确不做(边界)
226
300
 
@@ -228,8 +302,13 @@ usageLearning:
228
302
  - 不 activate / install / retire / rollback、不扩权、不改 policy 规则表、不碰预算上限与急停等安全根。
229
303
  - owner-anchored 轨只提交 locator:证据(objective、步骤、验收结论)一律由 Delivery 持 goals 独立重取,driver 不接受调用方自带 prompt,也不自造 trace source/authority。
230
304
  - 源码轨只到经过检查的 pending 提案;owner 签名、发布、生产启用和 HMR reload 由独立控制面处理。
231
- - owner-anchored 轨的证据是 Delivery 在进程内对真实 goals SQLite 的独立复核(工程层);真实 super-relay 端到端与真实外部平台深评测均不在本期,前者仅由 owner 显式 opt-in 后手动触发一次。
305
+ - owner-anchored 轨的证据是 Delivery 在进程内对真实 goals SQLite 的独立复核(工程层);真实外部供应商端到端与真实外部平台深评测均不在本期,前者仅由 owner 显式 opt-in 后手动触发一次。
232
306
 
233
307
  ## 兼容性
234
308
 
235
309
  See the repository [compatibility baseline](../../docs/compatibility.md)。
310
+
311
+
312
+ 扫描器在启动、原生派发及来源复核前先检查 Automations 的持久退休标记与 Delivery 的当前 owner 状态。仅准确 owner 被持久撤销时,以原定义摘要及版本退休自身扫描 cron;旧任务、unknown、请求、grant 与已用预算原样保留,不再做旧来源失效或自动回退扫描。退休标记跨重启和身份切回保留,相同扫描 ID 不会自动复活。新 owner 必须使用显式配置的新代次,不能转移旧授权。
313
+
314
+ 缺失 binding、临时数据库/连接故障不触发永久退休;扫描器保留原生 executor、事件或 cron 恢复入口。退休查询暂不可用时,仅尝试由 Automations 的事务与数据库退休栅栏准入原扫描 cron;明确退休、明确撤销或退休被 Policy 拒绝时不激活。若注册也暂时失败,未完成初始化的实例由现有原生 scheduler wake 重试初始化;成功后只沿原 cron 和预算扫描,不增加业务扫描频率。恢复初始化不派发业务工作或消耗新的学习 admission。Policy 拒绝退休时同样阻止新工作,并报告失败;不把拒绝当退休成功。卸载仍独立取消及有界等待本扫描器拥有的执行,不关闭普通聊天或整个插件。
package/lib/config.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import Schema from '@deepseek-ai/schemastery';
2
+ import { type WorkItemGrowthAuthorityPins } from '@dsh-enhanced/assistant-growth-contract';
2
3
  /**
3
4
  * The growth driver is opt-in and fail-closed: it never runs until `enabled`
4
5
  * is explicitly true and a concrete owner scope is declared. Model selection
5
6
  * follows the owner's conversation unless an explicit fixed pair overrides it.
6
7
  */
7
- export declare const DEFAULT_API_KEY_ENV: "SUPER_RELAY_API_KEY";
8
8
  export interface GrowthOwnerScopeConfig {
9
9
  workspace: string;
10
10
  preset: string;
@@ -65,6 +65,16 @@ export interface AssistantGrowthDriverConfig {
65
65
  maxToolCalls?: number;
66
66
  maxOutputTokens?: number;
67
67
  maxDurationMs?: number;
68
+ /**
69
+ * How the model sees the frozen growth tool surface. `native` (default) sends
70
+ * every allowlisted schema directly; `ptc` presents only the Host's reserved
71
+ * `run_code` transport plus a generated SDK, so one model turn can orchestrate
72
+ * several nested tool calls whose intermediate results stay out of context.
73
+ * PTC changes presentation only: the allowlist, approvals, budget and output
74
+ * caps are unchanged. It requires a mounted `ctx.ptcRuntime` and fails closed
75
+ * when that runtime is absent.
76
+ */
77
+ toolPresentation?: 'native' | 'ptc';
68
78
  /** Omit both to inherit the owner conversation; specify both for a fixed route. */
69
79
  provider?: string;
70
80
  model?: string;
@@ -85,6 +95,8 @@ export interface AssistantGrowthDriverConfig {
85
95
  databasePath?: string;
86
96
  maxPending?: number;
87
97
  lookbackMs?: number;
98
+ workItemFailures?: boolean;
99
+ workItemAuthorities?: WorkItemGrowthAuthorityPins;
88
100
  /** Native discovery scans need their own explicit automation-runs allocation. */
89
101
  scanBudgetId?: string;
90
102
  scanBudgetAmount?: number;
@@ -107,7 +119,8 @@ export interface NormalizedPluginSourceProposalsConfig {
107
119
  readonly offline: boolean;
108
120
  readonly planTtlMs: number;
109
121
  }
110
- export interface NormalizedGrowthDriverConfig extends Required<Omit<AssistantGrowthDriverConfig, 'provider' | 'model' | 'reasoningEffort' | 'apiKeyEnv' | 'budgetId' | 'budgetAmount' | 'scope' | 'workflowOwnerAnchored' | 'pluginSourceProposals' | 'usageLearning'>> {
122
+ export interface NormalizedGrowthDriverConfig extends Required<Omit<AssistantGrowthDriverConfig, 'provider' | 'model' | 'reasoningEffort' | 'apiKeyEnv' | 'budgetId' | 'budgetAmount' | 'scope' | 'workflowOwnerAnchored' | 'pluginSourceProposals' | 'usageLearning' | 'toolPresentation'>> {
123
+ readonly toolPresentation: 'native' | 'ptc';
111
124
  readonly provider: string | null;
112
125
  readonly model: string | null;
113
126
  readonly reasoningEffort: string | null;
@@ -124,6 +137,8 @@ export interface NormalizedGrowthDriverConfig extends Required<Omit<AssistantGro
124
137
  lookbackMs: number;
125
138
  scanBudgetId: string | null;
126
139
  scanBudgetAmount: number | null;
140
+ workItemFailures?: true;
141
+ workItemAuthorities?: WorkItemGrowthAuthorityPins;
127
142
  }>;
128
143
  }
129
144
  export declare const Config: Schema<AssistantGrowthDriverConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/lib/config.js CHANGED
@@ -1,11 +1,6 @@
1
1
  import { isAbsolute, resolve } from 'node:path';
2
2
  import Schema from '@deepseek-ai/schemastery';
3
- /**
4
- * The growth driver is opt-in and fail-closed: it never runs until `enabled`
5
- * is explicitly true and a concrete owner scope is declared. Model selection
6
- * follows the owner's conversation unless an explicit fixed pair overrides it.
7
- */
8
- export const DEFAULT_API_KEY_ENV = 'SUPER_RELAY_API_KEY';
3
+ import { validateWorkItemGrowthAuthorityPins } from '@dsh-enhanced/assistant-growth-contract';
9
4
  const fields = new Set([
10
5
  'enabled',
11
6
  'intervalMs',
@@ -16,6 +11,7 @@ const fields = new Set([
16
11
  'maxToolCalls',
17
12
  'maxOutputTokens',
18
13
  'maxDurationMs',
14
+ 'toolPresentation',
19
15
  'provider',
20
16
  'model',
21
17
  'reasoningEffort',
@@ -81,6 +77,10 @@ const schema = Schema.object({
81
77
  maxOutputTokens: Schema.natural().min(1).max(32_768).default(8_192),
82
78
  // Security root: a growth authority may never live longer than 300000 ms.
83
79
  maxDurationMs: Schema.natural().min(1_000).max(300_000).default(120_000),
80
+ // Presentation only; the frozen allowlist/approval/budget contract below is
81
+ // identical in both modes. Absence of a PTC runtime is a runtime failure, not
82
+ // a config-time fallback.
83
+ toolPresentation: Schema.union(['native', 'ptc']).default('native'),
84
84
  provider: boundedText(256),
85
85
  model: boundedText(256),
86
86
  reasoningEffort: boundedText(128),
@@ -90,7 +90,7 @@ const schema = Schema.object({
90
90
  scope: scopeSchema,
91
91
  workflowOwnerAnchored: workflowOwnerAnchoredSchema,
92
92
  pluginSourceProposals: pluginSourceProposalsSchema,
93
- usageLearning: Schema.object({ enabled: Schema.boolean().default(false), databasePath: boundedText(4096),
93
+ usageLearning: Schema.object({ workItemFailures: Schema.boolean(), workItemAuthorities: Schema.any(), enabled: Schema.boolean().default(false), databasePath: boundedText(4096),
94
94
  scanBudgetId: boundedText(128),
95
95
  scanBudgetAmount: Schema.natural().min(1).max(10_000_000),
96
96
  maxPending: Schema.natural().min(1).max(100).default(16),
@@ -110,9 +110,20 @@ export const Config = new Proxy(schema, {
110
110
  },
111
111
  });
112
112
  export function normalizeConfig(input) {
113
+ if (input?.usageLearning && Object.hasOwn(input.usageLearning, 'workItemFailures')
114
+ && typeof input.usageLearning.workItemFailures !== 'boolean')
115
+ throw new Error('assistant-growth-driver: workItemFailures must be a boolean');
113
116
  const config = Config(input);
114
117
  if (config.apiKeyEnv !== undefined && !/^[A-Z_][A-Z0-9_]*$/u.test(config.apiKeyEnv))
115
118
  throw new Error('assistant-growth-driver: invalid apiKeyEnv');
119
+ const pins = config.usageLearning?.workItemAuthorities;
120
+ if (pins !== undefined)
121
+ validateWorkItemGrowthAuthorityPins(pins);
122
+ if (pins !== undefined && config.usageLearning?.workItemFailures !== true)
123
+ throw new Error('assistant-growth-driver: workItemAuthorities require workItemFailures');
124
+ const frozenPins = pins === undefined ? undefined : Object.freeze({ ...pins,
125
+ sourceJobs: Object.freeze({ ...pins.sourceJobs }), creationGrant: Object.freeze({ ...pins.creationGrant }),
126
+ creationAcceptance: Object.freeze({ ...pins.creationAcceptance }), adoption: Object.freeze({ ...pins.adoption }) });
116
127
  const normalized = Object.freeze({
117
128
  enabled: config.enabled ?? false,
118
129
  intervalMs: config.intervalMs ?? 0,
@@ -123,6 +134,7 @@ export function normalizeConfig(input) {
123
134
  maxToolCalls: config.maxToolCalls ?? 24,
124
135
  maxOutputTokens: config.maxOutputTokens ?? 8_192,
125
136
  maxDurationMs: config.maxDurationMs ?? 120_000,
137
+ toolPresentation: config.toolPresentation ?? 'native',
126
138
  provider: config.provider ?? null,
127
139
  model: config.model ?? null,
128
140
  reasoningEffort: config.reasoningEffort ?? null,
@@ -147,7 +159,7 @@ export function normalizeConfig(input) {
147
159
  offline: config.pluginSourceProposals?.offline ?? true,
148
160
  planTtlMs: config.pluginSourceProposals?.planTtlMs ?? 86_400_000,
149
161
  }),
150
- usageLearning: Object.freeze({ enabled: config.usageLearning?.enabled ?? false,
162
+ usageLearning: Object.freeze({ ...(config.usageLearning?.workItemFailures === true ? { workItemFailures: true, workItemAuthorities: frozenPins } : {}), enabled: config.usageLearning?.enabled ?? false,
151
163
  scanBudgetId: config.usageLearning?.scanBudgetId ?? null,
152
164
  scanBudgetAmount: config.usageLearning?.scanBudgetAmount ?? null,
153
165
  databasePath: config.usageLearning?.databasePath ?? null, maxPending: config.usageLearning?.maxPending ?? 16,
@@ -208,6 +220,11 @@ export function normalizeConfig(input) {
208
220
  if ((normalized.budgetId === null) !== (normalized.budgetAmount === null)) {
209
221
  throw new Error('assistant-growth-driver: budgetId and budgetAmount must be configured together');
210
222
  }
223
+ if (normalized.usageLearning.workItemFailures && (!normalized.usageLearning.enabled
224
+ || !normalized.pluginSourceProposals.enabled || normalized.pluginSourceProposals.preparationMode !== 'durable'
225
+ || !normalized.pluginSourceProposals.allowCreation || frozenPins === undefined)) {
226
+ throw new Error('assistant-growth-driver: work item failures require durable creation, usage learning and explicit authorities');
227
+ }
211
228
  if (normalized.usageLearning.enabled) {
212
229
  const path = normalized.usageLearning.databasePath;
213
230
  if (!normalized.enabled || !normalized.scope || !normalized.budgetId || normalized.intervalMs !== 0
package/lib/config.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,MAAM,MAAM,0BAA0B,CAAA;AAC7C,OAAO,EAAE,mCAAmC,EAAoC,MAAM,yCAAyC,CAAA;AA2I/H,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC;IACrB,SAAS;IACT,YAAY;IACZ,mBAAmB;IACnB,sBAAsB;IACtB,gBAAgB;IAChB,eAAe;IACf,cAAc;IACd,iBAAiB;IACjB,eAAe;IACf,kBAAkB;IAClB,UAAU;IACV,OAAO;IACP,iBAAiB;IACjB,UAAU;IACV,cAAc;IACd,WAAW;IACX,OAAO;IACP,uBAAuB;IACvB,uBAAuB;IACvB,eAAe;CAChB,CAAC,CAAA;AAEF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;AAC1D,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;AAEpE,+EAA+E;AAC/E,4EAA4E;AAC5E,+EAA+E;AAC/E,2EAA2E;AAC3E,gFAAgF;AAChF,0CAA0C;AAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;IAChC,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE;IACxC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACnC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;IACxC,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;CAC1C,CAAC,CAAC,OAAO,CAAC,SAA8C,CAA+C,CAAA;AAExG,+EAA+E;AAC/E,gFAAgF;AAChF,2EAA2E;AAC3E,uCAAuC;AACvC,MAAM,iCAAiC,GAAG,MAAM,CAAC,MAAM,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACxC,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;CAC9E,CAAmD,CAAA;AACpD,MAAM,2BAA2B,GAAG,iCAAiC;KAClE,OAAO,CAAC,SAAmD,CAAoD,CAAA;AAElH,8EAA8E;AAC9E,MAAM,iCAAiC,GAAG,MAAM,CAAC,MAAM,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACxC,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC9C,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACjD,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAC9C,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACtE,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,+EAA+E;IAC/E,6EAA6E;IAC7E,sBAAsB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IAClF,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;CAC7E,CAAmD,CAAA;AACpD,MAAM,2BAA2B,GAAG,iCAAiC;KAClE,OAAO,CAAC,SAAmD,CAAoD,CAAA;AAElH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACxC,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,iBAAiB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9D,oBAAoB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;IAChF,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACzD,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC1D,eAAe,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;IACnE,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxE,4EAA4E;IAC5E,8EAA8E;IAC9E,0BAA0B;IAC1B,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;IACnE,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC;IAC1B,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;IACvB,eAAe,EAAE,WAAW,CAAC,GAAG,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IACzC,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC;IACxD,SAAS,EAAE,GAAG;IACd,KAAK,EAAE,WAAW;IAClB,qBAAqB,EAAE,2BAA2B;IAClD,qBAAqB,EAAE,2BAA2B;IAClD,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,mBAAmB,EAAE,MAAM,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC;QAC7K,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC;QAC9B,gBAAgB,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;QACzD,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QACxD,UAAU,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC;KAC9E,CAAC,CAAC,OAAO,CAAC,SAAkB,CAAC;CAC/B,CAAwC,CAAA;AAEzC,MAAM,CAAC,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE;IACtC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,aAAwB;QAC7C,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,CAAA;QAC9B,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;QACtK,IAAI,KAAK,KAAK,SAAS;YAAE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC;gBAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,kDAAkD,GAAG,EAAE,CAAC,CAAA;QACvK,OAAO,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,CAAgC,CAAA;IACrF,CAAC;CACF,CAAwC,CAAA;AAEzC,MAAM,UAAU,eAAe,CAAC,KAAmC;IACjE,IAAI,KAAK,EAAE,aAAa,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,kBAAkB,CAAC;WAC7E,OAAO,KAAK,CAAC,aAAa,CAAC,gBAAgB,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAA;IAC9I,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAgC,CAAA;IAC3D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;IAClJ,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,EAAE,mBAAmB,CAAA;IACtD,IAAI,IAAI,KAAK,SAAS;QAAE,mCAAmC,CAAC,IAAI,CAAC,CAAA;IACjE,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,aAAa,EAAE,gBAAgB,KAAK,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAA;IACnK,MAAM,UAAU,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI;QACzE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QAC1G,kBAAkB,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;IACrH,MAAM,UAAU,GAAiC,MAAM,CAAC,MAAM,CAAC;QAC7D,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,KAAK;QAChC,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;QAClC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,EAAE;QACjD,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,IAAI,CAAC;QACtD,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,UAAU;QACnD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,CAAC;QACxC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,EAAE;QACvC,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,KAAK;QAChD,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,OAAO;QAC9C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,QAAQ;QACrD,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;QACjC,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,IAAI;QAC3B,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,IAAI;QAC/C,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;QACjC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,IAAI;QACzC,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,IAAI;QACnC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/D,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,qBAAqB,EAAE,OAAO,IAAI,KAAK;YACvD,iBAAiB,EAAE,MAAM,CAAC,qBAAqB,EAAE,iBAAiB,IAAI,CAAC;YACvE,UAAU,EAAE,MAAM,CAAC,qBAAqB,EAAE,UAAU,IAAI,UAAU;SACnE,CAAC;QACF,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC;YACnC,OAAO,EAAE,MAAM,CAAC,qBAAqB,EAAE,OAAO,IAAI,KAAK;YACvD,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,aAAa,IAAI,KAAK;YACnE,iBAAiB,EAAE,MAAM,CAAC,qBAAqB,EAAE,iBAAiB,IAAI,IAAI;YAC1E,aAAa,EAAE,MAAM,CAAC,qBAAqB,EAAE,aAAa,IAAI,KAAK;YACnE,eAAe,EAAE,MAAM,CAAC,qBAAqB,EAAE,eAAe,IAAI,QAAQ;YAC1E,UAAU,EAAE,MAAM,CAAC,qBAAqB,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI;YACrF,eAAe,EAAE,MAAM,CAAC,qBAAqB,EAAE,eAAe,IAAI,CAAC;YACnE,sBAAsB,EAAE,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,IAAI,OAAO;YACvF,OAAO,EAAE,MAAM,CAAC,qBAAqB,EAAE,OAAO,IAAI,IAAI;YACtD,SAAS,EAAE,MAAM,CAAC,qBAAqB,EAAE,SAAS,IAAI,UAAU;SACjE,CAAC;QACF,aAAa,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAa,EAAE,mBAAmB,EAAE,UAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,aAAa,EAAE,OAAO,IAAI,KAAK;YAC/M,YAAY,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,IAAI,IAAI;YACxD,gBAAgB,EAAE,MAAM,CAAC,aAAa,EAAE,gBAAgB,IAAI,IAAI;YAChE,YAAY,EAAE,MAAM,CAAC,aAAa,EAAE,YAAY,IAAI,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,IAAI,EAAE;YAC5G,UAAU,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,IAAI,UAAU,EAAE,CAAC;KAChE,CAAC,CAAA;IACF,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;IACjI,IAAI,CAAC,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAA;IAC5F,CAAC;IACD,IAAI,UAAU,CAAC,eAAe,KAAK,IAAI,IAAI,UAAU,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAA;IACrG,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACxF,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;YACjG,MAAM,IAAI,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC,CAAE,CAAA;YACtC,OAAO,IAAI,IAAI,EAAE,IAAI,IAAI,KAAK,GAAG,CAAA;QACnC,CAAC,CAAC,CAAC,EAAE,CAAC;YACJ,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;QACjE,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,iGAAiG,CAAC,CAAA;IACpH,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QAClE,MAAM,IAAI,KAAK,CAAC,yFAAyF,CAAC,CAAA;IAC5G,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC;QAC7C,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iGAAiG,CAAC,CAAA;QACpH,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,yFAAyF,CAAC,CAAA;QAC5G,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAA;QACnI,MAAM,UAAU,GAAG,UAAU,CAAC,qBAAqB,CAAC,UAAU,CAAA;QAC9D,4EAA4E;QAC5E,2EAA2E;QAC3E,yDAAyD;QACzD,IAAI,UAAU,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE,CAAC;YACzF,MAAM,IAAI,KAAK,CAAC,0GAA0G,CAAC,CAAA;QAC7H,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,aAAa;WAC7C,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,UAAU,CAAC,qBAAqB,CAAC,eAAe,KAAK,SAAS,CAAC,EAAE,CAAC;QACnH,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAA;IACvG,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,iBAAiB;WAC9F,CAAC,UAAU,CAAC,qBAAqB,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,aAAa,EAAE,CAAC;QACxG,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAA;IAChG,CAAC;IACD,IAAI,UAAU,CAAC,qBAAqB,CAAC,aAAa;WAC7C,CAAC,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,UAAU,CAAC,qBAAqB,CAAC,eAAe,KAAK,SAAS;eAC1G,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAA;IAC1H,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;IACnG,CAAC;IACD,IAAI,UAAU,CAAC,aAAa,CAAC,gBAAgB,IAAI,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,OAAO;WAC9E,CAAC,UAAU,CAAC,qBAAqB,CAAC,OAAO,IAAI,UAAU,CAAC,qBAAqB,CAAC,eAAe,KAAK,SAAS;WAC3G,CAAC,UAAU,CAAC,qBAAqB,CAAC,aAAa,IAAI,UAAU,KAAK,SAAS,CAAC,EAAE,CAAC;QAClF,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAA;IAClI,CAAC;IACD,IAAI,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAA;QAClD,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,UAAU,KAAK,CAAC;eAC9F,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,qHAAqH,CAAC,CAAA;QACxI,CAAC;QACD,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,YAAY,CAAA;QACxD,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;eACjF,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,UAAU,IAAI,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;eAC1E,UAAU,CAAC,aAAa,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACxD,MAAM,IAAI,KAAK,CAAC,wGAAwG,CAAC,CAAA;QAC3H,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC"}
@@ -7,7 +7,7 @@ declare module '@deepseek-ai/dsh-llm' {
7
7
  };
8
8
  }
9
9
  }
10
- import { type SourceGrowthRunBinding } from '@dsh-enhanced/assistant-growth-contract';
10
+ import { type AnySourceGrowthRunBinding, type SourceGrowthRunBinding } from '@dsh-enhanced/assistant-growth-contract';
11
11
  import type { Context } from '@deepseek-ai/cordis';
12
12
  import { type ModelSelection } from '@deepseek-ai/dsh-agent';
13
13
  import type { AssistantGoalsService } from '@dsh-enhanced/assistant-goals';
@@ -23,6 +23,27 @@ export declare const GROWTH_PROMPT: string;
23
23
  */
24
24
  export declare const SOURCE_PROPOSALS_PROMPT: string;
25
25
  export declare const SOURCE_TARGETS_PROMPT: string;
26
+ /**
27
+ * Native-check guidance for authored @deepseek-ai/dsh-tools code. Sealed attempt 5
28
+ * failed `tsc --noEmit` on exactly these two coupled mistakes: a nested schema as
29
+ * `additionalProperties`, which made the inferred output `never` for the handler.
30
+ */
31
+ export declare const SOURCE_TYPECHECK_GUIDANCE: string;
32
+ /**
33
+ * Generic secure-coding and documentation rules for authored tool code. Tool inputs are untrusted:
34
+ * plain `{}` accumulators drop or reinterpret keys such as `__proto__`, and README claims that
35
+ * contradict the code leave reviewers unable to tell which behavior is intended.
36
+ */
37
+ export declare const SOURCE_SECURE_CODING_GUIDANCE: string;
38
+ /** Upper bound on one plugin_source_job_status wait; also capped by the wake deadline. */
39
+ export declare const MAX_SOURCE_JOB_WAIT_MS = 240000;
40
+ /** At most one Host-certified build repair per gap/name per wake (two create attempts in total). */
41
+ export declare const MAX_SOURCE_BUILD_REPAIRS = 1;
42
+ export declare const SOURCE_BUILD_CHECK_FAILED = "source-build-check-failed";
43
+ /** Re-project untrusted peer diagnostics into a bounded, plain shape for the model. */
44
+ export declare function projectBuildDiagnostics(value: unknown): Record<string, unknown> | undefined;
45
+ /** Bounded in-run repair: one revision, only after a Host-certified deterministic build/check failure. */
46
+ export declare const SOURCE_REPAIR_GUIDANCE: string;
26
47
  export declare const SOURCE_CREATION_PROMPT: string;
27
48
  export declare const SOURCE_REVISION_PROMPT: string;
28
49
  export interface GrowthSourceWakeCounters {
@@ -30,6 +51,38 @@ export interface GrowthSourceWakeCounters {
30
51
  readonly prepared: number;
31
52
  readonly rejected: number;
32
53
  }
54
+ /**
55
+ * Bounded structural summary of one PTC-presented growth wake. It exists so a
56
+ * trajectory can inform later RSI work without ever retaining the program
57
+ * source, nested call arguments, parameter bodies or tool result bodies: every
58
+ * field is a counter, a byte length, a time span or a digest.
59
+ *
60
+ * `toolCallsByName` is bounded by the frozen allowlist (unknown nested names
61
+ * are counted in `unadmittedNestedCalls` instead), and the script digest is a
62
+ * one-way SHA-256 over length-prefixed scripts, never the scripts themselves.
63
+ */
64
+ export interface GrowthPtcTrajectory {
65
+ readonly protocol: 'assistant-growth/ptc-trajectory/v1';
66
+ /** Model-direct `run_code` calls in this wake. */
67
+ readonly runCodeCalls: number;
68
+ /** `run_code` calls whose final tool result was an error. */
69
+ readonly failedRunCodeCalls: number;
70
+ /** Total UTF-8 bytes of all program sources (a size, never the source). */
71
+ readonly scriptBytes: number;
72
+ /** SHA-256 over the ordered, length-prefixed program sources; null when none ran. */
73
+ readonly scriptDigest: string | null;
74
+ /** Settled nested sub-dispatches across every program. */
75
+ readonly nestedCalls: number;
76
+ readonly failedNestedCalls: number;
77
+ /** Nested sub-dispatches naming a tool outside the frozen allowlist (all denied). */
78
+ readonly unadmittedNestedCalls: number;
79
+ /** Nested sub-dispatch counts keyed by allowlisted tool name; bounded by the allowlist. */
80
+ readonly toolCallsByName: Readonly<Record<string, number>>;
81
+ /** Longest settled nested sub-dispatch in milliseconds. */
82
+ readonly longestSubCallMs: number;
83
+ /** Longest model-direct `run_code` call in milliseconds. */
84
+ readonly longestRunCodeMs: number;
85
+ }
33
86
  export interface GrowthAgentRunResult {
34
87
  readonly model: Readonly<ModelSelection>;
35
88
  readonly sessionId: string;
@@ -43,6 +96,11 @@ export interface GrowthAgentRunResult {
43
96
  reasoningTokens: number;
44
97
  modelCalls: number;
45
98
  toolCalls: number;
99
+ /**
100
+ * Present only when the wake ran with `toolPresentation: 'ptc'`; native runs
101
+ * keep exactly their previous usage shape (zero behavior change when off).
102
+ */
103
+ ptc?: GrowthPtcTrajectory;
46
104
  };
47
105
  /** Zeroed unless the owner opted into pluginSourceProposals and a source port is bound. */
48
106
  readonly sourceProposals: GrowthSourceWakeCounters;
@@ -56,23 +114,52 @@ export interface GrowthAgentInput {
56
114
  model: Readonly<ModelSelection>;
57
115
  goals: Goals;
58
116
  skills: Skills;
59
- /**
60
- * Bound ONLY when pluginSourceProposals is enabled AND a pluginControlPlane
61
- * service is mounted. When undefined, the three source tools are not registered
62
- * and the exact-surface contract is the frozen four-tool baseline.
63
- */
117
+ /** Host source plane; the source kind and explicit grants freeze the exact realm tools. */
64
118
  sourcePlane?: GrowthSourcePlanePort;
65
119
  signal?: AbortSignal;
66
120
  /** Actual task context is data, never authority or independent success proof. */
67
- feedback?: import('@dsh-enhanced/assistant-delivery').OwnerForegroundLearningTask;
121
+ feedback?: import('@dsh-enhanced/assistant-delivery').OwnerForegroundLearningTask | import('./work-item-source.js').WorkItemUsageSource;
122
+ assertFirstModelAdmission?: () => void;
123
+ workItemAuthorization?: {
124
+ runId: string;
125
+ intentDigest: string;
126
+ definitionHash: string;
127
+ occurrenceId: string;
128
+ assertCurrent(): void;
129
+ };
68
130
  /** Host-only callback after the real Agent realm, model, tools and guards are pinned. */
69
- onSourceExecution?: (input: Pick<SourceGrowthRunBinding, 'model' | 'sessionId' | 'toolContractDigest' | 'executionContractDigest' | 'createdAt' | 'generationDeadlineAt' | 'creationAcceptance' | 'revisionAcceptance' | 'revisionRegressionAcceptance'>) => void | Promise<void>;
131
+ onSourceExecution?: (input: Pick<SourceGrowthRunBinding, 'model' | 'sessionId' | 'toolContractDigest' | 'executionContractDigest' | 'createdAt' | 'generationDeadlineAt' | 'creationAcceptance' | 'revisionAcceptance' | 'revisionRegressionAcceptance'>) => void | AnySourceGrowthRunBinding | Promise<void | AnySourceGrowthRunBinding>;
70
132
  /** Durable source expiry can shorten, but never extend, the Agent deadline. */
71
133
  generationDeadlineAt?: number;
72
134
  }
135
+ /**
136
+ * Project a bounded structural trajectory from the session's PTC log events.
137
+ * Deliberately reads only names, ids, times, error flags and byte lengths: the
138
+ * nested `arguments` and `content` carried by `tool/ptc-dispatch`/`-start`
139
+ * and the program source in `tool/call` never survive into the returned
140
+ * object, and unknown/malformed records are skipped rather than trusted.
141
+ * Bounded by the frozen tool allowlist and by plain integer counters.
142
+ */
143
+ export declare function ptcTrajectory(events: readonly unknown[], admittedToolNames: ReadonlySet<string>): GrowthPtcTrajectory;
144
+ /**
145
+ * Split the registry's presentation-agnostic visibility view into the frozen
146
+ * allowlist surface and the reserved PTC transport. `schemas(scope)` stays
147
+ * presentation-agnostic for everything the growth agent registered, but under
148
+ * `ptc` the Host registry appends its own reserved `run_code` definition.
149
+ * Keeping the split in one pure helper means the contract digest can never
150
+ * accidentally include the presentation transport (native and PTC runs of the
151
+ * same configuration persist the identical tool contract digest) while the
152
+ * fail-closed surface check can still require exactly one reserved transport.
153
+ */
154
+ export declare function splitGrowthToolSurface<T extends {
155
+ name: string;
156
+ }>(schemas: readonly T[]): {
157
+ surface: T[];
158
+ reserved: T[];
159
+ };
73
160
  /**
74
161
  * Create, run to idle and dispose exactly one bounded growth agent. Never
75
- * mounts a preset: the complete tool surface is the four growth_* realm tools,
162
+ * mounts a preset: the complete realm tool surface is frozen for this source,
76
163
  * and any extra visible tool fails closed before the prompt is submitted.
77
164
  */
78
165
  export declare function runGrowthAgent(ctx: Context, input: GrowthAgentInput): Promise<GrowthAgentRunResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"growth-agent.d.ts","sourceRoot":"","sources":["../src/growth-agent.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,sBAAsB,CAAC;IACpC,UAAU,gBAAgB;QACxB,yBAAyB,EAAE;YAAE,IAAI,EAAE,yBAAyB,CAAC;YAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAClG;CACF;AAID,OAAO,EAE0C,KAAK,sBAAsB,EAAE,MAAM,yCAAyC,CAAA;AAC7H,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAuD,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAKjH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAE1E,OAAO,KAAK,EAAE,sBAAsB,EAAgB,MAAM,gCAAgC,CAAA;AAC1F,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAA;AAC/D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAEL,KAAK,qBAAqB,EAG3B,MAAM,kBAAkB,CAAA;AA2CzB,eAAO,MAAM,aAAa,QAed,CAAA;AAWZ;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,QAgBxB,CAAA;AAEZ,eAAO,MAAM,qBAAqB,QAGtB,CAAA;AAEZ,eAAO,MAAM,sBAAsB,QAMvB,CAAA;AAEZ,eAAO,MAAM,sBAAsB,QAOvB,CAAA;AAEZ,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAA;IACxC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAA;IAClE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,KAAK,EAAE;QACd,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,eAAe,EAAE,MAAM,CAAA;QACvB,gBAAgB,EAAE,MAAM,CAAA;QACxB,eAAe,EAAE,MAAM,CAAA;QACvB,UAAU,EAAE,MAAM,CAAA;QAClB,SAAS,EAAE,MAAM,CAAA;KAClB,CAAA;IACD,2FAA2F;IAC3F,QAAQ,CAAC,eAAe,EAAE,wBAAwB,CAAA;CACnD;AAED,KAAK,KAAK,GAAG,IAAI,CAAC,qBAAqB,EAAE,mBAAmB,GAAG,oCAAoC,CAAC,CAAA;AACpG,KAAK,MAAM,GAAG,IAAI,CAAC,sBAAsB,EAAE,0BAA0B,GAAG,6BAA6B,GAAG,oCAAoC,CAAC,CAAA;AAG7I,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,eAAe,CAAA;IAC1B,MAAM,EAAE,4BAA4B,CAAA;IACpC,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC/B,KAAK,EAAE,KAAK,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,WAAW,CAAC,EAAE,qBAAqB,CAAA;IACnC,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,OAAO,kCAAkC,EAAE,2BAA2B,CAAA;IACjF,yFAAyF;IACzF,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,GAAG,WAAW,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,WAAW,GAAG,sBAAsB,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,8BAA8B,CAAC,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACjR,+EAA+E;IAC/E,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B;AA0pBD;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2OzG"}
1
+ {"version":3,"file":"growth-agent.d.ts","sourceRoot":"","sources":["../src/growth-agent.ts"],"names":[],"mappings":"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"}