@sema-agent/sdk 8.1.0 → 8.3.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 +309 -0
- package/dist/events.d.ts +5 -1
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +5 -1
- package/dist/events.js.map +1 -1
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/resources/tool-approvals.d.ts +407 -16
- package/dist/resources/tool-approvals.d.ts.map +1 -1
- package/dist/resources/tool-approvals.js +175 -1
- package/dist/resources/tool-approvals.js.map +1 -1
- package/dist/types.d.ts +293 -0
- package/dist/types.d.ts.map +1 -1
- package/openapi.yaml +745 -27
- package/package.json +1 -1
|
@@ -70,7 +70,7 @@ export type ToolApprovalDecision = "allow" | "allow_session" | "deny";
|
|
|
70
70
|
* (client-core 自持同名闭集 copy)做机器对账用——照 registry-core 值拷贝+同源锚先例。下游测试断言
|
|
71
71
|
* 自己的 copy 键集 ⊇/== 本清单,SDK 每次 additive 增键(如 1.307 的 `toolCallId`)对方当天红,
|
|
72
72
|
* 不再靠人肉追平。**新增帧字段必须同步进本清单**(有测试钉)。 */
|
|
73
|
-
export declare const TOOL_APPROVAL_FRAME_KEYS: readonly ["type", "approvalId", "toolCallId", "toolName", "sourceTaskId", "fromSubagent", "sourceAgentName", "message", "args", "argsOmitted", "governanceForced", "ruleSuggestions", "persistedRuleShadowed", "probeCause", "ruleEvidence", "delegation", "outcome"];
|
|
73
|
+
export declare const TOOL_APPROVAL_FRAME_KEYS: readonly ["type", "approvalId", "toolCallId", "toolName", "sourceTaskId", "fromSubagent", "sourceAgentName", "message", "args", "argsOmitted", "governanceForced", "requiresRealApproval", "origin", "inputHasBidi", "expiresAtMs", "expiresInMs", "serverNowMs", "ruleSuggestions", "ruleOffers", "ruleOffersAbsence", "denialLimitFallback", "persistedRuleShadowed", "probeCause", "ruleEvidence", "delegation", "parked", "outcome"];
|
|
74
74
|
/** #154 车二(core 5.18.0 design/179):**引擎铸的**一条规则候选 —— 一格「不再询问」按下去会持久化的东西。
|
|
75
75
|
*
|
|
76
76
|
* 🔴 文本由 ENGINE 铸,不由壳拼:`rule` 是 server 从被裁决命令的原字节交给引擎算出来的规范文本,回决时
|
|
@@ -88,6 +88,250 @@ export interface RuleSuggestion {
|
|
|
88
88
|
/** 规则里的命令模式(渲染用;不必再解析 `rule`)。 */
|
|
89
89
|
command: string;
|
|
90
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* 一条规则的**匹配形**闭词表 —— server `PERSISTED_RULE_MATCHES` 逐字四员(词表属主是 core 的
|
|
93
|
+
* `PersistedRuleMatch`,server 只转录并钉全等)。
|
|
94
|
+
*
|
|
95
|
+
* · `exact` —— 只放行这一条命令(`Bash(git status)`);
|
|
96
|
+
* · `prefix` —— 历史 colon-star 词界前缀(`Bash(git status:*)`),**复合前缀形的唯一拼写**,永久兼容读;
|
|
97
|
+
* · `wildcard` —— 尾 space-star(`Bash(npm run *)`);在**单命令体**上与 `prefix` 是同一个谓词,
|
|
98
|
+
* core 自 design/382 / #510 起建议面铸它。⚠️ 这是 sdk 8.1.0 的 `RuleSuggestion.match`(两员)与本形的
|
|
99
|
+
* 实质差别:老两员形会把一条合法的 `wildcard` 候选判成坏形丢掉(整格「不再询问」消失);
|
|
100
|
+
* · `subpath` —— `Read(//abs-dir/**)` 的目录只读形,**永不容纳任何命令**。
|
|
101
|
+
*
|
|
102
|
+
* 🔴 **为什么四员而不是照抄「今天的 miner 只铸三员」**:类型描述的是**消费端可能收到**的值域,而 server
|
|
103
|
+
* 的 wire 校验器(`RuleMatchSchema = z.enum(PERSISTED_RULE_MATCHES)`)对这四个词一律放行。比铸点更窄的
|
|
104
|
+
* 消费型面就是一句谎——它让 `switch` 在编译期自称穷尽,而运行期真会来第四个词。
|
|
105
|
+
*/
|
|
106
|
+
export declare const RULE_OFFER_MATCHES: readonly ["exact", "prefix", "wildcard", "subpath"];
|
|
107
|
+
export type RuleOfferMatch = (typeof RULE_OFFER_MATCHES)[number];
|
|
108
|
+
/**
|
|
109
|
+
* `batch` 臂的**一个成员** —— 复合命令某一段折出来的规则。判别位 `kind`(server
|
|
110
|
+
* `RULE_OFFER_BATCH_MEMBER_KINDS` 两员,core `RuleOfferBatchMember["kind"]` 全等钉)。
|
|
111
|
+
*
|
|
112
|
+
* `segment` = 这条成员是从**哪一段**折叠后的命令原字节铸出来的:core 明写它是**渲染座、永不参与裁决**,
|
|
113
|
+
* 与 `rule`/`command`/`directory` 同属 UNTRUSTED-for-display。⚠️ 只有 `segment` 会被 server 截长
|
|
114
|
+
* (诚实省略);`rule`/`command`/`directory` 是兑付等式的左边,**永不截**。
|
|
115
|
+
*
|
|
116
|
+
* 🔴 **成员 `kind` 不识 ⇒ 丢整只 batch,绝不丢单个成员**(core 规范性降级臂):少一个成员的合取批把
|
|
117
|
+
* 「对 N 条说 yes」渲成「对 N−1 条说 yes」,比不渲更坏;旁边的 `single` 是完整诚实的,照留。
|
|
118
|
+
*/
|
|
119
|
+
export declare const RULE_OFFER_BATCH_MEMBER_KINDS: readonly ["command", "directoryRead"];
|
|
120
|
+
export type RuleOfferBatchMember =
|
|
121
|
+
/** 历史形 + 判别位:一段 Bash 命令的规则。 */
|
|
122
|
+
{
|
|
123
|
+
kind: "command";
|
|
124
|
+
rule: string;
|
|
125
|
+
match: RuleOfferMatch;
|
|
126
|
+
command: string;
|
|
127
|
+
segment: string;
|
|
128
|
+
}
|
|
129
|
+
/** `cd <dir>` 段铸的**目录只读**授权。`directory` = 词法规范形绝对目录(渲染座,免二次解析);
|
|
130
|
+
* 本臂**没有** `match`/`command` 两座 —— 拿 `RuleSuggestion` 那种「三元组」窄读器读它会整只判假。 */
|
|
131
|
+
| {
|
|
132
|
+
kind: "directoryRead";
|
|
133
|
+
rule: string;
|
|
134
|
+
directory: string;
|
|
135
|
+
segment: string;
|
|
136
|
+
};
|
|
137
|
+
/** 一段「为什么仍未被覆盖」的闭三词集(server `UNCOVERED_SEGMENT_REASONS`,core 属主):
|
|
138
|
+
* `redirection` 永久逐次问 / `no_rule_form` 无可覆盖形 / `cap_overflow` 去重+帽挤出。 */
|
|
139
|
+
export declare const RULE_OFFER_UNCOVERED_REASONS: readonly ["redirection", "no_rule_form", "cap_overflow"];
|
|
140
|
+
export type RuleOfferUncoveredReason = (typeof RULE_OFFER_UNCOVERED_REASONS)[number];
|
|
141
|
+
/** design/382 §3.5 additive 明细座:`segment` 是折叠后的段原字节(与成员 `segment` 同一条脱敏/截长纪律,
|
|
142
|
+
* UNTRUSTED-for-display),`reason` 是上面那张闭三词集。 */
|
|
143
|
+
export interface RuleOfferUncoveredDetail {
|
|
144
|
+
segment: string;
|
|
145
|
+
reason: RuleOfferUncoveredReason;
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* `ruleOffers` **缺席的因由**(server `approval-card.ts` 的 `RuleOffersAbsenceSchema`;S-15 第五单 /
|
|
149
|
+
* core #490 修②)—— 规则车道**在场却无可给**时,引擎点名哪扇门关了:
|
|
150
|
+
* · `mandated` —— 这只 ask 是**强制逐次确认**的(治理令 / doctrine `always` / 工具自带 mark);
|
|
151
|
+
* 🔴 这一臂**不得**把人指向"去写条规则" —— 写了也不会消音,那是把用户送进一个死循环;
|
|
152
|
+
* · `shadowed` —— 有规则命中却清不掉它(与 {@link ToolApprovalFrame.persistedRuleShadowed} 同一件事的机读位);
|
|
153
|
+
* · `lane_cannot_speak` —— 车道这一次说不出话(引擎没能为这条命令铸出任何可覆盖形)。
|
|
154
|
+
*
|
|
155
|
+
* 🔴 **闭三词集,server 侧对词表外的值 `不铸键`**(不透传未知词)⇒ 消费端读到的一定是这三个之一;
|
|
156
|
+
* 尽管如此仍按**开集**分支(`default` 臂),因为 core 是词表属主、加员时 server 会随之放行。
|
|
157
|
+
* 🔴 **缺席不是断言**:它同时覆盖「有 offers」与上面三扇结构门,一帧分不出来。
|
|
158
|
+
* 🔴 **ADVISORY 展示元数据,永不是裁决输入**。
|
|
159
|
+
*/
|
|
160
|
+
export declare const RULE_OFFERS_ABSENCE_REASONS: readonly ["mandated", "shadowed", "lane_cannot_speak"];
|
|
161
|
+
export type RuleOffersAbsence = (typeof RULE_OFFERS_ABSENCE_REASONS)[number];
|
|
162
|
+
/** {@link DenialLimitFallback.limit} 的闭二词表 —— 触的是哪一道界(连续拒 / 累计拒)。 */
|
|
163
|
+
export declare const DENIAL_LIMIT_KINDS: readonly ["consecutive", "total"];
|
|
164
|
+
export type DenialLimitKind = (typeof DENIAL_LIMIT_KINDS)[number];
|
|
165
|
+
/**
|
|
166
|
+
* **auto 模式分类器的限额回落卡**(server `approval-card.ts` 的 `DenialLimitFallbackSchema`;S-114 /
|
|
167
|
+
* core 7.4.0 #548)—— 分类器连续(缺省 3)或累计(缺省 20)拒到限额的**那一次**调用不再静默 deny,
|
|
168
|
+
* 而是落成一张**必须真人批**的卡(同一次铸造同时盖 {@link ToolApprovalFrame.requiresRealApproval},两键是孪生)。
|
|
169
|
+
*
|
|
170
|
+
* 🔴 **四成员全必填**:core 的形上没有一个可选位 ⇒「少一位」不是老 core 而是坏值,server 整键不铸
|
|
171
|
+
* (绝不半铸一张让人误读计数的卡)。
|
|
172
|
+
* 🔴 `autoDenyAfterMs` = **这张卡自己**的自动拒窗(ms;`0` = 不武装 —— 部署把旋钮关了,或 TOTAL 档的卡
|
|
173
|
+
* 恒 0 等人)。**窗的执行全在引擎**:消费端(和 server)都**不得**据它自铸第二只定时器 —— 两只窗重叠
|
|
174
|
+
* 比原缺陷更坏且静默。它只用来**渲倒计时**。
|
|
175
|
+
* 🔴 **缺席不是断言**:绝大多数 ask 根本不是回落卡。
|
|
176
|
+
*/
|
|
177
|
+
export interface DenialLimitFallback {
|
|
178
|
+
/** 触限时的**连续**拒次数。 */
|
|
179
|
+
consecutive: number;
|
|
180
|
+
/** 触限时的**累计**拒次数。 */
|
|
181
|
+
total: number;
|
|
182
|
+
/** 触的是哪一道界(闭二词;按开集读)。 */
|
|
183
|
+
limit: DenialLimitKind | (string & {});
|
|
184
|
+
/** 这张卡自己的自动拒窗(ms,`0` = 不武装)。渲倒计时用,**不得**据它自铸定时器。 */
|
|
185
|
+
autoDenyAfterMs: number;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* 一只 ask 的**出身**(core `ASK_ORIGINS` 闭八词集,亲读 `@sema-agent/core` 的
|
|
189
|
+
* `dist/core/ask-origin.d.ts:54` 逐字):`content_question` / `unresolvable` / `org_unavailable` /
|
|
190
|
+
* `org_rule` / `hook` / `ask_rule` / `denial_limit_fallback` / `policy`。**引擎在门上盖章**
|
|
191
|
+
* (core 原话:engine-stamped at the gate, never a policy's claim)。
|
|
192
|
+
*
|
|
193
|
+
* 🔴 **词表的唯一属主是 core**,本类型只是**型面供给**(闭集给自动补全,`(string & {})` 让新词读得出来)——
|
|
194
|
+
* 消费端一律按**开集**分支,把未知词当"未知出身"而不是"没有出身"。
|
|
195
|
+
* 🔴 与 {@link ToolApprovalFrame.governanceForced} **不是**一回事:本词答「哪一类权威提的问」,那一位答
|
|
196
|
+
* 「**本部署运维治理层**是不是这只 ask 的门」;`origin: "policy"` 覆盖任何部署 ToolPolicy 的 ask,
|
|
197
|
+
* 治理策略产的与普通策略产的在这一个词上同形 ⇒ 顶替不了。
|
|
198
|
+
*/
|
|
199
|
+
export type AskOrigin = "content_question" | "unresolvable" | "org_unavailable" | "org_rule" | "hook" | "ask_rule" | "denial_limit_fallback" | "policy";
|
|
200
|
+
/**
|
|
201
|
+
* 一张审批卡上的**一个**「不再询问」选项(core design/375 §3.1 的判别联合;server ≥7.46.0 在
|
|
202
|
+
* `tool_approval` 帧 / `card_json` / durable park 行**三腿同形**发出,**BREAKING 换键**,前名
|
|
203
|
+
* `ruleSuggestions`、旧键同批退役无 alias)。
|
|
204
|
+
*
|
|
205
|
+
* 🔴 **判形读 `kind`,不许按下标假设形**。**序即契约**:whole-string exact 的 `single` 在场时恒 index 0、
|
|
206
|
+
* `batch` 至多一条且恒末位;core 契约基数 ≤2,server 执法帽 4(容忍余量,消费端按 ≤4 布局)。
|
|
207
|
+
*
|
|
208
|
+
* 🔴 **在场性即承诺**:本键只在**规则店真装配**时在场(与引擎 `permissionRules.storeWired` 同一个对象)。
|
|
209
|
+
* 反向**不成立**:缺席只读作「**本卡**无此选项」—— 店在场也可能没有这一格(mandated / `requiresRealApproval` /
|
|
210
|
+
* shadowed / hook 产 / inherited-unresolved / ancestor-resolved / anonymous 七族一律不带)。既不能读成
|
|
211
|
+
* 「本部署没有规则车道」(那句话看 `capabilities.permissionRules`),也不能读成「你的规则坏了」(那句话看
|
|
212
|
+
* {@link ToolApprovalFrame.persistedRuleShadowed})。
|
|
213
|
+
*
|
|
214
|
+
* 🔴 **兑付两臂,选择键不同**(见 {@link PersistRuleSelection}):`single` 臂把 `rule` 文本**原样**抄回
|
|
215
|
+
* (server 按**文本**定位,抄错 = `rule_not_offered`);`batch` 臂没有单条文本可抄(它是对全体成员的**一个**
|
|
216
|
+
* 「是」,无逐成员勾选),选择键 = 这条 offer 在数组里的**下标**。
|
|
217
|
+
*
|
|
218
|
+
* 🔴 **下标语义随腿不同**(server 两条腿的顶注逐字,消费端必读):活卡帧腿 / `card_json` / 重放帧上
|
|
219
|
+
* server 是**纯前缀截、零逐条丢弃** ⇒ 下标恒等于 core 的 offer index,**是**合法选择键;而耐久队列行腿
|
|
220
|
+
* ({@link import("../types.js").PendingCheckpoint.ruleOffers})server 对形不合的 offer 是**逐条丢弃并压紧**的
|
|
221
|
+
* ⇒ 下标会前移,且那条腿**没有兑付口** ⇒ 只能当展示/分诊座,**禁**当 `batchOfferIndex` 回兑。
|
|
222
|
+
* 消费端自己再丢坏形时同理:core 的规范性条款是「保住每个留下来成员的**原始 wire 下标**,做不到就
|
|
223
|
+
* must suppress its persistence actions entirely(fail toward asking)」。
|
|
224
|
+
*/
|
|
225
|
+
export type RuleOffer =
|
|
226
|
+
/** 一条覆盖整命令的规则。 */
|
|
227
|
+
{
|
|
228
|
+
kind: "single";
|
|
229
|
+
rule: string;
|
|
230
|
+
match: RuleOfferMatch;
|
|
231
|
+
command: string;
|
|
232
|
+
}
|
|
233
|
+
/** 复合命令的**合取批**:勾这一项 = 对 `rules[]` 全体成员一次性说是。 */
|
|
234
|
+
| {
|
|
235
|
+
kind: "batch";
|
|
236
|
+
/** 1..N 条逐段成员(段序,按规则文本去重)。core 契约 1..5,server 容忍帽 8。 */
|
|
237
|
+
rules: RuleOfferBatchMember[];
|
|
238
|
+
/** 铸卡那一刻的**诚实盈余**:这批兑完之后,按当时的覆盖快照仍未被任何规则放行的段数。
|
|
239
|
+
* `0` = 「兑完这批,这条复合命令在那份快照的口径下就全覆盖了」。它是**对铸卡快照的陈述**,
|
|
240
|
+
* 不是长期保证(并发删规则会让它过时)。 */
|
|
241
|
+
uncoveredSegments: number;
|
|
242
|
+
/** design/382 §3.5 **additive** 明细座:逐段给闭三词集的因由。在场时行数恒 = `uncoveredSegments`
|
|
243
|
+
* —— 但 **count 才是真源**:server 对坏形的座只丢座不丢批,所以本键缺席**不是**「没有未覆盖段」。 */
|
|
244
|
+
uncoveredDetail?: RuleOfferUncoveredDetail[];
|
|
245
|
+
};
|
|
246
|
+
/**
|
|
247
|
+
* P-39(server ≥7.48.0,**additive、零能力位**;cli [5254] 请托 / [5263] 定形 = offer 空间)——
|
|
248
|
+
* batch 臂成功回执上一条规则的**逐条自描述归属锚**。
|
|
249
|
+
*
|
|
250
|
+
* 病:{@link ToolApprovalRespondAck.persistedRules} 的逐条归属此前**只能靠位置**推,而位置在 wire 上
|
|
251
|
+
* 证不出来(回执序取自服务端**重铸批**的成员走序,与文档承诺的展示序只是碰巧一致——防漂等式是**集合**
|
|
252
|
+
* 等式,序不在里面)。
|
|
253
|
+
*
|
|
254
|
+
* 🔴 **两级下标同在 offer 空间 ⇒ 消费端零映射**:`offerIndex` **逐字回显**请求体的
|
|
255
|
+
* `persistRule.batchOfferIndex`(相关性确认 = 「这份回执确属我发出的那次兑付」);`memberIndex` = 帧上
|
|
256
|
+
* 那只批 `rules[]` 里的位置(逐条归属)。core 的 candidate 空间**刻意不上 wire**。
|
|
257
|
+
*/
|
|
258
|
+
export interface PersistedRuleAnchor {
|
|
259
|
+
/** 逐字回显请求体的 `persistRule.batchOfferIndex`。 */
|
|
260
|
+
offerIndex: number;
|
|
261
|
+
/** 帧上 `ruleOffers[offerIndex].rules[]` 里的位置。 */
|
|
262
|
+
memberIndex: number;
|
|
263
|
+
/** 这条成员**真正落盘**的规范文本(与 `persistedRules` 同 index 的那一条相等)。 */
|
|
264
|
+
rule: string;
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* S-134 锚①(server ≥7.46.0)—— 回决体 `persistRule` 的**两臂互斥**形,与 server
|
|
268
|
+
* `ParsedPersistRule` 逐字对位(`{kind:"text", rule, edited}` | `{kind:"batch", batchOfferIndex}`)。
|
|
269
|
+
*
|
|
270
|
+
* 🔴 **wire 上没有 `kind`**:那是 server 解析后自铸的内部判别位。sdk **不铸 server 不收的键** ——
|
|
271
|
+
* 两臂靠「哪个字段在场」区分,与 server 的手写 parser 逐字同判。
|
|
272
|
+
*
|
|
273
|
+
* 🔴 **互斥是 400,不是「同场取一」**(server 常量 `PERSIST_RULE_BATCH_EXCLUSIVE_ERROR`,文案逐字):
|
|
274
|
+
* `"persistRule.batchOfferIndex is mutually exclusive with persistRule.rule / persistRule.edited — send
|
|
275
|
+
* exactly one arm"`。两臂说的是**两次不同的授权**,猜哪个都等于替人改主意 ⇒ 类型层用 `?: never` 把它
|
|
276
|
+
* 挡在编译期,那句 400 因此永远打不到线上。
|
|
277
|
+
*
|
|
278
|
+
* 🔴 **坏形也是 400,不折不猜**(`PERSIST_RULE_BATCH_INDEX_ERROR`,文案逐字):
|
|
279
|
+
* `"persistRule.batchOfferIndex must be a non-negative integer when present"` —— 负数 / 非整数 / 非数
|
|
280
|
+
* 一律响亮拒(一个被 `|0` 折过的下标指向的是**另一条 offer**)。同族还有
|
|
281
|
+
* `PERSIST_RULE_TEXT_ERROR`(`rule` 非空且 ≤512 字符)与 `PERSIST_RULE_EDITED_FLAG_ERROR`
|
|
282
|
+
* (`"persistRule.edited must be a boolean when present"` —— 非 boolean **绝不静默当 false**,那会把一次
|
|
283
|
+
* 「我要落自由文本」悄悄折回候选臂,回来一句 `rule_not_offered`,而人以为自己写的规则被拒了)。
|
|
284
|
+
*
|
|
285
|
+
* 🔴 **体不收 scope**:顶层 `scope` 与 `persistRule.scope` 都是响亮 400
|
|
286
|
+
* (`"this endpoint does not accept a rule scope — the server mints it from where the approval happened
|
|
287
|
+
* (send neither `scope` nor `persistRule.scope`)"`)。落盘作用域由 server 从**授权发生地**自铸 ——
|
|
288
|
+
* 让携带方指定 scope = 让一次「在项目 A 里点的同意」写成覆盖项目 B(或全局)的常驻放行。
|
|
289
|
+
*
|
|
290
|
+
* ⚠️ **`decision:"deny"` 下整个 `persistRule` 根本不解析**(宽收、忽略、不 400,与 `updatedInput` 同姿势)
|
|
291
|
+
* —— 人拒了这次操作,谈持久化同意没有意义。所以上面几条 400 只在 allow 族生效(顶层 `scope` 的 400 不分
|
|
292
|
+
* decision)。
|
|
293
|
+
*/
|
|
294
|
+
export type PersistRuleSelection =
|
|
295
|
+
/**
|
|
296
|
+
* **候选臂 / 编辑臂**(同一个字段两种含义,判别位是 `edited`)。
|
|
297
|
+
*
|
|
298
|
+
* · `edited` 缺席或 `false` = **候选臂**:`rule` 必须是 {@link ToolApprovalFrame.ruleOffers} 里某条
|
|
299
|
+
* `kind:"single"` 的 `rule` **原样文本**。别拼、别改大小写、别自己加 `:*` —— server 按文本定位,
|
|
300
|
+
* 对不上就拒(`ruleRefusal: "rule_not_offered"`),不猜。
|
|
301
|
+
* · `edited: true` = **自由文本臂**(server ≥7.44.0 / #340;**先探能力位**
|
|
302
|
+
* {@link import("../types.js").Capabilities.respondFreeFormRules}):
|
|
303
|
+
* `rule` 是人在卡上手改的文本。老 worker 不认识 `edited`(未知键静默丢)会把它当候选判 ⇒ 回一句
|
|
304
|
+
* `rule_not_offered`(诚实但会被误读成「我写错了」)。落盘走引擎三道门(共享校验器 / 覆盖门:
|
|
305
|
+
* 编辑后的规则必须仍**容纳本次被裁决的命令** / scope 继承这张卡自己的),成功回执带
|
|
306
|
+
* {@link ToolApprovalRespondAck.persistedRule} = **真正落盘的规范拼写**(`Bash(adb *)` ⇒ `Bash(adb:*)`),
|
|
307
|
+
* 壳应回显它而不是输入框里的原字节。
|
|
308
|
+
*
|
|
309
|
+
* ⚠️ 与 `updatedInput`(ctrl+g 编辑放行)**同时在场 ⇒ server 拒绝这次持久化**
|
|
310
|
+
* (`rule_input_edited`):生效的调用是编辑后那份,而候选是引擎从**原始**命令铸的,给原始那条装规则
|
|
311
|
+
* 是真扩权。裁决本身照常生效。
|
|
312
|
+
*/
|
|
313
|
+
{
|
|
314
|
+
rule: string;
|
|
315
|
+
edited?: boolean;
|
|
316
|
+
batchOfferIndex?: never;
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* **批臂**(server ≥7.46.0 / design/377;能力位
|
|
320
|
+
* {@link import("../types.js").Capabilities.respondBatchRuleOffers})—— 人勾的是一条
|
|
321
|
+
* `kind:"batch"` 的合取批。值 = 那条 offer 在**帧上 `ruleOffers` 里的下标**。
|
|
322
|
+
*
|
|
323
|
+
* 🔴 **窄开只指 batch**:下标指不到 offer、或指到 `single` ⇒ `rulePersisted:false + rule_not_offered`
|
|
324
|
+
* (没渲出来的恒兑不动;`single` 臂的防伪锚是**文本等式**,index 不许旁路它)。
|
|
325
|
+
* 🔴 server 兑付前另过**防漂等式**:从被裁决命令重铸的批与人看到的批**成员文本集合逐字相等**才 confirm
|
|
326
|
+
* (coverage 漂移 ⇒ 拒,出路 = 重触发命令取新卡)。
|
|
327
|
+
* 🔴 **先探能力位**:老 worker 把本键当未知键丢掉 ⇒ 按「缺 `rule`」判 400 文本形拒(诚实,但读不出
|
|
328
|
+
* 「人勾了批」)。位缺席就别渲 batch 兑付格。
|
|
329
|
+
*/
|
|
330
|
+
| {
|
|
331
|
+
batchOfferIndex: number;
|
|
332
|
+
rule?: never;
|
|
333
|
+
edited?: never;
|
|
334
|
+
};
|
|
91
335
|
/**
|
|
92
336
|
* #154 车二:回决回执上 `ruleRefusal` 的**闭词表**——「不再询问」这次为什么没存上
|
|
93
337
|
* (server `src/tool-approval.ts` 的 `RuleRefusalReason` 逐字)。
|
|
@@ -120,7 +364,32 @@ export interface RuleSuggestion {
|
|
|
120
364
|
* `rule_lane_unavailable` 禁据以判部署,这一格同理。要判「这台部署供不供规则」只有一个正确来源:
|
|
121
365
|
* `capabilities.permissionRules`。处置 = 这一只不渲「不再询问」,**下一只照常渲**。
|
|
122
366
|
*/
|
|
123
|
-
export type RuleRefusalReason = "no-candidates" | "unknown-candidate" | "confirm-refused" | "redeem-refused"
|
|
367
|
+
export type RuleRefusalReason = "no-candidates" | "unknown-candidate" | "confirm-refused" | "redeem-refused"
|
|
368
|
+
/** #340(server ≥7.44.0)—— **编辑面在这只卡上用不了**:卡没有绑定锚(`boundInputHash` 缺席 ⇒ 无从证明
|
|
369
|
+
* 「我编辑的是显示了这条命令的那张卡」),或这台部署没打开编辑面。
|
|
370
|
+
* 🔴 **与下面的 `edit-rejected` 刻意分家,壳要做的事完全相反**:这个说「**别再渲那个输入框**」,
|
|
371
|
+
* 那个说「你写的这条不行,**改一下再来**」。 */
|
|
372
|
+
| "edit-unsupported"
|
|
373
|
+
/** #340(server ≥7.44.0)—— 人写的文本**被引擎的门拒了**:共享校验器不认这个拼写,或它不覆盖本次被裁决
|
|
374
|
+
* 的命令(「编辑可以更宽,不许换成另一条授权」)。
|
|
375
|
+
* ⚠️ **射程自 #345(server ≥7.51.0 / core 5.57.0)起收窄**:文本能独立判定的那一半(语法门 + 覆盖门)
|
|
376
|
+
* 搬到了**裁决之前** —— 那条路上 respond 在结算前就 400、**卡还在**,所以「改一下再来」今天真能来。
|
|
377
|
+
* 剩到这个词的是纵深残余(预检被跳过的路径 / 预检过了但记录级仍拒),此时卡已消费,同一把
|
|
378
|
+
* `approvalId` 再回决是 404。 */
|
|
379
|
+
| "edit-rejected"
|
|
380
|
+
/** core 7.0.0 #490②(design/382 §4.4,server ≥7.2.x 提货)—— **silent-global 死**:既无显式 scope 又无
|
|
381
|
+
* cwd 时车道**响亮拒**,不再默落 global。在没接 `ruleScopeRootFor`(host lane 未注册 launch dir)的部署上
|
|
382
|
+
* 这是**常规答复**,不是异常。出路 = 部署接上那只 resolver;server **刻意不在兑付时刻补一个
|
|
383
|
+
* `process.cwd()`**(core 契约明写 cwd = 被裁决调用的工作目录,never inferred from the process ——
|
|
384
|
+
* 编一个等于把规则锚到错误的射程上,比默落 global 更糟)。裁决照常生效。 */
|
|
385
|
+
| "scope-unresolved" | "rule_lane_unavailable" | "rule_input_edited" | "rule_not_offered" | "rule_store_error" | "rule_governance_forced"
|
|
386
|
+
/** server ≥7.48.0(#363)—— **这一行**没有可铸规则的素材:**durable(PARKED)迟到决议腿专属**。
|
|
387
|
+
* 成因闭集三条(处置相同):①这只 ask 从没进过规则车道(治理档 / 无属主 / 引擎没铸候选 / args 里读不出
|
|
388
|
+
* 命令原字节);②行由加这两列**之前**的构建落下;③行上的卡读不回来(信封 schema 判假)。
|
|
389
|
+
* 🔴 **与 `rule_lane_unavailable` 刻意分词**(与 `rule_governance_forced` 同源理由):那个词意为
|
|
390
|
+
* 「这台部署压根不供规则」,壳据它可以从此不渲这一格;而这里的真相是「车道好好的,只是**这一行**上
|
|
391
|
+
* 没有素材」—— 折成同一个词,一次 park 迟到答就能让壳把一台正常部署的整条车道判死。 */
|
|
392
|
+
| "rule_material_absent";
|
|
124
393
|
export interface ToolApprovalFrame {
|
|
125
394
|
type: "tool_approval" | "tool_approval_complete";
|
|
126
395
|
/** The id to echo back to {@link ToolApprovalsResource.respond}. */
|
|
@@ -174,6 +443,43 @@ export interface ToolApprovalFrame {
|
|
|
174
443
|
* 分辨 —— server 选择让键缺席而不是猜)。所以缺席**不得**渲染成「这门可以用表态绕开」。
|
|
175
444
|
*/
|
|
176
445
|
governanceForced?: true;
|
|
446
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.30.0 / core 5.37;#283)—— core 的 PreToolUse hook / 策略族铸的
|
|
447
|
+
* **安全类 ask 出身位**(`AskRequest.requiresRealApproval` 逐字透传)。
|
|
448
|
+
* 🔴 **真才带,缺席绝不编 `false`**(与 {@link governanceForced} 同形)。
|
|
449
|
+
* 🔴 与卡上的 `ApprovalCard.risk.requiresRealApproval`(**恒在场布尔**)**两侧契约刻意不同,别混**:
|
|
450
|
+
* 卡那一份是 durable 店形(askStore 在场)专属;**本键让 live-only 部署(店缺席、帧无卡)也读得到
|
|
451
|
+
* 出身位** —— 安全类标记不得依赖店在场。
|
|
452
|
+
* 消费语义:在场 ⇒ **一切自动放行让位**(含记住的规则与 `bypassPermissions` 姿态)。 */
|
|
453
|
+
requiresRealApproval?: true;
|
|
454
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.57.0 / core 7.5.0;S-125③/#564)—— **谁提的这一问**:
|
|
455
|
+
* core 在门上盖章的闭八词(见 {@link AskOrigin};server 逐字透传,**不自铸第二张资格表**)。
|
|
456
|
+
* 按**开集**分支(词表属主是 core);缺席 = 老引擎 / 非 ask 路径。
|
|
457
|
+
* ⚠️ 与 {@link governanceForced} 分工见 {@link AskOrigin} 顶注 —— 两者顶替不了对方。 */
|
|
458
|
+
origin?: AskOrigin | (string & {});
|
|
459
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.45.0;E-14 Trojan Source 族)—— 这只 ask 的**工具输入**
|
|
460
|
+
* (`args`)里含 **Unicode bidi 控制符**(LRM/RLM、嵌入/覆写、隔离符)。
|
|
461
|
+
* 🔴 **披露位,不是清洗位;字节零改**。审批卡是唯一一处把模型写的命令交给**人眼**判断的面,而 bidi
|
|
462
|
+
* 覆写让人眼读到的顺序与真正执行的字节顺序不同 —— 人批准的是 A、跑起来的是 B。清洗会改掉即将被执行的
|
|
463
|
+
* 那串字节(卡上显示的与真跑的不是同一个东西),**比不披露更坏**;所以 server 只报「有」,**显形归壳**
|
|
464
|
+
* (转义 / 高亮 / 加标记,壳自己定)。
|
|
465
|
+
* 🔴 **真才带,缺席绝不编 `false`**:缺席同时覆盖「真的没有」与「args 序列化不了所以扫不了」,
|
|
466
|
+
* **禁**读作「已确认干净」。
|
|
467
|
+
* ⚠️ 判据素材 = 脱敏后 args 那**一次**序列化的结果,且在**字节帽判定之前**算 —— 所以
|
|
468
|
+
* `argsOmitted:true`(卡上根本没有 args)的帧上本键**照样可能在场**,那正是人最看不见输入的一格。
|
|
469
|
+
* 判据**不看** {@link message}(那是引擎/策略写的说明文本,不是待执行输入)。 */
|
|
470
|
+
inputHasBidi?: true;
|
|
471
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.34.0;#288)—— **窗三键**,与 {@link ApprovalRequestFrame}
|
|
472
|
+
* 的同名键同名同义,让**旧族帧**也能渲倒计时(此前只有新协议帧带窗,旧壳只能眼看卡停在那儿)。
|
|
473
|
+
* · `expiresAtMs` —— 本 ask 的**绝对到期墙钟**(有店 = 行上一次铸定的值,与卡帧/落库同值;
|
|
474
|
+
* 无店 = 注册时刻算定的同名初值);
|
|
475
|
+
* · `serverNowMs` —— **帧铸造时刻**的服务器钟(倒计时锚 = 帧到手时刻,壳据它校本地时钟偏移);
|
|
476
|
+
* · `expiresInMs` —— `max(0, expiresAtMs - serverNowMs)`,现算。
|
|
477
|
+
* 🔴 **三键同生同缺**:发得出的帧恒带三个(windowZero 腿根本不发帧)。缺席 = server < 7.34.0。 */
|
|
478
|
+
expiresAtMs?: number;
|
|
479
|
+
/** 见 {@link expiresAtMs} —— 窗三键之一,`max(0, expiresAtMs - serverNowMs)`。 */
|
|
480
|
+
expiresInMs?: number;
|
|
481
|
+
/** 见 {@link expiresAtMs} —— 窗三键之一,帧铸造时刻的服务器钟。 */
|
|
482
|
+
serverNowMs?: number;
|
|
177
483
|
/**
|
|
178
484
|
* "tool_approval" only, ADDITIVE (server #154 车二 / core 5.18.0 design/179): the rule candidates the ENGINE
|
|
179
485
|
* minted for this ask — render them as the "don't ask again" options and echo the chosen one back as
|
|
@@ -204,6 +510,34 @@ export interface ToolApprovalFrame {
|
|
|
204
510
|
* has; do not read a replayed suggestion as a promise that it is still redeemable.
|
|
205
511
|
*/
|
|
206
512
|
ruleSuggestions?: RuleSuggestion[];
|
|
513
|
+
/**
|
|
514
|
+
* "tool_approval" only(server ≥7.46.0;core 5.58.0 design/375。**BREAKING 换键** —— 它整体取代上面那条
|
|
515
|
+
* 退役键 {@link ruleSuggestions},server ≥7.46.0 的三腿上旧键**一个字都不铸**,无 alias)——
|
|
516
|
+
* 引擎为这次 ask 铸的「不再询问」选项,**判别联合** `single | batch`。
|
|
517
|
+
*
|
|
518
|
+
* 形、序、在场性契约、两臂兑付法与**下标语义随腿不同**的硬条款,逐字见 {@link RuleOffer} 顶注。
|
|
519
|
+
*
|
|
520
|
+
* 🔴 **两代键并列声明,取舍序归消费端**:一台 ≥7.46.0 的引擎不会同时按两代形铸候选,所以正确的读法是
|
|
521
|
+
* 「新键**有载体**即定局(读出空也不回落),整只缺席才看旧键」—— 拿旧键顶上去等于把一份异源素材冒充成
|
|
522
|
+
* 这次 ask 的候选。现成的单点窄读器 = `@sema-agent/client-core` 的 `readRuleOfferSupply(offers, legacy)`
|
|
523
|
+
* (0.57.0 起是公面),自己再写一遍就是多一份会漂的判官。
|
|
524
|
+
*
|
|
525
|
+
* ⚠️ **兑付射程**同 {@link ruleSuggestions}:唯一兑付通道是按本帧 `approvalId` 的 **live respond 腿**
|
|
526
|
+
* (单副本进程内映射)。重放到另一副本 / 重启后那把 `approvalId` 是 404,人只能走 durable decide 腿,
|
|
527
|
+
* 而**那条腿的体不带规则位**——别把一条重放出来的 offer 读成「它还兑得动」。
|
|
528
|
+
*/
|
|
529
|
+
ruleOffers?: RuleOffer[];
|
|
530
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.55.0 / core #490 修②;S-15 第五单)—— {@link ruleOffers}
|
|
531
|
+
* 的**缺席因由**:规则车道在场却无可给时,引擎点名哪扇门关了。闭三词集与每一臂的壳指路义务逐字见
|
|
532
|
+
* {@link RuleOffersAbsence};server 侧与 `card_json` 走**同一只窄读函数** ⇒ 帧与卡同值。
|
|
533
|
+
* 🔴 引擎侧与 {@link ruleOffers} **互斥**;**缺席不是断言**;ADVISORY 展示元数据,永不是裁决输入。 */
|
|
534
|
+
ruleOffersAbsence?: RuleOffersAbsence | (string & {});
|
|
535
|
+
/** "tool_approval" only, ADDITIVE(server ≥7.57.0 / core 7.4.0 #548;S-114)—— 这只 ask 是 auto 模式
|
|
536
|
+
* 分类器的**限额回落卡**。形、四成员语义与「不得自铸第二只定时器」的硬条款逐字见
|
|
537
|
+
* {@link DenialLimitFallback};与 {@link requiresRealApproval} 是同一次铸造盖的**孪生键**。
|
|
538
|
+
* ⚠️ **耐久腿(park 行)今天不携本键**(core 的 `PendingAction` 上没有这一位);卡面那一份走
|
|
539
|
+
* `card_json`,与 park 行的 `pendingAction` 是**两条腿**,别混。 */
|
|
540
|
+
denialLimitFallback?: DenialLimitFallback;
|
|
207
541
|
/**
|
|
208
542
|
* "tool_approval" only, ADDITIVE (server ≥7.13.0 / core 5.25.0 #144): this ask **matched** one of the caller's
|
|
209
543
|
* persisted allow rules, and that rule **could not silence it**. The value is the shadowed rule's VERBATIM text
|
|
@@ -299,6 +633,14 @@ export interface ToolApprovalFrame {
|
|
|
299
633
|
depth: number;
|
|
300
634
|
agentName?: string;
|
|
301
635
|
};
|
|
636
|
+
/** **"tool_approval_complete" only**, ADDITIVE(server ≥7.42.0;#329)—— `outcome: "expired"` 一词三义
|
|
637
|
+
* (park / 当场 deny / 无设施 deny,见 {@link outcome})里 **park 那一义的显式判别位**,**真才带**。
|
|
638
|
+
* 在场 ⇔ **这条 ask 本身**按 park 路由收尾 ⇒ 壳把「卡失效」改渲「**已转后台候批**」。
|
|
639
|
+
* 🔴 **缺席禁读作「真 deny」**:无店部署 / deny 政策 / 被连坐 VOID 的兄弟都发不出这个键,
|
|
640
|
+
* 缺席只是「无 park 证据」。
|
|
641
|
+
* ⚠️ 判据是**路由**不是墓碑:常态下同一把 `approvalId` 仍可打 `respond` 走迟到受理;两种容量拒新形下
|
|
642
|
+
* live 迟到腿如实 404,壳按既有协议回落 durable decide 腿。 */
|
|
643
|
+
parked?: true;
|
|
302
644
|
/** "tool_approval_complete" only: how it settled (dialog dismiss reason). `expired` = TTL / abort / emit
|
|
303
645
|
* failure. ⚠️ What the ENGINE got for an `expired` ask depends on whether the design/172 ask ledger is on
|
|
304
646
|
* this deployment: with it (server ≥7.3.0 under `STREAM_APPROVAL_ENABLED`) the server's `expireAsk` CAS
|
|
@@ -370,6 +712,11 @@ export interface ApprovalCard {
|
|
|
370
712
|
* 语义、**「在场性即承诺」**(只在规则店真装配时在场)与兑付面的射程逐字见
|
|
371
713
|
* {@link ToolApprovalFrame.ruleSuggestions} —— live 帧 / `card_json` / 重放帧三面**同一份素材**。 */
|
|
372
714
|
ruleSuggestions?: RuleSuggestion[];
|
|
715
|
+
/** server ≥7.46.0(core 5.58.0 design/375,**BREAKING 换键**,取代上面那条退役键):引擎为这次 ask 铸的
|
|
716
|
+
* 「不再询问」选项,判别联合 `single | batch`。语义、序即契约、在场性即承诺、两臂兑付法与**下标语义
|
|
717
|
+
* 随腿不同**的硬条款,逐字见 {@link RuleOffer} 与 {@link ToolApprovalFrame.ruleOffers} ——
|
|
718
|
+
* live 帧 / `card_json` / 重放帧三面**同一份素材**(server 侧同一只 `copyRuleOffer` 投影)。 */
|
|
719
|
+
ruleOffers?: RuleOffer[];
|
|
373
720
|
/** ADDITIVE(server ≥7.13.0 / core 5.25.0 #144):被越级的那条持久规则**原文**(已脱敏 + 限长,
|
|
374
721
|
* UNTRUSTED-for-display)。语义、**「缺席 ≠ 你没有规则」** 的硬条款、以及与 {@link governanceForced}
|
|
375
722
|
* 刻意分列的理由,逐字见 {@link ToolApprovalFrame.persistedRuleShadowed} —— live 帧 / `card_json` /
|
|
@@ -404,13 +751,20 @@ export interface ApprovalCard {
|
|
|
404
751
|
/** ADDITIVE(server ≥7.23.0;A-057.④ 补公示):规则出处证据——每员=值或具名缺席词;展示/对账元数据,
|
|
405
752
|
* 永不是裁决输入。形状与语义逐字见 {@link ToolApprovalFrame.ruleEvidence}(帧与卡同一份素材)。 */
|
|
406
753
|
ruleEvidence?: ToolApprovalFrame["ruleEvidence"];
|
|
754
|
+
/** ADDITIVE(server ≥7.55.0;S-139 补公示 —— server 早随卡投出,帧与卡走**同一只窄读函数**同值):
|
|
755
|
+
* {@link ApprovalCard.ruleOffers} 的**缺席因由**。语义、闭三词集与每一臂的壳指路义务逐字见
|
|
756
|
+
* {@link RuleOffersAbsence} / {@link ToolApprovalFrame.ruleOffersAbsence}。 */
|
|
757
|
+
ruleOffersAbsence?: RuleOffersAbsence | (string & {});
|
|
758
|
+
/** ADDITIVE(server ≥7.57.0;S-139 补公示,帧卡同窄读函数同值):auto 分类器的**限额回落卡**标记。
|
|
759
|
+
* 形与硬条款逐字见 {@link DenialLimitFallback} / {@link ToolApprovalFrame.denialLimitFallback}。 */
|
|
760
|
+
denialLimitFallback?: DenialLimitFallback;
|
|
407
761
|
}
|
|
408
762
|
/** 同源锚对账面(照 {@link TOOL_APPROVAL_FRAME_KEYS} 先例):`ApprovalRequestFrame` 的**字段名清单**,
|
|
409
763
|
* 给下游值拷贝(client-core / web 各自持同名闭集 copy)做机器对账用。
|
|
410
764
|
* **新增帧字段必须同步进本清单**(有测试钉)。 */
|
|
411
765
|
export declare const APPROVAL_REQUEST_FRAME_KEYS: readonly ["type", "schemaVersion", "askId", "taskId", "kind", "card", "expiresInMs", "expiresAtMs", "serverNowMs", "approvalId"];
|
|
412
766
|
/** {@link ApprovalCard} 的字段名清单(同上,卡是嵌套结构,单独一份)。 */
|
|
413
|
-
export declare const APPROVAL_CARD_KEYS: readonly ["toolName", "message", "args", "argsOmitted", "toolCallId", "risk", "governanceForced", "ruleSuggestions", "persistedRuleShadowed", "fromSubagent", "sourceTaskId", "sourceAgentName", "delegation", "inputHasBidi", "probeCause", "ruleEvidence"];
|
|
767
|
+
export declare const APPROVAL_CARD_KEYS: readonly ["toolName", "message", "args", "argsOmitted", "toolCallId", "risk", "governanceForced", "ruleSuggestions", "ruleOffers", "persistedRuleShadowed", "fromSubagent", "sourceTaskId", "sourceAgentName", "delegation", "inputHasBidi", "probeCause", "ruleEvidence", "ruleOffersAbsence", "denialLimitFallback"];
|
|
414
768
|
/** 流内审批呈卡帧(SSE,`type` 即事件名;design/172 §3.1 + 车3 §4.1)。**两腿两形**:live 腿上它与
|
|
415
769
|
* `tool_approval`/`question`/`elicitation` 同一条 out-of-band 通道、在 token 流上交织,**不是**
|
|
416
770
|
* `AgentEvent` 臂(按 SSE `event:` 名分派);durable 腿上 server 会 append 它,于是同一帧在
|
|
@@ -622,6 +976,36 @@ export interface ToolApprovalRespondAck {
|
|
|
622
976
|
* 东西」(`rule_lane_unavailable`)。🔴 后者**四种成因共用一格、两种是本卡局限** ⇒ 禁据它判断整台部署,
|
|
623
977
|
* 逐条见 {@link RuleRefusalReason}。 */
|
|
624
978
|
ruleRefusal?: RuleRefusalReason;
|
|
979
|
+
/**
|
|
980
|
+
* #340,ADDITIVE(server ≥7.44.0)—— **自由文本臂专属**回显:真正落盘的那条规则的**规范拼写**
|
|
981
|
+
* (core 可能把 `Bash(adb *)` 规范成 `Bash(adb:*)`)。壳应当回显它,而不是输入框里的原字节。
|
|
982
|
+
*
|
|
983
|
+
* 🔴 **缺席的三种真实含义,别混**:①这次走的是**候选臂**(`edited` 未带)——server 的
|
|
984
|
+
* `editedArmEcho` 是本键的唯一成形口,候选臂回执因此**逐字节不变**(老壳按固定键集解析,多一个键就是
|
|
985
|
+
* 一次没人要的 wire 变更);②这次没落上(读 {@link rulePersisted} / {@link ruleRefusal});
|
|
986
|
+
* ③整只 `persistRule` 没带。**都不是**「规则丢了」。
|
|
987
|
+
*/
|
|
988
|
+
persistedRule?: string;
|
|
989
|
+
/**
|
|
990
|
+
* design/377,ADDITIVE(server ≥7.46.0)—— **batch 臂专属**成功回执:这次一次性落地的**全部成员**的
|
|
991
|
+
* 规范文本。合取批是**一次 yes 全体落地**;任一成员兑付被拒 ⇒ `rulePersisted:false` +
|
|
992
|
+
* `ruleRefusal:"redeem-refused"`(已落地成员**不回滚** —— dot 记录在案,重触发新卡时 deduped 幂等)。
|
|
993
|
+
*
|
|
994
|
+
* 🔴 **序**:server ≥7.48.0 起按**请求那只 batch offer 的成员序**(帧上 `ruleOffers[batchOfferIndex].rules`
|
|
995
|
+
* 的序)交付,是**承诺**不是碰巧;7.46–7.47 上它继承的是服务端重铸批的走序 —— 所以要逐条归属请读
|
|
996
|
+
* {@link persistedRuleAnchors},别按位置推。
|
|
997
|
+
* 🔴 与 {@link persistedRule} **不是同一件事**:单数键属 single/编辑臂,复数键属 batch 臂,两键不会同场。
|
|
998
|
+
*/
|
|
999
|
+
persistedRules?: string[];
|
|
1000
|
+
/**
|
|
1001
|
+
* P-39,ADDITIVE(server ≥7.48.0,**零能力位**)—— {@link persistedRules} 的**逐条自描述归属锚**,
|
|
1002
|
+
* 与它 **index 对齐**。形与两级下标的空间见 {@link PersistedRuleAnchor}。
|
|
1003
|
+
*
|
|
1004
|
+
* 🔴 **只在 batch 臂铸**(single/编辑臂无批成员坐标可言 ⇒ 整键缺席);服务端**证不出归属时同样整键缺席**
|
|
1005
|
+
* (诚实缺席,绝不编一个下标)⇒ 读到缺席即知这次只能按旧的位置法读,而 `persistedRules` 本身**一个字节
|
|
1006
|
+
* 不变**(老消费方忽略未知键 ⇒ 零感知)。
|
|
1007
|
+
*/
|
|
1008
|
+
persistedRuleAnchors?: PersistedRuleAnchor[];
|
|
625
1009
|
/**
|
|
626
1010
|
* #229,ADDITIVE(server ≥7.15.0):这次回决携带的 `note` 到底有没有**落进持久 ask 行**。
|
|
627
1011
|
*
|
|
@@ -657,21 +1041,28 @@ export declare class ToolApprovalsResource {
|
|
|
657
1041
|
* `updatedInputForwarded`。 */
|
|
658
1042
|
updatedInput?: unknown;
|
|
659
1043
|
/**
|
|
660
|
-
* #154
|
|
661
|
-
*
|
|
1044
|
+
* #154 车二起座、7.44.0/7.46.0 长成**两臂**(S-134)—— 人勾了「不再询问」时这次回决要兑付的东西。
|
|
1045
|
+
* 形、两臂互斥的编译期钉、server 四条 400 文案原文、以及 `deny` 下整字段不解析的姿势,
|
|
1046
|
+
* 逐字见 {@link PersistRuleSelection}。
|
|
662
1047
|
*
|
|
663
|
-
*
|
|
664
|
-
*
|
|
665
|
-
*
|
|
666
|
-
*
|
|
667
|
-
*
|
|
668
|
-
*
|
|
669
|
-
* `
|
|
670
|
-
*
|
|
1048
|
+
* 简表:
|
|
1049
|
+
* · **候选臂** `{ rule }` —— 把 {@link ToolApprovalFrame.ruleOffers} 里**选中那条 `kind:"single"`
|
|
1050
|
+
* 的 `rule` 文本原样**报回(server 按**文本**定位,别拼、别改大小写、别自己加 `:*`);
|
|
1051
|
+
* · **编辑臂** `{ rule, edited: true }`(≥7.44.0,先探 `capabilities.respondFreeFormRules` —— 本包
|
|
1052
|
+
* {@link import("../types.js").Capabilities.respondFreeFormRules})——
|
|
1053
|
+
* 人手改的自由文本,成功回执带 {@link ToolApprovalRespondAck.persistedRule} = 落盘的规范拼写;
|
|
1054
|
+
* · **批臂** `{ batchOfferIndex }`(≥7.46.0,先探 `capabilities.respondBatchRuleOffers` —— 本包
|
|
1055
|
+
* {@link import("../types.js").Capabilities.respondBatchRuleOffers})——
|
|
1056
|
+
* 合取批没有单条文本可抄,选择键 = 帧上 `ruleOffers` 的**下标**;成功回执带
|
|
1057
|
+
* {@link ToolApprovalRespondAck.persistedRules} + {@link ToolApprovalRespondAck.persistedRuleAnchors}。
|
|
1058
|
+
*
|
|
1059
|
+
* ⚠️ 帧上 `ruleOffers`(与退役键 `ruleSuggestions`)都缺席时**别发这一键**:**这张卡**没有可兑的
|
|
1060
|
+
* 东西,发了拿回的必定是 `rulePersisted:false` + **`rule_lane_unavailable`**(素材缺席在候选比对
|
|
1061
|
+
* **之前**就短路了,所以不会是 `rule_not_offered`)。缺席有多个成因 —— 没接规则店 / 引擎对这条命令
|
|
1062
|
+
* 铸不出候选 / 命令原字节读不出 / 这只 ask 属七族不铸 offer 之一 —— 所以**别**据一帧、也别据这一个
|
|
1063
|
+
* 拒绝理由去判断整台部署的规则车道在不在(那句话看 `capabilities.permissionRules`)。
|
|
671
1064
|
*/
|
|
672
|
-
persistRule?:
|
|
673
|
-
rule: string;
|
|
674
|
-
};
|
|
1065
|
+
persistRule?: PersistRuleSelection;
|
|
675
1066
|
/**
|
|
676
1067
|
* #229,ADDITIVE(server ≥7.15.0)—— 这次回决的**理由**(自由文本,**≤2048 字符**,超限/非串是响亮
|
|
677
1068
|
* `400 request.body_shape`,不静默截断)。落进持久 ask 行的 `decision_note` 列 = 审计面;与 durable
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-approvals.d.ts","sourceRoot":"","sources":["../../src/resources/tool-approvals.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tool-approvals.d.ts","sourceRoot":"","sources":["../../src/resources/tool-approvals.ts"],"names":[],"mappings":"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"}
|