@dsh-enhanced/assistant-goals 0.1.67 → 0.1.68

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
@@ -27,6 +27,8 @@ Host 须提供 `0.1.5-rc.3` 的 AgentRegistry、GoalService、SessionProjectionR
27
27
  maxContextChars: 12000
28
28
  verifyNativeRounds: false
29
29
  stepMaxDurationMs: 60000
30
+ # ownerIntent: true
31
+ # ownerPreparedAcceptance: true
30
32
  # backgroundWake:
31
33
  # ownerRouteId: local/owner
32
34
  # budgetId: goal-budget/owner
@@ -55,6 +57,41 @@ Host 须提供 `0.1.5-rc.3` 的 AgentRegistry、GoalService、SessionProjectionR
55
57
 
56
58
  在已认证 owner 的当前人类回合中,用 `goal_create {"objective":"完成九月交付报告","max_goal_rounds":2}` 创建目标。DSH 原生 `create_goal` 只接受 `source.kind: user`;Delivery 保留真实 `delivery` 来源,由本插件核验 owner 当前 turn 后调用原生 GoalService,不伪造直接用户消息。工具执行权限还须按现有 Host/Policy 授权 `goal_create`、`goal_context`、`goal_checkpoint` 和 `goal_control`。
57
59
 
60
+ ### 冻结认证 owner 原始意图(可选)
61
+
62
+ `ownerIntent: true` 时,`goal_create` 不再只信任模型给出的 `objective`。插件通过 Delivery 的 agent 作用域只读证明读取本次真实前台调用的人类原文(调用方不能自带 owner route id),按 4096 字节分页拼回全文(总上限 65,536 字节),要求供应商状态为 `frozen`、每页 attestation 与首次 proof 摘要相等、读完后 proof 仍未变化,并核对 task 的 session/scope/owner/binding 与当前 owner 回合并逐字要求 `objective` 出现在 owner 原文中(首次出现位置被冻结;改写、翻译、trim 不一致或未出现均拒绝)。冻结意图写入私有侧库 `databasePath + '.owner-intents'`,以业务目标 ID 和定义摘要为键;预算运行时还会在每次真实模型请求前要求 provider/model/reasoningEffort 与冻结 supplier 精确相等。Delivery 只接受当前 session 恰好匹配 1 条 owner route:0 条、多条、伪造或已结算调用、proof 中途变化、供应商非冻结都失败关闭且不创建原生目标。`goal_create` 若在 PTC 子调用中发起,Delivery 的未结算原生调用证明会拒绝,属预期失败关闭。未配置 `ownerIntent` 时完全保持原路径,不读取任何 foreground 证明 API;启用时 `databasePath` 必须是持久私有文件(`:memory:` 在启动时即拒绝)。
63
+
64
+ 冻结后的约束与数据面:
65
+
66
+ - **supplier pin 覆盖该 goal 内所有真实模型请求**:前台继续回合、scheduled wake 恢复后的模型切换、以及 `goal_strategy` 的 `investigate`/`review`/`compare` 子调用都必须与冻结的 provider/model/reasoningEffort 一致(缺省 effort 也视为一个值),否则在派发前被拒绝。需要改线路时只能新建目标,不能静默切换。
67
+ - **objective 不能被原地修改**:在已有冻结 intent 的 goal 上调用 `goal_control` 的 `edit` 会直接拒绝(`the objective is bound to the authenticated owner request; create a new goal to change it`);如需新目标请新建 goal。若通过其它原生入口绕过了 business control 并改变了定义,`ownerIntent()` 会因 `definition_digest` 不一致返回 `undefined`(stale binding),预算的 supplier pin 也会 fail-closed,绝不退化为“无 pin”。
68
+ - **新增数据面**:侧库 `databasePath + '.owner-intents'` 是私有 SQLite 文件(0600、WAL/SHM,打开时校验文件权限与精确 schema),每行最多保存 65,536 字节人类原文的冻结 JSON 与 digest;它不含凭据或工具参数,但属于新增的磁盘数据面,备份/清理策略应覆盖它。
69
+ - **失败回滚与崩溃窗口**:原生目标创建成功但侧库写入失败时,插件会尝试 `clear` 刚创建的原生目标:成功则报告“native goal was rolled back”,失败则报告“native goal exists without a frozen owner intent; inspect and clear it before use”。已知限制:若进程恰在 native create 与 side record 之间崩溃,会留下一个没有冻结证明的目标;恢复时必须先检查并清理,绝不能把它当作已冻结目标使用。
70
+ - **对端版本**:Delivery 必须提供 agent 作用域的 `inspectOwnerForegroundToolCallForAgent` / `readOwnerForegroundToolInputForAgent`;旧 Host 缺少这些只读 API 时,`ownerIntent: true` 会以 `owner intent proof is unavailable` fail-closed(不静默降级)。
71
+
72
+ ### Host 预封存目标验收(可选)
73
+
74
+ `ownerPreparedAcceptance: true` 时,目标验收不再依赖静态配置的 Verifier profile,而由 Host 在 owner scope 内用 `sealOwnerAcceptance(agent, goalId, { criteria, stepCriteria?, bounds, validityMs, preparer })` 预封存:
75
+
76
+ - **seal 是 Host-only 且不可变**:Goals 复用 owner scope 与 GoalStore 归属校验,构造该 goal 的确定性 goal-outcome task 身份,调用 Verifier 的 `registration.prepareOwnerContract` 封存,并 readback 校验 contract id/digest/task/objective/criteria/bounds 与 `profile.id === 'owner-prepared'`。相同 goal 的重复 seal 只在 criteria/stepCriteria/bounds/validity/preparer 完全一致时幂等返回;任何差异都 conflict,必须新建目标。
77
+ - **goal-outcome 只封存一次,goal-step 每次 run 封存**:whole-goal 合同绑定 business goal 与定义摘要;goal-step 合同在 `#admit` 中、`next()` 之前按当前 run 的真实 task 身份重新调 `prepareOwnerContract`(同一 run 重放幂等)。缺少 seal、stale definition digest、Verifier 缺少 prepared API、criteria 无已安装 authority 或合同期限无法覆盖本轮时,全部在模型请求前 fail-closed(零 worker 模型请求),错误信息含 `no sealed owner acceptance; seal before the first goal round` 等可诊断文本。
78
+ - **criteria 对 worker 可见但只读**:封存后的 criteria/bounds/validity/expiresAt 会出现在 `goal_context` 的验收条件中供模型规划,但 worker 不能修改或重新封存;修改必须由 Host 以新 goal 完成。混合 isolated 与普通 criteria 会被共享 wire 校验拒绝。
79
+ - **preparer 不参与判定**:Verifier 只校验 criteria 的 authority 已安装、可判定,不证明 criteria 语义充分;`preparer` 只是 Host 可信身份记录,不是验收结论。
80
+ - **objective 与数据面**:已有 seal 的 goal 不能通过 `goal_control` 的 `edit` 修改 objective(会抛 `the objective is bound to the protected owner acceptance; create a new goal to change it`);若通过其它原生入口绕过并改变 definition,seal 视为 stale 并在 preflight/prepare/admit 处 fail-closed。侧库 `databasePath + '.owner-acceptance'` 是私有 SQLite(0600/WAL/SHM),每行记录 goal_id、definition_digest、outcome contract id/digest、verifier 推导的 prepared profile digest、criteria/stepCriteria/bounds/validity/preparer 与 recorded_at;打开时逐行重解+digest 校验,篡改 fail-closed。
81
+ - **预授权创建不叠加**:prepared 模式与 `preauthorizedCreateMaxRounds` 的 bounded 预授权创建不组合;prepared 模式下 `preauthorizeCreate` 仍按静态 profile 判定并返回 false(有意 fail-closed,本能力不覆盖预授权创建),普通 `goal_create` 路径不受影响。
82
+ - **失败回滚与开关**:seal 请求通过本地校验后,若 Verifier 封存、readback 或侧库写入失败,会尝试 `clear` 刚创建的原生目标(复用 B1 模式);回滚失败则明确报告目标仍存在、必须先检查清理。重复 seal 的 criteria 冲突不会回滚已有健康目标。该开关实际消费还要求 `verifyNativeRounds` 与 `verifyGoalOutcome` 同时开启;否则 seal 会以 `owner prepared acceptance requires whole-goal verification` fail-closed。`ownerPreparedAcceptance` 默认 false,关闭时不调用任何 prepared API、保持现有 profile 行为;开启时 `databasePath` 必须是持久私有文件(`:memory:` 启动即拒绝)。对端 Verifier 必须提供 `prepareOwnerContract`,旧 peer 会以 `the goal verifier does not support owner-prepared acceptance` fail-closed。
83
+
84
+ ### 自然语言委托路径(prepared 模式)
85
+
86
+ `ownerPreparedAcceptance: true` 时,owner turn 的模型可以在 `goal_create` 中附带 `acceptance: { criteria, bounds, validity_ms? }` 作为**候选**准则:
87
+
88
+ - **criteria 只是候选人话,需要 Host authority 目录**:prepared 模式启用时注册只读工具 `goal_acceptance_catalog`(插件级注册,对所有会话可见且只读;不是 owner turn 专属),代理 Verifier 的脱敏目录(authority 的 id/digest/kind 以及 runner 的 workspace-relative artifactPath、isolated-runner 的 testSetIds、document 的 source ids、readback 的 objectId 等绑定提示;无 verifier/旧 peer 时返回可诊断错误)。模型必须先用它取得可用 authority 再构造 `goal_create` 的 `acceptance`。Goals 先做 exact-key/共享 wire 校验(数量、大小上限、isolated 混合、authority 引用形状),随后由独立 Verifier 在封存前用 `assertCriteriaDecidable` 判断 criteria 是否可判定;不可判定、缺失或形状非法都会使 goal_create 失败且不留下可用目标。criteria 会出现在系统上下文与 outcome conditions 中,worker 只读,不能修改或重新封存。
89
+ - **同一 owner turn 内完成创建与封存**:`native.create` → `#observe` → 真实 Verifier 封存 outcome 合同 → 写 `.owner-acceptance` 侧库;任一步失败复用 `native.clear` 回滚原生目标,错误区分 “the native goal was rolled back” 与 “without a sealed owner acceptance; inspect and clear it before use”。首轮 step 合同仍在 `#admit` 的 `next()` 之前按当前 run task 封存,失败即零 worker 模型请求。
90
+ - **validity**:省略 `validity_ms` 时默认 `max(bounds.maxDurationMs + 60s, 30 分钟)`(上限 24h);显式值必须满足 Verifier 的 1s–24h 且覆盖配置的 round + verification 窗口。
91
+ - **preparer**:自然语言路径固定使用 Host 常数标签 `assistant-goals-owner-turn`,digest 绑定本次 criteria/bounds 提案;Verifier 不记录也不校验该身份,只有 Goals 的 `.owner-acceptance` 侧库记录它。它不参与验收判定(可判定性由 Verifier 校验,语义充分性不由 preparer 证明)。
92
+ - **开关关闭**:`ownerPreparedAcceptance=false` 时传入 `acceptance` 会被明确拒绝(不静默忽略);不传时完全保持旧 profile 路径与既有 fail-closed 行为。
93
+ - **与 ownerIntent 组合**:`ownerIntent` 与 `ownerPreparedAcceptance` 可以同时开启;B1 的 owner 原文/供应商/binding 证明在 native.create 之前冻结,B2 seal 成功后再记录 owner intent。任一失败都会回滚原生目标并给出可诊断错误;seal 失败时 side 库不落记录,intent 记录失败时按现有 rollback 语义处理(原生目标被 clear,已封存侧库行不再可用)。
94
+
58
95
  插件在 `goal/changed` 时建立业务记录。安装前已有或身份不明时创建的目标不会被追认,以免归属转移泄漏历史。创建不覆盖尚未完成的原生目标;原生状态为 complete 后可按 DSH 规则创建新的 GoalId,旧业务记录仍保留为待验收;如果目标已经创建而业务索引失败,会明确报告部分完成,先检查原生目标再重试。已有 Host goal-round-driver 若已启用,会按其原生规则继续执行新目标;本插件自身不启用该 driver。
