@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,61 @@
1
+ # PARITY-SPOT · tool-inventory 工具清单全量对齐(CC 2.1.198 全 49 件 vs sema 默认注册面)· 对抗核验档
2
+
3
+ - **日期**:2026-07-10 · 核验官:fable(对抗复核腿,独立亲读双侧源)
4
+ - **锚**:CC = `/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(下称 `pretty.js`)+ 活体 `docs/cc-probe-198/tools-array.json`(27 挂载,2026-07-08 采集)+ `docs/cc-probe-198/live-schema-monitor-worktree-2026-07-09.json`;我方 = `src/`(devendor @ ba59f8d)
5
+ - **挖掘者报告**:8 findings(F1-F8)。**核验判决:8/8 实质内容全 CONFIRMED,0 证伪;但 F1 记档状态判断被推翻——同日姊妹档已入册,重分类 already-recorded。**
6
+ - **aligned 抽验**:5 条(Read 含 pages、Agent 六字段、Monitor 形状、TaskUpdate 九字段、SendMessage summary maxLength:200)全真,无假阳性对齐。
7
+ - **挖掘者盲区 (c) 亲追排除**:TaskOutput 无同名双实现——`src/tools/fs/index.ts:6` 直接 import `task-registry.js` 的 `createTaskOutputTool`,单源,默认挂载无歧义。
8
+
9
+ ---
10
+
11
+ ## 一、判决先行
12
+
13
+ 挖掘者双坐标全部复核通过:pretty.js 七个产品簇工具的 minified 变量名逐一解析吻合(NR=Artifact:143265 / $Ol=Projects:463606 / sO=SendUserMessage:143336 / jqe=SendUserFile:143378 / GJt=ShareOnboardingGuide:466114 / qtr=ShowOnboardingRolePicker:454191 / rPe=WaitForMcpServers:224493),REPL(Xf:224355,门 `Yx()`:224347-224353)与 PowerShell(hs:143374,门 `fF()`:224206-224214)工具对象亲读坐实。无版本漂移误报、无已定谳分歧重翻、无 [550] 式看错层。
14
+
15
+ 唯一改判:**F1(Workflow schema 4 字段缺+script required)是真差距但已非"未记档新发现"**——同日姊妹核验档 `docs/PARITY-SPOT-WORKFLOW-2026-07-10.md` F2 已以更深坐标入册(pretty.js:449105-449141 strictObject+refine 三态、449309-449310 落盘;backlog B5=L)。双腿独立逮到同一缺口=置信度升级,但按铁律 1 本档计 already-recorded,backlog 去重指向 WORKFLOW 档 B5,不重复计件。
16
+
17
+ 净新差距最重一条 = **F2:REPL 工具**(198 在册、env/灰度门挂载的"模型写 JS 程序化直调工具"面),49 件里唯一未记档的能力级缺口,全 docs 零命中(word-boundary grep 核过,src 命中皆为 REPLACE/REPLAY 类误触)。
18
+
19
+ ## 二、确认差距表(按严重度)
20
+
21
+ | # | kind | 严重度 | 差距 | CC 坐标 | 我方坐标 | 核验笔记 |
22
+ |---|------|--------|------|---------|----------|----------|
23
+ | F2 | missing | **MED** | REPL 工具整件缺:`searchHint:"execute JavaScript with programmatic tool access"`,输出 schema 带 result/stdout/stderr/registeredTools/images/documents(inner Read 的图/PDF 上浮为 content block),isConcurrencySafe:false,挂载门=`CLAUDE_CODE_REPL` env 或 `tengu_slate_harbor` 灰度(entrypoint cli/remote)。与 Workflow 是不同轴:REPL=模型写 JS 直调工具 API(code-mode),非确定性编排 | pretty.js:457655(`name: Xf` 工具对象,457640-457700 亲读)+224355(`var Xf="REPL"`)+224347-224353(`Yx()` 门) | src 全树无对等物;docs word-boundary grep `REPL` 零命中(仅 scheduler-tools.ts:189 / core/types.ts:611 / memory-engine/scan.ts:68 泛指 read-eval-print 非工具) | **亲证**双侧。建议先记档 deliberate_divergence 或评估——CC 侧也在灰度期,非稳定默认面 |
24
+ | F4 | missing | LOW | claude.ai/产品绑定簇 7 件未记档:Artifact(465690)/Projects(464017)/SendUserMessage(455354)/SendUserFile(461993)/ShareOnboardingGuide(466175)/ShowOnboardingRolePicker(454214)/WaitForMcpServers(280647)。同类 RemoteTrigger/DesignSync 已记"不计缺口"(DEEP-DIVE 项6+CHECKLIST#105),该条应扩成完整簇清单,否则每轮全量对比重复再发现 | pretty.js 七坐标+变量名全解析吻合(见判决先行) | docs/CC-TOOLSURFACE-DEEP-DIVE-2026-07-07.md:47-48,143-144(仅 RemoteTrigger/DesignSync);CHECKLIST#105 同 | **亲证**。SendUserMessage/SendUserFile 在 SUBAGENT-PROMPT-STUDY:134 与 CLEANUP-CONTRACT-ANCHOR:18 有附带提及但非 parity disposition。纯记档动作,无落码 |
25
+ | F3 | missing | LOW | PowerShell 工具(Bash 的 Windows 同胞)缺:挂载门 `fF()`=`Wt()!=="windows"` 时仅 env 强开,windows 上默认/灰度 `tengu_cobalt_ridge`。sema 跑面 linux/darwin 容器 → 实质 N/A,但名单级未记档 | pretty.js:330892(`name: hs`)+143374(`var hs="PowerShell"`)+224206-224214(`fF()` 门) | src/tools/fs/index.ts 仅 makeBashTool/makeBashReadonlyTool;docs 零命中 | **亲证**。record-as-N/A 一行了结 |
26
+ | F6 | extra | COSMETIC | EnterWorktree 我方多暴露 `baseRef:"fresh"\|"head"` 模型面参数;CC live schema 仅 {name,path}(fresh/head 在 CC 是配置形态,DEEP-DIVE G4 记过)。sema seam 合法上提,但"我方有 CC 无"字段未记档 | docs/cc-probe-198/tools-array.json EnterWorktree props=[name,path] required:None;live-schema-monitor-worktree JSON 同 | src/tools/worktree.ts:249-254(baseRef Union)+257 起 execute 的互斥校验 | **亲证**双侧。worktree.ts 头注或 deep-diff 补一句即可 |
27
+ | F5 | schema-drift | COSMETIC | AskUserQuestion 缺 CC 顶层可选三字段 annotations/metadata/answers(均为 host-UI/权限组件回写管道,模型非写方;sema onAsk seam 结构等价);且 CC 在 schema 声明 questions minItems:1/maxItems:4(+options 2-4),我方同约束在 execute 校验非 schema 声明 | tools-array.json AskUserQuestion props=[questions,answers,annotations,metadata] required:[questions],questions.minItems=1/maxItems=4 | src/core/ask-question.ts:168-210(仅 questions);1-4 与 2-4 校验在 execute(:215-225) | **亲证**双侧。弱模型少一层 provider 侧拒答;记档级 |
28
+ | F8 | already-recorded(记档矛盾批注) | COSMETIC | DEEP-DIVE 项8 断言「CC 无模型可调 LSP 工具(双源交叉确认)」被 198 二进制证伪:pretty.js 明确含 LSP 工具对象(searchHint "code intelligence (definitions, references, symbols, hover)",9 操作与我方同集,且在只读集 ySm)。实践已被 design/116 W1 超越(我方 LSP 已锚 CC LSPTool),无代码动作;项8 需补批注防旧档误导 | pretty.js:460003(`name: gSt`)+406838(`var gSt="LSP"` + 描述常量)+408384(ySm 只读集含 gSt) | docs/CC-TOOLSURFACE-DEEP-DIVE-2026-07-07.md:155-159(项8)vs src/core/lsp.ts(W1 CC 锚注) | **亲证**。项8 成文于 07-07(基于 2.1.201/202 sdk-tools.d.ts+bundle),198 pretty.js 反证;非挖掘者误报,是记档时效性洞 |
29
+
30
+ ## 三、改判项(真差距但同日已入册)
31
+
32
+ | # | 内容 | 改判理由 |
33
+ |---|------|----------|
34
+ | F1 | Workflow 缺 name/scriptPath/title/description 四字段 + 我方 script REQUIRED vs CC 全 optional(`refine(script∨name∨scriptPath)`);CC title/description=显式 "Ignored" 占位。后果:CC-trained 模型的 `{name}` 调用/scriptPath 迭代环直接 schema 失败;仅 resumeFromRunId 复跑被 script-required 挡 | **CC 侧亲证**(pretty.js:449105-449141 亲读:name→".claude/workflows/ 预定义"、scriptPath→"Takes precedence over script and name"、description/title→"Ignored");**我方侧亲证**(run-workflow-tool.ts:297-308 仅 script[required]/args/resumeFromRunId)。但 `docs/PARITY-SPOT-WORKFLOW-2026-07-10.md` F2(同日姊妹维度档)已以同坐标+落盘机制入册,backlog B5=L。**双腿独立同判=置信度升级;本档不重复计件,落码走 WORKFLOW 档 B5** |
35
+
36
+ ## 四、被证伪项
37
+
38
+ 无(8/8 实质内容成立;F1 仅记档状态改判)。
39
+
40
+ ## 五、已记档项对账(F7,不重报,备查)
41
+
42
+ 逐条抽验凭据在案:ReportFindings/ScheduleWakeup 缺(deep-diff 首表 deliberate_divergence 11 件行+M24+项6)、Bash 无 dangerouslyDisableSandbox(M1 待架构拍)、ExitWorktree keep+discardChanges vs CC action[required]+discard_changes(M19 最小修,live 锚 verdicts STANDS,worktree.ts:383-401 亲读吻合)、ExitPlanMode 无 allowedPrompts(M23)、CronCreate 三态 union(deliberate+wire 兼容注)、TaskOutput 全可选+filter(W3+CHECKLIST#68)、SendMessage=completed-bg-resume 支线(HIGH-2 deliberate,subagent.ts:1968-1986 亲读)、Glob/Grep/TodoWrite 反向负空间(4.1/4.2)、Recall/Remember/RepoMap/ReadToolResult/ReportBlocked=sema-own、createSqlTool/createGiteaIssueTool=export-only 工厂。全部与 docs/CC-TOOL-PROMPT-DEEP-DIFF-2026-07-08.md 及 live JSON verdicts 对上。
43
+
44
+ ## 六、落码 backlog(S/M/L)
45
+
46
+ | # | 项 | 量级 | 说明 |
47
+ |---|----|------|------|
48
+ | B1 | REPL(F2)记档 deliberate_divergence/评估条目进 CHECKLIST | **S** | 先记档(CC 侧自身在 env/灰度门后,非稳定默认面);实装评估另立(如做=L,与 Workflow 不同轴的 code-mode 面) |
49
+ | B2 | 产品绑定簇清单扩条(F4):DEEP-DIVE 项6/CHECKLIST#105 扩成 9 件完整簇(含 pretty.js 坐标) | **S** | 纯记档,断每轮重复再发现 |
50
+ | B3 | PowerShell(F3)record-as-N/A 一行进 CHECKLIST | **S** | 跑面无 windows |
51
+ | B4 | AskUserQuestion(F5):minItems/maxItems/options 2-4 上提为 schema 声明;顶层三字段记档为 host-UI 管道不 port | **S** | schema 声明=几行 TypeBox 参数;行为不变 |
52
+ | B5 | EnterWorktree baseRef(F6)在 worktree.ts 头注+deep-diff 补记"我方 extra" | **S** | 一句话 |
53
+ | B6 | DEEP-DIVE 项8(F8)补批注「198 pretty.js 已证伪该断言;design/116 W1 已改锚 CC LSPTool」 | **S** | 防旧档被当真 |
54
+ | (去重) | Workflow scriptPath/name/required(F1)→ 走 PARITY-SPOT-WORKFLOW-2026-07-10.md B5 | L(彼档) | 本档不重复计件 |
55
+
56
+ ## 七、诚实盲区(核验腿)
57
+
58
+ 1. 承挖掘者盲区 (a):min/max/enum 级 JSON 约束仅在其 12 件抽查+我本轮 5 件复验范围内坐实,其余按字段名集合比对——未逐件穷举 describe 文本与数值约束。
59
+ 2. 49 件静态清单的穷举脚本我未独立重跑(抽验了其中 12 个坐标点全吻合,含 7 产品簇+REPL+PowerShell+LSP+Workflow+AskUserQuestion);若挖掘者的多标记穷举漏了第 50 件,本档同漏。
60
+ 3. 88 版可读源未再核(198 pretty.js 优先级更高,且本维度=清单/schema 面,live probe 已是最权威锚)。
61
+ 4. tools-array.json 采集于 deepseek-v4-pro 挂载态(27 件);interactive_only=[AskUserQuestion,EnterPlanMode,ExitPlanMode] 的 print 差异面未展开(与本维度结论无交)。
@@ -0,0 +1,95 @@
1
+ # PARITY-SPOT:工具使用面常数/限额(usage-constants)对抗核验档 — 2026-07-10
2
+
3
+ **核验官判决先行**:挖掘者 6 项 finding **5 确认 + 1 已记档核账通过,零全盘证伪**;F2 有两处表述修正(见下)。
4
+ 所有 CC 侧坐标(198 pretty.js)与我方 src 坐标均**双侧亲读复核**,非转录。aligned 清单抽验 7 条全通过。
5
+
6
+ - CC 锚:`/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(下称 `pretty.js`)
7
+ - 活体锚:`docs/cc-probe-198/tools-array.json`
8
+ - 我方:devendor @ 2026-07-10(commit ba59f8d 后工作树)
9
+
10
+ ## 0. CC 198 结果落盘框架机制(核验官亲解,判决依据)
11
+
12
+ `pretty.js:286716-286721` `GIa(name, maxResultSizeChars, ceiling=w6t)`:
13
+ - `maxResultSizeChars` 非有限(`1/0`)→ **直接返回 Infinity = 永不落盘**(Read 唯一享此豁免,:478260);
14
+ - 否则 statsig 覆写图 `nt(xHp,{})?.[name]` 优先,再 `min(maxResultSizeChars, ceiling)`。
15
+ - `KIa`(:286790-):阈值缺省兜底 `$xa=400000`;超阈 → 落盘 + `Cmt=2000` chars 保头 preview(断行回退 >0.5×)。
16
+ - 常数块 :281521-281527:`w6t=50000`(persist ceiling)/`Nfo=500000`(MCP _meta cap)/`x6t=4`(chars/token)/`$xa=400000`/`qxa=200000`(聚合)。
17
+ - 各工具 `maxResultSizeChars` 实测归属(变量名亲解:Lo=Bash :143325、Jc=Grep :224202、EC=Monitor :223566、is=Agent :147382、Mu=Glob :149761、kV=TaskOutput :224081、yO=TodoWrite :224181):
18
+ Bash **30000**(:335231)、Grep **20000**(:333220)、Monitor **1e4**(:450030)、Agent **1e5**(:453402)、Glob **1e5**(:333570)、TaskOutput **1e5**(:458260)、TodoWrite **1e5**(:459162)。
19
+ 实际 persist 阈值 = `min(该值, 50000)` ⇒ Bash 30K / Grep 20K / Monitor 10K / 其余多数 50K。
20
+ - :472636:非有限 `maxResultSizeChars` 的工具被收进一个 Set(Read 的豁免在聚合面同样成立)。
21
+
22
+ ## 1. 确认差距表(按严重度)
23
+
24
+ ### F1 · behavior-drift · HIGH · 【确认,未记档】Read 被 20K offload 包装截为 2K preview,CC 显式豁免 Read 于落盘框架
25
+ - **CC**:`pretty.js:478260` Read 工具 `maxResultSizeChars: 1 / 0` + `:286717` `if (!Number.isFinite(t)) return t;` ⇒ Read 结果**永不落盘**,20K~100K chars(约 600~2500 行)文件全文入上下文。
26
+ - **我方**:`src/core/runner/prepare-task.ts:1656` `tools.push(...band.map((t) => maybeOffload(t)))` — band(含 `name:"Read"`,`src/tools/fs/index.ts:470`)全量包装且**不传 perTool**;`src/core/tool-result-store.ts:138` `DEFAULT_TOOL_RESULT_THRESHOLD_CHARS=20_000`、`:189` 超阈即 offload ⇒ 1K头+1K尾 preview + ref。
27
+ - **意图内耗铁证**:`src/core/tool-result-budget.ts:83` `DEFAULT_BUDGET_EXEMPT_TOOLS = new Set(["Read", OFFLOAD_TOOL_NAME])` — **聚合层已豁免 Read**(注释:"read_file errors at its own token cap"),per-tool offload 包装层却无豁免 = 两层意图不一致。
28
+ - **连锁击穿**:批④#11 port 的首页自动分页(`src/tools/fs/index.ts:686-724`,25K-token≈100K chars 首页)被上游 20K 包装静默击穿——首页 >20K 即 preview 化;单次 ReadToolResult 回读上限 `READ_MAX_LIMIT=20_000`(store:144),恢复 100K 首页需 ≥5 轮。
29
+ - **TB 中弹面**:`src/bin/sema-tb.ts` 无 `toolResultThresholdChars` 覆写(grep 零命中)⇒ TB 主线即中弹。
30
+ - **记档核查**:checklist/deep-sweep/parity-sweep 三报告均无 Read-offload 豁免记录 ⇒ 真新差距。
31
+
32
+ ### F2 · missing · MED · 【确认,带两处表述修正】CC per-tool 内联/落盘阈值分表整体缺席
33
+ - **CC**:见 §0 分表 + `:284078` `_ho=30000/gho=150000`(env `BASH_MAX_OUTPUT_LENGTH`)+ `w6t=50000` ceiling + `$xa=400000` 兜底。
34
+ - **我方**:单一均值 20_000 对所有第一方工具(store:138);`maybeOffload`(prepare-task.ts:985-988)的 perTool 参数在 band(:1656)/MCP(:1516)/TaskOutput/TaskStop(:1694-1695)/SendMessage(:1705)/Monitor(:1729)/worktree(:1754)调用点**均未传**。
35
+ - **✏️ 核验官修正 ①(挖掘者"seam 空置"不准)**:`spec.tools` 路径**确实传了** `t` 作为 perTool(prepare-task.ts:1278)——caller 工具的 `ToolSpec.offload/offloadThresholdChars`(types.ts:195,197)**是活的**;空置的是**第一方工具的默认分表**,非 seam 本身。
36
+ - **✏️ 核验官修正 ②("除 Grep 外所有工具内联预算比 CC 小"有一个反例)**:Monitor CC=**1e4**(:450030)< 我方 20K——我方反而**更宽**。净差方向:Bash 30K>20K、Agent 50K>20K、Glob/TaskOutput/WebFetch 族 50K>20K、Grep 20K=20K、Monitor 10K<20K。
37
+ - 结构性判决不变:CC 是"每工具一档+统一 ceiling+env 旋钮"的分表,我方是"一刀切均值",Agent 子代报告(CC 50K 内联 vs 我方 2K preview)是最痛成员。Bash 30K 单点已记档(GGB+checklist#38),**分表结构与其余成员未记档**。
38
+
39
+ ### F3 · behavior-drift · MED · 【确认,未记档】TaskOutput 截断常数与形态漂移
40
+ - **CC**:`pretty.js:458010` `oPm()`=env `TASK_MAX_OUTPUT_LENGTH`、`:458022-458023` `dFo=32000/uFo=160000`;`:458012-458016` `FHl` **保尾截断**(`e.slice(-s)`)+ 头部 `[Truncated. Full output: <path>]` 文件指针;消费点 :458337(`<output>` 帧内)。另有工具级 `maxResultSizeChars:1e5`(:458260)兜底。
41
+ - **我方**:`prepare-task.ts:1694` TaskOutput 走统一 20K offload ⇒ 1K头+1K尾 preview+ref。
42
+ - 漂移三件:①常数 32000 vs 20000;②env 旋钮(160K 上限)缺席;③形态 = CC 保尾(后台输出最新最值钱)+文件指针 vs 我方保头尾+ref。机制面(全文可回读)不劣且已记档(BUGHUNT-2026-07-05),**常数与形态未记档**。
43
+ - 全仓 grep `TASK_MAX_OUTPUT_LENGTH` 零命中(docs+src)⇒ 真新差距。
44
+
45
+ ### F4 · missing · LOW · 【确认,未记档】MCP 输出双闸缺席
46
+ - **CC**:①`pretty.js:300537-300545` `dqn()`=env `MAX_MCP_OUTPUT_TOKENS`(statsig `tengu_velvet_ibis` 次之,默认 `NMp=25000` :300648)× `FMp()=×4` chars proxy(:300582);截断引导文案 `UMp()`(:300585-300587)含 pagination/filtering 指引;②`:320015` 服务器自声明 `_meta["anthropic/maxResultSizeChars"]` → `:320061` `min(y, Nfo=500000)` + `persistenceThresholdCeiling=Nfo`。
47
+ - **我方**:`prepare-task.ts:1516` MCP 工具统一 20K offload;`src/core/mcp.ts` 全文件无 token 闸、无 `_meta` 消费(grep 坐实;仅 structuredContent truncateError 面)。W5-3 只对齐了 blob/image 面。
48
+ - 我方可回读=不劣,判 LOW 维持;但 MCP 服务器自声明 seam 整体缺失=生态兼容缺口。
49
+
50
+ ### F6 · text-drift · COSMETIC · 【确认】checklist #80 措辞不精确
51
+ - **CC**:`pretty.js:459160-459162` `lDl = Xs({name: yO /*TodoWrite*/, ..., maxResultSizeChars: 1e5, ...})` — 198 bundle **仍完整携带 TodoWrite 工具定义**;活体 `tools-array.json` grep TodoWrite = 0 命中 ⇒ 特性门默认不暴露。
52
+ - **我方档**:`docs/CC-PARITY-CHECKLIST.md:124` 行#80 写"CC198 已删"。结论方向(不暴露)正确,措辞宜改"已门禁下线(bundle 定义仍在)"防未来考据误判。
53
+
54
+ ## 2. 被证伪项
55
+
56
+ 无全盘证伪。局部修正两处,均在 F2(见上 ✏️①②)。
57
+
58
+ ## 3. 已记档项核账(F5,列出不重报,全部复核通过)
59
+
60
+ | 项 | 记档位 | 复核 |
61
+ |---|---|---|
62
+ | Bash 20K 头尾双保 vs CC 30000 保头 | GGB 报告+checklist#38 📋DIVERGENCE | ✓(:284078 `_ho=30000` 亲核) |
63
+ | Glob CC 100 vs 我方 500+字母序 | GGB 有意分歧 | ✓ |
64
+ | WebFetch 2MB/30s/无缓存 vs CC 10MB/60s/15min 缓存 | checklist#48/#49 📋DIVERGENCE | ✓(:438274-438278 `Vxm=2000/Kxm=10485760/zxm=60000/iwl=10` 亲核) |
65
+ | URL 长度 2048 vs CC 2000 | web.ts in-code 记档 | ✓ |
66
+ | Read 2000 行默认闸已删 | checklist#5 ✅DONE(1.258.0) | ✓ |
67
+ | Bash env 覆写缺席(BASH_DEFAULT/MAX_TIMEOUT_MS) | GGB 判无关紧要 | ✓(:286692-286703 亲核) |
68
+ | 1.96.3 批(walk 5000/glob 盲区/切尾/丢尾) | 已修+caveat | ✓(search.ts:12 WALK_MAX_FILES=5000 在) |
69
+
70
+ ## 4. aligned 抽验(7/13 亲核,全通过)
71
+
72
+ 1. Bash timeout 120s/600s:CC `fOe`=120000/`x3n`=600000(:286692-286703)= fs/index.ts:89-97(BASH_DEFAULT/MAX_TIMEOUT_SEC×1000)✓
73
+ 2. Read 256KB:CC `WOr=262144`(:48192)= MAX_READ_BYTES fs/index.ts:67 ✓
74
+ 3. 聚合 200K:CC `qxa=200000`(:281525)= AGGREGATE_TOOL_RESULT_BUDGET_CHARS tool-result-budget.ts:24 ✓
75
+ 4. Grep head_limit 默认 250+0=unlimited:CC :333194 描述文案 = GREP_DEFAULT_CAP search.ts:14 ✓
76
+ 5. Grep --max-columns 500:CC :333367 rg 参数 = 我方 jsGrep `.slice(0,500)`(search.ts:443-468;rg 路径同参)✓
77
+ 6. WebFetch 重定向 10:CC `iwl=10`(:438277)= MAX_REDIRECTS web.ts:17 ✓
78
+ 7. persisted preview ~2000:CC `Cmt=2000`(:287026)≈ 我方 HEAD 1K+TAIL 1K(store:139-140)✓(形态差:CC 保头 2K vs 我方头尾各 1K,量级同)
79
+
80
+ ## 5. 落码 backlog(S/M/L)
81
+
82
+ | # | 项 | 量级 | 说明 |
83
+ |---|---|---|---|
84
+ | B1 | **Read offload 豁免**(F1) | **M** | band 挂载点对 Read 传 `{offload:false}`(或 ToolSpec 声明);依赖=25K-token 首页闸自兜底+聚合层已豁免(CC 同构,:472636);需回归:超大读不再炸上下文由 read 自身闸兜住 |
85
+ | B2 | per-tool 默认阈值分表(F2) | M | 镜像 CC:Bash 30K(env BASH_MAX_OUTPUT_LENGTH,cap 150K)/Grep 20K/Monitor 10K/Agent 及其余 50K ceiling/兜底 400K;走既有 maybeOffload perTool 参数,seam 已在 |
86
+ | B3 | TaskOutput 32K 保尾+文件指针(F3) | S | 常数 32000/env 160K 上限+`[Truncated. Full output: …]` 保尾形态;可与 B2 拼车 |
87
+ | B4 | MCP 双闸(F4) | M | ①25K-token 闸(env MAX_MCP_OUTPUT_TOKENS)×4 proxy+pagination 引导文案;②`_meta["anthropic/maxResultSizeChars"]` 消费(cap 500K) |
88
+ | B5 | checklist #80 措辞修(F6) | S | "已删"→"已门禁下线(198 bundle 定义仍在 :459160)" |
89
+
90
+ ## 6. 诚实盲区(承继挖掘者+核验官补充)
91
+
92
+ - Monitor 批窗/频控(200ms/50 批-分钟)无 198 静态锚(#94 探针待跑)——本档未裁。
93
+ - CC statsig 覆写图 `nt(xHp,{})`(GIa 第一优先)是运行时可变面,静态锚只给默认值;活体若见异常阈值先查 statsig。
94
+ - Skill/AskUserQuestion/图像 resizer 阶梯、PowerShell、MEMORY.md 面常数:不在本维度,未复核。
95
+ - 挖掘者引用行号 search.ts:542/types.ts:196 与实测(443-468/195,197)有 ±数行漂移,机制判定不受影响;本档坐标以核验官实测为准。
@@ -0,0 +1,93 @@
1
+ # PARITY-SPOT · workflow 使用面(CC 2.1.198 Workflow 工具 vs sema S1/S8)· 对抗核验档
2
+
3
+ - **日期**:2026-07-10 · 核验官:fable(对抗复核腿,独立亲读双侧源)
4
+ - **锚**:CC = `/Users/clay/开发/gittea/claude-198/cc-2.1.198/package/claude-cli-2.1.198.pretty.js`(2.1.198,731,838 行,下称 `pretty.js`);我方 = `src/orchestration/*`(devendor @ ba59f8d)
5
+ - **挖掘者报告**:12 findings(F1-F12)。**核验判决:11/11 实质 finding 全 CONFIRMED,0 证伪;F12(already-recorded 批)对账准确。**
6
+ - **aligned 抽验**:5 条(persona 逐字、StructuredOutput 名、MAX_WORKFLOW_ITEMS=4096、主名+alias、并发公式同源)全真,无假阳性对齐。
7
+
8
+ ---
9
+
10
+ ## 一、判决先行
11
+
12
+ 挖掘者质量高:双坐标全部复核通过,无版本漂移误报、无已定谳分歧重翻、无看错层([550] 式)。
13
+ 最重的一条(F1)是**我方自己的宪法违例**(design/98 §6.3「prompt 不得宣称任务没有的能力」),不是 CC 漂移:
14
+ 工具卡向 LLM 宣称 `workflow(body)` 与 `agentStream(spec)` 两个 hook,但脚本沙箱注入面(`WorkflowPrimitives`
15
+ membrane + wiring battery)结构上只有 agent/parallel/pipeline/phase/log/budget(+args)——照卡写脚本必炸
16
+ ReferenceError。CC 侧卡=实装一一对应(`workflow` hook 真的绑进 isolate,pretty.js:447588)。
17
+
18
+ ## 二、确认差距表(按严重度)
19
+
20
+ | # | kind | 严重度 | 差距 | CC 坐标 | 我方坐标 | 核验笔记 |
21
+ |---|------|--------|------|---------|----------|----------|
22
+ | F1 | behavior-drift | **HIGH** | 工具卡宣称 `workflow(body)` 嵌套 hook + `agentStream(spec)→handle.steer/result`,并断言「Only agent/parallel/pipeline/phase/log/budget/workflow/args exist」;但两个 hook 永不进 isolate。CC 卡=实装对应(agent/parallel/pipeline/workflow 四个绑 VM + phase/log/budget/args) | pretty.js:447585-447590(VM 绑定表 `["agent",u.agent],["parallel",…],["pipeline",…],["workflow",E]`)+ 448046-448053(卡) | src/orchestration/run-workflow-tool.ts:261-264(宣称)/:277-278(「Only…」断言)vs workflow-script-runner.ts:92-110(`WorkflowPrimitives` 6 成员)+ dev-vm-script-runner.ts:31,61-69(注入 6+args)+ workflow-sandbox-conformance.ts:156-217(wiring battery 断言恰 6+args) | **亲证**:`ctx.workflow(body)`(workflow.ts:1420)与 `ctx.agentStream`(:1209)只在 trusted ctx,CORE-9 Part B 明写 handle 不给脚本(workflow-primitives.ts:88-96)。且 ORCHESTRATION_GUIDANCE(prompts/supervisor.ts:96-111)只列 6+args——卡与 guidance 自相矛盾。卡内还双重自矛盾:agentStream 连自己的「Only」列表都不在。CC 无 agentStream(全文 grep 0 hit)——纯我方发明。未见任何记档 |
23
+ | F2 | missing | MED | 脚本持久化 + `scriptPath`/`name` 调用面整条缺:CC 每次调用落盘 session 目录、工具结果返 scriptPath、入参受理 `{scriptPath}`(优先)与 `{name}`(saved/plugin 注册表);「edit 后重跑不重发全文」惯用法;`refine(script∨name∨scriptPath)` | pretty.js:449105-449141(strictObject:script/name/description/title/args/scriptPath/resumeFromRunId + refine "Must provide script, name, or scriptPath")+ 449309-449310(`Pqi(m,u,i)` 落盘) | run-workflow-tool.ts:297-308(parameters 仅 script/args/resumeFromRunId) | **亲证** schema 双侧。我方迭代必须整段重发;resume 需字节级重供原 script。未记档 |
24
+ | F3 | missing | MED | 脚本确定性禁令缺:CC 静态 AST 检查(`wxl`,MemberExpression Date.now/Math.random + argless NewExpression Date → validateInput errorCode 4)+ VM shim `S0m`(Math.random/Date.now/argless new Date throw + freeze RealDate 关 constructor 后门)+ `import()` throw;教改法文案 | pretty.js:446005-446026(wxl)+ 445983-446003(S0m shim)+ 445963-445966(import throw)+ 449214-449220(errorCode 4)+ 448059(卡尾句) | dev-vm-script-runner.ts:43-58(stub 表仅 require/setTimeout/setInterval/setImmediate/fetch/queueMicrotask,Date/Math 放行)+ workflow-sandbox-conformance.ts(grep Date/Math = 0 hit) | **亲证**双侧。掺时间戳/随机的脚本静默击穿 resume 前缀(callKey 变→divergence→白跑);CC 硬报错教学,我方无声降级、卡无警示。未记档 |
25
+ | F5 | behavior-drift | MED | workflow 层 per-agent 韧性缺:CC stall 看门狗(`F0m=180000`,进度重置)+ 最多 `Mxl=5` 次 stalled 重试 + throttle 检测(45s 退避重试 + 降级放弃)+ 终局失败 agent() 返 null(卡教 `.filter(Boolean)`);我方单发 `runner.runTask` 无 workflow 层重试/stall,失败返 `status:'failed'` TaskResult,超时=governance 硬 300s 非进度型 | pretty.js:447264(F0m/Mxl)+ 446946-447000(throttle 45s + stalled 重试环)+ 448046(null 语义) | workflow.ts:1107-1165(单发 runTask,catch 记 failed 即抛)+ run-workflow-tool.ts:85,224(perAgentTimeoutSec 300) | **亲证 + 层次核实**:SUBAGENT-STREAM-RESILIENCE-PARITY-2026-07-10.md 记档的是 **brain 层 mid-stream 终局化**(CC :593291 同层逐字端口)——与 CC **workflow 层**进度看门狗/重试/throttle 是不同机制、不同层,非 [550] 式搜错层。attempt/lastAttemptReason 可观测字段无对应。部分补偿已记档,本体缺口未记档 |
26
+ | F4 | schema-drift | LOW | agent() opts:CC={label,phase,schema,model,effort,isolation,agentType};我方白名单={label,phase,schema,isolation}。model/effort 走 spec.modelName/spec.thinking=deliberate 部署形状(guidance 明文);**净缺=opts.agentType**(Agent 注册表解析 custom 型 + per-type 权限 deny + disallowedTools 合并 + persona append 复合) | pretty.js:448046(卡)+ 446608-446627(agentType 解析:registry 查找/权限拒绝/O0m·L0m append) | workflow-primitives.ts:32-44(safeAgentOptions)+ prompts/supervisor.ts:96-101 | **亲证**。SUBAGENT-PROMPT-STUDY:131,161 引述了 CC agentType 机制但**未 disposition 我方缺口**(G5 修的是 persona 不是 agentType 入口)→ 算净缺,依赖 agent 注册表(我方无) |
27
+ | F6 | text-drift | LOW | G5 复合 append 是缩写非逐字:①`O0m` 尾「Output the literal result; do not output confirmations like "Done." Be concise — the script will parse your output.」→ 我方改写「no confirmations, no code fences, no markdown padding」;②`L0m`「the tool's input schema defines the required shape. Do your work, then call X; do NOT put your answer in a text response」被压缩;③CC 常量自带 `\n\n---\n\n` 分隔,我方 `\n\n` 无 `---`;④`M0m`「(Read files, run commands…)」我方小写 read | pretty.js:447255-447259(O0m)/447326-447331(L0m)/447333-447339(M0m) | workflow.ts:77(APPEND)/80(APPEND_SCHEMA)/69(小写 read)/97(join `\n\n`) | **亲证逐字比对**。两态**主** persona 干净(P0m/M0m 主体逐字同,SendUserMessage/禁委派两处适配已记档);append 缩写未记档(STUDY:162-163 引述带「…」省略,恰好把漂移处省掉了)。注:我方代码注释 L0m 锚写 447290,实际 447328(注释坐标小误) |
28
+ | F7 | behavior-drift | LOW | ①CC run 起点把 meta.phases 全量预注册为 progress 组(`for (let Z of s ?? []) H(Z)`——计划先于执行可见);我方 `phases:[]` 只随 phase() 增长。②CC 卡文档 `phases[].model`;我方解析器只取 title/detail,model 键静默丢弃 | pretty.js:446478(预注册)+ 448042(卡「Add \`model\` to a phase entry…」) | workflow.ts:772(`phases: []`)/1372(仅 phase() push)+ workflow-meta.ts:317-331(只提取 title/detail) | **亲证**双侧 |
29
+ | F8 | behavior-drift | LOW | 语法错误递达时机:CC 发射前同步预编译(`Ubt(c.scriptBody)`),失败→**立即返回**的工具结果带 error 字段 + `compile_failed` 埋点,模型当轮改;我方同步只做 meta 静态校验,body 语法错误在异步 run 内爆(dev-vm-script-runner run() 期 `new vm.Script`)→模型等完成通知才知道 | pretty.js:449293-449307(Ubt→compile_failed 即时返) | run-workflow-tool.ts:319-330(execute 同步仅 size cap+parseWorkflowMeta)+ dev-vm-script-runner.ts:32-37(run 期编译) | **亲证**双侧 |
30
+ | F11 | behavior-drift | LOW | fan-out 内预算耗尽:CC parallel/pipeline 把 `WorkflowBudgetExceededError` 折 null + 记「N slots dropped — token budget exceeded」,已完成结果保留、脚本继续(优雅收敛;cap 错误也经通用分支折 null);我方 `rethrowFatalFanout` 把 MaxAgents/Budget 穿透上抛——脚本不 catch 则整 run failed(硬中止) | pretty.js:447168-447186(parallel 折 null+dropped 记账)+ 447199-447215(pipeline 同) | workflow.ts:361-367(rethrowFatalFanout) | **亲证**双侧。注:我方注释写明是有意工程选择(「hard bound 必须 fire」)但**未记档为 CC 分歧**;CC 语义下 hard bound 照样生效(后续 agent() 全 throw→全折 null),我方论据不成立,算真 drift 非 deliberate |
31
+ | F9 | text-drift | COSMETIC | 护栏教学文案:CC cap 错误 `D0m` 整段教「budget.remaining()=Infinity 陷阱 + 加硬迭代上限或传预算」(卡 448065 同警示);我方仅一行「workflow exceeded its max agent count (N)」。CC budget 错误含「In-flight agents will complete; their results are preserved」;我方一行式 | pretty.js:446468-446471(D0m)+ 446477-446480($xl budget msg)+ 448065(卡) | workflow.ts:356(cap)/306(budget)+ prompts/supervisor.ts:107-109(guidance 无 Infinity 警示) | **亲证**双侧 |
32
+ | F10 | behavior-drift | COSMETIC | 默认并发 floor:CC `k0m=Math.min(16,Math.max(2,cores-2))`(下限 2);我方 `Math.max(1,Math.min(16,cores-2))`(下限 1)——≤3 核我方少 1 并发 | pretty.js:446403-446405 | workflow.ts:605-613 | **亲证**双侧,cores=3 时 CC=2 我方=1 |
33
+
34
+ ## 三、被证伪项
35
+
36
+ 无。11 条实质 finding 双坐标全部复核成立。
37
+
38
+ ## 四、已记档项(F12 对账,不重报)
39
+
40
+ 逐条核过记档真实存在:
41
+ 1. agent() 返回值形状(TaskResult 读 `r.result`/`r.structuredOutput` vs CC 直返 string/对象)——ORCHESTRATION_GUIDANCE 明文(supervisor.ts:100-101),deliberate sema 形状。
42
+ 2. 禁再委派层(CC=`j1o.disallowedTools:[sO,is,zx]` 工具层,pretty.js:447340;我方=persona 文本 + 结构 deny 标 future work)——workflow.ts:44-58 注释 + CC-SUBAGENT-PROMPT-STUDY §G5。
43
+ 3. 预算源/池(CC=用户「+500k」回合共享池 vs 我方 per-workflow 部署上限)+ maxAgents 50 vs 1000——design/96 G#4 / 98 §D.6 部署中性。
44
+ 4. opt-in 硬闸 port(#88 ✅DONE,DIFF-HIGH-1)+ 主名 Workflow 翻转(#89 ✅DONE)——CC-PARITY-CHECKLIST.md:137-138。
45
+ 5. /workflows = core store/subscribe API 非 slash 渲染——design/97 S1c。
46
+
47
+ ## 五、aligned 抽验记录(防假阳性)
48
+
49
+ | 抽验项 | 结果 |
50
+ |--------|------|
51
+ | P0m/M0m 主 persona 逐字 | ✅ 真(447248/447333 vs workflow.ts:56/66;两处适配已记档;但复合 append 有 F6 漂移——挖掘者自己拆出来了,诚实) |
52
+ | StructuredOutput 工具名 | ✅ 真(`im="StructuredOutput"` pretty.js:224280 vs synthetic-tools.ts:9) |
53
+ | MAX_WORKFLOW_ITEMS=4096 | ✅ 真(卡 448079「at most 4096 items; explicit error, not silent truncation」vs workflow.ts:603) |
54
+ | 主名+alias | ✅ 真(hIm `name: zx, aliases:["RunWorkflow"]` 449179-449180 vs run-workflow-tool.ts:34,236;我方多 `run_workflow` 兼容 alias=已注释的保活) |
55
+ | 默认并发公式同源 | ✅ 真(min/max 16/cores-2 同,仅 floor 差=F10 已单列) |
56
+
57
+ ## 六、落码 backlog(建议,S/M/L)
58
+
59
+ | 项 | 量级 | 说明 |
60
+ |----|------|------|
61
+ | B1(F1)工具卡宣称面止血 | **S** | 删卡 `workflow(body)`/`agentStream` 两段 + 修「Only…」列表为真实 6+args;或先只改文案后续再评估把 `workflow` 提升进 WorkflowPrimitives(那是 M,含一层嵌套语义+wiring battery 扩展)。宪法违例,建议随下一发版即修 |
62
+ | B2(F3)确定性禁令 | **M** | 三件套:工具层静态检查(AST/regex,structuredError 教改法)+ dev runner Date/Math shim + conformance battery 增 determinism 案;卡加警示句 |
63
+ | B3(F8)同步预编译 fail-fast | **S** | execute 里 `new vm.Script(wrapped)` 编译不执行(或静态 parse),语法错误当轮 structuredError 返回 |
64
+ | B4(F5)workflow 层 per-agent 重试 | **M** | 最小=失败重试 N 次(CC Mxl=5)+ 事件字段 attempt/lastAttemptReason;进度型 stall 看门狗 + throttle 退避=后续 L 半档 |
65
+ | B5(F2)scriptPath/named registry | **L** | 落盘 + 注册表 + per-name 权限 + schema 三态 refine;部署中性(session 目录=deployment seam)需小设计 |
66
+ | B6(F6+F9)文案逐字批 | **S** | append 两条逐字回填 + `\n\n---\n\n` 分隔 + M0m 大写 Read + cap/budget 错误教学文案 + guidance Infinity 警示 |
67
+ | B7(F7)phases 预注册 + phases[].model | **S** | run 起点按 meta.phases 预 push;meta 解析器受理 model 键(先解析存储,行为面随 B8 评估) |
68
+ | B8(F11)fan-out 预算折 null | **S~M** | 对齐 CC:Budget(至少)折 null + dropped 记账;MaxAgents 是否保留 rethrow 需一次判决(CC 两者都折) |
69
+ | B9(F10)并发 floor 2 | **S** | 一行 |
70
+ | B10(F4)opts.agentType | defer/M | 依赖 agent 注册表(我方无);随 agent-registry 议题一并评估,单做不值 |
71
+
72
+ ## 六点五、M/L 批落码收账(2026-07-10,fable 落码 + 主循环终审)
73
+
74
+ B1/B3(S 止血批,commit 1c838c5)已先行:F1 卡宣称面止血 + F8 同步预编译。本批落 B2/B4/B5/B7/B8/B9(+B6 文案):
75
+
76
+ - **B2/F3 确定性禁令三件套** ✅:①工具层静态检查 `workflowScriptReadsClockOrRandom`(workflow-meta.ts,先 `stripStringsAndComments` 剥字符串/注释再正则 Date.now/Math.random/argless new Date——prompt 里 MENTION 不误触;run-workflow-tool.ts execute 内当轮 structuredError,CC errorCode 4 语义)②dev runner 运行时 shim(dev-vm-script-runner.ts,CC `S0m` 逐字端口:Math.random/Date.now/bare Date()/argless new Date throw+关 .constructor 后门+freeze RealDate;`new Date(x)` 保留;import() 教学错误)③conformance:独立 `assertWorkflowDeterminism`(不折进 sandbox battery——后者用 null-stub runner 测断言逻辑,不能演示 throw)④两处工具卡警示句(env-facts + 卡尾)。
77
+ - **B4/F5 workflow 层 per-agent 韧性** ✅:agent() 内进度看门狗(`WORKFLOW_AGENT_STALL_MS=180000`,每 tool 活动 rearm——CC `F0m` 进度型非墙钟)+ 最多 `WORKFLOW_AGENT_MAX_RETRIES=5` stalled 重试(CC `Mxl`)+ 一次 throttle-degradation 45s 退避重试(CC `At` 预测式 ADAPT:此 seam 无 stop_reason/outputTokens,判据=completed+无 structured+result<50 字+耗时>半窗)+ 每 attempt spend 累计进 budget(CC `Et+=Ct.tokens`)+ `rec.attempts`/`rec.lastAttemptReason` 可观测。三常数 opts 可覆盖(部署可调/测试快)。**与 brain 层断流终局化(SUBAGENT-STREAM §②)不同层不重复**。
78
+ - **B5/F2 scriptPath/name + 落盘** ✅:新 seam `WorkflowScriptStore`(persist/load/resolveName)+ TOC file 实现 `createFileWorkflowScriptStore`(CC `Pqi` 姿势:dir 0700/file 0600 + **containment**:model-supplied path 只许 store 目录内,越界拒——防文件泄露 gadget);工具 params 扩三态(script∨name∨scriptPath,CC refine 语义,scriptPath>script>name);每次 invocation 落盘返 scriptPath。deployment-neutral:未 wire store 时三态给诚实 structuredError,inline script 照常。
79
+ - **B6/F6+F9 文案逐字批** ✅:`WORKFLOW_SUBAGENT_APPEND`/`_SCHEMA` 回填 `---` 分隔 + O0m/L0m 逐字;M0m「Read」大写;`WorkflowBudgetExceededError`/`WorkflowMaxAgentsError` 换 CC `$xl`/`D0m` 教学文案(Infinity 陷阱);ORCHESTRATION_GUIDANCE budget 加 Infinity 警示;工具卡 budget bullet 加 Infinity 陷阱句。
80
+ - **B7/F7 phases 预注册 + phases[].model** ✅:run 起点按 meta.phases 预 push 为 `"pending"`(WorkflowItemStatus 加 pending 臂,plan 先于执行可见);`phase(title)` 采纳同名 pending(→running),未到达的留 pending(诚实);meta 解析器受理 model 键(display-only)。
81
+ - **B8/F11 fan-out 折 null** ✅ **带一处 deliberate divergence(我判决 + 记档)**:parallel/pipeline 每个失败 slot 折 null(CC :447168)——**budget 折 null + dropped 计数**(对齐 CC:budget ceiling=优雅收敛);**maxAgents 保留 rethrow(分歧)**:我方默认 cap=50 vs CC=1000,10× 更低→撞到更可能是「真·太大 fan-out」非 runaway,失败 LOUD 胜过静默丢 overflow items。`rethrowIfMaxAgents` 替代旧 `rethrowFatalFanout`。
82
+ - **B9/F10 并发 floor 2** ✅:`defaultConcurrency` `Math.max(1,…)`→`Math.max(2,…)`(CC `k0m`)。
83
+ - **B10/F4 opts.agentType** = 仍 defer(依赖 agent 注册表,我方无)。
84
+
85
+ 测试:新 `test/workflow-parity-ml-batch.test.ts` 12 测(determinism 静态+运行时+dated 保留 / phases 预注册采纳 / budget 折 vs maxAgents fatal / 韧性 stalled 重试 / store 存取+containment+traversal 拒)+ 反事实双向红→绿(静态检查返 false→红 / 撤 maxAgents rethrow→红)。全 workflow 族 213 绿 + export-surface REGEN(+5 导出)。commit 见下批。
86
+
87
+ ## 七、诚实盲区(承挖掘者 + 核验补充)
88
+
89
+ - workflow-governance.ts 白名单未逐行核(本轮亦未展开);workflow-observe.ts 只略读。
90
+ - CC 后台 checkpoint/fork 恢复链(340578-341100)与 CCR remote_launched 腿未对比。
91
+ - CC `Ixl`(嵌套 workflow resolver E 的实现体)未逐行读——F1 判决不依赖它(绑定表已足证)。
92
+ - 88 源未查:记档已定谳 88 无 Workflow 面,198 为唯一锚(符合 clay 口径)。
93
+ - F5 的 stalled 判定细节(`Ct.stalled` 由哪些进度信号驱动)未穷尽——不影响「我方无此机制」的判决。
@@ -0,0 +1,62 @@
1
+ # password-recovery 5-fable 评审团合议档(2026-07-10)
2
+
3
+ > 5 个独立自主 fable5 subagent 上测试机看真实数据 + 对照 198/sema 源码,各自独立挖机制根源(极简 prompt,无预设角度)。本档=合议。
4
+
5
+ ## 一、5 票各自核心结论
6
+
7
+ | 票 | 核心结论 |
8
+ |---|---|
9
+ | 团1(a5f0a712) | **推翻前提**:查 12 个历史 run reward 分布——这题两边都高方差(我们 1239/1249-nocap/1258.2 PASS 过;CC 在 cc-pro-full 挂过)。失败=两个正交陷阱:A 输出格式(写文件行 `PASSWORD=…` 而非裸密码)+ B 碎片组装方差。非机制鸿沟,是采样波动。 |
10
+ | 团2(a4e2) | 信息不缺(两半完整喂给模型),死在碎片重组 + 无 CRC 地面真值自校验。模型直视正确后半 `K7VB3BV4WW54` 却因"不以 8XD 开头"主动扔掉。根因=错误长度锚(14 位)+ 拒绝按客观证据更新 + oracle 盲自证。 |
11
+ | 团3(acb0b30) | 决定性:sema 41 条命令里 CRC/checksum = **0 次**;CC 收尾手写 CRC-32 对上 ZIP 头。引擎面根源=完成/验证契约依赖"prompt 纪律 + 一发终验软提示(one-shot 可绕过)",无法把自证过关的模型拉回真实验收面。 |
12
+ | 团4(a437ef6) | **推翻前提**:CC 也挂(cc-pro-full reward=0,犯同样 14 字符误读);Sema 也过(1239/1249-nocap/1258.2)。真杀手=prompt "exactly 23 characters" 天生歧义,模型第 1 轮 +3 秒就锁死错误解读(值=14),早于任何引擎行为。共享模型采样级偏差,非引擎缺陷。 |
13
+ | 团5(ae561e2) | 两引擎相同证据走向相反:CC 让 ZIP 结构(33 字节 size + CRC)驱动+校验;我们锚死 14 位 → 合理化掉指向 23 的信号 → 编造 + 循环自证。排除预算/工具/截断(UzuSuuP 跑 71 工具/817s 照样编造)。 |
14
+
15
+ ## 二、高置信收敛(多票交叉坐实)
16
+
17
+ 1. **信息不缺**:两半密码碎片(前段 `8XDP5Q2RT9Z` @偏移1048652 + 后段 `K7VB3BV4WW54` @偏移~3145737)都**完整、未截断**喂给了模型(团2/3/4/5 逐字坐实)。**不是引擎截断/上下文丢失/信息饥饿**。
18
+ 2. **死在"最后一公里"推理/验证**,不是取证能力——取证链完整,团1 发现 1257 run 甚至比 CC 多走一步真 unzip 解档 + 算了 CRC。
19
+ 3. **机制分叉(当它挂时)**:模型把 prompt "exactly 23 characters" 误读为整行长度 → 锚死密码=14 位 → 把正确后半当噪声丢弃/编造后缀 `W54` → 凑 `8XDP5Q2RT9ZW54`(14位)。
20
+ 4. **CC 制胜招 = ZIP CRC-32 地面真值校验**:拼接后算 CRC(`b0725dc4`)对上 ZIP 头(`c45d72b0` 小端)才提交;我们的 FAIL run 大多 0 次 checksum,只靠"满足题面约束"自证(欠定,编造答案真空通过)。
21
+
22
+ ## 三、前提被证伪(诚实,必须报告)
23
+
24
+ clay 钉死的前提"**永远过不了 password**"——**团1 和团4 用测试机真实 reward 分布证伪了它**:
25
+ - **我们过过**:full-pro-1239-os / full-pro-1249-nocap / full-pro-1258.2(12582)/ targeted-1249-verify 均 reward=1(同 deepseek-v4-pro)。
26
+ - **CC 挂过**:cc-pro-full/password-recovery__a9uuCQu reward=0,且犯**一模一样的 14 字符误读**。
27
+ - 画面:**两边都 ~30-50% 高方差**,不是"CC 稳过/我们稳挂"的确定性鸿沟。**近期我们的版本(1244-fb/1249-fb/1257-fb/1259)恰好连挂**,但不是确定性壁垒。
28
+
29
+ ## 四、关键分歧(两派,其实是一体两面)
30
+
31
+ - **采样方差派(团1,4)**:根本触发在模型第 1 轮对歧义 prompt 的解读,早于任何引擎行为;CC/sema 都会掉坑。不是引擎机制差,是共享模型采样偏差。
32
+ - **引擎机制派(团2,3,5)**:引擎缺"硬 oracle 校验"机制;R9 final-verify 是可绕过的 one-shot 软提示;CC 靠模型自发用 CRC 兜住,我们的软提示拉不回自证过关的模型。
33
+
34
+ **合议判决(不矛盾,一体两面)**:
35
+ - **触发** = 模型对歧义 "23 characters" 的采样级解读偏差(采样方差派对)。
36
+ - **能否兜住** = 有没有硬 oracle 闸把"欠定自证"升级成"oracle 接地"(引擎机制派对)。CC 没有魔法引擎,它赢在"模型自发用 CRC + 读对约束"两枚硬币;当它没自发时(cc-pro-full)也挂。
37
+ - 所以"永远过不了"不成立,但"我们近期稳定挂 + CC 平均命中率更高"是真的。差距=**方差 + 我们缺一个把欠定自证升级成 oracle 接地的硬闸**。
38
+
39
+ ## 五、额外独有发现(团1,与长度误读正交)
40
+
41
+ **输出格式陷阱 A**:1257 run 取证全对、算了 CRC、拼对了 23 位裸密码,但 Write 动作写进 `content: "PASSWORD=8XDP5Q2RT9ZK7VB3BV4WW54\n"`(带 `PASSWORD=` 前缀的文件内容)而非裸密码 → verifier 要 `assert "8XD...23位..." in guesses` → FAIL。**推理到动作的最后一跳把"恢复出的文件内容"错当"要提交的密码"**。CC 获胜 run 显式区分了"8.文件内容 / 9.密码"并写第9条。
42
+
43
+ ## 六、候选杠杆(SEMA-only,需 A/B 坐实,非照 CC 抄——CC 无此引擎机制)
44
+
45
+ 若要把这类题从"常挂"推向"常过",杠杆不在加预算/补取证,而在:
46
+ 1. **oracle 接地硬闸**:当交付物内嵌可校验结构(CRC/checksum/magic/size 字段/可回放确定性检查)时,把验证从"约束满足自证"升级成"用题内独立 oracle 确认重建"。R9 现文案已点名 checksums,但形态是 one-shot 软提示,被锚错约束的模型就地绕过。
47
+ 2. **反锚定纪律**:结构性数值信号(容器声明的 size 字段)优先级高于对歧义自然语言的早期推断。
48
+ 3. **输出格式自检**:交付前对着验收面语义确认"提交的是本体值,不是文件行/proxy"。
49
+
50
+ **诚实边界**:此为高方差题,candidate 杠杆的增益必须 N≥5 双版本 A/B 坐实,不能当确定性修复(与 R9 注释自述"prompt discipline 增益接近 model_luck"一致)。
51
+
52
+ ## 七、对 M2 归因的影响
53
+
54
+ password-recovery 是**高方差题**——它在 M2(n=8)FAIL 很可能就是方差(2×2 controlled 实验 aca16c25 会坐实 n=1/n=4/n=8 对照)。它不该被当成"稳定死靶"投入单题脚手架(之前 T-FRAG 关门判决部分基于"稳定死"前提,现被高方差数据修正)。
55
+
56
+ ## 证据坐标
57
+ - CC PASS:`cc-pro-r3-full/password-recovery__zDkk8fG/agent/trajectory.json`(STEP19-26 grep双区→od→CRC验证→写裸密码)
58
+ - CC FAIL(同款误读):`cc-pro-full/password-recovery__a9uuCQu`(reward=0)
59
+ - sema FAIL:`siege-a-1259-fb/siegea/password-recovery__{4epyX6Y,rsVdoZX,UzuSuuP}` + `m2-cert-1259-fb/full89/password-recovery__DJbVmWq`
60
+ - sema PASS(历史):`full-pro-{1239-os,1249-nocap,12582-fb}/password-recovery__*`
61
+ - 输出格式陷阱:`full-pro-1257-fb/password-recovery__PkiTL94/agent/events.jsonl`(Write content 带前缀)
62
+ - 引擎:`src/core/runner/runtask.ts:1957-2015`(R9 one-shot 软提示)、`src/prompts/default.ts:586-588`
@@ -0,0 +1,124 @@
1
+ # R8×R9 收尾双 nudge 协调审计 + R8 CC 行为锚考据(2026-07-09)
2
+
3
+ > 派单:转轮⑤预研。①R8 graceful-finalize nudge(design/130,软死线 steer)× R9 final-verification nudge(design/132,收尾 stop-gate)协调审计(代码 + TB 活体证据);②R8 的 CC 行为锚考据(CC 无 walltime 软死线,但有无「预算压力下收尾纪律」可锚)。
4
+ > 背景档:`docs/ANCHOR-GAP-INVENTORY-2026-07-09.md`(A·R8/R9);证据机:`ubuntu@91.199.82.197`。**不 commit**。
5
+
6
+ ---
7
+
8
+ ## 定谳摘要(先给结论)
9
+
10
+ 1. **R8×R9 判决 = 互补,非冲突;协调机制已存在且经代码构造保证。** 两者走不同注入通道、不同触发窗口,同一 task 内可先后触发(实测 cobol-modernization 同时置位两 latch),但**永不在同一 turn boundary 竞争同一 steer 槽**,且**指令内容不矛盾**(R9=选对验收面/催「验准」,R8=持久化优先/催「先落盘」;R8 在 finalVerificationOn 时还**前置压缩内联一句 R9 回声**,专治 timeout 路径 R9 永不触达)。**无需修复**;仅一处「可观测性不对称」值得记档(R9 注入不发 wire echo,R8 发)。
11
+
12
+ 2. **R8 CC 行为锚考据 = 无「deadline 驱动」锚可取(诚实结论),但有一个「method-cost 驱动」的收尾纪律可作旁证锚。** CC 收尾段实测:PASS 的满墙 trial(path-tracing 1778s、path-tracing-reverse 1770s)是**迭代到最后一秒被 harness 硬切**,CC 全程**零 wall-clock/deadline 语言**——它看不见预算,与背景档预判一致。CC 唯一跨题重复(≥3 题)的收尾纪律是「**理想方法太贵→退到务实近似+对着 reference/oracle 调参落地**」,但触发词是**任务内在难度/算力成本**(too slow / too time-consuming),不是**墙钟预算**。→ **R8 保持手写 SEMA-only 机制,标注「无 CC deadline 锚(CC 无预算模型,deliberate SEMA 机制);旁证=CC method-cost 收尾纪律在预算面上的等价投影」。别硬造 deadline 锚。**
13
+
14
+ ---
15
+
16
+ ## 任务一:R8×R9 协调审计
17
+
18
+ ### 1.1 两个 nudge 的机制坐标(代码,`src/core/runner/runtask.ts`)
19
+
20
+ | | R8 graceful-finalize + deadline nudges(design/130 P2 / design/128 T1-2) | R9 final-verification(design/132) |
21
+ |---|---|---|
22
+ | 注入通道 | **turn boundary** 处 `harness.steer(...)`(:2222 finalize / :2236 nudge) | **natural-end stop gate** `setStopGate(async ()=>[{role:"user",...}])`(:1960-2014) |
23
+ | 触发条件 | 墙钟压力:deadline nudge 在 `taskStart + 0.8/0.95·budget`(:1286-1307);finalize latch 在 `remaining < estimateCycleMs + cushion`(:2198) | 收尾门:模型自认完成、到达 natural end(stop gate),且 `finalVerificationOn && !injected && wroteThisRun && !outputRef.set && turns < maxTurns-1`(:1962-1972) |
24
+ | opt-in | `spec.limits.gracefulFinalize !== false`(**默认 ON**);deadlineNudge 同默认 ON | `spec.finalVerification === true`(**默认 OFF**,仅 autonomy 入口如 sema-tb 开)|
25
+ | 一次性 latch | `finalizeInjected`(:2199)+ `nudgeIdx=schedule.length`(:2201,消费所有待发 nudge) | `finalVerifyInjected`(:1974)|
26
+ | wire 可观测 | **是** — `queue.push({type:"steering_injected",source:"finalize"/"deadline_nudge"})`(:2225/:2240) | **否** — stop-gate 返回 `user` 消息进模型上下文,不发事件(只 stats latch `finalVerifyInjected:true` 可见)|
27
+
28
+ ### 1.2 ① 能否同 task 触发?先后顺序?
29
+
30
+ **能。** 两者独立、无互斥门。触发窗口不同:
31
+ - R9 在**模型自认完成的 natural end**(可能在预算中段,远早于墙钟);design/132 注释(:1948-1952)明说:shell-gap 桶「completed + reward 0 + no finalize」= 模型在预算内自认完成,**P2 finalize 结构上触达不到**(finalize 只在临墙钟触发)——所以 R9 专补这个 R8 够不着的洞。
32
+ - R8 在**临墙钟**(remaining < cycle+cushion)。
33
+
34
+ **先后**:同 task 内若两者都触发,R9(natural-end 停门)必然**先于或独立于** R8(临墙钟 finalize)。实测见 1.4。
35
+
36
+ ### 1.3 ② 内容分工与重叠:预算紧张时是否互相矛盾(一催快一催慢)?
37
+
38
+ **不矛盾。分工正交:**
39
+ - **R8 finalize 文案**(:2211-2221):`persist to disk FIRST; everything else comes after … Do NOT open new work … write out and stop`。核心=**持久化优先、停止开新活**。service [417]④ 归因(:2202-2210):timed-out 腿的病理不是「中途自测太多」,是「最好的产物没进 deliverable 路径就没时间了」(nocap 腿超时时 on-disk 已 reward=1,63-vs-61-calls 只差最后 write-out 是否落地)。所以 R8 = **落盘催办**。
40
+ - **R9 文案**(:1979-2011):`re-verify the FINAL deliverable through its REAL entry point … choose the verification SURFACE deliberately … verify the PERSISTED artifact`。核心=**选对验收面、验准**(A 真实评测面/B 持久态重读/C 硬约束对账/E 独立第二路径)。
41
+
42
+ **关键:两者不是「一催快一催慢」。** R8 催的是「别再拖延、把最好版本落盘」(反拖延),R9 催的是「验的对象要选对」(反自一致陷阱)。R9 本身不催慢——它只在**模型已自认完成**时插一轮(不占额外墙钟预算,且 :1970-1972 有 `maxTurns-1` headroom 闸,无空间就跳过)。R8 催的「别开新活」与 R9 的「验准」也不撞:R9 要求的验证是**对已有 deliverable 的一次针对性复核**,不是「开新调查」。
43
+
44
+ **更关键的协调设计——R8 前置内联 R9 回声(:2216-2221):**
45
+ ```
46
+ (finalVerificationOn
47
+ ? ` After writing, if seconds permit, confirm the deliverable file actually EXISTS at the required path with your latest content.`
48
+ : "")
49
+ ```
50
+ design/132 注释(:2216-2217)点明:**timeout 路径永远触达不到 natural-end stop gate**(硬 timeout=abort,abort 后无模型调用),所以 R9 的验证纪律在这条路径上会「丢」——R8 finalize 就**前置压缩地内联一句「写完后如有余秒,确认文件真的存在于要求路径」**。这是**刻意的降级回声**:预算已尽时不催完整四原则验证(那要更多墙钟),只保「落盘+存在性确认」这一最低限度。→ **两 nudge 不但不冲突,R8 还主动承接了 R9 在极限预算下的责任,且降级得当(催快不催全验)。**
51
+
52
+ ### 1.4 ③ TB 活体证据
53
+
54
+ **全景扫描**(`full-pro-1257-fb`,89 题一腿,deepseek-v4-pro,finalVerification 应为 ON):
55
+ - finalize 触发广泛:约 20+ 题带 `steering_injected source:finalize`;deadline_nudge 约 6 题(gcode-to-text/circuit-fibsqrt/largest-eigenval/make-doom/regex-chess 等)。
56
+ - **两 latch 共现实证 = `cobol-modernization__WN8kxyU`**(status=**completed**):
57
+ - `done.stats.mechanisms = {finalizeInjected:true, finalVerifyInjected:true, capShrinks:1, toolClamps:8, attachmentsInjected:1}` — **两个 latch 同 task 置位**。
58
+ - 时序:R8 finalize steer 在 `tMs=595243`(wire echo `source:finalize`「this is the FINAL turn … persist to disk FIRST」);此后模型于 `tMs=685432` 自主跑了一条 Bash(其 description 自述「final verification」,`cd /app && python3 program.py; echo EXIT_CODE=$?` → exit 0),`tMs=759897` 收尾 `completed`。
59
+ - **可观测性不对称实证**:该 events.jsonl 里 `steering_injected` 仅 2 条(todo_reminder + finalize),`re-verify the FINAL deliverable`/`REAL entry`/`acceptance criteria` 字样**0 命中**——证实 **R9 stop-gate 注入不进事件流**(只 stats latch 可见),R8 steer 进事件流。两机制无 double-steer 冲突,因为走不同通道。
60
+
61
+ **path-tracing 族(超时族,派单点名)**:
62
+ - sema 侧 `full-pro-1257-fb/path-tracing__XQ5mF3b`:`steer=2 finalize=1 deadline_nudge=0 finalverif=0` — **仅 R8 finalize 触发,R9 未触发**(该题模型没到 natural-end 自认完成,是被临墙钟 finalize 接住)。`path-tracing-reverse__tGY7w7P`:`steer=5 finalize=1 deadline_nudge=1` — R8 双段(nudge→finalize)都触发,R9 未触发。→ **超时族正是 R8 的主场、R9 的盲区**,与 design/132 注释(:1951「P2 finalize is structurally unreachable there」的对偶:超时族反过来 R9 unreachable)吻合:两机制覆盖互补的失败窗口。
63
+
64
+ **一 boundary 一 steer 不变量核验**(:2339-2344, :2185-2187, codex R1 @ :2228-2234):
65
+ - finalize 触发时 `nudgeIdx = schedule.length`(:2201)消费所有待发 nudge → 同 boundary 下方 `while(nudgeIdx<len...)`(:2232)找不到 due → **finalize 与 nudge 不会同 boundary 双发**,finalize 胜出。
66
+ - 两 latch 置位后**永久静音** attachments/reminders(:2355-2356 `!finalizeInjected && !finalVerifyInjected`;:2495 同),避免收尾 turn 被 todo 提醒污染。
67
+ - `boundarySteered`(:2223/:2238)让 attachment 让路给 deadline lane(design/133)。
68
+
69
+ **协调审计结论:互补。** 无触发冲突(不同通道)、无内容矛盾(落盘 vs 验准正交)、无 double-steer(latch 消费 + 一 boundary 一槽)、极限预算下 R8 主动承接 R9 降级回声。唯一可记档项=**R9 注入无 wire echo**(TB 只能靠 `finalVerifyInjected` stats latch 判定其是否触发,不能靠事件流验证文案内容;B 分支若要活体核对 R9 文案落地,需另加 stream echo)。
70
+
71
+ ---
72
+
73
+ ## 任务二:R8 的 CC 行为锚考据
74
+
75
+ ### 2.1 方法与样本
76
+
77
+ 派单点名 CC PASS 满墙 trial,读收尾段(最后 ~15-25% 时间窗)。样本(`cc-pro-r3-full`,claude-code + deepseek-v4-pro):
78
+
79
+ | trial | DUR | steps | reward | 收尾结局 |
80
+ |---|---|---|---|---|
81
+ | path-tracing__9bq5wz8 | **1778s** | 43 | **1** | 迭代到最后一秒,末步 `tool_use`(**被 harness 硬切**,非 end_turn);全程无 assistant text(纯工具轨) |
82
+ | path-tracing-reverse__22acJoq | **1770s** | 50 | **1** | 同上,末步「Only 47 pixels differ — almost there … fix the shadow test」被切 |
83
+ | polyglot-rust-c__jS67VTt | 780s | 17 | **1** | 主动 `end_turn`:编译干净→验证输出→清理测试二进制→交付 |
84
+ | compile-compcert__J5hr7zT | 880s | 91 | **1** | 主动 `end_turn`:build 成功→install→建 entry point→测试编译→"final verification of complete installation"→标记完成 |
85
+
86
+ ### 2.2 ① CC 时间将尽时的行为模式
87
+
88
+ - **满墙 PASS trial(path-tracing 族)= 迭代到底被切,不做「预算到了、收尾」的自觉转向。** 末步都是 `stop_reason:tool_use`(还在干活)被 harness timeout 截断,已写盘的 deliverable 恰好通过。CC **没有** deadline-aware 的「停手写出」动作——它根本不知道墙钟。
89
+ - **早于满墙 end_turn 的 PASS trial(polyglot/compcert)= 一致的收尾验证纪律**:`验证真实产物/入口 → 确认输出正确 → 才 end_turn`(compcert 甚至自述 "final verification of the complete installation")。这与 **R9** 的验收纪律同构,不是 R8 的预算催办。
90
+
91
+ ### 2.3 ② 跨题重复的「时间压力应对纪律」?
92
+
93
+ 跨全 89 CC trajectory 搜时间/预算/收尾语言(见下),**关键鉴别**:
94
+
95
+ | trial(reward=1) | 原话 | 触发变量 |
96
+ |---|---|---|
97
+ | path-tracing-reverse | 「disassembly analysis is too **time-consuming** to get exactly right. Let me take a **practical approach**」/「Let me **step back** and try a completely practical approach … **tune it to match**」 | 任务内在难度(逆向精确太难)|
98
+ | polyglot-rust-c | 「Let me take a **practical approach** — create a test file and **iterate**」 | 方法探索成本 |
99
+ | winning-avg-corewars | 「core-clear **too slow** … **fundamentally rethink** … go back to step-4」 | 算法性能 |
100
+ | feal-linear-crypt | 「Python will be **too slow** for 1M iterations. Let me write a fast C impl」 | 算力成本 |
101
+ | query-optimize | 「original query **timed out** (too slow) … write optimized version」 | 被测程序性能 |
102
+
103
+ **判决(诚实原则)**:
104
+ - ✅ **有一个 ≥3 题重复的可锚收尾纪律**:「**理想/精确方法证明太贵 → 退到务实近似 → 对着 reference/oracle 调参直到落地**」(path-tracing-reverse / polyglot-rust-c / winning-avg-corewars,3 题;feal/query-optimize 是同族的性能变体)。这是真纪律,非运气。
105
+ - 🔴 **但它是 method-cost 驱动,不是 deadline 驱动。** 触发词全是 `too slow / too time-consuming / timed out`——指的是**算法/被测程序/探索本身的开销**,CC 全程**零** wall-clock、budget、remaining-time、deadline 语言。CC 看不见 harness 墙钟预算,与背景档预判 100% 吻合。
106
+ - 🔴 **满墙 PASS trial 恰恰证明 CC 无预算收尾自觉**:path-tracing 族迭代到被硬切,没有任何「时间快到了、我该写出停手」的转向——它只是「恰好快到能在被切前把通过版本落盘」。
107
+
108
+ ### 2.4 R8 锚考据终判
109
+
110
+ > **无 CC deadline 行为锚可取。** CC 无 wall-clock 预算模型(实测证实),R8 的「按墙钟软死线注入收尾催办」是 **deliberate SEMA-only 机制**(design/128 T1-2 / design/130 P2,治 TB「15 AgentTimeout、engine pacing blind to budget」的自证据),**不存在可逐字 port 的 CC 对等面**。
111
+ >
112
+ > **旁证锚(非逐字,方法论对齐)**:CC 有一个跨题(≥3)重复的收尾纪律——「贵方法退务实近似 + 对 oracle 调参落地 + 交付前验真实入口/产物」。R8 现文案(落盘优先、别开新活、best-version-copy-to-deliverable、finalVerificationOn 时确认文件存在)正是**这一 CC 纪律在「墙钟预算」这个 CC 看不见的维度上的等价投影**:R8 用引擎可见的墙钟触发,兑现了 CC 靠「方法太贵」自觉触发的同一个「别追求完美、把可用产物落地」的收尾行为。这可作为 R8 的**行为动机锚注**,但**不能标为 CC-verbatim/CC-derived**——它是 SEMA 机制,CC 纪律是**旁证支持**而非**源**。
113
+
114
+ ---
115
+
116
+ ## 修复建议
117
+
118
+ **协调面:无需修复。** R8×R9 已互补且协调机制经代码构造保证(不同通道 / latch 消费 / 一 boundary 一槽 / R8 承接 R9 降级回声)。
119
+
120
+ **记档面(2 项,建议落 A 盘点档,非改代码)**:
121
+ 1. **R8 分类订正**:`ANCHOR-GAP-INVENTORY` 现标 R8「🔴 手写无 CC 锚」——建议改注「🔴 SEMA-only(deliberate,CC 无预算模型已实测证实);旁证锚=CC method-cost 收尾纪律(path-tracing-reverse/polyglot-rust-c/winning-avg-corewars ≥3 题)的墙钟维度投影」。**从「无锚待验证」升级为「无 CC 逐字锚但有行为动机旁证 + 已 TB 活体验证触发正确(超时族主场)」。**
122
+ 2. **R9 可观测性不对称记档**:R9 stop-gate 注入不发 wire echo,TB 只能靠 `finalVerifyInjected` stats latch 判其触发,无法从事件流核对文案落地。若后续要活体验证 R9 A/B/C/E 面文案是否被模型消费,需给 stop-gate 注入补一条 `steering_injected source:"final_verify"` echo(与 R8 对齐)。**非 bug,是验证覆盖缺口**——列 B 分支探针候选。
123
+
124
+ **定向测试建议(可选,低优先)**:补一个单测断言「同 task 内 finalize 触发时 nudgeIdx 被消费到 schedule 末尾 → 同 boundary 无 deadline_nudge 二次 steer」(护住 :2201 消费不变量,防未来重构回归 double-steer)。现有代码已由 codex R1(:2228)口头保证,但无测试锁定。