chainlesschain 0.165.9 → 0.166.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/completions/_cc +2 -1
  2. package/completions/cc.bash +2 -2
  3. package/completions/cc.fish +2 -2
  4. package/completions/cc.ps1 +2 -1
  5. package/package.json +2 -2
  6. package/src/assets/web-panel/assets/{AIOps-DxwjrnEA.js → AIOps-D5_pwQ7M.js} +1 -1
  7. package/src/assets/web-panel/assets/{ActionButton-JdbYowzn.js → ActionButton-DgoYO32D.js} +1 -1
  8. package/src/assets/web-panel/assets/{Analytics-C06GCahv.js → Analytics-BIpoZ4QH.js} +3 -3
  9. package/src/assets/web-panel/assets/{AppLayout-BUVEEyi1.js → AppLayout-BJ3XrCEe.js} +3 -3
  10. package/src/assets/web-panel/assets/{Artifacts-D_ORzkJd.js → Artifacts-DUFs_izZ.js} +1 -1
  11. package/src/assets/web-panel/assets/{Audit-8o_Y5ejG.js → Audit-BZdPwwfL.js} +1 -1
  12. package/src/assets/web-panel/assets/{BackgroundAgents-DrkHd5VU.js → BackgroundAgents-DK9Fn-8B.js} +1 -1
  13. package/src/assets/web-panel/assets/{Backup-CKBZCX11.js → Backup-Bd6bOhV_.js} +1 -1
  14. package/src/assets/web-panel/assets/{BaseInput-C8HkI399.js → BaseInput-CRnWlXrd.js} +1 -1
  15. package/src/assets/web-panel/assets/{Chat-zb2H2Wux.js → Chat-D1G_yEl6.js} +6 -6
  16. package/src/assets/web-panel/assets/{ChatBubbleRenderer-BDcNpU_F.js → ChatBubbleRenderer-DDAlEtm-.js} +1 -1
  17. package/src/assets/web-panel/assets/{Checkbox-MwPtQmNz.js → Checkbox-CP35SH7R.js} +1 -1
  18. package/src/assets/web-panel/assets/{Codegen-3p5QCkFK.js → Codegen-DugeL4pj.js} +1 -1
  19. package/src/assets/web-panel/assets/{Col-BPLlhn52.js → Col-DPuJsvKg.js} +1 -1
  20. package/src/assets/web-panel/assets/{Community-C-3dBNOM.js → Community-CZqNjNNp.js} +1 -1
  21. package/src/assets/web-panel/assets/{Compact-BUcy-F_b.js → Compact-eeyIPEAb.js} +1 -1
  22. package/src/assets/web-panel/assets/{Compliance-CI8NxT8m.js → Compliance-MGzTw87k.js} +1 -1
  23. package/src/assets/web-panel/assets/{Cowork-DaDEBS-Q.js → Cowork-D3goVIA5.js} +2 -2
  24. package/src/assets/web-panel/assets/{Cron-BSv9HXu5.js → Cron-9HA8hLLG.js} +2 -2
  25. package/src/assets/web-panel/assets/{Crosschain-yuiKlJmv.js → Crosschain-DCSOX3l6.js} +1 -1
  26. package/src/assets/web-panel/assets/{DID-D6LfldB0.js → DID-ji3lN5Bc.js} +2 -2
  27. package/src/assets/web-panel/assets/{Dashboard-CBhLqG61.js → Dashboard-DlZvF1E5.js} +2 -2
  28. package/src/assets/web-panel/assets/{Dropdown-BG8pIl3O.js → Dropdown-2FyZcow9.js} +1 -1
  29. package/src/assets/web-panel/assets/{EmailListRenderer-CY92VIE6.js → EmailListRenderer-qH2bSpSY.js} +1 -1
  30. package/src/assets/web-panel/assets/{FamilyGuardDashboard-1Q_ehauM.js → FamilyGuardDashboard-Bfx47wZj.js} +1 -1
  31. package/src/assets/web-panel/assets/{Federation-D3XirJIU.js → Federation-DhGcZbIv.js} +1 -1
  32. package/src/assets/web-panel/assets/{FormItemContext-DfI9UuGZ.js → FormItemContext-BMgi9_YQ.js} +1 -1
  33. package/src/assets/web-panel/assets/{GenericCardRenderer-IeCZk2m7.js → GenericCardRenderer-DugMac-4.js} +1 -1
  34. package/src/assets/web-panel/assets/{Git-DzK4IJAZ.js → Git-D943BpH-.js} +2 -2
  35. package/src/assets/web-panel/assets/{Governance-BHf5KfmQ.js → Governance-DZ66a8Aa.js} +1 -1
  36. package/src/assets/web-panel/assets/{Inference-BmaxSALS.js → Inference-B00Mp2tN.js} +1 -1
  37. package/src/assets/web-panel/assets/{KnowledgeGraph-BgePFLA9.js → KnowledgeGraph-BdwXXO2Q.js} +1 -1
  38. package/src/assets/web-panel/assets/{Logs-nqgxpOc4.js → Logs-_MVXyYWc.js} +2 -2
  39. package/src/assets/web-panel/assets/MarkdownRenderer-hOTeNyi7.js +1 -0
  40. package/src/assets/web-panel/assets/{Marketplace-Bu8to-86.js → Marketplace-CxeHRsnO.js} +1 -1
  41. package/src/assets/web-panel/assets/{McpTools-BFWTzEk0.js → McpTools-BOieTxZ4.js} +3 -3
  42. package/src/assets/web-panel/assets/{Memory-B026G2GA.js → Memory-BQD26CM3.js} +2 -2
  43. package/src/assets/web-panel/assets/{MobileBridge-CM2Eeg6I.js → MobileBridge-CPJ8ZlvR.js} +1 -1
  44. package/src/assets/web-panel/assets/{MobileProjects-B79Ob3hy.js → MobileProjects-D7qRVu0y.js} +1 -1
  45. package/src/assets/web-panel/assets/{Mtc-CxevSZuV.js → Mtc-BOyndGuk.js} +2 -2
  46. package/src/assets/web-panel/assets/{MtcAudit-X396cPEX.js → MtcAudit-CXQ_8ZoR.js} +4 -4
  47. package/src/assets/web-panel/assets/{Multisig-HWIB_aZ1.js → Multisig-32Oh9KbH.js} +3 -3
  48. package/src/assets/web-panel/assets/{NLProgramming-gnYD1Xwy.js → NLProgramming-CFAd00CX.js} +1 -1
  49. package/src/assets/web-panel/assets/{Notes-Dn2Gf_J1.js → Notes-BBCY_qJA.js} +3 -3
  50. package/src/assets/web-panel/assets/{NotificationSettings-BRKBQ5rq.js → NotificationSettings-uaQ0PdmW.js} +1 -1
  51. package/src/assets/web-panel/assets/{OrderTableRenderer-Dy___Cgo.js → OrderTableRenderer-kpBxJ-SG.js} +1 -1
  52. package/src/assets/web-panel/assets/{Organization-cqfccxnt.js → Organization-CmFn7Oeo.js} +4 -4
  53. package/src/assets/web-panel/assets/{Overflow-CSX4FHN3.js → Overflow-R_avat3a.js} +1 -1
  54. package/src/assets/web-panel/assets/{P2P-Bwa4aghp.js → P2P-BIhLFmkY.js} +2 -2
  55. package/src/assets/web-panel/assets/{PdhVaultBrowser-Dhszyjig.js → PdhVaultBrowser-DTJjk-_i.js} +3 -3
  56. package/src/assets/web-panel/assets/{Permissions-CXzTyk6e.js → Permissions-CkzYv8Yb.js} +4 -4
  57. package/src/assets/web-panel/assets/{PersonalDataHub-CFCAAJbb.js → PersonalDataHub--0QvN2Nz.js} +4 -4
  58. package/src/assets/web-panel/assets/{Pipeline-BPJbx6xt.js → Pipeline-Bfw5gQCH.js} +1 -1
  59. package/src/assets/web-panel/assets/{Privacy-BbiXvEHz.js → Privacy-DicjKfax.js} +1 -1
  60. package/src/assets/web-panel/assets/{ProjectInit-B-s7-wSD.js → ProjectInit-DUl_ykBp.js} +2 -2
  61. package/src/assets/web-panel/assets/{ProjectSettings-Dyug206y.js → ProjectSettings-CPYDvN8a.js} +2 -2
  62. package/src/assets/web-panel/assets/{Projects-BtAI5Fwo.js → Projects-DnZ9_fAr.js} +1 -1
  63. package/src/assets/web-panel/assets/{Providers-JpIPmz6N.js → Providers-BX1jP31w.js} +1 -1
  64. package/src/assets/web-panel/assets/{QrScannerModal-CZdoN64A.js → QrScannerModal-COab5qUl.js} +1 -1
  65. package/src/assets/web-panel/assets/{QuickAsk-BwvnoRIT.js → QuickAsk-CdKQ_JZ0.js} +1 -1
  66. package/src/assets/web-panel/assets/{Recommend-ASMlMQrD.js → Recommend-BPFHg8pK.js} +1 -1
  67. package/src/assets/web-panel/assets/{RemoteSession-BiJzKFKi.js → RemoteSession-CqrfTJvO.js} +3 -3
  68. package/src/assets/web-panel/assets/{Reputation-C80TWLIO.js → Reputation-DM-l8Pb3.js} +1 -1
  69. package/src/assets/web-panel/assets/{Row-C1VNmjmX.js → Row-CKGBTeCw.js} +1 -1
  70. package/src/assets/web-panel/assets/{RssFeed-T2MyGUlG.js → RssFeed-Wb0YHIkc.js} +3 -3
  71. package/src/assets/web-panel/assets/{Search-DXM6O83L.js → Search-DiBjxKv-.js} +1 -1
  72. package/src/assets/web-panel/assets/{Security-nv69kU7W.js → Security-BAVEmbWP.js} +4 -4
  73. package/src/assets/web-panel/assets/{Services-AyHWe7Qj.js → Services-A_a3TIRn.js} +2 -2
  74. package/src/assets/web-panel/assets/{Skeleton-D6PWLxFI.js → Skeleton-CloHJ-I7.js} +1 -1
  75. package/src/assets/web-panel/assets/{Skills-BqVeOmNQ.js → Skills-CkvV5hKa.js} +1 -1
  76. package/src/assets/web-panel/assets/{Sla-BegIPl9M.js → Sla-BYozxxsV.js} +1 -1
  77. package/src/assets/web-panel/assets/{SpeechSettings-CKJn3xk-.js → SpeechSettings-CWianiZF.js} +1 -1
  78. package/src/assets/web-panel/assets/{SyncSettings-Th4cnAMl.js → SyncSettings-BR4G75do.js} +2 -2
  79. package/src/assets/web-panel/assets/{Tasks-BuKfBroh.js → Tasks-D6gyUVrM.js} +1 -1
  80. package/src/assets/web-panel/assets/{Templates-CMuWN8Ac.js → Templates-DbfYIRzT.js} +1 -1
  81. package/src/assets/web-panel/assets/{Tenant-C4je8E8Q.js → Tenant-BHutvukT.js} +1 -1
  82. package/src/assets/web-panel/assets/{Terminal-agJESOcO.js → Terminal-CYEiy2wJ.js} +2 -2
  83. package/src/assets/web-panel/assets/{TimelineRenderer-D2qDuVZ_.js → TimelineRenderer-D9s1AxfE.js} +1 -1
  84. package/src/assets/web-panel/assets/{Tokens-Cvmn99rH.js → Tokens-ij9vxnoy.js} +1 -1
  85. package/src/assets/web-panel/assets/{Trigger-D_QYIHH8.js → Trigger-Dq_DCVeQ.js} +1 -1
  86. package/src/assets/web-panel/assets/{Trust-BmzvQLnX.js → Trust-Bs6wdfoH.js} +1 -1
  87. package/src/assets/web-panel/assets/{UkeySign-D_LopHwH.js → UkeySign-CLazyr5t.js} +1 -1
  88. package/src/assets/web-panel/assets/{VideoEditing-DoWl3PhQ.js → VideoEditing-viWotIHA.js} +1 -1
  89. package/src/assets/web-panel/assets/{Wallet-5NYcAkxe.js → Wallet-DlZ-A78d.js} +4 -4
  90. package/src/assets/web-panel/assets/{WebAuthn-B-_Q3ewp.js → WebAuthn-DSmOND3Y.js} +3 -3
  91. package/src/assets/web-panel/assets/{WorkflowEditor-CHET-gi2.js → WorkflowEditor-BempLOJi.js} +1 -1
  92. package/src/assets/web-panel/assets/{chat-C6nvb-n6.js → chat-CyJzf4JI.js} +1 -1
  93. package/src/assets/web-panel/assets/{colors-CTDE9LTX.js → colors-C62q7WrL.js} +1 -1
  94. package/src/assets/web-panel/assets/{compact-item-KnemdF8D.js → compact-item-7dYM1KW3.js} +1 -1
  95. package/src/assets/web-panel/assets/{createContext-DUJR3Uek.js → createContext-CYTy7z2Q.js} +1 -1
  96. package/src/assets/web-panel/assets/devWarning-BdTg_AMF.js +1 -0
  97. package/src/assets/web-panel/assets/{hasIn-CFNTaby8.js → hasIn-DHoclUqm.js} +1 -1
  98. package/src/assets/web-panel/assets/{index-65HO56Bv.js → index-2C8Xx2UO.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-ox6mIwE2.js → index-3pI7AfmD.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-JGTiDeOW.js → index-4gWv-Ubg.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-rVDD7AAR.js → index-94ktimZG.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-OmuhFYKE.js → index-9uR7rc9a.js} +1 -1
  103. package/src/assets/web-panel/assets/index-B6WvFV4N.js +1 -0
  104. package/src/assets/web-panel/assets/index-BKgfptzA.js +1 -0
  105. package/src/assets/web-panel/assets/{index-CquKnw5r.js → index-BMRmxFU_.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-DzReoLyh.js → index-BMxvWauP.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-DP-PbO11.js → index-BghdJ87W.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-CSD9_I2_.js → index-Bzz0aJ86.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-DF1Y0Vuw.js → index-C2efftJb.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-B8RtbSkV.js → index-C5YWYlW9.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-CHfUdnJH.js → index-CVTnruDt.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-BwZM1rod.js → index-CW86F2Zw.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-CyEtHvEE.js → index-CZRBvN6i.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-Ceu92a8D.js → index-CjeViaU-.js} +1 -1
  115. package/src/assets/web-panel/assets/{index-DJyPeBBk.js → index-CnEZ4ZHj.js} +3 -3
  116. package/src/assets/web-panel/assets/{index-BdiC4LOs.js → index-D6BC4mmz.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-k6uorYmf.js → index-DA-_807C.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-DqPpJkte.js → index-DAYanuSk.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-NtAcnJYW.js → index-DHgSRimK.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-Wlc7o_C8.js → index-DJzZaPlb.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-CKvBF3Ov.js → index-DK84lAS0.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-CcF0D7UZ.js → index-DKdv8cju.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-CnLpuTAU.js → index-DNLD3nZY.js} +1 -1
  124. package/src/assets/web-panel/assets/{index-DZgCRMxk.js → index-DOFAwpUK.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-v-mtxmWH.js → index-DYKwGrAn.js} +1 -1
  126. package/src/assets/web-panel/assets/{index-Cc7dbl_p.js → index-DghnbMlY.js} +1 -1
  127. package/src/assets/web-panel/assets/{index-BuizJo2E.js → index-DhJjifZe.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-NUR0If7O.js → index-DkczsbiP.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-u0h6QqVV.js → index-DvEtHpLc.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-bxTPfdri.js → index-Dyq9tK5u.js} +1 -1
  131. package/src/assets/web-panel/assets/{index-DfJzS3Qa.js → index-LK1MZoBj.js} +1 -1
  132. package/src/assets/web-panel/assets/{index-DF-fcTvQ.js → index-NuNCstRO.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-BXWg1crv.js → index-QXtrdrub.js} +1 -1
  134. package/src/assets/web-panel/assets/{index-BTetEUWd.js → index-XrsAHHQN.js} +1 -1
  135. package/src/assets/web-panel/assets/{index-BHqSqnW7.js → index-ZXYp76IB.js} +1 -1
  136. package/src/assets/web-panel/assets/{index-C96N9xeL.js → index-lHfNxiB5.js} +1 -1
  137. package/src/assets/web-panel/assets/{initDefaultProps-qEt8dI-t.js → initDefaultProps-CwCl5sFQ.js} +1 -1
  138. package/src/assets/web-panel/assets/{motion-DetKPWy-.js → motion-BFJFy70N.js} +1 -1
  139. package/src/assets/web-panel/assets/{move-BeNYeDV2.js → move-ByrtVGq8.js} +1 -1
  140. package/src/assets/web-panel/assets/{mtc-parser-C0q0MK_T.js → mtc-parser-BFiH1mT3.js} +1 -1
  141. package/src/assets/web-panel/assets/{omit-DLKkrKpE.js → omit-bdvgpivj.js} +1 -1
  142. package/src/assets/web-panel/assets/{pickAttrs-Bw1tWsY8.js → pickAttrs-BlfuuE3s.js} +1 -1
  143. package/src/assets/web-panel/assets/{placementArrow-DeesBLbd.js → placementArrow-t2SC3DMy.js} +1 -1
  144. package/src/assets/web-panel/assets/{responsiveObserve-bqLhxHhn.js → responsiveObserve-CoEXv2Li.js} +1 -1
  145. package/src/assets/web-panel/assets/{slide-DGCXRoQm.js → slide-BfXCf0Fu.js} +1 -1
  146. package/src/assets/web-panel/assets/{statusUtils-H-re3Egl.js → statusUtils-DNsdyOuS.js} +1 -1
  147. package/src/assets/web-panel/assets/{styleChecker-BXg4qGX_.js → styleChecker-9aHukmoG.js} +1 -1
  148. package/src/assets/web-panel/assets/{useFlexGapSupport-CKLb2KA6.js → useFlexGapSupport-dTkPxzHN.js} +1 -1
  149. package/src/assets/web-panel/assets/{useFs-CTAhHeyw.js → useFs-DINwfItP.js} +1 -1
  150. package/src/assets/web-panel/assets/{usePersonalDataHub-BQ4pDh5g.js → usePersonalDataHub-Bj_RriBV.js} +1 -1
  151. package/src/assets/web-panel/assets/{vnode-jrSK6j4j.js → vnode-BzRAZrTc.js} +1 -1
  152. package/src/assets/web-panel/assets/{zoom-fOQE24pw.js → zoom-CamPjkeK.js} +1 -1
  153. package/src/assets/web-panel/index.html +1 -1
  154. package/src/command-help-index.json +4 -4
  155. package/src/command-manifest.json +1 -1
  156. package/src/commands/agent.js +1 -1
  157. package/src/commands/graph.js +100 -0
  158. package/src/commands/mcp.js +49 -21
  159. package/src/commands/orchestrate.js +85 -18
  160. package/src/commands/serve.js +39 -0
  161. package/src/commands/team.js +2 -0
  162. package/src/data/changelog.json +26 -0
  163. package/src/generated/cc-agent-protocol.schema.json +1964 -0
  164. package/src/lib/agent-sandbox.js +4 -7
  165. package/src/lib/app-server/bounded-queue.js +87 -0
  166. package/src/lib/app-server/cli-agent-kernel-adapter.js +309 -0
  167. package/src/lib/app-server/protocol.js +125 -0
  168. package/src/lib/app-server/rollout-store.js +603 -0
  169. package/src/lib/app-server/server.js +922 -0
  170. package/src/lib/app-server/sqlite-rollout-store.js +315 -0
  171. package/src/lib/app-server/stdio-transport.js +118 -0
  172. package/src/lib/codex-app-server-adapter.js +249 -0
  173. package/src/lib/graph-kernel/adapters.js +238 -0
  174. package/src/lib/graph-kernel/compiler.js +911 -0
  175. package/src/lib/graph-kernel/eval.js +207 -0
  176. package/src/lib/graph-kernel/event-store.js +101 -0
  177. package/src/lib/graph-kernel/index.js +7 -0
  178. package/src/lib/graph-kernel/runtime.js +2660 -0
  179. package/src/lib/graph-kernel/trace-reducer.js +315 -0
  180. package/src/lib/graph-kernel/trigger-adapter.js +183 -0
  181. package/src/lib/orchestrator.js +2 -1
  182. package/src/lib/record-replay/index.js +1 -0
  183. package/src/lib/record-replay/skill-recorder.js +386 -0
  184. package/src/lib/webhook-security.js +159 -0
  185. package/src/repl/agent-repl.js +5 -4
  186. package/src/repl/prompt-interactions.js +11 -1
  187. package/src/assets/web-panel/assets/MarkdownRenderer-xkX6izBt.js +0 -1
  188. package/src/assets/web-panel/assets/devWarning-1DqLH1KX.js +0 -1
  189. package/src/assets/web-panel/assets/index-BhJtcPWo.js +0 -1
  190. package/src/assets/web-panel/assets/index-Cq8MWPDT.js +0 -1
