@sema-agent/sdk 16.2.0 → 17.0.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 +116 -0
- package/dist/errors.d.ts +83 -13
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +96 -11
- package/dist/errors.js.map +1 -1
- package/dist/events.d.ts +16 -0
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js.map +1 -1
- package/dist/index.d.ts +20 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -2
- package/dist/index.js.map +1 -1
- package/dist/resources/approvals.d.ts +34 -30
- package/dist/resources/approvals.d.ts.map +1 -1
- package/dist/resources/approvals.js +30 -0
- package/dist/resources/approvals.js.map +1 -1
- package/dist/resources/memory.d.ts +4 -0
- package/dist/resources/memory.d.ts.map +1 -1
- package/dist/resources/memory.js +4 -0
- package/dist/resources/memory.js.map +1 -1
- package/dist/resources/rules.d.ts +4 -7
- package/dist/resources/rules.d.ts.map +1 -1
- package/dist/resources/rules.js.map +1 -1
- package/dist/resources/runs.d.ts +6 -0
- package/dist/resources/runs.d.ts.map +1 -1
- package/dist/resources/runs.js +6 -0
- package/dist/resources/runs.js.map +1 -1
- package/dist/resources/session-sync.d.ts.map +1 -1
- package/dist/resources/session-sync.js +2 -3
- package/dist/resources/session-sync.js.map +1 -1
- package/dist/resources/sessions.d.ts +8 -0
- package/dist/resources/sessions.d.ts.map +1 -1
- package/dist/resources/sessions.js +8 -0
- package/dist/resources/sessions.js.map +1 -1
- package/dist/resources/tasks.d.ts +18 -1
- package/dist/resources/tasks.d.ts.map +1 -1
- package/dist/resources/tasks.js +18 -1
- package/dist/resources/tasks.js.map +1 -1
- package/dist/resources/tool-approvals.d.ts +104 -84
- package/dist/resources/tool-approvals.d.ts.map +1 -1
- package/dist/resources/tool-approvals.js +55 -11
- package/dist/resources/tool-approvals.js.map +1 -1
- package/dist/settings.d.ts +20 -10
- package/dist/settings.d.ts.map +1 -1
- package/dist/sync.d.ts +7 -7
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +32 -17
- package/dist/sync.js.map +1 -1
- package/dist/types.d.ts +105 -33
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +23 -0
- package/dist/types.js.map +1 -1
- package/openapi.yaml +347 -172
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -109,6 +109,122 @@ The registry's 409 carries two opposite meanings, split by one reader (`classify
|
|
|
109
109
|
`ScopeGoneError` on the registry subpath — the target scope was deleted or re-created under the same name, nothing was
|
|
110
110
|
written, **never** retry it as a conflict).
|
|
111
111
|
|
|
112
|
+
## 17.0.0 — BREAKING changes(2026-10-07,未发布 / 待主会话发包;对表 server **7.118.0**〔shasum `6db2ab290fd88cee66252086434d51b540e2e7e8`,tag `bed34b7d`,随装 core 7.44.0〕;锁步 + 下一个 major 的删除清单一车收)—— 唯一 server 支持底线 **`3.0.0`**(不抬)
|
|
113
|
+
|
|
114
|
+
**版本判法(写明依据)**:`docs/RELEASE.md` ——「**major** = 任何 BREAKING:删 / 改名导出符号或字段、收窄类型、抬高 server 支持底线」。本版删公开成员(`settledBy` 三处、子代技能 `manifest`)、收窄三只型(`SessionManifest.snapshots` 必有 → 可选、`AskGoneState` 去开集尾、`PersistedRule.match` 去开集尾)⇒ **major ⇒ 17.0.0**。同车其余件(新型 / 新常量 / 新码映射 / 枚举加词 / 文档)单看都是 minor。底线不抬:删键不抬支持底线(与 14.0.0 / 15.0.0 / 16.0.0 同口径)。
|
|
115
|
+
|
|
116
|
+
**一句话:server 7.118.0 把「谁做的这个决定」收成一只键 `decidedBy`、把 workflow 子代审批的路由与赎回收成一个真源、把规则名交给引擎判官;本包同车删掉 `settledBy`(零别名零双读),给两种新 409 的结构化材料开属性,出四只闭集运行期常量,并把上一版留给 major 的三处过渡臂一次删掉(第四处 —— 卡面旧键 `persistedRuleShadowed` —— 按退役键的同一条口径留到支持底线抬过再删)。**
|
|
117
|
+
|
|
118
|
+
### Breaking —— 迁移表(逐条:变了什么 → 谁会 tsc 红 → 迁移动作)
|
|
119
|
+
|
|
120
|
+
| 变更 | 谁会 tsc 红 | 迁移动作 |
|
|
121
|
+
|---|---|---|
|
|
122
|
+
| **`settledBy` 删**(`ApprovalDecision` / `AskDecisionBody` / `toolApprovals.respond` 体三处)—— server 7.118.0 删、零别名,三条决定口送它一律 400 `request.body_shape`(拒在裁决之前) | 对象字面量里写 `settledBy` 的地方(TS2353)。经变量 / 宽类型绕过去的仍编译得过,本包原样透传、server 响亮 400 | **一处装配**:`settledBy: "policy"` → `decidedBy: "policy"`;见位才发(`capabilities().approvalDecidedBy === true`),位缺席 = 老 server,照老形发。`decidedBy` 两向都可(策略的放行也写得出) |
|
|
123
|
+
| 子代技能 `TaskAgentDefinition.skills[].manifest` **删**(引擎 7.41.0 退役;server ≥7.116.0 整条技能拒;≤7.115.x 收下也不生效) | 对象字面量里写它的地方(TS2353) | `manifest.allowTools` → 技能的 `allowedTools`;`allowPaths` 没有替身(圈写路径用会话规则 `allowDirs`) |
|
|
124
|
+
| `ToolApprovalFrame.persistedRuleShadowed` / `ApprovalCard.persistedRuleShadowed` **仍读**(退役键,底线抬过再删):server ≥7.117.0 不铸、≤7.116.x 仍发;与另三只退役帧键同一条口径(`SUPPORTED_SERVER_FLOOR` 抬过 7.117.0 的那一个 major 再删),型面 / 两张键表 / spec 都留着 | 无 | 新代码读 `allowRuleShadowed`(`{ member, entries, omitted? }[]`);旧键只作 ≤7.116.x 旧 server 的回落 |
|
|
125
|
+
| `SessionManifest.snapshots` / `SessionBundle.snapshots` **必有 → 可选**;`sessions.sync.manifest()` 不再在 wire 缺席时填 `[]` | 把它当数组直接读的地方(`m.snapshots[0]` / `for…of m.snapshots`:TS18048) | 按「缺席 = 这台 server(≥7.52)不发整树快照」读(`m.snapshots ?? []`);文件历史在 `fileHistory` |
|
|
126
|
+
| `AskGoneState` **去开集尾**(只剩 `PARKED` / `DENIED` / `VOID`;mapper 本来只产出这三词) | 往 `AskGoneState` 里写词外串的地方 | 无动作(经 mapper 到手的从来只有三词) |
|
|
127
|
+
| `PersistedRule.match` **去开集尾**,与卡上候选**同一只**七员闭集 `RuleOfferMatch` | 往它里写词外串的地方 | 按七员穷举(见下「新型」的 `RULE_OFFER_MATCHES`) |
|
|
128
|
+
|
|
129
|
+
> 反向钉:`packages/sdk/test/breaking-17.0.0-removals.test.ts`(六组 `@ts-expect-error` / 型等式 + 运行期不补不译不吞不重试 + src AST 墓碑与扫描器判别力自证)。
|
|
130
|
+
|
|
131
|
+
### 🔴 升级须知(三问;行为面)
|
|
132
|
+
|
|
133
|
+
1. **会话同步的文件历史:位缺席不再「照旧尝试」**。① *谁受影响*:用 `pushSessionBundle` / `pullSessionBundle` / `importSessionBundle` 搬会话、对端有 ≤7.115.x 的 server。② *不改会怎样*:无(本包已改);16.2.0–16.3.0 的读法在 7.52–7.115 的 local 后端上让改过文件的会话**整次抛**(GET history blob 对清单引用的 blob 恒 404)。③ *现在怎么读*:一条律 —— **信封只去没有一端说「没有」的地方;它引用的 blob 只在涉及的端都说「有」(`sessionSyncFileHistory === true`)时才搬**。位缺席 ∧ 信封引用 blob ⇒ `fileHistory: "skipped"`(只同步对话,`blobsPushed: 0`);只有回退边界、不引用 blob 的信封照带(`carried`)。7.52–7.115 的 SQL 后端(blob 面其实可用)上这一读法同样不搬 —— 能力位是唯一读法。调用方照旧要把 `"skipped"` 告诉用户。
|
|
134
|
+
2. **allow 侧的名字交给引擎**(server 7.118.0)。① *谁受影响*:依赖「`settings.permissions.allow` / 技能 `allowedTools` 里写错工具名当场 422 / 400」的调用方。② *不改会怎样*:写错的名字(退役名 `Task`、短名 `bash`、铸不出的协议名 `mcp__*`)现在**受理**,开跑时收 `engine_notice` `permission.allowed_tool_not_granted`(`entries[].reason:"tool_name"`,带 `currentName` —— 该写的名字);`deny` / `ask` 两桶里同一族照旧 422,工具段为空的协议名(`mcp__srv__`)每张表都拒。③ *怎么改*:读那条通告、按 `currentName` 改写。技能规则只有一种拼法:`Skill(<名>)` / `Skill(<前缀>:*)` 受理,`Skill(skill:<名>)` 422。
|
|
135
|
+
3. **两种 409 要按类分支**。① *谁受影响*:把未知 409 一律当「稍后重试」的客户端、以及对 `decide.workflow_parks_unreadable` 一律指人去续跑的壳。② *不改会怎样*:`decide.workflow_park_forked` 重试永远不会好;`workflow_parks_unreadable` 的「记录读不出」成因续跑也解不开。③ *怎么改*:`DecideWorkflowParkForkedError` ⇒ 续跑 `.runIds` 里的一条再决;`DecideWorkflowParksUnreadableError` ⇒ 先续跑 `.runId`,同码再来就是记录要运维修(`.readableHolderRunId` 在场时指出工作可以从哪条记录续上 —— 线索,不是出路)。`steering.duplicate_input_id` 先读 `.differs`:含 `"text"` 才换 key。
|
|
136
|
+
|
|
137
|
+
### 新型 / 新常量 / 新码(server 7.118.0 → 本包;键名 / 形 / 状态码一律取自发布字节)
|
|
138
|
+
|
|
139
|
+
| # | 面 | 本包 | 坐标(server 发布字节 `dist/`) |
|
|
140
|
+
|---|---|---|---|
|
|
141
|
+
| 1 | 决定体出处位 | `decidedBy?: ApprovalDecidedBy` 三处;**`APPROVAL_DECIDED_BY`**(`["person","policy"]`,冻结,与 server 同名同序)+ `ApprovalDecidedBy`;一份说明在常量上,三处成员注只写本口特有答法;能力位 `Capabilities.approvalDecidedBy`;spec `ApprovalDecidedBy` | `host-decision.js`(`APPROVAL_DECIDED_BY` / `readDecidedBy` / `SETTLED_BY_RETIRED`)· `http/routes/capabilities.js` 162 |
|
|
142
|
+
| 2 | workflow 子代 409 | 新类 **`DecideWorkflowParkForkedError`**(`.runIds`,整体成形或缺席)· `DecideWorkflowParksUnreadableError.readableHolderRunId` · 两码的注按 7.118.0 读法重写(两成因、`parks` 缺席 ⇒ `conflict.resume_context_unavailable`)· spec `ErrorResponse` +`runIds` / `readableHolderRunId` | `parked-decide.js` 103–145 |
|
|
143
|
+
| 3 | steer 重放 409 | `SteeringDuplicateInputIdError.differs` · **`STEER_REPLAY_FACETS`** + `SteerReplayFacet`(core 同名常量同序)· spec `SteerReplayFacet` | `http/routes/runs.js` 147–148 · `approval-card.js` 307–326 |
|
|
144
|
+
| 4 | 崩溃告知分族 | `SessionRecord.userInputUndrained[].kind` +`"follow_up"`;events 登记 `task.user_followup_undrained` 的 crashed 臂(`{ followUp, cause, taskId, sessionId }`) | `user-input-ledger.js`(`USER_INPUT_KIND_WORDS` / `buildCrashedUndrainedNotice`) |
|
|
145
|
+
| 5 | 新码 / 新来路 | 503 `state.mcp_reconnect_unsettled`(`ServiceStateError`,`mcpReconnect` 不自动重试;注写「没等到 ≠ 失败、重拨没被取消」)· 501 `capability.checkpoint_store_required` 的任务装配层来路 · 409 `memory.scope_home_not_directory`(`ConflictError`)· spec `mcp/reconnect` 503 臂 | `http/routes/mcp-reconnect.js` 109 · `boot/resolve-spec.js` 70 · `memory-store-refusal.js` |
|
|
146
|
+
| 6 | `approvalReach` | `TaskRequest.approvalReach?: ApprovalReach` · **`APPROVAL_REACH`**(`["none"]`,core 同名)· 能力位 `Capabilities.approvalReach` · spec `ApprovalReach` + wiring 清单 `ask.form` +`declared_none` | `http/routes/capabilities.js` 140 · `http/admission.js` |
|
|
147
|
+
| 7 | 规则 `match` | **`RULE_OFFER_MATCHES` 四员 → 七员**(+`path` —— 既存缺口,server ≥7.67.0 就有 —— 与 `name` / `name_prefix`),卡上候选与持久规则行同一只闭集;spec `RuleOfferMatch` 七员、规则行引同一只 | `permission-rule-vocab.js`(`PERSISTED_RULE_MATCHES`)· `approval-card.js`(`RuleOfferSchema`) |
|
|
148
|
+
| 8 | 技能授予绑定 / 分类器没判 | `ToolApprovalFrame` / `InboxRow` +`boundGrantDigest` / `boundGrants` / `classifierNoRuling`;`BoundSkillGrants` · **`AUTO_MODE_FALLBACK_CAUSES`** + `AutoModeFallbackCause`;帧键表 +3(卡键表不加:不进 `card_json`);`AskClass` +`classifier_no_ruling`(二十四词) | `tool-approval.js` 1111–1112 · `http/routes/approvals-assistant.js` 359–361 |
|
|
149
|
+
| 9 | 取消成因常量 | **`ABORT_CAUSES`**(根导出,冻结,与 server `ABORT_CAUSES` 同名同序;server 包根不导出那一只)+ `AbortCause` 由它派生 | `plugins/store-contracts.js` |
|
|
150
|
+
| 10 | 校准头 | `CALIBRATED_SERVER_HEAD` 7.117.0 → **7.118.0**(逐面核账写在 `_fence.ts` 校准注) | — |
|
|
151
|
+
|
|
152
|
+
同车随带:会话同步一条律(见升级须知 1;`fileHistoryVerdict`)· 发包脚本的包清单门收进一只函数(`scripts/lib/pack-manifest-gate.sh`;旧写法 `printf | grep -q` 在 `set -o pipefail` 下吃 SIGPIPE 把在场文件报缺 —— 16.3.0 首跑那一次假红的成因;读不出与真缺分两个码)· `skills/sdk-usage.md` 的 `decideAsk` 行改 `decidedBy`。
|
|
153
|
+
|
|
154
|
+
### 钉读数(一律 clean env:`AGENT_DATA_DIR=$(mktemp -d)`;真源 = 根 devDep 装下的 server 7.118.0 发布字节,lock integrity = registry `dist.integrity`)
|
|
155
|
+
|
|
156
|
+
- **门 6 首跑形**(16.3.0 的 src / spec × 7.118.0 发布字节;server 发版门读数):live 契约套 `FENCE-VERDICT kind=ahead`,11 文件 **155 过 · 1 跳过 · 3 红** —— ① `error-tariff-artifact`「decide.* 全集 ⊆ 本表」(`decide.workflow_park_forked` 无去向)② `fence-calibration`「fixture 不得高于已核账 head 7.117.0」③ `server-7117-faces` 设置编译拒那一格(allow 桶 `["Task"]` 期望 422,7.118.0 起受理)。默认全量 119 文件 **12 红** / 1984 过 / 2 跳过(`capabilities-full` 新键 · `server-keyset-parity` 三张表 · `AskClass` 属主锚四格 · 7111 两格〔铸点改名 / 锚句多 `tier`〕· 7115 / 7116 allow 侧名字层两格)。
|
|
157
|
+
- **红先基线**(同一份 16.3.0 src / spec + 本版新钉文件):`server-7118-wire` + `breaking-17.0.0-removals` 36 格 **24 红 / 12 过**(12 过 = 发布字节事实钉 / 运行期透传本来就对的格);根 typecheck **56** 处 TS 红。
|
|
158
|
+
- **逐格变异**(live,7.118.0 字节):设置编译拒的 deny / ask 两格把名字换成引擎读得出的 `Read` ⇒ 两格当场红;allow 格强走 422 臂 ⇒ 红。**换 fixture**(7.117.0 发布字节):那三格全过(allow 走 422 臂)、`server-7118-faces` 整组响亮 skip、`error-tariff-artifact` 反向格红在 `decide.workflow_park_forked` 是「孤儿码」(表 = 校准头的码集,设计如此)。
|
|
159
|
+
- **最终头**(版本 17.0.0):`npm run build` rc 0 · `npm run typecheck` rc 0 · 默认全量 **121 文件 · 2039 过 · 2 跳过 · 0 红**(rc 0;两条跳过同前几版:契约原文腿缺 `SEMA_SERVER_SRC`〔响亮 SKIP〕+ 老 server 分臂)· live 契约套 `node scripts/run-live-contract.mjs` × 7.118.0 发布字节:**`FENCE-VERDICT kind=in-range version=7.118.0 floor=3.0.0 calibrated-head=7.118.0`,12 文件 · 166 过 · 1 跳过 · 0 红**(首跑即绿,没有遇到端口竞争)。
|
|
160
|
+
- `npm pack --dry-run`:`@sema-agent/sdk@17.0.0`,249 文件,1.5 MB;零 prod 依赖。spec sha256 前缀(给发包后更新 `SHIPPED`):`spec/openapi.yaml` = `391208b2d5622f9a`;`spec/registry-openapi.yaml` = `a767fbabb34dc3f6`(未变)。
|
|
161
|
+
- **退役键口径收成一条之后重跑**(卡面旧键 `persistedRuleShadowed` 按「底线抬过再删」恢复读面):`npm run build` rc 0 · `npm run typecheck` rc 0 · 默认全量 **121 文件 · 2039 过 · 2 跳过 · 0 红** · live 契约套 × 7.118.0 发布字节 **`kind=in-range version=7.118.0`,12 文件 · 166 过 · 1 跳过 · 0 红**(首跑即绿)。
|
|
162
|
+
|
|
163
|
+
### 复审(codex `adversarial-review --model gpt-6.1-sol --scope branch --base main`,一轮)
|
|
164
|
+
|
|
165
|
+
- **1 轮**(对 feat 提交):verdict **`approve`**,**0 条发现**(「`settledBy` 决定体无别名或补键;新 workflow 409 已映射为带结构化材料的专类;闭集对拍与逐面校准依据已落入测试」)。
|
|
166
|
+
- 如实:codex 沙箱只读、**没跑测试**,结论只覆盖静读 diff 与已装发布字节核查;零发现不等于零缺陷 —— 下面「去幻觉 / 查漏」是本车自己的那一半。
|
|
167
|
+
|
|
168
|
+
### 去幻觉 / 查漏(本车自查)
|
|
169
|
+
|
|
170
|
+
- **订正处(亲跑 / 亲读推翻的)**:① 首版以为 `RULE_OFFER_MATCHES` 只差 7.118.0 的两词 —— 亲读 7.117.0 发布字节的卡 schema,`path` 早已在 enum 里(sdk 四员是既存缺口),一并补成七员。② 首版把发包清单门那次假红记成「读清单 / 列声明失败读空」—— 亲跑复现:旧写法 `printf | grep -q` 在 `set -o pipefail` 下吃 SIGPIPE,把**在场**的文件报缺(大清单上稳定复现;16.3.0 那一次二百来行、看时序 —— 那一次的成因是推断)。③ `decide.workflow_parks_unreadable` 的旧型注 / spec 段仍写「记录上根本没有 `parks` 的那一代答本码」—— 7.118.0 起那一代答 `conflict.resume_context_unavailable`,两段都标成 7.75.0–7.117.x 的读法,7.118.0 读法另起一段。
|
|
171
|
+
- **查漏 / 未闭环(显式列出)**:① `decide.workflow_park_forked` / `readableHolderRunId` / `detail.differs` / 503 `state.mcp_reconnect_unsettled` 只在发布字节腿(真铸点 × sdk 真 mapper)覆盖 —— 零模型 harness 造不出停驻的 workflow 子代卡 / 活流重放 / 半开的 MCP 服务器,live 套没有它们的黑盒格。② 「要人的卡上 `decidedBy:"policy"` 的放行 ⇒ `/decide` 409 `resume_outcome_invalid`」「老 server 的 live `respond` 对 `decidedBy` 静默丢 + 200」取自 server MIGRATION,本车没在真进程上造出那张要人的卡、也没起老 server 复现。③ 会话同步一条律的金样是假 peer × 真形 manifest,不是两台真 7.115.0 server 互推。
|
|
172
|
+
|
|
173
|
+
### 未闭环 / 候裁
|
|
174
|
+
|
|
175
|
+
1. **退役键的删除口径只有一条**:「支持底线抬过再删」。卡面旧键 `persistedRuleShadowed` 与 `ruleSuggestions` / `classifierUnavailable` / `ruleStoreUnreadable` 同形留着(同一张退役键名单、同一句注释口径),删除条件 = 底线抬过 7.117.0;`breaking-17.0.0-removals` ⑤ 是它的对照钉。
|
|
176
|
+
2. **会话同步对 7.52–7.115 的 SQL 后端也不搬了**(那一代 SQL 的 blob 面其实可用,能力位缺席读不出来):按 server 的「能力位是唯一读法」照做,代价是那一对 server 之间改过文件的会话只同步对话(结果如实报 `skipped`)。
|
|
177
|
+
3. `sessions.list({ owner: "" })` 仍不发空串(上一版留给本 major 一起定的那一问):没有调用方提出需求,本版不动。
|
|
178
|
+
|
|
179
|
+
## 16.3.0 — minor(2026-10-06 已发:registry shasum `9c531fb8595db83c87471baf8354f4389e38ac72`,1516570 字节,tag `909fa41`;对表 server **7.117.0**〔shasum `268cd1af4fb21a33273d62871f2feb546f35212d`,tag `dd5568ac`,随装 core 7.42.1〕;锁步七件;codex 一轮见下)—— 公开类型面 **additive**(零删 / 零改名 / 零收窄);🔴 **四处披露**(卡面披露键换名 / `settings.permissions.allow` 与技能清单的读法 / 设置编译拒的 422 句首 / `vision` 缺席);**server 支持底线 `3.0.0` 不变**
|
|
180
|
+
|
|
181
|
+
> 读数、复审、未闭环在下面各节(段内「同提交 build」的读数在发包后对 registry 字节复跑的结果记在根 README 升级段末与黑板发车帖)。
|
|
182
|
+
|
|
183
|
+
### 🔴 升级须知(三问)
|
|
184
|
+
|
|
185
|
+
1. **卡面披露键换名:`persistedRuleShadowed` → `allowRuleShadowed`**(server 7.117.0 / core 7.42.0;**硬破坏在 server 面,sdk 型面零删**)。① *谁受影响*:读 `tool_approval` 帧 / `approval_request` 卡 / `card_json` / 重放帧上 `persistedRuleShadowed`(串),或队列行 `riskDescriptor.shadowedRule` 的壳 —— ≥7.117.0 的 server 一个字都不再铸这两个键。② *不改会怎样*:「你的规则命中了、但这次调用必须逐次确认」那一行在新 server 上永不出现,用户只会得出「我的规则坏了」。③ *怎么改*:读新键 `allowRuleShadowed: AllowRuleShadow[]`(`{ member, entries, omitted? }`,`member` ∈ `hook` / `deployment` / `persisted` / `skill` / `request`,覆盖 allow 层五个成员而不只是规则店;`hook` 的 `entries` 恒空;卡上那句话在 `message` 里);帧 / 卡 / 队列行 `riskDescriptor` 三处同形。旧键 **不删**:`ToolApprovalFrame.persistedRuleShadowed` / `ApprovalCard.persistedRuleShadowed` 标 `@deprecated` 保留给 ≤7.116.x 的旧 server(公开字段删除 = major;与 16.2.0 技能 `manifest` 同形),登记进两张**退役键**名单,**下一个 major 删**(删除条件:支持地板抬过 7.117.0 的那一个 major)。队列行 `riskDescriptor.shadowedRule` 本包从未声明(`riskDescriptor` 型只列具名成员,读它要自己转型):SQL 后端升级起服时一次性改写成新键,**file 后端升级前的停驻行与已落盘的 run 结果上旧串原样留着**(文本仍脱敏,只缺结构化披露)—— 读这两处的消费端要同时认得旧串。滚动升级窗里 7.116.x 副本写下的流内审批卡,新副本读不动(重放跳过)。
|
|
186
|
+
2. **`settings.permissions.allow` 与技能清单:从「表态」变「免问」**(server 7.117.0)。① *谁受影响*:往 allow 桶 / 技能 `allowedTools` 里放内置工具名(`Bash` / `Write`)的调用方。② *不改会怎样*:新 server 上表里的调用**不再问**(写门 / shell 普通问也清,与参照实现同读);7.115.0–7.116.x 上它们照问。③ *怎么改*:发之前探新能力位 **`capabilities.settings.permissions.allowLayer === true`**(三段读;缺席 = 7.115.0–7.116.x〔表态,内容形 422〕或更老,别指望免问、别投内容形)。内容形(`Bash(git:*)`)受理;引擎读成空的条目(`*` / `Edit(<path-glob>)` 写路径形 / 域名形 / 带空白的名字)**不拒**,开跑时收通告 **`permission.allowed_tool_not_granted`**(user 受众、上会话流 —— 取代 7.116.x 里 operator 受众的旧码,`detail.entries[].source` ∈ `request` / `skill` / `deployment`);deny / ask 规则、`APPROVAL_REQUIRE` / `APPROVAL_NEVER_AUTO` / shell 地板 / 写保护 / 治理 / hook 的问 / plan 的问**仍问**(命中却清不掉时卡上带 `allowRuleShadowed`)。技能清单与 allow 桶读法收成一种(7.116.x 的「清单比 allow 宽」到此为止)。**另**:技能 `disallowedTools` 里引擎读成空的条目(`*` / 域名形 / 协议名带通配 / 带空白的名字)提交即 **400 `request.field_invalid`**(7.116.x 受理),退役名 / 短名与每张清单超过 1000 条也 400;升级时还停驻、体里带这种条目的任务续跑 ⇒ 409 `resume_blocked_by_policy`(`blockedBy:"request.field_invalid"`),出路 = 取消、改好条目重提。
|
|
187
|
+
3. **设置编译拒的 422 句首换了 / `vision` 缺席 / 新码**。① 422:`error` 句首由旧的、写着 tighten-only 的那一句改成 **`request settings cannot be applied as written: `**(三只桶共用这一个出口,旧句首对写收紧规则的人是误导);sdk 里**没有任何按句分派的代码**(亲 grep:`src/` 零命中),**别按句子分派,读 `errorCode`** —— 无自带码,落状态派生粗码 **`request.unprocessable`**(`BadRequestError`,422,不自动重试)。② `GET /v1/models` 条目的 **`vision` 三态**:`true` / `false` / **键缺席 = 条目没声明 `input` = 不知道**(此前报 `false`)—— 缺席时**照发并告知,别读成 `false` 把用户的图拦在本地**;spec `ModelInfo.required` 去掉了 `vision`(型本来就是可选)。③ 新码 **`config.image_invalid`**(400,`error` 以 `TaskSpec.images: ` 起;类型不在 png / jpeg / gif / webp、签名不符、解码后超 5 MiB;第一次模型调用之前拒);base64 串超 5 242 880 字符是**另一个码**(413 `request.payload_too_large`)。终态 run 的 `POST /v1/runs/:id/steer` 多两种 409(铸唤醒卡之前当场拒、不铸卡):`checkpoint.unsupported_version` / `resume_blocked_by_policy`,与 `/wake` 对同一体的答复逐字同。
|
|
188
|
+
|
|
189
|
+
### 逐件(七条 → 本包;键名 / 形 / 状态码一律取自发布字节;每件红先 → 绿,读数见各提交)
|
|
190
|
+
|
|
191
|
+
| # | 条 | 本包 | 坐标(sdk · server 发布字节) |
|
|
192
|
+
|---|---|---|---|
|
|
193
|
+
| 1 | 卡面披露键换名 | `AllowRuleShadow` / `AllowRuleMember` / `ALLOW_RULE_MEMBERS` 导出;`ToolApprovalFrame` · `ApprovalCard` · `PendingCheckpoint.riskDescriptor` +`allowRuleShadowed?`;两张键表 +`allowRuleShadowed`;`isApprovalRequestFrameV1` 对在场形校验(坏形 ⇒ 走通用卡);旧键 `@deprecated` + 退役键名单;spec 具名 `AllowRuleShadow` / `AllowRuleMember` + 帧 / 卡 / 队列行声明,旧键描述标退役 | `resources/tool-approvals.ts` · `types.ts` · `index.ts`;`approval-card.js` 214–235 / 381、`plugins/one-time-migrations.js` 289 |
|
|
194
|
+
| 2 | 能力位 `allowLayer` + 读法翻 | `Capabilities.settings.permissions.allowLayer?`;`SettingsPermissions.allow` / `SkillSpec.allowedTools` / `SkillSpec.disallowedTools` 注按代际改写(两代并写,旧代读法保留为 7.115.0–7.116.x 的读法);spec `Capabilities.settings` + `TaskRequest.settings` + `SkillSpec` | `settings.ts` · `types.ts`;`http/routes/capabilities.js` 123 |
|
|
195
|
+
| 3 | 422 句首 | sdk 零按句分派(grep 证);`allow` 注 / spec 指路 `errorCode:"request.unprocessable"`,点名新句首 | `boot/resolve-spec.js` 600 |
|
|
196
|
+
| 4 | `vision` 三态 | `ModelInfo.vision` 型注写三态与读法;spec `ModelInfo.required` 去 `vision` + 描述 | `http/routes/capabilities.js` 241;`model-select.js` `modelImageInput` |
|
|
197
|
+
| 5 | 新码 / 409 来路 | `config.image_invalid`(`tasks.ts` / `TaskRequest.images` 型注〔此前无注〕/ spec);通告码改名(`events.ts` `engine_notice` 臂登记);`ResumeBlockedByPolicyError` 第三条折叠来路;`runs.steer` / spec steer 409 臂两种新答复 | `runs.js` 85、`http/admission.js` 50、`trace/engine-notice-wire.js` 37、`http/checkpoint-ctx.js` 84 |
|
|
198
|
+
| 6 | 校准头 | `CALIBRATED_SERVER_HEAD` 7.116.1 → **7.117.0** | `test/live/_fence.ts` |
|
|
199
|
+
| 7 | 本段 | README 16.3.0 段 + 根 README「Upgrading to 16.3.0」 | — |
|
|
200
|
+
|
|
201
|
+
同车随带:发布字节腿换树旋钮 `SEMA_SERVER_DIST_DIR`(`_spec-pin.ts` / `_server-keysets.ts`,仅发车窗口用,不设 = 与此前逐字相同)· `server-7115-wire` 五格按代分臂(C1 `toMatchObject` · A1 / A2 / E1 / E2:≥7.117.0 字节读新臂)· `server-7106` T7 白名单码数按代(33 / 34)· `capabilities-full` / `stream-approval-protocol` 全键夹具加新键 · 契约套 `live/server-7117-faces`(能力位两形 / 422 句首 / vision / 技能拒 / 图片两码 / 通告帧)。
|
|
202
|
+
|
|
203
|
+
### 读数(一律 clean env:`AGENT_DATA_DIR=$(mktemp -d)`;真源 = server `dd5568ac`〔7.117.0〕同提交的干净 build —— 发车窗口内 7.117.0 尚未上 registry,发布字节腿与契约套经环境变量换树,发包后以 registry 字节复核)
|
|
204
|
+
|
|
205
|
+
- **红先基线**(基线 `e3a5370` 的 src / spec + 上述发布字节):`server-7117-wire` 31 格 **9 过 · 22 红**(9 过 = 发布字节事实钉:真 handler 字节 / 真铸点 / 现行 sdk 错误映射对新字节本来就读得对);根 typecheck 9 处 TS 红;契约套 `fence-calibration` 1 红(fixture 7.117.0 高于已核账 head 7.116.1);`server-7117-faces` 7 格对真字节全过(sdk verb 透传真字节 —— 契约套对「型 / 文档面」本来抓不到)。
|
|
206
|
+
- **整套默认全量**(`SEMA_SERVER_DIST_DIR` = 上述 build):119 文件 · **1995 过 · 2 跳过 · 1 红**;唯一一红 = `spec-shipped-lockstep-gate`「spec 相对上次发布(16.2.0)已改动,但包版本仍是 16.2.0」—— 版本三处抬到 16.3.0 即绿,本段落成时版号尚未抬。基线(`e3a5370`)118 文件 · 1965 过 · 2 跳过 · rc=0。
|
|
207
|
+
- **整套默认全量,不设旧钉版 devDep(server 7.116.0)**:119 文件 · 1984 过 · 11 跳过 · 3 红 = 上一条那一红 + `server-keyset-parity` 表 2 / 表 3 方向②(`allowRuleShadowed` 在 7.116.0 的 dist 上无对端)—— devDep 抬到 7.117.0 即绿;11 跳过 = 基线 2 + 7.117.0 发布字节腿 9 格(无 ≥7.117.0 的字节 ⇒ 响亮 SKIP,不假绿)。
|
|
208
|
+
- **带 server 树源码腿**(`SEMA_SERVER_SRC` = `dd5568ac`,只读):`server-7113` · `server-7106` · `server-keyset-parity` · `server-7114` · `server-7115` · `server-7116` · `server-7117` **7 文件 278 / 278 零跳过**。
|
|
209
|
+
- **live 套** `node scripts/run-live-contract.mjs` × 7.117.0:**`FENCE-VERDICT kind=in-range version=7.117.0 floor=3.0.0 calibrated-head=7.117.0`,11 文件 158 过 · 1 跳过零红**(1 跳过 = `server-7109` 老 server 分臂;校准格绿);其中 `server-7117-faces` 7 格含**多租户形**(`REQUIRE_PRINCIPAL=true`)起服。**改前**(`e3a5370` 的 head × 同 fixture,`kind=ahead`)只红校准格一格。
|
|
210
|
+
- **门读数逼出(同车收的旧钉读点折回)**:`server-7115` C1 / A1 / A2 / E1 / E2(allow 桶改交引擎 allow 层、`allowListReadingRefusal` 按代取参)· `server-7106` T7(D.3 码数 33 → 34)· `spec-resource-schema-gate`(导出型须有同名 spec schema)· `capabilities-full` / `stream-approval-protocol` 夹具加键。
|
|
211
|
+
|
|
212
|
+
### 复审(codex `adversarial-review --model gpt-6.1-sol --scope branch`,一轮)
|
|
213
|
+
|
|
214
|
+
- **1 轮**(verdict `needs-attention`,**1 [medium]**):`AllowRuleMember` 是闭五词联合,而解码器只要求 `member` 是串、型注 / spec 又说「按开集读」—— 三处读域不一;建议型加开集尾、spec 去 enum。**处置:事实属实、建议驳回**(先照建议改过一版 `098216b`,被 `spec-literal-union-gate` 当场红,随后撤回 `ce76c4f`):仓内判据是「开 / 闭按产方是否真判成员定」—— server 的窄读 `readAllowRuleShadowed` **真判成员**(词外成员整只不铸键,发布字节钉 S1 亲跑),与 `RuleOffersAbsence` / `AskClass` 同类 ⇒ 联合与 spec enum 是闭的;「型闭、读域留 `default` 臂」正是 `RuleOffersAbsence` 型注逐字的既有约定。`ALLOW_RULE_MEMBERS` 型注补一句指向该约定与「加员 ⇒ 联合与 spec enum 同批加词」。
|
|
215
|
+
- 如实:codex 沙箱只读、测试进程被 EPERM 拦下、没跑测试,结论只覆盖静读 diff;修复轮没再送 codex(任务书一轮)。
|
|
216
|
+
|
|
217
|
+
### 去幻觉 / 查漏(本车自查)
|
|
218
|
+
|
|
219
|
+
- **订正处(亲跑 / 亲核推翻的)**:① 注里一度写「旧通告码已从 server 白名单删除」—— 亲读发布字节白名单:7.116.0 的用户白名单**本来就没有**旧码(operator 受众、只落运维日志),7.117.0 是 33 → 34 的 +1,订正注与钉 N1。② README / 登记注一度写「`riskDescriptor.shadowedRule` 本包从未声明(索引签名)」—— `riskDescriptor` 的型只列具名成员、没有索引签名,订正。③ 首版 C1 对整份 `Capabilities` 体做 spec 校验 —— 最小 deps 的 handler 体缺部署段(`store`),是假红,改校 `settings` 子树。④ 注里的 glob 例子(`Read(//dir/…)` 一类)含 `/**` 序列,朴素的「取前一个 `/**` 为注释起点」读法会截断型注 —— 型注里改写法、钉里改成行首锚。
|
|
220
|
+
- **查漏 / 未闭环(显式列出)**:① 能力位没有「读器」函数(`allowGrant` 同形,读法 = 三段可选链 `caps.settings?.permissions?.allowLayer`)。② `GET /v1/models` 里**没声明 `input` 的条目**只在发布字节腿(真 handler)覆盖,live fixture 的 env 车道恒声明、造不出。③ 续跑 409 `resume_blocked_by_policy` 的技能拒侧来路与终态 steer 的两种 409 要一条**停驻**的持久化体,零模型 harness 造不出 —— 只有发布字节腿(真 `storedBodyReplayAnswer` / `allowListReadingRefusal` × sdk 真错误映射)。④ 「列着的工具真的不问」的**运行期效果**没亲验(sdk 不跑引擎;只钉了能力位 / 通告帧 / 型注 / spec)。⑤ 本段「坐标」列的行号取自同提交的 build,不是已发布 tarball —— 发包后复核。
|
|
221
|
+
|
|
222
|
+
### 未闭环 / 候裁
|
|
223
|
+
|
|
224
|
+
1. **`persistedRuleShadowed` 公开成员**:现标 `@deprecated`、不删(删 = major),已登记进两张退役键名单;**下一个 major 删**(并入下一个 major 的删除清单)。
|
|
225
|
+
2. **版号**:判 16.3.0(型加员〔可选〕/ spec 加属性 · 加 schema · 去一个 `required` 成员 / 文档;零删 / 零改名 / 零收窄 / 不抬 server 支持底线)。若认为「去掉 spec `ModelInfo.required` 里的 `vision`」会让按 spec 生成客户端的消费方 tsc 红(必有 → 可选 = 收窄的反向,读者要处理缺席),则应为 17.0.0;仓内先例把「spec 去 required」按 additive 处理,TS 型本来就是可选。
|
|
226
|
+
3. **读域约定**:`AllowRuleMember` 型闭、读域留 `default` 臂(见上「复审」);server 加员时本联合与 spec enum 同批加词。
|
|
227
|
+
|
|
112
228
|
## 16.2.0 — minor(未发布 / 本车产出待主会话发包;对表 server **7.116.0**〔shasum `267c15d61c168438580eeaf1749c63ef827dd1c8`,3635034 字节,tag `5beedff3`,随装 core 7.41.2 + settings-schema 8.0.0〕;K-57 锁步 + 车SD158pre 预置的 `fleet.steerPriority` 新值;车SD158;codex 一轮见下)—— 公开类型面 **additive**(零删 / 零改名 / 零收窄);🔴 **三处读法翻转披露**(技能清单读法 / 「不可用」答法 403·404 → 501 / 会话同步 manifest 真形);**server 支持底线 `3.0.0` 不变**
|
|
113
229
|
|
|
114
230
|
> 本段是 16.2.0 的发包前记账(`SHIPPED` 标记发包后由主会话更新);读数、复审、去幻觉 / 查漏、候裁在下面各节,对应收车档 `che-SD158-handoff.md`。
|
package/dist/errors.d.ts
CHANGED
|
@@ -555,10 +555,31 @@ export declare class SteeringLedgerUnavailableError extends SteeringError {
|
|
|
555
555
|
* core 5.35.0 #257 起同样可达)—— 你带的 `Idempotency-Key` 已经
|
|
556
556
|
* park 过**不同**正文的转向(同 key 同正文是幂等 no-op,不会到这)。引擎拒绝而不是静默二选一:吞掉
|
|
557
557
|
* 任何一边都等于把队列要消灭的「静默丢一条操作员指令」请回来。409。
|
|
558
|
-
*
|
|
559
|
-
*
|
|
558
|
+
* 与 {@link SteeringQueueFullError} 处置不同(那条是等位子,这条看 {@link differs}),所以各有各的类。
|
|
559
|
+
*
|
|
560
|
+
* 🔴 **server ≥7.118.0(core 7.44.0 #1374):先读 {@link differs} 再决定换不换 key** —— 引擎把「这一次与已受理那一次在哪几面不同」
|
|
561
|
+
* 判成闭集 {@link STEER_REPLAY_FACETS} 的非空子集,停驻面 / live 面 / `/interrupt` 带 `text` 形同一只出口:
|
|
562
|
+
* · 含 `"text"` ⇒ 正文不同 = 另一条指令 ⇒ **换一个新 key 重发**;
|
|
563
|
+
* · 不含 `"text"`(只有 `trusted` / `priority` / `actor` 不同)⇒ **同一条指令**:**别换 key 重发**(会排两次),用**原值**重放;
|
|
564
|
+
* · 缺席(≤7.117.x,或体里读不出 —— server 读不出就不铸 `detail`,码照旧)⇒ 判不出,按旧读法(正文可能不同)处置并告诉人。
|
|
565
|
+
* 句子是引擎的(7.118.0 改过一次),别按 `message` 匹配。 */
|
|
560
566
|
export declare class SteeringDuplicateInputIdError extends SteeringError {
|
|
567
|
+
/** 体 `detail.differs`:{@link STEER_REPLAY_FACETS} 的非空子集(引擎的序)。整体成形或整体缺席 —— 不是数组 / 空 / 含集外词 ⇒ undefined
|
|
568
|
+
* (原值仍在 {@link APIError.extra};与 server 自己的读口同判:读不出就不铸)。 */
|
|
569
|
+
readonly differs?: readonly SteerReplayFacet[] | undefined;
|
|
570
|
+
constructor(status: number, errorCode: string | undefined, message: string,
|
|
571
|
+
/** 体 `detail.differs`:{@link STEER_REPLAY_FACETS} 的非空子集(引擎的序)。整体成形或整体缺席 —— 不是数组 / 空 / 含集外词 ⇒ undefined
|
|
572
|
+
* (原值仍在 {@link APIError.extra};与 server 自己的读口同判:读不出就不铸)。 */
|
|
573
|
+
differs?: readonly SteerReplayFacet[] | undefined);
|
|
561
574
|
}
|
|
575
|
+
/**
|
|
576
|
+
* steer 重放比较的**面**闭集 —— 引擎 `STEER_REPLAY_FACETS`(core 7.44.0 #1374)逐字同序:同一个 `inputId` 再来一次时,引擎判这一次与已受理那一次
|
|
577
|
+
* 在哪几面不同。server ≥7.118.0 把判决原样上 409 `steering.duplicate_input_id` 的 `detail.differs`(server 用同一只闭集筛,集外 ⇒ 不铸),
|
|
578
|
+
* 本包读进 {@link SteeringDuplicateInputIdError.differs}。**闭集**(产方真判成员):加词 = 引擎下一版 + 本常量与 spec enum 同批加。
|
|
579
|
+
*/
|
|
580
|
+
export declare const STEER_REPLAY_FACETS: readonly ["text", "trusted", "priority", "actor"];
|
|
581
|
+
/** {@link STEER_REPLAY_FACETS} 的成员型。 */
|
|
582
|
+
export type SteerReplayFacet = (typeof STEER_REPLAY_FACETS)[number];
|
|
562
583
|
/** `413` + `steer.content_too_large` / `reason_too_large` —— 请求里某个**自由文本**字段超过 server 的字符上限。
|
|
563
584
|
* 两个成员码同族同处置,所以共用一个类型(`err.errorCode` 保留具体是哪一个):
|
|
564
585
|
* · `steer.content_too_large`(server 1.279.2):steer 入参上限 256 KiB。脱敏门是同步的,一次超大 steer 卡住的
|
|
@@ -662,11 +683,11 @@ export declare class AskIdempotencyConflictError extends ConflictError {
|
|
|
662
683
|
* Client action:读 `deniedReason` 是这两词之一 ⇒ 告诉人「上一次运行在等你答的时候结束了」并**重新提交任务**(新 run 会重新出卡);要不要自动重发看 `crashConverged` 同一行的 `resumeSafe`。
|
|
663
684
|
* 按 `errorCode` 前缀 `gone.` 兜底的客户端读作「这条决定通道已关」即对。
|
|
664
685
|
*
|
|
665
|
-
* 类型:{@link state} 是 {@link AskGoneState}、{@link deniedReason} 是 {@link AskGoneDeniedReason}(**开集**写法,词表 = server `approval-deny-reasons` 登记表)。
|
|
686
|
+
* 类型:{@link state} 是 {@link AskGoneState}(闭三词)、{@link deniedReason} 是 {@link AskGoneDeniedReason}(**开集**写法,词表 = server `approval-deny-reasons` 登记表)。
|
|
666
687
|
* Client action:不重试本端点;按 `state` 改走 durable gate 或按拒绝呈现(带原因,永不静默)。 */
|
|
667
688
|
export declare class AskGoneError extends APIError {
|
|
668
|
-
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)
|
|
669
|
-
* {@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
689
|
+
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)。具名闭集型 {@link AskGoneState}
|
|
690
|
+
* ({@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
670
691
|
readonly state?: AskGoneState | undefined;
|
|
671
692
|
/** gate 对账坐标①:走 durable gate 流程用的 session id(`gone.ask_parked` 腿)。 */
|
|
672
693
|
readonly sessionId?: string | undefined;
|
|
@@ -680,8 +701,8 @@ export declare class AskGoneError extends APIError {
|
|
|
680
701
|
* `adhoc_leg_no_durable_domain`)。越界值在 mapper 里就被丢弃,不会到这里。具名型 {@link AskGoneDeniedReason}(开集)。 */
|
|
681
702
|
readonly deniedReason?: AskGoneDeniedReason | undefined;
|
|
682
703
|
constructor(status: number, errorCode: string | undefined, message: string,
|
|
683
|
-
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)
|
|
684
|
-
* {@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
704
|
+
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)。具名闭集型 {@link AskGoneState}
|
|
705
|
+
* ({@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
685
706
|
state?: AskGoneState | undefined,
|
|
686
707
|
/** gate 对账坐标①:走 durable gate 流程用的 session id(`gone.ask_parked` 腿)。 */
|
|
687
708
|
sessionId?: string | undefined,
|
|
@@ -696,10 +717,10 @@ export declare class AskGoneError extends APIError {
|
|
|
696
717
|
deniedReason?: AskGoneDeniedReason | undefined);
|
|
697
718
|
}
|
|
698
719
|
/** `410 gone.ask` / `gone.ask_parked` 体里**终态**的词(server `approval-ask-machine` 的终态:`PARKED` 只在 `gone.ask_parked` 腿、由 mapper 固定填出;`DENIED` / `VOID` 在 `gone.ask` 腿)。
|
|
699
|
-
* 🔴
|
|
700
|
-
*
|
|
720
|
+
* 🔴 **闭集**(sdk 17.0.0 起去掉开集尾):{@link toApiError} 对越界值**丢弃**(⇒ 字段缺席,按「已终结、原因未知」呈现),经 mapper 到手的只会是这三词之一 ——
|
|
721
|
+
* 型与 mapper 同一读域;自己 `new AskGoneError(...)` 的调用方也只写得出这三词。
|
|
701
722
|
* server ≥7.116.0 起 `state:"VOID"` 也由「local 车道重启后对上一世的卡作答」铸出(见 {@link AskGoneError})。 */
|
|
702
|
-
export type AskGoneState = "PARKED" | "DENIED" | "VOID"
|
|
723
|
+
export type AskGoneState = "PARKED" | "DENIED" | "VOID";
|
|
703
724
|
/** `410 gone.ask` 体 `deniedReason` 的词 —— **按 {@link AskGoneState} 分两组、值域不相交**(server `approval-deny-reasons` 的 `DENY_REASONS` / `VOID_REASONS`;测试逐字对拍发布字节):
|
|
704
725
|
* · `state:"DENIED"` ⇒ 恒 `routing_failure_fail_closed`(单员闭集;mapper 对 DENIED 配别的词一律丢弃,见 {@link DENY_REASON_ROUTING_FAILURE});
|
|
705
726
|
* · `state:"VOID"` ⇒ 七词(**会长的一组**,故带开集尾):`run_cancelled`(run 取消)· `batch_aborted`(批行已撤)· `batch_bound_elsewhere`(bind-once 落选者)·
|
|
@@ -756,7 +777,11 @@ export declare class ResumeOutcomeInvalidError extends APIError {
|
|
|
756
777
|
* longer admissible. Not a race: retrying as-is stays blocked until the policy or the request changes.
|
|
757
778
|
* K-32 扩项(server ≥7.106.0):两条新的折叠来源 —— ① S-904:盘上体的 `settings.permissions` 桶超帽 / 带坏项 ⇒ `blockedBy:"request.field_invalid"`,
|
|
758
779
|
* **同组机读字段随体原样带上**(`field` / `reason` / `count` + `cap` | `index`,经 {@link APIError.extra};见 {@link BadRequestError});
|
|
759
|
-
* ② S-895:盘上体 `inheritEnv:"all"` 而部署已改托管 / 换了非 host 车道 ⇒ `blockedBy` = `request.host_posture_refused` / `request.field_invalid`。
|
|
780
|
+
* ② S-895:盘上体 `inheritEnv:"all"` 而部署已改托管 / 换了非 host 车道 ⇒ `blockedBy` = `request.host_posture_refused` / `request.field_invalid`。
|
|
781
|
+
* 🔴 **server ≥7.117.0 的第三条来路 —— 技能拒侧读成空的条目**:升级时还停驻、提交体里技能(顶层 `skills[]` 或子代 `agents[].skills[]`)的 `disallowedTools` 带引擎现在读成空的条目
|
|
782
|
+
* (`*`、域名形、协议名带通配、带空白 / 畸形的名字)的任务,续跑(`/decide` · `/resume` · `/plan_review` · `/wake` 带或不带消息,以及终态 run 的 `POST /v1/runs/:id/steer` 在铸唤醒卡**之前**)
|
|
783
|
+
* ⇒ 认领之前 409,`blockedBy:"request.field_invalid"`,`error` 带点名那一条的同一句(与提交腿的 400 逐字同句);行与卡一个字节不动。**出路 = 取消这条任务、改好条目重提**(原样再续同一份字节永远同拒)。
|
|
784
|
+
* 原因:引擎 7.41 去首尾空白(`"Bash "` 曾是一条有效的拒),7.42 逐字读 —— 不判就是升级后那条拒无声消失。本类按 `errorCode` 判别,三条来路用 `blockedBy` 区分。 */
|
|
760
785
|
export declare class ResumeBlockedByPolicyError extends APIError {
|
|
761
786
|
/**
|
|
762
787
|
* **哪一道检查拒的**:被折叠的那只拒绝**直接**出去时会带的 `errorCode`。server ≥7.104.0(S-607)起 wire 上**恒在**:带码的原拒绝 ⇒
|
|
@@ -953,7 +978,8 @@ export declare class DecideStoreUnreachableError extends DecideError {
|
|
|
953
978
|
export declare class DecideWorkflowHostError extends DecideError {
|
|
954
979
|
}
|
|
955
980
|
/** `decide.workflow_parks_unreadable` (409, server >=7.75.0 / S-252) — the pending belongs to a **workflow
|
|
956
|
-
* child**, and the
|
|
981
|
+
* child**, and (the 7.75.0–7.117.x reading; a server ≥7.118.0 narrows the triggers — see the 7.118.0 paragraph at the end)
|
|
982
|
+
* the run record carries no readable `parks[]` list: that list is the ENGINE's own
|
|
957
983
|
* park-ownership ledger (`{callKey, sessionId, token, originRunId}` per entry) and the ONLY source this lane
|
|
958
984
|
* can join the caller's checkpoint against. A record written by an engine older than the one deployed here
|
|
959
985
|
* (core < 7.17.0) never carries the key at all, or one entry is damaged and the whole list cannot be read
|
|
@@ -997,8 +1023,52 @@ export declare class DecideWorkflowHostError extends DecideError {
|
|
|
997
1023
|
* occurrences of the string anywhere in this repo). Unlike `decide.workflow_host_not_parked` above, there is
|
|
998
1024
|
* therefore no retired mapper branch to keep for `SUPPORTED_SERVER_FLOOR`-window reasons — an unnamed
|
|
999
1025
|
* `decide.*` code has always degraded through the base {@link DecideError} (open prefix dispatch, not a
|
|
1000
|
-
* closed union), on any server version, and that is unchanged here.
|
|
1026
|
+
* closed union), on any server version, and that is unchanged here.
|
|
1027
|
+
*
|
|
1028
|
+
* 🔴 **server 7.118.0 (core 7.44.0 #1319): one reading for "who holds this card", two causes under this one code.** The holder is
|
|
1029
|
+
* now the record whose `parks[]` entry says `parkedBy === <that record's run id>`, and this code answers when a record naming the
|
|
1030
|
+
* card cannot answer that question. The body carries NO cause word — the sentence (`error`) is the only place the two causes
|
|
1031
|
+
* differ, and it is prose (never branch on it):
|
|
1032
|
+
* · **written by an older engine** (an entry without the holder seat — the cards still parked at the moment of the upgrade):
|
|
1033
|
+
* resume the run named by `.runId`; once it is waiting on this step again it records itself as the holder and deciding here
|
|
1034
|
+
* works;
|
|
1035
|
+
* · **the record cannot be read** (an entry is malformed, or `parks` is present but not a list): **resuming does not clear it** —
|
|
1036
|
+
* that record keeps naming the card whatever runs after it, so this code repeats until whoever operates the deployment repairs
|
|
1037
|
+
* the record `.runId` names. {@link readableHolderRunId} is present only on this cause (and only when exactly one readable
|
|
1038
|
+
* record holds the card at the highest generation): it says where the work can be carried on — a CLUE, **not** a way to unblock
|
|
1039
|
+
* this decision.
|
|
1040
|
+
* So: offer "resume `.runId`"; if this same code comes back after that resume, say "this record needs an operator" (and point at
|
|
1041
|
+
* `.readableHolderRunId` when it is there). A record with NO `parks` key at all is no longer this code: it holds nothing, and a card
|
|
1042
|
+
* only it names answers `409 conflict.resume_context_unavailable` (a {@link ConflictError}, no `runId` in the body).
|
|
1043
|
+
*/
|
|
1001
1044
|
export declare class DecideWorkflowParksUnreadableError extends DecideError {
|
|
1045
|
+
/** server ≥7.118.0, the "record cannot be read" cause only: the readable record that holds this card at the highest generation
|
|
1046
|
+
* (the body's top-level `readableHolderRunId`; absent when there is none or a tie — never `null`). Where the work can be carried
|
|
1047
|
+
* on; it does NOT clear this refusal (the damaged record `.runId` names still blocks delivery until it is repaired). */
|
|
1048
|
+
readonly readableHolderRunId?: string | undefined;
|
|
1049
|
+
constructor(status: number, errorCode: string | undefined, message: string, taskId?: string, rollback?: string, runId?: string,
|
|
1050
|
+
/** server ≥7.118.0, the "record cannot be read" cause only: the readable record that holds this card at the highest generation
|
|
1051
|
+
* (the body's top-level `readableHolderRunId`; absent when there is none or a tie — never `null`). Where the work can be carried
|
|
1052
|
+
* on; it does NOT clear this refusal (the damaged record `.runId` names still blocks delivery until it is repaired). */
|
|
1053
|
+
readableHolderRunId?: string | undefined);
|
|
1054
|
+
}
|
|
1055
|
+
/** `decide.workflow_park_forked` (409, server ≥7.118.0 / core 7.44.0 #1319) — the same workflow run was resumed more than once and
|
|
1056
|
+
* every resumed copy listed in {@link runIds} is waiting on this same card at the same generation, so there is no single run to hand
|
|
1057
|
+
* the decision to. Same family and shape as {@link DecideWorkflowParksUnreadableError}: the workflow lane, NO `taskId`, nothing
|
|
1058
|
+
* delivered, the card stays PENDING.
|
|
1059
|
+
*
|
|
1060
|
+
* 🔴 **Retrying this decide never succeeds.** Recovery: RESUME ONE of the runs in {@link runIds}; once that run is waiting on this
|
|
1061
|
+
* card again, deciding here works. A client that treats an unknown 409 as "retry later" must branch on this class.
|
|
1062
|
+
* ⚠️ The server can only see a fork when its park-pointer index is complete; a competing pointer that did not get written makes the
|
|
1063
|
+
* fork look like a single holder and the decision goes to the branch whose pointer exists (server 7.118.0 known boundary). */
|
|
1064
|
+
export declare class DecideWorkflowParkForkedError extends DecideError {
|
|
1065
|
+
/** The resumed runs that all hold this card (the body's `runIds`, ≥2 on the wire). Whole-or-nothing: absent when the body does
|
|
1066
|
+
* not carry an array of non-empty strings (the raw value stays on {@link APIError.extra}). */
|
|
1067
|
+
readonly runIds?: readonly string[] | undefined;
|
|
1068
|
+
constructor(status: number, errorCode: string | undefined, message: string, taskId?: string, rollback?: string, runId?: string,
|
|
1069
|
+
/** The resumed runs that all hold this card (the body's `runIds`, ≥2 on the wire). Whole-or-nothing: absent when the body does
|
|
1070
|
+
* not carry an array of non-empty strings (the raw value stays on {@link APIError.extra}). */
|
|
1071
|
+
runIds?: readonly string[] | undefined);
|
|
1002
1072
|
}
|
|
1003
1073
|
/**
|
|
1004
1074
|
* **状态派生粗码**的闭集(server 契约附录 A.1e,S-864,server ≥7.113.0;K-24 同名常量那一半 —— client-core `STATUS_DERIVED_COARSE_CODES` 同名同序,其 RL-11 退役条件读它)。
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;kEACkE;AAClE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AACpE;yDACyD;AACzD,OAAO,KAAK,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAuCnF,qBAAa,QAAS,SAAQ,KAAK;IAuD/B,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IAvDxC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAE7C;IAED;;;;;;;;;;;;;;;;;;;;;;;mEAuB+D;IAC/D,SAAS,CAAC,EAAE,OAAO,CAAC;gBAGT,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EACtC,OAAO,EAAE,MAAM;CAKlB;AAED;;;;;;;;;4DAS4D;AAC5D,qBAAa,SAAU,SAAQ,QAAQ;CAAG;AAyB1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iEAgCiE;AACjE,qBAAa,eAAgB,SAAQ,QAAQ;CAAG;AAEhD;qFACqF;AACrF,qBAAa,uBAAwB,SAAQ,QAAQ;IAKjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE;gBAJ3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACN,QAAQ,CAAC,EAAE,MAAM,YAAA,EACjB,OAAO,CAAC,EAAE,MAAM,EAAE,YAAA;CAK9B;AAED;;;;;;;;;;;;;;;;;;;uCAmBuC;AACvC,qBAAa,aAAc,SAAQ,QAAQ;CAAG;AAE9C;;2DAE2D;AAC3D,qBAAa,kBAAmB,SAAQ,QAAQ;IAC8B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;gBAA9F,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAW,YAAY,CAAC,EAAE,MAAM,YAAA;CAG3G;AAED;;;;;;;;;;;2HAW2H;AAC3H,qBAAa,0BAA2B,SAAQ,QAAQ;CAAG;AAE3D;;;;;;;2HAO2H;AAC3H,qBAAa,oBAAqB,SAAQ,QAAQ;CAAG;AAErD;;;;;;uCAMuC;AACvC,qBAAa,mBAAoB,SAAQ,QAAQ;CAAG;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oFA+BoF;AACpF,qBAAa,iBAAkB,SAAQ,QAAQ;IAc+B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAb1G;;;;;;;;;;;;OAYG;gBACS,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAW,YAAY,CAAC,EAAE,MAAM,YAAA;CAG3G;AAED;;;;;;;;;6DAS6D;AAC7D,qBAAa,0BAA2B,SAAQ,QAAQ;IACsB,QAAQ,CAAC,SAAS,EAAE,MAAM;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM;gBAAlH,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAW,SAAS,EAAE,MAAM,EAAW,KAAK,EAAE,MAAM;CAG/H;AAED,sGAAsG;AACtG;;;;;;;;;kHASkH;AAClH,qBAAa,aAAc,SAAQ,QAAQ;IACmC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;gBAA9F,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAW,YAAY,CAAC,EAAE,MAAM,YAAA;CAG3G;AAED;;;;;;;;;;;+CAW+C;AAC/C,qBAAa,gBAAiB,SAAQ,kBAAkB;IAMpD,6EAA6E;IAC7E,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAC9B,kEAAkE;IAClE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAP/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM;IACrB,6EAA6E;IACpE,YAAY,CAAC,EAAE,MAAM,YAAA;IAC9B,kEAAkE;IACzD,aAAa,CAAC,EAAE,MAAM,YAAA;CAIlC;AAED;;;;;uFAKuF;AACvF,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gGAAgG;IAChG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oFAAoF;IACpF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;iFAKiF;AACjF,qBAAa,mBAAoB,SAAQ,gBAAgB;IAMrD,QAAQ,CAAC,MAAM,EAAE,oBAAoB;gBAJrC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS,EACvB,MAAM,EAAE,oBAAoB;CAIxC;AAED;;;;;uCAKuC;AACvC,qBAAa,yBAA0B,SAAQ,gBAAgB;IAM3D,4DAA4D;IAC5D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAL/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GAAG,SAAS;IAChC,4DAA4D;IACnD,aAAa,CAAC,EAAE,MAAM,YAAA;CAIlC;AAED;;;;;;;;wDAQwD;AACxD,qBAAa,oBAAqB,SAAQ,QAAQ;IAK9C,4EAA4E;IAC5E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAJ/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,4EAA4E;IACnE,aAAa,CAAC,EAAE,MAAM,YAAA;CAIlC;AAED;;;;+EAI+E;AAC/E,qBAAa,uBAAwB,SAAQ,QAAQ;IAKjD,kGAAkG;IAClG,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE;gBAJ5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,kGAAkG;IACzF,SAAS,EAAE,MAAM,EAAE;CAI/B;AAED,8GAA8G;AAC9G,qBAAa,mBAAoB,SAAQ,QAAQ;CAAG;AAGpD;;;;;;;;;;;;;;;;;;;yBAmByB;AACzB,qBAAa,aAAc,SAAQ,QAAQ;IAKvC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAC9B;;gGAE4F;IAC5F,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM;IAClC,QAAQ,CAAC,WAAW,CAAC,EAAE,mBAAmB;gBAR1C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACN,YAAY,CAAC,EAAE,MAAM,YAAA;IAC9B;;gGAE4F;IACnF,gBAAgB,CAAC,EAAE,MAAM,YAAA,EACzB,WAAW,CAAC,EAAE,mBAAmB,YAAA;CAI7C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,qBAAa,WAAY,SAAQ,aAAa;IAK1C;gDAC4C;IAC5C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM;gBAL5B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf;gDAC4C;IACnC,UAAU,CAAC,EAAE,MAAM,YAAA;IAC5B,qFAAqF;IACrF,YAAY,CAAC,EAAE,MAAM;CAIxB;AAED;;;;;;yGAMyG;AACzG,qBAAa,iBAAkB,SAAQ,aAAa;IAKhD,mGAAmG;IACnG,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE;gBAJvE,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,mGAAmG;IAC1F,QAAQ,EAAE;QAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE;CAI1E;AAED;;kHAEkH;AAClH,qBAAa,kBAAmB,SAAQ,QAAQ;IAK5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,UAAU,GAAG,eAAe,GAAG,aAAa;IAChE;;;;;;;;uCAQmC;IACnC,QAAQ,CAAC,cAAc,CAAC,EAAE,2BAA2B;gBAbrD,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACN,QAAQ,CAAC,EAAE,UAAU,GAAG,eAAe,GAAG,aAAa,YAAA;IAChE;;;;;;;;uCAQmC;IAC1B,cAAc,CAAC,EAAE,2BAA2B,YAAA;CAIxD;AAkBD;;;;4GAI4G;AAC5G,qBAAa,4BAA6B,SAAQ,QAAQ;IACoB,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,QAAQ;gBAA5H,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAW,KAAK,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,QAAQ,YAAA;CAGzI;AAED;;;yBAGyB;AACzB,qBAAa,iCAAkC,SAAQ,QAAQ;CAAG;AAElE;;;;;;;;;8DAS8D;AAC9D,qBAAa,aAAc,SAAQ,QAAQ;CAAG;AAE9C;;mDAEmD;AACnD,qBAAa,uBAAwB,SAAQ,aAAa;CAAG;AAE7D;;mGAEmG;AACnG,qBAAa,2BAA4B,SAAQ,aAAa;CAAG;AAEjE;;;;0DAI0D;AAC1D,qBAAa,4BAA6B,SAAQ,aAAa;CAAG;AAElE;;;iEAGiE;AACjE,qBAAa,yBAA0B,SAAQ,aAAa;CAAG;AAE/D;;;;;iDAKiD;AACjD,qBAAa,sBAAuB,SAAQ,aAAa;CAAG;AAE5D;;;;;;+DAM+D;AAC/D,qBAAa,8BAA+B,SAAQ,aAAa;CAAG;AAEpE;;;;;sEAKsE;AACtE,qBAAa,6BAA8B,SAAQ,aAAa;CAAG;AAEnE;;;;;;;iEAOiE;AACjE,qBAAa,oBAAqB,SAAQ,QAAQ;CAAG;AAErD;;;;;uEAKuE;AACvE,qBAAa,qBAAsB,SAAQ,aAAa;CAAG;AAE3D;;;;;;gFAMgF;AAChF,qBAAa,sBAAuB,SAAQ,aAAa;CAAG;AAE5D;;;mFAGmF;AACnF,qBAAa,wBAAyB,SAAQ,QAAQ;CAAG;AAEzD;;2EAE2E;AAC3E,qBAAa,qBAAsB,SAAQ,QAAQ;CAAG;AAEtD;;uEAEuE;AACvE,qBAAa,qBAAsB,SAAQ,QAAQ;CAAG;AAEtD;;sEAEsE;AACtE,qBAAa,sBAAuB,SAAQ,QAAQ;CAAG;AAEvD;;;;;;;gBAOgB;AAChB,qBAAa,wBAAyB,SAAQ,QAAQ;CAAG;AAOzD;;;;sEAIsE;AACtE,qBAAa,eAAgB,SAAQ,aAAa;IAK9C,mBAAmB;IACnB,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM;IAC3C,0BAA0B;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM;IAC7B,gDAAgD;IAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc;gBAR/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,mBAAmB;IACV,aAAa,CAAC,EAAE,SAAS,GAAG,MAAM,YAAA;IAC3C,0BAA0B;IACjB,WAAW,CAAC,EAAE,MAAM,YAAA;IAC7B,gDAAgD;IACvC,KAAK,CAAC,EAAE,cAAc,YAAA;CAIlC;AAED;;;+CAG+C;AAC/C,qBAAa,2BAA4B,SAAQ,aAAa;CAAG;AAEjE;;;;;;;;;;;;;;;;;;;;uEAoBuE;AACvE,qBAAa,YAAa,SAAQ,QAAQ;IAKtC;0DACsD;IACtD,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY;IAC7B,sEAAsE;IACtE,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM;IACjC,oCAAoC;IACpC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM;IACpC;;;sGAGkG;IAClG,QAAQ,CAAC,YAAY,CAAC,EAAE,mBAAmB;gBAhB3C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf;0DACsD;IAC7C,KAAK,CAAC,EAAE,YAAY,YAAA;IAC7B,sEAAsE;IAC7D,SAAS,CAAC,EAAE,MAAM,YAAA;IAC3B,wCAAwC;IAC/B,eAAe,CAAC,EAAE,MAAM,YAAA;IACjC,oCAAoC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,YAAA;IACpC;;;sGAGkG;IACzF,YAAY,CAAC,EAAE,mBAAmB,YAAA;CAI9C;AAED;;;0FAG0F;AAC1F,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAExE;;;;;;gEAMgE;AAChE,MAAM,MAAM,mBAAmB,GAC3B,OAAO,2BAA2B,GAClC,eAAe,GACf,eAAe,GACf,uBAAuB,GACvB,6BAA6B,GAC7B,qBAAqB,GACrB,qBAAqB,GACrB,sBAAsB,GACtB,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;AAElB;qDACqD;AACrD,eAAO,MAAM,2BAA2B,gCAAgC,CAAC;AAEzE;;;;;;gFAMgF;AAChF,qBAAa,eAAgB,SAAQ,QAAQ;IAKzC,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAC9B,uCAAuC;IACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAN/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,6CAA6C;IACpC,YAAY,CAAC,EAAE,MAAM,YAAA;IAC9B,uCAAuC;IAC9B,aAAa,CAAC,EAAE,MAAM,YAAA;CAIlC;AAED,+GAA+G;AAC/G,qBAAa,wBAAyB,SAAQ,QAAQ;CAAG;AAEzD;;;;;;;mCAOmC;AACnC,qBAAa,uBAAwB,SAAQ,QAAQ;CAAG;AAExD;;;;;;;yGAOyG;AACzG,qBAAa,yBAA0B,SAAQ,QAAQ;CAAG;AAE1D;;;;qIAIqI;AACrI,qBAAa,0BAA2B,SAAQ,QAAQ;IAKpD;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM;gBAd3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf;;;;;;;;;;OAUG;IACM,SAAS,CAAC,EAAE,MAAM,YAAA;CAI9B;AAWD;;;sFAGsF;AACtF,qBAAa,2BAA4B,SAAQ,aAAa;CAAG;AAEjE;;;;;;;;qDAQqD;AACrD,qBAAa,qBAAsB,SAAQ,2BAA2B;IAKlE,kEAAkE;IAClE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;IAC9B,uDAAuD;IACvD,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM;gBAN/B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM;IACf,kEAAkE;IACzD,YAAY,CAAC,EAAE,MAAM,YAAA;IAC9B,uDAAuD;IAC9C,aAAa,CAAC,EAAE,MAAM,YAAA;CAIlC;AAED;;;sCAGsC;AACtC,qBAAa,oBAAqB,SAAQ,aAAa;CAAG;AAE1D;kEACkE;AAClE,qBAAa,eAAgB,SAAQ,aAAa;CAAG;AAErD;;;;;;;;;;;;;8CAa8C;AAC9C,qBAAa,WAAY,SAAQ,QAAQ;IAKrC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM;IACxB,6EAA6E;IAC7E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM;IAC1B;;;iCAG6B;IAC7B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM;gBAVvB,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACN,MAAM,CAAC,EAAE,MAAM,YAAA;IACxB,6EAA6E;IACpE,QAAQ,CAAC,EAAE,MAAM,YAAA;IAC1B;;;iCAG6B;IACpB,KAAK,CAAC,EAAE,MAAM,YAAA;CAI1B;AAED;;;;;;;;+GAQ+G;AAC/G,qBAAa,oBAAqB,SAAQ,WAAW;CAAG;AAExD;;;;;kEAKkE;AAClE,qBAAa,sBAAuB,SAAQ,WAAW;CAAG;AAE1D;;;;;;;;;;;;;;;+HAe+H;AAC/H,qBAAa,wBAAyB,SAAQ,WAAW;IAQrD;;;;;;;;;;;;;;;OAeG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM;gBAtB9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,MAAM;IACd;;;;;;;;;;;;;;;OAeG;IACM,YAAY,CAAC,EAAE,MAAM,YAAA;CAIjC;AAED,6GAA6G;AAC7G,qBAAa,2BAA4B,SAAQ,WAAW;CAAG;AAE/D;;;;;;;;;;;;;;;;;;;;;;oFAsBoF;AACpF,qBAAa,uBAAwB,SAAQ,WAAW;CAAG;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wEA6CwE;AACxE,qBAAa,kCAAmC,SAAQ,WAAW;CAAG;AAEtE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,2BAA2B,qNAU7B,CAAC;AAEZ,0EAA0E;AAC1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF;;;oFAGoF;AACpF,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,QAAQ,CAUzF;AAwYD;mHACmH;AACnH,qBAAa,YAAa,SAAQ,KAAK;IACzB,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAIrD;AAED,gFAAgF;AAChF,qBAAa,gBAAiB,SAAQ,YAAY;CAAG;AAErD;sFACsF;AACtF,qBAAa,qBAAsB,SAAQ,YAAY;CAAG;AAE1D,iEAAiE;AACjE,qBAAa,oBAAqB,SAAQ,YAAY;CAAG;AAEzD;gHACgH;AAChH,qBAAa,sBAAuB,SAAQ,YAAY;IACT,QAAQ,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE;gBAAjH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAW,MAAM,EAAE;QAAE,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE;CAG9H;AAED;;;sHAGsH;AACtH,qBAAa,oBAAqB,SAAQ,YAAY;IACP,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM;gBAAjE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAW,cAAc,CAAC,EAAE,MAAM,YAAA;CAG9E;AAED;;;;;;;sGAOsG;AACtG,qBAAa,qBAAsB,SAAQ,YAAY;CAAG;AAE1D;;;sDAGsD;AACtD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,YAAY,CAkB1E;AAED,2GAA2G;AAC3G,wBAAgB,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAIvC"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.js
CHANGED
|
@@ -638,10 +638,30 @@ export class SteeringLedgerUnavailableError extends SteeringError {
|
|
|
638
638
|
* core 5.35.0 #257 起同样可达)—— 你带的 `Idempotency-Key` 已经
|
|
639
639
|
* park 过**不同**正文的转向(同 key 同正文是幂等 no-op,不会到这)。引擎拒绝而不是静默二选一:吞掉
|
|
640
640
|
* 任何一边都等于把队列要消灭的「静默丢一条操作员指令」请回来。409。
|
|
641
|
-
*
|
|
642
|
-
*
|
|
641
|
+
* 与 {@link SteeringQueueFullError} 处置不同(那条是等位子,这条看 {@link differs}),所以各有各的类。
|
|
642
|
+
*
|
|
643
|
+
* 🔴 **server ≥7.118.0(core 7.44.0 #1374):先读 {@link differs} 再决定换不换 key** —— 引擎把「这一次与已受理那一次在哪几面不同」
|
|
644
|
+
* 判成闭集 {@link STEER_REPLAY_FACETS} 的非空子集,停驻面 / live 面 / `/interrupt` 带 `text` 形同一只出口:
|
|
645
|
+
* · 含 `"text"` ⇒ 正文不同 = 另一条指令 ⇒ **换一个新 key 重发**;
|
|
646
|
+
* · 不含 `"text"`(只有 `trusted` / `priority` / `actor` 不同)⇒ **同一条指令**:**别换 key 重发**(会排两次),用**原值**重放;
|
|
647
|
+
* · 缺席(≤7.117.x,或体里读不出 —— server 读不出就不铸 `detail`,码照旧)⇒ 判不出,按旧读法(正文可能不同)处置并告诉人。
|
|
648
|
+
* 句子是引擎的(7.118.0 改过一次),别按 `message` 匹配。 */
|
|
643
649
|
export class SteeringDuplicateInputIdError extends SteeringError {
|
|
650
|
+
differs;
|
|
651
|
+
constructor(status, errorCode, message,
|
|
652
|
+
/** 体 `detail.differs`:{@link STEER_REPLAY_FACETS} 的非空子集(引擎的序)。整体成形或整体缺席 —— 不是数组 / 空 / 含集外词 ⇒ undefined
|
|
653
|
+
* (原值仍在 {@link APIError.extra};与 server 自己的读口同判:读不出就不铸)。 */
|
|
654
|
+
differs) {
|
|
655
|
+
super(status, errorCode, message);
|
|
656
|
+
this.differs = differs;
|
|
657
|
+
}
|
|
644
658
|
}
|
|
659
|
+
/**
|
|
660
|
+
* steer 重放比较的**面**闭集 —— 引擎 `STEER_REPLAY_FACETS`(core 7.44.0 #1374)逐字同序:同一个 `inputId` 再来一次时,引擎判这一次与已受理那一次
|
|
661
|
+
* 在哪几面不同。server ≥7.118.0 把判决原样上 409 `steering.duplicate_input_id` 的 `detail.differs`(server 用同一只闭集筛,集外 ⇒ 不铸),
|
|
662
|
+
* 本包读进 {@link SteeringDuplicateInputIdError.differs}。**闭集**(产方真判成员):加词 = 引擎下一版 + 本常量与 spec enum 同批加。
|
|
663
|
+
*/
|
|
664
|
+
export const STEER_REPLAY_FACETS = Object.freeze(["text", "trusted", "priority", "actor"]);
|
|
645
665
|
/** `413` + `steer.content_too_large` / `reason_too_large` —— 请求里某个**自由文本**字段超过 server 的字符上限。
|
|
646
666
|
* 两个成员码同族同处置,所以共用一个类型(`err.errorCode` 保留具体是哪一个):
|
|
647
667
|
* · `steer.content_too_large`(server 1.279.2):steer 入参上限 256 KiB。脱敏门是同步的,一次超大 steer 卡住的
|
|
@@ -751,7 +771,7 @@ export class AskIdempotencyConflictError extends ConflictError {
|
|
|
751
771
|
* Client action:读 `deniedReason` 是这两词之一 ⇒ 告诉人「上一次运行在等你答的时候结束了」并**重新提交任务**(新 run 会重新出卡);要不要自动重发看 `crashConverged` 同一行的 `resumeSafe`。
|
|
752
772
|
* 按 `errorCode` 前缀 `gone.` 兜底的客户端读作「这条决定通道已关」即对。
|
|
753
773
|
*
|
|
754
|
-
* 类型:{@link state} 是 {@link AskGoneState}、{@link deniedReason} 是 {@link AskGoneDeniedReason}(**开集**写法,词表 = server `approval-deny-reasons` 登记表)。
|
|
774
|
+
* 类型:{@link state} 是 {@link AskGoneState}(闭三词)、{@link deniedReason} 是 {@link AskGoneDeniedReason}(**开集**写法,词表 = server `approval-deny-reasons` 登记表)。
|
|
755
775
|
* Client action:不重试本端点;按 `state` 改走 durable gate 或按拒绝呈现(带原因,永不静默)。 */
|
|
756
776
|
export class AskGoneError extends APIError {
|
|
757
777
|
state;
|
|
@@ -760,8 +780,8 @@ export class AskGoneError extends APIError {
|
|
|
760
780
|
gateBoundInputHash;
|
|
761
781
|
deniedReason;
|
|
762
782
|
constructor(status, errorCode, message,
|
|
763
|
-
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)
|
|
764
|
-
* {@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
783
|
+
/** `PARKED` | `DENIED` | `VOID`(`gone.ask` 腿携带;`gone.ask_parked` 腿恒 PARKED,可缺席)。具名闭集型 {@link AskGoneState}
|
|
784
|
+
* ({@link toApiError} 只会产出三词之一,越界值在 mapper 里就被丢弃)。 */
|
|
765
785
|
state,
|
|
766
786
|
/** gate 对账坐标①:走 durable gate 流程用的 session id(`gone.ask_parked` 腿)。 */
|
|
767
787
|
sessionId,
|
|
@@ -832,7 +852,11 @@ export class ResumeOutcomeInvalidError extends APIError {
|
|
|
832
852
|
* longer admissible. Not a race: retrying as-is stays blocked until the policy or the request changes.
|
|
833
853
|
* K-32 扩项(server ≥7.106.0):两条新的折叠来源 —— ① S-904:盘上体的 `settings.permissions` 桶超帽 / 带坏项 ⇒ `blockedBy:"request.field_invalid"`,
|
|
834
854
|
* **同组机读字段随体原样带上**(`field` / `reason` / `count` + `cap` | `index`,经 {@link APIError.extra};见 {@link BadRequestError});
|
|
835
|
-
* ② S-895:盘上体 `inheritEnv:"all"` 而部署已改托管 / 换了非 host 车道 ⇒ `blockedBy` = `request.host_posture_refused` / `request.field_invalid`。
|
|
855
|
+
* ② S-895:盘上体 `inheritEnv:"all"` 而部署已改托管 / 换了非 host 车道 ⇒ `blockedBy` = `request.host_posture_refused` / `request.field_invalid`。
|
|
856
|
+
* 🔴 **server ≥7.117.0 的第三条来路 —— 技能拒侧读成空的条目**:升级时还停驻、提交体里技能(顶层 `skills[]` 或子代 `agents[].skills[]`)的 `disallowedTools` 带引擎现在读成空的条目
|
|
857
|
+
* (`*`、域名形、协议名带通配、带空白 / 畸形的名字)的任务,续跑(`/decide` · `/resume` · `/plan_review` · `/wake` 带或不带消息,以及终态 run 的 `POST /v1/runs/:id/steer` 在铸唤醒卡**之前**)
|
|
858
|
+
* ⇒ 认领之前 409,`blockedBy:"request.field_invalid"`,`error` 带点名那一条的同一句(与提交腿的 400 逐字同句);行与卡一个字节不动。**出路 = 取消这条任务、改好条目重提**(原样再续同一份字节永远同拒)。
|
|
859
|
+
* 原因:引擎 7.41 去首尾空白(`"Bash "` 曾是一条有效的拒),7.42 逐字读 —— 不判就是升级后那条拒无声消失。本类按 `errorCode` 判别,三条来路用 `blockedBy` 区分。 */
|
|
836
860
|
export class ResumeBlockedByPolicyError extends APIError {
|
|
837
861
|
blockedBy;
|
|
838
862
|
constructor(status, errorCode, message,
|
|
@@ -1018,7 +1042,8 @@ export class DecideStoreUnreachableError extends DecideError {
|
|
|
1018
1042
|
export class DecideWorkflowHostError extends DecideError {
|
|
1019
1043
|
}
|
|
1020
1044
|
/** `decide.workflow_parks_unreadable` (409, server >=7.75.0 / S-252) — the pending belongs to a **workflow
|
|
1021
|
-
* child**, and the
|
|
1045
|
+
* child**, and (the 7.75.0–7.117.x reading; a server ≥7.118.0 narrows the triggers — see the 7.118.0 paragraph at the end)
|
|
1046
|
+
* the run record carries no readable `parks[]` list: that list is the ENGINE's own
|
|
1022
1047
|
* park-ownership ledger (`{callKey, sessionId, token, originRunId}` per entry) and the ONLY source this lane
|
|
1023
1048
|
* can join the caller's checkpoint against. A record written by an engine older than the one deployed here
|
|
1024
1049
|
* (core < 7.17.0) never carries the key at all, or one entry is damaged and the whole list cannot be read
|
|
@@ -1062,8 +1087,53 @@ export class DecideWorkflowHostError extends DecideError {
|
|
|
1062
1087
|
* occurrences of the string anywhere in this repo). Unlike `decide.workflow_host_not_parked` above, there is
|
|
1063
1088
|
* therefore no retired mapper branch to keep for `SUPPORTED_SERVER_FLOOR`-window reasons — an unnamed
|
|
1064
1089
|
* `decide.*` code has always degraded through the base {@link DecideError} (open prefix dispatch, not a
|
|
1065
|
-
* closed union), on any server version, and that is unchanged here.
|
|
1090
|
+
* closed union), on any server version, and that is unchanged here.
|
|
1091
|
+
*
|
|
1092
|
+
* 🔴 **server 7.118.0 (core 7.44.0 #1319): one reading for "who holds this card", two causes under this one code.** The holder is
|
|
1093
|
+
* now the record whose `parks[]` entry says `parkedBy === <that record's run id>`, and this code answers when a record naming the
|
|
1094
|
+
* card cannot answer that question. The body carries NO cause word — the sentence (`error`) is the only place the two causes
|
|
1095
|
+
* differ, and it is prose (never branch on it):
|
|
1096
|
+
* · **written by an older engine** (an entry without the holder seat — the cards still parked at the moment of the upgrade):
|
|
1097
|
+
* resume the run named by `.runId`; once it is waiting on this step again it records itself as the holder and deciding here
|
|
1098
|
+
* works;
|
|
1099
|
+
* · **the record cannot be read** (an entry is malformed, or `parks` is present but not a list): **resuming does not clear it** —
|
|
1100
|
+
* that record keeps naming the card whatever runs after it, so this code repeats until whoever operates the deployment repairs
|
|
1101
|
+
* the record `.runId` names. {@link readableHolderRunId} is present only on this cause (and only when exactly one readable
|
|
1102
|
+
* record holds the card at the highest generation): it says where the work can be carried on — a CLUE, **not** a way to unblock
|
|
1103
|
+
* this decision.
|
|
1104
|
+
* So: offer "resume `.runId`"; if this same code comes back after that resume, say "this record needs an operator" (and point at
|
|
1105
|
+
* `.readableHolderRunId` when it is there). A record with NO `parks` key at all is no longer this code: it holds nothing, and a card
|
|
1106
|
+
* only it names answers `409 conflict.resume_context_unavailable` (a {@link ConflictError}, no `runId` in the body).
|
|
1107
|
+
*/
|
|
1066
1108
|
export class DecideWorkflowParksUnreadableError extends DecideError {
|
|
1109
|
+
readableHolderRunId;
|
|
1110
|
+
constructor(status, errorCode, message, taskId, rollback, runId,
|
|
1111
|
+
/** server ≥7.118.0, the "record cannot be read" cause only: the readable record that holds this card at the highest generation
|
|
1112
|
+
* (the body's top-level `readableHolderRunId`; absent when there is none or a tie — never `null`). Where the work can be carried
|
|
1113
|
+
* on; it does NOT clear this refusal (the damaged record `.runId` names still blocks delivery until it is repaired). */
|
|
1114
|
+
readableHolderRunId) {
|
|
1115
|
+
super(status, errorCode, message, taskId, rollback, runId);
|
|
1116
|
+
this.readableHolderRunId = readableHolderRunId;
|
|
1117
|
+
}
|
|
1118
|
+
}
|
|
1119
|
+
/** `decide.workflow_park_forked` (409, server ≥7.118.0 / core 7.44.0 #1319) — the same workflow run was resumed more than once and
|
|
1120
|
+
* every resumed copy listed in {@link runIds} is waiting on this same card at the same generation, so there is no single run to hand
|
|
1121
|
+
* the decision to. Same family and shape as {@link DecideWorkflowParksUnreadableError}: the workflow lane, NO `taskId`, nothing
|
|
1122
|
+
* delivered, the card stays PENDING.
|
|
1123
|
+
*
|
|
1124
|
+
* 🔴 **Retrying this decide never succeeds.** Recovery: RESUME ONE of the runs in {@link runIds}; once that run is waiting on this
|
|
1125
|
+
* card again, deciding here works. A client that treats an unknown 409 as "retry later" must branch on this class.
|
|
1126
|
+
* ⚠️ The server can only see a fork when its park-pointer index is complete; a competing pointer that did not get written makes the
|
|
1127
|
+
* fork look like a single holder and the decision goes to the branch whose pointer exists (server 7.118.0 known boundary). */
|
|
1128
|
+
export class DecideWorkflowParkForkedError extends DecideError {
|
|
1129
|
+
runIds;
|
|
1130
|
+
constructor(status, errorCode, message, taskId, rollback, runId,
|
|
1131
|
+
/** The resumed runs that all hold this card (the body's `runIds`, ≥2 on the wire). Whole-or-nothing: absent when the body does
|
|
1132
|
+
* not carry an array of non-empty strings (the raw value stays on {@link APIError.extra}). */
|
|
1133
|
+
runIds) {
|
|
1134
|
+
super(status, errorCode, message, taskId, rollback, runId);
|
|
1135
|
+
this.runIds = runIds;
|
|
1136
|
+
}
|
|
1067
1137
|
}
|
|
1068
1138
|
/**
|
|
1069
1139
|
* **状态派生粗码**的闭集(server 契约附录 A.1e,S-864,server ≥7.113.0;K-24 同名常量那一半 —— client-core `STATUS_DERIVED_COARSE_CODES` 同名同序,其 RL-11 退役条件读它)。
|
|
@@ -1263,8 +1333,13 @@ function classifyApiError(status, body, retryAfterMs) {
|
|
|
1263
1333
|
// core 5.14.0 #147:队列满 ≠ 没在跑,处置相反 ⇒ 自己的类(落基类会让消费端只看到一个匿名 SteeringError)。
|
|
1264
1334
|
if (errorCode === "steering.queue_full")
|
|
1265
1335
|
return new SteeringQueueFullError(status, errorCode, msg);
|
|
1266
|
-
if (errorCode === "steering.duplicate_input_id")
|
|
1267
|
-
|
|
1336
|
+
if (errorCode === "steering.duplicate_input_id") {
|
|
1337
|
+
// server ≥7.118.0:体 `detail.differs`(引擎的判,闭集非空子集);整体成形或整体缺席。
|
|
1338
|
+
const raw = typeof b.detail === "object" && b.detail !== null ? b.detail.differs : undefined;
|
|
1339
|
+
const facets = STEER_REPLAY_FACETS;
|
|
1340
|
+
const differs = Array.isArray(raw) && raw.length > 0 && raw.every((f) => facets.includes(f)) ? Object.freeze([...raw]) : undefined;
|
|
1341
|
+
return new SteeringDuplicateInputIdError(status, errorCode, msg, differs);
|
|
1342
|
+
}
|
|
1268
1343
|
// server 7.110.0 S-928:账本写不进 ⇒ 503,原文稍后重发 —— 处置与其余成员都不同,专类。
|
|
1269
1344
|
if (errorCode === "steering.ledger_unavailable")
|
|
1270
1345
|
return new SteeringLedgerUnavailableError(status, errorCode, msg);
|
|
@@ -1357,7 +1432,17 @@ function classifyApiError(status, body, retryAfterMs) {
|
|
|
1357
1432
|
// 开一条新的」对本版引擎是**假的** —— 准入不由这一个键单独判。出处与「为什么不在本仓复述那套准入」
|
|
1358
1433
|
// 见 DecideWorkflowParksUnreadableError 顶注。
|
|
1359
1434
|
if (errorCode === "decide.workflow_parks_unreadable") {
|
|
1360
|
-
|
|
1435
|
+
// server ≥7.118.0:「记录读不出」那一成因的体另带顶层 `readableHolderRunId`(线索,不是出路;缺席 / 非串 ⇒ undefined)。
|
|
1436
|
+
const holder = typeof b.readableHolderRunId === "string" && b.readableHolderRunId.length > 0 ? b.readableHolderRunId : undefined;
|
|
1437
|
+
return new DecideWorkflowParksUnreadableError(status, errorCode, msg, taskId, rollback, runId, holder);
|
|
1438
|
+
}
|
|
1439
|
+
// server ≥7.118.0(core 7.44.0 #1319):同一条 run 被续跑两次、两支都停在这张卡上 ⇒ 不投递;出路 = 续跑 `runIds` 里的一条再决。
|
|
1440
|
+
// 与上一码同族同形(workflow 车道、无 taskId);`runIds` 整体成形或整体缺席(非串数组 ⇒ undefined)。
|
|
1441
|
+
if (errorCode === "decide.workflow_park_forked") {
|
|
1442
|
+
const runIds = Array.isArray(b.runIds) && b.runIds.length > 0 && b.runIds.every((x) => typeof x === "string" && x.length > 0)
|
|
1443
|
+
? Object.freeze([...b.runIds])
|
|
1444
|
+
: undefined;
|
|
1445
|
+
return new DecideWorkflowParkForkedError(status, errorCode, msg, taskId, rollback, runId, runIds);
|
|
1361
1446
|
}
|
|
1362
1447
|
// 原样重试
|
|
1363
1448
|
if (errorCode === "decide.store_unreachable")
|