@sema-agent/server 7.148.0 → 7.149.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/MIGRATION.md +429 -0
- package/README.md +16 -1
- package/README.zh-CN.md +4 -0
- package/USAGE.md +89 -55
- package/dist/adoption/wire.d.ts +3 -3
- package/dist/approval-card.d.ts +32 -32
- package/dist/approval-leg-origin.d.ts +33 -0
- package/dist/approval-leg-origin.js +4 -0
- package/dist/auth-bridge.d.ts +9 -1
- package/dist/auth-bridge.js +4 -4
- package/dist/auth-keys.d.ts +10 -1
- package/dist/auth-keys.js +8 -0
- package/dist/boot/execution-env.js +10 -11
- package/dist/boot/execution-lane.d.ts +6 -4
- package/dist/boot/execution-lane.js +3 -1
- package/dist/boot/org-delivery.d.ts +3 -2
- package/dist/boot/resolve-spec.js +6 -4
- package/dist/boot/runner-deps.js +3 -1
- package/dist/boot/stage-01-config.d.ts +1 -0
- package/dist/boot/stage-01-config.js +4 -3
- package/dist/boot/stage-02-web-admin-pull.d.ts +1 -0
- package/dist/boot/stage-02-web-admin-pull.js +10 -2
- package/dist/boot/stage-03-store-backend.d.ts +1 -0
- package/dist/boot/stage-03-store-backend.js +2 -2
- package/dist/boot/stage-04-stores.d.ts +1 -0
- package/dist/boot/stage-05-execution-env.d.ts +1 -0
- package/dist/boot/stage-06-runners.d.ts +2 -1
- package/dist/boot/stage-07-capability-layer.d.ts +2 -1
- package/dist/boot/stage-08-reapers.d.ts +2 -1
- package/dist/boot/stage-09-leader.d.ts +2 -1
- package/dist/boot/stage-10-http-server.d.ts +2 -1
- package/dist/boot/stores.d.ts +3 -0
- package/dist/boot/stores.js +22 -19
- package/dist/capabilities/tool-defer.d.ts +1 -1
- package/dist/capability-facts.d.ts +5 -4
- package/dist/capability-facts.js +3 -14
- package/dist/card-settle-stored-scope.d.ts +56 -0
- package/dist/card-settle-stored-scope.js +27 -0
- package/dist/card-void.d.ts +7 -12
- package/dist/card-void.js +2 -7
- package/dist/config-catalog.d.ts +12 -0
- package/dist/config-catalog.js +36 -32
- package/dist/config-invariants.d.ts +5 -4
- package/dist/config-invariants.js +4 -4
- package/dist/config-types.d.ts +37 -5
- package/dist/config.d.ts +6 -5
- package/dist/config.js +35 -24
- package/dist/context-window-notice.d.ts +31 -0
- package/dist/context-window-notice.js +28 -0
- package/dist/deployment-shape.d.ts +20 -11
- package/dist/deployment-shape.js +1 -0
- package/dist/env-name-allowlist-knobs.d.ts +6 -5
- package/dist/env-name-allowlist-knobs.js +5 -0
- package/dist/execution-lane-caps.d.ts +20 -5
- package/dist/execution-lane-caps.js +18 -4
- package/dist/hooks/command-spawn.d.ts +7 -2
- package/dist/hooks/command-spawn.js +13 -6
- package/dist/hooks/hook-runner.d.ts +5 -0
- package/dist/hooks/hook-runner.js +11 -7
- package/dist/http/admission.js +3 -3
- package/dist/http/approval-sweeps.js +3 -2
- package/dist/http/claim-heartbeat.d.ts +3 -3
- package/dist/http/claim-heartbeat.js +3 -3
- package/dist/http/claimed-run.d.ts +16 -9
- package/dist/http/claimed-run.js +8 -0
- package/dist/http/dispatch.js +5 -3
- package/dist/http/durable-run-leg.d.ts +8 -1
- package/dist/http/durable-run-leg.js +30 -11
- package/dist/http/execution-context.d.ts +115 -14
- package/dist/http/execution-context.js +130 -40
- package/dist/http/owner-access.d.ts +3 -2
- package/dist/http/owner-access.js +2 -3
- package/dist/http/principal-gate.d.ts +18 -11
- package/dist/http/principal-gate.js +3 -1
- package/dist/http/resume-ctx-read.d.ts +14 -3
- package/dist/http/resume-ctx-read.js +8 -2
- package/dist/http/resume-legs.d.ts +35 -3
- package/dist/http/resume-legs.js +244 -92
- package/dist/http/route-ctx.d.ts +6 -0
- package/dist/http/routes/a2a-serve.js +2 -0
- package/dist/http/routes/approvals-assistant.js +3 -2
- package/dist/http/routes/capabilities.js +1 -1
- package/dist/http/routes/diagnostics.d.ts +3 -1
- package/dist/http/routes/diagnostics.js +30 -5
- package/dist/http/routes/principal-inbox.d.ts +3 -1
- package/dist/http/routes/principal-inbox.js +3 -2
- package/dist/http/routes/runs.js +10 -7
- package/dist/http/routes/session-sync.d.ts +24 -5
- package/dist/http/routes/session-sync.js +46 -34
- package/dist/http/routes/sessions-list.d.ts +1 -1
- package/dist/http/routes/tasks.js +127 -93
- package/dist/http/server.d.ts +4 -5
- package/dist/http/server.js +30 -5
- package/dist/http/submit-ctx.d.ts +1 -0
- package/dist/http/submit-ctx.js +2 -3
- package/dist/index.d.ts +3 -1
- package/dist/index.js +1 -0
- package/dist/leg-facts.d.ts +7 -2
- package/dist/leg-facts.js +1 -0
- package/dist/local-store-declaration.d.ts +54 -0
- package/dist/local-store-declaration.js +59 -0
- package/dist/mcp-assertion-header.d.ts +1 -1
- package/dist/mcp-assertion-header.js +1 -1
- package/dist/memory-project-layer.js +1 -1
- package/dist/memory-scope.d.ts +4 -4
- package/dist/memory-scope.js +4 -4
- package/dist/memory-sync-client.js +2 -2
- package/dist/model-context-window.d.ts +50 -11
- package/dist/model-context-window.js +20 -1
- package/dist/model-entry-refusal.d.ts +5 -4
- package/dist/model-entry-refusal.js +17 -3
- package/dist/model-reach-scope.d.ts +2 -1
- package/dist/observability/fail-open.d.ts +14 -2
- package/dist/observability/fail-open.js +14 -2
- package/dist/observability/metrics.js +1 -1
- package/dist/observability/run-terminal.js +1 -0
- package/dist/observability/secret-env-scrub.d.ts +1 -1
- package/dist/observability/secret-env-scrub.js +1 -1
- package/dist/org-delivery-gate.d.ts +31 -6
- package/dist/org-delivery-gate.js +7 -4
- package/dist/owner-faces.d.ts +3 -2
- package/dist/park-row-commit.d.ts +67 -0
- package/dist/park-row-commit.js +76 -0
- package/dist/parked-decide.d.ts +9 -7
- package/dist/parked-decide.js +25 -6
- package/dist/peer-directory.d.ts +1 -1
- package/dist/plugins/adoption-log-sql.d.ts +3 -3
- package/dist/plugins/adoption-log-sql.js +19 -19
- package/dist/plugins/approval-ask-store-sql.d.ts +1 -1
- package/dist/plugins/approval-ask-store-sql.js +3 -5
- package/dist/plugins/approval-exemption-skill-cutoff.d.ts +64 -0
- package/dist/plugins/approval-exemption-skill-cutoff.js +122 -0
- package/dist/plugins/approval-exemption-skill-m46.d.ts +0 -6
- package/dist/plugins/approval-exemption-skill-m46.js +6 -10
- package/dist/plugins/approval-exemption-store.d.ts +26 -1
- package/dist/plugins/approval-exemption-store.js +28 -19
- package/dist/plugins/ensure-schema-lock-policy.d.ts +36 -3
- package/dist/plugins/ensure-schema-lock-policy.js +75 -9
- package/dist/plugins/file-run-store.d.ts +22 -9
- package/dist/plugins/file-run-store.js +50 -22
- package/dist/plugins/local-checkpoint-store.d.ts +4 -0
- package/dist/plugins/local-checkpoint-store.js +2 -1
- package/dist/plugins/local-data-root-admission.d.ts +52 -0
- package/dist/plugins/local-data-root-admission.js +100 -0
- package/dist/plugins/local-engine-high-water.d.ts +28 -7
- package/dist/plugins/local-engine-high-water.js +27 -22
- package/dist/plugins/local-session-store.d.ts +134 -49
- package/dist/plugins/local-session-store.js +149 -108
- package/dist/plugins/memory-run-store.d.ts +14 -9
- package/dist/plugins/memory-run-store.js +47 -21
- package/dist/plugins/one-time-migration-marker.d.ts +19 -3
- package/dist/plugins/one-time-migration-marker.js +7 -1
- package/dist/plugins/one-time-migrations.d.ts +46 -20
- package/dist/plugins/one-time-migrations.js +102 -79
- package/dist/plugins/org-delivery-quota-store.d.ts +34 -11
- package/dist/plugins/org-delivery-quota-store.js +29 -14
- package/dist/plugins/permission-rule-store-sql.d.ts +1 -1
- package/dist/plugins/permission-rule-store-sql.js +5 -9
- package/dist/plugins/pg-pool.d.ts +1 -1
- package/dist/plugins/pg-pool.js +10 -12
- package/dist/plugins/remote-env-device.d.ts +3 -2
- package/dist/plugins/remote-env-e2b.d.ts +1 -7
- package/dist/plugins/remote-env-e2b.js +10 -7
- package/dist/plugins/remote-env-host.d.ts +50 -9
- package/dist/plugins/remote-env-host.js +77 -20
- package/dist/plugins/remote-env-k8s.js +4 -2
- package/dist/plugins/remote-env-local-docker.d.ts +6 -3
- package/dist/plugins/remote-env-local-docker.js +8 -23
- package/dist/plugins/run-store-sql.d.ts +26 -7
- package/dist/plugins/run-store-sql.js +44 -16
- package/dist/plugins/scenario-prefix-switch-m42.d.ts +3 -1
- package/dist/plugins/scenario-prefix-switch-m42.js +4 -3
- package/dist/plugins/schema-consistency.d.ts +89 -5
- package/dist/plugins/schema-consistency.js +176 -7
- package/dist/plugins/schema-drift-sentence.d.ts +6 -5
- package/dist/plugins/schema-drift-sentence.js +13 -5
- package/dist/plugins/session-placement.d.ts +5 -4
- package/dist/plugins/shell-sentinel-owner-m48.d.ts +22 -0
- package/dist/plugins/shell-sentinel-owner-m48.js +6 -0
- package/dist/plugins/stop-then-start-sentence.d.ts +16 -0
- package/dist/plugins/stop-then-start-sentence.js +7 -0
- package/dist/plugins/store-backend.d.ts +22 -8
- package/dist/plugins/store-backend.js +58 -24
- package/dist/plugins/store-contracts.d.ts +33 -3
- package/dist/plugins/store-contracts.js +16 -0
- package/dist/plugins/tidb-pool.d.ts +11 -6
- package/dist/plugins/tidb-pool.js +18 -12
- package/dist/plugins/workspace-custody.d.ts +44 -0
- package/dist/plugins/workspace-custody.js +47 -0
- package/dist/project-identity.d.ts +8 -7
- package/dist/project-identity.js +40 -17
- package/dist/project-layer-key.d.ts +13 -2
- package/dist/project-layer-key.js +9 -1
- package/dist/read-deny-floor-notice.d.ts +36 -0
- package/dist/read-deny-floor-notice.js +40 -0
- package/dist/{plain-string-record.d.ts → request-declaration-disposition.d.ts} +9 -23
- package/dist/request-declaration-disposition.js +39 -0
- package/dist/run-cancel-card.d.ts +28 -0
- package/dist/run-cancel-card.js +19 -0
- package/dist/run-cancel-context.d.ts +10 -0
- package/dist/run-cancel-context.js +1 -0
- package/dist/run-local.js +28 -13
- package/dist/runs.d.ts +31 -7
- package/dist/runs.js +34 -16
- package/dist/security.d.ts +2 -2
- package/dist/server-secret-env.d.ts +34 -20
- package/dist/server-secret-env.js +61 -18
- package/dist/session-agent.d.ts +3 -2
- package/dist/session-children-retire.d.ts +6 -3
- package/dist/session-children-retire.js +2 -5
- package/dist/session-workspace.d.ts +3 -3
- package/dist/store-admission.d.ts +33 -0
- package/dist/store-admission.js +49 -0
- package/dist/store-posture.d.ts +5 -0
- package/dist/store-posture.js +18 -1
- package/dist/stores-sql/checkpoint-store-sql.d.ts +1 -1
- package/dist/stores-sql/checkpoint-store-sql.js +3 -5
- package/dist/stores-sql/file-history-store-sql.d.ts +1 -1
- package/dist/stores-sql/file-history-store-sql.js +3 -5
- package/dist/stores-sql/tool-result-store-sql.d.ts +1 -1
- package/dist/stores-sql/tool-result-store-sql.js +4 -6
- package/dist/task-a2a.d.ts +3 -8
- package/dist/task-a2a.js +25 -27
- package/dist/task-cwd.d.ts +23 -7
- package/dist/task-cwd.js +3 -0
- package/dist/task-mcp.d.ts +3 -3
- package/dist/task-mcp.js +1 -1
- package/dist/task-settings.js +1 -0
- package/dist/terminal.d.ts +2 -0
- package/dist/terminal.js +21 -6
- package/dist/tool-approval.d.ts +44 -36
- package/dist/tool-approval.js +66 -47
- package/dist/trace/engine-notice-wire.d.ts +24 -21
- package/dist/trace/engine-notice-wire.js +7 -3
- package/dist/trace/ledger-sink.d.ts +3 -1
- package/dist/trace/project.d.ts +4 -2
- package/dist/trace/project.js +8 -7
- package/dist/trace/redact.d.ts +12 -0
- package/dist/trace/redact.js +5 -1
- package/dist/trace/self-minted-wire.d.ts +131 -52
- package/dist/trace/self-minted-wire.js +71 -39
- package/dist/web-admin-client/apply-effective.js +22 -9
- package/docs/error-text-lexicon.json +317 -0
- package/package.json +3 -1
- package/scripts/embed-minimal.mjs +183 -0
- package/wire-changes/server@7.149.0.json +372 -0
- package/dist/plain-string-record.js +0 -70
|
@@ -0,0 +1,372 @@
|
|
|
1
|
+
{
|
|
2
|
+
"repo": "server",
|
|
3
|
+
"version": "7.149.0",
|
|
4
|
+
"from": "v7.148.0",
|
|
5
|
+
"fromCommit": "4a87488ca6f51d4994e8323e06f5e0bc70757088",
|
|
6
|
+
"to": "v7.149.0",
|
|
7
|
+
"generator": "scripts/wire-changes-server.mjs",
|
|
8
|
+
"sources": [
|
|
9
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1",
|
|
10
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1b",
|
|
11
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1h",
|
|
12
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1g",
|
|
13
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#B.1",
|
|
14
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#B.1a",
|
|
15
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#B.2b",
|
|
16
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#B.2",
|
|
17
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#D.3",
|
|
18
|
+
"src/trace/wire-projection-faces.ts",
|
|
19
|
+
"src/trace/self-minted-wire.ts",
|
|
20
|
+
"node_modules/@sema-agent/core/wire-changes",
|
|
21
|
+
"src/trace/core-vocab-wire.ts"
|
|
22
|
+
],
|
|
23
|
+
"added": [
|
|
24
|
+
{
|
|
25
|
+
"id": "A1",
|
|
26
|
+
"source": "engineNotice",
|
|
27
|
+
"member": "config.read_deny_floor_unkept",
|
|
28
|
+
"text": "附录 D.3 engine_notice 码新增 `config.read_deny_floor_unkept`(detail `{ rowCount, sessionId, runId }` —— 引擎的,逐字(`rowCount` = 读拒表的行数;`sessionId` / `runId` = 说的那一条 run,级 / 验证器 / 子代是它们自己的))"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"id": "A2",
|
|
32
|
+
"source": "errorCode",
|
|
33
|
+
"member": "internal.org_delivery_quota_unreadable",
|
|
34
|
+
"text": "附录 A.1 / A.1b 错误码新增 `internal.org_delivery_quota_unreadable`(状态码 500)"
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"id": "A3",
|
|
38
|
+
"source": "errorCode",
|
|
39
|
+
"member": "state.run_store_unavailable",
|
|
40
|
+
"text": "附录 A.1 / A.1b 错误码新增 `state.run_store_unavailable`(状态码 503)"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"id": "A4",
|
|
44
|
+
"source": "errorCodeFamily",
|
|
45
|
+
"member": "internal.org_delivery_quota_unreadable",
|
|
46
|
+
"text": "附录 A.1 / A.1b / A.1h 错误码的码族新增 `internal.org_delivery_quota_unreadable`(码族 deterministic)"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"id": "A5",
|
|
50
|
+
"source": "errorCodeFamily",
|
|
51
|
+
"member": "state.run_store_unavailable",
|
|
52
|
+
"text": "附录 A.1 / A.1b / A.1h 错误码的码族新增 `state.run_store_unavailable`(码族 transient)"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"id": "A6",
|
|
56
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
57
|
+
"member": "POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_park_ended(续跑腿再停 / 重开时停驻提交答出这条 run 已收场;卡已作废;体 status / errorCode = 收场那一行的,不带 retriable)",
|
|
58
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_park_ended(续跑腿再停 / 重开时停驻提交答出这条 run 已收场;卡已作废;体 status / errorCode = 收场那一行的,不带 retriable)`(属性 200;since 7.149.0 = 本版新上 wire)"
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"id": "A7",
|
|
62
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
63
|
+
"member": "POST /v1/tasks#park_commit_ended(同步腿停在要批的门上,而停驻提交答出这条 run 没有停住、已收场 —— 停驻写之前已按下取消 / 被失联收割 / 别处终结;卡已作废;体 = 收场那一行的信封,与同键重放同一只:终局行的结果,取消那一形 terminal.code cancelled;行上无结果 ⇒ 回执三键)",
|
|
64
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/tasks#park_commit_ended(同步腿停在要批的门上,而停驻提交答出这条 run 没有停住、已收场 —— 停驻写之前已按下取消 / 被失联收割 / 别处终结;卡已作废;体 = 收场那一行的信封,与同键重放同一只:终局行的结果,取消那一形 terminal.code cancelled;行上无结果 ⇒ 回执三键)`(属性 200;since 7.149.0 = 本版新上 wire)"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"id": "A8",
|
|
68
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
69
|
+
"member": "POST /v1/tasks|/v1/tasks/stream|/v1/runs#a2aPeers_headers_reserved_member(新提交;a2aPeers[i].headers 的成员名是 constructor / prototype —— 与 mcpServers[i].transport.headers / .env 同一张保留成员名表、同一只读法,大小写敏感;体 request.field_invalid + field 成员级路径 a2aPeers[i].headers.<名>;存盘续跑体里同形 ⇒ 续跑家族既有一面 #stored_unread_members 409)",
|
|
70
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/tasks|/v1/tasks/stream|/v1/runs#a2aPeers_headers_reserved_member(新提交;a2aPeers[i].headers 的成员名是 constructor / prototype —— 与 mcpServers[i].transport.headers / .env 同一张保留成员名表、同一只读法,大小写敏感;体 request.field_invalid + field 成员级路径 a2aPeers[i].headers.<名>;存盘续跑体里同形 ⇒ 续跑家族既有一面 #stored_unread_members 409)`(属性 400;since 7.149.0 = 本版新上 wire)"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"id": "A9",
|
|
74
|
+
"source": "selfMinted.modelsContextWindowSource",
|
|
75
|
+
"member": "assumed",
|
|
76
|
+
"text": "自铸 GET /v1/models models[].contextWindowSource(present-iff contextWindow) 新增 `assumed`(属性 -;since 7.149.0 = 本版新上 wire)"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"id": "A10",
|
|
80
|
+
"source": "selfMinted.modelsContextWindowSource",
|
|
81
|
+
"member": "declared",
|
|
82
|
+
"text": "自铸 GET /v1/models models[].contextWindowSource(present-iff contextWindow) 新增 `declared`(属性 -;since 7.149.0 = 本版新上 wire)"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"id": "A11",
|
|
86
|
+
"source": "selfMinted.modelsRowKey",
|
|
87
|
+
"member": "contextWindowSource",
|
|
88
|
+
"text": "自铸 GET /v1/models models[] 行键(<键> → 在场律) 新增 `contextWindowSource`(属性 present-iff contextWindow is present;since 7.149.0 = 本版新上 wire)"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"id": "A12",
|
|
92
|
+
"source": "selfMinted.rowRefusalWayOut",
|
|
93
|
+
"member": "cancel_run",
|
|
94
|
+
"text": "自铸 409 决断类续跑拒体(/decide · /plan_review · /resume;判官判那张卡续不了)wayOut 新增 `cancel_run`(属性 -;since 7.149.0 = 本版新上 wire)"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"id": "A13",
|
|
98
|
+
"source": "selfMinted.rowRefusalWayOut",
|
|
99
|
+
"member": "newer_worker",
|
|
100
|
+
"text": "自铸 409 决断类续跑拒体(/decide · /plan_review · /resume;判官判那张卡续不了)wayOut 新增 `newer_worker`(属性 -;since 7.149.0 = 本版新上 wire)"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"id": "A14",
|
|
104
|
+
"source": "selfMinted.runResultSideKey",
|
|
105
|
+
"member": "readDenyFloor",
|
|
106
|
+
"text": "自铸 run 结果顶层侧记键(GET /v1/runs/:id → result · done.result · POST /v1/tasks 200 体顶层 · 账本 done 行 result;<键> → 在场律) 新增 `readDenyFloor`(属性 present-iff the run went ahead while its read-deny rules are not byte-enforced (rows, an execution environment that does not keep the floor, READ_DENY_FLOOR_REQUIRED unset); { code, message } equals that run's engine_notice frame;since 7.149.0 = 本版新上 wire)"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"registered": [],
|
|
110
|
+
"excluded": [],
|
|
111
|
+
"removed": [],
|
|
112
|
+
"changed": [
|
|
113
|
+
{
|
|
114
|
+
"id": "C1",
|
|
115
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
116
|
+
"member": "GET /v1/tool-approvals/:id#row_unreadable(有行的问,按 id 读行那一拍店抛 / 超时;本副本自己铸的活卡与起服接管的登记同答;体 not_found.ask,与查无 / 不是你的逐字节同)",
|
|
117
|
+
"from": [
|
|
118
|
+
"selfMinted.toolApprovalReadState:pending"
|
|
119
|
+
],
|
|
120
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `GET /v1/tool-approvals/:id#row_unreadable(有行的问,按 id 读行那一拍店抛 / 超时;本副本自己铸的活卡与起服接管的登记同答;体 not_found.ask,与查无 / 不是你的逐字节同)`(属性 404;since 7.149.0 = 本版;修订上一 tag 的 selfMinted.toolApprovalReadState:pending)"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"id": "C2",
|
|
124
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
125
|
+
"member": "POST /v1/approvals/:sessionId/decide#parked_redeem_placement_store_fault(停驻子代赎回:认领之前那一次执行席读,或认领之后那一次执行放置的店往返没答出来;认领没有或已回滚,子代仍停着、卡仍待决;体 decide.store_unreachable + taskId)",
|
|
126
|
+
"from": [
|
|
127
|
+
"errorCode:internal.error"
|
|
128
|
+
],
|
|
129
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide#parked_redeem_placement_store_fault(停驻子代赎回:认领之前那一次执行席读,或认领之后那一次执行放置的店往返没答出来;认领没有或已回滚,子代仍停着、卡仍待决;体 decide.store_unreachable + taskId)`(属性 503;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
"id": "C3",
|
|
133
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
134
|
+
"member": "POST /v1/approvals/:sessionId/decide#workflow_decision_not_recorded(workflow 决定的投递那一跑在决定落行那一拍已不持宿主会话的认领 —— 心跳停满一窗被收割;决定没落、那一跑没起;与起跑之前认领复核答「没持有」同一只答复:认领在别的 run 上 ⇒ 409 conflict.session_active_run,宿主会话已删 ⇒ 404 resume.session_not_found,否则 409 conflict.claim_lost)",
|
|
135
|
+
"from": [
|
|
136
|
+
"errorCode:internal.error"
|
|
137
|
+
],
|
|
138
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide#workflow_decision_not_recorded(workflow 决定的投递那一跑在决定落行那一拍已不持宿主会话的认领 —— 心跳停满一窗被收割;决定没落、那一跑没起;与起跑之前认领复核答「没持有」同一只答复:认领在别的 run 上 ⇒ 409 conflict.session_active_run,宿主会话已删 ⇒ 404 resume.session_not_found,否则 409 conflict.claim_lost)`(属性 409;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"id": "C4",
|
|
142
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
143
|
+
"member": "POST /v1/approvals/:sessionId/decide#workflow_host_turn_claim_store_fault(workflow 决定在宿主会话上起的新一跑:建行认领 / 执行放置 / 续跑输入 / 决定落行 / 起跑之前的认领复核有一次店往返没答出来;决定落行那一笔在 wake 腿上同答;现建的行已删掉,子代的卡仍待决;体 state.resume_context_unreadable)",
|
|
144
|
+
"from": [
|
|
145
|
+
"errorCode:internal.error"
|
|
146
|
+
],
|
|
147
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide#workflow_host_turn_claim_store_fault(workflow 决定在宿主会话上起的新一跑:建行认领 / 执行放置 / 续跑输入 / 决定落行 / 起跑之前的认领复核有一次店往返没答出来;决定落行那一笔在 wake 腿上同答;现建的行已删掉,子代的卡仍待决;体 state.resume_context_unreadable)`(属性 503;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
"id": "C5",
|
|
151
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
152
|
+
"member": "POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#placement_refused_after_claim(续跑家族、workflow 决定在宿主会话上起的新一跑、停驻子代赎回认领之后提交执行放置读出这条会话此刻不能在本处执行:已放在别的车道 / 写者在别处 / 设备拒;续跑认领的停驻行回到停驻、停驻赎回回滚,卡仍待决,wake 与宿主新一跑现建的行删掉;与认领之前同一只折法、同一只体;体 resume_blocked_by_policy + blockedBy 原码 + 原事实 forkPath / boundLane + retriable)",
|
|
153
|
+
"from": [
|
|
154
|
+
"errorCode:execution_lane.tree_bound",
|
|
155
|
+
"errorCode:conflict.session_mirror"
|
|
156
|
+
],
|
|
157
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#placement_refused_after_claim(续跑家族、workflow 决定在宿主会话上起的新一跑、停驻子代赎回认领之后提交执行放置读出这条会话此刻不能在本处执行:已放在别的车道 / 写者在别处 / 设备拒;续跑认领的停驻行回到停驻、停驻赎回回滚,卡仍待决,wake 与宿主新一跑现建的行删掉;与认领之前同一只折法、同一只体;体 resume_blocked_by_policy + blockedBy 原码 + 原事实 forkPath / boundLane + retriable)`(属性 409;since 7.149.0 = 本版;修订上一 tag 的 errorCode:execution_lane.tree_bound / errorCode:conflict.session_mirror)"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"id": "C6",
|
|
161
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
162
|
+
"member": "POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_claim_store_fault(认领之前那一次执行席读、认领那一笔 —— markResuming / wake 现建行的 createRun —— 或认领之后提交执行放置那一次店往返失败:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;认领之后那一形续跑认领的停驻行回到认领之前的停驻词、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)",
|
|
163
|
+
"from": [
|
|
164
|
+
"errorCode:internal.error"
|
|
165
|
+
],
|
|
166
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_claim_store_fault(认领之前那一次执行席读、认领那一笔 —— markResuming / wake 现建行的 createRun —— 或认领之后提交执行放置那一次店往返失败:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;认领之后那一形续跑认领的停驻行回到认领之前的停驻词、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)`(属性 503;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
167
|
+
},
|
|
168
|
+
{
|
|
169
|
+
"id": "C7",
|
|
170
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
171
|
+
"member": "POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_pre_engine_store_fault(续跑腿提交放行之后、交给引擎之前那一段 —— 排空 workflow 完成的序号基址现读与落账、通告口落账 —— 店往返没答出来;续跑认领的停驻行回到停驻、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)",
|
|
172
|
+
"from": [
|
|
173
|
+
"errorCode:internal.error"
|
|
174
|
+
],
|
|
175
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_pre_engine_store_fault(续跑腿提交放行之后、交给引擎之前那一段 —— 排空 workflow 完成的序号基址现读与落账、通告口落账 —— 店往返没答出来;续跑认领的停驻行回到停驻、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)`(属性 503;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
"id": "C8",
|
|
179
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
180
|
+
"member": "POST /v1/runs/:id/cancel#parked_card_body_scope_differs(停驻 run 上的取消:这张卡行体里自带的属主格与店的属主格不一致 —— 取消只读店的属主格,结算这张卡、驱 run 终局;体 { taskId, status: failed, errorCode: cancelled, cancelRequested: false, note })",
|
|
181
|
+
"from": [
|
|
182
|
+
"errorCode:conflict.approval_settled"
|
|
183
|
+
],
|
|
184
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/runs/:id/cancel#parked_card_body_scope_differs(停驻 run 上的取消:这张卡行体里自带的属主格与店的属主格不一致 —— 取消只读店的属主格,结算这张卡、驱 run 终局;体 { taskId, status: failed, errorCode: cancelled, cancelRequested: false, note })`(属性 202;since 7.149.0 = 本版;修订上一 tag 的 errorCode:conflict.approval_settled)"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"id": "C9",
|
|
188
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
189
|
+
"member": "POST /v1/runs/:id/cancel#parked_card_body_unreadable(停驻 run 上的取消:这张卡的行体读不成检查点 —— 取消只读店的列,结算这张卡、驱 run 终局;体同上)",
|
|
190
|
+
"from": [
|
|
191
|
+
"errorCode:internal.error"
|
|
192
|
+
],
|
|
193
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/runs/:id/cancel#parked_card_body_unreadable(停驻 run 上的取消:这张卡的行体读不成检查点 —— 取消只读店的列,结算这张卡、驱 run 终局;体同上)`(属性 202;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error)"
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"id": "C10",
|
|
197
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
198
|
+
"member": "POST /v1/sessions/:id/sync/import#idle_id_other_principal_in_flight(第一阶段:id 上还没有会话行,而另一个主体在这只 id 上的第一阶段正在飞;导入租约键 = 落点属主格 + 会话 id,空闲 id 上各占各的;体 = 第一阶段的暂存回执 stagingId;先提交者得,输的那一份在提交前复判答 404 not_found.session,与赢家的提交撞在同一刻时由店的属主 CAS 拒 409 conflict)",
|
|
199
|
+
"from": [
|
|
200
|
+
"errorCodeFamily:import_in_flight"
|
|
201
|
+
],
|
|
202
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/sessions/:id/sync/import#idle_id_other_principal_in_flight(第一阶段:id 上还没有会话行,而另一个主体在这只 id 上的第一阶段正在飞;导入租约键 = 落点属主格 + 会话 id,空闲 id 上各占各的;体 = 第一阶段的暂存回执 stagingId;先提交者得,输的那一份在提交前复判答 404 not_found.session,与赢家的提交撞在同一刻时由店的属主 CAS 拒 409 conflict)`(属性 200;since 7.149.0 = 本版;修订上一 tag 的 errorCodeFamily:import_in_flight)"
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"id": "C11",
|
|
206
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
207
|
+
"member": "POST /v1/sessions/:id/sync/plan|POST /v1/sessions/:id/sync/import|PUT /v1/sessions/:id/sync/blobs/:hash#foreign_session_deleting(推送三口的门:id 上是别的主体正在删除的会话 —— 删除围栏已立、尚未删净;「被占着」读活行 ∪ 在删行,与对别人的活行同答;本人 / fleet 对自己在删的会话不变,拉取口仍只认活行;体 not_found.session,与对不存在 id 的拉取答复逐字节同)",
|
|
208
|
+
"from": [
|
|
209
|
+
"errorCode:conflict"
|
|
210
|
+
],
|
|
211
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/sessions/:id/sync/plan|POST /v1/sessions/:id/sync/import|PUT /v1/sessions/:id/sync/blobs/:hash#foreign_session_deleting(推送三口的门:id 上是别的主体正在删除的会话 —— 删除围栏已立、尚未删净;「被占着」读活行 ∪ 在删行,与对别人的活行同答;本人 / fleet 对自己在删的会话不变,拉取口仍只认活行;体 not_found.session,与对不存在 id 的拉取答复逐字节同)`(属性 404;since 7.149.0 = 本版;修订上一 tag 的 errorCode:conflict)"
|
|
212
|
+
},
|
|
213
|
+
{
|
|
214
|
+
"id": "C12",
|
|
215
|
+
"source": "selfMinted.endpointFaceStatus",
|
|
216
|
+
"member": "POST /v1/tasks|/v1/tasks/stream|/v1/runs#run_claim_store_fault(新提交:认领之前那一次执行席读,或认领这一段 —— 建行认领 createRun、执行放置、续跑输入的写、起跑之前的认领复核 —— 有一次店往返没答出来:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;本请求铸的行已删掉 —— 认领与幂等键随行去,同一个自带 taskId 重发即新提交 —— 什么都没起跑;认领之后的流式腿 = 流的终帧;已绑设备的会话上认领之后那一次执行席读同答;体 state.run_store_unavailable)",
|
|
217
|
+
"from": [
|
|
218
|
+
"errorCode:internal.error",
|
|
219
|
+
"errorCode:device.not_bound"
|
|
220
|
+
],
|
|
221
|
+
"text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 修订 `POST /v1/tasks|/v1/tasks/stream|/v1/runs#run_claim_store_fault(新提交:认领之前那一次执行席读,或认领这一段 —— 建行认领 createRun、执行放置、续跑输入的写、起跑之前的认领复核 —— 有一次店往返没答出来:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;本请求铸的行已删掉 —— 认领与幂等键随行去,同一个自带 taskId 重发即新提交 —— 什么都没起跑;认领之后的流式腿 = 流的终帧;已绑设备的会话上认领之后那一次执行席读同答;体 state.run_store_unavailable)`(属性 503;since 7.149.0 = 本版;修订上一 tag 的 errorCode:internal.error / errorCode:device.not_bound)"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"id": "C13",
|
|
225
|
+
"source": "selfMinted.ownerFaceAnswer",
|
|
226
|
+
"member": "GET /v1/runs/:id · /v1/runs/:id/events#dev-open-principal-header-not-owner",
|
|
227
|
+
"text": "自铸 属主门的逐口答复(<口>#<调用方 × 行> → 状态 errorCode;其余各口的码与句逐字不变) `GET /v1/runs/:id · /v1/runs/:id/events#dev-open-principal-header-not-owner` 的属性:200 (the principal header is a label on a deployment without an identity boundary); was 404 not_found.run → 404 not_found.run, same body as a missing run (a caller that names a principal is that principal on a deployment without an identity boundary too); was 200(since 7.149.0)"
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
"id": "C14",
|
|
231
|
+
"source": "selfMinted.ownerFaceAnswer",
|
|
232
|
+
"member": "session faces · list faces · /metrics family#dev-open-principal-header-not-owner",
|
|
233
|
+
"from": [
|
|
234
|
+
"selfMinted.ownerFaceAnswer:GET /v1/runs/:id · /v1/runs/:id/events#dev-open-principal-header-not-owner"
|
|
235
|
+
],
|
|
236
|
+
"text": "自铸 属主门的逐口答复(<口>#<调用方 × 行> → 状态 errorCode;其余各口的码与句逐字不变) 修订 `session faces · list faces · /metrics family#dev-open-principal-header-not-owner`(属性 each face's missing-row answer, same body as a missing row (404 not_found.session on GET /v1/sessions/:id · /head · /events · /memory-status · /execution-placement · PATCH /v1/sessions/:id · fork · sync reads (manifest · entries · history blob) · memory/erase · background · background/stop · mcp/reconnect · policy · notify; approval exemptions 404 not_found.session (not found); DELETE /v1/sessions/:id 200 {deleted:false}; sync push family (plan · import · blob put) 404 on another owner's session, its existing create answer on a missing id); GET /v1/sessions · /v1/fleet/stream · /v1/agents/roster · /v1/tasks (trace list) · /v1/usage/* · /v1/sendfile-links pinned to the named caller; /metrics* and GET /v1/tasks/source-summary 401 auth.unauthorized (operator sentence; METRICS_TOKEN, when configured, still opens /metrics* and is judged first); a Bearer this deployment cannot verify does not count as naming no principal (no fleet); a caller naming no principal and presenting no unverifiable credential unchanged (fleet); was 200 / fleet-wide (the principal header read as a label);since 7.149.0 = 本版;修订上一 tag 的 selfMinted.ownerFaceAnswer:GET /v1/runs/:id · /v1/runs/:id/events#dev-open-principal-header-not-owner)"
|
|
237
|
+
}
|
|
238
|
+
],
|
|
239
|
+
"narrowed": [],
|
|
240
|
+
"closedSetMembers": [
|
|
241
|
+
{
|
|
242
|
+
"set": "errorCode",
|
|
243
|
+
"at": [
|
|
244
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1",
|
|
245
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1b"
|
|
246
|
+
],
|
|
247
|
+
"added": [
|
|
248
|
+
"internal.org_delivery_quota_unreadable",
|
|
249
|
+
"state.run_store_unavailable"
|
|
250
|
+
],
|
|
251
|
+
"registered": [],
|
|
252
|
+
"removed": [],
|
|
253
|
+
"breaking": false
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"set": "errorCodeFamily",
|
|
257
|
+
"at": [
|
|
258
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1",
|
|
259
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1b",
|
|
260
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#A.1h"
|
|
261
|
+
],
|
|
262
|
+
"added": [
|
|
263
|
+
"internal.org_delivery_quota_unreadable",
|
|
264
|
+
"state.run_store_unavailable"
|
|
265
|
+
],
|
|
266
|
+
"registered": [],
|
|
267
|
+
"removed": [],
|
|
268
|
+
"breaking": false
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"set": "engineNotice",
|
|
272
|
+
"at": [
|
|
273
|
+
"docs/ASSISTANT-WIRE-CONTRACT.md#D.3"
|
|
274
|
+
],
|
|
275
|
+
"added": [
|
|
276
|
+
"config.read_deny_floor_unkept"
|
|
277
|
+
],
|
|
278
|
+
"registered": [],
|
|
279
|
+
"removed": [],
|
|
280
|
+
"breaking": false
|
|
281
|
+
},
|
|
282
|
+
{
|
|
283
|
+
"set": "selfMinted.endpointFaceStatus",
|
|
284
|
+
"at": [
|
|
285
|
+
"src/trace/self-minted-wire.ts#endpointFaceStatus"
|
|
286
|
+
],
|
|
287
|
+
"added": [
|
|
288
|
+
"GET /v1/tool-approvals/:id#row_unreadable(有行的问,按 id 读行那一拍店抛 / 超时;本副本自己铸的活卡与起服接管的登记同答;体 not_found.ask,与查无 / 不是你的逐字节同)",
|
|
289
|
+
"POST /v1/approvals/:sessionId/decide#parked_redeem_placement_store_fault(停驻子代赎回:认领之前那一次执行席读,或认领之后那一次执行放置的店往返没答出来;认领没有或已回滚,子代仍停着、卡仍待决;体 decide.store_unreachable + taskId)",
|
|
290
|
+
"POST /v1/approvals/:sessionId/decide#workflow_decision_not_recorded(workflow 决定的投递那一跑在决定落行那一拍已不持宿主会话的认领 —— 心跳停满一窗被收割;决定没落、那一跑没起;与起跑之前认领复核答「没持有」同一只答复:认领在别的 run 上 ⇒ 409 conflict.session_active_run,宿主会话已删 ⇒ 404 resume.session_not_found,否则 409 conflict.claim_lost)",
|
|
291
|
+
"POST /v1/approvals/:sessionId/decide#workflow_host_turn_claim_store_fault(workflow 决定在宿主会话上起的新一跑:建行认领 / 执行放置 / 续跑输入 / 决定落行 / 起跑之前的认领复核有一次店往返没答出来;决定落行那一笔在 wake 腿上同答;现建的行已删掉,子代的卡仍待决;体 state.resume_context_unreadable)",
|
|
292
|
+
"POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#placement_refused_after_claim(续跑家族、workflow 决定在宿主会话上起的新一跑、停驻子代赎回认领之后提交执行放置读出这条会话此刻不能在本处执行:已放在别的车道 / 写者在别处 / 设备拒;续跑认领的停驻行回到停驻、停驻赎回回滚,卡仍待决,wake 与宿主新一跑现建的行删掉;与认领之前同一只折法、同一只体;体 resume_blocked_by_policy + blockedBy 原码 + 原事实 forkPath / boundLane + retriable)",
|
|
293
|
+
"POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_claim_store_fault(认领之前那一次执行席读、认领那一笔 —— markResuming / wake 现建行的 createRun —— 或认领之后提交执行放置那一次店往返失败:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;认领之后那一形续跑认领的停驻行回到认领之前的停驻词、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)",
|
|
294
|
+
"POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_park_ended(续跑腿再停 / 重开时停驻提交答出这条 run 已收场;卡已作废;体 status / errorCode = 收场那一行的,不带 retriable)",
|
|
295
|
+
"POST /v1/approvals/:sessionId/decide|/v1/sessions/:id/wake|/v1/assistant/tasks/:id/resume|/v1/assistant/tasks/:id/plan_review#resume_pre_engine_store_fault(续跑腿提交放行之后、交给引擎之前那一段 —— 排空 workflow 完成的序号基址现读与落账、通告口落账 —— 店往返没答出来;续跑认领的停驻行回到停驻、认领留着,wake 现建的行删掉;卡仍待决;体 state.resume_context_unreadable)",
|
|
296
|
+
"POST /v1/runs/:id/cancel#parked_card_body_scope_differs(停驻 run 上的取消:这张卡行体里自带的属主格与店的属主格不一致 —— 取消只读店的属主格,结算这张卡、驱 run 终局;体 { taskId, status: failed, errorCode: cancelled, cancelRequested: false, note })",
|
|
297
|
+
"POST /v1/runs/:id/cancel#parked_card_body_unreadable(停驻 run 上的取消:这张卡的行体读不成检查点 —— 取消只读店的列,结算这张卡、驱 run 终局;体同上)",
|
|
298
|
+
"POST /v1/sessions/:id/sync/import#idle_id_other_principal_in_flight(第一阶段:id 上还没有会话行,而另一个主体在这只 id 上的第一阶段正在飞;导入租约键 = 落点属主格 + 会话 id,空闲 id 上各占各的;体 = 第一阶段的暂存回执 stagingId;先提交者得,输的那一份在提交前复判答 404 not_found.session,与赢家的提交撞在同一刻时由店的属主 CAS 拒 409 conflict)",
|
|
299
|
+
"POST /v1/sessions/:id/sync/plan|POST /v1/sessions/:id/sync/import|PUT /v1/sessions/:id/sync/blobs/:hash#foreign_session_deleting(推送三口的门:id 上是别的主体正在删除的会话 —— 删除围栏已立、尚未删净;「被占着」读活行 ∪ 在删行,与对别人的活行同答;本人 / fleet 对自己在删的会话不变,拉取口仍只认活行;体 not_found.session,与对不存在 id 的拉取答复逐字节同)",
|
|
300
|
+
"POST /v1/tasks#park_commit_ended(同步腿停在要批的门上,而停驻提交答出这条 run 没有停住、已收场 —— 停驻写之前已按下取消 / 被失联收割 / 别处终结;卡已作废;体 = 收场那一行的信封,与同键重放同一只:终局行的结果,取消那一形 terminal.code cancelled;行上无结果 ⇒ 回执三键)",
|
|
301
|
+
"POST /v1/tasks|/v1/tasks/stream|/v1/runs#a2aPeers_headers_reserved_member(新提交;a2aPeers[i].headers 的成员名是 constructor / prototype —— 与 mcpServers[i].transport.headers / .env 同一张保留成员名表、同一只读法,大小写敏感;体 request.field_invalid + field 成员级路径 a2aPeers[i].headers.<名>;存盘续跑体里同形 ⇒ 续跑家族既有一面 #stored_unread_members 409)",
|
|
302
|
+
"POST /v1/tasks|/v1/tasks/stream|/v1/runs#run_claim_store_fault(新提交:认领之前那一次执行席读,或认领这一段 —— 建行认领 createRun、执行放置、续跑输入的写、起跑之前的认领复核 —— 有一次店往返没答出来:库断连 / 拒连 / 超时、缺表 / 权限拒、认不出的库错;本请求铸的行已删掉 —— 认领与幂等键随行去,同一个自带 taskId 重发即新提交 —— 什么都没起跑;认领之后的流式腿 = 流的终帧;已绑设备的会话上认领之后那一次执行席读同答;体 state.run_store_unavailable)"
|
|
303
|
+
],
|
|
304
|
+
"registered": [],
|
|
305
|
+
"removed": [],
|
|
306
|
+
"breaking": false
|
|
307
|
+
},
|
|
308
|
+
{
|
|
309
|
+
"set": "selfMinted.modelsContextWindowSource",
|
|
310
|
+
"at": [
|
|
311
|
+
"src/trace/self-minted-wire.ts#modelsContextWindowSource"
|
|
312
|
+
],
|
|
313
|
+
"added": [
|
|
314
|
+
"assumed",
|
|
315
|
+
"declared"
|
|
316
|
+
],
|
|
317
|
+
"registered": [],
|
|
318
|
+
"removed": [],
|
|
319
|
+
"breaking": false
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
"set": "selfMinted.modelsRowKey",
|
|
323
|
+
"at": [
|
|
324
|
+
"src/trace/self-minted-wire.ts#modelsRowKey"
|
|
325
|
+
],
|
|
326
|
+
"added": [
|
|
327
|
+
"contextWindowSource"
|
|
328
|
+
],
|
|
329
|
+
"registered": [],
|
|
330
|
+
"removed": [],
|
|
331
|
+
"breaking": false
|
|
332
|
+
},
|
|
333
|
+
{
|
|
334
|
+
"set": "selfMinted.ownerFaceAnswer",
|
|
335
|
+
"at": [
|
|
336
|
+
"src/trace/self-minted-wire.ts#ownerFaceAnswer"
|
|
337
|
+
],
|
|
338
|
+
"added": [
|
|
339
|
+
"session faces · list faces · /metrics family#dev-open-principal-header-not-owner"
|
|
340
|
+
],
|
|
341
|
+
"registered": [],
|
|
342
|
+
"removed": [],
|
|
343
|
+
"breaking": false
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
"set": "selfMinted.rowRefusalWayOut",
|
|
347
|
+
"at": [
|
|
348
|
+
"src/trace/self-minted-wire.ts#rowRefusalWayOut"
|
|
349
|
+
],
|
|
350
|
+
"added": [
|
|
351
|
+
"cancel_run",
|
|
352
|
+
"newer_worker"
|
|
353
|
+
],
|
|
354
|
+
"registered": [],
|
|
355
|
+
"removed": [],
|
|
356
|
+
"breaking": false
|
|
357
|
+
},
|
|
358
|
+
{
|
|
359
|
+
"set": "selfMinted.runResultSideKey",
|
|
360
|
+
"at": [
|
|
361
|
+
"src/trace/self-minted-wire.ts#runResultSideKey"
|
|
362
|
+
],
|
|
363
|
+
"added": [
|
|
364
|
+
"readDenyFloor"
|
|
365
|
+
],
|
|
366
|
+
"registered": [],
|
|
367
|
+
"removed": [],
|
|
368
|
+
"breaking": false
|
|
369
|
+
}
|
|
370
|
+
],
|
|
371
|
+
"breaking": 0
|
|
372
|
+
}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { describeValueShape } from "@sema-agent/settings-schema";
|
|
2
|
-
const PROTO_MEMBER_FAULT = 'no member of a declaration may be named "__proto__"';
|
|
3
|
-
export function readPlainStringRecord(v) {
|
|
4
|
-
if (v === null || typeof v !== "object" || Array.isArray(v))
|
|
5
|
-
return { ok: false, fault: v === null ? "got null" : Array.isArray(v) ? "got an array" : `got a ${typeof v}` };
|
|
6
|
-
const proto = Object.getPrototypeOf(v);
|
|
7
|
-
if (proto !== Object.prototype && proto !== null)
|
|
8
|
-
return { ok: false, fault: "got an object that is not plain data (a class instance, a Map, process.env, or a record built on a prototype; copy it into a plain object)" };
|
|
9
|
-
const record = {};
|
|
10
|
-
const stripped = [];
|
|
11
|
-
for (const name of Object.getOwnPropertyNames(v)) {
|
|
12
|
-
const d = Object.getOwnPropertyDescriptor(v, name);
|
|
13
|
-
let value;
|
|
14
|
-
let unreadable = false;
|
|
15
|
-
try {
|
|
16
|
-
value = d === undefined ? undefined : Object.hasOwn(d, "value") ? d.value : d.get === undefined ? undefined : Reflect.apply(d.get, v, []);
|
|
17
|
-
}
|
|
18
|
-
catch {
|
|
19
|
-
unreadable = true;
|
|
20
|
-
}
|
|
21
|
-
if (unreadable || typeof value !== "string") {
|
|
22
|
-
const valueFault = unreadable ? "could not be read (its getter threw)" : `must be a string — got ${describeValueShape(value)}`;
|
|
23
|
-
return { ok: false, fault: name === "__proto__" ? `is not allowed (${PROTO_MEMBER_FAULT}) and its value ${valueFault}` : valueFault, member: name };
|
|
24
|
-
}
|
|
25
|
-
if (name === "__proto__")
|
|
26
|
-
stripped.push({ name, fault: PROTO_MEMBER_FAULT });
|
|
27
|
-
else
|
|
28
|
-
record[name] = value;
|
|
29
|
-
}
|
|
30
|
-
return { ok: true, record, stripped };
|
|
31
|
-
}
|
|
32
|
-
export function declarationKeys(table) {
|
|
33
|
-
return Object.freeze(Object.keys(table));
|
|
34
|
-
}
|
|
35
|
-
export function splitDeclaration(declaration, table) {
|
|
36
|
-
const dispositions = table;
|
|
37
|
-
const engine = {};
|
|
38
|
-
let pieces;
|
|
39
|
-
let seatSeen = false;
|
|
40
|
-
for (const [key, value] of Object.entries(declaration)) {
|
|
41
|
-
if (value === undefined)
|
|
42
|
-
continue;
|
|
43
|
-
const disposition = Object.hasOwn(dispositions, key) ? dispositions[key] : undefined;
|
|
44
|
-
switch (disposition) {
|
|
45
|
-
case "engine":
|
|
46
|
-
engine[key] = value;
|
|
47
|
-
break;
|
|
48
|
-
case "seat": {
|
|
49
|
-
if (seatSeen)
|
|
50
|
-
throw new Error("request declaration: two members are marked as pieces in one disposition table");
|
|
51
|
-
seatSeen = true;
|
|
52
|
-
const record = value;
|
|
53
|
-
if (Object.keys(record).length > 0)
|
|
54
|
-
pieces = record;
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
case "withheld":
|
|
58
|
-
break;
|
|
59
|
-
case undefined:
|
|
60
|
-
throw new Error(`request declaration: a member the disposition table does not classify (${JSON.stringify(key.slice(0, 40))})`);
|
|
61
|
-
default: {
|
|
62
|
-
const unknownDisposition = disposition;
|
|
63
|
-
void unknownDisposition;
|
|
64
|
-
throw new Error("request declaration: a disposition outside the closed set");
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return { engine: engine, ...(pieces === undefined ? {} : { pieces }) };
|
|
69
|
-
}
|
|
70
|
-
//# sourceMappingURL=plain-string-record.js.map
|