59
96
 
60
97
  1. `goal_context {}` 列出最近的目标摘要及版本;最多读取 50 条,输出受字符预算约束,`truncated` 明确标记省略。
@@ -151,7 +188,7 @@ executionBudget:
151
188
 
152
189
  可选 `preauthorizedSchedule: true` 允许有限隔离作用域中的精确 `goal_schedule` 免逐条审批;默认关闭,不改变工具默认注册或省略 `wake_at` 的检查行为。开启要求持久 `backgroundWake`、累计预算、步骤与全目标独立验收,并在每次调用核对当前 owner 人类回合、原 Session/Goal/revision、剩余预算、精确模型 meter、owner route 和两个隔离验收 profile。免审批参数必须恰为 `goal_id`、`expected_revision`、`wake_at`;验收条件必须覆盖唤醒的有效期限。该只读预检查不创建预算或验收任务,实际执行仍经过 Policy 授权和原有 CAS;它不开放 `goal_control` 或其他目标操作。
153
190
 
154
- 维护者可用 `DSH_ISOLATION_TEST_IMAGE=sha256:<本机已有镜像摘要> pnpm test:autonomy:wake` 验证实际安装、进程重启、撤权拒绝及中断后不重放;本机 Chromium 可通过 `PLAYWRIGHT_CHROMIUM_EXECUTABLE` 指定。该测试显式添加固定验收条件、精确 owner route、后台 Policy 和确定性模型计量器,不证明默认安装已具备生产模型计量或完整自治能力。
191
+ 维护者的实际安装/进程重启/撤权拒绝/中断不重放端到端用例是 `pnpm test:autonomy:wake`;该 Playwright harness 仍构造 Docker 时代的 `--isolation-image` 配置,Docker 后端移除后已被 linux-native 校验 fail-closed、不在 CI/`pnpm check` 内,迁移到 prepared LinuxRuntime(`DSH_ISOLATION_TEST_NATIVE_RUNTIME`)属下一批,迁移前此命令不可直接运行。本机 Chromium 可通过 `PLAYWRIGHT_CHROMIUM_EXECUTABLE` 指定。该测试显式添加固定验收条件、精确 owner route、后台 Policy 和确定性模型计量器,不证明默认安装已具备生产模型计量或完整自治能力。
155
192
 
