@intentic/sandbox-contract 1.307.0 → 1.308.2

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 (260) hide show
  1. package/README.md +12 -0
  2. package/dist/contracts/accounts.contract.d.ts +6 -6
  3. package/dist/contracts/accounts.contract.js +7 -7
  4. package/dist/contracts/accounts.contract.js.map +1 -1
  5. package/dist/contracts/activity.contract.d.ts +2 -2
  6. package/dist/contracts/activity.contract.js +3 -3
  7. package/dist/contracts/activity.contract.js.map +1 -1
  8. package/dist/contracts/agent.contract.d.ts +10 -10
  9. package/dist/contracts/agent.contract.d.ts.map +1 -1
  10. package/dist/contracts/agent.contract.js +21 -11
  11. package/dist/contracts/agent.contract.js.map +1 -1
  12. package/dist/contracts/agents.contract.d.ts +41 -27
  13. package/dist/contracts/agents.contract.d.ts.map +1 -1
  14. package/dist/contracts/agents.contract.js +44 -28
  15. package/dist/contracts/agents.contract.js.map +1 -1
  16. package/dist/contracts/approvals.contract.d.ts +3 -3
  17. package/dist/contracts/approvals.contract.js +4 -4
  18. package/dist/contracts/approvals.contract.js.map +1 -1
  19. package/dist/contracts/areas.contract.d.ts +3 -3
  20. package/dist/contracts/areas.contract.d.ts.map +1 -1
  21. package/dist/contracts/areas.contract.js +5 -4
  22. package/dist/contracts/areas.contract.js.map +1 -1
  23. package/dist/contracts/automations.contract.d.ts +11 -11
  24. package/dist/contracts/automations.contract.js +12 -12
  25. package/dist/contracts/automations.contract.js.map +1 -1
  26. package/dist/contracts/capabilities.contract.d.ts +13 -13
  27. package/dist/contracts/capabilities.contract.d.ts.map +1 -1
  28. package/dist/contracts/capabilities.contract.js +18 -14
  29. package/dist/contracts/capabilities.contract.js.map +1 -1
  30. package/dist/contracts/chores.contract.d.ts +3 -3
  31. package/dist/contracts/chores.contract.js +4 -4
  32. package/dist/contracts/chores.contract.js.map +1 -1
  33. package/dist/contracts/ci.contract.d.ts +5 -5
  34. package/dist/contracts/ci.contract.js +6 -6
  35. package/dist/contracts/ci.contract.js.map +1 -1
  36. package/dist/contracts/diff.contract.d.ts +1 -1
  37. package/dist/contracts/diff.contract.js +2 -2
  38. package/dist/contracts/diff.contract.js.map +1 -1
  39. package/dist/contracts/endpoints.contract.d.ts +4 -4
  40. package/dist/contracts/endpoints.contract.js +5 -5
  41. package/dist/contracts/endpoints.contract.js.map +1 -1
  42. package/dist/contracts/exit.contract.d.ts +7 -7
  43. package/dist/contracts/exit.contract.d.ts.map +1 -1
  44. package/dist/contracts/exit.contract.js +9 -8
  45. package/dist/contracts/exit.contract.js.map +1 -1
  46. package/dist/contracts/extensions.contract.d.ts +17 -17
  47. package/dist/contracts/extensions.contract.js +18 -18
  48. package/dist/contracts/extensions.contract.js.map +1 -1
  49. package/dist/contracts/git.contract.d.ts +47 -45
  50. package/dist/contracts/git.contract.d.ts.map +1 -1
  51. package/dist/contracts/git.contract.js +46 -46
  52. package/dist/contracts/git.contract.js.map +1 -1
  53. package/dist/contracts/history.contract.d.ts +4 -4
  54. package/dist/contracts/history.contract.js +5 -5
  55. package/dist/contracts/history.contract.js.map +1 -1
  56. package/dist/contracts/intentic.contract.d.ts +3 -3
  57. package/dist/contracts/intentic.contract.d.ts.map +1 -1
  58. package/dist/contracts/intentic.contract.js +5 -4
  59. package/dist/contracts/intentic.contract.js.map +1 -1
  60. package/dist/contracts/inventory.contract.d.ts +3 -3
  61. package/dist/contracts/inventory.contract.js +4 -4
  62. package/dist/contracts/inventory.contract.js.map +1 -1
  63. package/dist/contracts/issues.contract.d.ts +5 -5
  64. package/dist/contracts/issues.contract.js +6 -6
  65. package/dist/contracts/issues.contract.js.map +1 -1
  66. package/dist/contracts/logs.contract.d.ts +3 -3
  67. package/dist/contracts/logs.contract.d.ts.map +1 -1
  68. package/dist/contracts/logs.contract.js +6 -4
  69. package/dist/contracts/logs.contract.js.map +1 -1
  70. package/dist/contracts/loops.contract.d.ts +6 -6
  71. package/dist/contracts/loops.contract.js +7 -7
  72. package/dist/contracts/loops.contract.js.map +1 -1
  73. package/dist/contracts/netdisk.contract.d.ts +3 -3
  74. package/dist/contracts/netdisk.contract.d.ts.map +1 -1
  75. package/dist/contracts/netdisk.contract.js +5 -4
  76. package/dist/contracts/netdisk.contract.js.map +1 -1
  77. package/dist/contracts/panels.contract.d.ts +3 -3
  78. package/dist/contracts/panels.contract.js +4 -4
  79. package/dist/contracts/panels.contract.js.map +1 -1
  80. package/dist/contracts/personas.contract.d.ts +8 -8
  81. package/dist/contracts/personas.contract.d.ts.map +1 -1
  82. package/dist/contracts/personas.contract.js +10 -9
  83. package/dist/contracts/personas.contract.js.map +1 -1
  84. package/dist/contracts/ports.contract.d.ts +3 -3
  85. package/dist/contracts/ports.contract.d.ts.map +1 -1
  86. package/dist/contracts/ports.contract.js +5 -4
  87. package/dist/contracts/ports.contract.js.map +1 -1
  88. package/dist/contracts/prepush.contract.d.ts +3 -3
  89. package/dist/contracts/prepush.contract.js +4 -4
  90. package/dist/contracts/prepush.contract.js.map +1 -1
  91. package/dist/contracts/providers.contract.d.ts +2 -2
  92. package/dist/contracts/providers.contract.d.ts.map +1 -1
  93. package/dist/contracts/providers.contract.js +5 -3
  94. package/dist/contracts/providers.contract.js.map +1 -1
  95. package/dist/contracts/public.contract.d.ts +3 -3
  96. package/dist/contracts/public.contract.js +4 -4
  97. package/dist/contracts/public.contract.js.map +1 -1
  98. package/dist/contracts/push.contract.d.ts +4 -4
  99. package/dist/contracts/push.contract.d.ts.map +1 -1
  100. package/dist/contracts/push.contract.js +9 -5
  101. package/dist/contracts/push.contract.js.map +1 -1
  102. package/dist/contracts/safety.contract.d.ts +3 -3
  103. package/dist/contracts/safety.contract.js +4 -4
  104. package/dist/contracts/safety.contract.js.map +1 -1
  105. package/dist/contracts/secrets.contract.d.ts +9 -9
  106. package/dist/contracts/secrets.contract.d.ts.map +1 -1
  107. package/dist/contracts/secrets.contract.js +13 -10
  108. package/dist/contracts/secrets.contract.js.map +1 -1
  109. package/dist/contracts/sessions.contract.d.ts +2 -2
  110. package/dist/contracts/sessions.contract.d.ts.map +1 -1
  111. package/dist/contracts/sessions.contract.js +5 -3
  112. package/dist/contracts/sessions.contract.js.map +1 -1
  113. package/dist/contracts/settings.contract.d.ts +11 -9
  114. package/dist/contracts/settings.contract.d.ts.map +1 -1
  115. package/dist/contracts/settings.contract.js +11 -10
  116. package/dist/contracts/settings.contract.js.map +1 -1
  117. package/dist/contracts/share.contract.d.ts +4 -4
  118. package/dist/contracts/share.contract.js +5 -5
  119. package/dist/contracts/share.contract.js.map +1 -1
  120. package/dist/contracts/skills.contract.d.ts +5 -5
  121. package/dist/contracts/skills.contract.js +6 -6
  122. package/dist/contracts/skills.contract.js.map +1 -1
  123. package/dist/contracts/system.contract.d.ts +22 -19
  124. package/dist/contracts/system.contract.d.ts.map +1 -1
  125. package/dist/contracts/system.contract.js +27 -20
  126. package/dist/contracts/system.contract.js.map +1 -1
  127. package/dist/contracts/translator.contract.d.ts +5 -5
  128. package/dist/contracts/translator.contract.js +6 -6
  129. package/dist/contracts/translator.contract.js.map +1 -1
  130. package/dist/contracts/usage.contract.d.ts +4 -4
  131. package/dist/contracts/usage.contract.js +5 -5
  132. package/dist/contracts/usage.contract.js.map +1 -1
  133. package/dist/contracts/vpn.contract.d.ts +4 -4
  134. package/dist/contracts/vpn.contract.d.ts.map +1 -1
  135. package/dist/contracts/vpn.contract.js +6 -5
  136. package/dist/contracts/vpn.contract.js.map +1 -1
  137. package/dist/contracts/workflows.contract.d.ts +9 -9
  138. package/dist/contracts/workflows.contract.js +10 -10
  139. package/dist/contracts/workflows.contract.js.map +1 -1
  140. package/dist/contracts/workspace.contract.d.ts +30 -30
  141. package/dist/contracts/workspace.contract.d.ts.map +1 -1
  142. package/dist/contracts/workspace.contract.js +46 -31
  143. package/dist/contracts/workspace.contract.js.map +1 -1
  144. package/dist/events/land-breakage.d.ts +4 -0
  145. package/dist/events/land-breakage.d.ts.map +1 -0
  146. package/dist/events/land-breakage.js +4 -0
  147. package/dist/events/land-breakage.js.map +1 -0
  148. package/dist/events/system-events.d.ts +2 -0
  149. package/dist/events/system-events.d.ts.map +1 -1
  150. package/dist/index.d.ts +9379 -9350
  151. package/dist/index.d.ts.map +1 -1
  152. package/dist/index.js +13 -1
  153. package/dist/index.js.map +1 -1
  154. package/dist/protocol/procedure-types.d.ts +10 -0
  155. package/dist/protocol/procedure-types.d.ts.map +1 -0
  156. package/dist/protocol/procedure-types.js +2 -0
  157. package/dist/protocol/procedure-types.js.map +1 -0
  158. package/dist/protocol/raw-routes.d.ts +417 -0
  159. package/dist/protocol/raw-routes.d.ts.map +1 -0
  160. package/dist/protocol/raw-routes.js +140 -0
  161. package/dist/protocol/raw-routes.js.map +1 -0
  162. package/dist/protocol/route-meta.d.ts +18 -0
  163. package/dist/protocol/route-meta.d.ts.map +1 -0
  164. package/dist/protocol/route-meta.js +3 -0
  165. package/dist/protocol/route-meta.js.map +1 -0
  166. package/dist/protocol/routes.d.ts +3 -0
  167. package/dist/protocol/routes.d.ts.map +1 -1
  168. package/dist/protocol/routes.js +47 -14
  169. package/dist/protocol/routes.js.map +1 -1
  170. package/dist/schemas/agent.d.ts +33 -0
  171. package/dist/schemas/agent.d.ts.map +1 -1
  172. package/dist/schemas/agent.js +22 -3
  173. package/dist/schemas/agent.js.map +1 -1
  174. package/dist/schemas/agents.d.ts +4 -0
  175. package/dist/schemas/agents.d.ts.map +1 -1
  176. package/dist/schemas/agents.js +4 -0
  177. package/dist/schemas/agents.js.map +1 -1
  178. package/dist/schemas/automations.d.ts +1 -0
  179. package/dist/schemas/automations.d.ts.map +1 -1
  180. package/dist/schemas/devices.d.ts.map +1 -1
  181. package/dist/schemas/devices.js +2 -2
  182. package/dist/schemas/devices.js.map +1 -1
  183. package/dist/schemas/git/git.d.ts +3 -0
  184. package/dist/schemas/git/git.d.ts.map +1 -1
  185. package/dist/schemas/hosts.d.ts +1 -0
  186. package/dist/schemas/hosts.d.ts.map +1 -1
  187. package/dist/schemas/hosts.js +1 -0
  188. package/dist/schemas/hosts.js.map +1 -1
  189. package/dist/schemas/settings.d.ts +1 -0
  190. package/dist/schemas/settings.d.ts.map +1 -1
  191. package/dist/schemas/settings.js +4 -0
  192. package/dist/schemas/settings.js.map +1 -1
  193. package/dist/state/definition.d.ts +4 -0
  194. package/dist/state/definition.d.ts.map +1 -1
  195. package/dist/state/history-state.d.ts.map +1 -1
  196. package/dist/state/history-state.js +2 -12
  197. package/dist/state/history-state.js.map +1 -1
  198. package/dist/state/landed-commit.d.ts +4 -0
  199. package/dist/state/landed-commit.d.ts.map +1 -0
  200. package/dist/state/landed-commit.js +12 -0
  201. package/dist/state/landed-commit.js.map +1 -0
  202. package/package.json +5 -5
  203. package/src/contracts/accounts.contract.ts +7 -7
  204. package/src/contracts/activity.contract.ts +3 -3
  205. package/src/contracts/agent.contract.ts +25 -11
  206. package/src/contracts/agents.contract.ts +48 -30
  207. package/src/contracts/approvals.contract.ts +4 -4
  208. package/src/contracts/areas.contract.ts +5 -4
  209. package/src/contracts/automations.contract.ts +12 -12
  210. package/src/contracts/capabilities.contract.ts +23 -14
  211. package/src/contracts/chores.contract.ts +4 -4
  212. package/src/contracts/ci.contract.ts +6 -6
  213. package/src/contracts/diff.contract.ts +2 -2
  214. package/src/contracts/endpoints.contract.ts +5 -5
  215. package/src/contracts/exit.contract.ts +11 -8
  216. package/src/contracts/extensions.contract.ts +18 -18
  217. package/src/contracts/git.contract.ts +46 -46
  218. package/src/contracts/history.contract.ts +5 -5
  219. package/src/contracts/intentic.contract.ts +5 -4
  220. package/src/contracts/inventory.contract.ts +4 -4
  221. package/src/contracts/issues.contract.ts +6 -6
  222. package/src/contracts/logs.contract.ts +8 -4
  223. package/src/contracts/loops.contract.ts +7 -7
  224. package/src/contracts/netdisk.contract.ts +7 -4
  225. package/src/contracts/panels.contract.ts +4 -4
  226. package/src/contracts/personas.contract.ts +10 -9
  227. package/src/contracts/ports.contract.ts +6 -4
  228. package/src/contracts/prepush.contract.ts +4 -4
  229. package/src/contracts/providers.contract.ts +5 -3
  230. package/src/contracts/public.contract.ts +4 -4
  231. package/src/contracts/push.contract.ts +12 -5
  232. package/src/contracts/safety.contract.ts +4 -4
  233. package/src/contracts/secrets.contract.ts +16 -10
  234. package/src/contracts/sessions.contract.ts +6 -3
  235. package/src/contracts/settings.contract.ts +11 -10
  236. package/src/contracts/share.contract.ts +5 -5
  237. package/src/contracts/skills.contract.ts +6 -6
  238. package/src/contracts/system.contract.ts +32 -20
  239. package/src/contracts/translator.contract.ts +6 -6
  240. package/src/contracts/usage.contract.ts +5 -5
  241. package/src/contracts/vpn.contract.ts +8 -5
  242. package/src/contracts/workflows.contract.ts +10 -10
  243. package/src/contracts/workspace.contract.ts +49 -31
  244. package/src/events/land-breakage.ts +11 -0
  245. package/src/index.ts +23 -1
  246. package/src/models/capability-ledger.test.ts +1 -1
  247. package/src/protocol/procedure-types.ts +24 -0
  248. package/src/protocol/raw-routes.ts +191 -0
  249. package/src/protocol/route-meta.ts +39 -0
  250. package/src/protocol/routes.test.ts +65 -2
  251. package/src/protocol/routes.ts +88 -27
  252. package/src/schemas/agent.test.ts +66 -0
  253. package/src/schemas/agent.ts +184 -154
  254. package/src/schemas/agents.ts +6 -0
  255. package/src/schemas/devices.ts +2 -2
  256. package/src/schemas/hosts.ts +4 -0
  257. package/src/schemas/settings.ts +9 -0
  258. package/src/state/history-state.ts +14 -29
  259. package/src/state/landed-commit.test.ts +18 -0
  260. package/src/state/landed-commit.ts +17 -0
