@sema-agent/server 7.140.0 → 7.141.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.
Files changed (200) hide show
  1. package/MIGRATION.md +290 -0
  2. package/README.md +1 -1
  3. package/README.zh-CN.md +1 -1
  4. package/USAGE.md +75 -13
  5. package/dist/approval-batch-census.d.ts +27 -0
  6. package/dist/approval-batch-census.js +27 -0
  7. package/dist/approval-card.d.ts +31 -16
  8. package/dist/approval-card.js +6 -3
  9. package/dist/approval.d.ts +15 -0
  10. package/dist/approval.js +10 -0
  11. package/dist/audit.d.ts +4 -2
  12. package/dist/audit.js +2 -2
  13. package/dist/boot/device-lane.d.ts +11 -0
  14. package/dist/boot/device-lane.js +16 -0
  15. package/dist/boot/engine-lease.d.ts +24 -3
  16. package/dist/boot/engine-lease.js +9 -2
  17. package/dist/boot/execution-env.js +8 -4
  18. package/dist/boot/memory-boundary.d.ts +2 -2
  19. package/dist/boot/memory-consolidation.d.ts +1 -1
  20. package/dist/boot/memory-consolidation.js +1 -1
  21. package/dist/boot/reapers.d.ts +2 -2
  22. package/dist/boot/resolve-spec.js +7 -4
  23. package/dist/boot/session-faces.d.ts +1 -1
  24. package/dist/boot/session-faces.js +4 -3
  25. package/dist/boot/shutdown.js +5 -0
  26. package/dist/boot/stage-05-execution-env.js +3 -1
  27. package/dist/boot/stage-06-runners.d.ts +0 -2
  28. package/dist/boot/stage-06-runners.js +1 -1
  29. package/dist/boot/stage-07-capability-layer.d.ts +0 -1
  30. package/dist/boot/stage-07-capability-layer.js +8 -10
  31. package/dist/boot/stage-08-reapers.d.ts +0 -1
  32. package/dist/boot/stage-09-leader.d.ts +0 -1
  33. package/dist/boot/stage-10-http-server.d.ts +0 -1
  34. package/dist/boot/stage-10-http-server.js +1 -0
  35. package/dist/boot/stores.js +10 -4
  36. package/dist/boot/web-admin.js +1 -0
  37. package/dist/capabilities/scenarios.d.ts +1 -1
  38. package/dist/capability-facts.d.ts +9 -0
  39. package/dist/capability-facts.js +9 -0
  40. package/dist/card-void.d.ts +38 -0
  41. package/dist/card-void.js +23 -0
  42. package/dist/config-catalog.js +11 -8
  43. package/dist/config-provider.d.ts +13 -13
  44. package/dist/config-provider.js +19 -33
  45. package/dist/config-types.d.ts +26 -8
  46. package/dist/config.js +55 -46
  47. package/dist/delegated-session-owner.d.ts +21 -19
  48. package/dist/delegated-session-owner.js +1 -1
  49. package/dist/device-store.d.ts +7 -0
  50. package/dist/device-store.js +3 -0
  51. package/dist/execution-config-root.d.ts +22 -0
  52. package/dist/execution-config-root.js +35 -0
  53. package/dist/execution-lane-caps.d.ts +49 -2
  54. package/dist/execution-lane-caps.js +90 -13
  55. package/dist/execution-placement.d.ts +3 -0
  56. package/dist/execution-placement.js +7 -0
  57. package/dist/fleet/drain-entry.d.ts +3 -0
  58. package/dist/hosted-posture.d.ts +8 -0
  59. package/dist/hosted-posture.js +4 -0
  60. package/dist/http/admission.js +3 -3
  61. package/dist/http/caller-trust.d.ts +3 -2
  62. package/dist/http/caller-trust.js +2 -1
  63. package/dist/http/dispatch.js +4 -0
  64. package/dist/http/live-frame.d.ts +24 -0
  65. package/dist/http/live-frame.js +16 -0
  66. package/dist/http/resume-legs.js +37 -20
  67. package/dist/http/route-table.js +2 -0
  68. package/dist/http/routes/approvals-assistant.js +1 -0
  69. package/dist/http/routes/capabilities.js +5 -4
  70. package/dist/http/routes/diagnostics.d.ts +0 -19
  71. package/dist/http/routes/diagnostics.js +16 -2
  72. package/dist/http/routes/memory-bundle.d.ts +2 -2
  73. package/dist/http/routes/memory-bundle.js +1 -1
  74. package/dist/http/routes/memory-compliance.js +1 -1
  75. package/dist/http/routes/memory-policy.js +2 -2
  76. package/dist/http/routes/run-permission-mode.d.ts +75 -0
  77. package/dist/http/routes/run-permission-mode.js +170 -0
  78. package/dist/http/routes/session-sync.d.ts +3 -6
  79. package/dist/http/routes/session-sync.js +7 -2
  80. package/dist/http/routes/sessions.js +5 -4
  81. package/dist/http/routes/tasks.js +63 -66
  82. package/dist/http/run-read-face.js +3 -3
  83. package/dist/http/send.d.ts +1 -1
  84. package/dist/http/send.js +2 -2
  85. package/dist/http/server.d.ts +9 -2
  86. package/dist/http/sse-log.d.ts +3 -8
  87. package/dist/http/stored-body-replay.d.ts +3 -3
  88. package/dist/http/stored-body-replay.js +3 -1
  89. package/dist/instruction-source-notice.d.ts +7 -0
  90. package/dist/instruction-source-notice.js +6 -6
  91. package/dist/mcp-assertion-header.d.ts +4 -0
  92. package/dist/mcp-assertion-header.js +5 -0
  93. package/dist/memory-posture.d.ts +1 -1
  94. package/dist/memory-scope.d.ts +4 -4
  95. package/dist/memory-scope.js +1 -1
  96. package/dist/memory-sync-client.d.ts +14 -2
  97. package/dist/memory-sync-client.js +80 -18
  98. package/dist/observability/fail-open.d.ts +30 -2
  99. package/dist/observability/fail-open.js +30 -2
  100. package/dist/observability/metrics.js +0 -1
  101. package/dist/observability/run-terminal.d.ts +6 -2
  102. package/dist/observability/run-terminal.js +25 -26
  103. package/dist/observability/secret-env-scrub.d.ts +20 -1
  104. package/dist/observability/secret-env-scrub.js +14 -0
  105. package/dist/orchestration/workflow-completion-inbox.d.ts +5 -2
  106. package/dist/orchestration/workflow-completion-inbox.js +13 -5
  107. package/dist/orchestration/workflow-notify-journal.d.ts +5 -3
  108. package/dist/orchestration/workflow-notify-journal.js +2 -1
  109. package/dist/permission-mode-admission.d.ts +68 -0
  110. package/dist/permission-mode-admission.js +23 -0
  111. package/dist/permission-rule-list.d.ts +55 -6
  112. package/dist/permission-rule-list.js +52 -5
  113. package/dist/plugins/caching-session-store.d.ts +6 -0
  114. package/dist/plugins/caching-session-store.js +3 -0
  115. package/dist/plugins/checkpoint-store-sql.d.ts +65 -17
  116. package/dist/plugins/checkpoint-store-sql.js +74 -3
  117. package/dist/plugins/device-store-sql.d.ts +5 -2
  118. package/dist/plugins/device-store-sql.js +4 -1
  119. package/dist/plugins/execution-placement-sql.d.ts +11 -1
  120. package/dist/plugins/execution-placement-sql.js +12 -1
  121. package/dist/plugins/file-run-store.d.ts +2 -2
  122. package/dist/plugins/file-run-store.js +1 -1
  123. package/dist/plugins/fork-routing-session-store.d.ts +10 -32
  124. package/dist/plugins/fork-routing-session-store.js +2 -61
  125. package/dist/plugins/k8s-exec-protocol.d.ts +4 -1
  126. package/dist/plugins/k8s-exec-protocol.js +6 -1
  127. package/dist/plugins/local-checkpoint-store.d.ts +10 -1
  128. package/dist/plugins/local-checkpoint-store.js +22 -0
  129. package/dist/plugins/local-session-store.d.ts +227 -35
  130. package/dist/plugins/local-session-store.js +518 -37
  131. package/dist/plugins/local-session-window.d.ts +17 -3
  132. package/dist/plugins/local-session-window.js +7 -13
  133. package/dist/plugins/memory-run-store.d.ts +2 -2
  134. package/dist/plugins/memory-run-store.js +1 -1
  135. package/dist/plugins/one-time-migrations.d.ts +42 -2
  136. package/dist/plugins/one-time-migrations.js +65 -3
  137. package/dist/plugins/pg-pool.js +3 -2
  138. package/dist/plugins/pg-session-storage.d.ts +2 -0
  139. package/dist/plugins/pg-session-storage.js +3 -2
  140. package/dist/plugins/remote-env-e2b.d.ts +24 -3
  141. package/dist/plugins/remote-env-e2b.js +131 -18
  142. package/dist/plugins/remote-env-k8s.d.ts +20 -1
  143. package/dist/plugins/remote-env-k8s.js +148 -25
  144. package/dist/plugins/remote-env-local-docker.d.ts +25 -11
  145. package/dist/plugins/remote-env-local-docker.js +87 -21
  146. package/dist/plugins/run-store-sql.d.ts +3 -3
  147. package/dist/plugins/run-store-sql.js +4 -3
  148. package/dist/plugins/sandbox-read-floor.d.ts +273 -0
  149. package/dist/plugins/sandbox-read-floor.js +608 -0
  150. package/dist/plugins/session-ownership.d.ts +2 -1
  151. package/dist/plugins/session-placement.d.ts +17 -4
  152. package/dist/plugins/session-placement.js +2 -1
  153. package/dist/plugins/session-store.d.ts +18 -20
  154. package/dist/plugins/session-store.js +4 -12
  155. package/dist/plugins/store-backend.d.ts +31 -0
  156. package/dist/plugins/store-backend.js +21 -4
  157. package/dist/plugins/store-contracts.d.ts +9 -2
  158. package/dist/plugins/tidb-pool.js +2 -1
  159. package/dist/plugins/tidb-session-store.d.ts +4 -1
  160. package/dist/plugins/tidb-session-store.js +3 -2
  161. package/dist/run-cancel-context.d.ts +34 -0
  162. package/dist/run-cancel-context.js +7 -0
  163. package/dist/runs.d.ts +39 -12
  164. package/dist/runs.js +68 -53
  165. package/dist/security.d.ts +2 -2
  166. package/dist/server-secret-env.d.ts +2 -1
  167. package/dist/server-secret-env.js +2 -4
  168. package/dist/session-error-wire.d.ts +22 -4
  169. package/dist/session-error-wire.js +16 -0
  170. package/dist/session-incarnation.d.ts +9 -3
  171. package/dist/session-sync-kernel.d.ts +42 -1
  172. package/dist/session-sync-kernel.js +17 -0
  173. package/dist/session-sync.js +16 -4
  174. package/dist/sql-engine-coordinates.d.ts +49 -0
  175. package/dist/sql-engine-coordinates.js +27 -0
  176. package/dist/standing-answer-grant.d.ts +31 -2
  177. package/dist/standing-answer-grant.js +14 -2
  178. package/dist/store-posture.d.ts +1 -1
  179. package/dist/task-a2a.d.ts +1 -1
  180. package/dist/task-mcp.d.ts +1 -1
  181. package/dist/task-settings.d.ts +52 -25
  182. package/dist/task-settings.js +91 -28
  183. package/dist/terminal.d.ts +77 -20
  184. package/dist/terminal.js +66 -20
  185. package/dist/trace/core-keyset-guard.d.ts +79 -2
  186. package/dist/trace/exit-seat.d.ts +7 -0
  187. package/dist/trace/exit-seat.js +1 -0
  188. package/dist/trace/model-segment.d.ts +2 -2
  189. package/dist/trace/redact.js +323 -90
  190. package/dist/trace/self-minted-wire.d.ts +168 -2
  191. package/dist/trace/self-minted-wire.js +63 -0
  192. package/dist/verifier-pause-card.d.ts +8 -0
  193. package/dist/verifier-pause-card.js +19 -0
  194. package/dist/web-admin-client/apply-effective.d.ts +5 -7
  195. package/dist/web-admin-client/apply-effective.js +2 -2
  196. package/dist/web-admin-client/candidate-gate.d.ts +1 -1
  197. package/dist/web-admin-client/read-warnings.d.ts +2 -2
  198. package/docs/DEVICE-EXECUTOR-PROTOCOL.md +3 -2
  199. package/package.json +2 -2
  200. package/wire-changes/server@7.141.0.json +367 -0
