@sema-agent/sdk 17.2.0 → 18.1.0
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 +163 -0
- package/dist/client.d.ts +3 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +4 -0
- package/dist/client.js.map +1 -1
- package/dist/errors.d.ts +19 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +19 -0
- package/dist/errors.js.map +1 -1
- package/dist/events.d.ts +14 -2
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js.map +1 -1
- package/dist/health.d.ts +95 -31
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/resources/admin.d.ts +65 -0
- package/dist/resources/admin.d.ts.map +1 -0
- package/dist/resources/admin.js +27 -0
- package/dist/resources/admin.js.map +1 -0
- package/dist/resources/approvals.d.ts +6 -3
- package/dist/resources/approvals.d.ts.map +1 -1
- package/dist/resources/approvals.js +4 -2
- package/dist/resources/approvals.js.map +1 -1
- package/dist/resources/assistant.d.ts +5 -4
- package/dist/resources/assistant.d.ts.map +1 -1
- package/dist/resources/assistant.js +5 -4
- package/dist/resources/assistant.js.map +1 -1
- package/dist/resources/leader.d.ts +7 -1
- package/dist/resources/leader.d.ts.map +1 -1
- package/dist/resources/leader.js +7 -1
- package/dist/resources/leader.js.map +1 -1
- package/dist/resources/ops.d.ts +2 -1
- package/dist/resources/ops.d.ts.map +1 -1
- package/dist/resources/ops.js +2 -1
- package/dist/resources/ops.js.map +1 -1
- package/dist/resources/rules.d.ts +5 -4
- package/dist/resources/rules.d.ts.map +1 -1
- package/dist/resources/rules.js.map +1 -1
- package/dist/settings.d.ts +2 -2
- package/dist/types.d.ts +68 -17
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/openapi.yaml +251 -37
- package/package.json +2 -2
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* admin —— `/v1/admin/*` 运维口(operator-only)。本版一口:**排空口** `POST /v1/admin/drain`(server ≥7.121.0 的契约形)。
|
|
3
|
+
*
|
|
4
|
+
* 体与回执的形属主是契约包(`@sema-agent/settings-schema` ≥9.0.0 `./fleet` 的 `DrainRequest` / `DrainReceipt`);本包逐键同形(测试对契约型编译期对拍),
|
|
5
|
+
* 零运行时依赖 —— 不在客户端判形,体原样发、回执原样回。
|
|
6
|
+
*/
|
|
7
|
+
import type { Transport } from "../transport.js";
|
|
8
|
+
/**
|
|
9
|
+
* 排空请求(契约 `DrainRequest`):「把**这一台**实例在 `deadlineAt` 之前排空」。
|
|
10
|
+
* · `actionId` —— 幂等键(非空)。同一动作(或别的动作)再来,引擎答 `already_draining` 并回显**第一次**的 `since` / `deadlineAt`,什么都不改。
|
|
11
|
+
* 人手发的动作自取(推荐 `manual:<uuid>`)。
|
|
12
|
+
* · 身份四元 —— 点名**哪一台**,引擎逐字段比自己的(不符 ⇒ 409 `conflict.fleet_identity`,零状态变化):
|
|
13
|
+
* `worker` = 引擎的 worker 名(中心车道的 `SEMA_REGISTRY_WORKER`;没接中心的引擎没有 worker 名 ⇒ 任何请求都不符);
|
|
14
|
+
* `expectedGeneration` = fleet 代际(规范十进制串,如 `"7"`;对的是 `/health.generation`)—— **缺席对缺席**:非 fleet 成员不带它,
|
|
15
|
+
* 对 fleet 成员不带它 = 不符(不带不是通配);
|
|
16
|
+
* `scope` = 租户 scope —— 两侧都读成值再比:引擎的值 = env `FLEET_SCOPE`,引擎没设与请求不带都读成缺省 scope `"global"`;多租引擎的请求要带它自己的 scope;
|
|
17
|
+
* `instanceId` = 进程身份(对的是 `/health.instanceId`)—— 在场才比。
|
|
18
|
+
* · `deadlineAt` —— 引擎自停的期限(**epoch ms**),在进入那一拍定死(之后热改排空窗不动它)。
|
|
19
|
+
* · `term` —— 发送方执行器为这一动作持有的认领任期(中心签发、不透明);直接调用 / 人手动作不带。
|
|
20
|
+
*/
|
|
21
|
+
export interface DrainRequest {
|
|
22
|
+
actionId: string;
|
|
23
|
+
worker: string;
|
|
24
|
+
deadlineAt: number;
|
|
25
|
+
scope?: string;
|
|
26
|
+
expectedGeneration?: string;
|
|
27
|
+
instanceId?: string;
|
|
28
|
+
term?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* 排空回执(契约 `DrainReceipt`):引擎的排空事实 + 这一次调用碰到的状态。
|
|
32
|
+
* · `state: "draining"` —— 这次调用让它进了排空;`"already_draining"` —— 它本来就在排空(含引擎自起的:停止信号 / 租约被拒),回执报**第一次**的事实,不重置。
|
|
33
|
+
* · `actionId` / `since` / `deadlineAt` —— 本次排空的动作号、起点、期限(两个 **epoch ms**;`since` 与 `/health.drainingSince` 同值)。
|
|
34
|
+
*/
|
|
35
|
+
export interface DrainReceipt {
|
|
36
|
+
actionId: string;
|
|
37
|
+
since: number;
|
|
38
|
+
deadlineAt: number;
|
|
39
|
+
state: "draining" | "already_draining";
|
|
40
|
+
}
|
|
41
|
+
export declare class AdminResource {
|
|
42
|
+
private readonly t;
|
|
43
|
+
constructor(t: Transport);
|
|
44
|
+
/**
|
|
45
|
+
* `POST /v1/admin/drain` —— 让**这一台**引擎进入排空(server ≥7.121.0 的契约形;体 = {@link DrainRequest},回执 = {@link DrainReceipt})。
|
|
46
|
+
* 进入那一拍:停接新工作(新提交 503 `draining`;HITL 应答 —— 含耐久 `/decide` —— 与续跑**放行**)、`/readyz` 翻 503、可抢占的在飞腿在下一个干净回合边界
|
|
47
|
+
* 耐久停驻、活的审批卡改路停驻;在飞归零或到 `deadlineAt` 自停。经本口进的排空之后,平台随后发的**第一发**停止信号被吸收(期限不动),
|
|
48
|
+
* 再隔一个最小间隔的一发才硬停 —— 平台停止超时(Docker `stop_grace_period` / systemd `TimeoutStopSec` / k8s `terminationGracePeriodSeconds`)
|
|
49
|
+
* 要 ≥ 本次的期限,否则在飞腿会被平台截。
|
|
50
|
+
*
|
|
51
|
+
* 门序(operator 面同一口径):身份 → 授权 → 验形 → 入口 → 身份四元。拒因(都**零状态变化**):
|
|
52
|
+
* · 401 `auth.principal_required` —— `REQUIRE_PRINCIPAL` 部署上这次请求没有可用身份;
|
|
53
|
+
* · 501 `capability.operator_principals_required` —— 本部署 `OPERATOR_PRINCIPALS` 为空(没有任何身份是 operator);403 `auth.operator_only` —— 名单非空而调用方不在其中;
|
|
54
|
+
* · 400 `request.field_invalid` —— 体不是 `DrainRequest`。🔴 **退役形 `{reason}`**(server 7.35.0–7.120.x 的「停机因由声明」:只记一句话、不进排空)自 7.121.0
|
|
55
|
+
* 起就落这一臂,零别名;同时退役的还有 `/health.drainReason` 与 503 `draining` 体上的 `reason`;
|
|
56
|
+
* · 501 `capability.drain_state_required` —— 宿主没有收尾链(嵌入形):没有可进入的排空;
|
|
57
|
+
* · 409 `conflict.fleet_identity` —— 身份四元与本引擎不符(拒句点名不符的字段,不回显值)⇒ {@link import("../errors.js").ConflictError}。
|
|
58
|
+
* 🔴 **不自动重试**(非提交类 POST,本包从不重发它):要重试就**按同一 `actionId` 重发**,那是幂等的(引擎答 `already_draining`,不重置期限)。
|
|
59
|
+
* ⚠️ server ≤7.120.x 上这条路由收的是 `{reason}`,对本体答 400 —— 先读 `/health`(有 `auth` 三键即 ≥7.121.0)再发。
|
|
60
|
+
*/
|
|
61
|
+
drain(request: DrainRequest, opts?: {
|
|
62
|
+
signal?: AbortSignal;
|
|
63
|
+
}): Promise<DrainReceipt>;
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=admin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.d.ts","sourceRoot":"","sources":["../../src/resources/admin.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,UAAU,GAAG,kBAAkB,CAAC;CACxC;AAED,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;;;;;;;;;;;;;;;OAgBG;IACG,KAAK,CAAC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;CAG3F"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export class AdminResource {
|
|
2
|
+
t;
|
|
3
|
+
constructor(t) {
|
|
4
|
+
this.t = t;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* `POST /v1/admin/drain` —— 让**这一台**引擎进入排空(server ≥7.121.0 的契约形;体 = {@link DrainRequest},回执 = {@link DrainReceipt})。
|
|
8
|
+
* 进入那一拍:停接新工作(新提交 503 `draining`;HITL 应答 —— 含耐久 `/decide` —— 与续跑**放行**)、`/readyz` 翻 503、可抢占的在飞腿在下一个干净回合边界
|
|
9
|
+
* 耐久停驻、活的审批卡改路停驻;在飞归零或到 `deadlineAt` 自停。经本口进的排空之后,平台随后发的**第一发**停止信号被吸收(期限不动),
|
|
10
|
+
* 再隔一个最小间隔的一发才硬停 —— 平台停止超时(Docker `stop_grace_period` / systemd `TimeoutStopSec` / k8s `terminationGracePeriodSeconds`)
|
|
11
|
+
* 要 ≥ 本次的期限,否则在飞腿会被平台截。
|
|
12
|
+
*
|
|
13
|
+
* 门序(operator 面同一口径):身份 → 授权 → 验形 → 入口 → 身份四元。拒因(都**零状态变化**):
|
|
14
|
+
* · 401 `auth.principal_required` —— `REQUIRE_PRINCIPAL` 部署上这次请求没有可用身份;
|
|
15
|
+
* · 501 `capability.operator_principals_required` —— 本部署 `OPERATOR_PRINCIPALS` 为空(没有任何身份是 operator);403 `auth.operator_only` —— 名单非空而调用方不在其中;
|
|
16
|
+
* · 400 `request.field_invalid` —— 体不是 `DrainRequest`。🔴 **退役形 `{reason}`**(server 7.35.0–7.120.x 的「停机因由声明」:只记一句话、不进排空)自 7.121.0
|
|
17
|
+
* 起就落这一臂,零别名;同时退役的还有 `/health.drainReason` 与 503 `draining` 体上的 `reason`;
|
|
18
|
+
* · 501 `capability.drain_state_required` —— 宿主没有收尾链(嵌入形):没有可进入的排空;
|
|
19
|
+
* · 409 `conflict.fleet_identity` —— 身份四元与本引擎不符(拒句点名不符的字段,不回显值)⇒ {@link import("../errors.js").ConflictError}。
|
|
20
|
+
* 🔴 **不自动重试**(非提交类 POST,本包从不重发它):要重试就**按同一 `actionId` 重发**,那是幂等的(引擎答 `already_draining`,不重置期限)。
|
|
21
|
+
* ⚠️ server ≤7.120.x 上这条路由收的是 `{reason}`,对本体答 400 —— 先读 `/health`(有 `auth` 三键即 ≥7.121.0)再发。
|
|
22
|
+
*/
|
|
23
|
+
async drain(request, opts) {
|
|
24
|
+
return this.t.request({ method: "POST", path: "/v1/admin/drain", body: request, signal: opts?.signal });
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=admin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin.js","sourceRoot":"","sources":["../../src/resources/admin.ts"],"names":[],"mappings":"AA2CA,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,KAAK,CAAC,OAAqB,EAAE,IAA+B;QAChE,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1G,CAAC;CACF"}
|
|
@@ -26,7 +26,8 @@ export interface ApprovalExemption {
|
|
|
26
26
|
* · `synced` — 首帧快照发完,`{count}`。**这之后**才是真增量。
|
|
27
27
|
* · `resolved` — 一条挂起消失(被决/过期/GC),`{sessionId, toolCallId}`。
|
|
28
28
|
* · `heartbeat` — 15s 保活;注意它是**真帧**(`data:{"type":"heartbeat"}`),不是裸 `:` 注释行。
|
|
29
|
-
* · `error` — 15 分钟帽:`{errorCode:"STREAM_MAX_DURATION", message}
|
|
29
|
+
* · `error` — 15 分钟帽:`{errorCode:"STREAM_MAX_DURATION", message}`;或(server ≥7.122.0)排空终帧 `{errorCode:"draining", message}`(这台实例进入排空 / 换代,
|
|
30
|
+
* 排空进入那一拍收到,码与句同计费提交的 503 `draining`);两者之后 server 都主动收流 ⇒ **重连**(排空那一帧重连到替代实例)。
|
|
30
31
|
* 仍是**开集**(`(string & {})`):不解析增量的消费方可以把任何非 heartbeat 事件当「变了」信号,回头拉
|
|
31
32
|
* 权威列表(`list()`)—— 那条兜底路子一直有效,只是不再是「因为形状没确认」。
|
|
32
33
|
*
|
|
@@ -264,8 +265,10 @@ export declare class ApprovalsResource {
|
|
|
264
265
|
* and {@link ApprovalsResource.list} for the operator `owner` semantics — `?owner=` is honored identically here
|
|
265
266
|
* (`routes/approvals-assistant.ts:81-86`).
|
|
266
267
|
* ⚠️ The server ends the stream itself at its 15-minute cap, announcing it with an `error` frame
|
|
267
|
-
* (`errorCode: "STREAM_MAX_DURATION"`)
|
|
268
|
-
*
|
|
268
|
+
* (`errorCode: "STREAM_MAX_DURATION"`), and — server >= 7.122.0 — when the instance enters drain, announcing it with an `error`
|
|
269
|
+
* frame `errorCode: "draining"` (same code and sentence as the billable-submit 503 `draining`; the stream is closed right after, and the
|
|
270
|
+
* reconnect lands on the replacement instance); this loop simply reconnects on both — but a consumer that mirrors frames
|
|
271
|
+
* onward should not forward either one as a failure. */
|
|
269
272
|
stream(opts?: {
|
|
270
273
|
owner?: string;
|
|
271
274
|
signal?: AbortSignal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../src/resources/approvals.ts"],"names":[],"mappings":"AAAA;;mFAEmF;AACnF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,sBAAsB,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACvG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAI9F;;4DAE4D;AAC5D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAC;CACnB;AAED
|
|
1
|
+
{"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../src/resources/approvals.ts"],"names":[],"mappings":"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"}
|
|
@@ -175,8 +175,10 @@ export class ApprovalsResource {
|
|
|
175
175
|
* and {@link ApprovalsResource.list} for the operator `owner` semantics — `?owner=` is honored identically here
|
|
176
176
|
* (`routes/approvals-assistant.ts:81-86`).
|
|
177
177
|
* ⚠️ The server ends the stream itself at its 15-minute cap, announcing it with an `error` frame
|
|
178
|
-
* (`errorCode: "STREAM_MAX_DURATION"`)
|
|
179
|
-
*
|
|
178
|
+
* (`errorCode: "STREAM_MAX_DURATION"`), and — server >= 7.122.0 — when the instance enters drain, announcing it with an `error`
|
|
179
|
+
* frame `errorCode: "draining"` (same code and sentence as the billable-submit 503 `draining`; the stream is closed right after, and the
|
|
180
|
+
* reconnect lands on the replacement instance); this loop simply reconnects on both — but a consumer that mirrors frames
|
|
181
|
+
* onward should not forward either one as a failure. */
|
|
180
182
|
async *stream(opts) {
|
|
181
183
|
let failures = 0;
|
|
182
184
|
const q = opts?.owner ? `?owner=${encodeURIComponent(opts.owner)}` : "";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/resources/approvals.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/resources/approvals.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,10 +58,11 @@ export declare class AssistantResource {
|
|
|
58
58
|
* 🔴 **体键闭集**(server ≥7.86.0 / S-438):受理集 = `boundCallId` / `decision` / `editedPlan` /
|
|
59
59
|
* `permissionModeAfter` / `reason`;其余顶层键 400 `request.body_shape`(拒**不**丢,拒体带 `unknownKeys` /
|
|
60
60
|
* `unsupportedKeys` 两张机读表)。
|
|
61
|
-
* 🔴 **`permissionModeAfter`**(server ≥7.86.0
|
|
62
|
-
*
|
|
63
|
-
*
|
|
64
|
-
* (
|
|
61
|
+
* 🔴 **`permissionModeAfter`**(server ≥7.86.0):批准之后这条 task 继续跑在哪一档 ——
|
|
62
|
+
* 三条 400 各有自己的码(按码匹配,句子文案在 7.122.0 改过):值出闭集 `request.field_invalid` ·
|
|
63
|
+
* 配了 `reject`(server ≥7.122.0:`approve` 与 `edit` 都把计划带出 plan、都收这一位;≤7.121.x 只收 `approve`)`request.field_conflict` ·
|
|
64
|
+
* 这条 task 的**存储**模式词不是 `plan`(7.122.0 起 run 的模式词只有存储体一个源;运维 `AUTONOMY=plan` 盖进入口的任务存储词就是 plan,照收)`request.field_conflict`。
|
|
65
|
+
* 缺席折 `"default"`(老壳零改动照常执行计划,只是每次写仍征询)。语义与直连门签名形见 {@link PlanReviewRequest.permissionModeAfter}。
|
|
65
66
|
* 🔴 [2400] HITL-13 前置:同 {@link AssistantResource.resume} —— checkpointStore(先读 `capabilities().approvals`)
|
|
66
67
|
* + durable run store(无则 501 `capability.run_store_required`,`routes/approvals-assistant.ts:362`)。 */
|
|
67
68
|
planReview(taskId: string, req: PlanReviewRequest, opts?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.d.ts","sourceRoot":"","sources":["../../src/resources/assistant.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;mCAmBmC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAiB,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAyBlH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;wGAEoG;IAC9F,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAC;IAU5F;;;;sFAIkF;IAC5E,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAiBjG;;;;4GAIwG;IAClG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAQ3F
|
|
1
|
+
{"version":3,"file":"assistant.d.ts","sourceRoot":"","sources":["../../src/resources/assistant.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;mCAmBmC;AACnC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAiB,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAyBlH,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;wGAEoG;IAC9F,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,QAAQ,EAAE,CAAA;KAAE,CAAC;IAU5F;;;;sFAIkF;IAC5E,KAAK,CAAC,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,aAAa,EAAE,CAAA;KAAE,CAAC;IAiBjG;;;;4GAIwG;IAClG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAQ3F;;;;;;;;;;;;;2GAauG;IACjG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,iBAAiB,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;IASvH;;;;;8FAK0F;IACpF,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAO7F"}
|
|
@@ -67,10 +67,11 @@ export class AssistantResource {
|
|
|
67
67
|
* 🔴 **体键闭集**(server ≥7.86.0 / S-438):受理集 = `boundCallId` / `decision` / `editedPlan` /
|
|
68
68
|
* `permissionModeAfter` / `reason`;其余顶层键 400 `request.body_shape`(拒**不**丢,拒体带 `unknownKeys` /
|
|
69
69
|
* `unsupportedKeys` 两张机读表)。
|
|
70
|
-
* 🔴 **`permissionModeAfter`**(server ≥7.86.0
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* (
|
|
70
|
+
* 🔴 **`permissionModeAfter`**(server ≥7.86.0):批准之后这条 task 继续跑在哪一档 ——
|
|
71
|
+
* 三条 400 各有自己的码(按码匹配,句子文案在 7.122.0 改过):值出闭集 `request.field_invalid` ·
|
|
72
|
+
* 配了 `reject`(server ≥7.122.0:`approve` 与 `edit` 都把计划带出 plan、都收这一位;≤7.121.x 只收 `approve`)`request.field_conflict` ·
|
|
73
|
+
* 这条 task 的**存储**模式词不是 `plan`(7.122.0 起 run 的模式词只有存储体一个源;运维 `AUTONOMY=plan` 盖进入口的任务存储词就是 plan,照收)`request.field_conflict`。
|
|
74
|
+
* 缺席折 `"default"`(老壳零改动照常执行计划,只是每次写仍征询)。语义与直连门签名形见 {@link PlanReviewRequest.permissionModeAfter}。
|
|
74
75
|
* 🔴 [2400] HITL-13 前置:同 {@link AssistantResource.resume} —— checkpointStore(先读 `capabilities().approvals`)
|
|
75
76
|
* + durable run store(无则 501 `capability.run_store_required`,`routes/approvals-assistant.ts:362`)。 */
|
|
76
77
|
async planReview(taskId, req, opts) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../src/resources/assistant.ts"],"names":[],"mappings":"AAgCA,2EAA2E;AAC3E,SAAS,aAAa,CAAC,CAAmB;IACxC,OAAO;QACL,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,CAAmB;IACxC,OAAO,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,OAAO,iBAAiB;IACC;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;;wGAEoG;IACpG,KAAK,CAAC,KAAK,CAAC,IAA+C;QACzD,yFAAyF;QACzF,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAwB;YAC3C,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,sBAAsB,CAAC,EAAE;YAC/B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;;;sFAIkF;IAClF,KAAK,CAAC,KAAK,CAAC,IAA+C;QACzD,MAAM,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,kGAAkG;QAClG,wFAAwF;QACxF,8EAA8E;QAC9E,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAgC;YAC5D,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,sBAAsB,CAAC,EAAE;YAC/B,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;QACH,mEAAmE;QACnE,yDAAyD;QACzD,+DAA+D;QAC/D,+DAA+D;QAC/D,OAAO,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,CAAC;IAED;;;;4GAIwG;IACxG,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,IAA+B;QAC1D,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAsB;YACzC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,uBAAuB,kBAAkB,CAAC,MAAM,CAAC,SAAS;YAChE,MAAM,EAAE,IAAI,EAAE,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../src/resources/assistant.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,9 +14,15 @@ export declare class LeaderResource {
|
|
|
14
14
|
* 🔴 **leader 面缺席时的答法(server ≥7.116.0 改了)**:≤7.115.x 的 `LEADER_ENABLED` 关闭时 `if (deps.leaderEndpoint)` 不成立 ⇒ 整条路由**未匹配**,落全局 404 `not_found.route`
|
|
15
15
|
* (4.3.0 更正,FW-11:那时「没有 501 这条臂」);**7.116.0 起路由恒挂载**,没有 leader 面的部署上 `POST /v1/leader` 与 `GET /v1/leader/:id` 一律答
|
|
16
16
|
* **501 `capability.leader_endpoint_required`**(新码,{@link import("../errors.js").CapabilityUnavailableError};多租户形下身份门 401 仍先于 501,不泄露部署形)。
|
|
17
|
-
* ⇒ **面缺席的判别按 `errorCode`,别按状态码**(404 在 ≥7.116.0 上只剩「真不存在 / 非 owner」);要预判读 `capabilities().leader`(
|
|
17
|
+
* ⇒ **面缺席的判别按 `errorCode`,别按状态码**(404 在 ≥7.116.0 上只剩「真不存在 / 非 owner」);要预判读 `capabilities().leader`(≥7.122.0:面在场 ∧ 运维入口地板收 leader 提交,读法单写在 `Capabilities.leader` 型注;位为 false 时按提交答的 `errorCode` 分 501 面缺席 / 422 入口地板不收)。
|
|
18
18
|
* 对老 server(≤7.115.x)面缺席仍是 404 —— 同一分支两种答法并存,所以 `catch` 里认 `CapabilityUnavailableError` **与** 404 `not_found.route` 两种。(SDK 全覆盖批 2026-07-17:原 TODO(M3+) 桩接线。)
|
|
19
19
|
*
|
|
20
|
+
* 🔴 **`AUTONOMY=plan` 的部署拒这条车道(server ≥7.122.0)**:运维设了 `AUTONOMY=plan` 时 `POST /v1/leader` 答 **422 `request.autonomy_lane_refused`**
|
|
21
|
+
* ({@link import("../errors.js").BadRequestError};`capabilities().leader` 位读 **false** —— 与受理口读同一对判据;≤7.121.x 上它只读面在场、不预言受理)—— leader 的 worker 会话没有计划审阅通道,
|
|
22
|
+
* 交出计划就停在一张没人能决的卡上,所以受理口响亮拒、**一条 run 都不建**(同一个 `Idempotency-Key` 重投也是 422,**不消费**键)。出路:改走 `POST /v1/runs`
|
|
23
|
+
* (计划经 `assistant.planReview` 审阅),或请运维改设 `AUTONOMY=read-only` / `ask`。事先读 `client.policy` 的 `autonomy`;按 `errorCode` 分支。
|
|
24
|
+
* 与 `request.host_posture_refused` 不同轴(那枚是托管 / 租户姿态)。
|
|
25
|
+
*
|
|
20
26
|
* 🔴 facade 审计(2026-07-24,SDK 全量核查 GD 组):此前这五个字段里只有 `objective` 是类型必填,
|
|
21
27
|
* `durableRemote`/`testCmd`/`seedCmd`/`baseSha` 全靠 `[k:string]:unknown` 兜底——但服务端后台
|
|
22
28
|
* runLeader 实际无条件要求全部五个非空(`wire.ts:368`),同步 HTTP 门此前只查 `objective`,一个
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leader.d.ts","sourceRoot":"","sources":["../../src/resources/leader.ts"],"names":[],"mappings":"AAAA;;;;;qGAKqG;AACrG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/D,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC
|
|
1
|
+
{"version":3,"file":"leader.d.ts","sourceRoot":"","sources":["../../src/resources/leader.ts"],"names":[],"mappings":"AAAA;;;;;qGAKqG;AACrG,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE/D,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDA8CmD;IAC7C,MAAM,CACV,GAAG,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAC1H,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,WAAW,CAAC;QACrB;;;;0EAIkE;QAClE,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GACA,OAAO,CAAC,aAAa,CAAC;IAiBzB,gEAAgE;IAC1D,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,YAAY,CAAC;CAGvF"}
|
package/dist/resources/leader.js
CHANGED
|
@@ -8,9 +8,15 @@ export class LeaderResource {
|
|
|
8
8
|
* 🔴 **leader 面缺席时的答法(server ≥7.116.0 改了)**:≤7.115.x 的 `LEADER_ENABLED` 关闭时 `if (deps.leaderEndpoint)` 不成立 ⇒ 整条路由**未匹配**,落全局 404 `not_found.route`
|
|
9
9
|
* (4.3.0 更正,FW-11:那时「没有 501 这条臂」);**7.116.0 起路由恒挂载**,没有 leader 面的部署上 `POST /v1/leader` 与 `GET /v1/leader/:id` 一律答
|
|
10
10
|
* **501 `capability.leader_endpoint_required`**(新码,{@link import("../errors.js").CapabilityUnavailableError};多租户形下身份门 401 仍先于 501,不泄露部署形)。
|
|
11
|
-
* ⇒ **面缺席的判别按 `errorCode`,别按状态码**(404 在 ≥7.116.0 上只剩「真不存在 / 非 owner」);要预判读 `capabilities().leader`(
|
|
11
|
+
* ⇒ **面缺席的判别按 `errorCode`,别按状态码**(404 在 ≥7.116.0 上只剩「真不存在 / 非 owner」);要预判读 `capabilities().leader`(≥7.122.0:面在场 ∧ 运维入口地板收 leader 提交,读法单写在 `Capabilities.leader` 型注;位为 false 时按提交答的 `errorCode` 分 501 面缺席 / 422 入口地板不收)。
|
|
12
12
|
* 对老 server(≤7.115.x)面缺席仍是 404 —— 同一分支两种答法并存,所以 `catch` 里认 `CapabilityUnavailableError` **与** 404 `not_found.route` 两种。(SDK 全覆盖批 2026-07-17:原 TODO(M3+) 桩接线。)
|
|
13
13
|
*
|
|
14
|
+
* 🔴 **`AUTONOMY=plan` 的部署拒这条车道(server ≥7.122.0)**:运维设了 `AUTONOMY=plan` 时 `POST /v1/leader` 答 **422 `request.autonomy_lane_refused`**
|
|
15
|
+
* ({@link import("../errors.js").BadRequestError};`capabilities().leader` 位读 **false** —— 与受理口读同一对判据;≤7.121.x 上它只读面在场、不预言受理)—— leader 的 worker 会话没有计划审阅通道,
|
|
16
|
+
* 交出计划就停在一张没人能决的卡上,所以受理口响亮拒、**一条 run 都不建**(同一个 `Idempotency-Key` 重投也是 422,**不消费**键)。出路:改走 `POST /v1/runs`
|
|
17
|
+
* (计划经 `assistant.planReview` 审阅),或请运维改设 `AUTONOMY=read-only` / `ask`。事先读 `client.policy` 的 `autonomy`;按 `errorCode` 分支。
|
|
18
|
+
* 与 `request.host_posture_refused` 不同轴(那枚是托管 / 租户姿态)。
|
|
19
|
+
*
|
|
14
20
|
* 🔴 facade 审计(2026-07-24,SDK 全量核查 GD 组):此前这五个字段里只有 `objective` 是类型必填,
|
|
15
21
|
* `durableRemote`/`testCmd`/`seedCmd`/`baseSha` 全靠 `[k:string]:unknown` 兜底——但服务端后台
|
|
16
22
|
* runLeader 实际无条件要求全部五个非空(`wire.ts:368`),同步 HTTP 门此前只查 `objective`,一个
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leader.js","sourceRoot":"","sources":["../../src/resources/leader.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C
|
|
1
|
+
{"version":3,"file":"leader.js","sourceRoot":"","sources":["../../src/resources/leader.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,CAAY;QAAZ,MAAC,GAAD,CAAC,CAAW;IAAG,CAAC;IAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uDA8CmD;IACnD,KAAK,CAAC,MAAM,CACV,GAA0H,EAC1H,IAQC;QAED,2EAA2E;QAC3E,2DAA2D;QAC3D,wDAAwD;QACxD,qDAAqD;QACrD,+BAA+B;QAC/B,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;YACpB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,GAAG;YACT,MAAM,EAAE,IAAI,EAAE,MAAM;YACpB,oEAAoE;YACpE,iEAAiE;YACjE,GAAG,CAAC,IAAI,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvF,CAAC,CAAC;IACL,CAAC;IAED,gEAAgE;IAChE,KAAK,CAAC,GAAG,CAAC,WAAmB,EAAE,IAA+B;QAC5D,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,cAAc,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACxH,CAAC;CACF"}
|
package/dist/resources/ops.d.ts
CHANGED
|
@@ -127,7 +127,8 @@ export declare class SendfileLinksResource {
|
|
|
127
127
|
* 是名单里的 principal,否则 403 `auth.operator_only`(空名单 ⇒ **谁都不是** operator,不是「全员」)。
|
|
128
128
|
* 🔴 **server ≥7.116.0:名单空而门生效(多租户形)⇒ 501 `capability.operator_principals_required`**(对任何身份,先于授权;出路 = 配 `OPERATOR_PRINCIPALS`;
|
|
129
129
|
* ≤7.115.x 这一形是 403);名单**非空**而不在其中仍是 403。按 `errorCode` 分支(单用户名单空形另有本机自用律,不变)。
|
|
130
|
-
*
|
|
130
|
+
* 同一条适用于其余运维口:`POST /v1/admin/config/refresh` / `/v1/ops/retention/*` / opt-out 授权表 / 多租户的 `GET /v1/outcomes`;排空口 `POST /v1/admin/drain`
|
|
131
|
+
* 的门序与拒码单写在 `client.admin.drain`(那一口名单空对任何部署形都是 501)。
|
|
131
132
|
* 注意「没开 REQUIRE_PRINCIPAL」**不等于**开放:只要部署列了 operator 名单,匿名/非名单调用一样 403。
|
|
132
133
|
* 唯一开放的姿势 = 空名单 ∧ 非多租户(单租户 turnkey,唯一的用户就是 operator)。
|
|
133
134
|
* 老 server(<7.4.0)整条路由不存在 ⇒ 404,按「面不在」处置。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ops.d.ts","sourceRoot":"","sources":["../../src/resources/ops.ts"],"names":[],"mappings":"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"}
|
package/dist/resources/ops.js
CHANGED
|
@@ -81,7 +81,8 @@ export class SendfileLinksResource {
|
|
|
81
81
|
* 是名单里的 principal,否则 403 `auth.operator_only`(空名单 ⇒ **谁都不是** operator,不是「全员」)。
|
|
82
82
|
* 🔴 **server ≥7.116.0:名单空而门生效(多租户形)⇒ 501 `capability.operator_principals_required`**(对任何身份,先于授权;出路 = 配 `OPERATOR_PRINCIPALS`;
|
|
83
83
|
* ≤7.115.x 这一形是 403);名单**非空**而不在其中仍是 403。按 `errorCode` 分支(单用户名单空形另有本机自用律,不变)。
|
|
84
|
-
*
|
|
84
|
+
* 同一条适用于其余运维口:`POST /v1/admin/config/refresh` / `/v1/ops/retention/*` / opt-out 授权表 / 多租户的 `GET /v1/outcomes`;排空口 `POST /v1/admin/drain`
|
|
85
|
+
* 的门序与拒码单写在 `client.admin.drain`(那一口名单空对任何部署形都是 501)。
|
|
85
86
|
* 注意「没开 REQUIRE_PRINCIPAL」**不等于**开放:只要部署列了 operator 名单,匿名/非名单调用一样 403。
|
|
86
87
|
* 唯一开放的姿势 = 空名单 ∧ 非多租户(单租户 turnkey,唯一的用户就是 operator)。
|
|
87
88
|
* 老 server(<7.4.0)整条路由不存在 ⇒ 404,按「面不在」处置。
|
|
@@ -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":"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"}
|
|
@@ -72,8 +72,9 @@ export type CcImportSettingsLayer = "userSettings" | "projectSettings" | "localS
|
|
|
72
72
|
* 🔴 **`root` 收不收,判据只有一条,本包各处(导入层 {@link CcImportLayer.root}、判别式串 `project:<root>` 的写 / 撤 / 列举过滤)都指这里:**
|
|
73
73
|
* · **server ≥7.120.0**:root 必须是**完整绝对路径** —— POSIX `/…`、Windows 盘符根 `X:\…` / `X:/…`、UNC 根 `\\host\…`
|
|
74
74
|
* (判据 = 引擎的 durable scope 谓词,server 各入口直接调它,不另抄一份)。相对路径(`proj`、`./x`、`~/x`)与盘符无根
|
|
75
|
-
* (`C:`、`C:x`)一律 400
|
|
76
|
-
* 写 / 撤 / cc-import
|
|
75
|
+
* (`C:`、`C:x`)一律 400;码随入口:写 / 撤 / cc-import 预览 `request.body_shape`,列举过滤 `request.query_invalid`。**按 `errorCode` 分支**,句子是给人读的:
|
|
76
|
+
* 写 / 撤 / 列举过滤三口的 `error` 逐字 =「scope must be 'global' or 'project:<root>' with an absolute root」;cc-import 预览那份体里没有 `scope` 字段 ——
|
|
77
|
+
* **server ≥7.121.0** 的 `error` = `layers[<i>].root must be an absolute path`(`<i>` = 第一个被拒的层的下标,从 0 起;判据不变),7.120.x 回的是上面那句 scope 句。
|
|
77
78
|
* · **≤7.119.x**:只判**非空**(空串 400);相对 root 照收照落。这样的存量行在 7.120.0 上**不生效**:SQL 后端由 server 的一次性迁移
|
|
78
79
|
* 在起服时删掉(迁移窗内;运维日志逐行一条 warn,点名工具名与 root);文件后端(`local`)上它们留在店里、列举里看不见、
|
|
79
80
|
* 撤销口删不动,每次 run 被丢并在会话流上收一帧 `engine_notice` `permission.rule_row_dropped`(`detail.rows[]` 点名 `rule` / `scopeRoot`)。
|
|
@@ -140,8 +141,8 @@ export interface CcImportLayerReport {
|
|
|
140
141
|
* 一层交上来的 settings(server 侧 zod 是 `.strict()` —— 多一个键 = 400,把 `content` 拼成 `contents`
|
|
141
142
|
* 的客户端应当场知道,而不是拿到一份「零候选」的预览去纳闷)。
|
|
142
143
|
*
|
|
143
|
-
* 🔴 `root` 的判据见 {@link RuleScope}(server ≥7.120.0:**完整绝对路径**;不收 ⇒ 400 `request.body_shape
|
|
144
|
-
*
|
|
144
|
+
* 🔴 `root` 的判据见 {@link RuleScope}(server ≥7.120.0:**完整绝对路径**;不收 ⇒ 400 `request.body_shape`、**不铸票**;`error` 在 server ≥7.121.0 =
|
|
145
|
+
* `layers[<i>].root must be an absolute path`(点名第一个被拒的层),7.120.x =「scope must be 'global' or 'project:<root>' with an absolute root」)。**三种层同一条**:`userSettings` 层的 root
|
|
145
146
|
* 不进 scope,但在这份体里是同一个字段、同一条判据。≤7.119.x 只判非空:空串回的是体形句
|
|
146
147
|
* 「body must be {layers:[{layer,path,root,content}]}」,相对 root 预览照收、票照铸。
|
|
147
148
|
* 上限:单层 `content` ≤ 16 KiB,`layers` 一次 1–3 层(超出 ⇒ 400 / 413)。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/resources/rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,4DAA4D;AAC5D,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,iBAAiB,GAAG,eAAe,CAAC;AAEzF
|
|
1
|
+
{"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/resources/rules.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+DG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,4DAA4D;AAC5D,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,iBAAiB,GAAG,eAAe,CAAC;AAEzF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,SAAS,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AAEpD,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC5B;iEAC6D;IAC7D,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,CAAC;CAClB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,qBAAqB,CAAC;IAC7B,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,qBAAqB,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,eAAe;IAC9B,yBAAyB;IACzB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,kEAAkE;IAClE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B;;;;;;;OAOG;IACH,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAClE,cAAc;IACd,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,mCAAmC;IACnC,SAAS,EAAE;QAAE,YAAY,EAAE,iBAAiB,CAAC;QAAC,cAAc,EAAE,iBAAiB,CAAA;KAAE,CAAC;CACnF;AAED;oCACoC;AACpC,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,eAAe,CAAC;IACzB,mDAAmD;IACnD,MAAM,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,cAAc,EAAE,MAAM,CAAC;IACvB;uDACmD;IACnD,QAAQ,EAAE,YAAY,CAAC;IACvB,cAAc;IACd,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAC;IACjB,2DAA2D;IAC3D,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,qDAAqD;IACrD,eAAe,EAAE,OAAO,CAAC;IACzB,iEAAiE;IACjE,GAAG,EAAE,OAAO,CAAC;CACd;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,cAAc;IAC7B,sFAAsF;IACtF,OAAO,EAAE,sBAAsB,EAAE,CAAC;IAClC,yBAAyB;IACzB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAwB;AACxB,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,cAAc,CAAC;CACxB;AAID;;;;;GAKG;AACH,MAAM,WAAW,OAAO;IACtB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;AAE/D;;;;;;GAMG;AACH,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,OAAO,CAAC;IACb,MAAM,EAAE,aAAa,CAAC;IACtB,sEAAsE;IACtE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,aAAa;IAC5B;0CACsC;IACtC,QAAQ,EAAE,YAAY,CAAC;IACvB,qFAAqF;IACrF,IAAI,EAAE,MAAM,CAAC;IACb;iDAC6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,KAAK,EAAE,cAAc,CAAC;IACtB;0CACsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,EAAE,OAAO,EAAE,CAAC;IAChB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACvD;;;OAGG;IACH,MAAM,EAAE,MAAM,GAAG,iBAAiB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;CACpD;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,oEAAoE;IACpE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB;qCACiC;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;0CAEsC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;iBACa;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,yDAAyD;AACzD,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,QAAQ,EAAE,YAAY,CAAC;IACvB,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb;iCAC6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,6DAA6D;IAC7D,MAAM,EAAE,SAAS,GAAG,OAAO,CAAC;IAC5B,sBAAsB;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,EAAE,eAAe,CAAC;CAC5B;AAED;;6DAE6D;AAC7D,MAAM,MAAM,eAAe,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC;AAIvD;;;;;;;;;GASG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;AAE/D;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wEAAwE;IACxE,QAAQ,EAAE,iBAAiB,CAAC;IAC5B;;;;;;OAMG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;8EAC0E;IAC1E,KAAK,EAAE,MAAM,CAAC;IACd;6EACyE;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,MAAM,eAAe;AACzB,gCAAgC;AAC9B;IACE;;;;mCAI+B;IAC/B,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAC9B,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,mEAAmE;IACnE,SAAS,EAAE,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAC3C;;;;;;;;;;;;;;OAcG;IACH,IAAI,EAAE,aAAa,CAAC;CACrB;AACH;;;;;;;;;;;;;;;;;;sDAkBsD;GACpD;IACE;kDAC8C;IAC9C,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC;IAC9B,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ;8DAC0D;IAC1D,SAAS,EAAE,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;CAC5C,CAAC;AAEN,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ,CAAC,CAAC;gBAAD,CAAC,EAAE,SAAS;IAEzC;;;;;;;;yDAQqD;IAC/C,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAS/G;;;;;;;yDAOqD;IAC/C,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IASpG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAiCG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAc7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6DG;IACG,KAAK,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,eAAe,CAAC;IAc/F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCG;IACG,MAAM,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAcnG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/resources/rules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"rules.js","sourceRoot":"","sources":["../../src/resources/rules.ts"],"names":[],"mappings":"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"}
|
package/dist/settings.d.ts
CHANGED
|
@@ -129,8 +129,8 @@ export interface SettingsPermissions {
|
|
|
129
129
|
* this onto the core substrate (no engine `permissionMode` field): `default`=gate 非豁免路径写(toolPolicy+onAsk
|
|
130
130
|
* ask-list;scratchpad 目录/已记住的会话豁免不问,非「逐次无一例外问」)· `acceptEdits`=cwd 内自动批准 Edit/Write、
|
|
131
131
|
* 其余仍 gate(toolPolicy 合成;**仅当 server 侧有可信 cwd 可绑时**——沙箱执行道可能无 cwd 可接线,此时
|
|
132
|
-
* acceptEdits 退化为同 default 逐次问,非静默放宽,只是自动批准域比常见宿主道窄)· `plan
|
|
133
|
-
* (`handsReadOnly:true`+present_plan)· `bypassPermissions`= gate-shape 选择「不追加 mode 派生的 fs-write ask
|
|
132
|
+
* acceptEdits 退化为同 default 逐次问,非静默放宽,只是自动批准域比常见宿主道窄)· `plan`=引擎的 plan 模式
|
|
133
|
+
* (server ≥7.122.0:服务端不另加任何东西 —— 工具表与 `default` 同面、写与非只读调用在调用时由引擎的 plan 门问 / 拒;≤7.121.x:`handsReadOnly:true`+present_plan 的只读规划)· `bypassPermissions`= gate-shape 选择「不追加 mode 派生的 fs-write ask
|
|
134
134
|
* 门」——**恒不能放宽部署/operator 基线**(server 侧 tightenTaskSpec deny-wins 折叠照压,不是「开门」)· `auto`=
|
|
135
135
|
* server 侧发的 policy 与 `default` **完全相同**(task-settings.ts 同一分支);真正的 auto-mode classifier 由
|
|
136
136
|
* core `runtimeCaps.autoMode===true && deps.autoMode!==undefined` 单独武装(与请求携带的 mode 词**无关**)——
|