@@ -0,0 +1,1964 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.chainlesschain.com/agent/cc-agent-protocol-v1.schema.json",
4
+ "title": "ChainlessChain canonical Agent and Graph protocol",
5
+ "description": "Provider-neutral Thread/Turn/Item, approval, tool, Agent Tree and GraphRun wire contract.",
6
+ "x-cc-protocol": {
7
+ "version": 1,
8
+ "minimumCompatibleVersion": 1,
9
+ "features": [
10
+ "thread_turn_item",
11
+ "structured_approval",
12
+ "typed_graph",
13
+ "causal_messages",
14
+ "durable_human_task",
15
+ "bounded_transport",
16
+ "graph_effect_receipts",
17
+ "deterministic_trace"
18
+ ]
19
+ },
20
+ "oneOf": [
21
+ {
22
+ "$ref": "#/$defs/ClientRequest"
23
+ },
24
+ {
25
+ "$ref": "#/$defs/ClientResponse"
26
+ },
27
+ {
28
+ "$ref": "#/$defs/ServerRequest"
29
+ },
30
+ {
31
+ "$ref": "#/$defs/ServerNotification"
32
+ }
33
+ ],
34
+ "$defs": {
35
+ "Identifier": {
36
+ "type": "string",
37
+ "minLength": 1,
38
+ "maxLength": 160,
39
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._:/-]*$"
40
+ },
41
+ "Digest": {
42
+ "type": "string",
43
+ "pattern": "^sha256:[a-f0-9]{64}$"
44
+ },
45
+ "Timestamp": {
46
+ "type": "string",
47
+ "format": "date-time"
48
+ },
49
+ "JsonValue": {
50
+ "oneOf": [
51
+ {
52
+ "type": "null"
53
+ },
54
+ {
55
+ "type": "boolean"
56
+ },
57
+ {
58
+ "type": "number"
59
+ },
60
+ {
61
+ "type": "string"
62
+ },
63
+ {
64
+ "type": "array",
65
+ "items": {
66
+ "$ref": "#/$defs/JsonValue"
67
+ }
68
+ },
69
+ {
70
+ "type": "object",
71
+ "additionalProperties": {
72
+ "$ref": "#/$defs/JsonValue"
73
+ }
74
+ }
75
+ ]
76
+ },
77
+ "DataPolicy": {
78
+ "type": "object",
79
+ "additionalProperties": false,
80
+ "required": [
81
+ "origin",
82
+ "trust",
83
+ "sensitivity",
84
+ "allowedSinks"
85
+ ],
86
+ "properties": {
87
+ "origin": {
88
+ "type": "string",
89
+ "minLength": 1,
90
+ "maxLength": 256
91
+ },
92
+ "trust": {
93
+ "enum": [
94
+ "trusted_host",
95
+ "authenticated_user",
96
+ "untrusted_content",
97
+ "unknown"
98
+ ]
99
+ },
100
+ "sensitivity": {
101
+ "enum": [
102
+ "public",
103
+ "internal",
104
+ "confidential",
105
+ "secret"
106
+ ]
107
+ },
108
+ "allowedSinks": {
109
+ "type": "array",
110
+ "maxItems": 64,
111
+ "uniqueItems": true,
112
+ "items": {
113
+ "type": "string",
114
+ "minLength": 1,
115
+ "maxLength": 128
116
+ }
117
+ },
118
+ "declassificationDecisionId": {
119
+ "$ref": "#/$defs/Identifier"
120
+ }
121
+ }
122
+ },
123
+ "Thread": {
124
+ "type": "object",
125
+ "additionalProperties": false,
126
+ "required": [
127
+ "id",
128
+ "status",
129
+ "createdAt",
130
+ "updatedAt",
131
+ "revision"
132
+ ],
133
+ "properties": {
134
+ "id": {
135
+ "$ref": "#/$defs/Identifier"
136
+ },
137
+ "status": {
138
+ "enum": [
139
+ "active",
140
+ "idle",
141
+ "archived"
142
+ ]
143
+ },
144
+ "title": {
145
+ "type": [
146
+ "string",
147
+ "null"
148
+ ],
149
+ "maxLength": 512
150
+ },
151
+ "parentThreadId": {
152
+ "anyOf": [
153
+ {
154
+ "$ref": "#/$defs/Identifier"
155
+ },
156
+ {
157
+ "type": "null"
158
+ }
159
+ ]
160
+ },
161
+ "createdAt": {
162
+ "$ref": "#/$defs/Timestamp"
163
+ },
164
+ "updatedAt": {
165
+ "$ref": "#/$defs/Timestamp"
166
+ },
167
+ "revision": {
168
+ "type": "integer",
169
+ "minimum": 0
170
+ },
171
+ "metadata": {
172
+ "type": "object",
173
+ "additionalProperties": {
174
+ "$ref": "#/$defs/JsonValue"
175
+ }
176
+ }
177
+ }
178
+ },
179
+ "Turn": {
180
+ "type": "object",
181
+ "additionalProperties": false,
182
+ "required": [
183
+ "id",
184
+ "threadId",
185
+ "status",
186
+ "createdAt",
187
+ "revision"
188
+ ],
189
+ "properties": {
190
+ "id": {
191
+ "$ref": "#/$defs/Identifier"
192
+ },
193
+ "threadId": {
194
+ "$ref": "#/$defs/Identifier"
195
+ },
196
+ "status": {
197
+ "enum": [
198
+ "queued",
199
+ "running",
200
+ "waiting_approval",
201
+ "waiting_input",
202
+ "completed",
203
+ "failed",
204
+ "interrupted"
205
+ ]
206
+ },
207
+ "createdAt": {
208
+ "$ref": "#/$defs/Timestamp"
209
+ },
210
+ "completedAt": {
211
+ "anyOf": [
212
+ {
213
+ "$ref": "#/$defs/Timestamp"
214
+ },
215
+ {
216
+ "type": "null"
217
+ }
218
+ ]
219
+ },
220
+ "revision": {
221
+ "type": "integer",
222
+ "minimum": 0
223
+ },
224
+ "terminalEvidence": {
225
+ "anyOf": [
226
+ {
227
+ "$ref": "#/$defs/TerminalEvidence"
228
+ },
229
+ {
230
+ "type": "null"
231
+ }
232
+ ]
233
+ }
234
+ }
235
+ },
236
+ "Item": {
237
+ "type": "object",
238
+ "additionalProperties": false,
239
+ "required": [
240
+ "id",
241
+ "threadId",
242
+ "turnId",
243
+ "kind",
244
+ "status",
245
+ "createdAt"
246
+ ],
247
+ "properties": {
248
+ "id": {
249
+ "$ref": "#/$defs/Identifier"
250
+ },
251
+ "threadId": {
252
+ "$ref": "#/$defs/Identifier"
253
+ },
254
+ "turnId": {
255
+ "$ref": "#/$defs/Identifier"
256
+ },
257
+ "parentId": {
258
+ "anyOf": [
259
+ {
260
+ "$ref": "#/$defs/Identifier"
261
+ },
262
+ {
263
+ "type": "null"
264
+ }
265
+ ]
266
+ },
267
+ "kind": {
268
+ "enum": [
269
+ "user_message",
270
+ "assistant_message",
271
+ "reasoning",
272
+ "tool",
273
+ "approval",
274
+ "plan",
275
+ "subagent",
276
+ "artifact",
277
+ "error"
278
+ ]
279
+ },
280
+ "status": {
281
+ "enum": [
282
+ "started",
283
+ "streaming",
284
+ "completed",
285
+ "failed",
286
+ "cancelled"
287
+ ]
288
+ },
289
+ "content": {
290
+ "$ref": "#/$defs/JsonValue"
291
+ },
292
+ "dataPolicy": {
293
+ "$ref": "#/$defs/DataPolicy"
294
+ },
295
+ "createdAt": {
296
+ "$ref": "#/$defs/Timestamp"
297
+ },
298
+ "completedAt": {
299
+ "anyOf": [
300
+ {
301
+ "$ref": "#/$defs/Timestamp"
302
+ },
303
+ {
304
+ "type": "null"
305
+ }
306
+ ]
307
+ }
308
+ }
309
+ },
310
+ "PermissionGrant": {
311
+ "type": "object",
312
+ "additionalProperties": false,
313
+ "required": [
314
+ "capability",
315
+ "scope"
316
+ ],
317
+ "properties": {
318
+ "capability": {
319
+ "type": "string",
320
+ "minLength": 1,
321
+ "maxLength": 128
322
+ },
323
+ "scope": {
324
+ "type": "string",
325
+ "minLength": 1,
326
+ "maxLength": 1024
327
+ },
328
+ "expiresAt": {
329
+ "anyOf": [
330
+ {
331
+ "$ref": "#/$defs/Timestamp"
332
+ },
333
+ {
334
+ "type": "null"
335
+ }
336
+ ]
337
+ }
338
+ }
339
+ },
340
+ "ApprovalBinding": {
341
+ "type": "object",
342
+ "additionalProperties": false,
343
+ "required": [
344
+ "threadId",
345
+ "turnId",
346
+ "itemId",
347
+ "operationDigest",
348
+ "policyDigest",
349
+ "nonce",
350
+ "expiresAt"
351
+ ],
352
+ "properties": {
353
+ "threadId": {
354
+ "$ref": "#/$defs/Identifier"
355
+ },
356
+ "turnId": {
357
+ "$ref": "#/$defs/Identifier"
358
+ },
359
+ "itemId": {
360
+ "$ref": "#/$defs/Identifier"
361
+ },
362
+ "attemptId": {
363
+ "anyOf": [
364
+ {
365
+ "$ref": "#/$defs/Identifier"
366
+ },
367
+ {
368
+ "type": "null"
369
+ }
370
+ ]
371
+ },
372
+ "operationDigest": {
373
+ "$ref": "#/$defs/Digest"
374
+ },
375
+ "policyDigest": {
376
+ "$ref": "#/$defs/Digest"
377
+ },
378
+ "workspaceDigest": {
379
+ "anyOf": [
380
+ {
381
+ "$ref": "#/$defs/Digest"
382
+ },
383
+ {
384
+ "type": "null"
385
+ }
386
+ ]
387
+ },
388
+ "cwd": {
389
+ "type": "string",
390
+ "minLength": 1,
391
+ "maxLength": 4096
392
+ },
393
+ "nonce": {
394
+ "$ref": "#/$defs/Identifier"
395
+ },
396
+ "expiresAt": {
397
+ "$ref": "#/$defs/Timestamp"
398
+ }
399
+ }
400
+ },
401
+ "ApprovalDecision": {
402
+ "oneOf": [
403
+ {
404
+ "type": "object",
405
+ "additionalProperties": false,
406
+ "required": [
407
+ "kind"
408
+ ],
409
+ "properties": {
410
+ "kind": {
411
+ "const": "acceptOnce"
412
+ }
413
+ }
414
+ },
415
+ {
416
+ "type": "object",
417
+ "additionalProperties": false,
418
+ "required": [
419
+ "kind"
420
+ ],
421
+ "properties": {
422
+ "kind": {
423
+ "enum": [
424
+ "acceptForTurn",
425
+ "acceptForSession"
426
+ ]
427
+ },
428
+ "permissions": {
429
+ "type": "array",
430
+ "maxItems": 64,
431
+ "items": {
432
+ "$ref": "#/$defs/PermissionGrant"
433
+ }
434
+ }
435
+ }
436
+ },
437
+ {
438
+ "type": "object",
439
+ "additionalProperties": false,
440
+ "required": [
441
+ "kind"
442
+ ],
443
+ "properties": {
444
+ "kind": {
445
+ "enum": [
446
+ "decline",
447
+ "cancel"
448
+ ]
449
+ },
450
+ "reason": {
451
+ "type": "string",
452
+ "maxLength": 2048
453
+ }
454
+ }
455
+ }
456
+ ]
457
+ },
458
+ "ApprovalRequest": {
459
+ "type": "object",
460
+ "additionalProperties": false,
461
+ "required": [
462
+ "id",
463
+ "binding",
464
+ "operation",
465
+ "risk",
466
+ "reason"
467
+ ],
468
+ "properties": {
469
+ "id": {
470
+ "$ref": "#/$defs/Identifier"
471
+ },
472
+ "binding": {
473
+ "$ref": "#/$defs/ApprovalBinding"
474
+ },
475
+ "operation": {
476
+ "$ref": "#/$defs/JsonValue"
477
+ },
478
+ "risk": {
479
+ "enum": [
480
+ "low",
481
+ "medium",
482
+ "high",
483
+ "critical"
484
+ ]
485
+ },
486
+ "reason": {
487
+ "type": "string",
488
+ "minLength": 1,
489
+ "maxLength": 4096
490
+ },
491
+ "requestedPermissions": {
492
+ "type": "array",
493
+ "maxItems": 64,
494
+ "items": {
495
+ "$ref": "#/$defs/PermissionGrant"
496
+ }
497
+ }
498
+ }
499
+ },
500
+ "TerminalEvidence": {
501
+ "type": "object",
502
+ "additionalProperties": false,
503
+ "required": [
504
+ "status",
505
+ "eventDigest"
506
+ ],
507
+ "properties": {
508
+ "status": {
509
+ "enum": [
510
+ "succeeded",
511
+ "failed",
512
+ "partial",
513
+ "cancelled",
514
+ "blocked",
515
+ "budget_exhausted"
516
+ ]
517
+ },
518
+ "eventDigest": {
519
+ "$ref": "#/$defs/Digest"
520
+ },
521
+ "outputDigest": {
522
+ "anyOf": [
523
+ {
524
+ "$ref": "#/$defs/Digest"
525
+ },
526
+ {
527
+ "type": "null"
528
+ }
529
+ ]
530
+ },
531
+ "artifactIds": {
532
+ "type": "array",
533
+ "uniqueItems": true,
534
+ "items": {
535
+ "$ref": "#/$defs/Identifier"
536
+ }
537
+ },
538
+ "commit": {
539
+ "type": [
540
+ "string",
541
+ "null"
542
+ ],
543
+ "maxLength": 256
544
+ },
545
+ "testReceiptIds": {
546
+ "type": "array",
547
+ "uniqueItems": true,
548
+ "items": {
549
+ "$ref": "#/$defs/Identifier"
550
+ }
551
+ }
552
+ }
553
+ },
554
+ "TypedPort": {
555
+ "type": "object",
556
+ "additionalProperties": false,
557
+ "required": [
558
+ "name",
559
+ "schema"
560
+ ],
561
+ "properties": {
562
+ "name": {
563
+ "$ref": "#/$defs/Identifier"
564
+ },
565
+ "schema": {
566
+ "type": "object",
567
+ "additionalProperties": {
568
+ "$ref": "#/$defs/JsonValue"
569
+ }
570
+ },
571
+ "required": {
572
+ "type": "boolean",
573
+ "default": true
574
+ },
575
+ "dataPolicy": {
576
+ "$ref": "#/$defs/DataPolicy"
577
+ }
578
+ }
579
+ },
580
+ "Budget": {
581
+ "type": "object",
582
+ "additionalProperties": false,
583
+ "properties": {
584
+ "turns": {
585
+ "type": "integer",
586
+ "minimum": 0
587
+ },
588
+ "tokens": {
589
+ "type": "integer",
590
+ "minimum": 0
591
+ },
592
+ "costUsd": {
593
+ "type": "number",
594
+ "minimum": 0
595
+ },
596
+ "wallMs": {
597
+ "type": "integer",
598
+ "minimum": 0
599
+ },
600
+ "spawnCount": {
601
+ "type": "integer",
602
+ "minimum": 0
603
+ }
604
+ }
605
+ },
606
+ "TaskNode": {
607
+ "type": "object",
608
+ "additionalProperties": false,
609
+ "required": [
610
+ "id",
611
+ "kind",
612
+ "dependsOn",
613
+ "inputs",
614
+ "outputs",
615
+ "effectClass"
616
+ ],
617
+ "properties": {
618
+ "id": {
619
+ "$ref": "#/$defs/Identifier"
620
+ },
621
+ "kind": {
622
+ "enum": [
623
+ "task",
624
+ "join",
625
+ "human",
626
+ "subgraph"
627
+ ]
628
+ },
629
+ "dependsOn": {
630
+ "type": "array",
631
+ "uniqueItems": true,
632
+ "items": {
633
+ "$ref": "#/$defs/Identifier"
634
+ }
635
+ },
636
+ "inputs": {
637
+ "type": "array",
638
+ "items": {
639
+ "$ref": "#/$defs/TypedPort"
640
+ }
641
+ },
642
+ "outputs": {
643
+ "type": "array",
644
+ "items": {
645
+ "$ref": "#/$defs/TypedPort"
646
+ }
647
+ },
648
+ "inputBindings": {
649
+ "type": "object",
650
+ "additionalProperties": {
651
+ "type": "string",
652
+ "maxLength": 1024
653
+ }
654
+ },
655
+ "capabilities": {
656
+ "type": "array",
657
+ "uniqueItems": true,
658
+ "items": {
659
+ "type": "string",
660
+ "minLength": 1,
661
+ "maxLength": 128
662
+ }
663
+ },
664
+ "tools": {
665
+ "type": "array",
666
+ "uniqueItems": true,
667
+ "items": {
668
+ "type": "string",
669
+ "minLength": 1,
670
+ "maxLength": 128
671
+ }
672
+ },
673
+ "skills": {
674
+ "type": "array",
675
+ "uniqueItems": true,
676
+ "items": {
677
+ "type": "string",
678
+ "minLength": 1,
679
+ "maxLength": 256
680
+ }
681
+ },
682
+ "budget": {
683
+ "$ref": "#/$defs/Budget"
684
+ },
685
+ "writeSet": {
686
+ "type": "array",
687
+ "uniqueItems": true,
688
+ "items": {
689
+ "type": "string",
690
+ "minLength": 1,
691
+ "maxLength": 4096
692
+ }
693
+ },
694
+ "workspaceIsolation": {
695
+ "enum": [
696
+ "worktree",
697
+ "declared_scope"
698
+ ]
699
+ },
700
+ "effectClass": {
701
+ "enum": [
702
+ "none",
703
+ "read",
704
+ "workspace_write",
705
+ "external"
706
+ ]
707
+ },
708
+ "idempotencyKey": {
709
+ "type": "string",
710
+ "minLength": 1,
711
+ "maxLength": 256
712
+ },
713
+ "compensationNodeId": {
714
+ "$ref": "#/$defs/Identifier"
715
+ },
716
+ "priority": {
717
+ "type": "integer",
718
+ "minimum": -1000,
719
+ "maximum": 1000
720
+ },
721
+ "join": {
722
+ "enum": [
723
+ "all",
724
+ "any",
725
+ "quorum",
726
+ "race"
727
+ ]
728
+ },
729
+ "quorum": {
730
+ "type": "integer",
731
+ "minimum": 1
732
+ },
733
+ "retryLimit": {
734
+ "type": "integer",
735
+ "minimum": 0,
736
+ "maximum": 100
737
+ }
738
+ }
739
+ },
740
+ "Edge": {
741
+ "type": "object",
742
+ "additionalProperties": false,
743
+ "required": [
744
+ "id",
745
+ "from",
746
+ "to",
747
+ "kind",
748
+ "when"
749
+ ],
750
+ "properties": {
751
+ "id": {
752
+ "$ref": "#/$defs/Identifier"
753
+ },
754
+ "from": {
755
+ "$ref": "#/$defs/Identifier"
756
+ },
757
+ "to": {
758
+ "$ref": "#/$defs/Identifier"
759
+ },
760
+ "kind": {
761
+ "enum": [
762
+ "control",
763
+ "data",
764
+ "message",
765
+ "review",
766
+ "merge",
767
+ "compensation"
768
+ ]
769
+ },
770
+ "when": {
771
+ "enum": [
772
+ "success",
773
+ "failure",
774
+ "always",
775
+ "timeout",
776
+ "cancel"
777
+ ]
778
+ },
779
+ "fromPort": {
780
+ "$ref": "#/$defs/Identifier"
781
+ },
782
+ "toPort": {
783
+ "$ref": "#/$defs/Identifier"
784
+ }
785
+ }
786
+ },
787
+ "LoopRegion": {
788
+ "type": "object",
789
+ "additionalProperties": false,
790
+ "required": [
791
+ "id",
792
+ "entryNodeId",
793
+ "exitNodeId",
794
+ "nodeIds",
795
+ "maxIterations"
796
+ ],
797
+ "properties": {
798
+ "id": {
799
+ "$ref": "#/$defs/Identifier"
800
+ },
801
+ "entryNodeId": {
802
+ "$ref": "#/$defs/Identifier"
803
+ },
804
+ "exitNodeId": {
805
+ "$ref": "#/$defs/Identifier"
806
+ },
807
+ "nodeIds": {
808
+ "type": "array",
809
+ "minItems": 1,
810
+ "uniqueItems": true,
811
+ "items": {
812
+ "$ref": "#/$defs/Identifier"
813
+ }
814
+ },
815
+ "maxIterations": {
816
+ "type": "integer",
817
+ "minimum": 1,
818
+ "maximum": 10000
819
+ },
820
+ "condition": {
821
+ "type": "string",
822
+ "minLength": 1,
823
+ "maxLength": 4096
824
+ },
825
+ "budget": {
826
+ "$ref": "#/$defs/Budget"
827
+ }
828
+ }
829
+ },
830
+ "TriggerBinding": {
831
+ "type": "object",
832
+ "additionalProperties": false,
833
+ "required": [
834
+ "id",
835
+ "kind",
836
+ "targetNodeId",
837
+ "authorityDigest"
838
+ ],
839
+ "properties": {
840
+ "id": {
841
+ "$ref": "#/$defs/Identifier"
842
+ },
843
+ "kind": {
844
+ "enum": [
845
+ "manual",
846
+ "schedule",
847
+ "webhook",
848
+ "message",
849
+ "child_completion"
850
+ ]
851
+ },
852
+ "targetNodeId": {
853
+ "$ref": "#/$defs/Identifier"
854
+ },
855
+ "sourceRef": {
856
+ "type": [
857
+ "string",
858
+ "null"
859
+ ],
860
+ "maxLength": 512
861
+ },
862
+ "authorityDigest": {
863
+ "$ref": "#/$defs/Digest"
864
+ },
865
+ "dataPolicy": {
866
+ "$ref": "#/$defs/DataPolicy"
867
+ }
868
+ }
869
+ },
870
+ "Region": {
871
+ "type": "object",
872
+ "additionalProperties": false,
873
+ "required": [
874
+ "id",
875
+ "kind",
876
+ "nodeIds"
877
+ ],
878
+ "properties": {
879
+ "id": {
880
+ "$ref": "#/$defs/Identifier"
881
+ },
882
+ "kind": {
883
+ "enum": [
884
+ "sequence",
885
+ "parallel",
886
+ "condition",
887
+ "try",
888
+ "compensation"
889
+ ]
890
+ },
891
+ "nodeIds": {
892
+ "type": "array",
893
+ "minItems": 1,
894
+ "uniqueItems": true,
895
+ "items": {
896
+ "$ref": "#/$defs/Identifier"
897
+ }
898
+ },
899
+ "parentRegionId": {
900
+ "anyOf": [
901
+ {
902
+ "$ref": "#/$defs/Identifier"
903
+ },
904
+ {
905
+ "type": "null"
906
+ }
907
+ ]
908
+ },
909
+ "entryNodeId": {
910
+ "$ref": "#/$defs/Identifier"
911
+ },
912
+ "exitNodeId": {
913
+ "$ref": "#/$defs/Identifier"
914
+ }
915
+ }
916
+ },
917
+ "SubgraphCall": {
918
+ "type": "object",
919
+ "additionalProperties": false,
920
+ "required": [
921
+ "nodeId",
922
+ "definitionId",
923
+ "revisionDigest",
924
+ "maxDepth"
925
+ ],
926
+ "properties": {
927
+ "nodeId": {
928
+ "$ref": "#/$defs/Identifier"
929
+ },
930
+ "definitionId": {
931
+ "$ref": "#/$defs/Identifier"
932
+ },
933
+ "revisionDigest": {
934
+ "$ref": "#/$defs/Digest"
935
+ },
936
+ "maxDepth": {
937
+ "type": "integer",
938
+ "minimum": 1,
939
+ "maximum": 64
940
+ }
941
+ }
942
+ },
943
+ "GraphDefinition": {
944
+ "type": "object",
945
+ "additionalProperties": false,
946
+ "required": [
947
+ "schemaVersion",
948
+ "id",
949
+ "revision",
950
+ "nodes",
951
+ "edges",
952
+ "loops",
953
+ "subgraphCalls",
954
+ "budget"
955
+ ],
956
+ "properties": {
957
+ "schemaVersion": {
958
+ "type": "integer",
959
+ "minimum": 1
960
+ },
961
+ "id": {
962
+ "$ref": "#/$defs/Identifier"
963
+ },
964
+ "revision": {
965
+ "type": "integer",
966
+ "minimum": 1
967
+ },
968
+ "triggers": {
969
+ "type": "array",
970
+ "maxItems": 1000,
971
+ "items": {
972
+ "$ref": "#/$defs/TriggerBinding"
973
+ }
974
+ },
975
+ "regions": {
976
+ "type": "array",
977
+ "maxItems": 1000,
978
+ "items": {
979
+ "$ref": "#/$defs/Region"
980
+ }
981
+ },
982
+ "nodes": {
983
+ "type": "array",
984
+ "maxItems": 10000,
985
+ "items": {
986
+ "$ref": "#/$defs/TaskNode"
987
+ }
988
+ },
989
+ "edges": {
990
+ "type": "array",
991
+ "maxItems": 50000,
992
+ "items": {
993
+ "$ref": "#/$defs/Edge"
994
+ }
995
+ },
996
+ "loops": {
997
+ "type": "array",
998
+ "maxItems": 1000,
999
+ "items": {
1000
+ "$ref": "#/$defs/LoopRegion"
1001
+ }
1002
+ },
1003
+ "subgraphCalls": {
1004
+ "type": "array",
1005
+ "maxItems": 1000,
1006
+ "items": {
1007
+ "$ref": "#/$defs/SubgraphCall"
1008
+ }
1009
+ },
1010
+ "budget": {
1011
+ "$ref": "#/$defs/Budget"
1012
+ },
1013
+ "allowedCapabilities": {
1014
+ "type": "array",
1015
+ "uniqueItems": true,
1016
+ "items": {
1017
+ "type": "string",
1018
+ "minLength": 1,
1019
+ "maxLength": 128
1020
+ }
1021
+ },
1022
+ "metadata": {
1023
+ "type": "object",
1024
+ "additionalProperties": {
1025
+ "$ref": "#/$defs/JsonValue"
1026
+ }
1027
+ }
1028
+ }
1029
+ },
1030
+ "GraphRevision": {
1031
+ "type": "object",
1032
+ "additionalProperties": false,
1033
+ "required": [
1034
+ "definitionId",
1035
+ "revision",
1036
+ "revisionDigest",
1037
+ "schemaVersion",
1038
+ "createdAt"
1039
+ ],
1040
+ "properties": {
1041
+ "definitionId": {
1042
+ "$ref": "#/$defs/Identifier"
1043
+ },
1044
+ "revision": {
1045
+ "type": "integer",
1046
+ "minimum": 1
1047
+ },
1048
+ "revisionDigest": {
1049
+ "$ref": "#/$defs/Digest"
1050
+ },
1051
+ "schemaVersion": {
1052
+ "type": "integer",
1053
+ "minimum": 1
1054
+ },
1055
+ "parentRevisionDigest": {
1056
+ "anyOf": [
1057
+ {
1058
+ "$ref": "#/$defs/Digest"
1059
+ },
1060
+ {
1061
+ "type": "null"
1062
+ }
1063
+ ]
1064
+ },
1065
+ "createdAt": {
1066
+ "$ref": "#/$defs/Timestamp"
1067
+ },
1068
+ "producerLeaseId": {
1069
+ "anyOf": [
1070
+ {
1071
+ "$ref": "#/$defs/Identifier"
1072
+ },
1073
+ {
1074
+ "type": "null"
1075
+ }
1076
+ ]
1077
+ }
1078
+ }
1079
+ },
1080
+ "IterationFrame": {
1081
+ "type": "object",
1082
+ "additionalProperties": false,
1083
+ "required": [
1084
+ "id",
1085
+ "runId",
1086
+ "regionId",
1087
+ "iterationPath",
1088
+ "status"
1089
+ ],
1090
+ "properties": {
1091
+ "id": {
1092
+ "$ref": "#/$defs/Identifier"
1093
+ },
1094
+ "runId": {
1095
+ "$ref": "#/$defs/Identifier"
1096
+ },
1097
+ "regionId": {
1098
+ "$ref": "#/$defs/Identifier"
1099
+ },
1100
+ "parentFrameId": {
1101
+ "anyOf": [
1102
+ {
1103
+ "$ref": "#/$defs/Identifier"
1104
+ },
1105
+ {
1106
+ "type": "null"
1107
+ }
1108
+ ]
1109
+ },
1110
+ "iterationPath": {
1111
+ "type": "array",
1112
+ "items": {
1113
+ "type": "integer",
1114
+ "minimum": 0
1115
+ }
1116
+ },
1117
+ "status": {
1118
+ "enum": [
1119
+ "active",
1120
+ "succeeded",
1121
+ "failed",
1122
+ "cancelled",
1123
+ "exhausted"
1124
+ ]
1125
+ },
1126
+ "startedAt": {
1127
+ "$ref": "#/$defs/Timestamp"
1128
+ },
1129
+ "completedAt": {
1130
+ "anyOf": [
1131
+ {
1132
+ "$ref": "#/$defs/Timestamp"
1133
+ },
1134
+ {
1135
+ "type": "null"
1136
+ }
1137
+ ]
1138
+ }
1139
+ }
1140
+ },
1141
+ "NodeAttempt": {
1142
+ "type": "object",
1143
+ "additionalProperties": false,
1144
+ "required": [
1145
+ "id",
1146
+ "runId",
1147
+ "nodeId",
1148
+ "iterationPath",
1149
+ "attempt",
1150
+ "status",
1151
+ "createdAt"
1152
+ ],
1153
+ "properties": {
1154
+ "id": {
1155
+ "$ref": "#/$defs/Identifier"
1156
+ },
1157
+ "runId": {
1158
+ "$ref": "#/$defs/Identifier"
1159
+ },
1160
+ "nodeId": {
1161
+ "$ref": "#/$defs/Identifier"
1162
+ },
1163
+ "iterationPath": {
1164
+ "type": "array",
1165
+ "items": {
1166
+ "type": "integer",
1167
+ "minimum": 0
1168
+ }
1169
+ },
1170
+ "attempt": {
1171
+ "type": "integer",
1172
+ "minimum": 1
1173
+ },
1174
+ "status": {
1175
+ "enum": [
1176
+ "pending",
1177
+ "running",
1178
+ "succeeded",
1179
+ "failed",
1180
+ "cancelled",
1181
+ "timed_out",
1182
+ "reconciliation_required"
1183
+ ]
1184
+ },
1185
+ "acceptedAssignmentAttemptId": {
1186
+ "anyOf": [
1187
+ {
1188
+ "$ref": "#/$defs/Identifier"
1189
+ },
1190
+ {
1191
+ "type": "null"
1192
+ }
1193
+ ]
1194
+ },
1195
+ "createdAt": {
1196
+ "$ref": "#/$defs/Timestamp"
1197
+ },
1198
+ "completedAt": {
1199
+ "anyOf": [
1200
+ {
1201
+ "$ref": "#/$defs/Timestamp"
1202
+ },
1203
+ {
1204
+ "type": "null"
1205
+ }
1206
+ ]
1207
+ },
1208
+ "terminalEvidence": {
1209
+ "anyOf": [
1210
+ {
1211
+ "$ref": "#/$defs/TerminalEvidence"
1212
+ },
1213
+ {
1214
+ "type": "null"
1215
+ }
1216
+ ]
1217
+ }
1218
+ }
1219
+ },
1220
+ "AssignmentAttempt": {
1221
+ "type": "object",
1222
+ "additionalProperties": false,
1223
+ "required": [
1224
+ "id",
1225
+ "runId",
1226
+ "nodeId",
1227
+ "agentId",
1228
+ "role",
1229
+ "leaseId",
1230
+ "fence",
1231
+ "status",
1232
+ "createdAt"
1233
+ ],
1234
+ "properties": {
1235
+ "id": {
1236
+ "$ref": "#/$defs/Identifier"
1237
+ },
1238
+ "runId": {
1239
+ "$ref": "#/$defs/Identifier"
1240
+ },
1241
+ "nodeId": {
1242
+ "$ref": "#/$defs/Identifier"
1243
+ },
1244
+ "agentId": {
1245
+ "$ref": "#/$defs/Identifier"
1246
+ },
1247
+ "role": {
1248
+ "enum": [
1249
+ "lead",
1250
+ "executor",
1251
+ "reviewer",
1252
+ "judge",
1253
+ "observer"
1254
+ ]
1255
+ },
1256
+ "leaseId": {
1257
+ "$ref": "#/$defs/Identifier"
1258
+ },
1259
+ "fence": {
1260
+ "type": "integer",
1261
+ "minimum": 1
1262
+ },
1263
+ "status": {
1264
+ "enum": [
1265
+ "offered",
1266
+ "active",
1267
+ "accepted",
1268
+ "rejected",
1269
+ "expired",
1270
+ "cancelled"
1271
+ ]
1272
+ },
1273
+ "createdAt": {
1274
+ "$ref": "#/$defs/Timestamp"
1275
+ },
1276
+ "expiresAt": {
1277
+ "$ref": "#/$defs/Timestamp"
1278
+ }
1279
+ }
1280
+ },
1281
+ "ArtifactRef": {
1282
+ "type": "object",
1283
+ "additionalProperties": false,
1284
+ "required": [
1285
+ "id",
1286
+ "digest",
1287
+ "producerNodeId",
1288
+ "producerAttemptId",
1289
+ "producerLeaseId",
1290
+ "schema",
1291
+ "dataPolicy"
1292
+ ],
1293
+ "properties": {
1294
+ "id": {
1295
+ "$ref": "#/$defs/Identifier"
1296
+ },
1297
+ "digest": {
1298
+ "$ref": "#/$defs/Digest"
1299
+ },
1300
+ "producerNodeId": {
1301
+ "$ref": "#/$defs/Identifier"
1302
+ },
1303
+ "producerAttemptId": {
1304
+ "$ref": "#/$defs/Identifier"
1305
+ },
1306
+ "producerLeaseId": {
1307
+ "$ref": "#/$defs/Identifier"
1308
+ },
1309
+ "schema": {
1310
+ "type": "object",
1311
+ "additionalProperties": {
1312
+ "$ref": "#/$defs/JsonValue"
1313
+ }
1314
+ },
1315
+ "commit": {
1316
+ "type": [
1317
+ "string",
1318
+ "null"
1319
+ ],
1320
+ "maxLength": 256
1321
+ },
1322
+ "validationEvidence": {
1323
+ "type": "array",
1324
+ "items": {
1325
+ "$ref": "#/$defs/Identifier"
1326
+ }
1327
+ },
1328
+ "consumerNodeIds": {
1329
+ "type": "array",
1330
+ "uniqueItems": true,
1331
+ "items": {
1332
+ "$ref": "#/$defs/Identifier"
1333
+ }
1334
+ },
1335
+ "dataPolicy": {
1336
+ "$ref": "#/$defs/DataPolicy"
1337
+ }
1338
+ }
1339
+ },
1340
+ "EffectReceipt": {
1341
+ "type": "object",
1342
+ "additionalProperties": false,
1343
+ "required": [
1344
+ "receiptDigest",
1345
+ "recordedAt"
1346
+ ],
1347
+ "properties": {
1348
+ "receiptDigest": {
1349
+ "$ref": "#/$defs/Digest"
1350
+ },
1351
+ "externalId": {
1352
+ "type": [
1353
+ "string",
1354
+ "null"
1355
+ ],
1356
+ "maxLength": 512
1357
+ },
1358
+ "recordedAt": {
1359
+ "$ref": "#/$defs/Timestamp"
1360
+ },
1361
+ "metadata": {
1362
+ "type": "object",
1363
+ "additionalProperties": {
1364
+ "$ref": "#/$defs/JsonValue"
1365
+ }
1366
+ }
1367
+ }
1368
+ },
1369
+ "Effect": {
1370
+ "type": "object",
1371
+ "additionalProperties": false,
1372
+ "required": [
1373
+ "id",
1374
+ "runId",
1375
+ "nodeId",
1376
+ "attemptId",
1377
+ "idempotencyKey",
1378
+ "operationDigest",
1379
+ "status",
1380
+ "createdAt"
1381
+ ],
1382
+ "properties": {
1383
+ "id": {
1384
+ "$ref": "#/$defs/Identifier"
1385
+ },
1386
+ "runId": {
1387
+ "$ref": "#/$defs/Identifier"
1388
+ },
1389
+ "nodeId": {
1390
+ "$ref": "#/$defs/Identifier"
1391
+ },
1392
+ "attemptId": {
1393
+ "$ref": "#/$defs/Identifier"
1394
+ },
1395
+ "idempotencyKey": {
1396
+ "type": "string",
1397
+ "minLength": 1,
1398
+ "maxLength": 256
1399
+ },
1400
+ "operationDigest": {
1401
+ "$ref": "#/$defs/Digest"
1402
+ },
1403
+ "status": {
1404
+ "enum": [
1405
+ "started",
1406
+ "committed",
1407
+ "failed",
1408
+ "unknown",
1409
+ "compensated"
1410
+ ]
1411
+ },
1412
+ "receipt": {
1413
+ "anyOf": [
1414
+ {
1415
+ "$ref": "#/$defs/EffectReceipt"
1416
+ },
1417
+ {
1418
+ "type": "null"
1419
+ }
1420
+ ]
1421
+ },
1422
+ "compensationEffectId": {
1423
+ "anyOf": [
1424
+ {
1425
+ "$ref": "#/$defs/Identifier"
1426
+ },
1427
+ {
1428
+ "type": "null"
1429
+ }
1430
+ ]
1431
+ },
1432
+ "createdAt": {
1433
+ "$ref": "#/$defs/Timestamp"
1434
+ },
1435
+ "updatedAt": {
1436
+ "$ref": "#/$defs/Timestamp"
1437
+ }
1438
+ }
1439
+ },
1440
+ "Message": {
1441
+ "type": "object",
1442
+ "additionalProperties": false,
1443
+ "required": [
1444
+ "id",
1445
+ "runId",
1446
+ "fromAttemptId",
1447
+ "toAgentId",
1448
+ "mode",
1449
+ "status",
1450
+ "payload",
1451
+ "payloadDigest",
1452
+ "dataPolicy",
1453
+ "createdAt"
1454
+ ],
1455
+ "properties": {
1456
+ "id": {
1457
+ "$ref": "#/$defs/Identifier"
1458
+ },
1459
+ "runId": {
1460
+ "$ref": "#/$defs/Identifier"
1461
+ },
1462
+ "fromAttemptId": {
1463
+ "$ref": "#/$defs/Identifier"
1464
+ },
1465
+ "toAgentId": {
1466
+ "$ref": "#/$defs/Identifier"
1467
+ },
1468
+ "causationId": {
1469
+ "anyOf": [
1470
+ {
1471
+ "$ref": "#/$defs/Identifier"
1472
+ },
1473
+ {
1474
+ "type": "null"
1475
+ }
1476
+ ]
1477
+ },
1478
+ "correlationId": {
1479
+ "anyOf": [
1480
+ {
1481
+ "$ref": "#/$defs/Identifier"
1482
+ },
1483
+ {
1484
+ "type": "null"
1485
+ }
1486
+ ]
1487
+ },
1488
+ "mode": {
1489
+ "enum": [
1490
+ "send",
1491
+ "followup"
1492
+ ]
1493
+ },
1494
+ "status": {
1495
+ "enum": [
1496
+ "admitted",
1497
+ "delivered",
1498
+ "read",
1499
+ "processed",
1500
+ "dead_letter"
1501
+ ]
1502
+ },
1503
+ "payload": {
1504
+ "$ref": "#/$defs/JsonValue"
1505
+ },
1506
+ "payloadDigest": {
1507
+ "$ref": "#/$defs/Digest"
1508
+ },
1509
+ "dataPolicy": {
1510
+ "$ref": "#/$defs/DataPolicy"
1511
+ },
1512
+ "createdAt": {
1513
+ "$ref": "#/$defs/Timestamp"
1514
+ },
1515
+ "expiresAt": {
1516
+ "$ref": "#/$defs/Timestamp"
1517
+ }
1518
+ }
1519
+ },
1520
+ "Handoff": {
1521
+ "type": "object",
1522
+ "additionalProperties": false,
1523
+ "required": [
1524
+ "id",
1525
+ "runId",
1526
+ "nodeId",
1527
+ "fromAttemptId",
1528
+ "toAgentId",
1529
+ "revisionDigest",
1530
+ "authorityDigest",
1531
+ "status",
1532
+ "expiresAt"
1533
+ ],
1534
+ "properties": {
1535
+ "id": {
1536
+ "$ref": "#/$defs/Identifier"
1537
+ },
1538
+ "runId": {
1539
+ "$ref": "#/$defs/Identifier"
1540
+ },
1541
+ "nodeId": {
1542
+ "$ref": "#/$defs/Identifier"
1543
+ },
1544
+ "fromAttemptId": {
1545
+ "$ref": "#/$defs/Identifier"
1546
+ },
1547
+ "toAgentId": {
1548
+ "$ref": "#/$defs/Identifier"
1549
+ },
1550
+ "revisionDigest": {
1551
+ "$ref": "#/$defs/Digest"
1552
+ },
1553
+ "authorityDigest": {
1554
+ "$ref": "#/$defs/Digest"
1555
+ },
1556
+ "artifactIds": {
1557
+ "type": "array",
1558
+ "uniqueItems": true,
1559
+ "items": {
1560
+ "$ref": "#/$defs/Identifier"
1561
+ }
1562
+ },
1563
+ "status": {
1564
+ "enum": [
1565
+ "offered",
1566
+ "accepted",
1567
+ "rejected",
1568
+ "committed",
1569
+ "revoked",
1570
+ "expired"
1571
+ ]
1572
+ },
1573
+ "expiresAt": {
1574
+ "$ref": "#/$defs/Timestamp"
1575
+ }
1576
+ }
1577
+ },
1578
+ "HumanTask": {
1579
+ "type": "object",
1580
+ "additionalProperties": false,
1581
+ "required": [
1582
+ "id",
1583
+ "runId",
1584
+ "revisionDigest",
1585
+ "nodeId",
1586
+ "attemptId",
1587
+ "operationDigest",
1588
+ "status",
1589
+ "nonce",
1590
+ "expiresAt"
1591
+ ],
1592
+ "properties": {
1593
+ "id": {
1594
+ "$ref": "#/$defs/Identifier"
1595
+ },
1596
+ "runId": {
1597
+ "$ref": "#/$defs/Identifier"
1598
+ },
1599
+ "revisionDigest": {
1600
+ "$ref": "#/$defs/Digest"
1601
+ },
1602
+ "nodeId": {
1603
+ "$ref": "#/$defs/Identifier"
1604
+ },
1605
+ "attemptId": {
1606
+ "$ref": "#/$defs/Identifier"
1607
+ },
1608
+ "operationDigest": {
1609
+ "$ref": "#/$defs/Digest"
1610
+ },
1611
+ "status": {
1612
+ "enum": [
1613
+ "open",
1614
+ "claimed",
1615
+ "decided",
1616
+ "cancelled",
1617
+ "expired"
1618
+ ]
1619
+ },
1620
+ "claimActorId": {
1621
+ "anyOf": [
1622
+ {
1623
+ "$ref": "#/$defs/Identifier"
1624
+ },
1625
+ {
1626
+ "type": "null"
1627
+ }
1628
+ ]
1629
+ },
1630
+ "claimLeaseId": {
1631
+ "anyOf": [
1632
+ {
1633
+ "$ref": "#/$defs/Identifier"
1634
+ },
1635
+ {
1636
+ "type": "null"
1637
+ }
1638
+ ]
1639
+ },
1640
+ "nonce": {
1641
+ "$ref": "#/$defs/Identifier"
1642
+ },
1643
+ "expiresAt": {
1644
+ "$ref": "#/$defs/Timestamp"
1645
+ },
1646
+ "decision": {
1647
+ "anyOf": [
1648
+ {
1649
+ "$ref": "#/$defs/ApprovalDecision"
1650
+ },
1651
+ {
1652
+ "type": "null"
1653
+ }
1654
+ ]
1655
+ }
1656
+ }
1657
+ },
1658
+ "GraphRun": {
1659
+ "type": "object",
1660
+ "additionalProperties": false,
1661
+ "required": [
1662
+ "id",
1663
+ "definitionId",
1664
+ "revision",
1665
+ "revisionDigest",
1666
+ "phase",
1667
+ "status",
1668
+ "graphRevision",
1669
+ "createdAt"
1670
+ ],
1671
+ "properties": {
1672
+ "id": {
1673
+ "$ref": "#/$defs/Identifier"
1674
+ },
1675
+ "definitionId": {
1676
+ "$ref": "#/$defs/Identifier"
1677
+ },
1678
+ "revision": {
1679
+ "type": "integer",
1680
+ "minimum": 1
1681
+ },
1682
+ "revisionDigest": {
1683
+ "$ref": "#/$defs/Digest"
1684
+ },
1685
+ "occurrenceId": {
1686
+ "anyOf": [
1687
+ {
1688
+ "$ref": "#/$defs/Identifier"
1689
+ },
1690
+ {
1691
+ "type": "null"
1692
+ }
1693
+ ]
1694
+ },
1695
+ "phase": {
1696
+ "enum": [
1697
+ "open",
1698
+ "sealed"
1699
+ ]
1700
+ },
1701
+ "status": {
1702
+ "enum": [
1703
+ "running",
1704
+ "waiting_input",
1705
+ "waiting_external",
1706
+ "waiting_human",
1707
+ "reconciliation_required",
1708
+ "succeeded",
1709
+ "failed",
1710
+ "partial",
1711
+ "cancelled",
1712
+ "blocked",
1713
+ "deadlocked",
1714
+ "budget_exhausted"
1715
+ ]
1716
+ },
1717
+ "graphRevision": {
1718
+ "type": "integer",
1719
+ "minimum": 1
1720
+ },
1721
+ "createdAt": {
1722
+ "$ref": "#/$defs/Timestamp"
1723
+ },
1724
+ "completedAt": {
1725
+ "anyOf": [
1726
+ {
1727
+ "$ref": "#/$defs/Timestamp"
1728
+ },
1729
+ {
1730
+ "type": "null"
1731
+ }
1732
+ ]
1733
+ }
1734
+ }
1735
+ },
1736
+ "InitializeParams": {
1737
+ "type": "object",
1738
+ "additionalProperties": false,
1739
+ "required": [
1740
+ "protocolVersion",
1741
+ "minimumProtocolVersion",
1742
+ "client"
1743
+ ],
1744
+ "properties": {
1745
+ "protocolVersion": {
1746
+ "type": "integer",
1747
+ "minimum": 1
1748
+ },
1749
+ "minimumProtocolVersion": {
1750
+ "type": "integer",
1751
+ "minimum": 1
1752
+ },
1753
+ "client": {
1754
+ "type": "object",
1755
+ "additionalProperties": false,
1756
+ "required": [
1757
+ "name",
1758
+ "version"
1759
+ ],
1760
+ "properties": {
1761
+ "name": {
1762
+ "type": "string",
1763
+ "minLength": 1,
1764
+ "maxLength": 128
1765
+ },
1766
+ "version": {
1767
+ "type": "string",
1768
+ "minLength": 1,
1769
+ "maxLength": 64
1770
+ }
1771
+ }
1772
+ },
1773
+ "features": {
1774
+ "type": "array",
1775
+ "uniqueItems": true,
1776
+ "items": {
1777
+ "type": "string",
1778
+ "minLength": 1,
1779
+ "maxLength": 128
1780
+ }
1781
+ }
1782
+ }
1783
+ },
1784
+ "JsonRpcRequestBase": {
1785
+ "type": "object",
1786
+ "required": [
1787
+ "jsonrpc",
1788
+ "id",
1789
+ "method"
1790
+ ],
1791
+ "properties": {
1792
+ "jsonrpc": {
1793
+ "const": "2.0"
1794
+ },
1795
+ "id": {
1796
+ "type": [
1797
+ "string",
1798
+ "integer"
1799
+ ]
1800
+ },
1801
+ "method": {
1802
+ "type": "string"
1803
+ },
1804
+ "params": {
1805
+ "type": "object"
1806
+ }
1807
+ }
1808
+ },
1809
+ "ClientRequest": {
1810
+ "allOf": [
1811
+ {
1812
+ "$ref": "#/$defs/JsonRpcRequestBase"
1813
+ },
1814
+ {
1815
+ "oneOf": [
1816
+ {
1817
+ "properties": {
1818
+ "method": {
1819
+ "const": "initialize"
1820
+ },
1821
+ "params": {
1822
+ "$ref": "#/$defs/InitializeParams"
1823
+ }
1824
+ }
1825
+ },
1826
+ {
1827
+ "properties": {
1828
+ "method": {
1829
+ "enum": [
1830
+ "thread/start",
1831
+ "thread/resume",
1832
+ "thread/fork",
1833
+ "thread/read",
1834
+ "thread/list",
1835
+ "thread/archive",
1836
+ "turn/start",
1837
+ "turn/interrupt"
1838
+ ]
1839
+ }
1840
+ }
1841
+ }
1842
+ ]
1843
+ }
1844
+ ]
1845
+ },
1846
+ "ClientResponse": {
1847
+ "type": "object",
1848
+ "additionalProperties": false,
1849
+ "required": [
1850
+ "jsonrpc",
1851
+ "id"
1852
+ ],
1853
+ "properties": {
1854
+ "jsonrpc": {
1855
+ "const": "2.0"
1856
+ },
1857
+ "id": {
1858
+ "type": [
1859
+ "string",
1860
+ "integer"
1861
+ ]
1862
+ },
1863
+ "result": {
1864
+ "$ref": "#/$defs/JsonValue"
1865
+ },
1866
+ "error": {
1867
+ "type": "object",
1868
+ "additionalProperties": false,
1869
+ "required": [
1870
+ "code",
1871
+ "message"
1872
+ ],
1873
+ "properties": {
1874
+ "code": {
1875
+ "type": "integer"
1876
+ },
1877
+ "message": {
1878
+ "type": "string"
1879
+ },
1880
+ "data": {
1881
+ "$ref": "#/$defs/JsonValue"
1882
+ }
1883
+ }
1884
+ }
1885
+ },
1886
+ "oneOf": [
1887
+ {
1888
+ "required": [
1889
+ "result"
1890
+ ]
1891
+ },
1892
+ {
1893
+ "required": [
1894
+ "error"
1895
+ ]
1896
+ }
1897
+ ]
1898
+ },
1899
+ "ServerRequest": {
1900
+ "type": "object",
1901
+ "additionalProperties": false,
1902
+ "required": [
1903
+ "jsonrpc",
1904
+ "id",
1905
+ "method",
1906
+ "params"
1907
+ ],
1908
+ "properties": {
1909
+ "jsonrpc": {
1910
+ "const": "2.0"
1911
+ },
1912
+ "id": {
1913
+ "type": [
1914
+ "string",
1915
+ "integer"
1916
+ ]
1917
+ },
1918
+ "method": {
1919
+ "enum": [
1920
+ "approval/decide",
1921
+ "humanTask/decide"
1922
+ ]
1923
+ },
1924
+ "params": {
1925
+ "$ref": "#/$defs/JsonValue"
1926
+ }
1927
+ }
1928
+ },
1929
+ "ServerNotification": {
1930
+ "type": "object",
1931
+ "additionalProperties": false,
1932
+ "required": [
1933
+ "jsonrpc",
1934
+ "method",
1935
+ "params"
1936
+ ],
1937
+ "properties": {
1938
+ "jsonrpc": {
1939
+ "const": "2.0"
1940
+ },
1941
+ "method": {
1942
+ "enum": [
1943
+ "thread/updated",
1944
+ "turn/started",
1945
+ "turn/completed",
1946
+ "item/started",
1947
+ "item/delta",
1948
+ "item/completed",
1949
+ "approval/requested",
1950
+ "approval/resolved",
1951
+ "tool/requested",
1952
+ "tool/result",
1953
+ "subagent/started",
1954
+ "subagent/completed",
1955
+ "graph/event"
1956
+ ]
1957
+ },
1958
+ "params": {
1959
+ "$ref": "#/$defs/JsonValue"
1960
+ }
1961
+ }
1962
+ }
1963
+ }
1964
+ }