@@ -0,0 +1,367 @@
1
+ {
2
+ "repo": "server",
3
+ "version": "7.141.0",
4
+ "from": "v7.140.0",
5
+ "fromCommit": "065b6bf2b6f378cae3ade64a1597f2079cc6a858",
6
+ "to": "v7.141.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#B.1",
12
+ "docs/ASSISTANT-WIRE-CONTRACT.md#B.1a",
13
+ "docs/ASSISTANT-WIRE-CONTRACT.md#B.2b",
14
+ "docs/ASSISTANT-WIRE-CONTRACT.md#B.2",
15
+ "docs/ASSISTANT-WIRE-CONTRACT.md#D.3",
16
+ "src/trace/wire-projection-faces.ts",
17
+ "src/trace/self-minted-wire.ts",
18
+ "node_modules/@sema-agent/core/wire-changes"
19
+ ],
20
+ "added": [
21
+ {
22
+ "id": "A1",
23
+ "source": "capability",
24
+ "member": "mcpTransportKinds",
25
+ "text": "附录 B.1 能力位新增 `mcpTransportKinds`(谓词类 恒真)"
26
+ },
27
+ {
28
+ "id": "A2",
29
+ "source": "selfMinted.endpointFaceStatus",
30
+ "member": "POST /v1/sessions/:id/fork#stamped_archive(DB_BACKEND=local;源存档仍带更早版本写下的属主戳;零写;体 conflict + 带戳存档的固定句)",
31
+ "text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/sessions/:id/fork#stamped_archive(DB_BACKEND=local;源存档仍带更早版本写下的属主戳;零写;体 conflict + 带戳存档的固定句)`(属性 409;since 7.141.0 = 本版新上 wire)"
32
+ },
33
+ {
34
+ "id": "A3",
35
+ "source": "selfMinted.endpointFaceStatus",
36
+ "member": "POST /v1/sessions/:id/sync/import#anchor_outside_declared_entries(Phase A 体的 anchors[i]:entryId 不在 entryIds 里 / 元素不是带串型 eventId 与 entryId 的对象;体 request.field_invalid)",
37
+ "text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/sessions/:id/sync/import#anchor_outside_declared_entries(Phase A 体的 anchors[i]:entryId 不在 entryIds 里 / 元素不是带串型 eventId 与 entryId 的对象;体 request.field_invalid)`(属性 400;since 7.141.0 = 本版新上 wire)"
38
+ },
39
+ {
40
+ "id": "A4",
41
+ "source": "selfMinted.endpointFaceStatus",
42
+ "member": "POST /v1/sessions/:id/sync/import/:stagingId/entries#stamped_archive(DB_BACKEND=local;提交落在仍带属主戳的存档上;行净零写;体 conflict + 带戳存档的固定句)",
43
+ "text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/sessions/:id/sync/import/:stagingId/entries#stamped_archive(DB_BACKEND=local;提交落在仍带属主戳的存档上;行净零写;体 conflict + 带戳存档的固定句)`(属性 409;since 7.141.0 = 本版新上 wire)"
44
+ },
45
+ {
46
+ "id": "A5",
47
+ "source": "selfMinted.endpointFaceStatus",
48
+ "member": "POST /v1/tasks|/v1/tasks/stream|/v1/runs#settings.permissions.deny|ask 带层条目 { rule, layer }(新提交;layer = 设置来源词)",
49
+ "text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/tasks|/v1/tasks/stream|/v1/runs#settings.permissions.deny|ask 带层条目 { rule, layer }(新提交;layer = 设置来源词)`(属性 200;since 7.141.0 = 本版新上 wire)"
50
+ },
51
+ {
52
+ "id": "A6",
53
+ "source": "selfMinted.endpointFaceStatus",
54
+ "member": "POST /v1/tasks|/v1/tasks/stream|/v1/runs#user 层 / 形路径规则而执行环境的配置根读不出(沙箱车道没转 SEMA_CONFIG_DIR 且 home 未知;体 request.unprocessable + problems[].reason home_unresolvable;续跑 409 同句)",
55
+ "text": "自铸 逐端点应答面 → 状态(<端点>#<面> → 状态;只登记本版改了状态的面) 新增 `POST /v1/tasks|/v1/tasks/stream|/v1/runs#user 层 / 形路径规则而执行环境的配置根读不出(沙箱车道没转 SEMA_CONFIG_DIR 且 home 未知;体 request.unprocessable + problems[].reason home_unresolvable;续跑 409 同句)`(属性 422;since 7.141.0 = 本版新上 wire)"
56
+ },
57
+ {
58
+ "id": "A7",
59
+ "source": "selfMinted.healthEngineLeaseKey",
60
+ "member": "lingerMs",
61
+ "text": "自铸 GET /health engineLease 新增 `lingerMs`(属性 present-iff engine lease leg armed and observing;since 7.141.0 = 本版新上 wire)"
62
+ },
63
+ {
64
+ "id": "A8",
65
+ "source": "selfMinted.healthEngineLeaseKey",
66
+ "member": "tickMs",
67
+ "text": "自铸 GET /health engineLease 新增 `tickMs`(属性 present-iff engine lease leg armed and observing;since 7.141.0 = 本版新上 wire)"
68
+ },
69
+ {
70
+ "id": "A9",
71
+ "source": "selfMinted.mcpTransportKind",
72
+ "member": "http",
73
+ "text": "自铸 GET /v1/capabilities mcpTransportKinds[] 新增 `http`(属性 -;since 7.141.0 = 本版新上 wire)"
74
+ },
75
+ {
76
+ "id": "A10",
77
+ "source": "selfMinted.mcpTransportKind",
78
+ "member": "stdio",
79
+ "text": "自铸 GET /v1/capabilities mcpTransportKinds[] 新增 `stdio`(属性 -;since 7.141.0 = 本版新上 wire)"
80
+ },
81
+ {
82
+ "id": "A11",
83
+ "source": "selfMinted.memorySyncWayOut",
84
+ "member": "delete_cursor",
85
+ "text": "自铸 GET /v1/sessions/:id/memory-status memorySync.parked[].wayOut 新增 `delete_cursor`(属性 -;since 7.141.0 = 本版新上 wire)"
86
+ },
87
+ {
88
+ "id": "A12",
89
+ "source": "selfMinted.permissionModeAdmissionFold",
90
+ "member": "disable_auto_mode",
91
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体 admission.foldedBy 新增 `disable_auto_mode`(属性 -;since 7.141.0 = 本版新上 wire)"
92
+ },
93
+ {
94
+ "id": "A13",
95
+ "source": "selfMinted.permissionModeAdmissionFold",
96
+ "member": "entry_floor",
97
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体 admission.foldedBy 新增 `entry_floor`(属性 -;since 7.141.0 = 本版新上 wire)"
98
+ },
99
+ {
100
+ "id": "A14",
101
+ "source": "selfMinted.permissionModePersistMiss",
102
+ "member": "claim_released",
103
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体 persistMiss(persisted:false 时) 新增 `claim_released`(属性 -;since 7.141.0 = 本版新上 wire)"
104
+ },
105
+ {
106
+ "id": "A15",
107
+ "source": "selfMinted.permissionModePersistMiss",
108
+ "member": "context_absent",
109
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体 persistMiss(persisted:false 时) 新增 `context_absent`(属性 -;since 7.141.0 = 本版新上 wire)"
110
+ },
111
+ {
112
+ "id": "A16",
113
+ "source": "selfMinted.permissionModePersistMiss",
114
+ "member": "store_failed",
115
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体 persistMiss(persisted:false 时) 新增 `store_failed`(属性 -;since 7.141.0 = 本版新上 wire)"
116
+ },
117
+ {
118
+ "id": "A17",
119
+ "source": "selfMinted.permissionModeVerbBodyKey",
120
+ "member": "admission",
121
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `admission`(属性 present-iff the admission judge changed the word;{ requested, admitted, foldedBy };since 7.141.0 = 本版新上 wire)"
122
+ },
123
+ {
124
+ "id": "A18",
125
+ "source": "selfMinted.permissionModeVerbBodyKey",
126
+ "member": "permissionMode",
127
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `permissionMode`(属性 always;engine receipt verbatim { requested?, effective, foldedBy? };since 7.141.0 = 本版新上 wire)"
128
+ },
129
+ {
130
+ "id": "A19",
131
+ "source": "selfMinted.permissionModeVerbBodyKey",
132
+ "member": "persistMiss",
133
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `persistMiss`(属性 present-iff persisted:false;since 7.141.0 = 本版新上 wire)"
134
+ },
135
+ {
136
+ "id": "A20",
137
+ "source": "selfMinted.permissionModeVerbBodyKey",
138
+ "member": "persisted",
139
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `persisted`(属性 always;since 7.141.0 = 本版新上 wire)"
140
+ },
141
+ {
142
+ "id": "A21",
143
+ "source": "selfMinted.permissionModeVerbBodyKey",
144
+ "member": "sessionId",
145
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `sessionId`(属性 always;since 7.141.0 = 本版新上 wire)"
146
+ },
147
+ {
148
+ "id": "A22",
149
+ "source": "selfMinted.permissionModeVerbBodyKey",
150
+ "member": "status",
151
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `status`(属性 always;running;since 7.141.0 = 本版新上 wire)"
152
+ },
153
+ {
154
+ "id": "A23",
155
+ "source": "selfMinted.permissionModeVerbBodyKey",
156
+ "member": "taskId",
157
+ "text": "自铸 POST /v1/runs/:id/permission-mode 200 体(<键> → 在场律) 新增 `taskId`(属性 always;since 7.141.0 = 本版新上 wire)"
158
+ },
159
+ {
160
+ "id": "A24",
161
+ "source": "selfMinted.refusalSentenceForm",
162
+ "member": "400 request.field_invalid#settings.permissions.allow.bad_entry",
163
+ "text": "自铸 拒体 message 的句型(<码>#<座> → 句型骨架;码 / 状态 / 机读位不变) 新增 `400 request.field_invalid#settings.permissions.allow.bad_entry`(属性 <field>[<index>] is not a string — every entry must be a permission-rule string (a settings layer's { \"rule\", \"layer\" } entry is read in deny / ask only). …;since 7.141.0 = 本版新上 wire)"
164
+ },
165
+ {
166
+ "id": "A25",
167
+ "source": "selfMinted.refusalSentenceForm",
168
+ "member": "400 request.field_invalid#settings.permissions.deny|ask.bad_entry",
169
+ "text": "自铸 拒体 message 的句型(<码>#<座> → 句型骨架;码 / 状态 / 机读位不变) 新增 `400 request.field_invalid#settings.permissions.deny|ask.bad_entry`(属性 <field>[<index>] is neither a non-empty rule string nor a { \"rule\", \"layer\" } entry (…) — every entry must be one. …;since 7.141.0 = 本版新上 wire)"
170
+ },
171
+ {
172
+ "id": "A26",
173
+ "source": "selfMinted.sessionMemoryStatusKey",
174
+ "member": "memorySync",
175
+ "text": "自铸 GET /v1/sessions/:id/memory-status 200 体顶层键(<键> → 在场律) 新增 `memorySync`(属性 present-iff this deployment runs a memory sync leg;{parked:[{scope,wayOut}]} in sync order;parked:[] ⇔ no layer parked;deployment fact (same for every session, ?scope= not applied);since 7.141.0 = 本版新上 wire)"
176
+ },
177
+ {
178
+ "id": "A27",
179
+ "source": "selfMinted.wireValueRule",
180
+ "member": "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].derivedDefaultNote",
181
+ "text": "自铸 出口值变换(<端点>#<键> → 变换) 新增 `GET /v1/config/catalog#rows[DEVICE_RELAY_URL].derivedDefaultNote`(属性 no-default;absent-refuses-boot;since 7.141.0 = 本版新上 wire)"
182
+ },
183
+ {
184
+ "id": "A28",
185
+ "source": "selfMinted.wireValueRule",
186
+ "member": "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].enumValues",
187
+ "text": "自铸 出口值变换(<端点>#<键> → 变换) 新增 `GET /v1/config/catalog#rows[DEVICE_RELAY_URL].enumValues`(属性 none(echoed-verbatim);since 7.141.0 = 本版新上 wire)"
188
+ },
189
+ {
190
+ "id": "A29",
191
+ "source": "selfMinted.wireValueRule",
192
+ "member": "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].semantics",
193
+ "text": "自铸 出口值变换(<端点>#<键> → 变换) 新增 `GET /v1/config/catalog#rows[DEVICE_RELAY_URL].semantics`(属性 required-on-device-lane;ws-url-or-literal-none;none-with-bindings-warns;since 7.141.0 = 本版新上 wire)"
194
+ }
195
+ ],
196
+ "registered": [],
197
+ "excluded": [],
198
+ "removed": [],
199
+ "changed": [
200
+ {
201
+ "id": "C1",
202
+ "source": "capability",
203
+ "member": "permissionModeWrite",
204
+ "text": "附录 B.1 能力位 `permissionModeWrite` 的谓词类:恒假 → 设施依赖"
205
+ },
206
+ {
207
+ "id": "C2",
208
+ "source": "capabilityMember",
209
+ "member": "deviceExecutor.relayUrl",
210
+ "text": "附录 B.1a / B.2b 复合能力位成员 `deviceExecutor.relayUrl` 的在场律 / 谓词类:present-iff 运维声明了 `DEVICE_RELAY_URL` → present-iff 运维把 `DEVICE_RELAY_URL` 声明成 ws(s) URL(device 车道上该键必填;字面 `none` ⇒ 缺席)"
211
+ }
212
+ ],
213
+ "narrowed": [],
214
+ "closedSetMembers": [
215
+ {
216
+ "set": "capability",
217
+ "at": [
218
+ "docs/ASSISTANT-WIRE-CONTRACT.md#B.1"
219
+ ],
220
+ "added": [
221
+ "mcpTransportKinds"
222
+ ],
223
+ "registered": [],
224
+ "removed": [],
225
+ "breaking": false
226
+ },
227
+ {
228
+ "set": "selfMinted.endpointFaceStatus",
229
+ "at": [
230
+ "src/trace/self-minted-wire.ts#endpointFaceStatus"
231
+ ],
232
+ "added": [
233
+ "POST /v1/sessions/:id/fork#stamped_archive(DB_BACKEND=local;源存档仍带更早版本写下的属主戳;零写;体 conflict + 带戳存档的固定句)",
234
+ "POST /v1/sessions/:id/sync/import#anchor_outside_declared_entries(Phase A 体的 anchors[i]:entryId 不在 entryIds 里 / 元素不是带串型 eventId 与 entryId 的对象;体 request.field_invalid)",
235
+ "POST /v1/sessions/:id/sync/import/:stagingId/entries#stamped_archive(DB_BACKEND=local;提交落在仍带属主戳的存档上;行净零写;体 conflict + 带戳存档的固定句)",
236
+ "POST /v1/tasks|/v1/tasks/stream|/v1/runs#settings.permissions.deny|ask 带层条目 { rule, layer }(新提交;layer = 设置来源词)",
237
+ "POST /v1/tasks|/v1/tasks/stream|/v1/runs#user 层 / 形路径规则而执行环境的配置根读不出(沙箱车道没转 SEMA_CONFIG_DIR 且 home 未知;体 request.unprocessable + problems[].reason home_unresolvable;续跑 409 同句)"
238
+ ],
239
+ "registered": [],
240
+ "removed": [],
241
+ "breaking": false
242
+ },
243
+ {
244
+ "set": "selfMinted.healthEngineLeaseKey",
245
+ "at": [
246
+ "src/trace/self-minted-wire.ts#healthEngineLeaseKey"
247
+ ],
248
+ "added": [
249
+ "lingerMs",
250
+ "tickMs"
251
+ ],
252
+ "registered": [],
253
+ "removed": [],
254
+ "breaking": false
255
+ },
256
+ {
257
+ "set": "selfMinted.mcpTransportKind",
258
+ "at": [
259
+ "src/trace/self-minted-wire.ts#mcpTransportKind"
260
+ ],
261
+ "added": [
262
+ "http",
263
+ "stdio"
264
+ ],
265
+ "registered": [],
266
+ "removed": [],
267
+ "breaking": false
268
+ },
269
+ {
270
+ "set": "selfMinted.memorySyncWayOut",
271
+ "at": [
272
+ "src/trace/self-minted-wire.ts#memorySyncWayOut"
273
+ ],
274
+ "added": [
275
+ "delete_cursor"
276
+ ],
277
+ "registered": [],
278
+ "removed": [],
279
+ "breaking": false
280
+ },
281
+ {
282
+ "set": "selfMinted.permissionModeAdmissionFold",
283
+ "at": [
284
+ "src/trace/self-minted-wire.ts#permissionModeAdmissionFold"
285
+ ],
286
+ "added": [
287
+ "disable_auto_mode",
288
+ "entry_floor"
289
+ ],
290
+ "registered": [],
291
+ "removed": [],
292
+ "breaking": false
293
+ },
294
+ {
295
+ "set": "selfMinted.permissionModePersistMiss",
296
+ "at": [
297
+ "src/trace/self-minted-wire.ts#permissionModePersistMiss"
298
+ ],
299
+ "added": [
300
+ "claim_released",
301
+ "context_absent",
302
+ "store_failed"
303
+ ],
304
+ "registered": [],
305
+ "removed": [],
306
+ "breaking": false
307
+ },
308
+ {
309
+ "set": "selfMinted.permissionModeVerbBodyKey",
310
+ "at": [
311
+ "src/trace/self-minted-wire.ts#permissionModeVerbBodyKey"
312
+ ],
313
+ "added": [
314
+ "admission",
315
+ "permissionMode",
316
+ "persistMiss",
317
+ "persisted",
318
+ "sessionId",
319
+ "status",
320
+ "taskId"
321
+ ],
322
+ "registered": [],
323
+ "removed": [],
324
+ "breaking": false
325
+ },
326
+ {
327
+ "set": "selfMinted.refusalSentenceForm",
328
+ "at": [
329
+ "src/trace/self-minted-wire.ts#refusalSentenceForm"
330
+ ],
331
+ "added": [
332
+ "400 request.field_invalid#settings.permissions.allow.bad_entry",
333
+ "400 request.field_invalid#settings.permissions.deny|ask.bad_entry"
334
+ ],
335
+ "registered": [],
336
+ "removed": [],
337
+ "breaking": false
338
+ },
339
+ {
340
+ "set": "selfMinted.sessionMemoryStatusKey",
341
+ "at": [
342
+ "src/trace/self-minted-wire.ts#sessionMemoryStatusKey"
343
+ ],
344
+ "added": [
345
+ "memorySync"
346
+ ],
347
+ "registered": [],
348
+ "removed": [],
349
+ "breaking": false
350
+ },
351
+ {
352
+ "set": "selfMinted.wireValueRule",
353
+ "at": [
354
+ "src/trace/self-minted-wire.ts#wireValueRule"
355
+ ],
356
+ "added": [
357
+ "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].derivedDefaultNote",
358
+ "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].enumValues",
359
+ "GET /v1/config/catalog#rows[DEVICE_RELAY_URL].semantics"
360
+ ],
361
+ "registered": [],
362
+ "removed": [],
363
+ "breaking": false
364
+ }
365
+ ],
366
+ "breaking": 0
367
+ }