@sema-ai/core 1.275.1

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 (962) hide show
  1. package/CHANGELOG.md +5433 -0
  2. package/LICENSE +27 -0
  3. package/NOTICE.md +30 -0
  4. package/README.md +1040 -0
  5. package/dist/agents/agent-definition.d.ts +10 -0
  6. package/dist/agents/agent-definition.d.ts.map +1 -0
  7. package/dist/agents/agent-definition.js +18 -0
  8. package/dist/agents/agent-definition.js.map +1 -0
  9. package/dist/agents/builtin-agents.d.ts +69 -0
  10. package/dist/agents/builtin-agents.d.ts.map +1 -0
  11. package/dist/agents/builtin-agents.js +177 -0
  12. package/dist/agents/builtin-agents.js.map +1 -0
  13. package/dist/agents/cascade.d.ts +101 -0
  14. package/dist/agents/cascade.d.ts.map +1 -0
  15. package/dist/agents/cascade.js +189 -0
  16. package/dist/agents/cascade.js.map +1 -0
  17. package/dist/agents/observer.d.ts +209 -0
  18. package/dist/agents/observer.d.ts.map +1 -0
  19. package/dist/agents/observer.js +495 -0
  20. package/dist/agents/observer.js.map +1 -0
  21. package/dist/agents/repair-loop.d.ts +236 -0
  22. package/dist/agents/repair-loop.d.ts.map +1 -0
  23. package/dist/agents/repair-loop.js +293 -0
  24. package/dist/agents/repair-loop.js.map +1 -0
  25. package/dist/agents/session-util.d.ts +8 -0
  26. package/dist/agents/session-util.d.ts.map +1 -0
  27. package/dist/agents/session-util.js +9 -0
  28. package/dist/agents/session-util.js.map +1 -0
  29. package/dist/agents/subagent-steps.d.ts +93 -0
  30. package/dist/agents/subagent-steps.d.ts.map +1 -0
  31. package/dist/agents/subagent-steps.js +206 -0
  32. package/dist/agents/subagent-steps.js.map +1 -0
  33. package/dist/agents/subagent.d.ts +441 -0
  34. package/dist/agents/subagent.d.ts.map +1 -0
  35. package/dist/agents/subagent.js +2492 -0
  36. package/dist/agents/subagent.js.map +1 -0
  37. package/dist/agents/suspend-guard.d.ts +35 -0
  38. package/dist/agents/suspend-guard.d.ts.map +1 -0
  39. package/dist/agents/suspend-guard.js +48 -0
  40. package/dist/agents/suspend-guard.js.map +1 -0
  41. package/dist/agents/teacher.d.ts +137 -0
  42. package/dist/agents/teacher.d.ts.map +1 -0
  43. package/dist/agents/teacher.js +575 -0
  44. package/dist/agents/teacher.js.map +1 -0
  45. package/dist/agents/team.d.ts +211 -0
  46. package/dist/agents/team.d.ts.map +1 -0
  47. package/dist/agents/team.js +293 -0
  48. package/dist/agents/team.js.map +1 -0
  49. package/dist/agents/tool-filter.d.ts +29 -0
  50. package/dist/agents/tool-filter.d.ts.map +1 -0
  51. package/dist/agents/tool-filter.js +50 -0
  52. package/dist/agents/tool-filter.js.map +1 -0
  53. package/dist/agents/verify.d.ts +177 -0
  54. package/dist/agents/verify.d.ts.map +1 -0
  55. package/dist/agents/verify.js +305 -0
  56. package/dist/agents/verify.js.map +1 -0
  57. package/dist/bench/metrics.d.ts +714 -0
  58. package/dist/bench/metrics.d.ts.map +1 -0
  59. package/dist/bench/metrics.js +618 -0
  60. package/dist/bench/metrics.js.map +1 -0
  61. package/dist/bin/sema-tb.d.ts +3 -0
  62. package/dist/bin/sema-tb.d.ts.map +1 -0
  63. package/dist/bin/sema-tb.js +516 -0
  64. package/dist/bin/sema-tb.js.map +1 -0
  65. package/dist/bin/tb-env.d.ts +13 -0
  66. package/dist/bin/tb-env.d.ts.map +1 -0
  67. package/dist/bin/tb-env.js +26 -0
  68. package/dist/bin/tb-env.js.map +1 -0
  69. package/dist/brain/anthropic.d.ts +46 -0
  70. package/dist/brain/anthropic.d.ts.map +1 -0
  71. package/dist/brain/anthropic.js +830 -0
  72. package/dist/brain/anthropic.js.map +1 -0
  73. package/dist/brain/circuit-breaker.d.ts +46 -0
  74. package/dist/brain/circuit-breaker.d.ts.map +1 -0
  75. package/dist/brain/circuit-breaker.js +173 -0
  76. package/dist/brain/circuit-breaker.js.map +1 -0
  77. package/dist/brain/degrading.d.ts +98 -0
  78. package/dist/brain/degrading.d.ts.map +1 -0
  79. package/dist/brain/degrading.js +249 -0
  80. package/dist/brain/degrading.js.map +1 -0
  81. package/dist/brain/errors.d.ts +31 -0
  82. package/dist/brain/errors.d.ts.map +1 -0
  83. package/dist/brain/errors.js +58 -0
  84. package/dist/brain/errors.js.map +1 -0
  85. package/dist/brain/failover.d.ts +18 -0
  86. package/dist/brain/failover.d.ts.map +1 -0
  87. package/dist/brain/failover.js +118 -0
  88. package/dist/brain/failover.js.map +1 -0
  89. package/dist/brain/model-presets.d.ts +36 -0
  90. package/dist/brain/model-presets.d.ts.map +1 -0
  91. package/dist/brain/model-presets.js +54 -0
  92. package/dist/brain/model-presets.js.map +1 -0
  93. package/dist/brain/openai.d.ts +43 -0
  94. package/dist/brain/openai.d.ts.map +1 -0
  95. package/dist/brain/openai.js +784 -0
  96. package/dist/brain/openai.js.map +1 -0
  97. package/dist/brain/reasoning.d.ts +138 -0
  98. package/dist/brain/reasoning.d.ts.map +1 -0
  99. package/dist/brain/reasoning.js +146 -0
  100. package/dist/brain/reasoning.js.map +1 -0
  101. package/dist/brain/repetition.d.ts +60 -0
  102. package/dist/brain/repetition.d.ts.map +1 -0
  103. package/dist/brain/repetition.js +121 -0
  104. package/dist/brain/repetition.js.map +1 -0
  105. package/dist/brain/request-params.d.ts +29 -0
  106. package/dist/brain/request-params.d.ts.map +1 -0
  107. package/dist/brain/request-params.js +78 -0
  108. package/dist/brain/request-params.js.map +1 -0
  109. package/dist/brain/retry.d.ts +18 -0
  110. package/dist/brain/retry.d.ts.map +1 -0
  111. package/dist/brain/retry.js +42 -0
  112. package/dist/brain/retry.js.map +1 -0
  113. package/dist/brain/routing.d.ts +19 -0
  114. package/dist/brain/routing.d.ts.map +1 -0
  115. package/dist/brain/routing.js +44 -0
  116. package/dist/brain/routing.js.map +1 -0
  117. package/dist/brain/status-sink.d.ts +46 -0
  118. package/dist/brain/status-sink.d.ts.map +1 -0
  119. package/dist/brain/status-sink.js +36 -0
  120. package/dist/brain/status-sink.js.map +1 -0
  121. package/dist/brain/stream-engine.d.ts +85 -0
  122. package/dist/brain/stream-engine.d.ts.map +1 -0
  123. package/dist/brain/stream-engine.js +391 -0
  124. package/dist/brain/stream-engine.js.map +1 -0
  125. package/dist/brain/timeout.d.ts +44 -0
  126. package/dist/brain/timeout.d.ts.map +1 -0
  127. package/dist/brain/timeout.js +41 -0
  128. package/dist/brain/timeout.js.map +1 -0
  129. package/dist/brain/tool-call-repair.d.ts +15 -0
  130. package/dist/brain/tool-call-repair.d.ts.map +1 -0
  131. package/dist/brain/tool-call-repair.js +67 -0
  132. package/dist/brain/tool-call-repair.js.map +1 -0
  133. package/dist/brain/walltime.d.ts +14 -0
  134. package/dist/brain/walltime.d.ts.map +1 -0
  135. package/dist/brain/walltime.js +14 -0
  136. package/dist/brain/walltime.js.map +1 -0
  137. package/dist/core/arg-summary.d.ts +19 -0
  138. package/dist/core/arg-summary.d.ts.map +1 -0
  139. package/dist/core/arg-summary.js +96 -0
  140. package/dist/core/arg-summary.js.map +1 -0
  141. package/dist/core/ask-question.d.ts +113 -0
  142. package/dist/core/ask-question.d.ts.map +1 -0
  143. package/dist/core/ask-question.js +246 -0
  144. package/dist/core/ask-question.js.map +1 -0
  145. package/dist/core/auto-compaction.d.ts +341 -0
  146. package/dist/core/auto-compaction.d.ts.map +1 -0
  147. package/dist/core/auto-compaction.js +495 -0
  148. package/dist/core/auto-compaction.js.map +1 -0
  149. package/dist/core/auto-promote.d.ts +126 -0
  150. package/dist/core/auto-promote.d.ts.map +1 -0
  151. package/dist/core/auto-promote.js +171 -0
  152. package/dist/core/auto-promote.js.map +1 -0
  153. package/dist/core/background-shell.d.ts +128 -0
  154. package/dist/core/background-shell.d.ts.map +1 -0
  155. package/dist/core/background-shell.js +42 -0
  156. package/dist/core/background-shell.js.map +1 -0
  157. package/dist/core/cache-break-detector.d.ts +63 -0
  158. package/dist/core/cache-break-detector.d.ts.map +1 -0
  159. package/dist/core/cache-break-detector.js +0 -0
  160. package/dist/core/cache-break-detector.js.map +1 -0
  161. package/dist/core/canonical-json.d.ts +45 -0
  162. package/dist/core/canonical-json.d.ts.map +1 -0
  163. package/dist/core/canonical-json.js +132 -0
  164. package/dist/core/canonical-json.js.map +1 -0
  165. package/dist/core/checkpoint-store.d.ts +1101 -0
  166. package/dist/core/checkpoint-store.d.ts.map +1 -0
  167. package/dist/core/checkpoint-store.js +514 -0
  168. package/dist/core/checkpoint-store.js.map +1 -0
  169. package/dist/core/consolidate-scope.d.ts +94 -0
  170. package/dist/core/consolidate-scope.d.ts.map +1 -0
  171. package/dist/core/consolidate-scope.js +158 -0
  172. package/dist/core/consolidate-scope.js.map +1 -0
  173. package/dist/core/context-edit.d.ts +82 -0
  174. package/dist/core/context-edit.d.ts.map +1 -0
  175. package/dist/core/context-edit.js +149 -0
  176. package/dist/core/context-edit.js.map +1 -0
  177. package/dist/core/context-guard.d.ts +43 -0
  178. package/dist/core/context-guard.d.ts.map +1 -0
  179. package/dist/core/context-guard.js +171 -0
  180. package/dist/core/context-guard.js.map +1 -0
  181. package/dist/core/dynamic-recall.d.ts +100 -0
  182. package/dist/core/dynamic-recall.d.ts.map +1 -0
  183. package/dist/core/dynamic-recall.js +108 -0
  184. package/dist/core/dynamic-recall.js.map +1 -0
  185. package/dist/core/exec-gate.d.ts +74 -0
  186. package/dist/core/exec-gate.d.ts.map +1 -0
  187. package/dist/core/exec-gate.js +143 -0
  188. package/dist/core/exec-gate.js.map +1 -0
  189. package/dist/core/exec-output-tail.d.ts +37 -0
  190. package/dist/core/exec-output-tail.d.ts.map +1 -0
  191. package/dist/core/exec-output-tail.js +63 -0
  192. package/dist/core/exec-output-tail.js.map +1 -0
  193. package/dist/core/file-snapshot-store.d.ts +137 -0
  194. package/dist/core/file-snapshot-store.d.ts.map +1 -0
  195. package/dist/core/file-snapshot-store.js +319 -0
  196. package/dist/core/file-snapshot-store.js.map +1 -0
  197. package/dist/core/git-worktree-env.d.ts +41 -0
  198. package/dist/core/git-worktree-env.d.ts.map +1 -0
  199. package/dist/core/git-worktree-env.js +64 -0
  200. package/dist/core/git-worktree-env.js.map +1 -0
  201. package/dist/core/hooks.d.ts +372 -0
  202. package/dist/core/hooks.d.ts.map +1 -0
  203. package/dist/core/hooks.js +269 -0
  204. package/dist/core/hooks.js.map +1 -0
  205. package/dist/core/lsp-diagnostics.d.ts +74 -0
  206. package/dist/core/lsp-diagnostics.d.ts.map +1 -0
  207. package/dist/core/lsp-diagnostics.js +125 -0
  208. package/dist/core/lsp-diagnostics.js.map +1 -0
  209. package/dist/core/lsp-protocol.d.ts +28 -0
  210. package/dist/core/lsp-protocol.d.ts.map +1 -0
  211. package/dist/core/lsp-protocol.js +179 -0
  212. package/dist/core/lsp-protocol.js.map +1 -0
  213. package/dist/core/lsp-session.d.ts +56 -0
  214. package/dist/core/lsp-session.d.ts.map +1 -0
  215. package/dist/core/lsp-session.js +185 -0
  216. package/dist/core/lsp-session.js.map +1 -0
  217. package/dist/core/lsp.d.ts +132 -0
  218. package/dist/core/lsp.d.ts.map +1 -0
  219. package/dist/core/lsp.js +147 -0
  220. package/dist/core/lsp.js.map +1 -0
  221. package/dist/core/mcp.d.ts +294 -0
  222. package/dist/core/mcp.d.ts.map +1 -0
  223. package/dist/core/mcp.js +992 -0
  224. package/dist/core/mcp.js.map +1 -0
  225. package/dist/core/media-byte-cap.d.ts +34 -0
  226. package/dist/core/media-byte-cap.d.ts.map +1 -0
  227. package/dist/core/media-byte-cap.js +76 -0
  228. package/dist/core/media-byte-cap.js.map +1 -0
  229. package/dist/core/memory-engine/data-plane.d.ts +103 -0
  230. package/dist/core/memory-engine/data-plane.d.ts.map +1 -0
  231. package/dist/core/memory-engine/data-plane.js +272 -0
  232. package/dist/core/memory-engine/data-plane.js.map +1 -0
  233. package/dist/core/memory-engine/dual-root.d.ts +40 -0
  234. package/dist/core/memory-engine/dual-root.d.ts.map +1 -0
  235. package/dist/core/memory-engine/dual-root.js +95 -0
  236. package/dist/core/memory-engine/dual-root.js.map +1 -0
  237. package/dist/core/memory-engine/engine.d.ts +161 -0
  238. package/dist/core/memory-engine/engine.d.ts.map +1 -0
  239. package/dist/core/memory-engine/engine.js +1110 -0
  240. package/dist/core/memory-engine/engine.js.map +1 -0
  241. package/dist/core/memory-engine/file-backend.d.ts +162 -0
  242. package/dist/core/memory-engine/file-backend.d.ts.map +1 -0
  243. package/dist/core/memory-engine/file-backend.js +948 -0
  244. package/dist/core/memory-engine/file-backend.js.map +1 -0
  245. package/dist/core/memory-engine/frontmatter.d.ts +24 -0
  246. package/dist/core/memory-engine/frontmatter.d.ts.map +1 -0
  247. package/dist/core/memory-engine/frontmatter.js +135 -0
  248. package/dist/core/memory-engine/frontmatter.js.map +1 -0
  249. package/dist/core/memory-engine/index.d.ts +13 -0
  250. package/dist/core/memory-engine/index.d.ts.map +1 -0
  251. package/dist/core/memory-engine/index.js +28 -0
  252. package/dist/core/memory-engine/index.js.map +1 -0
  253. package/dist/core/memory-engine/layout.d.ts +123 -0
  254. package/dist/core/memory-engine/layout.d.ts.map +1 -0
  255. package/dist/core/memory-engine/layout.js +643 -0
  256. package/dist/core/memory-engine/layout.js.map +1 -0
  257. package/dist/core/memory-engine/memory-backend-contract.d.ts +22 -0
  258. package/dist/core/memory-engine/memory-backend-contract.d.ts.map +1 -0
  259. package/dist/core/memory-engine/memory-backend-contract.js +271 -0
  260. package/dist/core/memory-engine/memory-backend-contract.js.map +1 -0
  261. package/dist/core/memory-engine/migrate.d.ts +17 -0
  262. package/dist/core/memory-engine/migrate.d.ts.map +1 -0
  263. package/dist/core/memory-engine/migrate.js +35 -0
  264. package/dist/core/memory-engine/migrate.js.map +1 -0
  265. package/dist/core/memory-engine/scan.d.ts +20 -0
  266. package/dist/core/memory-engine/scan.d.ts.map +1 -0
  267. package/dist/core/memory-engine/scan.js +84 -0
  268. package/dist/core/memory-engine/scan.js.map +1 -0
  269. package/dist/core/memory-engine/scope-contract.d.ts +104 -0
  270. package/dist/core/memory-engine/scope-contract.d.ts.map +1 -0
  271. package/dist/core/memory-engine/scope-contract.js +288 -0
  272. package/dist/core/memory-engine/scope-contract.js.map +1 -0
  273. package/dist/core/memory-engine/sync-client.d.ts +100 -0
  274. package/dist/core/memory-engine/sync-client.d.ts.map +1 -0
  275. package/dist/core/memory-engine/sync-client.js +328 -0
  276. package/dist/core/memory-engine/sync-client.js.map +1 -0
  277. package/dist/core/memory-engine/sync.d.ts +97 -0
  278. package/dist/core/memory-engine/sync.d.ts.map +1 -0
  279. package/dist/core/memory-engine/sync.js +91 -0
  280. package/dist/core/memory-engine/sync.js.map +1 -0
  281. package/dist/core/memory-engine/types.d.ts +279 -0
  282. package/dist/core/memory-engine/types.d.ts.map +1 -0
  283. package/dist/core/memory-engine/types.js +9 -0
  284. package/dist/core/memory-engine/types.js.map +1 -0
  285. package/dist/core/memory-recall.d.ts +261 -0
  286. package/dist/core/memory-recall.d.ts.map +1 -0
  287. package/dist/core/memory-recall.js +600 -0
  288. package/dist/core/memory-recall.js.map +1 -0
  289. package/dist/core/memory-vector.d.ts +24 -0
  290. package/dist/core/memory-vector.d.ts.map +1 -0
  291. package/dist/core/memory-vector.js +51 -0
  292. package/dist/core/memory-vector.js.map +1 -0
  293. package/dist/core/memory.d.ts +502 -0
  294. package/dist/core/memory.d.ts.map +1 -0
  295. package/dist/core/memory.js +881 -0
  296. package/dist/core/memory.js.map +1 -0
  297. package/dist/core/message-utils.d.ts +7 -0
  298. package/dist/core/message-utils.d.ts.map +1 -0
  299. package/dist/core/message-utils.js +10 -0
  300. package/dist/core/message-utils.js.map +1 -0
  301. package/dist/core/oracle-isolation.d.ts +85 -0
  302. package/dist/core/oracle-isolation.d.ts.map +1 -0
  303. package/dist/core/oracle-isolation.js +121 -0
  304. package/dist/core/oracle-isolation.js.map +1 -0
  305. package/dist/core/permission-rules.d.ts +102 -0
  306. package/dist/core/permission-rules.d.ts.map +1 -0
  307. package/dist/core/permission-rules.js +357 -0
  308. package/dist/core/permission-rules.js.map +1 -0
  309. package/dist/core/present-plan-tool.d.ts +28 -0
  310. package/dist/core/present-plan-tool.d.ts.map +1 -0
  311. package/dist/core/present-plan-tool.js +119 -0
  312. package/dist/core/present-plan-tool.js.map +1 -0
  313. package/dist/core/pricing.d.ts +48 -0
  314. package/dist/core/pricing.d.ts.map +1 -0
  315. package/dist/core/pricing.js +46 -0
  316. package/dist/core/pricing.js.map +1 -0
  317. package/dist/core/property-harness.d.ts +126 -0
  318. package/dist/core/property-harness.d.ts.map +1 -0
  319. package/dist/core/property-harness.js +192 -0
  320. package/dist/core/property-harness.js.map +1 -0
  321. package/dist/core/push-queue.d.ts +10 -0
  322. package/dist/core/push-queue.d.ts.map +1 -0
  323. package/dist/core/push-queue.js +42 -0
  324. package/dist/core/push-queue.js.map +1 -0
  325. package/dist/core/remote-env.d.ts +432 -0
  326. package/dist/core/remote-env.d.ts.map +1 -0
  327. package/dist/core/remote-env.js +77 -0
  328. package/dist/core/remote-env.js.map +1 -0
  329. package/dist/core/roles.d.ts +74 -0
  330. package/dist/core/roles.d.ts.map +1 -0
  331. package/dist/core/roles.js +272 -0
  332. package/dist/core/roles.js.map +1 -0
  333. package/dist/core/runner/active-skill-scope.d.ts +64 -0
  334. package/dist/core/runner/active-skill-scope.d.ts.map +1 -0
  335. package/dist/core/runner/active-skill-scope.js +197 -0
  336. package/dist/core/runner/active-skill-scope.js.map +1 -0
  337. package/dist/core/runner/assemble-result.d.ts +191 -0
  338. package/dist/core/runner/assemble-result.d.ts.map +1 -0
  339. package/dist/core/runner/assemble-result.js +250 -0
  340. package/dist/core/runner/assemble-result.js.map +1 -0
  341. package/dist/core/runner/call-cap.d.ts +130 -0
  342. package/dist/core/runner/call-cap.d.ts.map +1 -0
  343. package/dist/core/runner/call-cap.js +151 -0
  344. package/dist/core/runner/call-cap.js.map +1 -0
  345. package/dist/core/runner/grounding-signal.d.ts +12 -0
  346. package/dist/core/runner/grounding-signal.d.ts.map +1 -0
  347. package/dist/core/runner/grounding-signal.js +94 -0
  348. package/dist/core/runner/grounding-signal.js.map +1 -0
  349. package/dist/core/runner/image.d.ts +23 -0
  350. package/dist/core/runner/image.d.ts.map +1 -0
  351. package/dist/core/runner/image.js +151 -0
  352. package/dist/core/runner/image.js.map +1 -0
  353. package/dist/core/runner/memory-consolidation.d.ts +112 -0
  354. package/dist/core/runner/memory-consolidation.d.ts.map +1 -0
  355. package/dist/core/runner/memory-consolidation.js +372 -0
  356. package/dist/core/runner/memory-consolidation.js.map +1 -0
  357. package/dist/core/runner/prepare-task.d.ts +583 -0
  358. package/dist/core/runner/prepare-task.d.ts.map +1 -0
  359. package/dist/core/runner/prepare-task.js +3612 -0
  360. package/dist/core/runner/prepare-task.js.map +1 -0
  361. package/dist/core/runner/prompt-suggestions.d.ts +33 -0
  362. package/dist/core/runner/prompt-suggestions.d.ts.map +1 -0
  363. package/dist/core/runner/prompt-suggestions.js +116 -0
  364. package/dist/core/runner/prompt-suggestions.js.map +1 -0
  365. package/dist/core/runner/runtask.d.ts +274 -0
  366. package/dist/core/runner/runtask.d.ts.map +1 -0
  367. package/dist/core/runner/runtask.js +4606 -0
  368. package/dist/core/runner/runtask.js.map +1 -0
  369. package/dist/core/runner/session-rule-policy.d.ts +28 -0
  370. package/dist/core/runner/session-rule-policy.d.ts.map +1 -0
  371. package/dist/core/runner/session-rule-policy.js +110 -0
  372. package/dist/core/runner/session-rule-policy.js.map +1 -0
  373. package/dist/core/runner/strict-output-schema.d.ts +36 -0
  374. package/dist/core/runner/strict-output-schema.d.ts.map +1 -0
  375. package/dist/core/runner/strict-output-schema.js +365 -0
  376. package/dist/core/runner/strict-output-schema.js.map +1 -0
  377. package/dist/core/runner/synthetic-tools.d.ts +72 -0
  378. package/dist/core/runner/synthetic-tools.d.ts.map +1 -0
  379. package/dist/core/runner/synthetic-tools.js +203 -0
  380. package/dist/core/runner/synthetic-tools.js.map +1 -0
  381. package/dist/core/runner/tool-disclosure.d.ts +117 -0
  382. package/dist/core/runner/tool-disclosure.d.ts.map +1 -0
  383. package/dist/core/runner/tool-disclosure.js +0 -0
  384. package/dist/core/runner/tool-disclosure.js.map +1 -0
  385. package/dist/core/runner/turn-attachments.d.ts +381 -0
  386. package/dist/core/runner/turn-attachments.d.ts.map +1 -0
  387. package/dist/core/runner/turn-attachments.js +596 -0
  388. package/dist/core/runner/turn-attachments.js.map +1 -0
  389. package/dist/core/runner/usage-accounting.d.ts +35 -0
  390. package/dist/core/runner/usage-accounting.d.ts.map +1 -0
  391. package/dist/core/runner/usage-accounting.js +45 -0
  392. package/dist/core/runner/usage-accounting.js.map +1 -0
  393. package/dist/core/runtime.d.ts +9 -0
  394. package/dist/core/runtime.d.ts.map +1 -0
  395. package/dist/core/runtime.js +17 -0
  396. package/dist/core/runtime.js.map +1 -0
  397. package/dist/core/safety-axis-vocab.d.ts +33 -0
  398. package/dist/core/safety-axis-vocab.d.ts.map +1 -0
  399. package/dist/core/safety-axis-vocab.js +35 -0
  400. package/dist/core/safety-axis-vocab.js.map +1 -0
  401. package/dist/core/safety-merge-corpus.d.ts +48 -0
  402. package/dist/core/safety-merge-corpus.d.ts.map +1 -0
  403. package/dist/core/safety-merge-corpus.js +203 -0
  404. package/dist/core/safety-merge-corpus.js.map +1 -0
  405. package/dist/core/scheduler.d.ts +126 -0
  406. package/dist/core/scheduler.d.ts.map +1 -0
  407. package/dist/core/scheduler.js +54 -0
  408. package/dist/core/scheduler.js.map +1 -0
  409. package/dist/core/secret-env.d.ts +23 -0
  410. package/dist/core/secret-env.d.ts.map +1 -0
  411. package/dist/core/secret-env.js +35 -0
  412. package/dist/core/secret-env.js.map +1 -0
  413. package/dist/core/select-model.d.ts +26 -0
  414. package/dist/core/select-model.d.ts.map +1 -0
  415. package/dist/core/select-model.js +58 -0
  416. package/dist/core/select-model.js.map +1 -0
  417. package/dist/core/sensitive-path-policy.d.ts +24 -0
  418. package/dist/core/sensitive-path-policy.d.ts.map +1 -0
  419. package/dist/core/sensitive-path-policy.js +96 -0
  420. package/dist/core/sensitive-path-policy.js.map +1 -0
  421. package/dist/core/session-policy-store.d.ts +102 -0
  422. package/dist/core/session-policy-store.d.ts.map +1 -0
  423. package/dist/core/session-policy-store.js +177 -0
  424. package/dist/core/session-policy-store.js.map +1 -0
  425. package/dist/core/session-reconcile.d.ts +63 -0
  426. package/dist/core/session-reconcile.d.ts.map +1 -0
  427. package/dist/core/session-reconcile.js +71 -0
  428. package/dist/core/session-reconcile.js.map +1 -0
  429. package/dist/core/session-store.d.ts +99 -0
  430. package/dist/core/session-store.d.ts.map +1 -0
  431. package/dist/core/session-store.js +298 -0
  432. package/dist/core/session-store.js.map +1 -0
  433. package/dist/core/session.d.ts +144 -0
  434. package/dist/core/session.d.ts.map +1 -0
  435. package/dist/core/session.js +56 -0
  436. package/dist/core/session.js.map +1 -0
  437. package/dist/core/spec-contract.d.ts +147 -0
  438. package/dist/core/spec-contract.d.ts.map +1 -0
  439. package/dist/core/spec-contract.js +340 -0
  440. package/dist/core/spec-contract.js.map +1 -0
  441. package/dist/core/strategy-store.d.ts +50 -0
  442. package/dist/core/strategy-store.d.ts.map +1 -0
  443. package/dist/core/strategy-store.js +100 -0
  444. package/dist/core/strategy-store.js.map +1 -0
  445. package/dist/core/stub-env.d.ts +35 -0
  446. package/dist/core/stub-env.d.ts.map +1 -0
  447. package/dist/core/stub-env.js +69 -0
  448. package/dist/core/stub-env.js.map +1 -0
  449. package/dist/core/task-notification.d.ts +115 -0
  450. package/dist/core/task-notification.d.ts.map +1 -0
  451. package/dist/core/task-notification.js +247 -0
  452. package/dist/core/task-notification.js.map +1 -0
  453. package/dist/core/task-outcome.d.ts +80 -0
  454. package/dist/core/task-outcome.d.ts.map +1 -0
  455. package/dist/core/task-outcome.js +40 -0
  456. package/dist/core/task-outcome.js.map +1 -0
  457. package/dist/core/task-registry.d.ts +349 -0
  458. package/dist/core/task-registry.d.ts.map +1 -0
  459. package/dist/core/task-registry.js +1751 -0
  460. package/dist/core/task-registry.js.map +1 -0
  461. package/dist/core/tighten-task-spec.d.ts +27 -0
  462. package/dist/core/tighten-task-spec.d.ts.map +1 -0
  463. package/dist/core/tighten-task-spec.js +95 -0
  464. package/dist/core/tighten-task-spec.js.map +1 -0
  465. package/dist/core/tool-detach.d.ts +31 -0
  466. package/dist/core/tool-detach.d.ts.map +1 -0
  467. package/dist/core/tool-detach.js +62 -0
  468. package/dist/core/tool-detach.js.map +1 -0
  469. package/dist/core/tool-errors.d.ts +72 -0
  470. package/dist/core/tool-errors.d.ts.map +1 -0
  471. package/dist/core/tool-errors.js +194 -0
  472. package/dist/core/tool-errors.js.map +1 -0
  473. package/dist/core/tool-name-aliases.d.ts +5 -0
  474. package/dist/core/tool-name-aliases.d.ts.map +1 -0
  475. package/dist/core/tool-name-aliases.js +130 -0
  476. package/dist/core/tool-name-aliases.js.map +1 -0
  477. package/dist/core/tool-policy.d.ts +295 -0
  478. package/dist/core/tool-policy.d.ts.map +1 -0
  479. package/dist/core/tool-policy.js +567 -0
  480. package/dist/core/tool-policy.js.map +1 -0
  481. package/dist/core/tool-result-budget.d.ts +44 -0
  482. package/dist/core/tool-result-budget.d.ts.map +1 -0
  483. package/dist/core/tool-result-budget.js +140 -0
  484. package/dist/core/tool-result-budget.js.map +1 -0
  485. package/dist/core/tool-result-store.d.ts +136 -0
  486. package/dist/core/tool-result-store.d.ts.map +1 -0
  487. package/dist/core/tool-result-store.js +219 -0
  488. package/dist/core/tool-result-store.js.map +1 -0
  489. package/dist/core/tools.d.ts +14 -0
  490. package/dist/core/tools.d.ts.map +1 -0
  491. package/dist/core/tools.js +98 -0
  492. package/dist/core/tools.js.map +1 -0
  493. package/dist/core/trace.d.ts +340 -0
  494. package/dist/core/trace.d.ts.map +1 -0
  495. package/dist/core/trace.js +12 -0
  496. package/dist/core/trace.js.map +1 -0
  497. package/dist/core/types.d.ts +2828 -0
  498. package/dist/core/types.d.ts.map +1 -0
  499. package/dist/core/types.js +2 -0
  500. package/dist/core/types.js.map +1 -0
  501. package/dist/core/untrusted-egress.d.ts +32 -0
  502. package/dist/core/untrusted-egress.d.ts.map +1 -0
  503. package/dist/core/untrusted-egress.js +49 -0
  504. package/dist/core/untrusted-egress.js.map +1 -0
  505. package/dist/core/untrusted-text.d.ts +64 -0
  506. package/dist/core/untrusted-text.d.ts.map +1 -0
  507. package/dist/core/untrusted-text.js +119 -0
  508. package/dist/core/untrusted-text.js.map +1 -0
  509. package/dist/core/warm-resume.d.ts +23 -0
  510. package/dist/core/warm-resume.d.ts.map +1 -0
  511. package/dist/core/warm-resume.js +28 -0
  512. package/dist/core/warm-resume.js.map +1 -0
  513. package/dist/core/with-retry.d.ts +43 -0
  514. package/dist/core/with-retry.d.ts.map +1 -0
  515. package/dist/core/with-retry.js +59 -0
  516. package/dist/core/with-retry.js.map +1 -0
  517. package/dist/core/workflow-journal-store.d.ts +44 -0
  518. package/dist/core/workflow-journal-store.d.ts.map +1 -0
  519. package/dist/core/workflow-journal-store.js +47 -0
  520. package/dist/core/workflow-journal-store.js.map +1 -0
  521. package/dist/core/workflow-run-store-contract.d.ts +31 -0
  522. package/dist/core/workflow-run-store-contract.d.ts.map +1 -0
  523. package/dist/core/workflow-run-store-contract.js +191 -0
  524. package/dist/core/workflow-run-store-contract.js.map +1 -0
  525. package/dist/core/workflow-run-store.d.ts +149 -0
  526. package/dist/core/workflow-run-store.d.ts.map +1 -0
  527. package/dist/core/workflow-run-store.js +110 -0
  528. package/dist/core/workflow-run-store.js.map +1 -0
  529. package/dist/engine/compaction/compaction.d.ts +139 -0
  530. package/dist/engine/compaction/compaction.d.ts.map +1 -0
  531. package/dist/engine/compaction/compaction.js +1030 -0
  532. package/dist/engine/compaction/compaction.js.map +1 -0
  533. package/dist/engine/compaction/utils.d.ts +45 -0
  534. package/dist/engine/compaction/utils.d.ts.map +1 -0
  535. package/dist/engine/compaction/utils.js +203 -0
  536. package/dist/engine/compaction/utils.js.map +1 -0
  537. package/dist/engine/execution-env/kill-tree.d.ts +20 -0
  538. package/dist/engine/execution-env/kill-tree.d.ts.map +1 -0
  539. package/dist/engine/execution-env/kill-tree.js +183 -0
  540. package/dist/engine/execution-env/kill-tree.js.map +1 -0
  541. package/dist/engine/execution-env/node-execution-env.d.ts +133 -0
  542. package/dist/engine/execution-env/node-execution-env.d.ts.map +1 -0
  543. package/dist/engine/execution-env/node-execution-env.js +1031 -0
  544. package/dist/engine/execution-env/node-execution-env.js.map +1 -0
  545. package/dist/engine/harness/agent-harness.d.ts +174 -0
  546. package/dist/engine/harness/agent-harness.d.ts.map +1 -0
  547. package/dist/engine/harness/agent-harness.js +1053 -0
  548. package/dist/engine/harness/agent-harness.js.map +1 -0
  549. package/dist/engine/harness/messages.d.ts +17 -0
  550. package/dist/engine/harness/messages.d.ts.map +1 -0
  551. package/dist/engine/harness/messages.js +122 -0
  552. package/dist/engine/harness/messages.js.map +1 -0
  553. package/dist/engine/harness/types.d.ts +713 -0
  554. package/dist/engine/harness/types.d.ts.map +1 -0
  555. package/dist/engine/harness/types.js +100 -0
  556. package/dist/engine/harness/types.js.map +1 -0
  557. package/dist/engine/llm/diagnostics.d.ts +23 -0
  558. package/dist/engine/llm/diagnostics.d.ts.map +1 -0
  559. package/dist/engine/llm/diagnostics.js +32 -0
  560. package/dist/engine/llm/diagnostics.js.map +1 -0
  561. package/dist/engine/llm/event-stream.d.ts +25 -0
  562. package/dist/engine/llm/event-stream.d.ts.map +1 -0
  563. package/dist/engine/llm/event-stream.js +103 -0
  564. package/dist/engine/llm/event-stream.js.map +1 -0
  565. package/dist/engine/llm/index.d.ts +12 -0
  566. package/dist/engine/llm/index.d.ts.map +1 -0
  567. package/dist/engine/llm/index.js +12 -0
  568. package/dist/engine/llm/index.js.map +1 -0
  569. package/dist/engine/llm/types.d.ts +753 -0
  570. package/dist/engine/llm/types.d.ts.map +1 -0
  571. package/dist/engine/llm/types.js +2 -0
  572. package/dist/engine/llm/types.js.map +1 -0
  573. package/dist/engine/llm/validation.d.ts +8 -0
  574. package/dist/engine/llm/validation.d.ts.map +1 -0
  575. package/dist/engine/llm/validation.js +318 -0
  576. package/dist/engine/llm/validation.js.map +1 -0
  577. package/dist/engine/loop/agent-loop.d.ts +74 -0
  578. package/dist/engine/loop/agent-loop.d.ts.map +1 -0
  579. package/dist/engine/loop/agent-loop.js +1490 -0
  580. package/dist/engine/loop/agent-loop.js.map +1 -0
  581. package/dist/engine/loop/runtime-deps.d.ts +17 -0
  582. package/dist/engine/loop/runtime-deps.d.ts.map +1 -0
  583. package/dist/engine/loop/runtime-deps.js +21 -0
  584. package/dist/engine/loop/runtime-deps.js.map +1 -0
  585. package/dist/engine/loop/types.d.ts +609 -0
  586. package/dist/engine/loop/types.d.ts.map +1 -0
  587. package/dist/engine/loop/types.js +2 -0
  588. package/dist/engine/loop/types.js.map +1 -0
  589. package/dist/engine/lsp/frame-decoder.d.ts +16 -0
  590. package/dist/engine/lsp/frame-decoder.d.ts.map +1 -0
  591. package/dist/engine/lsp/frame-decoder.js +53 -0
  592. package/dist/engine/lsp/frame-decoder.js.map +1 -0
  593. package/dist/engine/lsp/node-lsp-manager.d.ts +105 -0
  594. package/dist/engine/lsp/node-lsp-manager.d.ts.map +1 -0
  595. package/dist/engine/lsp/node-lsp-manager.js +343 -0
  596. package/dist/engine/lsp/node-lsp-manager.js.map +1 -0
  597. package/dist/engine/lsp/stdio-lsp-transport.d.ts +37 -0
  598. package/dist/engine/lsp/stdio-lsp-transport.d.ts.map +1 -0
  599. package/dist/engine/lsp/stdio-lsp-transport.js +185 -0
  600. package/dist/engine/lsp/stdio-lsp-transport.js.map +1 -0
  601. package/dist/engine/session/import-validate.d.ts +44 -0
  602. package/dist/engine/session/import-validate.d.ts.map +1 -0
  603. package/dist/engine/session/import-validate.js +92 -0
  604. package/dist/engine/session/import-validate.js.map +1 -0
  605. package/dist/engine/session/memory-repo.d.ts +25 -0
  606. package/dist/engine/session/memory-repo.d.ts.map +1 -0
  607. package/dist/engine/session/memory-repo.js +59 -0
  608. package/dist/engine/session/memory-repo.js.map +1 -0
  609. package/dist/engine/session/memory-storage.d.ts +14 -0
  610. package/dist/engine/session/memory-storage.d.ts.map +1 -0
  611. package/dist/engine/session/memory-storage.js +17 -0
  612. package/dist/engine/session/memory-storage.js.map +1 -0
  613. package/dist/engine/session/repo-utils.d.ts +11 -0
  614. package/dist/engine/session/repo-utils.d.ts.map +1 -0
  615. package/dist/engine/session/repo-utils.js +40 -0
  616. package/dist/engine/session/repo-utils.js.map +1 -0
  617. package/dist/engine/session/session.d.ts +34 -0
  618. package/dist/engine/session/session.d.ts.map +1 -0
  619. package/dist/engine/session/session.js +227 -0
  620. package/dist/engine/session/session.js.map +1 -0
  621. package/dist/engine/session/storage-base.d.ts +38 -0
  622. package/dist/engine/session/storage-base.d.ts.map +1 -0
  623. package/dist/engine/session/storage-base.js +157 -0
  624. package/dist/engine/session/storage-base.js.map +1 -0
  625. package/dist/engine/session/timestamps.d.ts +3 -0
  626. package/dist/engine/session/timestamps.d.ts.map +1 -0
  627. package/dist/engine/session/timestamps.js +15 -0
  628. package/dist/engine/session/timestamps.js.map +1 -0
  629. package/dist/engine/session/uuid.d.ts +2 -0
  630. package/dist/engine/session/uuid.d.ts.map +1 -0
  631. package/dist/engine/session/uuid.js +50 -0
  632. package/dist/engine/session/uuid.js.map +1 -0
  633. package/dist/index.d.ts +160 -0
  634. package/dist/index.d.ts.map +1 -0
  635. package/dist/index.js +374 -0
  636. package/dist/index.js.map +1 -0
  637. package/dist/internal/harness.d.ts +26 -0
  638. package/dist/internal/harness.d.ts.map +1 -0
  639. package/dist/internal/harness.js +24 -0
  640. package/dist/internal/harness.js.map +1 -0
  641. package/dist/internal/llm.d.ts +9 -0
  642. package/dist/internal/llm.d.ts.map +1 -0
  643. package/dist/internal/llm.js +8 -0
  644. package/dist/internal/llm.js.map +1 -0
  645. package/dist/orchestration/builtin-workflows.d.ts +44 -0
  646. package/dist/orchestration/builtin-workflows.d.ts.map +1 -0
  647. package/dist/orchestration/builtin-workflows.js +165 -0
  648. package/dist/orchestration/builtin-workflows.js.map +1 -0
  649. package/dist/orchestration/dev-vm-script-runner.d.ts +24 -0
  650. package/dist/orchestration/dev-vm-script-runner.d.ts.map +1 -0
  651. package/dist/orchestration/dev-vm-script-runner.js +106 -0
  652. package/dist/orchestration/dev-vm-script-runner.js.map +1 -0
  653. package/dist/orchestration/goal.d.ts +97 -0
  654. package/dist/orchestration/goal.d.ts.map +1 -0
  655. package/dist/orchestration/goal.js +248 -0
  656. package/dist/orchestration/goal.js.map +1 -0
  657. package/dist/orchestration/run-spec.d.ts +63 -0
  658. package/dist/orchestration/run-spec.d.ts.map +1 -0
  659. package/dist/orchestration/run-spec.js +274 -0
  660. package/dist/orchestration/run-spec.js.map +1 -0
  661. package/dist/orchestration/run-workflow-tool.d.ts +187 -0
  662. package/dist/orchestration/run-workflow-tool.d.ts.map +1 -0
  663. package/dist/orchestration/run-workflow-tool.js +612 -0
  664. package/dist/orchestration/run-workflow-tool.js.map +1 -0
  665. package/dist/orchestration/workflow-governance.d.ts +70 -0
  666. package/dist/orchestration/workflow-governance.d.ts.map +1 -0
  667. package/dist/orchestration/workflow-governance.js +176 -0
  668. package/dist/orchestration/workflow-governance.js.map +1 -0
  669. package/dist/orchestration/workflow-meta.d.ts +41 -0
  670. package/dist/orchestration/workflow-meta.d.ts.map +1 -0
  671. package/dist/orchestration/workflow-meta.js +426 -0
  672. package/dist/orchestration/workflow-meta.js.map +1 -0
  673. package/dist/orchestration/workflow-observe.d.ts +77 -0
  674. package/dist/orchestration/workflow-observe.d.ts.map +1 -0
  675. package/dist/orchestration/workflow-observe.js +177 -0
  676. package/dist/orchestration/workflow-observe.js.map +1 -0
  677. package/dist/orchestration/workflow-primitives.d.ts +31 -0
  678. package/dist/orchestration/workflow-primitives.d.ts.map +1 -0
  679. package/dist/orchestration/workflow-primitives.js +104 -0
  680. package/dist/orchestration/workflow-primitives.js.map +1 -0
  681. package/dist/orchestration/workflow-sandbox-conformance.d.ts +34 -0
  682. package/dist/orchestration/workflow-sandbox-conformance.d.ts.map +1 -0
  683. package/dist/orchestration/workflow-sandbox-conformance.js +301 -0
  684. package/dist/orchestration/workflow-sandbox-conformance.js.map +1 -0
  685. package/dist/orchestration/workflow-script-runner.d.ts +127 -0
  686. package/dist/orchestration/workflow-script-runner.d.ts.map +1 -0
  687. package/dist/orchestration/workflow-script-runner.js +48 -0
  688. package/dist/orchestration/workflow-script-runner.js.map +1 -0
  689. package/dist/orchestration/workflow-script-store.d.ts +99 -0
  690. package/dist/orchestration/workflow-script-store.d.ts.map +1 -0
  691. package/dist/orchestration/workflow-script-store.js +133 -0
  692. package/dist/orchestration/workflow-script-store.js.map +1 -0
  693. package/dist/orchestration/workflow-size-guideline.d.ts +50 -0
  694. package/dist/orchestration/workflow-size-guideline.d.ts.map +1 -0
  695. package/dist/orchestration/workflow-size-guideline.js +78 -0
  696. package/dist/orchestration/workflow-size-guideline.js.map +1 -0
  697. package/dist/orchestration/workflow.d.ts +624 -0
  698. package/dist/orchestration/workflow.d.ts.map +1 -0
  699. package/dist/orchestration/workflow.js +1596 -0
  700. package/dist/orchestration/workflow.js.map +1 -0
  701. package/dist/prompts/default.d.ts +474 -0
  702. package/dist/prompts/default.d.ts.map +1 -0
  703. package/dist/prompts/default.js +676 -0
  704. package/dist/prompts/default.js.map +1 -0
  705. package/dist/prompts/supervisor.d.ts +60 -0
  706. package/dist/prompts/supervisor.d.ts.map +1 -0
  707. package/dist/prompts/supervisor.js +162 -0
  708. package/dist/prompts/supervisor.js.map +1 -0
  709. package/dist/scenarios/env.d.ts +41 -0
  710. package/dist/scenarios/env.d.ts.map +1 -0
  711. package/dist/scenarios/env.js +65 -0
  712. package/dist/scenarios/env.js.map +1 -0
  713. package/dist/scenarios/full-body.d.ts +47 -0
  714. package/dist/scenarios/full-body.d.ts.map +1 -0
  715. package/dist/scenarios/full-body.js +36 -0
  716. package/dist/scenarios/full-body.js.map +1 -0
  717. package/dist/scenarios/scenario-registry.d.ts +107 -0
  718. package/dist/scenarios/scenario-registry.d.ts.map +1 -0
  719. package/dist/scenarios/scenario-registry.js +192 -0
  720. package/dist/scenarios/scenario-registry.js.map +1 -0
  721. package/dist/scenarios/teacher-quickstart.d.ts +41 -0
  722. package/dist/scenarios/teacher-quickstart.d.ts.map +1 -0
  723. package/dist/scenarios/teacher-quickstart.js +32 -0
  724. package/dist/scenarios/teacher-quickstart.js.map +1 -0
  725. package/dist/server/http.d.ts +36 -0
  726. package/dist/server/http.d.ts.map +1 -0
  727. package/dist/server/http.js +144 -0
  728. package/dist/server/http.js.map +1 -0
  729. package/dist/stores/file/checkpoint-store.d.ts +62 -0
  730. package/dist/stores/file/checkpoint-store.d.ts.map +1 -0
  731. package/dist/stores/file/checkpoint-store.js +250 -0
  732. package/dist/stores/file/checkpoint-store.js.map +1 -0
  733. package/dist/stores/file/file-snapshot-store.d.ts +43 -0
  734. package/dist/stores/file/file-snapshot-store.d.ts.map +1 -0
  735. package/dist/stores/file/file-snapshot-store.js +374 -0
  736. package/dist/stores/file/file-snapshot-store.js.map +1 -0
  737. package/dist/stores/file/fs-atomic.d.ts +95 -0
  738. package/dist/stores/file/fs-atomic.d.ts.map +1 -0
  739. package/dist/stores/file/fs-atomic.js +415 -0
  740. package/dist/stores/file/fs-atomic.js.map +1 -0
  741. package/dist/stores/file/index.d.ts +98 -0
  742. package/dist/stores/file/index.d.ts.map +1 -0
  743. package/dist/stores/file/index.js +109 -0
  744. package/dist/stores/file/index.js.map +1 -0
  745. package/dist/stores/file/memory-store.d.ts +95 -0
  746. package/dist/stores/file/memory-store.d.ts.map +1 -0
  747. package/dist/stores/file/memory-store.js +393 -0
  748. package/dist/stores/file/memory-store.js.map +1 -0
  749. package/dist/stores/file/session-policy-store.d.ts +24 -0
  750. package/dist/stores/file/session-policy-store.d.ts.map +1 -0
  751. package/dist/stores/file/session-policy-store.js +123 -0
  752. package/dist/stores/file/session-policy-store.js.map +1 -0
  753. package/dist/stores/file/session-store.d.ts +34 -0
  754. package/dist/stores/file/session-store.d.ts.map +1 -0
  755. package/dist/stores/file/session-store.js +175 -0
  756. package/dist/stores/file/session-store.js.map +1 -0
  757. package/dist/stores/file/tool-result-store.d.ts +23 -0
  758. package/dist/stores/file/tool-result-store.d.ts.map +1 -0
  759. package/dist/stores/file/tool-result-store.js +61 -0
  760. package/dist/stores/file/tool-result-store.js.map +1 -0
  761. package/dist/stores/file/workflow-journal-store.d.ts +36 -0
  762. package/dist/stores/file/workflow-journal-store.d.ts.map +1 -0
  763. package/dist/stores/file/workflow-journal-store.js +157 -0
  764. package/dist/stores/file/workflow-journal-store.js.map +1 -0
  765. package/dist/stores/file/workflow-run-store.d.ts +58 -0
  766. package/dist/stores/file/workflow-run-store.d.ts.map +1 -0
  767. package/dist/stores/file/workflow-run-store.js +178 -0
  768. package/dist/stores/file/workflow-run-store.js.map +1 -0
  769. package/dist/stores/pg.d.ts +210 -0
  770. package/dist/stores/pg.d.ts.map +1 -0
  771. package/dist/stores/pg.js +652 -0
  772. package/dist/stores/pg.js.map +1 -0
  773. package/dist/tools/fs/encoding.d.ts +51 -0
  774. package/dist/tools/fs/encoding.d.ts.map +1 -0
  775. package/dist/tools/fs/encoding.js +74 -0
  776. package/dist/tools/fs/encoding.js.map +1 -0
  777. package/dist/tools/fs/gh-rate-limit.d.ts +19 -0
  778. package/dist/tools/fs/gh-rate-limit.d.ts.map +1 -0
  779. package/dist/tools/fs/gh-rate-limit.js +35 -0
  780. package/dist/tools/fs/gh-rate-limit.js.map +1 -0
  781. package/dist/tools/fs/index.d.ts +246 -0
  782. package/dist/tools/fs/index.d.ts.map +1 -0
  783. package/dist/tools/fs/index.js +2130 -0
  784. package/dist/tools/fs/index.js.map +1 -0
  785. package/dist/tools/fs/pdf.d.ts +106 -0
  786. package/dist/tools/fs/pdf.d.ts.map +1 -0
  787. package/dist/tools/fs/pdf.js +178 -0
  788. package/dist/tools/fs/pdf.js.map +1 -0
  789. package/dist/tools/fs/repo-map.d.ts +15 -0
  790. package/dist/tools/fs/repo-map.d.ts.map +1 -0
  791. package/dist/tools/fs/repo-map.js +251 -0
  792. package/dist/tools/fs/repo-map.js.map +1 -0
  793. package/dist/tools/fs/safety.d.ts +168 -0
  794. package/dist/tools/fs/safety.d.ts.map +1 -0
  795. package/dist/tools/fs/safety.js +479 -0
  796. package/dist/tools/fs/safety.js.map +1 -0
  797. package/dist/tools/fs/search.d.ts +118 -0
  798. package/dist/tools/fs/search.d.ts.map +1 -0
  799. package/dist/tools/fs/search.js +650 -0
  800. package/dist/tools/fs/search.js.map +1 -0
  801. package/dist/tools/gitea-issue.d.ts +39 -0
  802. package/dist/tools/gitea-issue.d.ts.map +1 -0
  803. package/dist/tools/gitea-issue.js +91 -0
  804. package/dist/tools/gitea-issue.js.map +1 -0
  805. package/dist/tools/monitor.d.ts +64 -0
  806. package/dist/tools/monitor.d.ts.map +1 -0
  807. package/dist/tools/monitor.js +135 -0
  808. package/dist/tools/monitor.js.map +1 -0
  809. package/dist/tools/scheduler-tools.d.ts +48 -0
  810. package/dist/tools/scheduler-tools.d.ts.map +1 -0
  811. package/dist/tools/scheduler-tools.js +449 -0
  812. package/dist/tools/scheduler-tools.js.map +1 -0
  813. package/dist/tools/sql-adapters.d.ts +32 -0
  814. package/dist/tools/sql-adapters.d.ts.map +1 -0
  815. package/dist/tools/sql-adapters.js +31 -0
  816. package/dist/tools/sql-adapters.js.map +1 -0
  817. package/dist/tools/sql.d.ts +36 -0
  818. package/dist/tools/sql.d.ts.map +1 -0
  819. package/dist/tools/sql.js +131 -0
  820. package/dist/tools/sql.js.map +1 -0
  821. package/dist/tools/task-list.d.ts +26 -0
  822. package/dist/tools/task-list.d.ts.map +1 -0
  823. package/dist/tools/task-list.js +352 -0
  824. package/dist/tools/task-list.js.map +1 -0
  825. package/dist/tools/todo.d.ts +11 -0
  826. package/dist/tools/todo.d.ts.map +1 -0
  827. package/dist/tools/todo.js +126 -0
  828. package/dist/tools/todo.js.map +1 -0
  829. package/dist/tools/web.d.ts +59 -0
  830. package/dist/tools/web.d.ts.map +1 -0
  831. package/dist/tools/web.js +607 -0
  832. package/dist/tools/web.js.map +1 -0
  833. package/dist/tools/worktree.d.ts +88 -0
  834. package/dist/tools/worktree.d.ts.map +1 -0
  835. package/dist/tools/worktree.js +434 -0
  836. package/dist/tools/worktree.js.map +1 -0
  837. package/docs/A1-ATTRIBUTION-ROUND1-2026-07-09.md +181 -0
  838. package/docs/AB-ORACLE-GATE-VERDICT-2026-07-10.md +100 -0
  839. package/docs/ANCHOR-GAP-INVENTORY-2026-07-09.md +143 -0
  840. package/docs/ARCHITECTURE.md +125 -0
  841. package/docs/BUGHUNT-2026-07-05-NIGHT.md +98 -0
  842. package/docs/BUILD.md +63 -0
  843. package/docs/CANCEL-ASYNC-ATTRIBUTION-2026-07-09.md +98 -0
  844. package/docs/CC-198-VS-201-DRIFT-2026-07-09.md +70 -0
  845. package/docs/CC-BASELINE-FAKE-ZERO-AUDIT-2026-07-09.md +51 -0
  846. package/docs/CC-DRIFT-198-206-AGENT-TYPES-2026-07-10.md +82 -0
  847. package/docs/CC-DRIFT-198-206-CHANGELOG-2026-07-10.md +82 -0
  848. package/docs/CC-DRIFT-198-206-REMINDERS-2026-07-10.md +96 -0
  849. package/docs/CC-DRIFT-198-206-ROADMAP-2026-07-10.md +110 -0
  850. package/docs/CC-DRIFT-198-206-TOOL-INVENTORY-2026-07-10.md +53 -0
  851. package/docs/CC-DRIFT-198-206-USAGE-CONSTANTS-2026-07-10.md +64 -0
  852. package/docs/CC-DRIFT-198-206-WORKFLOW-2026-07-10.md +83 -0
  853. package/docs/CC-PARITY-CHECKLIST.md +220 -0
  854. package/docs/CC-PARITY-DEEP-SWEEP-2026-07-07.md +149 -0
  855. package/docs/CC-SUBAGENT-PROMPT-STUDY-2026-07-09.md +219 -0
  856. package/docs/CC-TASK-REMINDER-CADENCE-STUDY-2026-07-09.md +396 -0
  857. package/docs/CC-TOOL-PARITY-SWEEP-2026-07.md +56 -0
  858. package/docs/CC-TOOL-PROMPT-DEEP-DIFF-2026-07-08.md +274 -0
  859. package/docs/CC-TOOLSURFACE-DEEP-DIVE-2026-07-07.md +197 -0
  860. package/docs/CC206-OBSERVER-ANCHORS-2026-07-11.md +463 -0
  861. package/docs/CC207-CORE-SWEEP-BACKLOG-2026-07-12.md +155 -0
  862. package/docs/CENTER-CONTROL-PLANE-SEAM.md +86 -0
  863. package/docs/CLEANUP-CONTRACT-ANCHOR-2026-07-09.md +83 -0
  864. package/docs/COLD-START-RSI-2026-07-09.md +72 -0
  865. package/docs/COMPACTION-LIVE-AUDIT-2026-07-09.md +114 -0
  866. package/docs/CONTEXT-lifecycle-extension-points-and-stop-attribution.md +71 -0
  867. package/docs/COREWARS-POLYGLOT-TRIAGE-2026-07-09.md +85 -0
  868. package/docs/DEADTARGET-OVERFULL-HBOX-2026-07-10.md +92 -0
  869. package/docs/DEADTARGET-PATH-TRACING-REVERSE-2026-07-10.md +87 -0
  870. package/docs/DEADTARGET-WINNING-AVG-COREWARS-2026-07-10.md +96 -0
  871. package/docs/DEEPSEEK-API-LIMITS-PROBE-2026-07-09.md +118 -0
  872. package/docs/DESIGN-140-MOCK-VERIFY-2026-07-11.md +79 -0
  873. package/docs/DESIGN-140-VERIFICATION-2026-07-11.md +43 -0
  874. package/docs/DESIGN-DRAFT-workflow-collab-2026-07-11.md +56 -0
  875. package/docs/DESIGN-ORACLE-GROUNDING-GATE-2026-07-10.md +167 -0
  876. package/docs/DESIGN-TFRAG-RECONCILE-SCAFFOLD-2026-07-09.md +102 -0
  877. package/docs/EXP-PA2-PE-DESIGN-2026-07-11.md +220 -0
  878. package/docs/EXT-DOGFOOD-2026-07-12.md +50 -0
  879. package/docs/FINAL-VERIFY-SURFACE-AUDIT-2026-07-09.md +44 -0
  880. package/docs/FRAG-RECON-INVESTIGATION-2026-07-09.md +183 -0
  881. package/docs/HANDOFF.md +121 -0
  882. package/docs/KNOWN-ISSUES.md +96 -0
  883. package/docs/LEGW-WINDOW-TAX-2026-07-10.md +82 -0
  884. package/docs/LIVE-PROBE-BATCH-2026-07-11.md +207 -0
  885. package/docs/M2-CERT-ATTRIBUTION-2026-07-10.md +61 -0
  886. package/docs/M25-LEG-VARIANCE-ATTRIBUTION-2026-07-10.md +81 -0
  887. package/docs/MAILMAN-TIMEOUT-ATTRIBUTION-2026-07-10.md +88 -0
  888. package/docs/MEMORY-BACKEND-DIALECT-NOTES.md +69 -0
  889. package/docs/MTEB-ESCAPE-HATCH-ATTRIBUTION-2026-07-09.md +57 -0
  890. package/docs/MTEB-LEADERBOARD-ATTRIBUTION-2026-07-10.md +134 -0
  891. package/docs/ORACLE-GATE-NEGATIVE-SAMPLE-2026-07-11.md +28 -0
  892. package/docs/PARITY-CONTEXT-TRANSACTIONS-2026-07-10.md +67 -0
  893. package/docs/PARITY-PROGRESS-MATRIX-2026-07-10.md +37 -0
  894. package/docs/PARITY-SPOT-AGENT-TYPES-2026-07-10.md +70 -0
  895. package/docs/PARITY-SPOT-REMINDERS-2026-07-10.md +144 -0
  896. package/docs/PARITY-SPOT-TOOL-INVENTORY-2026-07-10.md +61 -0
  897. package/docs/PARITY-SPOT-USAGE-CONSTANTS-2026-07-10.md +95 -0
  898. package/docs/PARITY-SPOT-WORKFLOW-2026-07-10.md +93 -0
  899. package/docs/PASSWORD-RECOVERY-PANEL-VERDICT-2026-07-10.md +62 -0
  900. package/docs/R8-R9-FINALIZE-COORDINATION-2026-07-09.md +124 -0
  901. package/docs/REPL-CODE-MODE-EVALUATION-2026-07-10.md +187 -0
  902. package/docs/REPORT-1249-TARGETED.md +48 -0
  903. package/docs/RESEARCH-3P-MEMORY-SWAP-2026-07-12.md +273 -0
  904. package/docs/ROADMAP.md +111 -0
  905. package/docs/RSI-CLOUD-DEPLOY-2026-07-06.md +289 -0
  906. package/docs/RSI-PROCESS-AI-COLDSTART-2026-07-11.md +68 -0
  907. package/docs/S18-THOROUGHNESS-AUDIT-2026-07-09.md +113 -0
  908. package/docs/SERVICE-INTEGRATION-GUIDE.md +298 -0
  909. package/docs/SUBAGENT-STREAM-RESILIENCE-PARITY-2026-07-10.md +118 -0
  910. package/docs/SWEBENCH-PRO-RECON-2026-07-11.md +31 -0
  911. package/docs/TB-EFFICIENCY-TELEMETRY-2026-07-08.md +114 -0
  912. package/docs/TB-FAILURE-AUTOPSY-2026-07-05-RERUN.md +67 -0
  913. package/docs/TB-FAIRNESS-AUDIT-2026-07-08.md +141 -0
  914. package/docs/TB-FULL-1257-2026-07-08.md +77 -0
  915. package/docs/TB-LEG-GAP-ATTRIBUTION-1261-1263-2026-07-11.md +154 -0
  916. package/docs/TB-REGRESSION-DAEMON-KILL-2026-07-08.md +58 -0
  917. package/docs/TB-RSI-CROSSCHECK-2026-07-06.md +68 -0
  918. package/docs/TB-RSI-LEDGER.md +30 -0
  919. package/docs/TB-STABLE-SET-2026-07-08.md +127 -0
  920. package/docs/TB21-RECON-2026-07-11.md +28 -0
  921. package/docs/TEST-DESIGN-BATCH-1-2-3.md +97 -0
  922. package/docs/THIRD-PARTY-INTEGRATION.md +45 -0
  923. package/docs/TOKEN-ESTIMATE-CALIBRATION-LIVE-2026-07-09.md +102 -0
  924. package/docs/audit-2026-06-10-/347/254/254/344/272/214/350/275/256-/347/251/272/347/231/275/345/214/272/344/270/216/345/277/230/346/216/245/347/272/277.md +147 -0
  925. package/docs/audit-2026-06-10-/350/256/241/347/256/227bug/346/211/253/346/217/217.md +163 -0
  926. package/docs/audit-2026-06-11-/344/277/256/345/244/215/345/244/215/345/256/241/344/270/216/345/233/236/345/275/222/344/270/223/346/211/253.md +95 -0
  927. package/docs/audit-2026-06-12-design71-P1/346/275/234/344/274/217/351/235/242/350/243/201/345/206/263/344/270/216/345/220/236/351/224/231/345/256/241/350/256/241.md +45 -0
  928. package/docs/audit-2026-06-12-/345/205/254/345/274/200/346/227/213/351/222/256/346/264/273/346/200/247/344/270/216vendored/346/255/273/350/267/257.md +63 -0
  929. package/docs/audit-2026-06-15/ADDENDUM-second-pass.md +88 -0
  930. package/docs/audit-2026-06-15/ARCHITECTURE-AND-ROADMAP.md +187 -0
  931. package/docs/audit-2026-06-15/DOC-CORRECTIONS.md +105 -0
  932. package/docs/audit-2026-06-15/INDEX.md +49 -0
  933. package/docs/audit-2026-06-15/ORCHESTRATION-STATUS.md +98 -0
  934. package/docs/audit-2026-06-15/PRODUCTION-ISSUES.md +189 -0
  935. package/docs/audit-2026-06-15/REFERENCES-literature.md +139 -0
  936. package/docs/audit-2026-06-15/VENDOR-REFACTOR-PLAN.md +96 -0
  937. package/docs/cc-probe-198/README.md +72 -0
  938. package/docs/cc-probe-198/STABILITY-AUDIT.md +118 -0
  939. package/docs/cc-probe-198/live-schema-monitor-worktree-2026-07-09.json +56 -0
  940. package/docs/cc-probe-198/mount-variants.json +536 -0
  941. package/docs/cc-probe-198/plan-mode-run.json +1 -0
  942. package/docs/cc-probe-198/probe-bash-bg.json +224 -0
  943. package/docs/cc-probe-198/probe-edit-mismatch.json +120 -0
  944. package/docs/cc-probe-198/probe-read-missing.json +62 -0
  945. package/docs/cc-probe-198/probe-search-empty.json +127 -0
  946. package/docs/cc-probe-198/probe-task-family.json +227 -0
  947. package/docs/cc-probe-198/probes.status +6 -0
  948. package/docs/cc-probe-198/raw-capture-interactive.json +948 -0
  949. package/docs/cc-probe-198/raw-capture-print.json +787 -0
  950. package/docs/cc-probe-198/raw-capture2-interactive.json +948 -0
  951. package/docs/cc-probe-198/raw-capture2-print.json +787 -0
  952. package/docs/cc-probe-198/system-prompt.txt +135 -0
  953. package/docs/cc-probe-198/tools-array.json +962 -0
  954. package/docs/durability-boundary.md +63 -0
  955. package/docs/fix-2026-06-10-/350/256/241/347/256/227bug/344/277/256/345/244/215-search/346/211/271.md +75 -0
  956. package/docs/fix-2026-06-11-/347/254/254/344/272/214/350/275/256-/344/277/256/345/244/215-search/346/211/271.md +62 -0
  957. package/docs/parity-sweep/REPORT-DYNAMIC.md +97 -0
  958. package/docs/parity-sweep/REPORT-STATIC-GGB.md +127 -0
  959. package/docs/parity-sweep/REPORT-STATIC-RWE.md +133 -0
  960. package/docs/vendor-history.md +385 -0
  961. package/docs/vendored-upstream-diff-2026-07.md +83 -0
  962. package/package.json +70 -0
