@xrkseek/harness 0.5.5 → 0.5.7

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 (320) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/node_modules/@xrkseek/code-runtime/dist/index.d.ts +4 -0
  6. package/node_modules/@xrkseek/code-runtime/dist/index.d.ts.map +1 -1
  7. package/node_modules/@xrkseek/code-runtime/dist/index.js +101 -74
  8. package/node_modules/@xrkseek/code-runtime/dist/index.js.map +1 -1
  9. package/node_modules/@xrkseek/context-fragments/README.md +5 -1
  10. package/node_modules/@xrkseek/context-fragments/dist/index.d.ts +5 -25
  11. package/node_modules/@xrkseek/context-fragments/dist/index.d.ts.map +1 -1
  12. package/node_modules/@xrkseek/context-fragments/dist/index.js +5 -41
  13. package/node_modules/@xrkseek/context-fragments/dist/index.js.map +1 -1
  14. package/node_modules/@xrkseek/core-agent/dist/index.d.ts.map +1 -1
  15. package/node_modules/@xrkseek/core-agent/dist/index.js +6 -3
  16. package/node_modules/@xrkseek/core-agent/dist/index.js.map +1 -1
  17. package/node_modules/@xrkseek/core-agent-loop/dist/cancel-finalize.d.ts +16 -0
  18. package/node_modules/@xrkseek/core-agent-loop/dist/cancel-finalize.d.ts.map +1 -1
  19. package/node_modules/@xrkseek/core-agent-loop/dist/cancel-finalize.js +80 -3
  20. package/node_modules/@xrkseek/core-agent-loop/dist/cancel-finalize.js.map +1 -1
  21. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts +4 -3
  22. package/node_modules/@xrkseek/core-agent-loop/dist/index.d.ts.map +1 -1
  23. package/node_modules/@xrkseek/core-agent-loop/dist/index.js +42 -19
  24. package/node_modules/@xrkseek/core-agent-loop/dist/index.js.map +1 -1
  25. package/node_modules/@xrkseek/core-agent-loop/dist/llm-retry.js +1 -1
  26. package/node_modules/@xrkseek/core-agent-loop/dist/llm-retry.js.map +1 -1
  27. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts +12 -0
  28. package/node_modules/@xrkseek/core-session/dist/compaction.d.ts.map +1 -1
  29. package/node_modules/@xrkseek/core-session/dist/compaction.js +107 -31
  30. package/node_modules/@xrkseek/core-session/dist/compaction.js.map +1 -1
  31. package/node_modules/@xrkseek/core-session/dist/image-offload.d.ts +27 -1
  32. package/node_modules/@xrkseek/core-session/dist/image-offload.d.ts.map +1 -1
  33. package/node_modules/@xrkseek/core-session/dist/image-offload.js +62 -0
  34. package/node_modules/@xrkseek/core-session/dist/image-offload.js.map +1 -1
  35. package/node_modules/@xrkseek/core-session/dist/index.d.ts +2 -2
  36. package/node_modules/@xrkseek/core-session/dist/index.d.ts.map +1 -1
  37. package/node_modules/@xrkseek/core-session/dist/index.js +23 -2
  38. package/node_modules/@xrkseek/core-session/dist/index.js.map +1 -1
  39. package/node_modules/@xrkseek/core-session/dist/safety/mistake.d.ts +2 -1
  40. package/node_modules/@xrkseek/core-session/dist/safety/mistake.d.ts.map +1 -1
  41. package/node_modules/@xrkseek/core-session/dist/safety/mistake.js +8 -4
  42. package/node_modules/@xrkseek/core-session/dist/safety/mistake.js.map +1 -1
  43. package/node_modules/@xrkseek/core-session/dist/sqlite-store.d.ts.map +1 -1
  44. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js +84 -30
  45. package/node_modules/@xrkseek/core-session/dist/sqlite-store.js.map +1 -1
  46. package/node_modules/@xrkseek/core-session/dist/store.d.ts +7 -0
  47. package/node_modules/@xrkseek/core-session/dist/store.d.ts.map +1 -1
  48. package/node_modules/@xrkseek/core-tools/dist/definition.d.ts +2 -0
  49. package/node_modules/@xrkseek/core-tools/dist/definition.d.ts.map +1 -1
  50. package/node_modules/@xrkseek/core-tools/dist/definition.js.map +1 -1
  51. package/node_modules/@xrkseek/core-tools/dist/index.d.ts +1 -1
  52. package/node_modules/@xrkseek/core-tools/dist/index.d.ts.map +1 -1
  53. package/node_modules/@xrkseek/core-tools/dist/index.js.map +1 -1
  54. package/node_modules/@xrkseek/core-tools/dist/pipeline.d.ts +1 -0
  55. package/node_modules/@xrkseek/core-tools/dist/pipeline.d.ts.map +1 -1
  56. package/node_modules/@xrkseek/core-tools/dist/pipeline.js +59 -1
  57. package/node_modules/@xrkseek/core-tools/dist/pipeline.js.map +1 -1
  58. package/node_modules/@xrkseek/core-tools/dist/run-tool.d.ts +6 -0
  59. package/node_modules/@xrkseek/core-tools/dist/run-tool.d.ts.map +1 -1
  60. package/node_modules/@xrkseek/core-tools/dist/run-tool.js +3 -0
  61. package/node_modules/@xrkseek/core-tools/dist/run-tool.js.map +1 -1
  62. package/node_modules/@xrkseek/core-tools/dist/settings-tools.d.ts.map +1 -1
  63. package/node_modules/@xrkseek/core-tools/dist/settings-tools.js +6 -11
  64. package/node_modules/@xrkseek/core-tools/dist/settings-tools.js.map +1 -1
  65. package/node_modules/@xrkseek/core-tools/dist/std-tools.d.ts.map +1 -1
  66. package/node_modules/@xrkseek/core-tools/dist/std-tools.js +5 -8
  67. package/node_modules/@xrkseek/core-tools/dist/std-tools.js.map +1 -1
  68. package/node_modules/@xrkseek/core-tools/dist/types.d.ts +64 -1
  69. package/node_modules/@xrkseek/core-tools/dist/types.d.ts.map +1 -1
  70. package/node_modules/@xrkseek/core-tools/dist/types.js.map +1 -1
  71. package/node_modules/@xrkseek/exec-computer-use/dist/tools.d.ts.map +1 -1
  72. package/node_modules/@xrkseek/exec-computer-use/dist/tools.js +1 -2
  73. package/node_modules/@xrkseek/exec-computer-use/dist/tools.js.map +1 -1
  74. package/node_modules/@xrkseek/exec-fs/dist/index.d.ts.map +1 -1
  75. package/node_modules/@xrkseek/exec-fs/dist/index.js +10 -19
  76. package/node_modules/@xrkseek/exec-fs/dist/index.js.map +1 -1
  77. package/node_modules/@xrkseek/exec-fs/dist/present-deliverable.d.ts.map +1 -1
  78. package/node_modules/@xrkseek/exec-fs/dist/present-deliverable.js +3 -5
  79. package/node_modules/@xrkseek/exec-fs/dist/present-deliverable.js.map +1 -1
  80. package/node_modules/@xrkseek/exec-fs/dist/read-image.d.ts.map +1 -1
  81. package/node_modules/@xrkseek/exec-fs/dist/read-image.js +4 -2
  82. package/node_modules/@xrkseek/exec-fs/dist/read-image.js.map +1 -1
  83. package/node_modules/@xrkseek/exec-fs/dist/search.d.ts +3 -1
  84. package/node_modules/@xrkseek/exec-fs/dist/search.d.ts.map +1 -1
  85. package/node_modules/@xrkseek/exec-fs/dist/search.js +13 -7
  86. package/node_modules/@xrkseek/exec-fs/dist/search.js.map +1 -1
  87. package/node_modules/@xrkseek/exec-image-gen/dist/format.d.ts.map +1 -1
  88. package/node_modules/@xrkseek/exec-image-gen/dist/format.js +1 -0
  89. package/node_modules/@xrkseek/exec-image-gen/dist/format.js.map +1 -1
  90. package/node_modules/@xrkseek/exec-image-gen/dist/schema.d.ts.map +1 -1
  91. package/node_modules/@xrkseek/exec-image-gen/dist/schema.js +3 -5
  92. package/node_modules/@xrkseek/exec-image-gen/dist/schema.js.map +1 -1
  93. package/node_modules/@xrkseek/exec-lsp/dist/tools.js +1 -1
  94. package/node_modules/@xrkseek/exec-lsp/dist/tools.js.map +1 -1
  95. package/node_modules/@xrkseek/exec-memory/dist/tools.d.ts.map +1 -1
  96. package/node_modules/@xrkseek/exec-memory/dist/tools.js +5 -12
  97. package/node_modules/@xrkseek/exec-memory/dist/tools.js.map +1 -1
  98. package/node_modules/@xrkseek/exec-shell/dist/bytes.d.ts +34 -1
  99. package/node_modules/@xrkseek/exec-shell/dist/bytes.d.ts.map +1 -1
  100. package/node_modules/@xrkseek/exec-shell/dist/bytes.js +69 -2
  101. package/node_modules/@xrkseek/exec-shell/dist/bytes.js.map +1 -1
  102. package/node_modules/@xrkseek/exec-shell/dist/index.d.ts.map +1 -1
  103. package/node_modules/@xrkseek/exec-shell/dist/index.js +40 -11
  104. package/node_modules/@xrkseek/exec-shell/dist/index.js.map +1 -1
  105. package/node_modules/@xrkseek/exec-shell/dist/job-view.d.ts.map +1 -1
  106. package/node_modules/@xrkseek/exec-shell/dist/job-view.js +27 -2
  107. package/node_modules/@xrkseek/exec-shell/dist/job-view.js.map +1 -1
  108. package/node_modules/@xrkseek/exec-subprocess/dist/index.d.ts +9 -0
  109. package/node_modules/@xrkseek/exec-subprocess/dist/index.d.ts.map +1 -1
  110. package/node_modules/@xrkseek/exec-subprocess/dist/index.js +43 -0
  111. package/node_modules/@xrkseek/exec-subprocess/dist/index.js.map +1 -1
  112. package/node_modules/@xrkseek/exec-video-analyze/dist/tools.d.ts.map +1 -1
  113. package/node_modules/@xrkseek/exec-video-analyze/dist/tools.js +3 -4
  114. package/node_modules/@xrkseek/exec-video-analyze/dist/tools.js.map +1 -1
  115. package/node_modules/@xrkseek/exec-video-gen/dist/schema.d.ts.map +1 -1
  116. package/node_modules/@xrkseek/exec-video-gen/dist/schema.js +3 -6
  117. package/node_modules/@xrkseek/exec-video-gen/dist/schema.js.map +1 -1
  118. package/node_modules/@xrkseek/exec-web/dist/browser-tools.d.ts.map +1 -1
  119. package/node_modules/@xrkseek/exec-web/dist/browser-tools.js +5 -7
  120. package/node_modules/@xrkseek/exec-web/dist/browser-tools.js.map +1 -1
  121. package/node_modules/@xrkseek/exec-web/dist/tools.js +2 -2
  122. package/node_modules/@xrkseek/exec-web/dist/tools.js.map +1 -1
  123. package/node_modules/@xrkseek/llm/dist/failure.d.ts +8 -0
  124. package/node_modules/@xrkseek/llm/dist/failure.d.ts.map +1 -1
  125. package/node_modules/@xrkseek/llm/dist/failure.js +43 -1
  126. package/node_modules/@xrkseek/llm/dist/failure.js.map +1 -1
  127. package/node_modules/@xrkseek/llm/dist/index.d.ts +32 -2
  128. package/node_modules/@xrkseek/llm/dist/index.d.ts.map +1 -1
  129. package/node_modules/@xrkseek/llm/dist/index.js +49 -3
  130. package/node_modules/@xrkseek/llm/dist/index.js.map +1 -1
  131. package/node_modules/@xrkseek/llm/dist/retry-policy.d.ts +20 -2
  132. package/node_modules/@xrkseek/llm/dist/retry-policy.d.ts.map +1 -1
  133. package/node_modules/@xrkseek/llm/dist/retry-policy.js +46 -17
  134. package/node_modules/@xrkseek/llm/dist/retry-policy.js.map +1 -1
  135. package/node_modules/@xrkseek/llm/dist/stream-idle-timeout.d.ts +46 -0
  136. package/node_modules/@xrkseek/llm/dist/stream-idle-timeout.d.ts.map +1 -0
  137. package/node_modules/@xrkseek/llm/dist/stream-idle-timeout.js +141 -0
  138. package/node_modules/@xrkseek/llm/dist/stream-idle-timeout.js.map +1 -0
  139. package/node_modules/@xrkseek/llm-anthropic/dist/index.d.ts +9 -0
  140. package/node_modules/@xrkseek/llm-anthropic/dist/index.d.ts.map +1 -1
  141. package/node_modules/@xrkseek/llm-anthropic/dist/index.js +27 -11
  142. package/node_modules/@xrkseek/llm-anthropic/dist/index.js.map +1 -1
  143. package/node_modules/@xrkseek/llm-gemini/dist/index.d.ts +9 -0
  144. package/node_modules/@xrkseek/llm-gemini/dist/index.d.ts.map +1 -1
  145. package/node_modules/@xrkseek/llm-gemini/dist/index.js +26 -10
  146. package/node_modules/@xrkseek/llm-gemini/dist/index.js.map +1 -1
  147. package/node_modules/@xrkseek/llm-openai-compatible/dist/index.d.ts +9 -0
  148. package/node_modules/@xrkseek/llm-openai-compatible/dist/index.d.ts.map +1 -1
  149. package/node_modules/@xrkseek/llm-openai-compatible/dist/index.js +60 -16
  150. package/node_modules/@xrkseek/llm-openai-compatible/dist/index.js.map +1 -1
  151. package/node_modules/@xrkseek/llm-openai-responses/dist/index.d.ts +10 -0
  152. package/node_modules/@xrkseek/llm-openai-responses/dist/index.d.ts.map +1 -1
  153. package/node_modules/@xrkseek/llm-openai-responses/dist/index.js +26 -10
  154. package/node_modules/@xrkseek/llm-openai-responses/dist/index.js.map +1 -1
  155. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts +12 -5
  156. package/node_modules/@xrkseek/preset-harness/dist/preset.d.ts.map +1 -1
  157. package/node_modules/@xrkseek/preset-harness/dist/preset.js +25 -6
  158. package/node_modules/@xrkseek/preset-harness/dist/preset.js.map +1 -1
  159. package/node_modules/@xrkseek/preset-harness/dist/tsconfig.tsbuildinfo +1 -1
  160. package/node_modules/@xrkseek/preset-minimal/dist/tsconfig.tsbuildinfo +1 -1
  161. package/node_modules/@xrkseek/preset-server/dist/preset.js +2 -2
  162. package/node_modules/@xrkseek/preset-server/dist/preset.js.map +1 -1
  163. package/node_modules/@xrkseek/preset-server/dist/tsconfig.tsbuildinfo +1 -1
  164. package/node_modules/@xrkseek/protocol/dist/tools.d.ts +2 -0
  165. package/node_modules/@xrkseek/protocol/dist/tools.d.ts.map +1 -1
  166. package/node_modules/@xrkseek/server-cron/dist/tools.d.ts.map +1 -1
  167. package/node_modules/@xrkseek/server-cron/dist/tools.js +1 -2
  168. package/node_modules/@xrkseek/server-cron/dist/tools.js.map +1 -1
  169. package/node_modules/@xrkseek/server-face/dist/approvals.d.ts +9 -2
  170. package/node_modules/@xrkseek/server-face/dist/approvals.d.ts.map +1 -1
  171. package/node_modules/@xrkseek/server-face/dist/approvals.js +8 -4
  172. package/node_modules/@xrkseek/server-face/dist/approvals.js.map +1 -1
  173. package/node_modules/@xrkseek/server-face/dist/auto-review-approve.d.ts +24 -0
  174. package/node_modules/@xrkseek/server-face/dist/auto-review-approve.d.ts.map +1 -0
  175. package/node_modules/@xrkseek/server-face/dist/auto-review-approve.js +43 -0
  176. package/node_modules/@xrkseek/server-face/dist/auto-review-approve.js.map +1 -0
  177. package/node_modules/@xrkseek/server-face/dist/canvas-store.d.ts +10 -0
  178. package/node_modules/@xrkseek/server-face/dist/canvas-store.d.ts.map +1 -1
  179. package/node_modules/@xrkseek/server-face/dist/canvas-store.js +43 -6
  180. package/node_modules/@xrkseek/server-face/dist/canvas-store.js.map +1 -1
  181. package/node_modules/@xrkseek/server-face/dist/canvas-tools.d.ts.map +1 -1
  182. package/node_modules/@xrkseek/server-face/dist/canvas-tools.js +6 -3
  183. package/node_modules/@xrkseek/server-face/dist/canvas-tools.js.map +1 -1
  184. package/node_modules/@xrkseek/server-face/dist/context.d.ts +12 -2
  185. package/node_modules/@xrkseek/server-face/dist/context.d.ts.map +1 -1
  186. package/node_modules/@xrkseek/server-face/dist/dispatch.d.ts.map +1 -1
  187. package/node_modules/@xrkseek/server-face/dist/dispatch.js +3 -1
  188. package/node_modules/@xrkseek/server-face/dist/dispatch.js.map +1 -1
  189. package/node_modules/@xrkseek/server-face/dist/durable-prompt.d.ts +14 -1
  190. package/node_modules/@xrkseek/server-face/dist/durable-prompt.d.ts.map +1 -1
  191. package/node_modules/@xrkseek/server-face/dist/durable-prompt.js +38 -3
  192. package/node_modules/@xrkseek/server-face/dist/durable-prompt.js.map +1 -1
  193. package/node_modules/@xrkseek/server-face/dist/face-schema.d.ts +14 -1
  194. package/node_modules/@xrkseek/server-face/dist/face-schema.d.ts.map +1 -1
  195. package/node_modules/@xrkseek/server-face/dist/face-schema.js +14 -1
  196. package/node_modules/@xrkseek/server-face/dist/face-schema.js.map +1 -1
  197. package/node_modules/@xrkseek/server-face/dist/handlers/job.d.ts +8 -0
  198. package/node_modules/@xrkseek/server-face/dist/handlers/job.d.ts.map +1 -1
  199. package/node_modules/@xrkseek/server-face/dist/handlers/job.js +16 -0
  200. package/node_modules/@xrkseek/server-face/dist/handlers/job.js.map +1 -1
  201. package/node_modules/@xrkseek/server-face/dist/handlers/session.d.ts.map +1 -1
  202. package/node_modules/@xrkseek/server-face/dist/handlers/session.js +111 -25
  203. package/node_modules/@xrkseek/server-face/dist/handlers/session.js.map +1 -1
  204. package/node_modules/@xrkseek/server-face/dist/host-open-path.d.ts.map +1 -1
  205. package/node_modules/@xrkseek/server-face/dist/host-open-path.js +7 -2
  206. package/node_modules/@xrkseek/server-face/dist/host-open-path.js.map +1 -1
  207. package/node_modules/@xrkseek/server-face/dist/index.d.ts +5 -3
  208. package/node_modules/@xrkseek/server-face/dist/index.d.ts.map +1 -1
  209. package/node_modules/@xrkseek/server-face/dist/index.js +5 -3
  210. package/node_modules/@xrkseek/server-face/dist/index.js.map +1 -1
  211. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts +11 -0
  212. package/node_modules/@xrkseek/server-face/dist/model-catalog.d.ts.map +1 -1
  213. package/node_modules/@xrkseek/server-face/dist/model-catalog.js +25 -3
  214. package/node_modules/@xrkseek/server-face/dist/model-catalog.js.map +1 -1
  215. package/node_modules/@xrkseek/server-face/dist/permission-auto.d.ts +51 -0
  216. package/node_modules/@xrkseek/server-face/dist/permission-auto.d.ts.map +1 -0
  217. package/node_modules/@xrkseek/server-face/dist/permission-auto.js +106 -0
  218. package/node_modules/@xrkseek/server-face/dist/permission-auto.js.map +1 -0
  219. package/node_modules/@xrkseek/server-face/dist/permissions.d.ts +38 -4
  220. package/node_modules/@xrkseek/server-face/dist/permissions.d.ts.map +1 -1
  221. package/node_modules/@xrkseek/server-face/dist/permissions.js +131 -24
  222. package/node_modules/@xrkseek/server-face/dist/permissions.js.map +1 -1
  223. package/node_modules/@xrkseek/server-face/dist/projections/install-defaults.d.ts +8 -0
  224. package/node_modules/@xrkseek/server-face/dist/projections/install-defaults.d.ts.map +1 -1
  225. package/node_modules/@xrkseek/server-face/dist/projections/install-defaults.js +9 -3
  226. package/node_modules/@xrkseek/server-face/dist/projections/install-defaults.js.map +1 -1
  227. package/node_modules/@xrkseek/server-face/dist/projections/units/auto-review.d.ts +22 -1
  228. package/node_modules/@xrkseek/server-face/dist/projections/units/auto-review.d.ts.map +1 -1
  229. package/node_modules/@xrkseek/server-face/dist/projections/units/auto-review.js +18 -15
  230. package/node_modules/@xrkseek/server-face/dist/projections/units/auto-review.js.map +1 -1
  231. package/node_modules/@xrkseek/server-face/dist/projections/units/permissions.d.ts +4 -1
  232. package/node_modules/@xrkseek/server-face/dist/projections/units/permissions.d.ts.map +1 -1
  233. package/node_modules/@xrkseek/server-face/dist/projections/units/permissions.js +8 -5
  234. package/node_modules/@xrkseek/server-face/dist/projections/units/permissions.js.map +1 -1
  235. package/node_modules/@xrkseek/server-face/dist/projections/units/session-stats.d.ts +15 -3
  236. package/node_modules/@xrkseek/server-face/dist/projections/units/session-stats.d.ts.map +1 -1
  237. package/node_modules/@xrkseek/server-face/dist/projections/units/session-stats.js +30 -9
  238. package/node_modules/@xrkseek/server-face/dist/projections/units/session-stats.js.map +1 -1
  239. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts +6 -0
  240. package/node_modules/@xrkseek/server-face/dist/runtime.d.ts.map +1 -1
  241. package/node_modules/@xrkseek/server-face/dist/runtime.js +38 -7
  242. package/node_modules/@xrkseek/server-face/dist/runtime.js.map +1 -1
  243. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts +0 -2
  244. package/node_modules/@xrkseek/server-face/dist/session-status.d.ts.map +1 -1
  245. package/node_modules/@xrkseek/server-face/dist/session-status.js +143 -37
  246. package/node_modules/@xrkseek/server-face/dist/session-status.js.map +1 -1
  247. package/node_modules/@xrkseek/server-face/dist/settings-schemas.d.ts.map +1 -1
  248. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js +6 -9
  249. package/node_modules/@xrkseek/server-face/dist/settings-schemas.js.map +1 -1
  250. package/node_modules/@xrkseek/server-face/dist/slash.d.ts.map +1 -1
  251. package/node_modules/@xrkseek/server-face/dist/slash.js +20 -5
  252. package/node_modules/@xrkseek/server-face/dist/slash.js.map +1 -1
  253. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts +13 -0
  254. package/node_modules/@xrkseek/server-face/dist/subagent-tools.d.ts.map +1 -1
  255. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js +82 -5
  256. package/node_modules/@xrkseek/server-face/dist/subagent-tools.js.map +1 -1
  257. package/node_modules/@xrkseek/server-face/dist/types.d.ts +12 -0
  258. package/node_modules/@xrkseek/server-face/dist/types.d.ts.map +1 -1
  259. package/node_modules/@xrkseek/server-face/dist/workspace-face.d.ts +2 -0
  260. package/node_modules/@xrkseek/server-face/dist/workspace-face.d.ts.map +1 -1
  261. package/node_modules/@xrkseek/server-face/dist/workspace-face.js +85 -8
  262. package/node_modules/@xrkseek/server-face/dist/workspace-face.js.map +1 -1
  263. package/node_modules/@xrkseek/server-face/dist/workspace-registry.d.ts +30 -3
  264. package/node_modules/@xrkseek/server-face/dist/workspace-registry.d.ts.map +1 -1
  265. package/node_modules/@xrkseek/server-face/dist/workspace-registry.js +87 -17
  266. package/node_modules/@xrkseek/server-face/dist/workspace-registry.js.map +1 -1
  267. package/node_modules/@xrkseek/server-face/dist/workspace-store.d.ts +2 -0
  268. package/node_modules/@xrkseek/server-face/dist/workspace-store.d.ts.map +1 -1
  269. package/node_modules/@xrkseek/server-face/dist/workspace-store.js +4 -0
  270. package/node_modules/@xrkseek/server-face/dist/workspace-store.js.map +1 -1
  271. package/node_modules/@xrkseek/server-host/dist/auto-review-bridge.d.ts +5 -0
  272. package/node_modules/@xrkseek/server-host/dist/auto-review-bridge.d.ts.map +1 -1
  273. package/node_modules/@xrkseek/server-host/dist/auto-review-bridge.js +3 -2
  274. package/node_modules/@xrkseek/server-host/dist/auto-review-bridge.js.map +1 -1
  275. package/node_modules/@xrkseek/server-host/dist/index.d.ts +6 -2
  276. package/node_modules/@xrkseek/server-host/dist/index.d.ts.map +1 -1
  277. package/node_modules/@xrkseek/server-host/dist/index.js +148 -17
  278. package/node_modules/@xrkseek/server-host/dist/index.js.map +1 -1
  279. package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.d.ts.map +1 -1
  280. package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.js +6 -3
  281. package/node_modules/@xrkseek/server-host/dist/sidebar-face-bridge.js.map +1 -1
  282. package/node_modules/@xrkseek/server-http/dist/dsh-compat/adapter-providers.d.ts.map +1 -1
  283. package/node_modules/@xrkseek/server-http/dist/dsh-compat/adapter-providers.js +3 -0
  284. package/node_modules/@xrkseek/server-http/dist/dsh-compat/adapter-providers.js.map +1 -1
  285. package/node_modules/@xrkseek/server-http/dist/dsh-compat/adapter-types.d.ts +12 -0
  286. package/node_modules/@xrkseek/server-http/dist/dsh-compat/adapter-types.d.ts.map +1 -1
  287. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-classifier.d.ts +168 -4
  288. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-classifier.d.ts.map +1 -1
  289. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-classifier.js +466 -13
  290. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-classifier.js.map +1 -1
  291. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-history.d.ts +53 -0
  292. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-history.d.ts.map +1 -0
  293. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-history.js +177 -0
  294. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-history.js.map +1 -0
  295. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-http.d.ts +45 -2
  296. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-http.d.ts.map +1 -1
  297. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-http.js +148 -10
  298. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-http.js.map +1 -1
  299. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-tool-pre.d.ts +123 -0
  300. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-tool-pre.d.ts.map +1 -0
  301. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-tool-pre.js +299 -0
  302. package/node_modules/@xrkseek/server-http/dist/dsh-compat/auto-review-tool-pre.js.map +1 -0
  303. package/node_modules/@xrkseek/server-http/dist/dsh-compat/index.d.ts +5 -3
  304. package/node_modules/@xrkseek/server-http/dist/dsh-compat/index.d.ts.map +1 -1
  305. package/node_modules/@xrkseek/server-http/dist/dsh-compat/index.js +4 -2
  306. package/node_modules/@xrkseek/server-http/dist/dsh-compat/index.js.map +1 -1
  307. package/node_modules/@xrkseek/server-http/dist/index.d.ts +1 -1
  308. package/node_modules/@xrkseek/server-http/dist/index.d.ts.map +1 -1
  309. package/node_modules/@xrkseek/server-http/dist/index.js +1 -1
  310. package/node_modules/@xrkseek/server-http/dist/index.js.map +1 -1
  311. package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-prefs-store.d.ts.map +1 -1
  312. package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-prefs-store.js +3 -1
  313. package/node_modules/@xrkseek/server-http/dist/sidebar/sidebar-prefs-store.js.map +1 -1
  314. package/node_modules/@xrkseek/server-http/package.json +46 -44
  315. package/node_modules/@xrkseek/workspace/dist/skill-propose.d.ts.map +1 -1
  316. package/node_modules/@xrkseek/workspace/dist/skill-propose.js +1 -2
  317. package/node_modules/@xrkseek/workspace/dist/skill-propose.js.map +1 -1
  318. package/node_modules/@xrkseek/workspace/dist/skill-tools.js +1 -1
  319. package/node_modules/@xrkseek/workspace/dist/skill-tools.js.map +1 -1
  320. package/package.json +1 -1