156
193
  后台恢复要求 Delivery 提供版本 1 的终态验收等待能力;旧版缺少该能力时在调度与执行边界拒绝。原生 idle 或达到轮次上限不是验收结束:Delivery 保留原 Agent 和会话租约,等待这个 Agent 的步骤及全目标验收,随后重新核对授权、期限和状态。最后一轮可先达到轮次上限,再凭对应 owner/定义/实际执行的独立全目标回执转为 complete;不能仅凭较大的 revision 推断完成。
157
194
 
package/lib/budget.d.ts CHANGED
@@ -3,6 +3,7 @@ import type { Agent } from '@deepseek-ai/dsh-agent';
3
3
  import type { GenerateOptions } from '@deepseek-ai/dsh-llm';
4
4
  import type { GoalBudgetRoute } from './budget-store.js';
5
5
  import type { GoalExecutionRun, GoalRecord } from './types.js';
6
+ import type { GoalOwnerIntentSupplier } from './owner-intent.js';
6
7
  export type GoalBudgetDelegateResolver = (agent: Agent) => {
7
8
  parent: Agent;
8
9
  runId: string;
@@ -52,11 +53,15 @@ export declare class GoalBudgetRuntime {
52
53
  private readonly ctx;
53
54
  readonly config: Readonly<GoalBudgetConfig>;
54
55
  private readonly current;
56
+ /** Read-only lookup of an owner-frozen supplier; absent means no pin for that goal. */
57
+ private readonly frozenSupplier?;
55
58
  constructor(ctx: Context, path: string, config: Readonly<GoalBudgetConfig>, current: (agent: Agent) => {
56
59
  record: GoalRecord;
57
60
  run: GoalExecutionRun;
58
61
  signal: AbortSignal;
59
- } | undefined);
62
+ } | undefined,
63
+ /** Read-only lookup of an owner-frozen supplier; absent means no pin for that goal. */
64
+ frozenSupplier?: ((record: GoalRecord) => GoalOwnerIntentSupplier | undefined) | undefined);
60
65
  /** Host-only resolver for our fixed no-tools native strategy children. */