@@ -0,0 +1,35 @@
1
+ import type { Model } from "../../internal/llm.js";
2
+ import { type ModelPricing } from "../pricing.js";
3
+ /** How a provider counts cached tokens in its reported `input`. */
4
+ export type CacheFamily = "input-includes-cached" | "input-excludes-cached";
5
+ /**
6
+ * Resolve the prompt-cache accounting family for a model. **Auto-inferred from `model.api`** by
7
+ * default (Anthropic/Bedrock report `input` EXCLUDING cached tokens; OpenAI/vLLM/Google INCLUDE them),
8
+ * but a deployment can **override** it via `model.params.promptCacheFamily` when `model.api` doesn't
9
+ * match the brain that actually serves the model — e.g. a routing brain that dispatches by `provider`
10
+ * while `api` is left at a default. Accepts the explicit values or the aliases `"anthropic"`/`"openai"`.
11
+ * (design/18: a route-by-provider setup with `api` hardcoded misjudged the family → 1090% hit rate.)
12
+ */
13
+ export declare function cacheFamilyOf(model: Model): CacheFamily;
14
+ /** Total prompt tokens presented this turn, normalized so `cachedTokens` is always ⊆ `promptTokens`. */
15
+ export declare function promptTokensOf(family: CacheFamily, u: {
16
+ input: number;
17
+ cacheRead: number;
18
+ cacheWrite: number;
19
+ }): number;
20
+ /**
21
+ * Normalize one turn's reported usage into its `{ totalInputTokens, costMicroUsd }` — the authoritative
22
+ * cost re-priced in core from injected pricing (so cached tokens aren't charged at full price). Shared
23
+ * by the run loop's per-turn accounting and post-task memory consolidation (design/41) so a pricing
24
+ * change lives in ONE place. We emit only 5-min-TTL cache writes, so `cacheWriteTokensLong` is 0.
25
+ */
26
+ export declare function usageCostMicroUsd(family: CacheFamily, u: {
27
+ input?: number;
28
+ output?: number;
29
+ cacheRead?: number;
30
+ cacheWrite?: number;
31
+ }, pricing: ModelPricing): {
32
+ totalInputTokens: number;
33
+ costMicroUsd: number;
34
+ };
35
+ //# sourceMappingURL=usage-accounting.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-accounting.d.ts","sourceRoot":"","sources":["../../../src/core/runner/usage-accounting.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAEvE,mEAAmE;AACnE,MAAM,MAAM,WAAW,GAAG,uBAAuB,GAAG,uBAAuB,CAAC;AAE5E;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,WAAW,CAOvD;AAED,wGAAwG;AACxG,wBAAgB,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEvH;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,EAC/E,OAAO,EAAE,YAAY,GACpB;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAiBpD"}
@@ -0,0 +1,45 @@
1
+ import { computeCostMicroUsd } from "../pricing.js";
2
+ /**
3
+ * Resolve the prompt-cache accounting family for a model. **Auto-inferred from `model.api`** by
4
+ * default (Anthropic/Bedrock report `input` EXCLUDING cached tokens; OpenAI/vLLM/Google INCLUDE them),
5
+ * but a deployment can **override** it via `model.params.promptCacheFamily` when `model.api` doesn't
6
+ * match the brain that actually serves the model — e.g. a routing brain that dispatches by `provider`
7
+ * while `api` is left at a default. Accepts the explicit values or the aliases `"anthropic"`/`"openai"`.
8
+ * (design/18: a route-by-provider setup with `api` hardcoded misjudged the family → 1090% hit rate.)
9
+ */
10
+ export function cacheFamilyOf(model) {
11
+ const override = model.params?.promptCacheFamily;
12
+ if (override === "input-excludes-cached" || override === "anthropic")
13
+ return "input-excludes-cached";
14
+ if (override === "input-includes-cached" || override === "openai")
15
+ return "input-includes-cached";
16
+ return model.api === "anthropic-messages" || model.api === "bedrock-converse-stream"
17
+ ? "input-excludes-cached"
18
+ : "input-includes-cached";
19
+ }
20
+ /** Total prompt tokens presented this turn, normalized so `cachedTokens` is always ⊆ `promptTokens`. */
21
+ export function promptTokensOf(family, u) {
22
+ return family === "input-excludes-cached" ? u.input + u.cacheRead + u.cacheWrite : u.input;
23
+ }
24
+ /**
25
+ * Normalize one turn's reported usage into its `{ totalInputTokens, costMicroUsd }` — the authoritative
26
+ * cost re-priced in core from injected pricing (so cached tokens aren't charged at full price). Shared
27
+ * by the run loop's per-turn accounting and post-task memory consolidation (design/41) so a pricing
28
+ * change lives in ONE place. We emit only 5-min-TTL cache writes, so `cacheWriteTokensLong` is 0.
29
+ */
30
+ export function usageCostMicroUsd(family, u, pricing) {
31
+ const totalInputTokens = promptTokensOf(family, {
32
+ input: u.input || 0,
33
+ cacheRead: u.cacheRead || 0,
34
+ cacheWrite: u.cacheWrite || 0,
35
+ });
36
+ const costMicroUsd = computeCostMicroUsd({
37
+ totalInputTokens,
38
+ cacheReadTokens: u.cacheRead || 0,
39
+ cacheWriteTokens: u.cacheWrite || 0,
40
+ cacheWriteTokensLong: 0,
41
+ outputTokens: u.output || 0,
42
+ }, pricing);
43
+ return { totalInputTokens, costMicroUsd };
44
+ }
45
+ //# sourceMappingURL=usage-accounting.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-accounting.js","sourceRoot":"","sources":["../../../src/core/runner/usage-accounting.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAqB,MAAM,eAAe,CAAC;AAKvE;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,KAAY;IACxC,MAAM,QAAQ,GAAI,KAAK,CAAC,MAAqD,EAAE,iBAAiB,CAAC;IACjG,IAAI,QAAQ,KAAK,uBAAuB,IAAI,QAAQ,KAAK,WAAW;QAAE,OAAO,uBAAuB,CAAC;IACrG,IAAI,QAAQ,KAAK,uBAAuB,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,uBAAuB,CAAC;IAClG,OAAO,KAAK,CAAC,GAAG,KAAK,oBAAoB,IAAI,KAAK,CAAC,GAAG,KAAK,yBAAyB;QAClF,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,uBAAuB,CAAC;AAC9B,CAAC;AAED,wGAAwG;AACxG,MAAM,UAAU,cAAc,CAAC,MAAmB,EAAE,CAA2D;IAC7G,OAAO,MAAM,KAAK,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7F,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAAmB,EACnB,CAA+E,EAC/E,OAAqB;IAErB,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,EAAE;QAC9C,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;QACnB,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC;QAC3B,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC;KAC9B,CAAC,CAAC;IACH,MAAM,YAAY,GAAG,mBAAmB,CACtC;QACE,gBAAgB;QAChB,eAAe,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC;QACjC,gBAAgB,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC;QACnC,oBAAoB,EAAE,CAAC;QACvB,YAAY,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;KAC5B,EACD,OAAO,CACR,CAAC;IACF,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { AgentCoreRuntimeDeps } from "../internal/harness.js";
2
+ import type { Brain } from "./types.js";
3
+ /**
4
+ * Build the agent-core runtime dependency object from a Brain.
5
+ * `completeSimple` (used by compaction/summarization) is derived from `stream`
6
+ * when the brain does not provide one explicitly.
7
+ */
8
+ export declare function brainToRuntime(brain: Brain): AgentCoreRuntimeDeps;
9
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAMnE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,oBAAoB,CAejE"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Build the agent-core runtime dependency object from a Brain.
3
+ * `completeSimple` (used by compaction/summarization) is derived from `stream`
4
+ * when the brain does not provide one explicitly.
5
+ */
6
+ export function brainToRuntime(brain) {
7
+ const completeSimple = brain.complete ??
8
+ (async (model, context, options) => {
9
+ const stream = await brain.stream(model, context, options);
10
+ return stream.result();
11
+ });
12
+ return {
13
+ streamSimple: brain.stream,
14
+ completeSimple,
15
+ };
16
+ }
17
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/core/runtime.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,KAAY;IACzC,MAAM,cAAc,GACjB,KAAK,CAAC,QAA+D;QACtE,CAAC,KAAK,EACJ,KAAK,EACL,OAAmD,EACnD,OAA6B,EACF,EAAE;YAC7B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,OAAkB,EAAE,OAAO,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,MAAM;QAC1B,cAAc;KACf,CAAC;AACJ,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * `SAFETY_AXIS_VOCABULARY` — the PUBLISHED safety-axis vocabulary as a zero-logic, zero-runtime-dependency DATA
3
+ * artifact (pure string / number / boolean literal constants).
4
+ *
5
+ * **design/99 center control-plane seam (channel [281], 2026-06-27).** The sema-registry control plane's per-field
6
+ * safety-classification table lives in `@sema-ai/registry-core` and, for every safety-critical config field, cites a
7
+ * core axis VALUE (e.g. `effect: "write"`, `irreversibility: "always"`). That contract package **must not depend on
8
+ * `@sema-ai/core` (the engine) at runtime** — so it dev-imports THIS const (test-only) and runs a conformance test
9
+ * asserting every `coreAxis` string it ships is a legal value here, failing CI if core ever drops / renames one.
10
+ *
11
+ * Anti-drift discipline (mirrors {@link import("./safety-merge-corpus.js").SAFETY_MERGE_CONFORMANCE_CORPUS}, design/87):
12
+ * the arrays are pinned to the engine's safety-axis source unions; `test/safety-axis-vocab.test.ts` regression-tests
13
+ * them in lockstep with the engine version, and the `_AssertEqual` below fails `tsc` if `toolEffect` drifts from the
14
+ * {@link ToolEffect} union (either direction). The const carries NO logic and imports NO runtime value — the emitted
15
+ * JS is pure data, so a consumer can `JSON`-shaped-read it without pulling any engine code.
16
+ */
17
+ export declare const SAFETY_AXIS_VOCABULARY: {
18
+ /** `ToolSpec.effect` — the data-flow effect class ({@link ToolEffect}, types.ts:74). */
19
+ readonly toolEffect: readonly ["read", "write", "idempotent"];
20
+ /** `ToolSpec.egress` — marks an external write (push / open PR / send a message). */
21
+ readonly egress: readonly [true, false];
22
+ /** `ToolSpec.irreversibility` — reversibility class (types.ts:128; the `toolAxes` record uses the {never,always} subset). */
23
+ readonly irreversibility: readonly ["never", "maybe", "always"];
24
+ /** `SafetyAxis` keys — which axes a gated call trips, for the escalation inbox (checkpoint-store.ts). */
25
+ readonly safetyAxis: readonly ["egress", "irreversible", "shell"];
26
+ /** `RiskDescriptor.severity` — ToolEmu-style tier (5 = most severe), the inbox triage key (checkpoint-store.ts:85). */
27
+ readonly severity: readonly [1, 2, 3, 4, 5];
28
+ /** `TaskSpec.shellGate` — deployment shell-command gate rank, `off` < `classify` < `always` (types.ts:632). */
29
+ readonly shellGate: readonly ["off", "classify", "always"];
30
+ /** `ToolPolicy` decision — per-tool adjudication; `deny` short-circuits the `deny > ask > allow` fold (tool-policy.ts). */
31
+ readonly permissionDecision: readonly ["allow", "ask", "deny"];
32
+ };
33
+ //# sourceMappingURL=safety-axis-vocab.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safety-axis-vocab.d.ts","sourceRoot":"","sources":["../../src/core/safety-axis-vocab.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB;IACjC,wFAAwF;;IAExF,qFAAqF;;IAErF,6HAA6H;;IAE7H,yGAAyG;;IAEzG,uHAAuH;;IAEvH,+GAA+G;;IAE/G,2HAA2H;;CAEnH,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * `SAFETY_AXIS_VOCABULARY` — the PUBLISHED safety-axis vocabulary as a zero-logic, zero-runtime-dependency DATA
3
+ * artifact (pure string / number / boolean literal constants).
4
+ *
5
+ * **design/99 center control-plane seam (channel [281], 2026-06-27).** The sema-registry control plane's per-field
6
+ * safety-classification table lives in `@sema-ai/registry-core` and, for every safety-critical config field, cites a
7
+ * core axis VALUE (e.g. `effect: "write"`, `irreversibility: "always"`). That contract package **must not depend on
8
+ * `@sema-ai/core` (the engine) at runtime** — so it dev-imports THIS const (test-only) and runs a conformance test
9
+ * asserting every `coreAxis` string it ships is a legal value here, failing CI if core ever drops / renames one.
10
+ *
11
+ * Anti-drift discipline (mirrors {@link import("./safety-merge-corpus.js").SAFETY_MERGE_CONFORMANCE_CORPUS}, design/87):
12
+ * the arrays are pinned to the engine's safety-axis source unions; `test/safety-axis-vocab.test.ts` regression-tests
13
+ * them in lockstep with the engine version, and the `_AssertEqual` below fails `tsc` if `toolEffect` drifts from the
14
+ * {@link ToolEffect} union (either direction). The const carries NO logic and imports NO runtime value — the emitted
15
+ * JS is pure data, so a consumer can `JSON`-shaped-read it without pulling any engine code.
16
+ */
17
+ export const SAFETY_AXIS_VOCABULARY = {
18
+ /** `ToolSpec.effect` — the data-flow effect class ({@link ToolEffect}, types.ts:74). */
19
+ toolEffect: ["read", "write", "idempotent"],
20
+ /** `ToolSpec.egress` — marks an external write (push / open PR / send a message). */
21
+ egress: [true, false],
22
+ /** `ToolSpec.irreversibility` — reversibility class (types.ts:128; the `toolAxes` record uses the {never,always} subset). */
23
+ irreversibility: ["never", "maybe", "always"],
24
+ /** `SafetyAxis` keys — which axes a gated call trips, for the escalation inbox (checkpoint-store.ts). */
25
+ safetyAxis: ["egress", "irreversible", "shell"],
26
+ /** `RiskDescriptor.severity` — ToolEmu-style tier (5 = most severe), the inbox triage key (checkpoint-store.ts:85). */
27
+ severity: [1, 2, 3, 4, 5],
28
+ /** `TaskSpec.shellGate` — deployment shell-command gate rank, `off` < `classify` < `always` (types.ts:632). */
29
+ shellGate: ["off", "classify", "always"],
30
+ /** `ToolPolicy` decision — per-tool adjudication; `deny` short-circuits the `deny > ask > allow` fold (tool-policy.ts). */
31
+ permissionDecision: ["allow", "ask", "deny"],
32
+ };
33
+ const _toolEffectExhaustive = true;
34
+ void _toolEffectExhaustive;
35
+ //# sourceMappingURL=safety-axis-vocab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safety-axis-vocab.js","sourceRoot":"","sources":["../../src/core/safety-axis-vocab.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,wFAAwF;IACxF,UAAU,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;IAC3C,qFAAqF;IACrF,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC;IACrB,6HAA6H;IAC7H,eAAe,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC;IAC7C,yGAAyG;IACzG,UAAU,EAAE,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC;IAC/C,uHAAuH;IACvH,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACzB,+GAA+G;IAC/G,SAAS,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC;IACxC,2HAA2H;IAC3H,kBAAkB,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC;CACpC,CAAC;AAMX,MAAM,qBAAqB,GAAiF,IAAI,CAAC;AACjH,KAAK,qBAAqB,CAAC"}
@@ -0,0 +1,48 @@
1
+ import type { SessionPermissionRules } from "./session-policy-store.js";
2
+ /**
3
+ * design/99 (sema-registry center control-plane seam, channel review R2): the PUBLISHED golden conformance corpus
4
+ * for the safety-domain MERGE predicate {@link loosenReasons}.
5
+ *
6
+ * THE SEAM. The center control-plane's ConfigBundle merger is a DISPATCHER: for any field it classifies
7
+ * safety-critical (the permissions / tool-policy domain), it MUST delegate the org-published-vs-workspace-override
8
+ * decision to core's {@link loosenReasons} (NOT re-implement "deny>allow" — a forked safety law is the exact
9
+ * "mixed = security incident" failure). Core owns the safety SEMANTICS; center owns the bundle merger that calls it.
10
+ *
11
+ * THIS CORPUS is the anti-drift anchor between the two codebases (the design/87 gold-corpus discipline):
12
+ * - CORE runs it as a regression test (`test/safety-merge-corpus.test.ts`) — every vector's `reasons` MUST equal
13
+ * `loosenReasons(prior, next)`. If core ever changes the loosen law, this test fails and the corpus updates in
14
+ * lockstep with the engine version, so the published contract can never silently drift from the implementation.
15
+ * - The CENTER imports this corpus from `@sema-ai/core` and runs it as a CONTRACT test in its merger CI: for each
16
+ * vector, its merger's accept/reject of a non-operator workspace override on the permissions domain MUST match
17
+ * `loosens` (reject iff `loosens`). That proves center's dispatcher actually routes through core's predicate.
18
+ *
19
+ * Invariant under test: a workspace override that LOOSENS an org-published safety rule (removes a deny, widens an
20
+ * allowlist, removes/widens a path confinement) is a tighten-only violation — `loosens === true`, and a
21
+ * non-operator write of it MUST be rejected. A pure tighten / no-op is `loosens === false`.
22
+ */
23
+ export interface SafetyMergeVector {
24
+ /** Stable case id (appears in test output + the published contract). */
25
+ name: string;
26
+ /** What this vector proves. */
27
+ intent: string;
28
+ /** The org-published baseline (the lower, authoritative layer). */
29
+ prior: SessionPermissionRules;
30
+ /** The proposed workspace-override (the upper layer being merged down). */
31
+ next: SessionPermissionRules;
32
+ /** Whether `next` LOOSENS `prior` — true ⇒ a non-operator merge of this override MUST be rejected. */
33
+ loosens: boolean;
34
+ /** The EXACT reasons {@link loosenReasons}(prior, next) returns (compared order-insensitively). Empty iff
35
+ * `loosens` is false. Pinned so CORE's regression test catches a change in the loosen SEMANTICS, not just the
36
+ * boolean. ⚠️ CENTER CONTRACT: depend ONLY on `loosens` (reject-iff-loosens) — `reasons` is core's internal
37
+ * message wording, anti-drift for core; a center CI that asserts on `reasons` would break on a core reword. On
38
+ * ACCEPT (`loosens === false`) the resolved safety-domain value is `next` (the tightened override applied). */
39
+ reasons: string[];
40
+ }
41
+ /**
42
+ * The published vectors. Covers every loosen path in {@link loosenReasons} (deny removal, allowlist widen, allowlist
43
+ * removal = all-allowed, path-confinement removal, path widen, and a multi-axis loosen) plus the tighten / safe /
44
+ * no-op cases (adding a deny, narrowing an allowlist, narrowing-to-a-subdir, adding confinement from none, identical,
45
+ * empty). Extend it as the safety domain grows — both core and center re-run it.
46
+ */
47
+ export declare const SAFETY_MERGE_CONFORMANCE_CORPUS: readonly SafetyMergeVector[];
48
+ //# sourceMappingURL=safety-merge-corpus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safety-merge-corpus.d.ts","sourceRoot":"","sources":["../../src/core/safety-merge-corpus.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,KAAK,EAAE,sBAAsB,CAAC;IAC9B,2EAA2E;IAC3E,IAAI,EAAE,sBAAsB,CAAC;IAC7B,sGAAsG;IACtG,OAAO,EAAE,OAAO,CAAC;IACjB;;;;oHAIgH;IAChH,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,iBAAiB,EAmMvE,CAAC"}
@@ -0,0 +1,203 @@
1
+ /**
2
+ * The published vectors. Covers every loosen path in {@link loosenReasons} (deny removal, allowlist widen, allowlist
3
+ * removal = all-allowed, path-confinement removal, path widen, and a multi-axis loosen) plus the tighten / safe /
4
+ * no-op cases (adding a deny, narrowing an allowlist, narrowing-to-a-subdir, adding confinement from none, identical,
5
+ * empty). Extend it as the safety domain grows — both core and center re-run it.
6
+ */
7
+ export const SAFETY_MERGE_CONFORMANCE_CORPUS = [
8
+ // ── LOOSEN (a non-operator override MUST be rejected) ──────────────────────────────────────────────
9
+ {
10
+ name: "deny-removed",
11
+ intent: "removing an org-published toolDeny loosens (the tool becomes usable again)",
12
+ prior: { toolDeny: ["Bash"] },
13
+ next: {},
14
+ loosens: true,
15
+ reasons: ['removed toolDeny "Bash"'],
16
+ },
17
+ {
18
+ name: "command-deny-removed",
19
+ intent: "removing a commandDeny loosens",
20
+ prior: { commandDeny: ["rm -rf"] },
21
+ next: { commandDeny: [] },
22
+ loosens: true,
23
+ reasons: ['removed commandDeny "rm -rf"'],
24
+ },
25
+ {
26
+ name: "toolAllow-removed-all-allowed",
27
+ intent: "dropping an allowlist entirely = all-allowed = the maximal loosen",
28
+ prior: { toolAllow: ["Read"] },
29
+ next: {},
30
+ loosens: true,
31
+ reasons: ["removed toolAllow allowlist (all allowed)"],
32
+ },
33
+ {
34
+ name: "toolAllow-widened",
35
+ intent: "adding a tool outside the org allowlist loosens",
36
+ prior: { toolAllow: ["Read"] },
37
+ next: { toolAllow: ["Read", "Bash"] },
38
+ loosens: true,
39
+ reasons: ['widened toolAllow with "Bash"'],
40
+ },
41
+ {
42
+ name: "commandAllow-widened",
43
+ intent: "adding a command outside the org command allowlist loosens",
44
+ prior: { commandAllow: ["ls"] },
45
+ next: { commandAllow: ["ls", "curl"] },
46
+ loosens: true,
47
+ reasons: ['widened commandAllow with "curl"'],
48
+ },
49
+ {
50
+ name: "allowDirs-confinement-removed",
51
+ intent: "removing path confinement (next has none) loosens to the whole filesystem",
52
+ prior: { allowDirs: ["/repo"] },
53
+ next: {},
54
+ loosens: true,
55
+ reasons: ["removed allowDirs confinement"],
56
+ },
57
+ {
58
+ name: "allowDirs-widened-outside",
59
+ intent: "adding a dir not lexically within any org dir loosens",
60
+ prior: { allowDirs: ["/repo"] },
61
+ next: { allowDirs: ["/repo", "/etc"] },
62
+ loosens: true,
63
+ reasons: ['widened allowDirs with "/etc"'],
64
+ },
65
+ {
66
+ name: "multi-axis-loosen",
67
+ intent: "a single override can loosen on multiple axes — all reasons surface",
68
+ prior: { toolDeny: ["Bash"], allowDirs: ["/repo"] },
69
+ next: { allowDirs: ["/repo", "/x"] },
70
+ loosens: true,
71
+ reasons: ['removed toolDeny "Bash"', 'widened allowDirs with "/x"'],
72
+ },
73
+ {
74
+ name: "commandAllow-removed-all-allowed",
75
+ intent: "dropping the COMMAND allowlist (distinct field from toolAllow) re-permits every command — the max loosen on the command axis (review: this branch was unpinned)",
76
+ prior: { commandAllow: ["ls"] },
77
+ next: {},
78
+ loosens: true,
79
+ reasons: ["removed commandAllow allowlist (all allowed)"],
80
+ },
81
+ {
82
+ name: "allowDirs-confinement-removed-empty-array",
83
+ intent: "an EXPLICIT empty allowDirs [] removes confinement exactly like undefined (loosenReasons branches on .length===0) — center must treat [] and absent identically",
84
+ prior: { allowDirs: ["/repo"] },
85
+ next: { allowDirs: [] },
86
+ loosens: true,
87
+ reasons: ["removed allowDirs confinement"],
88
+ },
89
+ {
90
+ name: "allowDirs-prefix-not-boundary-loosen",
91
+ intent: "🔴 the classic path bug: /repository is NOT within /repo (containment is BOUNDARY-aware, not naive startsWith) → this LOOSENS; a forked center predicate using startsWith would wrongly accept it",
92
+ prior: { allowDirs: ["/repo"] },
93
+ next: { allowDirs: ["/repository"] },
94
+ loosens: true,
95
+ reasons: ['widened allowDirs with "/repository"'],
96
+ },
97
+ {
98
+ name: "allowDirs-relative-dir-loosen",
99
+ intent: "a relative dir is not within an absolute org dir → loosens (loosenReasons compares RAW inputs; normalization is the store's job, not the predicate's)",
100
+ prior: { allowDirs: ["/repo"] },
101
+ next: { allowDirs: ["repo"] },
102
+ loosens: true,
103
+ reasons: ['widened allowDirs with "repo"'],
104
+ },
105
+ {
106
+ name: "multi-entry-deny-removed",
107
+ intent: "removing multiple deny entries in one override emits one reason PER entry — pins that center must ACCUMULATE reasons, not short-circuit on the first",
108
+ prior: { toolDeny: ["A", "B", "C"] },
109
+ next: { toolDeny: ["B"] },
110
+ loosens: true,
111
+ reasons: ['removed toolDeny "A"', 'removed toolDeny "C"'],
112
+ },
113
+ // ── TIGHTEN / SAFE / NO-OP (the override may merge without operator authority) ──────────────────────
114
+ {
115
+ name: "deny-added",
116
+ intent: "adding a deny only tightens",
117
+ prior: {},
118
+ next: { toolDeny: ["Bash"] },
119
+ loosens: false,
120
+ reasons: [],
121
+ },
122
+ {
123
+ name: "toolAllow-narrowed",
124
+ intent: "removing an entry from an allowlist only tightens",
125
+ prior: { toolAllow: ["Read", "Bash"] },
126
+ next: { toolAllow: ["Read"] },
127
+ loosens: false,
128
+ reasons: [],
129
+ },
130
+ {
131
+ name: "allowlist-added-from-all",
132
+ intent: "introducing an allowlist where there was none narrows from all-allowed (safe)",
133
+ prior: {},
134
+ next: { toolAllow: ["Read"] },
135
+ loosens: false,
136
+ reasons: [],
137
+ },
138
+ {
139
+ name: "allowDirs-narrowed-to-subdir",
140
+ intent: "narrowing confinement to a subdir within the org dir is safe",
141
+ prior: { allowDirs: ["/repo"] },
142
+ next: { allowDirs: ["/repo/src"] },
143
+ loosens: false,
144
+ reasons: [],
145
+ },
146
+ {
147
+ name: "allowDirs-added-confinement",
148
+ intent: "adding confinement where there was none (org had no allowDirs) only tightens",
149
+ prior: {},
150
+ next: { allowDirs: ["/repo"] },
151
+ loosens: false,
152
+ reasons: [],
153
+ },
154
+ {
155
+ name: "identical-noop",
156
+ intent: "an identical override is a no-op (safe)",
157
+ prior: { toolDeny: ["Bash"], allowDirs: ["/repo"] },
158
+ next: { toolDeny: ["Bash"], allowDirs: ["/repo"] },
159
+ loosens: false,
160
+ reasons: [],
161
+ },
162
+ {
163
+ name: "empty-empty",
164
+ intent: "no rules either side is safe",
165
+ prior: {},
166
+ next: {},
167
+ loosens: false,
168
+ reasons: [],
169
+ },
170
+ {
171
+ name: "allowDirs-prior-empty-array-safe",
172
+ intent: "an org-published EMPTY allowDirs [] imposes NO confinement (the .length>0 guard is false), so widening it is genuinely not a loosen — center must not treat [] as a confinement",
173
+ prior: { allowDirs: [] },
174
+ next: { allowDirs: ["/etc"] },
175
+ loosens: false,
176
+ reasons: [],
177
+ },
178
+ {
179
+ name: "allowDirs-trailing-slash-safe",
180
+ intent: "/repo/ is within /repo (trailing-slash boundary normalization in lexWithin) → safe",
181
+ prior: { allowDirs: ["/repo"] },
182
+ next: { allowDirs: ["/repo/"] },
183
+ loosens: false,
184
+ reasons: [],
185
+ },
186
+ {
187
+ name: "allowDirs-root-prior-safe",
188
+ intent: "an org dir of '/' contains everything (root special-case) → any narrower next is safe",
189
+ prior: { allowDirs: ["/"] },
190
+ next: { allowDirs: ["/anything"] },
191
+ loosens: false,
192
+ reasons: [],
193
+ },
194
+ {
195
+ name: "commandAllow-added-from-all",
196
+ intent: "introducing a command allowlist where there was none narrows from all-allowed (per-field symmetry with toolAllow)",
197
+ prior: {},
198
+ next: { commandAllow: ["ls"] },
199
+ loosens: false,
200
+ reasons: [],
201
+ },
202
+ ];
203
+ //# sourceMappingURL=safety-merge-corpus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safety-merge-corpus.js","sourceRoot":"","sources":["../../src/core/safety-merge-corpus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * design/105 — Scheduler seam(自唤醒/自调度)。「手」腿(`ExecutionEnv`)的**跨-task** 未来意图能力:一个 run 里的模型
3
+ * 把「未来要做的活」(cron 排程 / 延迟唤醒)持久化交给一个**常驻 backend**(TOC = shell daemon),由它在未来重起一个
4
+ * **新** task。
5
+ *
6
+ * 🔴 与 {@link import("./background-shell.js").BackgroundShellCapability} 的根本区别(design/105 §3.1 D1):
7
+ * background-shell 的进程 ⊆ task(在每条退出路径 dispose,不跨 suspend);scheduler 的意图必须 **SURVIVE task 结束**
8
+ * (schedule 的全部意义就是当前 task 结束后 daemon 还能重起)——镜像反转,**绝不 dispose-on-exit**。
9
+ *
10
+ * core 薄壳裁定:core 只出接口 + 工具壳 + `hasScheduler` 门控;**持久化存储 / cron 时钟 / idle 触发 / 起新 task 全在
11
+ * backend(daemon)**——core 是 request-driven 不常驻,绝不假装调度器。NodeExecutionEnv 不自带 daemon(不同于
12
+ * background-shell 自带 spawn),而是**委托一个注入的 backend**(飞轮的 shell daemon 实现本接口)。
13
+ */
14
+ import type { ExecutionEnv, Result } from "../internal/harness.js";
15
+ /** 一个已排未来意图的句柄。**backend-local、durable(daemon 持久化、重启存活)、对调用方不透明** —— 绝不暴露可枚举的 raw id。 */
16
+ export type ScheduledTaskId = string & {
17
+ readonly __brand: "ScheduledTaskId";
18
+ };
19
+ /**
20
+ * 类型化错误码(对齐 background-shell 风格)。方法 MUST NOT throw(返回 {@link Result})。
21
+ */
22
+ export type SchedulerErrorCode = "unsupported" | "not_found" | "limit_exceeded" | "invalid_schedule" | "io";
23
+ /** scheduler 操作的类型化错误。`code` 给程序分类,`message` 给模型自纠。 */
24
+ export declare class SchedulerError extends Error {
25
+ readonly code: SchedulerErrorCode;
26
+ readonly cause?: unknown | undefined;
27
+ constructor(code: SchedulerErrorCode, message: string, cause?: unknown | undefined);
28
+ }
29
+ /**
30
+ * 🔴 **模型可控面(不可信)**:纯意图,**无任何身份字段** —— 防模型经自排 prompt 提权(design/62 同款红线:身份是
31
+ * Runner-held,非工具参数)。`prompt` = 未来 task 的不可信 `objective`(daemon 起 task 时经完整 prepare-task gate)。
32
+ */
33
+ export interface ScheduledIntent {
34
+ /** 未来要跑的 prompt(agent 自排)。daemon 起新 task 时作 `objective`。 */
35
+ prompt: string;
36
+ /** 何时触发。`cron`=重复(受 minCronIntervalSec 约束);`at`=一次性绝对时刻;`delay`=相对延迟(一次性 self re-wake 用)。 */
37
+ when: {
38
+ kind: "cron";
39
+ expr: string;
40
+ } | {
41
+ kind: "at";
42
+ atMs: number;
43
+ } | {
44
+ kind: "delay";
45
+ delaySec: number;
46
+ };
47
+ /** 可选短标签;与 `(scope, when)` 一起做 upsert 去重键(防工具重试产生重复 intent)。 */
48
+ label?: string;
49
+ /**
50
+ * 执行形态(CC ScheduleWakeup 对齐批 2026-07-11;缺省 `"task"` = 既有行为,全向后兼容)。
51
+ * - `"task"`:daemon 起一个**无上下文新 task**(`prompt` 作 objective,经完整 prepare-task gate)——CronCreate 语义。
52
+ * - `"session-wakeup"`:daemon **续 `ctx.sessionId` 指定的同一会话**(`prompt` 作该会话下一轮输入;同上下文、
53
+ * 同 prompt cache)——CC ScheduleWakeup 的 /loop dynamic 语义。🔴 契约:`mode:"session-wakeup"` 的 intent
54
+ * MUST 随一个带 `sessionId` 的 {@link SchedulerContext} 排入(工具壳保证);daemon 触发时 MUST resume 该
55
+ * session 而非起新 task,且 principal 原样(不升权)。不支持续会话的 daemon MUST 拒(`invalid_schedule`),
56
+ * 绝不静默降级成新 task(丢上下文=静默换语义)。
57
+ */
58
+ mode?: "task" | "session-wakeup";
59
+ }
60
+ /**
61
+ * 🔴 **Runner-held 可信面**(工具工厂闭包捕获,模型无法触及)。镜像 subagent 经 `ctx.principal` 继承的代码层强制
62
+ * (`agents/subagent.ts`)。`schedule` 的实现 MUST 把 `principal` 钉死进持久化 intent;daemon 触发时原样传
63
+ * `runTask({ principal })` —— **不升权、不省略**。
64
+ */
65
+ export interface SchedulerContext {
66
+ /** 越权隔离键(cancel/list 只能操作同 scope 排的)。由 Runner 填(sessionId ?? principal ?? taskId)。 */
67
+ scope: string;
68
+ /** 排程者身份;daemon 触发时原样传给 runTask(防提权)。 */
69
+ principal?: string;
70
+ /** 可选:daemon 触发新 task 时复用的 session(chat-continuity;缺省=fresh-session)。⚠️ 复用需 durable sessionStore(design/105 §3.4)。 */
71
+ sessionId?: string;
72
+ /**
73
+ * 可选 opaque 起-task 配置(model/policy 提示)。v1 daemon 可忽略、用部署默认模板起 task(intent.prompt + 继承的
74
+ * principal 已足);未来精细化时由 daemon 解释。core 不定其 schema(最薄)。**不可由模型提供**(Runner-held)。
75
+ */
76
+ taskConfig?: unknown;
77
+ }
78
+ /** {@link SchedulerCapability.list} 的条目:足够 self-discovery + 防重复排,不含完整意图。 */
79
+ export interface ScheduledTaskSummary {
80
+ id: ScheduledTaskId;
81
+ /** 渲染用:cron expr / at 时刻 / delay 秒 的人读摘要。 */
82
+ when: string;
83
+ label?: string;
84
+ /** 下次触发的 epoch ms(cron/at 可算;daemon 提供)。 */
85
+ nextRunMs?: number;
86
+ /** 执行形态回显({@link ScheduledIntent.mode})。ScheduleWakeup 的 stop:true 靠它定位要取消的 pending
87
+ * wakeup(cron/task 意图不受 stop 影响——CC 206 D9 语义)。老 backend 不回 = undefined(工具壳以
88
+ * label 兜底过滤)。 */
89
+ mode?: "task" | "session-wakeup";
90
+ }
91
+ /**
92
+ * 「手」腿的跨-task 调度能力。一个具体 `ExecutionEnv` 可选附加它(交叉类型),经 {@link hasScheduler} 检测。不支持的
93
+ * env(无注入 daemon backend)= `schedulerCapabilities.supported=false`,四个 scheduler 工具自动不挂(INERT)。
94
+ */
95
+ export interface SchedulerCapability {
96
+ /** 显式声明能力(像 background-shell 一样不猜)。`supported:false` → 工具不挂(design/105 §3.9 TOB / 无 daemon)。 */
97
+ readonly schedulerCapabilities: {
98
+ readonly supported: boolean;
99
+ /** 单 scope 存量 intent 上限(防自排炸弹;超限 `limit_exceeded`)。 */
100
+ readonly maxScheduledPerScope: number;
101
+ /** delay/at 最小延迟秒(防 busy 自醒)。 */
102
+ readonly minDelaySec: number;
103
+ /** cron 解析后实际触发间隔下限秒(`* * * * *` 占 1 slot 但无限触发 → 须有下限)。 */
104
+ readonly minCronIntervalSec: number;
105
+ /** 最远排程地平线秒(fail-closed 有界,绝不无限未来)。 */
106
+ readonly maxScheduledHorizonSec: number;
107
+ };
108
+ /**
109
+ * 持久化一个未来意图。`intent` = 模型可控(无身份);`ctx` = Runner-held 可信上下文(principal/scope/...)。返回不透明
110
+ * 句柄。🔴 实现 MUST 把 `ctx.principal` 钉死进持久化 intent(daemon 触发原样传 runTask,不升权);MUST 用 cron 库
111
+ * 解析 `when.expr` **禁 shell-exec**(RCE 红线);MUST 持久化(durable,daemon 重启存活)。upsert:同 `(scope, when, label)` 覆盖(幂等)。
112
+ */
113
+ schedule(intent: ScheduledIntent, ctx: SchedulerContext): Promise<Result<{
114
+ id: ScheduledTaskId;
115
+ }, SchedulerError>>;
116
+ /** 取消一个已排意图(幂等:取消不存在的是 ok no-op)。🔴 越权:`id` MUST 属本 scope;非本 scope 一律 `not_found`,不泄露存在性。 */
117
+ cancel(id: ScheduledTaskId, ctx: SchedulerContext): Promise<Result<void, SchedulerError>>;
118
+ /** 列**本 scope** 已排意图(self-discovery + 防重复排)。范围 = `ctx.scope`,非全局。 */
119
+ list(ctx: SchedulerContext): Promise<Result<ScheduledTaskSummary[], SchedulerError>>;
120
+ }
121
+ /**
122
+ * 结构 + 语义检测:`env` 是否暴露 scheduler 能力且声明 `supported:true`。挂载门控用此(对齐 `hasBackgroundShell`)。
123
+ */
124
+ export declare function hasScheduler(env: ExecutionEnv): env is ExecutionEnv & SchedulerCapability;
125
+ export declare function isValidCronExpr(expr: string): boolean;
126
+ //# sourceMappingURL=scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../src/core/scheduler.ts"],"names":[],"mappings":"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"}