package/README.md CHANGED
@@ -9,6 +9,14 @@ mismatch is a type error rather than a runtime surprise.
9
9
  ## Responsibilities
10
10
 
11
11
  - Declare the contracts, one file per subject area (`src/contracts/`).
12
+ - Declare every route's policy beside it ([src/protocol/route-meta.ts](src/protocol/route-meta.ts)): whether the
13
+ session middleware or the route's own credential check admits a request, the member floor, the guest list, which
14
+ machine credentials (panel, agent, sync, control rungs) reach it, and whether it answers before boot or streams.
15
+ Every procedure is built from the one `procedure` builder, so each carries a `RouteMeta` whose absent fields are the
16
+ defaults. The routes the daemon serves outside oRPC are rows of
17
+ [src/protocol/raw-routes.ts](src/protocol/raw-routes.ts) with the same meta, and `sandboxRouteFor`
18
+ ([src/protocol/routes.ts](src/protocol/routes.ts)) resolves a request to the route that serves it, reading the path
19
+ the way Hono or oRPC's router will. The daemon derives every gate from these and keeps no path table of its own.
12
20
  - Declare the wire shapes those contracts are built from, one module per subject area (`src/schemas/`).
13
21
  - Declare the event union the daemon pushes over SSE (`src/events.ts`), and the transcript a turn becomes: the
