@sema-agent/server 7.146.0 → 7.148.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 (850) hide show
  1. package/MIGRATION.md +1423 -24
  2. package/README.md +21 -8
  3. package/README.zh-CN.md +15 -9
  4. package/USAGE.md +537 -216
  5. package/deploy/facts/lanes.json +7 -0
  6. package/deploy/sema-up/README.md +18 -7
  7. package/deploy/sema-up/chart/templates/NOTES.txt +1 -1
  8. package/deploy/sema-up/chart/templates/_helpers.tpl +42 -4
  9. package/deploy/sema-up/chart/templates/server-v4pro.yaml +5 -4
  10. package/deploy/sema-up/chart/templates/server.yaml +5 -4
  11. package/deploy/sema-up/chart/values.yaml +4 -3
  12. package/deploy/sema-up/cluster-up.sh +75 -176
  13. package/deploy/sema-up/kube-up.sh +29 -49
  14. package/deploy/sema-up/lib/chart-run.sh +23 -0
  15. package/deploy/sema-up/lib/dataroot.sh +3 -3
  16. package/deploy/sema-up/lib/flagshape.sh +4 -0
  17. package/deploy/sema-up/lib/health.sh +62 -13
  18. package/deploy/sema-up/lib/helm-values-cluster.py +18 -0
  19. package/deploy/sema-up/lib/helm-values-kube.py +35 -0
  20. package/deploy/sema-up/lib/lanes.json +2 -5
  21. package/deploy/sema-up/lib/regcred.py +8 -0
  22. package/deploy/sema-up/lib/remote/helm-install.sh +3 -0
  23. package/deploy/sema-up/lib/remote/image-import.sh +6 -0
  24. package/deploy/sema-up/lib/remote/machine-precheck.sh +11 -0
  25. package/deploy/sema-up/lib/remote/region-probe.sh +3 -0
  26. package/deploy/sema-up/lib/remote/stack-ready.sh +26 -0
  27. package/deploy/sema-up/lib/remote/vxlan-guard.sh +8 -0
  28. package/deploy/sema-up/lib/render-stack.py +17 -0
  29. package/deploy/sema-up/lib/shell-text.sh +87 -0
  30. package/deploy/sema-up/lib/usage-flags.txt +10 -0
  31. package/deploy/sema-up/lib/usage-head.txt +1 -0
  32. package/deploy/sema-up/lib/usage-tail.txt +13 -0
  33. package/deploy/sema-up/preflight.sh +10 -8
  34. package/deploy/sema-up/sema-up.sh +26 -48
  35. package/deploy/sema-up/smoke.sh +7 -6
  36. package/deploy/sema-up/stack/compose.dataroot.yaml +3 -0
  37. package/deploy/sema-up/stack/compose.yaml +18 -5
  38. package/deploy/sema-up/stack/sema-stack-cluster.yaml +25 -3
  39. package/dist/adoption/plan.d.ts +24 -0
  40. package/dist/adoption/plan.js +53 -1
  41. package/dist/adoption/runner.d.ts +10 -1
  42. package/dist/adoption/runner.js +36 -16
  43. package/dist/adoption/wire.d.ts +3 -3
  44. package/dist/approval-card.d.ts +32 -34
  45. package/dist/approval-gate-currency.js +3 -2
  46. package/dist/approval-reconciler.d.ts +4 -13
  47. package/dist/approval-reconciler.js +2 -2
  48. package/dist/approval.d.ts +16 -14
  49. package/dist/approval.js +3 -3
  50. package/dist/audit.d.ts +10 -3
  51. package/dist/audit.js +17 -9
  52. package/dist/auth-bridge.d.ts +0 -14
  53. package/dist/auth-bridge.js +0 -7
  54. package/dist/auto-mode-face.d.ts +10 -7
  55. package/dist/auto-mode-face.js +7 -4
  56. package/dist/background-agent-name.d.ts +19 -1
  57. package/dist/background-agent-name.js +12 -2
  58. package/dist/background-session-reap.d.ts +1 -1
  59. package/dist/bake-runner/main.js +9 -6
  60. package/dist/bench/s1/arms.js +6 -5
  61. package/dist/bench/s1/live-deps.js +8 -3
  62. package/dist/bench/s1/run-firm.js +6 -5
  63. package/dist/bind-host.d.ts +25 -0
  64. package/dist/bind-host.js +25 -0
  65. package/dist/boot/adoption.d.ts +3 -0
  66. package/dist/boot/adoption.js +1 -0
  67. package/dist/boot/crash-last.js +2 -1
  68. package/dist/boot/deployment-mods.d.ts +1 -1
  69. package/dist/boot/device-lane.js +5 -5
  70. package/dist/boot/engine-lease.d.ts +12 -11
  71. package/dist/boot/execution-env.d.ts +19 -8
  72. package/dist/boot/execution-env.js +80 -62
  73. package/dist/boot/execution-lane.d.ts +37 -9
  74. package/dist/boot/execution-lane.js +74 -20
  75. package/dist/boot/exit-boundary.d.ts +3 -3
  76. package/dist/boot/exit-boundary.js +6 -5
  77. package/dist/boot/exit-last.js +2 -1
  78. package/dist/boot/fatal-exit.d.ts +3 -5
  79. package/dist/boot/fatal-exit.js +2 -2
  80. package/dist/boot/governance-seams.d.ts +2 -2
  81. package/dist/boot/leader.d.ts +15 -0
  82. package/dist/boot/leader.js +18 -16
  83. package/dist/boot/memory-boundary.d.ts +11 -11
  84. package/dist/boot/memory-boundary.js +3 -3
  85. package/dist/boot/memory-consolidation.d.ts +50 -53
  86. package/dist/boot/memory-consolidation.js +11 -18
  87. package/dist/boot/org-memory.js +4 -3
  88. package/dist/boot/parked-revive-gate.d.ts +1 -1
  89. package/dist/boot/parked-revive-gate.js +3 -3
  90. package/dist/boot/reapers.d.ts +4 -3
  91. package/dist/boot/reapers.js +20 -17
  92. package/dist/boot/resolve-spec.d.ts +5 -3
  93. package/dist/boot/resolve-spec.js +133 -165
  94. package/dist/boot/retention-lane.d.ts +7 -45
  95. package/dist/boot/retention-lane.js +2 -2
  96. package/dist/boot/runner-deps.d.ts +28 -7
  97. package/dist/boot/runner-deps.js +11 -4
  98. package/dist/boot/runtime-caps.d.ts +2 -2
  99. package/dist/boot/runtime-caps.js +16 -2
  100. package/dist/boot/session-faces.d.ts +17 -7
  101. package/dist/boot/session-faces.js +122 -96
  102. package/dist/boot/shutdown.d.ts +5 -4
  103. package/dist/boot/shutdown.js +6 -4
  104. package/dist/boot/stage-01-config.d.ts +1 -1
  105. package/dist/boot/stage-01-config.js +14 -2
  106. package/dist/boot/stage-02-web-admin-pull.d.ts +2 -1
  107. package/dist/boot/stage-02-web-admin-pull.js +15 -8
  108. package/dist/boot/stage-03-store-backend.d.ts +4 -1
  109. package/dist/boot/stage-03-store-backend.js +4 -3
  110. package/dist/boot/stage-04-stores.d.ts +3 -1
  111. package/dist/boot/stage-04-stores.js +2 -2
  112. package/dist/boot/stage-05-execution-env.d.ts +9 -5
  113. package/dist/boot/stage-05-execution-env.js +5 -5
  114. package/dist/boot/stage-06-runners.d.ts +13 -15
  115. package/dist/boot/stage-06-runners.js +24 -18
  116. package/dist/boot/stage-07-capability-layer.d.ts +14 -11
  117. package/dist/boot/stage-07-capability-layer.js +9 -12
  118. package/dist/boot/stage-08-reapers.d.ts +14 -11
  119. package/dist/boot/stage-08-reapers.js +3 -3
  120. package/dist/boot/stage-09-leader.d.ts +16 -18
  121. package/dist/boot/stage-09-leader.js +12 -4
  122. package/dist/boot/stage-10-http-server.d.ts +16 -18
  123. package/dist/boot/stage-10-http-server.js +9 -5
  124. package/dist/boot/store-evidence.d.ts +20 -0
  125. package/dist/boot/store-evidence.js +13 -0
  126. package/dist/boot/stores.d.ts +12 -0
  127. package/dist/boot/stores.js +39 -17
  128. package/dist/boot/task-list-lane.d.ts +4 -4
  129. package/dist/boot/web-admin.d.ts +4 -2
  130. package/dist/boot/web-admin.js +58 -38
  131. package/dist/boot/webfetch-summarize-lane.d.ts +1 -1
  132. package/dist/boot-reclaim.d.ts +3 -1
  133. package/dist/boot-reclaim.js +1 -1
  134. package/dist/brain.d.ts +7 -18
  135. package/dist/brain.js +5 -17
  136. package/dist/budget.js +6 -6
  137. package/dist/capabilities/center-plugins.d.ts +9 -1
  138. package/dist/capabilities/center-plugins.js +37 -11
  139. package/dist/capabilities/center-wiring.js +1 -1
  140. package/dist/capabilities/composite-members.d.ts +3 -2
  141. package/dist/capabilities/composite-members.js +3 -2
  142. package/dist/capabilities/execution-lane.d.ts +7 -7
  143. package/dist/capabilities/execution-lane.js +2 -2
  144. package/dist/capabilities/hands-lane.d.ts +1 -1
  145. package/dist/capabilities/repo-tools.d.ts +2 -0
  146. package/dist/capabilities/repo-tools.js +14 -12
  147. package/dist/capabilities/scenarios.d.ts +38 -33
  148. package/dist/capabilities/scenarios.js +24 -25
  149. package/dist/capabilities/settings-contract.d.ts +29 -0
  150. package/dist/capabilities/settings-contract.js +14 -0
  151. package/dist/capabilities/skills.d.ts +6 -6
  152. package/dist/capabilities/tool-defer.d.ts +1 -1
  153. package/dist/capability-facts.d.ts +69 -4
  154. package/dist/capability-facts.js +77 -5
  155. package/dist/card-void.d.ts +4 -4
  156. package/dist/card-void.js +1 -1
  157. package/dist/center-credential-renewer.d.ts +6 -2
  158. package/dist/center-credential-renewer.js +10 -5
  159. package/dist/config-catalog.d.ts +16 -1
  160. package/dist/config-catalog.js +68 -61
  161. package/dist/config-dir-trust.d.ts +37 -4
  162. package/dist/config-dir-trust.js +88 -44
  163. package/dist/config-invariants.d.ts +58 -4
  164. package/dist/config-invariants.js +104 -23
  165. package/dist/config-lkg.d.ts +24 -2
  166. package/dist/config-lkg.js +22 -9
  167. package/dist/config-provider.d.ts +9 -9
  168. package/dist/config-provider.js +25 -108
  169. package/dist/config-pull-failure.d.ts +50 -0
  170. package/dist/config-pull-failure.js +48 -0
  171. package/dist/config-types.d.ts +215 -202
  172. package/dist/config.d.ts +69 -14
  173. package/dist/config.js +188 -96
  174. package/dist/degenerate-instrument.js +1 -1
  175. package/dist/delegated-session-owner.d.ts +1 -1
  176. package/dist/deleted-session-ids.d.ts +3 -2
  177. package/dist/deploy-facts.js +3 -2
  178. package/dist/deployment-governance.d.ts +3 -3
  179. package/dist/deployment-shape.d.ts +51 -16
  180. package/dist/deployment-shape.js +31 -6
  181. package/dist/egress-redirect.d.ts +25 -7
  182. package/dist/egress-redirect.js +20 -2
  183. package/dist/elicitation.d.ts +6 -5
  184. package/dist/elicitation.js +23 -22
  185. package/dist/engine-identity.d.ts +28 -0
  186. package/dist/engine-identity.js +10 -0
  187. package/dist/entry-problems.d.ts +5 -7
  188. package/dist/entry-problems.js +1 -1
  189. package/dist/env-facts.d.ts +7 -5
  190. package/dist/env-facts.js +12 -7
  191. package/dist/env-witness.d.ts +7 -0
  192. package/dist/env-witness.js +16 -0
  193. package/dist/execution-config-root.d.ts +5 -5
  194. package/dist/execution-config-root.js +5 -5
  195. package/dist/execution-env-purpose.d.ts +14 -0
  196. package/dist/execution-env-purpose.js +29 -0
  197. package/dist/execution-lane-caps.d.ts +53 -103
  198. package/dist/execution-lane-caps.js +51 -83
  199. package/dist/execution-placement.d.ts +65 -9
  200. package/dist/execution-placement.js +58 -0
  201. package/dist/field-conflict.d.ts +7 -11
  202. package/dist/field-conflict.js +3 -3
  203. package/dist/file-history-capture.d.ts +3 -3
  204. package/dist/file-history-disclosure.d.ts +2 -2
  205. package/dist/file-history-disclosure.js +1 -0
  206. package/dist/fleet/drain-entry.d.ts +17 -10
  207. package/dist/fleet/drain-entry.js +1 -1
  208. package/dist/fleet/fleet-bus.d.ts +21 -3
  209. package/dist/fleet/fleet-bus.js +35 -25
  210. package/dist/fleet/fleet-reconciler.js +2 -2
  211. package/dist/fleet/serving-lease.js +6 -7
  212. package/dist/fleet-client.js +3 -3
  213. package/dist/fleet-lease.d.ts +0 -1
  214. package/dist/fleet-lease.js +4 -5
  215. package/dist/history-anchor.d.ts +42 -0
  216. package/dist/history-anchor.js +34 -0
  217. package/dist/hitl-delivery.d.ts +90 -0
  218. package/dist/hitl-delivery.js +98 -0
  219. package/dist/hooks/classic-stations.d.ts +8 -11
  220. package/dist/hooks/classic-stations.js +0 -7
  221. package/dist/hooks/command-spawn.d.ts +1 -4
  222. package/dist/hooks/command-spawn.js +0 -11
  223. package/dist/hooks/hook-llm.d.ts +5 -1
  224. package/dist/hooks/hook-llm.js +24 -15
  225. package/dist/hooks/hook-runner.d.ts +119 -65
  226. package/dist/hooks/hook-runner.js +415 -217
  227. package/dist/host-lsp-manager.d.ts +22 -8
  228. package/dist/host-lsp-manager.js +4 -1
  229. package/dist/http/active-run-conflict.d.ts +2 -43
  230. package/dist/http/active-run-conflict.js +3 -7
  231. package/dist/http/admission.d.ts +4 -18
  232. package/dist/http/admission.js +75 -78
  233. package/dist/http/approval-sweeps.d.ts +5 -8
  234. package/dist/http/approval-sweeps.js +55 -30
  235. package/dist/http/caller-trust.d.ts +8 -10
  236. package/dist/http/caller-trust.js +1 -2
  237. package/dist/http/checkpoint-ctx.d.ts +17 -0
  238. package/dist/http/checkpoint-ctx.js +6 -0
  239. package/dist/http/claim-heartbeat.d.ts +49 -0
  240. package/dist/http/claim-heartbeat.js +46 -0
  241. package/dist/http/claim-latency.d.ts +10 -0
  242. package/dist/http/claim-latency.js +12 -0
  243. package/dist/http/claimed-run.d.ts +4 -3
  244. package/dist/http/dispatch.d.ts +8 -1
  245. package/dist/http/dispatch.js +77 -31
  246. package/dist/http/durable-run-leg.d.ts +3 -3
  247. package/dist/http/durable-run-leg.js +18 -12
  248. package/dist/http/execution-context.d.ts +18 -42
  249. package/dist/http/execution-context.js +11 -5
  250. package/dist/http/health-reader.d.ts +36 -0
  251. package/dist/http/health-reader.js +21 -0
  252. package/dist/http/health-self-report.d.ts +9 -9
  253. package/dist/http/health-self-report.js +4 -4
  254. package/dist/http/idempotency.d.ts +9 -5
  255. package/dist/http/idempotency.js +4 -4
  256. package/dist/http/memory-compliance-failure-reply.d.ts +15 -16
  257. package/dist/http/memory-compliance-failure-reply.js +7 -2
  258. package/dist/http/memory-face-fault-reply.d.ts +67 -0
  259. package/dist/http/memory-face-fault-reply.js +71 -0
  260. package/dist/http/memory-store-refusal-reply.d.ts +3 -3
  261. package/dist/http/memory-store-refusal-reply.js +6 -0
  262. package/dist/http/owner-access.d.ts +391 -56
  263. package/dist/http/owner-access.js +372 -33
  264. package/dist/http/principal-gate.d.ts +26 -94
  265. package/dist/http/principal-gate.js +24 -81
  266. package/dist/http/refusal-body.d.ts +35 -2
  267. package/dist/http/refusal-body.js +34 -0
  268. package/dist/http/request-guards.d.ts +10 -14
  269. package/dist/http/request-guards.js +34 -68
  270. package/dist/http/resume-composition.d.ts +37 -0
  271. package/dist/http/resume-composition.js +18 -0
  272. package/dist/http/resume-ctx-read.d.ts +35 -12
  273. package/dist/http/resume-ctx-read.js +25 -6
  274. package/dist/http/resume-legs.d.ts +24 -24
  275. package/dist/http/resume-legs.js +260 -171
  276. package/dist/http/retired-skill-manifest.d.ts +1 -1
  277. package/dist/http/rewind-files-reply.d.ts +34 -0
  278. package/dist/http/rewind-files-reply.js +36 -0
  279. package/dist/http/route-ctx.d.ts +56 -47
  280. package/dist/http/route-table.js +2 -0
  281. package/dist/http/routes/a2a-serve.d.ts +43 -5
  282. package/dist/http/routes/a2a-serve.js +58 -37
  283. package/dist/http/routes/admin-config-refresh.js +2 -2
  284. package/dist/http/routes/admin-drain.js +2 -2
  285. package/dist/http/routes/admin-memory-optout.js +4 -3
  286. package/dist/http/routes/adoption.d.ts +3 -0
  287. package/dist/http/routes/adoption.js +17 -10
  288. package/dist/http/routes/agents-roster.js +13 -7
  289. package/dist/http/routes/approvals-assistant.js +73 -88
  290. package/dist/http/routes/attachments.js +2 -2
  291. package/dist/http/routes/background.d.ts +3 -3
  292. package/dist/http/routes/background.js +9 -17
  293. package/dist/http/routes/capabilities.js +23 -20
  294. package/dist/http/routes/config-catalog.js +2 -2
  295. package/dist/http/routes/devices.d.ts +3 -3
  296. package/dist/http/routes/devices.js +5 -5
  297. package/dist/http/routes/diagnostics.d.ts +27 -3
  298. package/dist/http/routes/diagnostics.js +27 -21
  299. package/dist/http/routes/engine.js +2 -2
  300. package/dist/http/routes/fleet.js +5 -3
  301. package/dist/http/routes/images.js +10 -6
  302. package/dist/http/routes/leader.d.ts +7 -2
  303. package/dist/http/routes/leader.js +12 -3
  304. package/dist/http/routes/mcp-reconnect.d.ts +1 -1
  305. package/dist/http/routes/mcp-reconnect.js +7 -15
  306. package/dist/http/routes/memory-bundle.js +4 -7
  307. package/dist/http/routes/memory-compliance.js +4 -4
  308. package/dist/http/routes/memory-consolidation.js +6 -9
  309. package/dist/http/routes/memory-origin.d.ts +3 -1
  310. package/dist/http/routes/memory-origin.js +7 -8
  311. package/dist/http/routes/memory-policy.js +17 -12
  312. package/dist/http/routes/notify-wake.js +12 -20
  313. package/dist/http/routes/observability.js +3 -3
  314. package/dist/http/routes/principal-inbox.d.ts +1 -1
  315. package/dist/http/routes/principal-inbox.js +2 -2
  316. package/dist/http/routes/projects.d.ts +70 -0
  317. package/dist/http/routes/projects.js +87 -0
  318. package/dist/http/routes/retention-ops.js +6 -9
  319. package/dist/http/routes/rules.js +50 -7
  320. package/dist/http/routes/run-memory-capture.d.ts +2 -2
  321. package/dist/http/routes/run-memory-capture.js +6 -12
  322. package/dist/http/routes/run-permission-mode.d.ts +2 -2
  323. package/dist/http/routes/run-permission-mode.js +10 -17
  324. package/dist/http/routes/runs.js +148 -233
  325. package/dist/http/routes/session-memory-sync.d.ts +2 -2
  326. package/dist/http/routes/session-memory-sync.js +7 -13
  327. package/dist/http/routes/session-sync.d.ts +4 -2
  328. package/dist/http/routes/session-sync.js +48 -30
  329. package/dist/http/routes/sessions-list.d.ts +3 -3
  330. package/dist/http/routes/sessions-list.js +9 -9
  331. package/dist/http/routes/sessions.d.ts +7 -1
  332. package/dist/http/routes/sessions.js +177 -112
  333. package/dist/http/routes/shared-memory.js +6 -6
  334. package/dist/http/routes/side-query.js +2 -2
  335. package/dist/http/routes/tasks.js +144 -122
  336. package/dist/http/routes/trace-usage.d.ts +0 -12
  337. package/dist/http/routes/trace-usage.js +40 -46
  338. package/dist/http/routes/workflows.d.ts +39 -4
  339. package/dist/http/routes/workflows.js +42 -14
  340. package/dist/http/run-concurrency-cap.d.ts +20 -12
  341. package/dist/http/run-concurrency-cap.js +39 -26
  342. package/dist/http/run-read-face.d.ts +3 -5
  343. package/dist/http/run-read-face.js +8 -13
  344. package/dist/http/send.d.ts +12 -3
  345. package/dist/http/send.js +42 -6
  346. package/dist/http/server.d.ts +63 -50
  347. package/dist/http/server.js +52 -16
  348. package/dist/http/sse-log.d.ts +17 -10
  349. package/dist/http/sse-log.js +7 -7
  350. package/dist/http/stored-body-replay.d.ts +17 -3
  351. package/dist/http/stored-body-replay.js +11 -2
  352. package/dist/http/submit-ctx.d.ts +16 -8
  353. package/dist/http/submit-ctx.js +6 -2
  354. package/dist/http/submit-replay.d.ts +19 -6
  355. package/dist/http/submit-replay.js +18 -6
  356. package/dist/http/sync-submit-body.d.ts +3 -4
  357. package/dist/http/sync-submit-body.js +4 -5
  358. package/dist/http/wire-types.d.ts +23 -13
  359. package/dist/identity-source.d.ts +36 -5
  360. package/dist/identity-source.js +27 -0
  361. package/dist/index.d.ts +3 -2
  362. package/dist/index.js +2 -1
  363. package/dist/instruction-source-notice.d.ts +1 -1
  364. package/dist/key-resolver.d.ts +32 -0
  365. package/dist/key-resolver.js +23 -9
  366. package/dist/leader/diffup.js +2 -1
  367. package/dist/leader/endpoint.d.ts +26 -5
  368. package/dist/leader/endpoint.js +154 -14
  369. package/dist/leader/fanout.d.ts +3 -0
  370. package/dist/leader/fanout.js +78 -63
  371. package/dist/leader/leader.d.ts +16 -0
  372. package/dist/leader/leader.js +43 -3
  373. package/dist/leader/merge.d.ts +9 -1
  374. package/dist/leader/merge.js +16 -1
  375. package/dist/leader/repair-wire.js +1 -1
  376. package/dist/leader/wire.d.ts +36 -3
  377. package/dist/leader/wire.js +59 -18
  378. package/dist/lsp-evict.d.ts +6 -4
  379. package/dist/lsp-evict.js +2 -3
  380. package/dist/memory-embedder-reembed.d.ts +38 -0
  381. package/dist/memory-embedder-reembed.js +20 -0
  382. package/dist/memory-incident-sink.d.ts +0 -28
  383. package/dist/memory-incident-sink.js +5 -0
  384. package/dist/memory-operator-faces.d.ts +5 -4
  385. package/dist/memory-operator-faces.js +1 -1
  386. package/dist/memory-scope.d.ts +31 -4
  387. package/dist/memory-scope.js +65 -16
  388. package/dist/memory-store-refusal.d.ts +20 -4
  389. package/dist/memory-store-refusal.js +1 -1
  390. package/dist/memory-sync-client.d.ts +5 -2
  391. package/dist/memory-sync-client.js +19 -14
  392. package/dist/memory-sync.js +1 -1
  393. package/dist/model-compat.d.ts +51 -28
  394. package/dist/model-compat.js +55 -23
  395. package/dist/model-context-window.d.ts +18 -0
  396. package/dist/model-context-window.js +2 -0
  397. package/dist/model-entry-headers.d.ts +46 -4
  398. package/dist/model-entry-headers.js +2 -2
  399. package/dist/model-entry-refusal.d.ts +46 -17
  400. package/dist/model-entry-refusal.js +47 -27
  401. package/dist/model-plane-face.d.ts +19 -11
  402. package/dist/model-plane-face.js +9 -1
  403. package/dist/model-plane-probe.d.ts +2 -0
  404. package/dist/model-plane-probe.js +17 -0
  405. package/dist/model-provider.d.ts +3 -3
  406. package/dist/model-route-endpoint.d.ts +9 -5
  407. package/dist/model-route-endpoint.js +29 -7
  408. package/dist/model-select.d.ts +16 -0
  409. package/dist/model-select.js +4 -0
  410. package/dist/mountinfo.d.ts +37 -0
  411. package/dist/mountinfo.js +47 -0
  412. package/dist/namespaced-rule-name.d.ts +28 -2
  413. package/dist/namespaced-rule-name.js +10 -1
  414. package/dist/net-address.d.ts +1 -1
  415. package/dist/observability/corrupt-read-seat.d.ts +4 -4
  416. package/dist/observability/corrupt-read-seat.js +5 -3
  417. package/dist/observability/fail-open.d.ts +75 -47
  418. package/dist/observability/fail-open.js +77 -47
  419. package/dist/observability/logger.d.ts +22 -1
  420. package/dist/observability/logger.js +89 -12
  421. package/dist/observability/metrics.d.ts +2 -0
  422. package/dist/observability/metrics.js +5 -4
  423. package/dist/observability/otel-exporter.js +2 -1
  424. package/dist/observability/principal-context.d.ts +14 -7
  425. package/dist/observability/principal-context.js +8 -3
  426. package/dist/observability/run-terminal.d.ts +7 -1
  427. package/dist/observability/run-terminal.js +5 -2
  428. package/dist/observability/secret-env-scrub.d.ts +30 -4
  429. package/dist/observability/secret-env-scrub.js +15 -3
  430. package/dist/orchestration/hardened-vm-runner.d.ts +1 -0
  431. package/dist/orchestration/hardened-vm-runner.js +11 -5
  432. package/dist/orchestration/hardened-vm-worker-runner.d.ts +0 -14
  433. package/dist/orchestration/hardened-vm-worker-runner.js +5 -0
  434. package/dist/orchestration/hardened-vm-worker.js +2 -1
  435. package/dist/orchestration/workflow-agent-session-index.d.ts +7 -12
  436. package/dist/orchestration/workflow-agent-session-index.js +1 -6
  437. package/dist/orchestration/workflow-completion-inbox.d.ts +29 -9
  438. package/dist/orchestration/workflow-completion-inbox.js +65 -46
  439. package/dist/org-delivery-gate.d.ts +5 -4
  440. package/dist/org-delivery-gate.js +7 -6
  441. package/dist/org-memory-admission.d.ts +5 -2
  442. package/dist/org-memory-admission.js +25 -10
  443. package/dist/outbound-dispatcher.d.ts +1 -1
  444. package/dist/outbound-dispatcher.js +6 -12
  445. package/dist/owner-brands.d.ts +81 -0
  446. package/dist/owner-brands.js +42 -0
  447. package/dist/owner-faces.d.ts +531 -0
  448. package/dist/owner-faces.js +126 -0
  449. package/dist/parked-decide.d.ts +100 -31
  450. package/dist/parked-decide.js +162 -48
  451. package/dist/parked-revive-surface.d.ts +14 -4
  452. package/dist/parked-revive-surface.js +5 -4
  453. package/dist/peer-directory.d.ts +6 -8
  454. package/dist/peer-directory.js +3 -2
  455. package/dist/permission-rule-vocab.d.ts +53 -8
  456. package/dist/permission-rule-vocab.js +30 -2
  457. package/dist/plugins/adoption-log-sql.d.ts +0 -22
  458. package/dist/plugins/adoption-log-sql.js +5 -3
  459. package/dist/plugins/approval-ask-retired-delete-by-task-m50.d.ts +7 -0
  460. package/dist/plugins/approval-ask-retired-delete-by-task-m50.js +17 -0
  461. package/dist/plugins/approval-ask-store-file.d.ts +28 -9
  462. package/dist/plugins/approval-ask-store-file.js +74 -18
  463. package/dist/plugins/approval-ask-store-memory.d.ts +17 -7
  464. package/dist/plugins/approval-ask-store-memory.js +35 -12
  465. package/dist/plugins/approval-ask-store-sql.d.ts +42 -20
  466. package/dist/plugins/approval-ask-store-sql.js +44 -11
  467. package/dist/plugins/approval-exemption-skill-m46.d.ts +20 -0
  468. package/dist/plugins/approval-exemption-skill-m46.js +25 -0
  469. package/dist/plugins/approval-exemption-store.d.ts +6 -1
  470. package/dist/plugins/approval-exemption-store.js +14 -0
  471. package/dist/plugins/approval-nonce-store.d.ts +39 -12
  472. package/dist/plugins/approval-nonce-store.js +72 -23
  473. package/dist/plugins/blob-backend.d.ts +40 -195
  474. package/dist/plugins/blob-backend.js +41 -234
  475. package/dist/plugins/caching-session-store.d.ts +22 -5
  476. package/dist/plugins/caching-session-store.js +43 -4
  477. package/dist/plugins/checkpoint-index-columns.d.ts +33 -6
  478. package/dist/plugins/checkpoint-index-columns.js +39 -3
  479. package/dist/plugins/checkpoint-store-face.d.ts +84 -11
  480. package/dist/plugins/checkpoint-store-face.js +18 -1
  481. package/dist/plugins/device-store-sql.d.ts +2 -2
  482. package/dist/plugins/device-store-sql.js +6 -10
  483. package/dist/plugins/ensure-index.d.ts +13 -1
  484. package/dist/plugins/ensure-index.js +154 -21
  485. package/dist/plugins/ensure-schema-lock-policy.d.ts +0 -15
  486. package/dist/plugins/ensure-schema-lock-policy.js +3 -2
  487. package/dist/plugins/execution-lane-rename-m40.d.ts +20 -0
  488. package/dist/plugins/execution-lane-rename-m40.js +10 -0
  489. package/dist/plugins/execution-placement-sql.d.ts +63 -88
  490. package/dist/plugins/execution-placement-sql.js +94 -54
  491. package/dist/plugins/file-run-store.d.ts +89 -35
  492. package/dist/plugins/file-run-store.js +197 -142
  493. package/dist/plugins/host-platform.d.ts +24 -3
  494. package/dist/plugins/host-platform.js +15 -1
  495. package/dist/plugins/image-bake-store-sql.js +2 -0
  496. package/dist/plugins/imported-layer-root-retirement.d.ts +19 -10
  497. package/dist/plugins/imported-layer-root-retirement.js +4 -8
  498. package/dist/plugins/inbox-payload-column.d.ts +14 -0
  499. package/dist/plugins/inbox-payload-column.js +13 -0
  500. package/dist/plugins/k8s-pod-reaper.d.ts +1 -3
  501. package/dist/plugins/k8s-pod-reaper.js +0 -1
  502. package/dist/plugins/leader-run-store-sql.d.ts +22 -0
  503. package/dist/plugins/leader-run-store-sql.js +34 -4
  504. package/dist/plugins/local-checkpoint-store.d.ts +63 -23
  505. package/dist/plugins/local-checkpoint-store.js +204 -81
  506. package/dist/plugins/local-data-dir-modes-m39.d.ts +48 -0
  507. package/dist/plugins/local-data-dir-modes-m39.js +183 -0
  508. package/dist/plugins/local-docker-capacity.d.ts +93 -0
  509. package/dist/plugins/local-docker-capacity.js +194 -0
  510. package/dist/plugins/local-docker-reaper.d.ts +92 -0
  511. package/dist/plugins/local-docker-reaper.js +102 -0
  512. package/dist/plugins/local-engine-high-water.d.ts +13 -0
  513. package/dist/plugins/local-engine-high-water.js +62 -0
  514. package/dist/plugins/local-session-store.d.ts +442 -143
  515. package/dist/plugins/local-session-store.js +941 -289
  516. package/dist/plugins/local-session-window.d.ts +3 -2
  517. package/dist/plugins/local-session-window.js +3 -2
  518. package/dist/plugins/local-sidecar-quarantine.js +3 -2
  519. package/dist/plugins/local-task-attachment-store.d.ts +20 -1
  520. package/dist/plugins/local-task-attachment-store.js +32 -12
  521. package/dist/plugins/memory-embedder-fingerprint.d.ts +33 -10
  522. package/dist/plugins/memory-embedder-fingerprint.js +52 -12
  523. package/dist/plugins/memory-embedder.d.ts +1 -1
  524. package/dist/plugins/memory-embedder.js +11 -9
  525. package/dist/plugins/memory-engine-pg.d.ts +7 -5
  526. package/dist/plugins/memory-engine-pg.js +18 -9
  527. package/dist/plugins/memory-engine-sql-apply.d.ts +21 -8
  528. package/dist/plugins/memory-engine-sql-apply.js +7 -9
  529. package/dist/plugins/memory-engine-tidb.d.ts +12 -7
  530. package/dist/plugins/memory-engine-tidb.js +18 -10
  531. package/dist/plugins/memory-optout-grant-store-sql.d.ts +1 -1
  532. package/dist/plugins/memory-optout-grant-store-sql.js +3 -3
  533. package/dist/plugins/memory-run-store.d.ts +39 -27
  534. package/dist/plugins/memory-run-store.js +72 -70
  535. package/dist/plugins/one-time-migration-marker.d.ts +10 -0
  536. package/dist/plugins/one-time-migration-marker.js +7 -0
  537. package/dist/plugins/one-time-migrations.d.ts +325 -74
  538. package/dist/plugins/one-time-migrations.js +705 -230
  539. package/dist/plugins/org-delivery-quota-store.js +2 -1
  540. package/dist/plugins/owner-only-file-mode.d.ts +29 -0
  541. package/dist/plugins/owner-only-file-mode.js +141 -0
  542. package/dist/plugins/permission-rule-store-file.d.ts +11 -11
  543. package/dist/plugins/permission-rule-store-file.js +14 -2
  544. package/dist/plugins/permission-rule-store-sql.d.ts +4 -63
  545. package/dist/plugins/permission-rule-store-sql.js +6 -86
  546. package/dist/plugins/pg-pool.d.ts +3 -32
  547. package/dist/plugins/pg-pool.js +27 -11
  548. package/dist/plugins/release-version.d.ts +20 -0
  549. package/dist/plugins/release-version.js +28 -0
  550. package/dist/plugins/remote-env-adb.d.ts +20 -4
  551. package/dist/plugins/remote-env-adb.js +39 -11
  552. package/dist/plugins/remote-env-e2b.d.ts +19 -28
  553. package/dist/plugins/remote-env-e2b.js +40 -29
  554. package/dist/plugins/remote-env-host.d.ts +11 -10
  555. package/dist/plugins/remote-env-host.js +40 -27
  556. package/dist/plugins/remote-env-k8s.d.ts +45 -47
  557. package/dist/plugins/remote-env-k8s.js +122 -62
  558. package/dist/plugins/remote-env-local-docker.d.ts +152 -15
  559. package/dist/plugins/remote-env-local-docker.js +370 -75
  560. package/dist/plugins/remote-env-ssh.d.ts +8 -2
  561. package/dist/plugins/remote-env-ssh.js +26 -24
  562. package/dist/plugins/remote-scratchpad.js +4 -0
  563. package/dist/plugins/remote-shell.d.ts +59 -30
  564. package/dist/plugins/remote-shell.js +175 -62
  565. package/dist/plugins/retention-declaration.d.ts +37 -0
  566. package/dist/plugins/retention-declaration.js +9 -0
  567. package/dist/plugins/retention-deployment.d.ts +158 -0
  568. package/dist/plugins/retention-deployment.js +119 -0
  569. package/dist/plugins/retention-lane-store-sql.d.ts +74 -4
  570. package/dist/plugins/retention-lane-store-sql.js +103 -1
  571. package/dist/plugins/retention-sql.d.ts +29 -0
  572. package/dist/plugins/retention-sql.js +8 -0
  573. package/dist/plugins/run-preview-m45.d.ts +11 -0
  574. package/dist/plugins/run-preview-m45.js +19 -0
  575. package/dist/plugins/run-store-sql.d.ts +56 -68
  576. package/dist/plugins/run-store-sql.js +127 -116
  577. package/dist/plugins/s3-answer.d.ts +2 -1
  578. package/dist/plugins/sandbox-reaper.d.ts +26 -0
  579. package/dist/plugins/sandbox-reaper.js +2 -0
  580. package/dist/plugins/scenario-prefix-switch-m42.d.ts +54 -0
  581. package/dist/plugins/scenario-prefix-switch-m42.js +55 -0
  582. package/dist/plugins/scheduler-support.d.ts +16 -1
  583. package/dist/plugins/scheduler-support.js +22 -2
  584. package/dist/plugins/schema-consistency.d.ts +42 -15
  585. package/dist/plugins/schema-consistency.js +213 -13
  586. package/dist/plugins/schema-drift-sentence.d.ts +4 -1
  587. package/dist/plugins/schema-drift-sentence.js +4 -4
  588. package/dist/plugins/schema-ensure-legs.d.ts +10 -1
  589. package/dist/plugins/schema-ensure-legs.js +12 -2
  590. package/dist/plugins/schema-indexes.js +3 -0
  591. package/dist/plugins/schema-live-columns.d.ts +14 -5
  592. package/dist/plugins/schema-live-columns.js +10 -10
  593. package/dist/plugins/send-user-file.js +2 -1
  594. package/dist/plugins/session-birth.d.ts +37 -0
  595. package/dist/plugins/session-birth.js +38 -0
  596. package/dist/plugins/session-epoch-anchor.d.ts +40 -12
  597. package/dist/plugins/session-epoch-anchor.js +33 -11
  598. package/dist/plugins/session-ext-table.d.ts +98 -0
  599. package/dist/plugins/session-ext-table.js +134 -0
  600. package/dist/plugins/session-fork.d.ts +16 -2
  601. package/dist/plugins/session-fork.js +3 -0
  602. package/dist/plugins/session-ownership.d.ts +1 -1
  603. package/dist/plugins/session-placement.d.ts +22 -16
  604. package/dist/plugins/session-placement.js +15 -12
  605. package/dist/plugins/session-row-sql.d.ts +20 -7
  606. package/dist/plugins/session-row-sql.js +16 -8
  607. package/dist/plugins/session-run-rollup.d.ts +29 -0
  608. package/dist/plugins/session-run-rollup.js +40 -0
  609. package/dist/plugins/session-store-sql.d.ts +157 -0
  610. package/dist/plugins/session-store-sql.js +398 -0
  611. package/dist/plugins/session-withdraw-sql.d.ts +36 -0
  612. package/dist/plugins/session-withdraw-sql.js +42 -0
  613. package/dist/plugins/session-workspace-cell.d.ts +2 -2
  614. package/dist/plugins/session-workspace-cell.js +2 -2
  615. package/dist/plugins/shared-memory-store-sql.d.ts +10 -69
  616. package/dist/plugins/shared-memory-store-sql.js +15 -14
  617. package/dist/plugins/shell-sentinel-owner-m48.d.ts +20 -0
  618. package/dist/plugins/shell-sentinel-owner-m48.js +3 -0
  619. package/dist/plugins/snapshot-bucket-presence.d.ts +2 -1
  620. package/dist/plugins/snapshot-bucket-presence.js +1 -1
  621. package/dist/plugins/sql-driver.d.ts +24 -8
  622. package/dist/plugins/sql-driver.js +43 -9
  623. package/dist/plugins/sql-errors.d.ts +35 -5
  624. package/dist/plugins/sql-errors.js +55 -3
  625. package/dist/plugins/sql-json-column.d.ts +8 -7
  626. package/dist/plugins/sql-json-column.js +10 -6
  627. package/dist/plugins/store-backend.d.ts +114 -18
  628. package/dist/plugins/store-backend.js +340 -87
  629. package/dist/plugins/store-contracts.d.ts +97 -30
  630. package/dist/plugins/store-contracts.js +23 -1
  631. package/dist/plugins/store-fault.d.ts +28 -2
  632. package/dist/plugins/store-fault.js +20 -2
  633. package/dist/plugins/task-attachment-store.d.ts +21 -11
  634. package/dist/plugins/task-attachment-store.js +37 -19
  635. package/dist/plugins/task-list-store-sql.d.ts +1 -1
  636. package/dist/plugins/text-column-capacity.d.ts +21 -0
  637. package/dist/plugins/text-column-capacity.js +5 -0
  638. package/dist/plugins/tidb-pool.d.ts +3 -2
  639. package/dist/plugins/tidb-pool.js +42 -39
  640. package/dist/plugins/user-input-ledger-sql.d.ts +1 -1
  641. package/dist/plugins/web-search.js +5 -3
  642. package/dist/plugins/workflow-run-store-sql.d.ts +6 -1
  643. package/dist/plugins/workflow-run-store-sql.js +11 -5
  644. package/dist/principal-jwt.d.ts +4 -4
  645. package/dist/principal-jwt.js +20 -5
  646. package/dist/principal-shape.d.ts +41 -0
  647. package/dist/principal-shape.js +19 -0
  648. package/dist/question.d.ts +13 -23
  649. package/dist/question.js +21 -39
  650. package/dist/read-face-posture.d.ts +6 -6
  651. package/dist/read-face-posture.js +2 -2
  652. package/dist/request-declaration-refusal.d.ts +35 -12
  653. package/dist/request-declaration-refusal.js +21 -9
  654. package/dist/request-form.d.ts +58 -0
  655. package/dist/request-form.js +72 -0
  656. package/dist/request-image-urls.d.ts +8 -2
  657. package/dist/request-image-urls.js +2 -1
  658. package/dist/request-images.d.ts +20 -0
  659. package/dist/request-images.js +59 -0
  660. package/dist/request-key-closure.d.ts +6 -7
  661. package/dist/request-key-closure.js +15 -2
  662. package/dist/request-value-closure.d.ts +5 -5
  663. package/dist/request-value-closure.js +1 -1
  664. package/dist/resource-suspend.d.ts +7 -16
  665. package/dist/resource-suspend.js +1 -1
  666. package/dist/retired-name-host-notice.d.ts +21 -0
  667. package/dist/retired-name-host-notice.js +12 -0
  668. package/dist/rule-entry-list.d.ts +2 -2
  669. package/dist/rule-entry-list.js +3 -4
  670. package/dist/rule-issue-reading.d.ts +58 -0
  671. package/dist/rule-issue-reading.js +14 -0
  672. package/dist/rules-consent.d.ts +46 -16
  673. package/dist/rules-consent.js +102 -53
  674. package/dist/run-acceptance.d.ts +3 -1
  675. package/dist/run-acceptance.js +3 -0
  676. package/dist/run-local.d.ts +14 -6
  677. package/dist/run-local.js +109 -93
  678. package/dist/run-stale-default.d.ts +7 -0
  679. package/dist/run-stale-default.js +2 -0
  680. package/dist/runs.d.ts +73 -44
  681. package/dist/runs.js +65 -43
  682. package/dist/runtime-caps-resolver.d.ts +36 -14
  683. package/dist/runtime-caps-resolver.js +31 -14
  684. package/dist/runtime-governance.d.ts +2 -2
  685. package/dist/runtime-governance.js +5 -3
  686. package/dist/sealed-key-layout.d.ts +12 -6
  687. package/dist/sealed-key-layout.js +5 -1
  688. package/dist/sealed-key.d.ts +12 -2
  689. package/dist/sealed-key.js +116 -26
  690. package/dist/security.d.ts +133 -161
  691. package/dist/security.js +163 -59
  692. package/dist/sema-config-dir.d.ts +20 -0
  693. package/dist/sema-config-dir.js +27 -2
  694. package/dist/server-secret-env.d.ts +23 -5
  695. package/dist/server-secret-env.js +14 -4
  696. package/dist/service-version.d.ts +2 -1
  697. package/dist/service-version.js +2 -2
  698. package/dist/session-children-retire.d.ts +7 -5
  699. package/dist/session-children-retire.js +7 -2
  700. package/dist/session-deletion.d.ts +88 -0
  701. package/dist/session-deletion.js +8 -0
  702. package/dist/session-erase.d.ts +145 -0
  703. package/dist/session-erase.js +115 -0
  704. package/dist/session-error-wire.d.ts +6 -6
  705. package/dist/session-error-wire.js +1 -1
  706. package/dist/session-incarnation.d.ts +60 -10
  707. package/dist/session-incarnation.js +19 -2
  708. package/dist/session-policy-wire.d.ts +6 -3
  709. package/dist/session-policy-wire.js +11 -1
  710. package/dist/session-resident-background.d.ts +29 -47
  711. package/dist/session-resident-background.js +77 -8
  712. package/dist/session-row.d.ts +3 -2
  713. package/dist/session-rules-seat.d.ts +12 -0
  714. package/dist/session-rules-seat.js +19 -0
  715. package/dist/session-sync-kernel.d.ts +1 -1
  716. package/dist/session-titler.d.ts +7 -15
  717. package/dist/session-titler.js +1 -1
  718. package/dist/session-workspace.d.ts +11 -2
  719. package/dist/session-workspace.js +5 -0
  720. package/dist/sighup-idle.d.ts +1 -1
  721. package/dist/spec-fields.d.ts +57 -3
  722. package/dist/spec-fields.js +72 -51
  723. package/dist/store-posture.d.ts +138 -21
  724. package/dist/store-posture.js +188 -3
  725. package/dist/stored-request-hooks-m20.d.ts +3 -2
  726. package/dist/stored-request-hooks-m20.js +21 -16
  727. package/dist/stores-sql/background-agent-store-sql.d.ts +11 -2
  728. package/dist/stores-sql/background-agent-store-sql.js +73 -20
  729. package/dist/stores-sql/blob-index-sql.d.ts +148 -0
  730. package/dist/stores-sql/blob-index-sql.js +154 -0
  731. package/dist/stores-sql/checkpoint-store-sql.d.ts +34 -29
  732. package/dist/stores-sql/checkpoint-store-sql.js +86 -71
  733. package/dist/{plugins → stores-sql}/file-history-store-sql.d.ts +23 -11
  734. package/dist/{plugins → stores-sql}/file-history-store-sql.js +23 -18
  735. package/dist/stores-sql/mailbox-store-sql.d.ts +7 -4
  736. package/dist/stores-sql/mailbox-store-sql.js +31 -32
  737. package/dist/{plugins → stores-sql}/pg-session-storage.d.ts +30 -81
  738. package/dist/{plugins → stores-sql}/pg-session-storage.js +123 -244
  739. package/dist/{plugins → stores-sql}/retention-store-sql.d.ts +197 -223
  740. package/dist/{plugins → stores-sql}/retention-store-sql.js +148 -207
  741. package/dist/{plugins → stores-sql}/session-event-payload.d.ts +1 -1
  742. package/dist/{plugins → stores-sql}/session-event-payload.js +1 -1
  743. package/dist/stores-sql/session-policy-store-sql.d.ts +33 -11
  744. package/dist/stores-sql/session-policy-store-sql.js +44 -36
  745. package/dist/stores-sql/session-write-hooks.d.ts +65 -0
  746. package/dist/stores-sql/session-write-hooks.js +2 -0
  747. package/dist/{plugins → stores-sql}/tidb-session-storage.d.ts +14 -15
  748. package/dist/{plugins → stores-sql}/tidb-session-storage.js +22 -28
  749. package/dist/{plugins → stores-sql}/tidb-session-store.d.ts +67 -138
  750. package/dist/{plugins → stores-sql}/tidb-session-store.js +130 -200
  751. package/dist/stores-sql/tool-result-store-sql.d.ts +1 -1
  752. package/dist/stores-sql/tool-result-store-sql.js +1 -1
  753. package/dist/stores-sql/windowed-session-storage.d.ts +61 -0
  754. package/dist/stores-sql/windowed-session-storage.js +70 -0
  755. package/dist/submission-exit.d.ts +50 -0
  756. package/dist/submission-exit.js +108 -0
  757. package/dist/task-a2a.d.ts +7 -1
  758. package/dist/task-a2a.js +18 -17
  759. package/dist/task-cwd.d.ts +31 -3
  760. package/dist/task-cwd.js +25 -1
  761. package/dist/task-mcp.d.ts +11 -3
  762. package/dist/task-mcp.js +16 -19
  763. package/dist/task-settings.d.ts +23 -14
  764. package/dist/task-settings.js +35 -13
  765. package/dist/terminal.d.ts +25 -43
  766. package/dist/terminal.js +31 -11
  767. package/dist/tool-approval.d.ts +152 -137
  768. package/dist/tool-approval.js +199 -199
  769. package/dist/trace/core-keyset-guard.d.ts +22 -9
  770. package/dist/trace/core-vocab-wire.d.ts +95 -0
  771. package/dist/trace/core-vocab-wire.js +15 -0
  772. package/dist/trace/engine-notice-wire.d.ts +1 -1
  773. package/dist/trace/engine-notice-wire.js +2 -0
  774. package/dist/trace/exit-seat.d.ts +52 -4
  775. package/dist/trace/exit-seat.js +43 -36
  776. package/dist/trace/extension-call-face.d.ts +3 -2
  777. package/dist/trace/extension-call-face.js +3 -1
  778. package/dist/trace/ledger-events.d.ts +4 -7
  779. package/dist/trace/ledger-sink.d.ts +1 -30
  780. package/dist/trace/ledger-sink.js +0 -11
  781. package/dist/trace/model-segment.d.ts +5 -5
  782. package/dist/trace/model-segment.js +5 -5
  783. package/dist/trace/project.d.ts +88 -58
  784. package/dist/trace/project.js +64 -28
  785. package/dist/trace/redact.d.ts +124 -28
  786. package/dist/trace/redact.js +936 -328
  787. package/dist/trace/self-minted-wire.d.ts +750 -29
  788. package/dist/trace/self-minted-wire.js +262 -25
  789. package/dist/trace/sema-provenance.d.ts +45 -41
  790. package/dist/trace/sema-provenance.js +81 -10
  791. package/dist/trace/task-notification-facets.d.ts +70 -2
  792. package/dist/trace/task-notification-facets.js +71 -1
  793. package/dist/trace/wire-projection-faces.d.ts +43 -8
  794. package/dist/trace/wire-projection-faces.js +28 -3
  795. package/dist/unread-request-members.d.ts +66 -0
  796. package/dist/unread-request-members.js +41 -0
  797. package/dist/upstream-body.d.ts +23 -0
  798. package/dist/upstream-body.js +16 -0
  799. package/dist/url-refusal.d.ts +3 -3
  800. package/dist/url-refusal.js +11 -4
  801. package/dist/user-authored-text.d.ts +1 -1
  802. package/dist/user-input-ledger.d.ts +7 -8
  803. package/dist/user-input-ledger.js +1 -1
  804. package/dist/web-admin-client/apply-effective.d.ts +6 -3
  805. package/dist/web-admin-client/apply-effective.js +33 -40
  806. package/dist/web-admin-client/apply-ledger.d.ts +16 -7
  807. package/dist/web-admin-client/apply-ledger.js +5 -2
  808. package/dist/web-admin-client/candidate-gate.d.ts +35 -3
  809. package/dist/web-admin-client/candidate-gate.js +53 -5
  810. package/dist/web-admin-client/center-request.d.ts +6 -3
  811. package/dist/web-admin-client/center-request.js +17 -16
  812. package/dist/web-admin-client/effective-keys.d.ts +1 -1
  813. package/dist/web-admin-client/effective-keys.js +1 -2
  814. package/dist/web-admin-client/entry-metadata.d.ts +8 -0
  815. package/dist/web-admin-client/entry-metadata.js +13 -0
  816. package/dist/web-admin-client/facade.d.ts +1 -1
  817. package/dist/web-admin-client/http-client.d.ts +2 -1
  818. package/dist/web-admin-client/http-client.js +40 -13
  819. package/dist/web-admin-client/mcp-revocation.d.ts +1 -1
  820. package/dist/web-admin-client/mcp-revocation.js +2 -1
  821. package/dist/web-admin-client/read-warnings.d.ts +1 -0
  822. package/dist/web-admin-client/read-warnings.js +1 -0
  823. package/dist/web-admin-client/restart-signal.js +13 -6
  824. package/dist/web-admin-client/skills-mcp.d.ts +22 -8
  825. package/dist/web-admin-client/skills-mcp.js +26 -21
  826. package/dist/web-admin-client/types.d.ts +35 -51
  827. package/dist/workspace-space.d.ts +3 -2
  828. package/docs/DEVICE-EXECUTOR-PROTOCOL.md +4 -4
  829. package/package.json +16 -12
  830. package/scripts/drain-check-local.mjs +118 -173
  831. package/scripts/drain-check.mysql.sql +20 -16
  832. package/scripts/drain-check.pg.sql +20 -16
  833. package/wire-changes/server@7.147.0.json +813 -0
  834. package/wire-changes/server@7.148.0.json +1517 -0
  835. package/dist/http/memory-control-plane-corrupt-reply.d.ts +0 -25
  836. package/dist/http/memory-control-plane-corrupt-reply.js +0 -19
  837. package/dist/http/memory-layer-reply.d.ts +0 -30
  838. package/dist/http/memory-layer-reply.js +0 -24
  839. package/dist/lsp/e2b-bridge.d.ts +0 -57
  840. package/dist/lsp/e2b-bridge.js +0 -139
  841. package/dist/lsp/e2b-manager.d.ts +0 -93
  842. package/dist/lsp/e2b-manager.js +0 -178
  843. package/dist/lsp/lsp-frames.d.ts +0 -14
  844. package/dist/lsp/lsp-frames.js +0 -25
  845. package/dist/lsp/manager.d.ts +0 -129
  846. package/dist/lsp/manager.js +0 -127
  847. package/dist/lsp/types.d.ts +0 -12
  848. package/dist/lsp/types.js +0 -2
  849. package/dist/lsp/ws-transport.d.ts +0 -40
  850. package/dist/lsp/ws-transport.js +0 -210