61
66
  registerDelegateResolver(resolve: GoalBudgetDelegateResolver): () => void;
62
67
  hasMeter: (route: {
@@ -1 +1 @@
1
- {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../src/budget.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAA2B,MAAM,sBAAsB,CAAA;AAEpF,OAAO,KAAK,EAAqC,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC3F,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AAG9D,MAAM,MAAM,0BAA0B,GAAG,CAAC,KAAK,EAAE,KAAK,KAAK;IAAE,MAAM,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAA;AAEtL,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;IAChF,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;CAC3E;AACD,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,OAAO,CAAA;IACb,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,sBAAsB,EAAE,MAAM,CAAA;IACzF,gFAAgF;IAChF,MAAM,EAAE,SAAS,eAAe,EAAE,CAAA;CACnC;AACD,MAAM,MAAM,gBAAgB,GAAG,qBAAqB,GAAG,qBAAqB,CAAA;AAE5E,0FAA0F;AAC1F,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;IAC3C,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IACxE,0FAA0F;IAC1F,8BAA8B,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7C,+BAA+B,EAAE,MAAM,GAAG,IAAI,CAAA;CAC/C;AACD,MAAM,MAAM,iBAAiB,GAAG,QAAQ,CAAC;IAAE,KAAK,EAAE,WAAW,GAAG,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,YAAY,CAAC;IAAC,UAAU,EAAE,OAAO,CAAA;CAAE,CAAC,CAAA;AAIjK,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,gBAAgB,GAAG,QAAQ,CAAC,gBAAgB,CAAC,CAe5F;AAkCD,mGAAmG;AACnG,qBAAa,iBAAiB;;IAUhB,OAAO,CAAC,QAAQ,CAAC,GAAG;IAAyB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC;IAClG,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADG,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAW,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EACjF,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK;QAAE,MAAM,EAAE,UAAU,CAAC;QAAC,GAAG,EAAE,gBAAgB,CAAC;QAAC,MAAM,EAAE,WAAW,CAAA;KAAE,GAAG,SAAS;IAqI5H,0EAA0E;IAC1E,wBAAwB,CAAC,OAAO,EAAE,0BAA0B,GAAG,MAAM,IAAI;IAqBzE,QAAQ,GAAI,OAAO;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,KAAG,OAAO,CAKjE;IAED,QAAQ,GAAI,OAAO,eAAe,KAAG,CAAC,MAAM,IAAI,CAAC,CAchD;IACD,OAAO,GAAI,QAAQ,UAAU,oDAAgD;IAC7E,QAAQ,GAAI,QAAQ,UAAU,EAAE,OAAO,MAAM,8DAAuD;IACpG,WAAW,GAAI,OAAO,KAAK,KAAG,iBAAiB,GAAG,SAAS,CAAiC;IAC5F,2FAA2F;IAC3F,OAAO,GAAI,QAAQ,UAAU,oDAA0F;IACvH,MAAM;;;;MAAmG;CA6B1G"}
1
+ {"version":3,"file":"budget.d.ts","sourceRoot":"","sources":["../src/budget.ts"],"names":[],"mappings":"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"}
package/lib/budget.js CHANGED
@@ -64,6 +64,7 @@ export class GoalBudgetRuntime {
64
64
  ctx;
65
65
  config;
66
66
  current;
67
+ frozenSupplier;
67
68
  #store;
68
69
  #meters = new Map();
69
70
  #inflight = new Map();
@@ -72,10 +73,13 @@ export class GoalBudgetRuntime {
72
73
  #lastFailures = new WeakMap();
73
74
  #active = true;
74
75
  #delegateResolver;
75
- constructor(ctx, path, config, current) {
76
+ constructor(ctx, path, config, current,
77
+ /** Read-only lookup of an owner-frozen supplier; absent means no pin for that goal. */
78
+ frozenSupplier) {
76
79
  this.ctx = ctx;
77
80
  this.config = config;
78
81
  this.current = current;
82
+ this.frozenSupplier = frozenSupplier;
79
83
  this.#store = new GoalBudgetStore(path);
80
84
  ctx.on('agent/request', async ({ agent }, next) => {
81
85
  const diagnostic = isStrategyChild(agent);
@@ -87,6 +91,7 @@ export class GoalBudgetRuntime {
87
91
  const bound = this.#current(agent);
88
92
  if (bound === undefined)
89
93
  return request;
94
+ this.#assertSupplier(bound.record, request);
90
95
  const budget = this.inspect(bound.record);
91
96
  if (budget.modelCalls >= budget.limits.modelCalls || (budget.limits.mode === 'tokens' && budget.outputTokens >= budget.limits.outputTokens)) {
92
97
  if (diagnostic)
@@ -160,6 +165,7 @@ export class GoalBudgetRuntime {
160
165
  let dispatched = false;
161
166
  try {
162
167
  stage = 'meter';
168
+ this.#assertSupplier(bound.record, options);
163
169
  if (this.#inflight.has(agent) || (this.config.mode !== 'calls' && meter === undefined))
164
170
  fail();
165
171
  if (this.config.mode === 'calls' && !this.#routeAllowed(options))
@@ -332,6 +338,23 @@ export class GoalBudgetRuntime {
332
338
  : { mode: 'tokens', routes: [], modelCalls: this.config.modelCalls, toolCalls: this.config.toolCalls, inputTokens: this.config.inputTokens, outputTokens: this.config.outputTokens, costUsdMicros: this.config.costUsdMicros ?? null, expiresAt: record.createdAt + this.config.durationMs };
333
339
  }
334
340
  #routeAllowed(route) { return this.config.mode === 'calls' && this.config.routes.some(item => item.provider === route.provider && item.model === route.model); }
341
+ #pinnedSupplier(record) {
342
+ try {
343
+ return this.frozenSupplier?.(record);
344
+ }
345
+ catch {
346
+ fail();
347
+ }
348
+ }
349
+ /** Exact provider/model/effort pin; a goal without a frozen owner intent is never rejected. */
350
+ #assertSupplier(record, route) {
351
+ const supplier = this.#pinnedSupplier(record);
352
+ if (supplier === undefined)
353
+ return;
354
+ if (route.provider !== supplier.provider || route.model !== supplier.model || route.reasoningEffort !== supplier.reasoningEffort) {
355
+ throw new Error('assistant-goals: model supplier differs from the frozen owner supplier');
356
+ }
357
+ }
335
358
  #assert(agent, run, meter, options) {
336
359
  const bound = this.#current(agent);
337
360
  if (!this.#active || this.ctx.get('agents')?.get(agent.id) !== agent
package/lib/budget.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"budget.js","sourceRoot":"","sources":["../src/budget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"budget.js","sourceRoot":"","sources":["../src/budget.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { Agent } from '@deepseek-ai/dsh-agent';
3
3
  import type { GoalArtifactAdmission, TaskAcceptanceContract } from '@dsh-enhanced/task-acceptance-contract';
4
4
  import type { AcceptanceHandle, AcceptedExecution, TaskAcceptanceRegistration } from '@dsh-enhanced/assistant-verifier';
5
5
  import type { GoalExecutionRun, GoalRecord, GoalScope } from './types.js';
6
+ import { type GoalOwnerAcceptanceSeal } from './owner-acceptance.js';
6
7
  export interface GoalRoundTiming {
7
8
  maxDurationMs: number;
8
9
  active?: {
@@ -22,13 +23,18 @@ export declare class GoalExecutionRuntime {
22
23
  private readonly current;
23
24
  private readonly outcome?;
24
25
  private readonly assertDependencies;
26
+ /** Prepared-acceptance mode: every step contract is Host-sealed per run. */
27
+ private readonly preparedAcceptance;
28
+ private readonly sealFor;
25
29
  constructor(ctx: Context, path: string | undefined, maxDurationMs: number, current: (agent: Agent, consume?: boolean) => {
26
30
  scope: GoalScope;
27
31
  record: GoalRecord;
28
32
  }, outcome?: {
29
33
  prepare(agent: Agent, run: GoalExecutionRun): void;
30
34
  settled(agent: Agent, run: GoalExecutionRun, assertCurrent: () => void): Promise<void>;
31
- } | undefined, assertDependencies?: (record: GoalRecord) => void);
35
+ } | undefined, assertDependencies?: (record: GoalRecord) => void,
36
+ /** Prepared-acceptance mode: every step contract is Host-sealed per run. */
37
+ preparedAcceptance?: () => boolean, sealFor?: (record: GoalRecord) => GoalOwnerAcceptanceSeal | undefined);
32
38
  generation: () => string;
33
39
  register: (registration: TaskAcceptanceRegistration) => (() => void);
34
40
  inspect: (input: TaskAcceptanceContract) => Promise<AcceptedExecution | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"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"}
package/lib/execution.js CHANGED
@@ -2,6 +2,7 @@ import { randomUUID } from 'node:crypto';
2
2
  import { isDeepStrictEqual } from 'node:util';
3
3
  import { acceptanceDigest, validateTaskAcceptanceContract } from '@dsh-enhanced/task-acceptance-contract';
4
4
  import { GoalExecutionStore } from './execution-store.js';
5
+ import { preparedRegistration } from './owner-acceptance.js';
5
6
  /** Observes actual admitted native rounds; never queues prompts or accepts model verdicts. */
6
7
  export class GoalExecutionRuntime {
7
8
  ctx;
@@ -9,6 +10,8 @@ export class GoalExecutionRuntime {
9
10
  current;
10
11
  outcome;
11
12
  assertDependencies;
13
+ preparedAcceptance;
14
+ sealFor;
12
15
  #generation = randomUUID();
13
16
  #store;
14
17
  #rounds = new Map();
@@ -19,12 +22,16 @@ export class GoalExecutionRuntime {
19
22
  #pendingGoalRoundAgents = new Set();
20
23
  #sink;
21
24
  #active = true;
22
- constructor(ctx, path, maxDurationMs, current, outcome, assertDependencies = () => { }) {
25
+ constructor(ctx, path, maxDurationMs, current, outcome, assertDependencies = () => { },
26
+ /** Prepared-acceptance mode: every step contract is Host-sealed per run. */
27
+ preparedAcceptance = () => false, sealFor = () => undefined) {
23
28
  this.ctx = ctx;
24
29
  this.maxDurationMs = maxDurationMs;
25
30
  this.current = current;
26
31
  this.outcome = outcome;
27
32
  this.assertDependencies = assertDependencies;
33
+ this.preparedAcceptance = preparedAcceptance;
34
+ this.sealFor = sealFor;
28
35
  if (path !== undefined) {
29
36
  this.#store = new GoalExecutionStore(path);
30
37
  this.#store.recoverIncomplete();
@@ -451,11 +458,18 @@ export class GoalExecutionRuntime {
451
458
  });
452
459
  if (prepared.dispatchedAt !== undefined || prepared.execution !== undefined)
453
460
  throw new Error('assistant-goals: prior dispatch requires reconciliation');
454
- const handle = registration.prepare({ scope: { workspace: scope.workspace, preset: scope.preset },
455
- owner: { principalRecordId: scope.principalRecordId, principalVersion: scope.principalVersion },
456
- task: prepared.intent.task, objective: prepared.intent.objective });
457
- if (handle === null)
458
- throw new Error('assistant-goals: no exact goal-step acceptance profile');
461
+ let handle;
462
+ if (this.preparedAcceptance()) {
463
+ handle = this.#preparedStepHandle(registration, scope, record, prepared.intent.task, prepared.intent.objective, prepared.intent.admission.expiresAt);
464
+ }
465
+ else {
466
+ const selected = registration.prepare({ scope: { workspace: scope.workspace, preset: scope.preset },
467
+ owner: { principalRecordId: scope.principalRecordId, principalVersion: scope.principalVersion },
468
+ task: prepared.intent.task, objective: prepared.intent.objective });
469
+ if (selected === null)
470
+ throw new Error('assistant-goals: no exact goal-step acceptance profile');
471
+ handle = selected;
472
+ }
459
473
  store.bindAcceptance(runId, handle);
460
474
  const round = { agent, turn, run: store.get(runId), handle, registration, signal, finishing: false,
461
475
  timer: setTimeout(() => { this.#cancel(round); this.#track(this.#finish(round, false)); }, this.maxDurationMs),
@@ -480,6 +494,37 @@ export class GoalExecutionRuntime {
480
494
  throw error;
481
495
  }
482
496
  }
497
+ /** Seal the prepared goal-step contract for one exact run before any request. */
498
+ #preparedStepHandle(registration, scope, record, task, objective, admissionExpiresAt) {
499
+ const seal = this.sealFor(record);
500
+ if (seal === undefined)
501
+ throw new Error('assistant-goals: no sealed owner acceptance; seal before the first goal round');
502
+ const prepared = preparedRegistration(registration);
503
+ if (prepared === undefined)
504
+ throw new Error('assistant-goals: the goal verifier does not support owner-prepared acceptance');
505
+ const now = Date.now();
506
+ const remaining = seal.outcomeExpiresAt - now;
507
+ if (!(remaining > admissionExpiresAt - now + seal.bounds.maxDurationMs)) {
508
+ throw new Error('assistant-goals: sealed owner acceptance cannot cover this goal round; reseal or create a new goal');
509
+ }
510
+ const validityMs = Math.floor(Math.min(seal.validityMs, remaining));
511
+ if (validityMs < 1_000)
512
+ throw new Error('assistant-goals: sealed owner acceptance cannot cover this goal round; reseal or create a new goal');
513
+ const accepted = prepared.prepareOwnerContract({ scope: { workspace: scope.workspace, preset: scope.preset },
514
+ owner: { principalRecordId: scope.principalRecordId, principalVersion: scope.principalVersion }, task, objective,
515
+ criteria: seal.stepCriteria, bounds: seal.bounds, validityMs, preparer: seal.preparer });
516
+ const verifier = this.ctx.get('assistantVerifier', false);
517
+ const contract = verifier?.inspectAcceptedTask?.(accepted.contractId)?.contract;
518
+ if (contract === undefined || contract.id !== accepted.contractId || contract.digest !== accepted.contractDigest
519
+ || contract.task.kind !== 'goal-step' || acceptanceDigest(contract.task) !== acceptanceDigest(task)
520
+ || contract.objective !== objective || acceptanceDigest(contract.criteria) !== acceptanceDigest(seal.stepCriteria)
521
+ || acceptanceDigest(contract.bounds) !== acceptanceDigest(seal.bounds)
522
+ || contract.profile.id !== 'owner-prepared' || contract.profile.version !== 1
523
+ || contract.expiresAt < admissionExpiresAt + seal.bounds.maxDurationMs) {
524
+ throw new Error('assistant-goals: sealed owner acceptance readback failed');
525
+ }
526
+ return accepted;
527
+ }
483
528
  #assertRound(round, terminal = false, consume = true) {
484
529
  if (Date.now() >= round.run.intent.admission.expiresAt)
485
530
  throw new Error('assistant-goals: step admission expired');
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../src/execution.ts"],"names":[],"mappings":"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"}