14
22
  rows, the patches that change them and the facts about a turn that `/agent/attach` carries.
@@ -146,6 +154,10 @@ the wire without a cycle.
146
154
 
147
155
  ## Conventions & gotchas
148
156
 
157
+ - **A route's policy is its meta.** A new procedure uses its file's builder (`secretRoute`, `systemRoute`, …, or
158
+ `procedure`) and declares only what differs from the defaults; a raw route is a `RAW_ROUTES` row before the daemon can
159
+ register it at all. The daemon's `auth/route-reach.test.ts` records every route's decisions, so a new route fails it
160
+ until its row is written, and a changed row is a route that became more or less reachable.
149
161
  - **Logic lives here only when both sides must agree on it.** A chore's verdict qualifies; a view's layout does
150
162
  not. When in doubt, the test is whether disagreement between daemon and browser would be a bug.
151
163
  - A cross-package type change may not resolve until the workspace settles: `@intentic/*` imports go through
@@ -23,7 +23,7 @@ export declare const accountsContract: {
23
23
  variant: import("zod").ZodString;
24
24
  handshake: import("zod").ZodString;
25
25
  expiresAt: import("zod").ZodNumber;
26
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
26
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
27
27
  complete: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
28
28
  provider: import("zod").ZodEnum<{
29
29
  claude: "claude";
@@ -62,7 +62,7 @@ export declare const accountsContract: {
62
62
  measuredAt: import("zod").ZodNumber;
63
63
  }, import("zod/v4/core").$strip>>;
64
64
  }, import("zod/v4/core").$strip>>;
65
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
65
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
66
66
  cancel: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
67
67
  provider: import("zod").ZodEnum<{
68
68
  claude: "claude";
@@ -77,7 +77,7 @@ export declare const accountsContract: {
77
77
  handshake: import("zod").ZodString;
78
78
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
79
79
  ok: import("zod").ZodLiteral<true>;
80
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
80
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
81
81
  accounts: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
82
82
  provider: import("zod").ZodEnum<{
83
83
  claude: "claude";
@@ -113,7 +113,7 @@ export declare const accountsContract: {
113
113
  measuredAt: import("zod").ZodNumber;
114
114
  }, import("zod/v4/core").$strip>>;
115
115
  }, import("zod/v4/core").$strip>>;
116
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
116
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
117
117
  rename: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
118
118
  provider: import("zod").ZodEnum<{
119
119
  claude: "claude";
@@ -148,7 +148,7 @@ export declare const accountsContract: {
148
148
  }, import("zod/v4/core").$strip>>;
149
149
  measuredAt: import("zod").ZodNumber;
150
150
  }, import("zod/v4/core").$strip>>;
151
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
151
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
152
152
  disconnect: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
153
153
  provider: import("zod").ZodEnum<{
154
154
  claude: "claude";
@@ -163,6 +163,6 @@ export declare const accountsContract: {
163
163
  id: import("zod").ZodString;
164
164
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
165
165
  ok: import("zod").ZodLiteral<true>;
166
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
166
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
167
167
  };
168
168
  //# sourceMappingURL=accounts.contract.d.ts.map
@@ -1,9 +1,9 @@
1
- import { oc } from "@orpc/contract";
1
+ import { procedure } from "../protocol/route-meta.js";
2
2
  import { NativeProviderParamSchema } from "../schemas/agent.js";
3
3
  import { AccountIdSchema, AccountListQuerySchema, AccountRenameSchema, LoginCancelSchema, LoginCompletedSchema, LoginCompleteSchema, LoginRequestSchema, LoginStartSchema, OauthAccountListSchema, OauthAccountSchema, } from "../schemas/providers/provider-oauth.js";
4
4
  import { OkSchema } from "../schemas/shared.js";
5
5
  export const accountsContract = {
6
- start: oc
6
+ start: procedure
7
7
  .route({
8
8
  method: "POST",
9
9
  path: "/accounts/{provider}/login/start",
@@ -12,7 +12,7 @@ export const accountsContract = {
12
12
  })
13
13
  .input(NativeProviderParamSchema.extend(LoginRequestSchema.shape))
14
14
  .output(LoginStartSchema),
15
- complete: oc
15
+ complete: procedure
16
16
  .route({
17
17
  method: "POST",
18
18
  path: "/accounts/{provider}/login/complete",
@@ -21,7 +21,7 @@ export const accountsContract = {
21
21
  })
22
22
  .input(NativeProviderParamSchema.extend(LoginCompleteSchema.shape))
23
23
  .output(LoginCompletedSchema),
24
- cancel: oc
24
+ cancel: procedure
25
25
  .route({
26
26
  method: "POST",
27
27
  path: "/accounts/{provider}/login/cancel",
@@ -30,7 +30,7 @@ export const accountsContract = {
30
30
  })
31
31
  .input(NativeProviderParamSchema.extend(LoginCancelSchema.shape))
32
32
  .output(OkSchema),
33
- accounts: oc
33
+ accounts: procedure
34
34
  .route({
35
35
  method: "GET",
36
36
  path: "/accounts/{provider}",
@@ -39,7 +39,7 @@ export const accountsContract = {
39
39
  })
40
40
  .input(NativeProviderParamSchema.extend(AccountListQuerySchema.shape))
41
41
  .output(OauthAccountListSchema),
42
- rename: oc
42
+ rename: procedure
43
43
  .route({
44
44
  method: "POST",
45
45
  path: "/accounts/{provider}/rename",
@@ -48,7 +48,7 @@ export const accountsContract = {
48
48
  })
49
49
  .input(NativeProviderParamSchema.extend(AccountRenameSchema.shape))
50
50
  .output(OauthAccountSchema),
51
- disconnect: oc
51
+ disconnect: procedure
52
52
  .route({
53
53
  method: "POST",
54
54
  path: "/accounts/{provider}/disconnect",
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.contract.js","sourceRoot":"","sources":["../../src/contracts/accounts.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EACH,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,GACrB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,KAAK,EAAE,EAAE;SACJ,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,kCAAkC;QACxC,OAAO,EAAE,6BAA6B;QACtC,WAAW,EACP,mRAAmR;KAC1R,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;SACjE,MAAM,CAAC,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,EAAE;SACP,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,qCAAqC;QAC3C,OAAO,EAAE,iDAAiD;QAC1D,WAAW,EACP,6OAA6O;KACpP,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClE,MAAM,CAAC,oBAAoB,CAAC;IACjC,MAAM,EAAE,EAAE;SACL,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,mCAAmC;QACzC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,4FAA4F;KAC5G,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SAChE,MAAM,CAAC,QAAQ,CAAC;IAErB,QAAQ,EAAE,EAAE;SACP,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EACP,sRAAsR;KAC7R,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;SACrE,MAAM,CAAC,sBAAsB,CAAC;IACnC,MAAM,EAAE,EAAE;SACL,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B;QACnC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,4HAA4H;KAC5I,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClE,MAAM,CAAC,kBAAkB,CAAC;IAC/B,UAAU,EAAE,EAAE;SACT,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,iCAAiC;QACvC,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,mHAAmH;KACnI,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC9D,MAAM,CAAC,QAAQ,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"accounts.contract.js","sourceRoot":"","sources":["../../src/contracts/accounts.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EACH,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,GACrB,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAKhD,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,KAAK,EAAE,SAAS;SACX,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,kCAAkC;QACxC,OAAO,EAAE,6BAA6B;QACtC,WAAW,EACP,mRAAmR;KAC1R,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;SACjE,MAAM,CAAC,gBAAgB,CAAC;IAC7B,QAAQ,EAAE,SAAS;SACd,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,qCAAqC;QAC3C,OAAO,EAAE,iDAAiD;QAC1D,WAAW,EACP,6OAA6O;KACpP,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClE,MAAM,CAAC,oBAAoB,CAAC;IACjC,MAAM,EAAE,SAAS;SACZ,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,mCAAmC;QACzC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,4FAA4F;KAC5G,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SAChE,MAAM,CAAC,QAAQ,CAAC;IAErB,QAAQ,EAAE,SAAS;SACd,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,kCAAkC;QAC3C,WAAW,EACP,sRAAsR;KAC7R,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;SACrE,MAAM,CAAC,sBAAsB,CAAC;IACnC,MAAM,EAAE,SAAS;SACZ,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,6BAA6B;QACnC,OAAO,EAAE,mBAAmB;QAC5B,WAAW,EAAE,4HAA4H;KAC5I,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;SAClE,MAAM,CAAC,kBAAkB,CAAC;IAC/B,UAAU,EAAE,SAAS;SAChB,KAAK,CAAC;QACH,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,iCAAiC;QACvC,OAAO,EAAE,uBAAuB;QAChC,WAAW,EAAE,mHAAmH;KACnI,CAAC;SACD,KAAK,CAAC,yBAAyB,CAAC,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;SAC9D,MAAM,CAAC,QAAQ,CAAC;CACxB,CAAC"}
@@ -39,7 +39,7 @@ export declare const activityContract: {
39
39
  error: import("zod").ZodOptional<import("zod").ZodString>;
40
40
  extra: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
41
41
  }, import("zod/v4/core").$strip>>;
42
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
42
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
43
43
  status: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, import("zod").ZodObject<{
44
44
  connections: import("zod").ZodArray<import("zod").ZodObject<{
45
45
  capabilityId: import("zod").ZodString;
@@ -59,6 +59,6 @@ export declare const activityContract: {
59
59
  startedAt: import("zod").ZodNumber;
60
60
  participants: import("zod").ZodArray<import("zod").ZodString>;
61
61
  }, import("zod/v4/core").$strip>>;
62
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
62
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
63
63
  };
64
64
  //# sourceMappingURL=activity.contract.d.ts.map
@@ -1,7 +1,7 @@
1
- import { oc } from "@orpc/contract";
1
+ import { procedure } from "../protocol/route-meta.js";
2
2
  import { ActivityListSchema, ActivityQuerySchema, ActivityStatusSchema } from "../schemas/activity.js";
3
3
  export const activityContract = {
4
- list: oc
4
+ list: procedure
5
5
  .route({
6
6
  method: "GET",
7
7
  path: "/activity",
@@ -10,7 +10,7 @@ export const activityContract = {
10
10
  })
11
11
  .input(ActivityQuerySchema)
12
12
  .output(ActivityListSchema),
13
- status: oc
13
+ status: procedure
14
14
  .route({
15
15
  method: "GET",
16
16
  path: "/activity/status",
@@ -1 +1 @@
1
- {"version":3,"file":"activity.contract.js","sourceRoot":"","sources":["../../src/contracts/activity.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAIvG,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,IAAI,EAAE,EAAE;SACH,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,0CAA0C;QACnD,WAAW,EACP,uKAAuK;KAC9K,CAAC;SACD,KAAK,CAAC,mBAAmB,CAAC;SAC1B,MAAM,CAAC,kBAAkB,CAAC;IAC/B,MAAM,EAAE,EAAE;SACL,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,uCAAuC;QAChD,WAAW,EAAE,mEAAmE;KACnF,CAAC;SACD,MAAM,CAAC,oBAAoB,CAAC;CACpC,CAAC"}
1
+ {"version":3,"file":"activity.contract.js","sourceRoot":"","sources":["../../src/contracts/activity.contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAIvG,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC5B,IAAI,EAAE,SAAS;SACV,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,0CAA0C;QACnD,WAAW,EACP,uKAAuK;KAC9K,CAAC;SACD,KAAK,CAAC,mBAAmB,CAAC;SAC1B,MAAM,CAAC,kBAAkB,CAAC;IAC/B,MAAM,EAAE,SAAS;SACZ,KAAK,CAAC;QACH,MAAM,EAAE,KAAK;QACb,IAAI,EAAE,kBAAkB;QACxB,OAAO,EAAE,uCAAuC;QAChD,WAAW,EAAE,mEAAmE;KACnF,CAAC;SACD,MAAM,CAAC,oBAAoB,CAAC;CACpC,CAAC"}
@@ -77,7 +77,7 @@ export declare const agentContract: {
77
77
  }, import("zod/v4/core").$strip>>;
78
78
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
79
79
  run: import("zod").ZodString;
80
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
80
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
81
81
  attach: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
82
82
  conversationId: import("zod").ZodString;
83
83
  run: import("zod").ZodOptional<import("zod").ZodString>;
@@ -2003,7 +2003,7 @@ export declare const agentContract: {
2003
2003
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
2004
2004
  kind: import("zod").ZodLiteral<"end">;
2005
2005
  }, import("zod/v4/core").$strip>], "kind">;
2006
- }, Record<never, never>, Record<never, never>>;
2006
+ }, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2007
2007
  reply: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodDiscriminatedUnion<[import("zod").ZodObject<{
2008
2008
  kind: import("zod").ZodLiteral<"plan">;
2009
2009
  requestId: import("zod").ZodString;
@@ -2047,7 +2047,7 @@ export declare const agentContract: {
2047
2047
  approve: import("zod").ZodBoolean;
2048
2048
  }, import("zod/v4/core").$strip>], "kind">, import("zod").ZodObject<{
2049
2049
  ok: import("zod").ZodLiteral<true>;
2050
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2050
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2051
2051
  steer: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2052
2052
  conversationId: import("zod").ZodString;
2053
2053
  text: import("zod").ZodString;
@@ -2061,12 +2061,12 @@ export declare const agentContract: {
2061
2061
  }, import("zod/v4/core").$strip>>;
2062
2062
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
2063
2063
  ok: import("zod").ZodLiteral<true>;
2064
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2064
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2065
2065
  stop: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2066
2066
  conversationId: import("zod").ZodString;
2067
2067
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
2068
2068
  ok: import("zod").ZodLiteral<true>;
2069
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2069
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2070
2070
  resume: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2071
2071
  conversationId: import("zod").ZodString;
2072
2072
  routing: import("zod").ZodOptional<import("zod").ZodObject<{
@@ -2081,14 +2081,14 @@ export declare const agentContract: {
2081
2081
  }, import("zod/v4/core").$strip>>;
2082
2082
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
2083
2083
  run: import("zod").ZodString;
2084
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2084
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2085
2085
  rewind: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2086
2086
  conversationId: import("zod").ZodString;
2087
2087
  index: import("zod").ZodNumber;
2088
2088
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
2089
2089
  snapshot: import("zod").ZodOptional<import("zod").ZodString>;
2090
2090
  dropped: import("zod").ZodNumber;
2091
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2091
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2092
2092
  commands: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2093
2093
  agent: import("zod").ZodOptional<import("zod").ZodString>;
2094
2094
  }, import("zod/v4/core").$strip>, import("zod").ZodObject<{
@@ -2097,7 +2097,7 @@ export declare const agentContract: {
2097
2097
  description: import("zod").ZodString;
2098
2098
  hint: import("zod").ZodOptional<import("zod").ZodString>;
2099
2099
  }, import("zod/v4/core").$strip>>;
2100
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2100
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2101
2101
  routeChat: import("@orpc/contract").ContractProcedureBuilderWithInputOutput<import("zod").ZodObject<{
2102
2102
  prompt: import("zod").ZodString;
2103
2103
  paths: import("zod").ZodDefault<import("zod").ZodArray<import("zod").ZodString>>;
@@ -2121,7 +2121,7 @@ export declare const agentContract: {
2121
2121
  reason: import("zod").ZodString;
2122
2122
  }, import("zod/v4/core").$strip>>;
2123
2123
  judge: import("zod").ZodOptional<import("zod").ZodString>;
2124
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2124
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2125
2125
  refusals: import("@orpc/contract").ContractProcedureBuilderWithOutput<import("@orpc/contract").Schema<unknown, unknown>, import("zod").ZodObject<{
2126
2126
  refusals: import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodObject<{
2127
2127
  at: import("zod").ZodNumber;
@@ -2134,6 +2134,6 @@ export declare const agentContract: {
2134
2134
  account: import("zod").ZodOptional<import("zod").ZodString>;
2135
2135
  model: import("zod").ZodOptional<import("zod").ZodString>;
2136
2136
  }, import("zod/v4/core").$strip>>;
2137
- }, import("zod/v4/core").$strip>, Record<never, never>, Record<never, never>>;
2137
+ }, import("zod/v4/core").$strip>, Record<never, never>, import("../protocol/route-meta.js").RouteMeta & Record<never, never>>;
2138
2138
  };
2139
2139
  //# sourceMappingURL=agent.contract.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.contract.d.ts","sourceRoot":"","sources":["../../src/contracts/agent.contract.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,aAAa;IACtB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUH,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUN,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUL,KAAK;;;;;;;;;;;;;;IAUL,IAAI;;;;;IAUJ,MAAM;;;;;;;;;;;;;;;IAWN,MAAM;;;;;;;IAUN,QAAQ;;;;;;;;;IAYR,SAAS;;;;;;;;;;;;;;;;;;;;;;;;IAUT,QAAQ;;;;;;;;;;;;;CASX,CAAC"}
1
+ {"version":3,"file":"agent.contract.d.ts","sourceRoot":"","sources":["../../src/contracts/agent.contract.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,aAAa;IACtB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYH,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAYN,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAWL,KAAK;;;;;;;;;;;;;;IAWL,IAAI;;;;;IAWJ,MAAM;;;;;;;;;;;;;;;IAaN,MAAM;;;;;;;IAWN,QAAQ;;;;;;;;;IAaR,SAAS;;;;;;;;;;;;;;;;;;;;;;;;IAYT,QAAQ;;;;;;;;;;;;;CAUX,CAAC"}
@@ -1,4 +1,4 @@
1
- import { oc } from "@orpc/contract";
1
+ import { procedure } from "../protocol/route-meta.js";
2
2
  import { streamOf } from "../protocol/routes.js";
3
3
  import { AgentCommandsQuerySchema, AgentCommandsSchema } from "../events/requests.js";
4
4
  import { AttachFrameSchema } from "../events/agent-events.js";
@@ -8,94 +8,104 @@ import { RewindResultSchema, RewindTurnSchema } from "../schemas/history.js";
8
8
  import { AgentReplySchema, ProviderRefusalsSchema, ResumeTurnSchema, SteerSchema, StopTurnSchema } from "../schemas/providers/plan-limits.js";
9
9
  import { OkSchema } from "../schemas/shared.js";
10
10
  export const agentContract = {
11
- run: oc
11
+ run: procedure
12
12
  .route({
13
13
  method: "POST",
14
14
  path: "/agent",
15
15
  summary: "Say something to an agent",
16
16
  description: "Starts a turn and answers immediately with its id; the work runs inside the sandbox whether or not anybody stays connected. Watch it by attaching. Naming a conversation that does not exist yet opens it.",
17
17
  })
18
+ .meta({ floor: "collaborator", guest: true, control: "editor" })
18
19
  .input(AgentTurnSchema)
19
20
  .output(StartedTurnSchema),
20
- attach: oc
21
+ attach: procedure
21
22
  .route({
22
23
  method: "POST",
23
24
  path: "/agent/attach",
24
25
  summary: "Watch a turn happen",
25
26
  description: "Streams everything the agent does: its words, the tools it reaches for, and the answers it gets. Give it the point you have already seen and it replays from there before going live, so a reload loses nothing. The window that started the turn holds no special claim, and any number of watchers on any number of devices see the same thing.",
26
27
  })
28
+ .meta({ floor: "viewer", guest: true, stream: true, control: "read" })
27
29
  .input(AttachTurnSchema)
28
30
  .output(streamOf(AttachFrameSchema)),
29
- reply: oc
31
+ reply: procedure
30
32
  .route({
31
33
  method: "POST",
32
34
  path: "/agent/reply",
33
35
  summary: "Answer a question the agent asked",
34
36
  description: "Un-parks a turn that is waiting on you: approving a plan, choosing between options, or permitting a tool. The turn picks up where it stopped.",
35
37
  })
38
+ .meta({ floor: "collaborator", guest: true, control: "editor" })
36
39
  .input(AgentReplySchema)
37
40
  .output(OkSchema),
38
- steer: oc
41
+ steer: procedure
39
42
  .route({
40
43
  method: "POST",
41
44
  path: "/agent/steer",
42
45
  summary: "Interrupt a running turn",
43
46
  description: "Slips a message into a turn already under way, without stopping it. This is how you redirect an agent mid-thought rather than waiting for it to finish being wrong.",
44
47
  })
48
+ .meta({ floor: "collaborator", guest: true })
45
49
  .input(SteerSchema)
46
50
  .output(OkSchema),
47
- stop: oc
51
+ stop: procedure
48
52
  .route({
49
53
  method: "POST",
50
54
  path: "/agent/stop",
51
55
  summary: "Stop a turn now",
52
56
  description: "Cancels the running turn inside the sandbox. Whatever it had already written to disk stays written.",
53
57
  })
58
+ .meta({ floor: "collaborator", guest: true })
54
59
  .input(StopTurnSchema)
55
60
  .output(OkSchema),
56
- resume: oc
61
+ resume: procedure
57
62
  .route({
58
63
  method: "POST",
59
64
  path: "/agent/resume",
60
65
  summary: "Run a refused turn again",
61
66
  description: "Sends the same turn again when the model provider's allowance refused it, with everything it originally carried except who serves it: the caller may name a different provider, harness or account, which is the usual answer to a spent allowance. It repeats the request rather than adding a new message to the conversation, so pressing it twice costs nothing and the agent is never told to continue work it has not started.",
62
67
  })
68
+ .meta({ floor: "collaborator", guest: true })
63
69
  .input(ResumeTurnSchema)
64
70
  .output(StartedTurnSchema),
65
- rewind: oc
71
+ rewind: procedure
66
72
  .route({
67
73
  method: "POST",
68
74
  path: "/agent/rewind",
69
75
  summary: "Go back to an earlier message",
70
76
  description: "Puts the files back as they stood at that point, drops every message after it, and forgets what the model remembered, so the next thing you say starts from there cleanly. Refused while a turn is running, because a restore cannot overwrite files an agent is editing, and refused for a message with no saved state to return to.",
71
77
  })
78
+ .meta({ floor: "collaborator", guest: true })
72
79
  .input(RewindTurnSchema)
73
80
  .output(RewindResultSchema),
74
- commands: oc
81
+ commands: procedure
75
82
  .route({
76
83
  method: "GET",
77
84
  path: "/agent/commands",
78
85
  summary: "Shortcut commands the agent knows",
79
86
  description: "The commands a provider published the last time one of its turns ran, so a composer can offer them before this conversation has run anything. A running turn's own list wins over this one.",
80
87
  })
88
+ .meta({ guest: true })
81
89
  .input(AgentCommandsQuerySchema)
82
90
  .output(AgentCommandsSchema),
83
- routeChat: oc
91
+ routeChat: procedure
84
92
  .route({
85
93
  method: "POST",
86
94
  path: "/agent/route-chat",
87
95
  summary: "Choose what a new chat opens on",
88
96
  description: "Reads a new chat's opening message once and answers whichever of two questions it still has: the model, effort and account that conversation should run on, from what is connected and still has allowance left, and which of this sandbox's personas should handle it. `model` and `persona` on the ask say which halves to answer, and only those are put to the model. Asked once per chat, on the message actually sent, and never again: every turn after it runs on what the chat is wearing, which you are free to change. Answers with nothing, and a reason, whenever it cannot choose — a chat is never held up by this.",
89
97
  })
98
+ .meta({ floor: "collaborator" })
90
99
  .input(ChatRouteAskSchema)
91
100
  .output(ChatRouteSchema),
92
- refusals: oc
101
+ refusals: procedure
93
102
  .route({
94
103
  method: "GET",
95
104
  path: "/agent/refusals",
96
105
  summary: "The last time each provider said no",
97
106
  description: "What each model provider most recently refused and why. Read this alongside an account's usage: the usage says how full it was when last checked, this says whether it has since started turning work away.",
98
107
  })
108
+ .meta({ guest: true })
99
109
  .output(ProviderRefusalsSchema),
100
110
  };
101
111
  //# sourceMappingURL=agent.contract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent.contract.js","sourceRoot":"","sources":["../../src/contracts/agent.contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.contract.js","sourceRoot":"","sources":["../../src/contracts/agent.contract.ts"],"names":[],"mappings":"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"}