@@ -32,10 +32,18 @@ export interface RunLocalDeps {
32
32
  fetchImpl?: typeof fetch;
33
33
  /** Structured logger (defaults to the real one at config.logLevel). */
34
34
  logger?: Logger;
35
- /** stdout sink for the human/JSON result (defaults to console.log). */
36
- print?: (line: string) => void;
37
- /** stderr sink for the "you still need to set …" guidance (defaults to console.error). */
38
- printErr?: (line: string) => void;
35
+ /** stdout sink for the human/JSON result (defaults to the log seam's declared non-log result exit `writeCliResult` — unscreened product output).
36
+ * A sink may be async: `runLocal` awaits what it returns at every call site, so the entry never returns (and `main()` never `process.exit`s)
37
+ * before the result bytes are handed to the stream — a piped stdout would otherwise lose the tail of a large result. A plain synchronous sink returns `void`.
38
+ * A sink that throws or rejects propagates out of `runLocal` (as a synchronous throw always did); one that never settles holds it. `writeCliResult` never rejects —
39
+ * it settles when the stream has taken the bytes (a reader that stops reading the pipe holds it until the reader reads or closes). */
40
+ print?: (text: string) => Promise<void> | void;
41
+ /** stderr sink for the short sentences (usage / refusals / "you still need to set …" guidance / the unfinished-stop footer; defaults to the log seam's text
42
+ * exit `writeLogText` — screened). Same law as {@link RunLocalDeps.print}: a sink may be async — `runLocal` (and the no-TTY notice of {@link createLocalApprover})
43
+ * awaits what it returns at every call site, so the entry never returns (and `main()` never `process.exit`s) before the sentence is handed to the stream — a piped
44
+ * stderr would otherwise cut the tail of a longer sentence. A plain synchronous sink returns `void`; a sink that throws or rejects propagates; one that never
45
+ * settles holds the entry. The default never rejects (it settles when the stream has taken the bytes). */
46
+ printErr?: (line: string) => Promise<void> | void;
39
47
  /** [ref] 件三: override the TTY detection behind the {@link createLocalApprover} seat
40
48
  * (defaults to `process.stdin.isTTY === true`) — lets a test drive BOTH arms deterministically. */
41
49
  isTty?: boolean;
@@ -105,8 +113,8 @@ export interface LocalApproverIo {
105
113
  readonly isTty: boolean;
106
114
  /** TTY 臂的问人器(默认 {@link promptYesNoOnTty} 的 readline y/N;`signal`=core 取消透传)。 */
107
115
  readonly askYesNo: (prompt: string, signal?: AbortSignal) => Promise<boolean>;
108
- /** 非 TTY 臂的告知面(stderr)。 */
109
- readonly printErr: (line: string) => void;
116
+ /** 非 TTY 臂的告知面(stderr)。可等:席在告知句交给流之后才交出拒答({@link RunLocalDeps.printErr} 同一条律)。 */
117
+ readonly printErr: (line: string) => Promise<void> | void;
110
118
  /** [ref]:本席**没有人被问**就拒了一只 ask(无 TTY / 参数展示不出)的事实出口 —— 退出码的判据之一(见 {@link unfinishedStopOf}):
111
119
  * 这一拒交给 core 的是部署政策拒(不停批、不记人拒),「活没干完」于是不再经 core 的人拒标记传出来,由本席自己说。 */
112
120
  readonly noteRefusedWithoutPerson: () => void;
package/dist/run-local.js CHANGED
@@ -1,14 +1,13 @@
1
1
  #!/usr/bin/env node
2
- import { DEFAULT_AT_MENTION, DEFAULT_MODEL_REF, resolveTaskModel } from "./model-select.js";
3
- import { defaultModelRefusal, modelUnavailableMessage } from "./model-entry-refusal.js";
2
+ import { DEFAULT_MODEL_REF, pickUserModel } from "./model-select.js";
3
+ import { defaultModelRefusal, modelNotAllowedMessage, modelUnavailableMessage } from "./model-entry-refusal.js";
4
4
  import { servedModelTableLeg } from "./model-select.js";
5
- import { createDurableAbsenceSeat } from "./observability/corrupt-read-seat.js";
6
5
  import { outwardPlane } from "./terminal.js";
7
6
  import { join } from "node:path";
8
7
  import { realpathSync } from "node:fs";
9
8
  import { createInterface } from "node:readline/promises";
10
9
  import { fileURLToPath } from "node:url";
11
- import { BIDI_CONTROL_CHARS, Runner, uuidv7, FileStorageBackend, NodeExecutionEnv, TtlSessionStore, CenterPromptSource, FilePromptArtifactStore, FilePromptSourceStateStore, MemoryPromptArtifactStore, MemoryPromptSourceStateStore, defaultTaskRegistry } from "@sema-agent/core";
10
+ import { BIDI_CONTROL_CHARS, Runner, uuidv7, NodeExecutionEnv, TtlSessionStore, CenterPromptSource, FilePromptArtifactStore, FilePromptSourceStateStore, MemoryPromptArtifactStore, MemoryPromptSourceStateStore, defaultTaskRegistry } from "@sema-agent/core";
12
11
  import { readAskClassPair } from "./approval-card.js";
13
12
  import { singleUserAutoAcceptBaselineApplies } from "./approval.js";
14
13
  import { withUnattendedLeg } from "./unattended-permission-mode.js";
@@ -20,16 +19,17 @@ import { ForkRoutingSessionStore } from "./plugins/fork-routing-session-store.js
20
19
  import { taskWallClockSec } from "./task-workflow.js";
21
20
  import { applyCenterArtifact, centerSourceOnError } from "./capabilities/center-prompts.js";
22
21
  import { buildUnpricedCeilingNotice, isRosterGateArmed, loadConfig, logConfigDiagnostics, parseConfigProvider, parseNumOrFailNonNegative } from "./config.js";
23
- import { buildStoreOpenRefusalTail } from "./plugins/store-open-refusal.js";
24
- import { acquireLocalBackendWithWait } from "./plugins/store-lock-wait.js";
22
+ import { openLocalBackend } from "./plugins/store-backend.js";
23
+ import { runAndLogOneTimeMigrations } from "./plugins/one-time-migrations.js";
25
24
  import { configLocalRoot, createConfigProvider } from "./config-provider.js";
26
- import { CONFIG_DOMAIN_INVALID_NOTE, buildCandidateRejectedFields, judgeConfigCandidate } from "./web-admin-client/candidate-gate.js";
25
+ import { CONFIG_DOMAIN_INVALID_NOTE, buildCandidateRejectedFields, buildCandidateRejectionNotes, judgeConfigCandidate } from "./web-admin-client/candidate-gate.js";
27
26
  import { buildUnreadConfigFileFields, buildUnreadConfigKeyFields } from "./web-admin-client/read-warnings.js";
28
27
  import { composeExecutionLane, settleHostLaneShell, warnReadDenyFloorUnkept } from "./boot/execution-lane.js";
29
28
  import { judgeConsolidationValve } from "./boot/memory-consolidation.js";
30
29
  import { logConfigDirMigration, migrateLocalConfigDirectory } from "./config-d-migration.js";
31
30
  import { logEnvModelsMigration, runEnvModelsMigration } from "./config-root-migration.js";
32
31
  import { assertLocalConfigDirTrusted, ConfigDirUntrustedError } from "./config-dir-trust.js";
32
+ import { ConfigPullError, asConfigPullError, configPullFailureNote } from "./config-pull-failure.js";
33
33
  import { applyEffective, applyCenterReadFace, applySkillsManifest, resolveMcpServers, mcpForScenario, resolveA2aPeers, a2aForScenario } from "./web-admin-client/facade.js";
34
34
  import { hostExecutionEnvFactory } from "./plugins/remote-env-host.js";
35
35
  import { buildLaneHomeClaim, executionLaneOf } from "./execution-lane-caps.js";
@@ -43,7 +43,7 @@ import { createTaskListLane } from "./boot/task-list-lane.js";
43
43
  import { pickHandsRunner, withoutHands } from "./capabilities/hands-lane.js";
44
44
  import { HttpError, sessionIdShapeIssue } from "./security.js";
45
45
  import { createMemoryEngineIncidentSink } from "./memory-incident-sink.js";
46
- import { fileMemoryEngineRoot, memoryEngineBackendFor, memorySpecForRequest } from "./memory-scope.js";
46
+ import { announceMemoryLedgerForm, fileMemoryEngineRoot, memoryEngineBackendFor, memorySpecForRequest } from "./memory-scope.js";
47
47
  import { createMemoryScopeStores } from "./memory-scope-stores.js";
48
48
  import { createMemoryProjectLayers } from "./memory-project-layer.js";
49
49
  import { assertProjectLayerOwnable } from "./project-identity.js";
@@ -58,14 +58,15 @@ import { assertRetentionLaneWirable } from "./boot/retention-lane.js";
58
58
  import { createOrgMemoryAdmissionWiring } from "./boot/org-memory.js";
59
59
  import { assembleDeploymentMods } from "./boot/deployment-mods.js";
60
60
  import { createKeyResolver } from "./key-resolver.js";
61
- import { createLogger } from "./observability/logger.js";
61
+ import { createLogger, writeCliResult, writeLogText, ttyPromptOutput } from "./observability/logger.js";
62
62
  import { fatalExit } from "./boot/fatal-exit.js";
63
63
  import { installProcessExitBoundary } from "./boot/exit-boundary.js";
64
64
  import { createMetrics } from "./observability/metrics.js";
65
65
  import { installSecretEnvScrubRecorder } from "./observability/secret-env-scrub.js";
66
- import { createHostLspManager } from "./host-lsp-manager.js";
66
+ import { createLspManager } from "./host-lsp-manager.js";
67
67
  import { installOutboundDispatcher } from "./outbound-dispatcher.js";
68
- import { provisionSemaConfigDir } from "./sema-config-dir.js";
68
+ import { announceConfigRootEnclosingWorkspace, provisionSemaConfigDir } from "./sema-config-dir.js";
69
+ import { launchWorkspaceOf } from "./task-cwd.js";
69
70
  import { bindOwnCredentialsConfig, declareServerWithheldEnv } from "./server-secret-env.js";
70
71
  export function parseArgs(argv) {
71
72
  let objective;
@@ -207,12 +208,12 @@ export function createLocalApprover(io) {
207
208
  };
208
209
  return async (req, signal) => {
209
210
  if (!io.isTty) {
210
- io.printErr(`denied "${terminalSafeText(req.toolName)}" (${terminalSafeText(req.message)}) — this run-local invocation has no TTY, so there is nobody to ask. ${buildNoTtyRemedySentence(req)}`);
211
+ await io.printErr(`denied "${terminalSafeText(req.toolName)}" (${terminalSafeText(req.message)}) — this run-local invocation has no TTY, so there is nobody to ask. ${buildNoTtyRemedySentence(req)}`);
211
212
  return refuseWithoutPerson(NO_TTY_REFUSAL_REASON);
212
213
  }
213
214
  const argsShown = argsDisplayOf(req.args);
214
215
  if (!argsShown.ok) {
215
- io.printErr(`denied "${terminalSafeText(req.toolName)}" (${terminalSafeText(req.message)}) — its arguments cannot be displayed ` +
216
+ await io.printErr(`denied "${terminalSafeText(req.toolName)}" (${terminalSafeText(req.message)}) — its arguments cannot be displayed ` +
216
217
  `(${terminalSafeText(argsShown.reason)}), so there is nothing a person could review; refusing instead of asking.`);
217
218
  return refuseWithoutPerson(UNDISPLAYABLE_ARGS_REFUSAL_REASON);
218
219
  }
@@ -269,7 +270,7 @@ function inputAlreadyEnded(input) {
269
270
  const state = input;
270
271
  return state.readableEnded === true || state.destroyed === true;
271
272
  }
272
- export async function promptYesNoOnTty(prompt, signal, streams = { input: process.stdin, output: process.stderr }) {
273
+ export async function promptYesNoOnTty(prompt, signal, streams = { input: process.stdin, output: ttyPromptOutput() }) {
273
274
  if (signal?.aborted || inputAlreadyEnded(streams.input))
274
275
  return false;
275
276
  const rl = createInterface({ input: streams.input, output: streams.output });
@@ -316,26 +317,27 @@ function buildUnfinishedStopFooter(stop, sessionId) {
316
317
  }
317
318
  }
318
319
  }
320
+ const RUN_LOCAL_LANE_ENTRY = { name: "run-local", runs: ["host", "none"], declares: "host" };
319
321
  export const RUN_LOCAL_CONFIG_SOURCE_REFUSAL = "CONFIG_PROVIDER=remote: run-local reads its configuration from the local config directory only — it does not pull a web-admin center " +
320
322
  "(center credential renewal, sealed model keys and the roster gate are assembled by the HTTP service). Unset CONFIG_PROVIDER or set " +
321
323
  "CONFIG_PROVIDER=local for this command, or run the HTTP service to use the center.";
322
324
  export async function runLocal(argv, deps = {}) {
323
- const print = deps.print ?? ((l) => console.log(l));
324
- const printErr = deps.printErr ?? ((l) => console.error(l));
325
+ const print = deps.print ?? writeCliResult;
326
+ const printErr = deps.printErr ?? ((l) => writeLogText("stderr", l));
325
327
  let args;
326
328
  try {
327
329
  args = parseArgs(argv);
328
330
  }
329
331
  catch (err) {
330
332
  if (err instanceof UsageError) {
331
- printErr(err.message);
333
+ await printErr(err.message);
332
334
  return 2;
333
335
  }
334
336
  throw err;
335
337
  }
336
338
  const configWord = parseConfigProvider();
337
339
  if (configWord === "remote") {
338
- printErr(RUN_LOCAL_CONFIG_SOURCE_REFUSAL);
340
+ await printErr(RUN_LOCAL_CONFIG_SOURCE_REFUSAL);
339
341
  return 2;
340
342
  }
341
343
  if (configWord === undefined)
@@ -345,33 +347,34 @@ export async function runLocal(argv, deps = {}) {
345
347
  if (args.root)
346
348
  process.env.CONFIG_LOCAL_DIR = args.root;
347
349
  declareServerWithheldEnv();
348
- const config = loadConfig();
349
- bindOwnCredentialsConfig(config);
350
- const root = configLocalRoot(config);
351
- const logger = deps.logger ?? createLogger(config.logLevel);
350
+ const loaded = loadConfig();
351
+ bindOwnCredentialsConfig(loaded);
352
+ const root = configLocalRoot(loaded);
353
+ const logger = deps.logger ?? createLogger(loaded.logLevel);
352
354
  const metrics = createMetrics();
353
355
  const memoryEngineIncident = createMemoryEngineIncidentSink({ logger, metrics });
354
356
  installSecretEnvScrubRecorder({ logger, metrics });
355
357
  installDefaultEngineNoticeSeat(logger, metrics);
356
358
  logConfigDiagnostics(logger);
357
- provisionSemaConfigDir(config, logger);
359
+ provisionSemaConfigDir(loaded, logger);
358
360
  installOutboundDispatcher(logger);
359
- const providerInput = { provider: "local", localDir: root, localOwnerUid: config.configLocalOwnerUid };
361
+ const providerInput = { provider: "local", localDir: root, localOwnerUid: loaded.configLocalOwnerUid };
360
362
  try {
361
- await assertLocalConfigDirTrusted({ root, declaredOwnerUid: config.configLocalOwnerUid });
363
+ await assertLocalConfigDirTrusted({ root, declaredOwnerUid: loaded.configLocalOwnerUid });
362
364
  }
363
365
  catch (err) {
364
- printErr(err instanceof Error ? err.message : String(err));
366
+ await printErr(err instanceof Error ? err.message : String(err));
365
367
  return 2;
366
368
  }
367
- const envModelsMigration = { root, env: process.env, envTableIsPlaceholder: isRosterGateArmed(config.webAdmin) };
369
+ const envModelsMigration = { root, env: process.env, envTableIsPlaceholder: isRosterGateArmed(loaded.webAdmin) };
368
370
  logEnvModelsMigration(logger, envModelsMigration, await runEnvModelsMigration(envModelsMigration));
369
371
  logConfigDirMigration(logger, await migrateLocalConfigDirectory(root));
372
+ let config;
370
373
  try {
371
- await composeExecutionLane(config, { configSource: "local", localRoot: root, logger, drivesFromFile: ["host"] });
374
+ config = await composeExecutionLane(loaded, { configSource: "local", localRoot: root, logger, entry: RUN_LOCAL_LANE_ENTRY });
372
375
  }
373
376
  catch (err) {
374
- printErr(err instanceof Error ? err.message : String(err));
377
+ await printErr(err instanceof Error ? err.message : String(err));
375
378
  return 2;
376
379
  }
377
380
  const configProvider = createConfigProvider(providerInput);
@@ -379,12 +382,15 @@ export async function runLocal(argv, deps = {}) {
379
382
  const rosterLease = peerDesk.lease("roster");
380
383
  let effective;
381
384
  let candidatePrompts;
382
- let applying = false;
385
+ let candidateRejectionNotes;
383
386
  try {
384
- const r = await configProvider.fetchEffective(undefined);
387
+ const r = await configProvider.fetchEffective(undefined).catch((err) => {
388
+ throw asConfigPullError(err);
389
+ });
385
390
  if (r) {
386
391
  const verdict = judgeConfigCandidate(r);
387
392
  if (verdict.verdict === "rejected") {
393
+ candidateRejectionNotes = buildCandidateRejectionNotes({ errors: verdict.errors, ...(configProvider.kind === "local" ? { dir: root } : {}) });
388
394
  for (const de of r.domainErrors ?? [])
389
395
  logger.warn("config_domain_invalid", { domain: de.domain, error: de.error, note: CONFIG_DOMAIN_INVALID_NOTE });
390
396
  logger.warn("config_candidate_rejected", buildCandidateRejectedFields(r, verdict, "run-local", { lkgVersion: "(env)", ...(configProvider.kind === "local" ? { dir: root } : {}) }));
@@ -396,7 +402,6 @@ export async function runLocal(argv, deps = {}) {
396
402
  logger.warn("config_unread_key", buildUnreadConfigKeyFields(k, configProvider.kind === "local" ? root : undefined));
397
403
  for (const d of r.droppedEntries ?? [])
398
404
  logger.warn("config_entry_dropped", { domain: d.domain, entry: d.entry, reasonCode: d.reasonCode, error: d.error, version: r.effective.version, phase: "boot", note: "this one entry failed its domain schema and was dropped on its own — the rest of the candidate applies (per-entry tolerance); fix the named entry to bring it back" });
399
- applying = true;
400
405
  applyEffective(config, r.effective, logger, { leg: "boot", catalogSource: r.catalogSource });
401
406
  effective = r.effective;
402
407
  candidatePrompts = verdict.prompts;
@@ -411,15 +416,15 @@ export async function runLocal(argv, deps = {}) {
411
416
  }
412
417
  catch (err) {
413
418
  if (err instanceof ConfigDirUntrustedError) {
414
- printErr(err.message);
419
+ await printErr(err.message);
415
420
  return 2;
416
421
  }
417
- if (applying)
418
- logger.warn("config_apply_refused", { source: configProvider.kind, err: String(err), note: "the candidate failed to apply at boot — running on env (run-local has no LKG); none of the candidate's domains is adopted; this is not a reachability failure" });
422
+ if (err instanceof ConfigPullError)
423
+ logger.warn("config_source_unreachable_using_env", { source: configProvider.kind, cause: err.pullCause, err: String(err), note: configPullFailureNote(err.pullCause) });
419
424
  else
420
- logger.warn("config_source_unreachable_using_env", { source: configProvider.kind, err: String(err) });
425
+ logger.warn("config_apply_refused", { source: configProvider.kind, err: String(err), note: "the candidate failed to apply at boot — running on env (run-local has no LKG); none of the candidate's domains is adopted; this is not a reachability failure" });
421
426
  }
422
- const noDefaultModel = defaultModelRefusal(config, servedModelTableLeg(config));
427
+ const noDefaultModel = defaultModelRefusal({ models: config.models, modelRefusals: config.modelRefusals, candidateRejectionNotes }, servedModelTableLeg(config));
423
428
  if (noDefaultModel !== undefined)
424
429
  throw new Error(noDefaultModel);
425
430
  const routeVerdict = judgeServedModelRoute(config, { envTableIsPlaceholder: false });
@@ -432,8 +437,8 @@ export async function runLocal(argv, deps = {}) {
432
437
  assertGuardPatternsUsable(config);
433
438
  }
434
439
  catch (e) {
435
- printErr(e instanceof Error ? e.message : String(e));
436
- printErr(`(local config root: ${root} — fix it in ${join(root, ".env")} or your shell env; \`SENSITIVE_WRITE_PATTERNS=off\` disables the guard set)`);
440
+ await printErr(e instanceof Error ? e.message : String(e));
441
+ await printErr(`(local config root: ${root} — fix it in ${join(root, ".env")} or your shell env; \`SENSITIVE_WRITE_PATTERNS=off\` disables the guard set)`);
437
442
  return 2;
438
443
  }
439
444
  const ungatedCompensation = buildOnlySensitiveBaselineWarning(config, {
@@ -448,34 +453,39 @@ export async function runLocal(argv, deps = {}) {
448
453
  if (!deps.brain) {
449
454
  const missing = missingGatewayRequirements(config);
450
455
  if (missing.length > 0) {
451
- printErr("cannot run: you still need to set:");
456
+ await printErr("cannot run: you still need to set:");
452
457
  for (const m of missing)
453
- printErr(` - ${m}`);
454
- printErr(`(local config root: ${root} — put them in ${join(root, ".env")} or your shell env)`);
458
+ await printErr(` - ${m}`);
459
+ await printErr(`(local config root: ${root} — put them in ${join(root, ".env")} or your shell env)`);
455
460
  return 2;
456
461
  }
457
462
  }
458
463
  const brain = deps.brain ?? createBrain(config, deps.fetchImpl ? { fetchImpl: deps.fetchImpl } : {});
459
464
  const pricing = buildPricing(config.models);
460
- let fileBackend;
465
+ let backend;
466
+ try {
467
+ backend = openLocalBackend({ ...config, localDataRoot: root }, { lane: "run-local", onWarn: (msg, fields) => logger.warn(msg, fields), onError: (msg, fields) => logger.error(msg, fields) });
468
+ }
469
+ catch (e) {
470
+ await printErr(e instanceof Error ? e.message : String(e));
471
+ return 2;
472
+ }
461
473
  try {
462
- fileBackend = acquireLocalBackendWithWait(() => new FileStorageBackend({
463
- root,
464
- ...(config.fileHistory !== undefined ? { fileHistory: config.fileHistory } : {}),
465
- onCorruptRead: createDurableAbsenceSeat(logger.warn.bind(logger), root, "file-snapshot = a snapshot or scope read as missing"),
466
- }), config.storeLockWaitMs, (fields) => logger.warn("store_dir_lock_wait", { ...fields }));
474
+ await backend.ensureSchema();
475
+ await runAndLogOneTimeMigrations(logger, backend);
467
476
  }
468
477
  catch (e) {
469
- printErr(`cannot open local data dir ${root}: ${e instanceof Error ? e.message : String(e)}`);
470
- const tail = buildStoreOpenRefusalTail(e, "run-local");
471
- if (tail !== undefined)
472
- printErr(tail);
478
+ await printErr(e instanceof Error ? e.message : String(e));
479
+ await backend.close();
473
480
  return 2;
474
481
  }
475
- const sessionStore = fileBackend.sessionStore;
482
+ const sessionStore = backend.session();
483
+ const engineStores = backend.engineFileStores();
476
484
  const keyResolver = createKeyResolver(config.modelApiKeyEnv, process.env, config.modelApiKeys);
477
- const hostRx = config.remoteExec?.provider === "host" ? config.remoteExec : undefined;
478
- const workspaceDir = args.workspace ?? hostRx?.workspaceBase ?? process.cwd();
485
+ const hostRx = config.remoteExec.provider === "host" ? config.remoteExec : undefined;
486
+ const launchWorkspace = launchWorkspaceOf(config, args.workspace);
487
+ const workspaceDir = launchWorkspace.dir;
488
+ announceConfigRootEnclosingWorkspace(config, logger, launchWorkspace);
479
489
  await settleHostLaneShell(config, logger);
480
490
  warnReadDenyFloorUnkept(config, logger);
481
491
  const homeDirSeat = buildLaneHomeClaim(config);
@@ -487,8 +497,9 @@ export async function runLocal(argv, deps = {}) {
487
497
  ...(hostRx.commandTimeoutMs != null ? { commandTimeoutMs: hostRx.commandTimeoutMs } : {}),
488
498
  })
489
499
  : undefined;
490
- const lspManager = hostRx && config.lspHostEnabled && config.requirePrincipal !== true ? createHostLspManager(config, (event, fields) => logger.info(event, fields)) : undefined;
500
+ const lspManager = createLspManager(config, (event, fields) => logger.info(event, fields));
491
501
  const engineDataRoot = fileMemoryEngineRoot(config, root);
502
+ await announceMemoryLedgerForm(config, root, logger);
492
503
  const fileEngine = memoryEngineBackendFor(config, root, memoryEngineIncident);
493
504
  const memoryEngine = fileEngine !== undefined
494
505
  ? createMemoryScopeStores({ backend: fileEngine.backend, root: engineDataRoot, onIncident: memoryEngineIncident })
@@ -497,9 +508,9 @@ export async function runLocal(argv, deps = {}) {
497
508
  judgeConsolidationValve({ config, memoryEngine });
498
509
  }
499
510
  catch (err) {
500
- printErr(err instanceof Error ? err.message : String(err));
511
+ await printErr(err instanceof Error ? err.message : String(err));
501
512
  void lspManager?.dispose();
502
- await fileBackend.dispose();
513
+ await backend.close();
503
514
  return 2;
504
515
  }
505
516
  let memorySync;
@@ -561,9 +572,9 @@ export async function runLocal(argv, deps = {}) {
561
572
  orgMemoryAdmission = createOrgMemoryAdmissionWiring({ config, logger, metrics });
562
573
  }
563
574
  catch (e) {
564
- printErr(`MEMORY_ORG_DIRECTORY_JSON is invalid: ${e instanceof Error ? e.message : String(e)}`);
565
- printErr(`(local config root: ${root} — fix it in ${join(root, ".env")} or your shell env, or unset it)`);
566
- await fileBackend.dispose();
575
+ await printErr(`MEMORY_ORG_DIRECTORY_JSON is invalid: ${e instanceof Error ? e.message : String(e)}`);
576
+ await printErr(`(local config root: ${root} — fix it in ${join(root, ".env")} or your shell env, or unset it)`);
577
+ await backend.close();
567
578
  return 2;
568
579
  }
569
580
  assertRetentionLaneWirable({
@@ -571,8 +582,8 @@ export async function runLocal(argv, deps = {}) {
571
582
  executor: undefined,
572
583
  stores: [
573
584
  { name: "sessionStore", store: sessionStore },
574
- { name: "checkpointStore", store: fileBackend.checkpointStore },
575
- { name: "toolResultStore", store: fileBackend.toolResultStore },
585
+ { name: "checkpointStore", store: engineStores.checkpointStore },
586
+ { name: "toolResultStore", store: backend.toolResult() },
576
587
  ],
577
588
  locked: (config.lockedConfigKeys ?? []).includes("retentionPolicy"),
578
589
  });
@@ -581,8 +592,8 @@ export async function runLocal(argv, deps = {}) {
581
592
  logger,
582
593
  retentionStores: [
583
594
  { name: "sessionStore", store: sessionStore },
584
- { name: "checkpointStore", store: fileBackend.checkpointStore },
585
- { name: "toolResultStore", store: fileBackend.toolResultStore },
595
+ { name: "checkpointStore", store: engineStores.checkpointStore },
596
+ { name: "toolResultStore", store: backend.toolResult() },
586
597
  ],
587
598
  retentionExecutor: null,
588
599
  });
@@ -594,21 +605,22 @@ export async function runLocal(argv, deps = {}) {
594
605
  engineDataRoot,
595
606
  governanceSeams,
596
607
  logger,
597
- hands: { commitCoAuthor: "Sema <noreply@vivi-ai.com>" },
608
+ commitCoAuthor: "Sema <noreply@vivi-ai.com>",
598
609
  brain,
599
610
  pricing,
600
611
  tracer: createTracer(metrics),
601
612
  promptSource,
602
613
  executionEnvFactory,
603
614
  lspManager,
604
- backgroundAgentStore: fileBackend.backgroundAgentStore,
605
- mailboxStore: fileBackend.mailboxStore,
606
- rosterStore: fileBackend.rosterStore,
615
+ backgroundAgentStore: engineStores.backgroundAgentStore,
616
+ mailboxStore: engineStores.mailboxStore,
617
+ rosterStore: engineStores.rosterStore,
607
618
  deploymentMods,
608
- toolResultStore: fileBackend.toolResultStore,
619
+ toolResultStore: backend.toolResult(),
620
+ fileHistoryStore: undefined,
609
621
  checkpointStore: undefined,
610
- sessionPolicyStore: fileBackend.sessionPolicyStore,
611
- usageWindowStore: config.usageWindows ? fileBackend.usageWindowStore : undefined,
622
+ sessionPolicyStore: backend.sessionPolicy(),
623
+ usageWindowStore: config.usageWindows ? backend.fileUsageWindowStore() : undefined,
612
624
  orgMemoryAdmission,
613
625
  sharedMemoryStores: undefined,
614
626
  mcpRevocations: undefined,
@@ -640,7 +652,7 @@ export async function runLocal(argv, deps = {}) {
640
652
  const scenarioDeps = {
641
653
  runner, subRunner, model: DEFAULT_MODEL_REF, skills, repoClient, logger,
642
654
  ...(webSearch ? { webSearch } : {}),
643
- backgroundAgentStore: fileBackend.backgroundAgentStore,
655
+ backgroundAgentStore: engineStores.backgroundAgentStore,
644
656
  taskListStoreFor: taskListLane.storeFor,
645
657
  };
646
658
  const scenarios = buildScenarios(scenarioDeps);
@@ -657,21 +669,25 @@ export async function runLocal(argv, deps = {}) {
657
669
  }
658
670
  catch (err) {
659
671
  if (err instanceof HttpError) {
660
- printErr(`cannot run scenario "${scenarioName}": ${err.message}`);
672
+ await printErr(`cannot run scenario "${scenarioName}": ${err.message}`);
661
673
  if (scenarioName === "scan")
662
- printErr("(the `scan` scenario needs a git API base URL and a repo — run-local cannot supply a repo; use the default scenario)");
674
+ await printErr("(the `scan` scenario needs a git API base URL and a repo — run-local cannot supply a repo; use the default scenario)");
663
675
  void lspManager?.dispose();
664
- await fileBackend.dispose();
676
+ await backend.close();
665
677
  return 2;
666
678
  }
667
679
  throw err;
668
680
  }
669
- const mention = resolveTaskModel(undefined, args.objective, config.models, DEFAULT_AT_MENTION, config.modelRefusals);
670
- if (mention.unavailable !== undefined) {
671
- const { requested, name, refusal } = mention.unavailable;
672
- printErr(`cannot run: ${modelUnavailableMessage("@-mention", requested, name, refusal)}`);
681
+ const { picked: mention } = pickUserModel(config, undefined, args.objective);
682
+ const mentionRefusal = mention.unavailable !== undefined
683
+ ? modelUnavailableMessage("@-mention", mention.unavailable.requested, mention.unavailable.name, mention.unavailable.refusal)
684
+ : mention.notAllowed !== undefined
685
+ ? modelNotAllowedMessage("@-mention", mention.notAllowed.requested, mention.notAllowed.resolved)
686
+ : undefined;
687
+ if (mentionRefusal !== undefined) {
688
+ await printErr(`cannot run: ${mentionRefusal}`);
673
689
  void lspManager?.dispose();
674
- await fileBackend.dispose();
690
+ await backend.close();
675
691
  return 2;
676
692
  }
677
693
  const scope = args.user ?? "local";
@@ -680,9 +696,9 @@ export async function runLocal(argv, deps = {}) {
680
696
  assertProjectLayerOwnable(scope, "--user");
681
697
  }
682
698
  catch (err) {
683
- printErr(err instanceof Error ? err.message : String(err));
699
+ await printErr(err instanceof Error ? err.message : String(err));
684
700
  void lspManager?.dispose();
685
- await fileBackend.dispose();
701
+ await backend.close();
686
702
  return 2;
687
703
  }
688
704
  }
@@ -720,7 +736,7 @@ export async function runLocal(argv, deps = {}) {
720
736
  ...(a2a ? { a2a } : {}),
721
737
  ...(Object.keys(limits).length > 0 ? { limits } : {}),
722
738
  }, config, workspaceDir), onAsk);
723
- logger.info("run_local_start", { scenario: scenarioName, model: spec.model, sessionId, exec: executionLaneOf(config.remoteExec?.provider) });
739
+ logger.info("run_local_start", { scenario: scenarioName, model: spec.model, sessionId, exec: config.remoteExec.provider });
724
740
  const settleSessionBackground = async () => {
725
741
  const reaped = defaultTaskRegistry.reapSessionBackground(sessionId, scope);
726
742
  if (reaped === 0)
@@ -728,7 +744,7 @@ export async function runLocal(argv, deps = {}) {
728
744
  const deadline = Date.now() + 5_000;
729
745
  try {
730
746
  for (;;) {
731
- const running = (await fileBackend.backgroundAgentStore.listByScope(scope, { status: "running" })).length;
747
+ const running = (await engineStores.backgroundAgentStore.listByScope(scope, { status: "running" })).length;
732
748
  if (running === 0)
733
749
  return;
734
750
  if (Date.now() >= deadline) {
@@ -749,29 +765,29 @@ export async function runLocal(argv, deps = {}) {
749
765
  result = await taskRunner.runTask(spec);
750
766
  }
751
767
  catch (err) {
752
- printErr(`task crashed: ${err instanceof Error ? err.message : String(err)}`);
768
+ await printErr(`task crashed: ${err instanceof Error ? err.message : String(err)}`);
753
769
  await settleSessionBackground();
754
770
  runner.sessions.dispose();
755
771
  subRunner.sessions.dispose();
756
772
  void lspManager?.dispose();
757
- await fileBackend.dispose();
773
+ await backend.close();
758
774
  return 1;
759
775
  }
760
776
  const unfinishedStop = unfinishedStopOf(result, refusedWithoutPerson);
761
777
  if (args.json) {
762
- print(JSON.stringify(result, null, 2));
778
+ await print(JSON.stringify(result, null, 2));
763
779
  }
764
780
  else if (result.terminal.kind === "completed") {
765
- print(result.result);
781
+ await print(result.result);
766
782
  if (unfinishedStop !== undefined)
767
- printErr(buildUnfinishedStopFooter(unfinishedStop, sessionId));
783
+ await printErr(buildUnfinishedStopFooter(unfinishedStop, sessionId));
768
784
  }
769
785
  else {
770
786
  const plane = outwardPlane(result.terminal);
771
787
  const salvage = result.result || result.salvagedOutput || plane.blockedReason || "";
772
788
  if (salvage)
773
- print(salvage);
774
- printErr(`task ${plane.status}${plane.errorCode ? ` (${plane.errorCode})` : ""}${plane.errorMessage ? `: ${plane.errorMessage}` : ""}`);
789
+ await print(salvage);
790
+ await printErr(`task ${plane.status}${plane.errorCode ? ` (${plane.errorCode})` : ""}${plane.errorMessage ? `: ${plane.errorMessage}` : ""}`);
775
791
  }
776
792
  if (result.terminal.kind !== "completed" || unfinishedStop !== undefined)
777
793
  exitCode = 1;
@@ -781,7 +797,7 @@ export async function runLocal(argv, deps = {}) {
781
797
  runner.sessions.dispose();
782
798
  subRunner.sessions.dispose();
783
799
  void lspManager?.dispose();
784
- await fileBackend.dispose();
800
+ await backend.close();
785
801
  return exitCode;
786
802
  }
787
803
  const RUN_LOCAL_SIGNAL_EXIT_CODE = { SIGINT: 130, SIGTERM: 143 };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * `REAP_RUN_STALE_SEC` 的缺省值(秒)—— 唯一字面量。读者两处:配置装配(`config.ts`,env 缺席时)与 run 店的缺省判活窗
3
+ * (`plugins/store-contracts.ts` 的 {@link RUN_STALL_DEFAULT_WIRING}:不经后端装配、直接构造的店用它;生产装配一律递活配置的 getter)。
4
+ * 纯叶:零 import(配置层不得值引 plugins 层,所以它不住在店的契约文件里)。
5
+ */
6
+ export declare const RUN_STALE_SEC_DEFAULT = 120;
7
+ //# sourceMappingURL=run-stale-default.d.ts.map
@@ -0,0 +1,2 @@
1
+ export const RUN_STALE_SEC_DEFAULT = 120;
2
+ //# sourceMappingURL=run-stale-default.js.map