@sema-agent/sdk 0.0.75 → 0.0.77

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.
Files changed (171) hide show
  1. package/dist/client.d.ts +48 -0
  2. package/dist/client.d.ts.map +1 -1
  3. package/dist/client.js +55 -2
  4. package/dist/client.js.map +1 -1
  5. package/dist/control-client.d.ts +21 -0
  6. package/dist/control-client.d.ts.map +1 -1
  7. package/dist/control-client.js +42 -1
  8. package/dist/control-client.js.map +1 -1
  9. package/dist/control-types.d.ts +108 -0
  10. package/dist/control-types.d.ts.map +1 -1
  11. package/dist/control-types.js +15 -0
  12. package/dist/control-types.js.map +1 -1
  13. package/dist/errors.d.ts +88 -2
  14. package/dist/errors.d.ts.map +1 -1
  15. package/dist/errors.js +105 -8
  16. package/dist/errors.js.map +1 -1
  17. package/dist/events.d.ts +214 -20
  18. package/dist/events.d.ts.map +1 -1
  19. package/dist/events.js +5 -0
  20. package/dist/events.js.map +1 -1
  21. package/dist/health.d.ts +44 -0
  22. package/dist/health.d.ts.map +1 -1
  23. package/dist/health.js +32 -0
  24. package/dist/health.js.map +1 -1
  25. package/dist/idempotency.d.ts +8 -0
  26. package/dist/idempotency.d.ts.map +1 -1
  27. package/dist/idempotency.js +8 -0
  28. package/dist/idempotency.js.map +1 -1
  29. package/dist/index.d.ts +19 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +13 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/resources/approvals.d.ts +43 -0
  34. package/dist/resources/approvals.d.ts.map +1 -1
  35. package/dist/resources/approvals.js +23 -3
  36. package/dist/resources/approvals.js.map +1 -1
  37. package/dist/resources/assistant.d.ts +23 -0
  38. package/dist/resources/assistant.d.ts.map +1 -1
  39. package/dist/resources/assistant.js +22 -0
  40. package/dist/resources/assistant.js.map +1 -1
  41. package/dist/resources/control/auth-providers.d.ts +17 -0
  42. package/dist/resources/control/auth-providers.d.ts.map +1 -1
  43. package/dist/resources/control/auth-providers.js +6 -0
  44. package/dist/resources/control/auth-providers.js.map +1 -1
  45. package/dist/resources/control/config.d.ts +22 -0
  46. package/dist/resources/control/config.d.ts.map +1 -1
  47. package/dist/resources/control/config.js +12 -0
  48. package/dist/resources/control/config.js.map +1 -1
  49. package/dist/resources/control/fleet.d.ts +15 -0
  50. package/dist/resources/control/fleet.d.ts.map +1 -1
  51. package/dist/resources/control/fleet.js +8 -0
  52. package/dist/resources/control/fleet.js.map +1 -1
  53. package/dist/resources/control/images.d.ts +20 -0
  54. package/dist/resources/control/images.d.ts.map +1 -1
  55. package/dist/resources/control/images.js +10 -0
  56. package/dist/resources/control/images.js.map +1 -1
  57. package/dist/resources/control/lifecycle.d.ts +8 -0
  58. package/dist/resources/control/lifecycle.d.ts.map +1 -1
  59. package/dist/resources/control/lifecycle.js +3 -0
  60. package/dist/resources/control/lifecycle.js.map +1 -1
  61. package/dist/resources/control/publish.d.ts +12 -0
  62. package/dist/resources/control/publish.d.ts.map +1 -1
  63. package/dist/resources/control/publish.js +6 -0
  64. package/dist/resources/control/publish.js.map +1 -1
  65. package/dist/resources/control/secrets.d.ts +28 -0
  66. package/dist/resources/control/secrets.d.ts.map +1 -1
  67. package/dist/resources/control/secrets.js +16 -0
  68. package/dist/resources/control/secrets.js.map +1 -1
  69. package/dist/resources/control/users.d.ts +22 -0
  70. package/dist/resources/control/users.d.ts.map +1 -1
  71. package/dist/resources/control/users.js +12 -0
  72. package/dist/resources/control/users.js.map +1 -1
  73. package/dist/resources/control/versioning.d.ts +12 -0
  74. package/dist/resources/control/versioning.d.ts.map +1 -1
  75. package/dist/resources/control/versioning.js +6 -0
  76. package/dist/resources/control/versioning.js.map +1 -1
  77. package/dist/resources/control/workers.d.ts +14 -0
  78. package/dist/resources/control/workers.d.ts.map +1 -1
  79. package/dist/resources/control/workers.js +7 -0
  80. package/dist/resources/control/workers.js.map +1 -1
  81. package/dist/resources/elicitations.d.ts +43 -0
  82. package/dist/resources/elicitations.d.ts.map +1 -1
  83. package/dist/resources/elicitations.js +8 -0
  84. package/dist/resources/elicitations.js.map +1 -1
  85. package/dist/resources/fleet.d.ts +101 -0
  86. package/dist/resources/fleet.d.ts.map +1 -1
  87. package/dist/resources/fleet.js +27 -4
  88. package/dist/resources/fleet.js.map +1 -1
  89. package/dist/resources/images.d.ts +34 -0
  90. package/dist/resources/images.d.ts.map +1 -1
  91. package/dist/resources/images.js +29 -3
  92. package/dist/resources/images.js.map +1 -1
  93. package/dist/resources/leader.d.ts +10 -0
  94. package/dist/resources/leader.d.ts.map +1 -1
  95. package/dist/resources/leader.js +4 -0
  96. package/dist/resources/leader.js.map +1 -1
  97. package/dist/resources/memory.d.ts +37 -0
  98. package/dist/resources/memory.d.ts.map +1 -1
  99. package/dist/resources/memory.js +28 -0
  100. package/dist/resources/memory.js.map +1 -1
  101. package/dist/resources/models.d.ts +12 -0
  102. package/dist/resources/models.d.ts.map +1 -1
  103. package/dist/resources/models.js +4 -0
  104. package/dist/resources/models.js.map +1 -1
  105. package/dist/resources/ops.d.ts +16 -0
  106. package/dist/resources/ops.d.ts.map +1 -1
  107. package/dist/resources/ops.js +6 -0
  108. package/dist/resources/ops.js.map +1 -1
  109. package/dist/resources/policy.d.ts +8 -0
  110. package/dist/resources/policy.d.ts.map +1 -1
  111. package/dist/resources/policy.js +1 -0
  112. package/dist/resources/policy.js.map +1 -1
  113. package/dist/resources/questions.d.ts +57 -0
  114. package/dist/resources/questions.d.ts.map +1 -1
  115. package/dist/resources/questions.js +9 -0
  116. package/dist/resources/questions.js.map +1 -1
  117. package/dist/resources/runs.d.ts +147 -0
  118. package/dist/resources/runs.d.ts.map +1 -1
  119. package/dist/resources/runs.js +129 -2
  120. package/dist/resources/runs.js.map +1 -1
  121. package/dist/resources/session-sync.d.ts +61 -0
  122. package/dist/resources/session-sync.d.ts.map +1 -1
  123. package/dist/resources/session-sync.js +54 -1
  124. package/dist/resources/session-sync.js.map +1 -1
  125. package/dist/resources/sessions.d.ts +74 -0
  126. package/dist/resources/sessions.d.ts.map +1 -1
  127. package/dist/resources/sessions.js +64 -2
  128. package/dist/resources/sessions.js.map +1 -1
  129. package/dist/resources/side-query.d.ts +18 -0
  130. package/dist/resources/side-query.d.ts.map +1 -1
  131. package/dist/resources/side-query.js +1 -0
  132. package/dist/resources/side-query.js.map +1 -1
  133. package/dist/resources/tasks.d.ts +19 -0
  134. package/dist/resources/tasks.d.ts.map +1 -1
  135. package/dist/resources/tasks.js +21 -2
  136. package/dist/resources/tasks.js.map +1 -1
  137. package/dist/resources/tool-approvals.d.ts +60 -0
  138. package/dist/resources/tool-approvals.d.ts.map +1 -1
  139. package/dist/resources/tool-approvals.js +10 -0
  140. package/dist/resources/tool-approvals.js.map +1 -1
  141. package/dist/resources/trace.d.ts +23 -0
  142. package/dist/resources/trace.d.ts.map +1 -1
  143. package/dist/resources/trace.js +27 -2
  144. package/dist/resources/trace.js.map +1 -1
  145. package/dist/resources/usage.d.ts +21 -0
  146. package/dist/resources/usage.d.ts.map +1 -1
  147. package/dist/resources/usage.js +8 -0
  148. package/dist/resources/usage.js.map +1 -1
  149. package/dist/resources/workflows.d.ts +48 -0
  150. package/dist/resources/workflows.d.ts.map +1 -1
  151. package/dist/resources/workflows.js +40 -3
  152. package/dist/resources/workflows.js.map +1 -1
  153. package/dist/settings.d.ts +90 -0
  154. package/dist/settings.d.ts.map +1 -1
  155. package/dist/settings.js +24 -0
  156. package/dist/settings.js.map +1 -1
  157. package/dist/sse.d.ts +36 -0
  158. package/dist/sse.d.ts.map +1 -1
  159. package/dist/sse.js +53 -8
  160. package/dist/sse.js.map +1 -1
  161. package/dist/sync.d.ts +56 -0
  162. package/dist/sync.d.ts.map +1 -1
  163. package/dist/sync.js +48 -4
  164. package/dist/sync.js.map +1 -1
  165. package/dist/transport.d.ts +32 -0
  166. package/dist/transport.d.ts.map +1 -1
  167. package/dist/transport.js +40 -8
  168. package/dist/transport.js.map +1 -1
  169. package/dist/types.d.ts +709 -1
  170. package/dist/types.d.ts.map +1 -1
  171. package/package.json +1 -1