@@ -1,4 +1,9 @@
1
+ /**
2
+ * Face `/auto-review` slash + projection live stats → dsh-compat HTTP store.
3
+ */
4
+ import { readAutoReviewStats } from "@xrkseek/server-http";
1
5
  export declare function createAutoReviewBridgeFromHost(xrkHome: string): {
2
6
  readonly autoReviewSlashPersist: (args: string) => void;
7
+ readonly readAutoReviewLiveStats: () => ReturnType<typeof readAutoReviewStats>;
3
8
  };
4
9
  //# sourceMappingURL=auto-review-bridge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-review-bridge.d.ts","sourceRoot":"","sources":["../src/auto-review-bridge.ts"],"names":[],"mappings":"AAKA,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC/D,QAAQ,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD,CAKA"}
1
+ {"version":3,"file":"auto-review-bridge.d.ts","sourceRoot":"","sources":["../src/auto-review-bridge.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,mBAAmB,EAEpB,MAAM,sBAAsB,CAAC;AAE9B,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC/D,QAAQ,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACxD,QAAQ,CAAC,uBAAuB,EAAE,MAAM,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;CAChF,CAMA"}
@@ -1,10 +1,11 @@
1
1
  /**
2
- * Face `/auto-review` slash → dsh-compat HTTP persistence bridge.
2
+ * Face `/auto-review` slash + projection live stats → dsh-compat HTTP store.
3
3
  */
4
- import { syncAutoReviewSlashCommand } from "@xrkseek/server-http";
4
+ import { readAutoReviewStats, syncAutoReviewSlashCommand, } from "@xrkseek/server-http";
5
5
  export function createAutoReviewBridgeFromHost(xrkHome) {
6
6
  return {
7
7
  autoReviewSlashPersist: (args) => syncAutoReviewSlashCommand({ xrkHome }, args),
8
+ readAutoReviewLiveStats: () => readAutoReviewStats({ xrkHome }),
8
9
  };
9
10
  }
10
11
  //# sourceMappingURL=auto-review-bridge.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"auto-review-bridge.js","sourceRoot":"","sources":["../src/auto-review-bridge.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAElE,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAG5D,OAAO;QACL,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC/B,0BAA0B,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;KAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"auto-review-bridge.js","sourceRoot":"","sources":["../src/auto-review-bridge.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,mBAAmB,EACnB,0BAA0B,GAC3B,MAAM,sBAAsB,CAAC;AAE9B,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAI5D,OAAO;QACL,sBAAsB,EAAE,CAAC,IAAI,EAAE,EAAE,CAC/B,0BAA0B,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,CAAC;QAC/C,uBAAuB,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC;KAChE,CAAC;AACJ,CAAC"}
@@ -124,8 +124,6 @@ export type AgentFactory = (input: {
124
124
  };
125
125
  /** Face `agent-loop.toolResultMaxInlineBytes` — spill ceiling (`0` disables). */
126
126
  toolResultMaxInlineBytes?: number;
127
- /** Face `agent-loop.guardianFragments` — thin Guardian turn-start nudge. */
128
- guardianFragments?: boolean;
129
127
  /** Merged Face web-search + vault keys for `createDefaultWebAccess({ search })`. */
130
128
  webSearch?: import("@xrkseek/exec-web").SearchAccessConfig;
131
129
  /** Face `workspace-inject.injectMaxChars` — rules/skills inject budget. */
@@ -195,6 +193,12 @@ export type AgentFactory = (input: {
195
193
  * section so reasoning follows the UI language.
196
194
  */
197
195
  locale?: "zh" | "en";
196
+ /**
197
+ * Auto-review tool pre (Host wires classifier tiers + enable gate).
198
+ * Session Auto = no sandbox + per-call review — not a context-fragment.
199
+ * Ask → Face approval via `setApprovalHandler`.
200
+ */
201
+ autoReviewPre?: import("@xrkseek/core-tools").PreHandler;
198
202
  }) => Promise<AgentHandle>;
199
203
  export type { SessionDrainControl } from "./drain-status.js";
200
204
  export interface HostInstance {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ import { createMemorySessionStore, createPersistentSessionStore, createSessionDr
3
3
  import { createProviderRegistry } from "@xrkseek/llm-registry";
4
4
  import { loadPolicyRulesetFile } from "@xrkseek/policy";
5
5
  import { flattenText, isHumanUserMessageSource } from "@xrkseek/protocol";
6
- import { effectiveSandboxMode, shouldConfineSandbox, } from "@xrkseek/protocol";
6
+ import { effectiveApprovalPolicy, effectiveSandboxMode, shouldConfineSandbox, } from "@xrkseek/protocol";
7
7
  import { runCuratedMemoryConsolidate, resolveMemoryProvider, } from "@xrkseek/exec-memory";
8
8
  import { runSkillCurator } from "@xrkseek/workspace";
9
9
  import { resolveSecretStore } from "@xrkseek/secrets";
@@ -14,8 +14,8 @@ import { watchPolicyFile } from "./policy-file-watch.js";
14
14
  import { createA2aInboundPublicHandler } from "./a2a-inbound-public.js";
15
15
  import { createCronApiHandler } from "./cron-http.js";
16
16
  import { tryMountHostIsolatingWorkflowEngine } from "./workflow-engine-mount.js";
17
- import { applyXrkProductBootPolicy, chainPublicHandlers, ensureDshCompatHostPlugin, createLiveHostPluginsPublicHandler, createHttpServer, createXrkPluginPublicHandler, createSidebarPublicHandler, prewarmDshCompatAdapters, shutdownDshCompatServices, applyHostPackageByName, stopHostPackageFiber, listHostAppliedPackages, invokeDshCompatRpc, attachDshCompatUpgrades, DSH_SETTINGS_NAMESPACES, DSH_SETTINGS_DEFAULTS, runPluginMutate, ensureXrkPlatformClientBootEntries, injectBootIntoHtml, injectBootThemeIntoHtml, injectMobileAccessShellIntoHtml, loadBootManifestFromWebDist, mergeWebBootManifests, resolveWebBootManifest, createXrkWalletPort, createMobileAccessGateChecker, createMobileAccessGateHandler, loadSidebarPrefs, } from "@xrkseek/server-http";
18
- import { attachFaceUpgrades, bindSubagentTools, bindSessionQueryTools, createFaceRuntime, effectiveHostApiKey, ensureMcpLiveIfIdle, isLoopbackAddress, listCredentialSlots, peekSettingsYamlSection, publishRemoteEvent, createSessionRoutingLlm, liveRouteAllowsImageInput, resolveSessionCwd, canonicalAgentPresetId, resolveAgentPresetProfile, effectiveSessionAgentPreset, DEFAULT_MAX_DEPTH, DEFAULT_MAX_ACTIVE_CHILDREN, tryHandleFaceHttp, isPluginSoftDisabledAt, readDisabledPluginIdsAt, readManagedPackageIndexAt, reconcileManagedProcessPlugins, snapshotSessionWorkspace, SNAPSHOT_DRAIN_BUDGET_MS, } from "@xrkseek/server-face";
17
+ import { applyXrkProductBootPolicy, chainPublicHandlers, ensureDshCompatHostPlugin, createLiveHostPluginsPublicHandler, createHttpServer, createXrkPluginPublicHandler, createSidebarPublicHandler, prewarmDshCompatAdapters, shutdownDshCompatServices, applyHostPackageByName, stopHostPackageFiber, listHostAppliedPackages, invokeDshCompatRpc, attachDshCompatUpgrades, DSH_SETTINGS_NAMESPACES, DSH_SETTINGS_DEFAULTS, runPluginMutate, ensureXrkPlatformClientBootEntries, injectBootIntoHtml, injectBootThemeIntoHtml, injectMobileAccessShellIntoHtml, loadBootManifestFromWebDist, mergeWebBootManifests, resolveWebBootManifest, createXrkWalletPort, createMobileAccessGateChecker, createMobileAccessGateHandler, loadSidebarPrefs, createAutoReviewToolPre, isAutoReviewEnabled, setAutoReviewEnabled, } from "@xrkseek/server-http";
18
+ import { attachFaceUpgrades, bindSubagentTools, bindSessionQueryTools, createFaceRuntime, effectiveHostApiKey, ensureMcpLiveIfIdle, isLoopbackAddress, listCredentialSlots, peekSettingsYamlSection, publishRemoteEvent, createSessionRoutingLlm, liveRouteAllowsImageInput, resolveSessionCwd, canonicalAgentPresetId, resolveAgentPresetProfile, effectiveSessionAgentPreset, DEFAULT_MAX_DEPTH, DEFAULT_MAX_ACTIVE_CHILDREN, tryHandleFaceHttp, isPluginSoftDisabledAt, readDisabledPluginIdsAt, readManagedPackageIndexAt, reconcileManagedProcessPlugins, snapshotSessionWorkspace, SNAPSHOT_DRAIN_BUDGET_MS, migrateAutoSessionsToFullAccess, approvePendingAutoReview, } from "@xrkseek/server-face";
19
19
  import { createPluginLoader, composeHostPolicyEngine, wireCompositionChannels, wireCompositionLlm, collectChannelPluginRegistrations, } from "@xrkseek/server-loader";
20
20
  import { existsSync } from "node:fs";
21
21
  import { access } from "node:fs/promises";
@@ -55,12 +55,54 @@ export { loadMcpToolPlugins, mcpDraftsToSpecs, mcpFingerprint, parseMcpServersEn
55
55
  * AbortError with a readable reason. Used by the session drain snapshot race
56
56
  * so a cancellation that interrupts a stuck git/fs call surfaces as a normal
57
57
  * AbortError instead of a bare string or DOMException mismatch.
58
+ *
59
+ * Must not use `String(reason)` — user stop stores `{ kind: "user" }` on
60
+ * `signal.reason`, and String(that) is the useless `[object Object]`.
58
61
  */
59
62
  function hostAbortError(reason) {
60
- const err = new Error(reason === undefined ? "aborted" : String(reason));
63
+ const err = new Error(formatHostAbortReason(reason));
61
64
  err.name = "AbortError";
62
65
  return err;
63
66
  }
67
+ function formatHostAbortReason(reason) {
68
+ if (reason === undefined || reason === null)
69
+ return "aborted";
70
+ if (reason instanceof Error) {
71
+ const message = reason.message.trim();
72
+ return message.length > 0 ? message : reason.name || "aborted";
73
+ }
74
+ if (reason !== null && typeof reason === "object" && "kind" in reason) {
75
+ const kind = reason.kind;
76
+ if (kind === "user")
77
+ return "aborted by user";
78
+ if (kind === "parent")
79
+ return "aborted by parent";
80
+ if (kind === "disposed")
81
+ return "aborted: session disposed";
82
+ if (kind === "legacy")
83
+ return "aborted";
84
+ if (kind === "hook") {
85
+ const hookReason = reason.reason;
86
+ if (typeof hookReason === "string") {
87
+ return `aborted by hook: ${hookReason}`;
88
+ }
89
+ }
90
+ }
91
+ if (typeof reason === "string") {
92
+ const trimmed = reason.trim();
93
+ return trimmed.length > 0 ? trimmed : "aborted";
94
+ }
95
+ try {
96
+ const json = JSON.stringify(reason);
97
+ if (typeof json === "string" && json.length > 0 && json !== "{}") {
98
+ return json;
99
+ }
100
+ }
101
+ catch {
102
+ /* ignore */
103
+ }
104
+ return "aborted";
105
+ }
64
106
  function logMcpReconcile(log, label, result) {
65
107
  if (!log)
66
108
  return;
@@ -724,9 +766,6 @@ export function createHostManager() {
724
766
  toolResultMaxInlineBytes: pluginSettings.toolResultMaxInlineBytes,
725
767
  }
726
768
  : {}),
727
- ...(pluginSettings.guardianFragments !== undefined
728
- ? { guardianFragments: pluginSettings.guardianFragments }
729
- : {}),
730
769
  ...(pluginSettings.locale
731
770
  ? { locale: pluginSettings.locale }
732
771
  : {}),
@@ -778,6 +817,49 @@ export function createHostManager() {
778
817
  ...(pluginSettings.curatedMemory === false
779
818
  ? { curatedMemory: false }
780
819
  : { curatedMemory: getCuratedMemProvider() }),
820
+ autoReviewPre: createAutoReviewToolPre({
821
+ xrkHome: resolveXrkHome(),
822
+ // Master switch (Settings) AND session preset === auto (DSH).
823
+ isEnabled: () => {
824
+ const ar = faceRuntime.settingsNamespaces.view("auto-review")
825
+ .value;
826
+ return (ar.enabled === true ||
827
+ isAutoReviewEnabled({ xrkHome: resolveXrkHome() }));
828
+ },
829
+ // Session Auto gate: resolveSessionEvents → folded permission/preset.
830
+ product: () => {
831
+ const ns = faceRuntime.settingsNamespaces.view("auto-review")
832
+ .value;
833
+ const classifierUrl = typeof ns.classifierUrl === "string"
834
+ ? ns.classifierUrl.trim()
835
+ : "";
836
+ const classifierToken = faceRuntime.credentials
837
+ .peek("auto-review.classifier")
838
+ ?.trim() ||
839
+ process.env.XRK_AUTO_REVIEW_CLASSIFIER_TOKEN?.trim() ||
840
+ "";
841
+ return {
842
+ ...(classifierUrl ? { classifierUrl } : {}),
843
+ ...(classifierToken ? { classifierToken } : {}),
844
+ };
845
+ },
846
+ locale: () => pluginSettings.locale,
847
+ // Current-session provider/model via Face routing adapter.
848
+ resolveLlm: () => llmResolverBox.resolve?.(sessionId),
849
+ resolveCwd: () => sessionCwdBox.get?.(sessionId) ??
850
+ sessionRoot ??
851
+ config.runtime.workspaceRoot,
852
+ resolveSessionEvents: () => readSessionEvents(store, sessionId),
853
+ // DSH: classifier deny + approval never → final AUTO_REVIEW_DENIED;
854
+ // under ask (Auto default) → Face defer-ask.
855
+ resolveDenyAction: () => effectiveApprovalPolicy(readSessionEvents(store, sessionId)) ===
856
+ "never"
857
+ ? "deny"
858
+ : "ask",
859
+ ...(faceRuntime.permissionAuto.lifecycle()
860
+ ? { lifecycle: faceRuntime.permissionAuto.lifecycle() }
861
+ : {}),
862
+ }),
781
863
  });
782
864
  if (faceBox.approvals) {
783
865
  agent.setApprovalHandler(faceBox.approvals.handlerFor(sessionId));
@@ -865,13 +947,27 @@ export function createHostManager() {
865
947
  // Start immediately and pass as beforeTools so it overlaps the
866
948
  // LLM; do not await serially before continueTurn (that pinned
867
949
  // Queue/Steer chrome on large monorepos).
950
+ const pendingBefore = agent.pendingAdmits().length;
868
951
  const snapP = snapshot();
869
- const result = await agent.continueTurn({
870
- signal,
871
- beforeTools: () => snapP,
872
- });
873
- await snapP;
874
- lastDrainResult.set(sessionId, result);
952
+ try {
953
+ const result = await agent.continueTurn({
954
+ signal,
955
+ beforeTools: () => snapP,
956
+ });
957
+ await snapP;
958
+ lastDrainResult.set(sessionId, result);
959
+ }
960
+ catch {
961
+ await snapP.catch(() => undefined);
962
+ if (signal.aborted) {
963
+ throw hostAbortError(signal.reason);
964
+ }
965
+ // One failed turn must not strand later inbox admits (mute-after
966
+ // truncation). If the inbox did not shrink, stop to avoid a
967
+ // tight fail loop; abort still exits above.
968
+ if (agent.pendingAdmits().length >= pendingBefore)
969
+ break;
970
+ }
875
971
  }
876
972
  }
877
973
  finally {
@@ -1176,6 +1272,18 @@ export function createHostManager() {
1176
1272
  },
1177
1273
  ...(sharedShell ? { shell: sharedShell } : {}),
1178
1274
  });
1275
+ // Guardian / auto-review Host bridge: publish Auto in the permissions
1276
+ // catalog for the Host lifetime (DSH registerAuto). Dispose migrates live
1277
+ // Auto sessions to Full access and aborts in-flight reviews.
1278
+ const unregisterPermissionAuto = faceRuntime.permissionAuto.registerAuto(() => {
1279
+ /* admit: integration is accepting selections while Host is up */
1280
+ }, {
1281
+ migrateAway: () => {
1282
+ migrateAutoSessionsToFullAccess(store, faceRuntime.permissionAuto, sharedPty
1283
+ ? { hasPtyActivity: () => sharedPty.service.hasActivity() }
1284
+ : undefined);
1285
+ },
1286
+ });
1179
1287
  // Authorize DSH client settings namespaces so panels do not fail
1180
1288
  // "Host 未授权设置 RPC" when Cordis Host is absent (empty docs).
1181
1289
  for (const ns of DSH_SETTINGS_NAMESPACES) {
@@ -1279,9 +1387,6 @@ export function createHostManager() {
1279
1387
  compactionStrategyRaw === "off"
1280
1388
  ? compactionStrategyRaw
1281
1389
  : undefined;
1282
- const guardianFragments = typeof loop.guardianFragments === "boolean"
1283
- ? loop.guardianFragments
1284
- : undefined;
1285
1390
  const toolResultMaxInlineBytes = typeof loop.toolResultMaxInlineBytes === "number" &&
1286
1391
  Number.isFinite(loop.toolResultMaxInlineBytes) &&
1287
1392
  loop.toolResultMaxInlineBytes >= 0
@@ -1627,7 +1732,6 @@ export function createHostManager() {
1627
1732
  ...(toolResultMaxInlineBytes !== undefined
1628
1733
  ? { toolResultMaxInlineBytes }
1629
1734
  : {}),
1630
- ...(guardianFragments !== undefined ? { guardianFragments } : {}),
1631
1735
  ...(maxSubagentDepth !== undefined ? { maxSubagentDepth } : {}),
1632
1736
  ...(maxActiveSubagents !== undefined ? { maxActiveSubagents } : {}),
1633
1737
  bashLimits: {
@@ -1656,6 +1760,7 @@ export function createHostManager() {
1656
1760
  ...(videoAnalyzeEnv ? { videoAnalyzeEnv } : {}),
1657
1761
  ...(!curatedMemoryEnabled ? { curatedMemory: false } : {}),
1658
1762
  ...(localePref ? { locale: localePref } : {}),
1763
+ // Auto-review pre is built per session in resolveAgent (needs resolveLlm).
1659
1764
  };
1660
1765
  };
1661
1766
  {
@@ -1674,6 +1779,15 @@ export function createHostManager() {
1674
1779
  }
1675
1780
  if (event === "settings/document-updated") {
1676
1781
  const ns = frame.args[0];
1782
+ if (ns === "auto-review") {
1783
+ const ar = faceRuntime.settingsNamespaces.view("auto-review")
1784
+ .value;
1785
+ if (typeof ar.enabled === "boolean") {
1786
+ setAutoReviewEnabled({ xrkHome: resolveXrkHome() }, ar.enabled);
1787
+ }
1788
+ // Classifier URL is live; no agent invalidate required.
1789
+ return;
1790
+ }
1677
1791
  if (ns === "cron") {
1678
1792
  const cronNs = faceRuntime.settingsNamespaces.view("cron")
1679
1793
  .value;
@@ -1758,6 +1872,22 @@ export function createHostManager() {
1758
1872
  ...(classifierToken ? { classifierToken } : {}),
1759
1873
  };
1760
1874
  },
1875
+ approveAutoReviewPending: (args) => {
1876
+ if (!args.sessionId) {
1877
+ return {
1878
+ allowed: false,
1879
+ note: "sessionId required to locate a pending Face approval",
1880
+ };
1881
+ }
1882
+ const outcome = approvePendingAutoReview(faceRuntime.approvals, args.sessionId, args.index);
1883
+ return {
1884
+ allowed: outcome.kind === "allowed",
1885
+ note: outcome.note,
1886
+ ...(outcome.kind === "allowed"
1887
+ ? { toolName: outcome.toolName }
1888
+ : {}),
1889
+ };
1890
+ },
1761
1891
  resolveMemoryEmbedProduct: () => {
1762
1892
  const ns = faceRuntime.settingsNamespaces.view("memory-embed")
1763
1893
  .value;
@@ -1938,6 +2068,7 @@ export function createHostManager() {
1938
2068
  agentOpenRegistry.dispose();
1939
2069
  dshUpgrades.close();
1940
2070
  face.close();
2071
+ unregisterPermissionAuto();
1941
2072
  shutdownDshCompatServices();
1942
2073
  },
1943
2074
  };