@@ -3,6 +3,10 @@ export class ModelsResource {
3
3
  constructor(t) {
4
4
  this.t = t;
5
5
  }
6
+ /** GET /v1/models — 非密钥模型目录。信封 `{models, default}`(`default`=部署默认模型 id,仅展示用)。
7
+ * filter 无(目录小、全列);失败由 caller fail-safe(空目录 → picker 不显,同 images 范式)。
8
+ * 每条 `ModelInfo` 现带 E4 `contextWindow`/`maxOutputTokens`(%-上下文仪表分母)+ E7 `supportedEffortLevels`
9
+ * (`/effort` picker 选项,仅 reasoning 模型)—— 均 SHIPPED 自 service,soft-degrade(未知则缺)。 */
6
10
  async list(opts) {
7
11
  return this.t.request({ method: "GET", path: "/v1/models", signal: opts?.signal });
8
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/resources/models.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAM7C,KAAK,CAAC,IAAI,CAAC,IAA+B;QACxC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACF"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/resources/models.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;;;yFAGqF;IACrF,KAAK,CAAC,IAAI,CAAC,IAA+B;QACxC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACF"}
@@ -1,22 +1,34 @@
1
+ /** ops — 运维观测只读面三件(server 真码实拆,SDK 全覆盖批 2026-07-17):
2
+ * metrics — `/metrics`(Prometheus 文本)+ `/metrics/summary` + `/metrics/plan-cache`(server.ts:960 区)。
3
+ * 鉴权=全量 authToken **或** 只读 metricsToken(server 侧双门;SDK 用构造时的 authToken——
4
+ * metricsToken-only 部署请以该 token 作 authToken 构造一个只读 client)。
5
+ * outcomes — `GET /v1/outcomes`(server.ts:4418):任务结局台账;多租下 operator-only(403),File sink=501
6
+ * (诚实:直读 JSONL 数据集)。
7
+ * sendfileLinks — `GET /v1/sendfile-links`(server.ts:4620):SendUserFile 分发链接台账;principal 调用方
8
+ * 钉死本人 scope(?scope= 被忽略),fleet 凭证可选 scope(缺省单用户哨兵 "_")。 */
1
9
  import type { Transport } from "../transport.js";
2
10
  export declare class MetricsResource {
3
11
  private readonly t;
4
12
  constructor(t: Transport);
13
+ /** GET /metrics — Prometheus 文本原文(`text/plain; version=0.0.4`)。404=metrics 关闭。 */
5
14
  prometheus(opts?: {
6
15
  signal?: AbortSignal;
7
16
  }): Promise<string>;
17
+ /** GET /metrics/summary — 指标汇总 JSON(`{model, ...metrics.summarize()}`,开集)。 */
8
18
  summary(opts?: {
9
19
  signal?: AbortSignal;
10
20
  }): Promise<{
11
21
  model: string;
12
22
  [k: string]: unknown;
13
23
  }>;
24
+ /** GET /metrics/plan-cache — per-scope objective 复发探针 dump(core design/42;开集)。 */
14
25
  planCache(opts?: {
15
26
  signal?: AbortSignal;
16
27
  }): Promise<{
17
28
  scopes: Record<string, unknown>;
18
29
  }>;
19
30
  }
31
+ /** 一条任务结局行(server outcomeSink.summary 投影;开集——机械信号只读底座,design/73 §7)。 */
20
32
  export interface OutcomeRow {
21
33
  taskSignature?: string;
22
34
  [k: string]: unknown;
@@ -24,6 +36,7 @@ export interface OutcomeRow {
24
36
  export declare class OutcomesResource {
25
37
  private readonly t;
26
38
  constructor(t: Transport);
39
+ /** GET /v1/outcomes?signature=&includeAborted= — 结局台账 `{outcomes: rows}`。 */
27
40
  list(opts?: {
28
41
  signature?: string;
29
42
  includeAborted?: boolean;
@@ -32,6 +45,7 @@ export declare class OutcomesResource {
32
45
  outcomes: OutcomeRow[];
33
46
  }>;
34
47
  }
48
+ /** 一条 sendfile 分发链接台账行(server sendFileLedger 投影;开集)。 */
35
49
  export interface SendfileLinkRow {
36
50
  id: string;
37
51
  [k: string]: unknown;
@@ -39,6 +53,8 @@ export interface SendfileLinkRow {
39
53
  export declare class SendfileLinksResource {
40
54
  private readonly t;
41
55
  constructor(t: Transport);
56
+ /** GET /v1/sendfile-links — 台账分页。`limit` 1..100(缺省 50);`before` = 上页 `nextBefore`/行 `id`
57
+ * (uuidv7,坏形 400 fail-loud——F6 修后绝不静默降级);`scope` 仅 fleet 凭证生效。 */
42
58
  list(opts?: {
43
59
  limit?: number;
44
60
  before?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAGnC,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAO5D,OAAO,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAK1F,SAAS,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAG/F;AAGD,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAGnC,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;CAO/H;AAGD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,qBAAa,qBAAqB;IACpB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAInC,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CAQ/K"}
1
+ {"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"AAAA;;;;;;;yEAOyE;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC,kFAAkF;IAC5E,UAAU,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAMlE,8EAA8E;IACxE,OAAO,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAIhG,kFAAkF;IAC5E,SAAS,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAG/F;AAED,wEAAwE;AACxE,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,qBAAa,gBAAgB;IACf,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC,6EAA6E;IACvE,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,UAAU,EAAE,CAAA;KAAE,CAAC;CAO/H;AAED,wDAAwD;AACxD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,qBAAa,qBAAqB;IACpB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;uEACmE;IAC7D,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;CAQ/K"}
@@ -3,15 +3,18 @@ export class MetricsResource {
3
3
  constructor(t) {
4
4
  this.t = t;
5
5
  }
6
+ /** GET /metrics — Prometheus 文本原文(`text/plain; version=0.0.4`)。404=metrics 关闭。 */
6
7
  async prometheus(opts) {
7
8
  const res = await this.t.openRaw({ method: "GET", path: "/metrics", accept: "text/plain", ...(opts?.signal ? { signal: opts.signal } : {}) });
8
9
  if (!res.ok)
9
10
  throw new Error(`GET /metrics → HTTP ${res.status}`);
10
11
  return res.text();
11
12
  }
13
+ /** GET /metrics/summary — 指标汇总 JSON(`{model, ...metrics.summarize()}`,开集)。 */
12
14
  async summary(opts) {
13
15
  return this.t.request({ method: "GET", path: "/metrics/summary", signal: opts?.signal });
14
16
  }
17
+ /** GET /metrics/plan-cache — per-scope objective 复发探针 dump(core design/42;开集)。 */
15
18
  async planCache(opts) {
16
19
  return this.t.request({ method: "GET", path: "/metrics/plan-cache", signal: opts?.signal });
17
20
  }
@@ -21,6 +24,7 @@ export class OutcomesResource {
21
24
  constructor(t) {
22
25
  this.t = t;
23
26
  }
27
+ /** GET /v1/outcomes?signature=&includeAborted= — 结局台账 `{outcomes: rows}`。 */
24
28
  async list(opts) {
25
29
  const q = new URLSearchParams();
26
30
  if (opts?.signature)
@@ -36,6 +40,8 @@ export class SendfileLinksResource {
36
40
  constructor(t) {
37
41
  this.t = t;
38
42
  }
43
+ /** GET /v1/sendfile-links — 台账分页。`limit` 1..100(缺省 50);`before` = 上页 `nextBefore`/行 `id`
44
+ * (uuidv7,坏形 400 fail-loud——F6 修后绝不静默降级);`scope` 仅 fleet 凭证生效。 */
39
45
  async list(opts) {
40
46
  const q = new URLSearchParams();
41
47
  if (opts?.limit !== undefined)
@@ -1 +1 @@
1
- {"version":3,"file":"ops.js","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ops.js","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,eAAe;IACG;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C,kFAAkF;IAClF,KAAK,CAAC,UAAU,CAAC,IAA+B;QAC9C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9I,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAClE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,8EAA8E;IAC9E,KAAK,CAAC,OAAO,CAAC,IAA+B;QAC3C,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,kBAAkB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC3F,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,SAAS,CAAC,IAA+B;QAC7C,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9F,CAAC;CACF;AAQD,MAAM,OAAO,gBAAgB;IACE;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C,6EAA6E;IAC7E,KAAK,CAAC,IAAI,CAAC,IAA6E;QACtF,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,SAAS;YAAE,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,IAAI,EAAE,cAAc;YAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;QAC1D,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5G,CAAC;CACF;AAQD,MAAM,OAAO,qBAAqB;IACH;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;uEACmE;IACnE,KAAK,CAAC,IAAI,CAAC,IAAgF;QACzF,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC;QAChC,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS;YAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAClE,IAAI,IAAI,EAAE,MAAM;YAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/C,IAAI,IAAI,EAAE,KAAK;YAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAClH,CAAC;CACF"}
@@ -1,8 +1,16 @@
1
+ /** policy — §permissions 面板的**只读**数据源(service `GET /v1/policy`,实测形态 the pinned wire contract)。
2
+ *
3
+ * `get` = `GET /v1/policy` → `PolicyInfo`(生效自治档 + 命令策略表 + 审批条件 + 上限)。
4
+ * CLI `/permissions` 面板渲它显「现在能自动做什么、哪些要审批、上限多少」(取代静态占位,真实反映 worker 策略)。
5
+ *
6
+ * 🔴 只读快照:client **绝不**据此放行/重算决策(命令准入/审批 enforcement 100% 在 worker;面板只 inspect)。
7
+ * 失败由 caller fail-safe(空 policy → 面板显「策略不可达」,绝不阻断)。 */
1
8
  import type { Transport } from "../transport.js";
2
9
  import type { PolicyInfo } from "../types.js";
3
10
  export declare class PolicyResource {
4
11
  private readonly t;
5
12
  constructor(t: Transport);
13
+ /** GET /v1/policy — 当前生效策略快照(autonomy/commandPolicy/approvalRequire/limits)。 */
6
14
  get(opts?: {
7
15
  signal?: AbortSignal;
8
16
  }): Promise<PolicyInfo>;
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/resources/policy.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAGnC,GAAG,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;CAGhE"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/resources/policy.ts"],"names":[],"mappings":"AAAA;;;;;;2DAM2D;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC,gFAAgF;IAC1E,GAAG,CAAC,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC;CAGhE"}
@@ -3,6 +3,7 @@ export class PolicyResource {
3
3
  constructor(t) {
4
4
  this.t = t;
5
5
  }
6
+ /** GET /v1/policy — 当前生效策略快照(autonomy/commandPolicy/approvalRequire/limits)。 */
6
7
  async get(opts) {
7
8
  return this.t.request({ method: "GET", path: "/v1/policy", signal: opts?.signal });
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/resources/policy.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAG7C,KAAK,CAAC,GAAG,CAAC,IAA+B;QACvC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACF"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/resources/policy.ts"],"names":[],"mappings":"AAUA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C,gFAAgF;IAChF,KAAK,CAAC,GAAG,CAAC,IAA+B;QACvC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;CACF"}
@@ -1,29 +1,77 @@
1
+ /** questions — §4④ (tool-panorama) live-stream AskUserQuestion HITL (core 1.16x `RunnerDeps.onQuestion`
2
+ * seam; service `question.ts`, SHIPPED behind `ASK_QUESTION_ENABLED` — single-user turnkey defaults ON per core
3
+ * pinned posture). The SIBLING of {@link import("./elicitations.js").ElicitationsResource}: elicitation is an
4
+ * INBOUND-MCP-server ask; this is the AGENT's OWN `AskUserQuestion` tool — a structured multiple-choice question
5
+ * to the END USER (which approach? which of these?). core EMITS the call; the deployment routes it to a live human
6
+ * over the run's stream and returns their {@link QuestionAnswer}.
7
+ *
8
+ * 🔴 LIVE-ONLY + SAME-REPLICA (the `steer()`-class of HITL, NOT the durable approval/checkpoint class): the parked
9
+ * promise is in-memory, so a respond that lands on another replica / after answer / after the TTL (5 min) finds
10
+ * nothing → 404. The durable-disconnected-human variant is wired SEPARATELY upstream (`QUESTION_AWAITS_RESUME` — the
11
+ * ask suspends and a resume carries the answer); a crash loses an in-flight LIVE question (acceptable for an
12
+ * interactive shell — core then proceeds with the headless "no answer" default so the run never hangs).
13
+ *
14
+ * 🔴 The `question`/`question_complete` FRAMES are NOT delivered as `AgentEvent` arms — they are a DISTINCT
15
+ * vocabulary that interleaves on the live token stream (exactly like elicitation). Tail them off `tasks.streamRaw`
16
+ * and dispatch on the SSE `event:` name (the payload also carries `type`, so a name-stripping proxy still works);
17
+ * parse the `data:` with this resource's {@link QuestionFrame} type. Then resolve via {@link QuestionsResource.respond}.
18
+ *
19
+ * 🔴 UNTRUSTED: the model-authored `questions` are service secret-redacted before streaming, but remain UNTRUSTED
20
+ * for display (the shell renders them; NEVER re-feed to a model). The ANSWER fence is CORE's — core echoes a
21
+ * `selected` value ONLY if it is one of the offered option labels (`selected ⊆ options`) and wraps the free-text
22
+ * `note` in an untrusted-DATA fence (design/80 D-F), so a wire answer can never be read as instructions. */
1
23
  import type { Transport } from "../transport.js";
24
+ /** One offered choice (core `AskQuestionOption`, ask-question.ts:25). */
2
25
  export interface AskQuestionOption {
26
+ /** The choice text the user picks. */
3
27
  label: string;
28
+ /** What this option means / its trade-off. */
4
29
  description: string;
5
30
  }
31
+ /** A single model-authored question (core `AskQuestion`, ask-question.ts:32). UNTRUSTED-for-display. */
6
32
  export interface AskQuestion {
33
+ /** The full question. */
7
34
  question: string;
35
+ /** A short header/label (≤ ~12 chars) for UIs. Also the KEY the answer echoes back in {@link QuestionAnswerItem}. */
8
36
  header: string;
37
+ /** 2-4 mutually-exclusive choices (unless `multiSelect`). */
9
38
  options: AskQuestionOption[];
39
+ /** Allow selecting more than one option. */
10
40
  multiSelect?: boolean;
11
41
  }
42
+ /** A live question frame interleaved on the run's `tasks.streamRaw` connection (service `QuestionFrame`
43
+ * question.ts:37-46). `type` IS the SSE `event:` name AND is echoed in the payload. The shell renders the
44
+ * `question` frame as a multiple-choice dialog and dismisses it on `question_complete`. */
12
45
  export interface QuestionFrame {
13
46
  type: "question" | "question_complete";
47
+ /** The id to echo back to {@link QuestionsResource.respond}. */
14
48
  questionId: string;
49
+ /** "question" only: the model's structured questions, secret-redacted. UNTRUSTED — never re-feed to a model.
50
+ * Absent on an over-cap payload (the ask then headless-defaults; the shell never sees it to render). */
15
51
  questions?: AskQuestion[];
52
+ /** "question_complete" only: how it resolved (dialog dismiss reason). `answered` = a human responded;
53
+ * `unanswered` = ttl / abort / throttle released it (the model got the headless default). Cosmetic. */
16
54
  outcome?: "answered" | "unanswered";
17
55
  [k: string]: unknown;
18
56
  }
57
+ /** One question's answer (core `QuestionAnswerItem`, ask-question.ts:63). `selected` is the option label(s) the
58
+ * user clicked — echoed EXACTLY (core fences `selected ⊆ options`); `note` is the optional free-text (off-list
59
+ * input / annotations), untrusted-fenced by core. Keyed by the question's `header`. */
19
60
  export interface QuestionAnswerItem {
20
61
  header: string;
62
+ /** The chosen option label(s). Single-select → a one-element array; multiSelect → 0..n labels. MUST echo the
63
+ * exact labels the user saw (core rejects any `selected` not in the offered options). */
21
64
  selected: string[];
65
+ /** Optional free-text note / off-list ("Other") input. Core wraps it in an untrusted-DATA fence. */
22
66
  note?: string;
23
67
  }
68
+ /** The shell's answer to a {@link QuestionFrame} (= core's `QuestionAnswer`, ask-question.ts:69). The service
69
+ * validates only this OUTER shape (`answers[]` of `{header, selected:string[], note?}`); core owns the semantic
70
+ * fence (`selected ⊆ options`, `note` untrusted). */
24
71
  export interface QuestionAnswer {
25
72
  answers: QuestionAnswerItem[];
26
73
  }
74
+ /** The 200 ack from a successful respond (service `respond`, question.ts:226). */
27
75
  export interface QuestionRespondAck {
28
76
  questionId: string;
29
77
  delivery: "applied";
@@ -31,6 +79,15 @@ export interface QuestionRespondAck {
31
79
  export declare class QuestionsResource {
32
80
  private readonly t;
33
81
  constructor(t: Transport);
82
+ /** POST /v1/questions/:id/respond — resolve a parked LIVE AskUserQuestion with the user's selection. The
83
+ * resolved value flows back to the model on the still-open task connection (the model's AskUserQuestion tool
84
+ * call returns it).
85
+ *
86
+ * 🔴 OWNER-GATED with a 404 (NO existence oracle): a non-owner AND an unknown/answered/expired/wrong-replica id
87
+ * both get 404 — never branch a "does this id exist" decision off the status. A malformed body is a 400
88
+ * (existence-independent, like steer/elicit). A worker without `ASK_QUESTION_ENABLED` → 501.
89
+ *
90
+ * Not a submit / not idempotent (it resolves an in-flight promise exactly once) → NO SDK retry. */
34
91
  respond(id: string, answer: QuestionAnswer, opts?: {
35
92
  signal?: AbortSignal;
36
93
  }): Promise<QuestionRespondAck>;
@@ -1 +1 @@
1
- {"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/resources/questions.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAGjD,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,MAAM,CAAC;IAEd,WAAW,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,WAAW;IAE1B,QAAQ,EAAE,MAAM,CAAC;IAEjB,MAAM,EAAE,MAAM,CAAC;IAEf,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAE7B,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAKD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,mBAAmB,CAAC;IAEvC,UAAU,EAAE,MAAM,CAAC;IAGnB,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAG1B,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACpC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAKD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IAGf,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAKD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAGD,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAWnC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAQhH"}
1
+ {"version":3,"file":"questions.d.ts","sourceRoot":"","sources":["../../src/resources/questions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;6GAqB6G;AAC7G,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD,yEAAyE;AACzE,MAAM,WAAW,iBAAiB;IAChC,sCAAsC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,8CAA8C;IAC9C,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wGAAwG;AACxG,MAAM,WAAW,WAAW;IAC1B,yBAAyB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,qHAAqH;IACrH,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,4CAA4C;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;4FAE4F;AAC5F,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,mBAAmB,CAAC;IACvC,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IACnB;6GACyG;IACzG,SAAS,CAAC,EAAE,WAAW,EAAE,CAAC;IAC1B;4GACwG;IACxG,OAAO,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC;IACpC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED;;wFAEwF;AACxF,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf;8FAC0F;IAC1F,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oGAAoG;IACpG,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;sDAEsD;AACtD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,kFAAkF;AAClF,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;;;;;;;wGAQoG;IAC9F,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAQhH"}
@@ -3,6 +3,15 @@ export class QuestionsResource {
3
3
  constructor(t) {
4
4
  this.t = t;
5
5
  }
6
+ /** POST /v1/questions/:id/respond — resolve a parked LIVE AskUserQuestion with the user's selection. The
7
+ * resolved value flows back to the model on the still-open task connection (the model's AskUserQuestion tool
8
+ * call returns it).
9
+ *
10
+ * 🔴 OWNER-GATED with a 404 (NO existence oracle): a non-owner AND an unknown/answered/expired/wrong-replica id
11
+ * both get 404 — never branch a "does this id exist" decision off the status. A malformed body is a 400
12
+ * (existence-independent, like steer/elicit). A worker without `ASK_QUESTION_ENABLED` → 501.
13
+ *
14
+ * Not a submit / not idempotent (it resolves an in-flight promise exactly once) → NO SDK retry. */
6
15
  async respond(id, answer, opts) {
7
16
  return this.t.request({
8
17
  method: "POST",
@@ -1 +1 @@
1
- {"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/resources/questions.ts"],"names":[],"mappings":"AAqFA,MAAM,OAAO,iBAAiB;IACC;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAW7C,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,MAAsB,EAAE,IAA+B;QAC/E,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAqB;YACxC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,UAAU;YACvD,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"questions.js","sourceRoot":"","sources":["../../src/resources/questions.ts"],"names":[],"mappings":"AAqFA,MAAM,OAAO,iBAAiB;IACC;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;;;;;;;;wGAQoG;IACpG,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,MAAsB,EAAE,IAA+B;QAC/E,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAqB;YACxC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,iBAAiB,kBAAkB,CAAC,EAAE,CAAC,UAAU;YACvD,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,6 +1,12 @@
1
+ /** runs — asynchronous + resumable. create (POST /v1/runs → 202) / get (GET /v1/runs/:id) / events (GET
2
+ * /v1/runs/:id/events, SSE Last-Event-ID resume) / cancel (POST /v1/runs/:id/cancel — LIVE, service ced3d88 /
3
+ * the pinned wire contract; the SDK verb runs.cancel(id) lands at M1.5: 202 ack → run settles failed+errorCode:"cancelled"). */
1
4
  import type { Transport } from "../transport.js";
2
5
  import type { TaskRequest, RunReceipt, RunRecord, CancelAck } from "../types.js";
3
6
  import type { AgentEvent } from "../events.js";
7
+ /** server 1.89 subagent-steer receipt (2xx body). `note` = the CC-verbatim queued copy. `marker` = the
8
+ * engine-minted delivery marker (server 1.214 subagent verb region, server.js:1828/1832 — present on both
9
+ * steer and resume 200s). */
4
10
  export interface SubagentSteerReceipt {
5
11
  taskId: string;
6
12
  target: string;
@@ -9,6 +15,11 @@ export interface SubagentSteerReceipt {
9
15
  note?: string;
10
16
  marker?: string;
11
17
  }
18
+ /** server 1.244 ([1488]③b) subagent-output 200 body. `content` = the engine TaskOutput-tool text (the
19
+ * child's final assistant body once terminal — UNTRUSTED model output, same posture as a run `result`).
20
+ * `output` = the engine registry's UnifiedTaskOutput projection, passed through verbatim: `status`
21
+ * (pending/running/completed/failed/killed), `retrieval_status` ("success" once readable), plus
22
+ * error/stoppedBy/partial_result when set. */
12
23
  export interface SubagentOutputResult {
13
24
  taskId: string;
14
25
  target: string;
@@ -20,16 +31,27 @@ export interface SubagentOutputResult {
20
31
  retrieval_status?: string;
21
32
  error?: string;
22
33
  stoppedBy?: string;
34
+ /** [1543] SDK-H 半场:stop-cycle 世代号(core 1.373 durable 终态 serve 投影;1=首次 settle,≥2=复活
35
+ * 周期再 settle)——多周期转录分段/tail 重开判别键。进程内 poll 不投影(缺≠未 settle)。 */
36
+ seq?: number;
23
37
  partial_result?: boolean;
24
38
  details?: unknown;
39
+ [k: string]: unknown;
25
40
  };
26
41
  }
42
+ /** K-1c manual-compact 202 ack (server 1.214 server.js:1657 — exact literal shape: `status:"running"`,
43
+ * `delivery:"accepted"`, `note` = the "compaction will run at the next turn boundary…" copy). The ack is an
44
+ * ACCEPTANCE, not an outcome: compaction runs at the next turn boundary and a `compacted{trigger:"manual"}`
45
+ * event rides the run stream ONLY if anything was summarized (mooted/failed → no event, see trace). */
27
46
  export interface CompactAck {
28
47
  taskId: string;
29
48
  status?: string;
30
49
  delivery?: string;
31
50
  note?: string;
32
51
  }
52
+ /** Detach 202 ack (server 1.214 server.js:1703 — exact literal shape: `toolCallId` echoed,
53
+ * `delivery:"requested"`, `note` = the fail-safe no-op copy). Fire-and-forget semantics: acceptance only —
54
+ * the authoritative outcome is the tool call's own `tool_end.structured {detached:true, task_id}`. */
33
55
  export interface DetachAck {
34
56
  taskId: string;
35
57
  toolCallId?: string;
@@ -39,6 +61,12 @@ export interface DetachAck {
39
61
  export declare class RunsResource {
40
62
  private readonly t;
41
63
  constructor(t: Transport);
64
+ /** server 1.246 ([1499] accept-phase, [1498]⑥ two-拍 rollout) — `?session=` on the legacy run faces.
65
+ * principal answers "whose data"; session answers "which conversation" ([1493]). Pass your conversation's
66
+ * sessionId (the one POST /v1/runs bound) on get/events/cancel/steer/compact/detach and the subagent
67
+ * verbs: today a MISMATCH on a session-bound run 404s (a match/absence passes; absence logs a server-side
68
+ * migration warning), and the enforcement train will 404 absence too — so new code should always send it.
69
+ * NB send a real sessionId or nothing: an EMPTY string counts as present-and-mismatched (404). */
42
70
  private sessionQs;
43
71
  create(req: TaskRequest, opts?: {
44
72
  idempotencyKey?: string | null;
@@ -48,19 +76,50 @@ export declare class RunsResource {
48
76
  session?: string;
49
77
  signal?: AbortSignal;
50
78
  }): Promise<RunRecord>;
79
+ /** Cancel a durable async run (LIVE). 202 ack (`cancelling` or terminal no-op); the run settles
80
+ * to failed+errorCode:"cancelled". 409 = suspended (cancel by DENYING its approval instead); 404 = non-owner/
81
+ * unknown (no existence leak). Server-side idempotent; not a submit → no SDK retry. */
51
82
  cancel(taskId: string, opts?: {
52
83
  session?: string;
53
84
  signal?: AbortSignal;
54
85
  }): Promise<CancelAck>;
86
+ /** core 1.207 / server 1.78 — DETACH an in-flight tool call (the CC ctrl+b tool-level semantic): the engine
87
+ * adopts the RUNNING process into a background task (spool pre-filled with captured output), the tool call
88
+ * returns early with `Command moved to background; task_id=b*…` (+ `tool_end.structured
89
+ * {type:"bash", detached:true, task_id}`), and the run's turn continues. Fire-and-forget create-then-abort
90
+ * semantics: early/late requests are safe (after completion = no-op). 202 = accepted; 409
91
+ * `detach.not_running` = no such in-flight call; 404 = non-owner/unknown (no existence leak).
92
+ * Works on the sync interactive leg too (server 1.78 registers the live handle). `toolCallId` <= 256 chars. */
55
93
  detach(taskId: string, toolCallId: string, opts?: {
56
94
  session?: string;
57
95
  signal?: AbortSignal;
58
96
  }): Promise<DetachAck>;
97
+ /** K-1c (core 1.156 `TaskStream.compact()` / server 1.214 server.js:1596) — MANUAL COMPACT a RUNNING durable
98
+ * run (the CC `/compact` semantic): the engine summarizes the context at the next turn boundary; if anything
99
+ * was summarized a `compacted{trigger:"manual"}` event rides the run's event stream. `instructions` (≤2048
100
+ * code points, non-empty when present — else 400) focuses the summary ("keep the file list", CC parity).
101
+ *
102
+ * Fire-and-forget acceptance: 202 {@link CompactAck} means QUEUED, not compacted — the outcome arrives (or
103
+ * doesn't: mooted/failed compactions emit NO event) on the stream. 🔴 REPLICA-LOCAL like steer/detach:
104
+ * 409 `compact.not_running` = the run settled OR lives on another replica; 501 = no run store (gate on
105
+ * `capabilities.manualCompact`, don't trial-by-501); 404 = non-owner/unknown (no existence leak).
106
+ * Not a submit / server treats repeat calls as fresh asks → NO SDK retry. */
59
107
  compact(taskId: string, opts?: {
60
108
  instructions?: string;
61
109
  session?: string;
62
110
  signal?: AbortSignal;
63
111
  }): Promise<CompactAck>;
112
+ /** design/80 D-A — STEER a RUNNING durable run: inject mid-flight direction (the core of *supervision* vs mere
113
+ * approve/deny). AT-MOST-ONCE — steer is NOT idempotent, so NO submit/retry. `trusted` is NOT a body field:
114
+ * the server derives it from the authenticated operator (the BFF's operator role), never a client-set flag.
115
+ * 🔴 STEER ITSELF IS LIVE/SHIPPED (service §K-6, runStore-gated): 200 = injected into the live run;
116
+ * 202 = PARKED on a checkpoint (delivered when the run next runs); a durable-`suspended` run → typed
117
+ * `SteeringNotRunningError` (`steering.not_running`, 409); a trusted text carrying a control-plane escape →
118
+ * `SteeringInvalidContentError` (`steering.invalid_content`, 422). 🔴 ONE narrow caveat (NOT "steer is a draft"):
119
+ * the per-call `mode` arg is currently a NO-OP — core's steer is HARNESS-LEVEL (`setSteeringMode`), set globally
120
+ * on the runner, not switched per steer call; the `mode` mapping is pending D-A core (search [76]). Sending `mode`
121
+ * is harmless (ignored); steer delivery itself works today. `mode` semantics (when wired): "all" = drain ALL
122
+ * queued steers at the next turn boundary; "one-at-a-time" (default) = one per turn, FIFO. */
64
123
  steer(taskId: string, steer: {
65
124
  text: string;
66
125
  mode?: "all" | "one-at-a-time";
@@ -68,30 +127,115 @@ export declare class RunsResource {
68
127
  session?: string;
69
128
  signal?: AbortSignal;
70
129
  }): Promise<unknown>;
130
+ /** core 1.219 C2 / server 1.89 — STEER a RUNNING SUBAGENT of this run (the CC "enter the agent's view and
131
+ * type to it" semantic, `AGe` pendingMessages: the message drains at the subagent's NEXT TOOL ROUND).
132
+ * `target` = the delegating tool call's id (`parentToolCallId`, stamped on every forwarded subagent
133
+ * content event) or the agentName (ambiguous name → 409). 🔴 BODY SHAPE differs from the main-run steer:
134
+ * `{ content }` (server SubagentSteerRegistry contract), NOT `{ text }`. Receipt: 200 with
135
+ * `{ taskId, target, status, delivery, note }` — `note` carries the CC-verbatim
136
+ * "Message queued for delivery to <name> at its next tool round."; a settled/unknown subagent →
137
+ * `steering.not_running` 409 (same typed error family as the main-run verb). AT-MOST-ONCE (no retry). */
71
138
  steerSubagent(taskId: string, target: string, steer: {
72
139
  content: string;
73
140
  }, opts?: {
74
141
  session?: string;
75
142
  signal?: AbortSignal;
76
143
  }): Promise<SubagentSteerReceipt>;
144
+ /** server 1.214 (server.js:1774 subagent-verb region, `verb === "resume"` arm) — RESUME/REVIVE a SETTLED
145
+ * subagent of this run with a follow-up message (the CC "keep talking to the finished agent" semantic):
146
+ * the engine re-opens the subagent's retained session in the background and delivers `content` as its next
147
+ * user turn. Same addressing as {@link steerSubagent} (`target` = parentToolCallId or agentName; ambiguous
148
+ * name → 409 `steering.ambiguous_target`), same `{ content }` body (non-empty, else 400), same
149
+ * {@link SubagentSteerReceipt} 200 (note = "Message queued for delivery to <name>; it will continue in the
150
+ * background.", + `marker`).
151
+ *
152
+ * 🔴 Requires the PARENT run to have retained subagent sessions — the typed-409 family tells you why not:
153
+ * `resume.retain_off` (run didn't set retainSubagentSessions) / `resume.evicted` / `resume.cap` /
154
+ * `resume.session_not_found` (retention lapsed) / `steering.still_running` (it's in flight — STEER instead)
155
+ * / `steering.not_running` (no match on this replica / run settled). Gate on `capabilities.subagentResume`.
156
+ * 404 = non-owner/unknown run (no existence leak). AT-MOST-ONCE (no retry). */
77
157
  resumeSubagent(taskId: string, target: string, message: {
78
158
  content: string;
79
159
  }, opts?: {
80
160
  session?: string;
81
161
  signal?: AbortSignal;
82
162
  }): Promise<SubagentSteerReceipt>;
163
+ /** server 1.244 ([1488]③b) — read a BACKGROUND child's final report / current status. `target` = the
164
+ * agent handle (a… domain, `background_agent` ONLY — wa… workflow-agent observation rows read via the
165
+ * workflow journal face, and other task kinds 404 here) from the parent's spawn (bg children are NEVER
166
+ * in the run store — GET /v1/runs/:handle 404s
167
+ * with guidance; THIS verb is the read face: the engine TaskRegistry's TaskOutput-tool projection over HTTP).
168
+ * 200 `{ taskId, target, content, output }`: `content` = the TaskOutput text (the child's final assistant
169
+ * body once terminal; honest status text while running), `output` = the registry's UnifiedTaskOutput
170
+ * (status/retrieval_status/partial flags verbatim). Non-blocking (no long-poll). server 1.250: no longer
171
+ * replica-local — a full in-process miss falls back to the durable agent record (cross-instance /
172
+ * post-restart): terminal = final snapshot served, still-running-elsewhere = honest "outcome unknown
173
+ * here". 404 = unknown run / non-owner / unknown handle / no durable row (one indistinguishable arm, no oracle).
174
+ *
175
+ * 🔴 server 1.245 [1493]: this is a CONVERSATION-CONTENT read, so it is SESSION-scoped, not just
176
+ * principal-scoped — pass `session` (your own conversation's sessionId, the one POST /v1/runs returned). A
177
+ * session-bound run served to a caller that omits or mismatches the session → 404 (fail-closed): a sibling
178
+ * session sharing your principal must not read another conversation's child. (Operators/trace bypass.)
179
+ * Gate on `capabilities.subagentOutput`. */
83
180
  subagentOutput(taskId: string, target: string, opts?: {
84
181
  session?: string;
85
182
  signal?: AbortSignal;
86
183
  }): Promise<SubagentOutputResult>;
184
+ /** server 1.246 ([1499]) — the GENERIC background task-handle read (CC TaskOutput 对位): serves
185
+ * background_bash (stdout — whether a read consumes the output cursor depends on the handle's shape:
186
+ * spooled handles re-read in full, cursor-only handles return only new bytes; trust the projection's own
187
+ * flags), monitor (batches), and background_agent (final report). A workflow handle 404s (its read face is
188
+ * the workflow journal). 🔴 `target` is the CANONICAL task handle only (b…/m…/a… task_id from the spawn) —
189
+ * the in-engine tools' agent-name / legacy-id resolution is NOT on the wire (404). 🔴 NO server-side
190
+ * filter: `?filter=` is REFUSED with 400 on both verbs (wire-supplied regexes don't run on the server) —
191
+ * fetch the output and apply your regex locally, knowing the wire serves the CLIPPED projection (matches
192
+ * inside a clipped middle are not recoverable, and a cursor-only bash leg consumes what it serves; the
193
+ * in-engine tool filters before clipping and keeps full fidelity). SESSION-
194
+ * scoped like {@link subagentOutput} — pass your conversation's `session`; a session-bound run without/with
195
+ * a mismatched one → 404 fail-closed (operators bypass). Non-blocking. server 1.250: an `a*` handle is
196
+ * no longer replica-local — a full in-process miss falls back to the durable record (cross-instance /
197
+ * post-restart): terminal rows serve the final snapshot, a row still running on another replica answers
198
+ * an honest "outcome unknown here" (never fabricated liveness). `b*`/`m*` handles stay replica-local
199
+ * (no durable face). Gate on
200
+ * `capabilities.taskHandles`. */
87
201
  taskOutput(taskId: string, target: string, opts?: {
88
202
  session?: string;
89
203
  signal?: AbortSignal;
90
204
  }): Promise<SubagentOutputResult>;
205
+ /** server 1.246 ([1499]) — stop a background task handle (CC TaskStop 对位): bash kill / monitor stop /
206
+ * agent abort, attributed "user" (`output.stoppedBy`). Idempotent on a terminal handle — the 200
207
+ * `output.status` tells you what actually happened. 🔴 A kill that does NOT land is a 409
208
+ * `stop.not_landed` (body carries the honest projection: `output.status` stays "running") — never a 200;
209
+ * treat only 200 as stopped. server 1.250 durable arm: an `a*` handle NOT attached to this replica
210
+ * (cross-instance / post-restart) answers from the durable record — terminal row = 200 already-terminal
211
+ * (idempotent-honest), still-running-elsewhere = 409 `stop.not_local` (no kill was attempted; distinct
212
+ * from not_landed). Same session scoping + kind set + canonical-handle
213
+ * addressing as {@link taskOutput} (a workflow handle 404s — stop workflows via their cancel face). Gate
214
+ * on `capabilities.taskHandles`. */
91
215
  taskStop(taskId: string, target: string, opts?: {
92
216
  session?: string;
93
217
  signal?: AbortSignal;
94
218
  }): Promise<SubagentOutputResult>;
219
+ /** server 1.251(S2,core 1.370 `bgAgentId`)— a background child's per-agent **live tail** (SSE):
220
+ * `GET /v1/runs/:id/subagents/:handle/stream`. The "tail" half of replay+tail — {@link subagentOutput}
221
+ * (+AgentTranscript in-engine) is the replay half. Frames: `meta` (once — carries `status` and
222
+ * `live:"replica-local"`; on a TERMINAL child the stream ends right after it, go read the replay face),
223
+ * `forward` (content: text_delta / reasoning_delta / tool_start / tool_end / task_progress — same
224
+ * projection discipline as the main run stream's forward branch, plus a bus-level
225
+ * `{type:"lagged",dropped}` marker when a slow consumer dropped frames — honest, never silent), and
226
+ * `heartbeat` (ignore), and `{type:"task_settled",status,seq?}` — the child settled MID-stream (the server
227
+ * writes it and ends the stream; the full story continues on the replay face). Live frames are REPLICA-LOCAL (produced only where the host run executes) — a
228
+ * child running on another replica yields heartbeats only. Same addressing/gates/404-shape as
229
+ * {@link subagentOutput} (session-enforced). Stop-cycle `seq` (server 1.255 + core 1.373): the
230
+ * `task_settled` frame carries the settle-minted generation number (1 = first settle; ≥2 = a revived
231
+ * child settling again) — the real-time revive discriminator. The `meta` frame's optional `seq` appears
232
+ * ONLY when the probe served a terminal durable row cross-instance/post-restart (in-process polls do not
233
+ * project it — its absence does NOT mean "never settled"). Consumption notes (server 1.253): after a `task_settled`
234
+ * close, a REVIVED child (stop-cycle seq≥2) = open a NEW stream; after a `lagged` marker the dropped
235
+ * frames are NOT recoverable on this lane — rebuild from the replay face, then re-tail. NESTED bg
236
+ * children's frames merge into the OUTERMOST handle's stream (core overwrites bgAgentId per bg boundary;
237
+ * discriminate nested frames by parentToolCallId) — a nested handle's own stream carries meta+heartbeat
238
+ * only. Gate on `capabilities.subagentStream`. */
95
239
  subagentStream(taskId: string, target: string, opts?: {
96
240
  session?: string;
97
241
  signal?: AbortSignal;
@@ -99,6 +243,9 @@ export declare class RunsResource {
99
243
  event: string;
100
244
  data: Record<string, unknown>;
101
245
  }>;
246
+ /** Resumable event stream. Internally: SSE + Last-Event-ID auto-reconnect; on a 416 (evicted past retention,
247
+ * body `{error,retainedFrom}` — match status, no RESUME_EVICTED code) → full-sync via trace.turns then resume
248
+ * from `retainedFrom` (sse.ts). Established-stream drops do NOT count as retries. */
102
249
  events(taskId: string, opts?: {
103
250
  session?: string;
104
251
  signal?: AbortSignal;
@@ -1 +1 @@
1
- {"version":3,"file":"runs.d.ts","sourceRoot":"","sources":["../../src/resources/runs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runs.d.ts","sourceRoot":"","sources":["../../src/resources/runs.ts"],"names":[],"mappings":"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"}