@fuzdev/fuz_app 0.54.0 → 0.56.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 (348) hide show
  1. package/dist/actions/CLAUDE.md +214 -103
  2. package/dist/actions/action_bridge.d.ts +8 -5
  3. package/dist/actions/action_bridge.d.ts.map +1 -1
  4. package/dist/actions/action_bridge.js +1 -11
  5. package/dist/actions/action_codegen.d.ts +32 -0
  6. package/dist/actions/action_codegen.d.ts.map +1 -1
  7. package/dist/actions/action_codegen.js +35 -15
  8. package/dist/actions/action_registry.d.ts.map +1 -1
  9. package/dist/actions/action_registry.js +5 -2
  10. package/dist/actions/action_rpc.d.ts +141 -22
  11. package/dist/actions/action_rpc.d.ts.map +1 -1
  12. package/dist/actions/action_rpc.js +106 -187
  13. package/dist/actions/action_spec.d.ts +55 -16
  14. package/dist/actions/action_spec.d.ts.map +1 -1
  15. package/dist/actions/action_spec.js +16 -11
  16. package/dist/actions/action_types.d.ts +28 -60
  17. package/dist/actions/action_types.d.ts.map +1 -1
  18. package/dist/actions/action_types.js +13 -5
  19. package/dist/actions/broadcast_api.d.ts +2 -2
  20. package/dist/actions/broadcast_api.js +2 -2
  21. package/dist/actions/compile_action_registry.d.ts +50 -0
  22. package/dist/actions/compile_action_registry.d.ts.map +1 -0
  23. package/dist/actions/compile_action_registry.js +69 -0
  24. package/dist/actions/heartbeat.d.ts +8 -4
  25. package/dist/actions/heartbeat.d.ts.map +1 -1
  26. package/dist/actions/heartbeat.js +5 -4
  27. package/dist/actions/perform_action.d.ts +145 -0
  28. package/dist/actions/perform_action.d.ts.map +1 -0
  29. package/dist/actions/perform_action.js +258 -0
  30. package/dist/actions/register_action_ws.d.ts +46 -40
  31. package/dist/actions/register_action_ws.d.ts.map +1 -1
  32. package/dist/actions/register_action_ws.js +101 -159
  33. package/dist/actions/register_ws_endpoint.d.ts +15 -10
  34. package/dist/actions/register_ws_endpoint.d.ts.map +1 -1
  35. package/dist/actions/register_ws_endpoint.js +54 -7
  36. package/dist/actions/transports.d.ts.map +1 -1
  37. package/dist/actions/transports.js +0 -4
  38. package/dist/actions/transports_ws_auth_guard.d.ts +1 -1
  39. package/dist/actions/transports_ws_auth_guard.js +1 -1
  40. package/dist/actions/transports_ws_backend.d.ts +1 -1
  41. package/dist/actions/transports_ws_backend.js +1 -1
  42. package/dist/auth/CLAUDE.md +794 -410
  43. package/dist/auth/account_action_specs.d.ts +28 -7
  44. package/dist/auth/account_action_specs.d.ts.map +1 -1
  45. package/dist/auth/account_action_specs.js +7 -7
  46. package/dist/auth/account_actions.d.ts +7 -13
  47. package/dist/auth/account_actions.d.ts.map +1 -1
  48. package/dist/auth/account_actions.js +26 -35
  49. package/dist/auth/account_queries.d.ts +52 -16
  50. package/dist/auth/account_queries.d.ts.map +1 -1
  51. package/dist/auth/account_queries.js +87 -38
  52. package/dist/auth/account_routes.d.ts +9 -11
  53. package/dist/auth/account_routes.d.ts.map +1 -1
  54. package/dist/auth/account_routes.js +118 -46
  55. package/dist/auth/account_schema.d.ts +46 -35
  56. package/dist/auth/account_schema.d.ts.map +1 -1
  57. package/dist/auth/account_schema.js +21 -28
  58. package/dist/auth/admin_action_specs.d.ts +100 -32
  59. package/dist/auth/admin_action_specs.d.ts.map +1 -1
  60. package/dist/auth/admin_action_specs.js +64 -33
  61. package/dist/auth/admin_actions.d.ts +13 -19
  62. package/dist/auth/admin_actions.d.ts.map +1 -1
  63. package/dist/auth/admin_actions.js +37 -41
  64. package/dist/auth/audit_emitter.d.ts +160 -0
  65. package/dist/auth/audit_emitter.d.ts.map +1 -0
  66. package/dist/auth/audit_emitter.js +83 -0
  67. package/dist/auth/audit_log_queries.d.ts +17 -48
  68. package/dist/auth/audit_log_queries.d.ts.map +1 -1
  69. package/dist/auth/audit_log_queries.js +20 -56
  70. package/dist/auth/audit_log_routes.d.ts +1 -1
  71. package/dist/auth/audit_log_routes.d.ts.map +1 -1
  72. package/dist/auth/audit_log_routes.js +7 -3
  73. package/dist/auth/audit_log_schema.d.ts +92 -32
  74. package/dist/auth/audit_log_schema.d.ts.map +1 -1
  75. package/dist/auth/audit_log_schema.js +75 -46
  76. package/dist/auth/auth_guard_resolver.d.ts +44 -0
  77. package/dist/auth/auth_guard_resolver.d.ts.map +1 -0
  78. package/dist/auth/auth_guard_resolver.js +56 -0
  79. package/dist/auth/bearer_auth.d.ts +9 -7
  80. package/dist/auth/bearer_auth.d.ts.map +1 -1
  81. package/dist/auth/bearer_auth.js +13 -21
  82. package/dist/auth/bootstrap_account.d.ts +7 -7
  83. package/dist/auth/bootstrap_account.d.ts.map +1 -1
  84. package/dist/auth/bootstrap_account.js +7 -7
  85. package/dist/auth/bootstrap_routes.d.ts.map +1 -1
  86. package/dist/auth/bootstrap_routes.js +11 -10
  87. package/dist/auth/cleanup.d.ts +20 -26
  88. package/dist/auth/cleanup.d.ts.map +1 -1
  89. package/dist/auth/cleanup.js +33 -42
  90. package/dist/auth/credential_type_schema.d.ts +115 -0
  91. package/dist/auth/credential_type_schema.d.ts.map +1 -0
  92. package/dist/auth/credential_type_schema.js +127 -0
  93. package/dist/auth/daemon_token_middleware.d.ts +23 -11
  94. package/dist/auth/daemon_token_middleware.d.ts.map +1 -1
  95. package/dist/auth/daemon_token_middleware.js +28 -22
  96. package/dist/auth/ddl.d.ts +2 -2
  97. package/dist/auth/ddl.d.ts.map +1 -1
  98. package/dist/auth/ddl.js +6 -6
  99. package/dist/auth/deps.d.ts +7 -18
  100. package/dist/auth/deps.d.ts.map +1 -1
  101. package/dist/auth/grant_path_schema.d.ts +117 -0
  102. package/dist/auth/grant_path_schema.d.ts.map +1 -0
  103. package/dist/auth/grant_path_schema.js +137 -0
  104. package/dist/auth/invite_queries.d.ts +12 -1
  105. package/dist/auth/invite_queries.d.ts.map +1 -1
  106. package/dist/auth/invite_queries.js +12 -1
  107. package/dist/auth/invite_schema.d.ts +1 -1
  108. package/dist/auth/invite_schema.d.ts.map +1 -1
  109. package/dist/auth/invite_schema.js +1 -1
  110. package/dist/auth/middleware.d.ts.map +1 -1
  111. package/dist/auth/middleware.js +9 -4
  112. package/dist/auth/migrations.d.ts +37 -14
  113. package/dist/auth/migrations.d.ts.map +1 -1
  114. package/dist/auth/migrations.js +79 -32
  115. package/dist/auth/request_context.d.ts +331 -61
  116. package/dist/auth/request_context.d.ts.map +1 -1
  117. package/dist/auth/request_context.js +378 -95
  118. package/dist/auth/{permit_offer_action_specs.d.ts → role_grant_offer_action_specs.d.ts} +163 -94
  119. package/dist/auth/role_grant_offer_action_specs.d.ts.map +1 -0
  120. package/dist/auth/role_grant_offer_action_specs.js +262 -0
  121. package/dist/auth/role_grant_offer_actions.d.ts +104 -0
  122. package/dist/auth/role_grant_offer_actions.d.ts.map +1 -0
  123. package/dist/auth/role_grant_offer_actions.js +473 -0
  124. package/dist/auth/{permit_offer_notifications.d.ts → role_grant_offer_notifications.d.ts} +90 -70
  125. package/dist/auth/role_grant_offer_notifications.d.ts.map +1 -0
  126. package/dist/auth/role_grant_offer_notifications.js +182 -0
  127. package/dist/auth/role_grant_offer_queries.d.ts +242 -0
  128. package/dist/auth/role_grant_offer_queries.d.ts.map +1 -0
  129. package/dist/auth/role_grant_offer_queries.js +533 -0
  130. package/dist/auth/role_grant_offer_schema.d.ts +150 -0
  131. package/dist/auth/role_grant_offer_schema.d.ts.map +1 -0
  132. package/dist/auth/{permit_offer_schema.js → role_grant_offer_schema.js} +60 -36
  133. package/dist/auth/role_grant_queries.d.ts +231 -0
  134. package/dist/auth/role_grant_queries.d.ts.map +1 -0
  135. package/dist/auth/role_grant_queries.js +320 -0
  136. package/dist/auth/role_schema.d.ts +150 -40
  137. package/dist/auth/role_schema.d.ts.map +1 -1
  138. package/dist/auth/role_schema.js +144 -45
  139. package/dist/auth/scope_kind_schema.d.ts +96 -0
  140. package/dist/auth/scope_kind_schema.d.ts.map +1 -0
  141. package/dist/auth/scope_kind_schema.js +94 -0
  142. package/dist/auth/self_service_role_action_specs.d.ts +6 -1
  143. package/dist/auth/self_service_role_action_specs.d.ts.map +1 -1
  144. package/dist/auth/self_service_role_action_specs.js +3 -1
  145. package/dist/auth/self_service_role_actions.d.ts +34 -27
  146. package/dist/auth/self_service_role_actions.d.ts.map +1 -1
  147. package/dist/auth/self_service_role_actions.js +68 -48
  148. package/dist/auth/session_cookie.d.ts +43 -6
  149. package/dist/auth/session_cookie.d.ts.map +1 -1
  150. package/dist/auth/session_cookie.js +31 -5
  151. package/dist/auth/session_middleware.d.ts +37 -3
  152. package/dist/auth/session_middleware.d.ts.map +1 -1
  153. package/dist/auth/session_middleware.js +33 -7
  154. package/dist/auth/signup_routes.d.ts.map +1 -1
  155. package/dist/auth/signup_routes.js +48 -19
  156. package/dist/auth/standard_action_specs.d.ts +2 -2
  157. package/dist/auth/standard_action_specs.js +4 -4
  158. package/dist/auth/standard_rpc_actions.d.ts +23 -19
  159. package/dist/auth/standard_rpc_actions.d.ts.map +1 -1
  160. package/dist/auth/standard_rpc_actions.js +12 -12
  161. package/dist/db/migrate.d.ts +12 -8
  162. package/dist/db/migrate.d.ts.map +1 -1
  163. package/dist/db/migrate.js +10 -7
  164. package/dist/dev/setup.d.ts +2 -2
  165. package/dist/dev/setup.d.ts.map +1 -1
  166. package/dist/dev/setup.js +9 -7
  167. package/dist/env/load.d.ts +1 -1
  168. package/dist/env/load.js +1 -1
  169. package/dist/hono_context.d.ts +64 -5
  170. package/dist/hono_context.d.ts.map +1 -1
  171. package/dist/hono_context.js +38 -2
  172. package/dist/http/CLAUDE.md +264 -87
  173. package/dist/http/auth_shape.d.ts +191 -0
  174. package/dist/http/auth_shape.d.ts.map +1 -0
  175. package/dist/http/auth_shape.js +237 -0
  176. package/dist/http/common_routes.js +3 -3
  177. package/dist/http/db_routes.d.ts +4 -0
  178. package/dist/http/db_routes.d.ts.map +1 -1
  179. package/dist/http/db_routes.js +44 -7
  180. package/dist/http/error_schemas.d.ts +132 -19
  181. package/dist/http/error_schemas.d.ts.map +1 -1
  182. package/dist/http/error_schemas.js +132 -40
  183. package/dist/http/jsonrpc_errors.d.ts +27 -2
  184. package/dist/http/jsonrpc_errors.d.ts.map +1 -1
  185. package/dist/http/jsonrpc_errors.js +26 -2
  186. package/dist/http/pending_effects.d.ts +71 -18
  187. package/dist/http/pending_effects.d.ts.map +1 -1
  188. package/dist/http/pending_effects.js +87 -18
  189. package/dist/http/proxy.d.ts +52 -5
  190. package/dist/http/proxy.d.ts.map +1 -1
  191. package/dist/http/proxy.js +92 -14
  192. package/dist/http/route_spec.d.ts +113 -41
  193. package/dist/http/route_spec.d.ts.map +1 -1
  194. package/dist/http/route_spec.js +130 -52
  195. package/dist/http/schema_helpers.d.ts +3 -2
  196. package/dist/http/schema_helpers.d.ts.map +1 -1
  197. package/dist/http/schema_helpers.js +9 -2
  198. package/dist/http/surface.d.ts +2 -1
  199. package/dist/http/surface.d.ts.map +1 -1
  200. package/dist/http/surface.js +1 -2
  201. package/dist/http/surface_query.d.ts +39 -35
  202. package/dist/http/surface_query.d.ts.map +1 -1
  203. package/dist/http/surface_query.js +79 -36
  204. package/dist/primitive_schemas.d.ts +39 -0
  205. package/dist/primitive_schemas.d.ts.map +1 -0
  206. package/dist/primitive_schemas.js +40 -0
  207. package/dist/realtime/sse_auth_guard.d.ts +5 -5
  208. package/dist/realtime/sse_auth_guard.js +9 -9
  209. package/dist/runtime/mock.d.ts +1 -1
  210. package/dist/runtime/mock.js +1 -1
  211. package/dist/server/app_backend.d.ts +14 -11
  212. package/dist/server/app_backend.d.ts.map +1 -1
  213. package/dist/server/app_backend.js +12 -8
  214. package/dist/server/app_server.d.ts +7 -7
  215. package/dist/server/app_server.d.ts.map +1 -1
  216. package/dist/server/app_server.js +36 -31
  217. package/dist/server/validate_nginx.d.ts +1 -1
  218. package/dist/server/validate_nginx.js +1 -1
  219. package/dist/testing/CLAUDE.md +73 -55
  220. package/dist/testing/admin_integration.d.ts +5 -6
  221. package/dist/testing/admin_integration.d.ts.map +1 -1
  222. package/dist/testing/admin_integration.js +100 -96
  223. package/dist/testing/adversarial_headers.js +1 -1
  224. package/dist/testing/app_server.d.ts +11 -14
  225. package/dist/testing/app_server.d.ts.map +1 -1
  226. package/dist/testing/app_server.js +18 -17
  227. package/dist/testing/assertions.d.ts.map +1 -1
  228. package/dist/testing/assertions.js +2 -1
  229. package/dist/testing/attack_surface.d.ts.map +1 -1
  230. package/dist/testing/attack_surface.js +15 -9
  231. package/dist/testing/audit_completeness.d.ts +2 -2
  232. package/dist/testing/audit_completeness.d.ts.map +1 -1
  233. package/dist/testing/audit_completeness.js +53 -39
  234. package/dist/testing/auth_apps.d.ts +5 -4
  235. package/dist/testing/auth_apps.d.ts.map +1 -1
  236. package/dist/testing/auth_apps.js +28 -22
  237. package/dist/testing/data_exposure.d.ts.map +1 -1
  238. package/dist/testing/data_exposure.js +5 -5
  239. package/dist/testing/db.d.ts +1 -1
  240. package/dist/testing/db.d.ts.map +1 -1
  241. package/dist/testing/db.js +4 -4
  242. package/dist/testing/db_entities.d.ts +22 -0
  243. package/dist/testing/db_entities.d.ts.map +1 -0
  244. package/dist/testing/db_entities.js +28 -0
  245. package/dist/testing/entities.d.ts +10 -8
  246. package/dist/testing/entities.d.ts.map +1 -1
  247. package/dist/testing/entities.js +22 -18
  248. package/dist/testing/integration.d.ts.map +1 -1
  249. package/dist/testing/integration.js +13 -14
  250. package/dist/testing/integration_helpers.d.ts +8 -6
  251. package/dist/testing/integration_helpers.d.ts.map +1 -1
  252. package/dist/testing/integration_helpers.js +29 -23
  253. package/dist/testing/middleware.d.ts +15 -11
  254. package/dist/testing/middleware.d.ts.map +1 -1
  255. package/dist/testing/middleware.js +75 -32
  256. package/dist/testing/rpc_attack_surface.d.ts.map +1 -1
  257. package/dist/testing/rpc_attack_surface.js +40 -24
  258. package/dist/testing/rpc_helpers.d.ts.map +1 -1
  259. package/dist/testing/rpc_helpers.js +3 -1
  260. package/dist/testing/rpc_round_trip.d.ts +1 -1
  261. package/dist/testing/rpc_round_trip.d.ts.map +1 -1
  262. package/dist/testing/rpc_round_trip.js +14 -13
  263. package/dist/testing/sse_round_trip.d.ts +3 -4
  264. package/dist/testing/sse_round_trip.d.ts.map +1 -1
  265. package/dist/testing/sse_round_trip.js +7 -11
  266. package/dist/testing/standard.d.ts +1 -1
  267. package/dist/testing/stubs.d.ts +25 -0
  268. package/dist/testing/stubs.d.ts.map +1 -1
  269. package/dist/testing/stubs.js +43 -2
  270. package/dist/testing/surface_invariants.d.ts +2 -2
  271. package/dist/testing/ws_round_trip.d.ts +12 -13
  272. package/dist/testing/ws_round_trip.d.ts.map +1 -1
  273. package/dist/testing/ws_round_trip.js +24 -12
  274. package/dist/ui/AdminAccounts.svelte +23 -20
  275. package/dist/ui/AdminOverview.svelte +15 -13
  276. package/dist/ui/AdminOverview.svelte.d.ts.map +1 -1
  277. package/dist/ui/{AdminPermitHistory.svelte → AdminRoleGrantHistory.svelte} +12 -12
  278. package/dist/ui/AdminRoleGrantHistory.svelte.d.ts +4 -0
  279. package/dist/ui/AdminRoleGrantHistory.svelte.d.ts.map +1 -0
  280. package/dist/ui/BootstrapForm.svelte +1 -1
  281. package/dist/ui/CLAUDE.md +65 -59
  282. package/dist/ui/{PermitOfferForm.svelte → RoleGrantOfferForm.svelte} +37 -22
  283. package/dist/ui/RoleGrantOfferForm.svelte.d.ts +20 -0
  284. package/dist/ui/RoleGrantOfferForm.svelte.d.ts.map +1 -0
  285. package/dist/ui/{PermitOfferHistory.svelte → RoleGrantOfferHistory.svelte} +12 -12
  286. package/dist/ui/{PermitOfferHistory.svelte.d.ts → RoleGrantOfferHistory.svelte.d.ts} +4 -4
  287. package/dist/ui/RoleGrantOfferHistory.svelte.d.ts.map +1 -0
  288. package/dist/ui/{PermitOfferInbox.svelte → RoleGrantOfferInbox.svelte} +14 -14
  289. package/dist/ui/{PermitOfferInbox.svelte.d.ts → RoleGrantOfferInbox.svelte.d.ts} +4 -4
  290. package/dist/ui/RoleGrantOfferInbox.svelte.d.ts.map +1 -0
  291. package/dist/ui/SignupForm.svelte +1 -1
  292. package/dist/ui/SurfaceExplorer.svelte +35 -15
  293. package/dist/ui/SurfaceExplorer.svelte.d.ts.map +1 -1
  294. package/dist/ui/account_sessions_state.svelte.d.ts +2 -3
  295. package/dist/ui/account_sessions_state.svelte.d.ts.map +1 -1
  296. package/dist/ui/account_sessions_state.svelte.js +2 -3
  297. package/dist/ui/admin_accounts_state.svelte.d.ts +25 -18
  298. package/dist/ui/admin_accounts_state.svelte.d.ts.map +1 -1
  299. package/dist/ui/admin_accounts_state.svelte.js +28 -17
  300. package/dist/ui/admin_rpc_adapters.d.ts +20 -20
  301. package/dist/ui/admin_rpc_adapters.d.ts.map +1 -1
  302. package/dist/ui/admin_rpc_adapters.js +17 -17
  303. package/dist/ui/admin_sessions_state.svelte.d.ts +2 -2
  304. package/dist/ui/admin_sessions_state.svelte.js +2 -2
  305. package/dist/ui/audit_log_state.svelte.d.ts +7 -7
  306. package/dist/ui/audit_log_state.svelte.d.ts.map +1 -1
  307. package/dist/ui/audit_log_state.svelte.js +6 -6
  308. package/dist/ui/auth_state.svelte.d.ts +3 -3
  309. package/dist/ui/auth_state.svelte.d.ts.map +1 -1
  310. package/dist/ui/auth_state.svelte.js +6 -6
  311. package/dist/ui/format_scope.d.ts +2 -2
  312. package/dist/ui/format_scope.js +2 -2
  313. package/dist/ui/{permit_offers_state.svelte.d.ts → role_grant_offers_state.svelte.d.ts} +39 -31
  314. package/dist/ui/role_grant_offers_state.svelte.d.ts.map +1 -0
  315. package/dist/ui/{permit_offers_state.svelte.js → role_grant_offers_state.svelte.js} +25 -19
  316. package/dist/ui/ui_format.js +2 -2
  317. package/package.json +3 -3
  318. package/dist/auth/permit_offer_action_specs.d.ts.map +0 -1
  319. package/dist/auth/permit_offer_action_specs.js +0 -227
  320. package/dist/auth/permit_offer_actions.d.ts +0 -110
  321. package/dist/auth/permit_offer_actions.d.ts.map +0 -1
  322. package/dist/auth/permit_offer_actions.js +0 -452
  323. package/dist/auth/permit_offer_notifications.d.ts.map +0 -1
  324. package/dist/auth/permit_offer_notifications.js +0 -182
  325. package/dist/auth/permit_offer_queries.d.ts +0 -183
  326. package/dist/auth/permit_offer_queries.d.ts.map +0 -1
  327. package/dist/auth/permit_offer_queries.js +0 -408
  328. package/dist/auth/permit_offer_schema.d.ts +0 -103
  329. package/dist/auth/permit_offer_schema.d.ts.map +0 -1
  330. package/dist/auth/permit_queries.d.ts +0 -210
  331. package/dist/auth/permit_queries.d.ts.map +0 -1
  332. package/dist/auth/permit_queries.js +0 -294
  333. package/dist/auth/require_keeper.d.ts +0 -20
  334. package/dist/auth/require_keeper.d.ts.map +0 -1
  335. package/dist/auth/require_keeper.js +0 -35
  336. package/dist/auth/route_guards.d.ts +0 -21
  337. package/dist/auth/route_guards.d.ts.map +0 -1
  338. package/dist/auth/route_guards.js +0 -32
  339. package/dist/auth/session_lifecycle.d.ts +0 -37
  340. package/dist/auth/session_lifecycle.d.ts.map +0 -1
  341. package/dist/auth/session_lifecycle.js +0 -29
  342. package/dist/ui/AdminPermitHistory.svelte.d.ts +0 -4
  343. package/dist/ui/AdminPermitHistory.svelte.d.ts.map +0 -1
  344. package/dist/ui/PermitOfferForm.svelte.d.ts +0 -14
  345. package/dist/ui/PermitOfferForm.svelte.d.ts.map +0 -1
  346. package/dist/ui/PermitOfferHistory.svelte.d.ts.map +0 -1
  347. package/dist/ui/PermitOfferInbox.svelte.d.ts.map +0 -1
  348. package/dist/ui/permit_offers_state.svelte.d.ts.map +0 -1
@@ -1,96 +1,122 @@
1
1
  /**
2
- * Permit offer RPC action specs — declarative contract for the
3
- * consentful-permits surface (offer lifecycle + admin revoke).
2
+ * Role grant offer RPC action specs — declarative contract for the
3
+ * consentful-role-grants surface (offer lifecycle + admin revoke).
4
4
  *
5
- * Import this module for the specs, Input/Output schemas, `ERROR_OFFER_*`
6
- * reason constants, and the `all_permit_offer_action_specs` registry.
7
- * Handlers live in `auth/permit_offer_actions.ts`.
5
+ * Import this module for the specs, Input/Output schemas, `ERROR_ROLE_GRANT_OFFER_*`
6
+ * reason constants, and the `all_role_grant_offer_action_specs` registry.
7
+ * Handlers live in `auth/role_grant_offer_actions.ts`.
8
8
  *
9
- * Authorization enforcement: offer-lifecycle specs declare
10
- * `auth: 'authenticated'` and rely on `query_*` IDOR guards or in-handler
11
- * policy checks (e.g. `permit_offer_list`/`_history` elevate to admin only
9
+ * Authorization enforcement: offer-lifecycle specs declare account+actor
10
+ * required (no roles) and rely on `query_*` IDOR guards or in-handler
11
+ * policy checks (e.g. `role_grant_offer_list`/`_history` elevate to admin only
12
12
  * when inspecting another account — an input-dependent check that can't be
13
- * expressed at the spec level). `permit_revoke` declares
14
- * `auth: {role: 'admin'}` — the RPC dispatcher's per-spec `check_action_auth`
15
- * gates it before the handler runs even though the endpoint hosts non-admin
16
- * methods alongside.
13
+ * expressed at the spec level). `role_grant_revoke` adds `roles: ['admin']` —
14
+ * the RPC dispatcher's per-spec post-authorization auth gate
15
+ * (`check_action_auth_post_authorization`) rejects non-admin callers before
16
+ * the handler runs even though the endpoint hosts non-admin methods
17
+ * alongside.
17
18
  *
18
19
  * @module
19
20
  */
20
21
  import { z } from 'zod';
21
22
  import type { RequestResponseActionSpec } from '../actions/action_spec.js';
22
- /** Error reason — caller tried to offer themselves a permit. */
23
- export declare const ERROR_OFFER_SELF_TARGET: "offer_self_target";
23
+ /** Error reason — caller tried to offer themselves a role_grant. */
24
+ export declare const ERROR_ROLE_GRANT_OFFER_SELF_TARGET: "role_grant_offer_self_target";
24
25
  /** Error reason — offer is declined, retracted, or superseded. */
25
- export declare const ERROR_OFFER_TERMINAL: "offer_terminal";
26
+ export declare const ERROR_ROLE_GRANT_OFFER_TERMINAL: "role_grant_offer_terminal";
26
27
  /** Error reason — offer's `expires_at` has passed. */
27
- export declare const ERROR_OFFER_EXPIRED: "offer_expired";
28
+ export declare const ERROR_ROLE_GRANT_OFFER_EXPIRED: "role_grant_offer_expired";
28
29
  /** Error reason — offer does not exist or belongs to a different recipient (404-over-403 IDOR mask). */
29
- export declare const ERROR_OFFER_NOT_FOUND: "offer_not_found";
30
- /** Error reason — the offered role is not `web_grantable` (nobody may offer it via this surface). */
31
- export declare const ERROR_OFFER_ROLE_NOT_GRANTABLE: "offer_role_not_grantable";
30
+ export declare const ERROR_ROLE_GRANT_OFFER_NOT_FOUND: "role_grant_offer_not_found";
31
+ /** Error reason — the offered role does not include `'admin'` in its `RoleSpec.grant_paths` (nobody may offer it via this surface). */
32
+ export declare const ERROR_ROLE_GRANT_OFFER_ROLE_NOT_GRANTABLE: "role_grant_offer_role_not_grantable";
32
33
  /** Error reason — caller is not authorized to offer this role (default policy: caller lacks the role; consumer `authorize` callback may add further policy). */
33
- export declare const ERROR_OFFER_NOT_AUTHORIZED: "offer_not_authorized";
34
- /** Input for `permit_offer_create`. */
35
- export declare const PermitOfferCreateInput: z.ZodObject<{
34
+ export declare const ERROR_ROLE_GRANT_OFFER_NOT_AUTHORIZED: "role_grant_offer_not_authorized";
35
+ /** Error reason — actor-targeted offer was accepted by an actor other than `to_actor_id`. */
36
+ export declare const ERROR_ROLE_GRANT_OFFER_ACTOR_MISMATCH: "role_grant_offer_actor_mismatch";
37
+ /** Error reason — `role_grant_offer_create` was called with a `to_actor_id` that does not belong to `to_account_id`. */
38
+ export declare const ERROR_ROLE_GRANT_OFFER_ACTOR_ACCOUNT_MISMATCH: "role_grant_offer_actor_account_mismatch";
39
+ /**
40
+ * Input for `role_grant_offer_create`.
41
+ *
42
+ * `to_actor_id` (optional) narrows the offer to a specific actor on the
43
+ * recipient account. When supplied, `role_grant_offer_accept` will only admit
44
+ * the named actor — wrong-actor accepts reject with
45
+ * `role_grant_offer_actor_mismatch`. The audit envelope's `target_actor_id` is
46
+ * stamped from this column on the create / supersede / expire / retract
47
+ * events. Omit (or pass null) for the account-grain default — any actor
48
+ * on `to_account_id` may accept.
49
+ */
50
+ export declare const RoleGrantOfferCreateInput: z.ZodObject<{
36
51
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
52
+ to_actor_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
37
53
  role: z.ZodString;
54
+ scope_kind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
38
55
  scope_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
39
56
  message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
57
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
40
58
  }, z.core.$strict>;
41
- export type PermitOfferCreateInput = z.infer<typeof PermitOfferCreateInput>;
42
- /** Input for `permit_offer_accept`. */
43
- export declare const PermitOfferAcceptInput: z.ZodObject<{
59
+ export type RoleGrantOfferCreateInput = z.infer<typeof RoleGrantOfferCreateInput>;
60
+ /** Input for `role_grant_offer_accept`. */
61
+ export declare const RoleGrantOfferAcceptInput: z.ZodObject<{
44
62
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
63
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
45
64
  }, z.core.$strict>;
46
- export type PermitOfferAcceptInput = z.infer<typeof PermitOfferAcceptInput>;
47
- /** Input for `permit_offer_decline`. */
48
- export declare const PermitOfferDeclineInput: z.ZodObject<{
65
+ export type RoleGrantOfferAcceptInput = z.infer<typeof RoleGrantOfferAcceptInput>;
66
+ /** Input for `role_grant_offer_decline`. */
67
+ export declare const RoleGrantOfferDeclineInput: z.ZodObject<{
49
68
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
50
69
  reason: z.ZodOptional<z.ZodNullable<z.ZodString>>;
70
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
51
71
  }, z.core.$strict>;
52
- export type PermitOfferDeclineInput = z.infer<typeof PermitOfferDeclineInput>;
53
- /** Input for `permit_offer_retract`. */
54
- export declare const PermitOfferRetractInput: z.ZodObject<{
72
+ export type RoleGrantOfferDeclineInput = z.infer<typeof RoleGrantOfferDeclineInput>;
73
+ /** Input for `role_grant_offer_retract`. */
74
+ export declare const RoleGrantOfferRetractInput: z.ZodObject<{
55
75
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
76
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
56
77
  }, z.core.$strict>;
57
- export type PermitOfferRetractInput = z.infer<typeof PermitOfferRetractInput>;
58
- /** Input for `permit_offer_list`. `account_id` is admin-only (inspect another account's inbox). */
59
- export declare const PermitOfferListInput: z.ZodObject<{
78
+ export type RoleGrantOfferRetractInput = z.infer<typeof RoleGrantOfferRetractInput>;
79
+ /** Input for `role_grant_offer_list`. `account_id` is admin-only (inspect another account's inbox). */
80
+ export declare const RoleGrantOfferListInput: z.ZodObject<{
60
81
  account_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
82
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
61
83
  }, z.core.$strict>;
62
- export type PermitOfferListInput = z.infer<typeof PermitOfferListInput>;
84
+ export type RoleGrantOfferListInput = z.infer<typeof RoleGrantOfferListInput>;
63
85
  /**
64
- * Input for `permit_revoke`. Admin-only mutation that revokes an active
65
- * permit on a target actor. `actor_id` is the natural key — permits are
86
+ * Input for `role_grant_revoke`. Admin-only mutation that revokes an active
87
+ * role_grant on a target actor. `actor_id` is the natural key — role_grants are
66
88
  * actor-scoped, and the admin UI reads `row.actor.id` straight from the
67
89
  * listing. Deriving `actor_id` from `account_id` would collapse under
68
90
  * multi-actor accounts.
69
91
  */
70
- export declare const PermitRevokeInput: z.ZodObject<{
92
+ export declare const RoleGrantRevokeInput: z.ZodObject<{
71
93
  actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
72
- permit_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
94
+ role_grant_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
73
95
  reason: z.ZodOptional<z.ZodNullable<z.ZodString>>;
96
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
74
97
  }, z.core.$strict>;
75
- export type PermitRevokeInput = z.infer<typeof PermitRevokeInput>;
98
+ export type RoleGrantRevokeInput = z.infer<typeof RoleGrantRevokeInput>;
76
99
  /**
77
- * Input for `permit_offer_history`. Returns every offer involving the account
100
+ * Input for `role_grant_offer_history`. Returns every offer involving the account
78
101
  * in either direction (recipient or grantor), including terminal rows, newest
79
102
  * first. `account_id` is admin-only.
80
103
  */
81
- export declare const PermitOfferHistoryInput: z.ZodObject<{
104
+ export declare const RoleGrantOfferHistoryInput: z.ZodObject<{
82
105
  account_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
83
106
  limit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
84
107
  offset: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
108
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
85
109
  }, z.core.$strict>;
86
- export type PermitOfferHistoryInput = z.infer<typeof PermitOfferHistoryInput>;
87
- /** Output for `permit_offer_create`. */
88
- export declare const PermitOfferCreateOutput: z.ZodObject<{
110
+ export type RoleGrantOfferHistoryInput = z.infer<typeof RoleGrantOfferHistoryInput>;
111
+ /** Output for `role_grant_offer_create`. */
112
+ export declare const RoleGrantOfferCreateOutput: z.ZodObject<{
89
113
  offer: z.ZodObject<{
90
114
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
91
115
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
92
116
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
117
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
93
118
  role: z.ZodString;
119
+ scope_kind: z.ZodNullable<z.ZodString>;
94
120
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
95
121
  message: z.ZodNullable<z.ZodString>;
96
122
  created_at: z.ZodString;
@@ -100,18 +126,20 @@ export declare const PermitOfferCreateOutput: z.ZodObject<{
100
126
  decline_reason: z.ZodNullable<z.ZodString>;
101
127
  retracted_at: z.ZodNullable<z.ZodString>;
102
128
  superseded_at: z.ZodNullable<z.ZodString>;
103
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
129
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
104
130
  }, z.core.$strict>;
105
131
  }, z.core.$strict>;
106
- export type PermitOfferCreateOutput = z.infer<typeof PermitOfferCreateOutput>;
107
- /** Output for `permit_offer_accept`. */
108
- export declare const PermitOfferAcceptOutput: z.ZodObject<{
109
- permit_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
132
+ export type RoleGrantOfferCreateOutput = z.infer<typeof RoleGrantOfferCreateOutput>;
133
+ /** Output for `role_grant_offer_accept`. */
134
+ export declare const RoleGrantOfferAcceptOutput: z.ZodObject<{
135
+ role_grant_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
110
136
  offer: z.ZodObject<{
111
137
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
112
138
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
113
139
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
140
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
114
141
  role: z.ZodString;
142
+ scope_kind: z.ZodNullable<z.ZodString>;
115
143
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
116
144
  message: z.ZodNullable<z.ZodString>;
117
145
  created_at: z.ZodString;
@@ -121,23 +149,25 @@ export declare const PermitOfferAcceptOutput: z.ZodObject<{
121
149
  decline_reason: z.ZodNullable<z.ZodString>;
122
150
  retracted_at: z.ZodNullable<z.ZodString>;
123
151
  superseded_at: z.ZodNullable<z.ZodString>;
124
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
152
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
125
153
  }, z.core.$strict>;
126
154
  superseded_offer_ids: z.ZodArray<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
127
155
  }, z.core.$strict>;
128
- export type PermitOfferAcceptOutput = z.infer<typeof PermitOfferAcceptOutput>;
129
- /** Output for `permit_offer_decline` / `permit_offer_retract`. */
130
- export declare const PermitOfferOkOutput: z.ZodObject<{
156
+ export type RoleGrantOfferAcceptOutput = z.infer<typeof RoleGrantOfferAcceptOutput>;
157
+ /** Output for `role_grant_offer_decline` / `role_grant_offer_retract`. */
158
+ export declare const RoleGrantOfferOkOutput: z.ZodObject<{
131
159
  ok: z.ZodLiteral<true>;
132
160
  }, z.core.$strict>;
133
- export type PermitOfferOkOutput = z.infer<typeof PermitOfferOkOutput>;
134
- /** Output for `permit_offer_list`. */
135
- export declare const PermitOfferListOutput: z.ZodObject<{
161
+ export type RoleGrantOfferOkOutput = z.infer<typeof RoleGrantOfferOkOutput>;
162
+ /** Output for `role_grant_offer_list`. */
163
+ export declare const RoleGrantOfferListOutput: z.ZodObject<{
136
164
  offers: z.ZodArray<z.ZodObject<{
137
165
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
138
166
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
139
167
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
168
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
140
169
  role: z.ZodString;
170
+ scope_kind: z.ZodNullable<z.ZodString>;
141
171
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
142
172
  message: z.ZodNullable<z.ZodString>;
143
173
  created_at: z.ZodString;
@@ -147,17 +177,19 @@ export declare const PermitOfferListOutput: z.ZodObject<{
147
177
  decline_reason: z.ZodNullable<z.ZodString>;
148
178
  retracted_at: z.ZodNullable<z.ZodString>;
149
179
  superseded_at: z.ZodNullable<z.ZodString>;
150
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
180
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
151
181
  }, z.core.$strict>>;
152
182
  }, z.core.$strict>;
153
- export type PermitOfferListOutput = z.infer<typeof PermitOfferListOutput>;
154
- /** Output for `permit_offer_history`. */
155
- export declare const PermitOfferHistoryOutput: z.ZodObject<{
183
+ export type RoleGrantOfferListOutput = z.infer<typeof RoleGrantOfferListOutput>;
184
+ /** Output for `role_grant_offer_history`. */
185
+ export declare const RoleGrantOfferHistoryOutput: z.ZodObject<{
156
186
  offers: z.ZodArray<z.ZodObject<{
157
187
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
158
188
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
159
189
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
190
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
160
191
  role: z.ZodString;
192
+ scope_kind: z.ZodNullable<z.ZodString>;
161
193
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
162
194
  message: z.ZodNullable<z.ZodString>;
163
195
  created_at: z.ZodString;
@@ -167,34 +199,42 @@ export declare const PermitOfferHistoryOutput: z.ZodObject<{
167
199
  decline_reason: z.ZodNullable<z.ZodString>;
168
200
  retracted_at: z.ZodNullable<z.ZodString>;
169
201
  superseded_at: z.ZodNullable<z.ZodString>;
170
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
202
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
171
203
  }, z.core.$strict>>;
172
204
  }, z.core.$strict>;
173
- export type PermitOfferHistoryOutput = z.infer<typeof PermitOfferHistoryOutput>;
174
- /** Output for `permit_revoke`. */
175
- export declare const PermitRevokeOutput: z.ZodObject<{
205
+ export type RoleGrantOfferHistoryOutput = z.infer<typeof RoleGrantOfferHistoryOutput>;
206
+ /** Output for `role_grant_revoke`. */
207
+ export declare const RoleGrantRevokeOutput: z.ZodObject<{
176
208
  ok: z.ZodLiteral<true>;
177
209
  revoked: z.ZodLiteral<true>;
178
210
  }, z.core.$strict>;
179
- export type PermitRevokeOutput = z.infer<typeof PermitRevokeOutput>;
180
- export declare const permit_offer_create_action_spec: {
211
+ export type RoleGrantRevokeOutput = z.infer<typeof RoleGrantRevokeOutput>;
212
+ export declare const role_grant_offer_create_action_spec: {
181
213
  method: string;
182
214
  kind: "request_response";
183
215
  initiator: "frontend";
184
- auth: "authenticated";
216
+ auth: {
217
+ account: "required";
218
+ actor: "required";
219
+ };
185
220
  side_effects: true;
186
221
  input: z.ZodObject<{
187
222
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
223
+ to_actor_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
188
224
  role: z.ZodString;
225
+ scope_kind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
189
226
  scope_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
190
227
  message: z.ZodOptional<z.ZodNullable<z.ZodString>>;
228
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
191
229
  }, z.core.$strict>;
192
230
  output: z.ZodObject<{
193
231
  offer: z.ZodObject<{
194
232
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
195
233
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
196
234
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
235
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
197
236
  role: z.ZodString;
237
+ scope_kind: z.ZodNullable<z.ZodString>;
198
238
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
199
239
  message: z.ZodNullable<z.ZodString>;
200
240
  created_at: z.ZodString;
@@ -204,29 +244,35 @@ export declare const permit_offer_create_action_spec: {
204
244
  decline_reason: z.ZodNullable<z.ZodString>;
205
245
  retracted_at: z.ZodNullable<z.ZodString>;
206
246
  superseded_at: z.ZodNullable<z.ZodString>;
207
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
247
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
208
248
  }, z.core.$strict>;
209
249
  }, z.core.$strict>;
210
250
  async: true;
211
251
  description: string;
212
- error_reasons: ("offer_self_target" | "offer_role_not_grantable" | "offer_not_authorized")[];
252
+ error_reasons: ("role_grant_offer_self_target" | "role_grant_offer_role_not_grantable" | "role_grant_offer_not_authorized" | "role_grant_offer_actor_account_mismatch")[];
213
253
  };
214
- export declare const permit_offer_accept_action_spec: {
254
+ export declare const role_grant_offer_accept_action_spec: {
215
255
  method: string;
216
256
  kind: "request_response";
217
257
  initiator: "frontend";
218
- auth: "authenticated";
258
+ auth: {
259
+ account: "required";
260
+ actor: "required";
261
+ };
219
262
  side_effects: true;
220
263
  input: z.ZodObject<{
221
264
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
265
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
222
266
  }, z.core.$strict>;
223
267
  output: z.ZodObject<{
224
- permit_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
268
+ role_grant_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
225
269
  offer: z.ZodObject<{
226
270
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
227
271
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
228
272
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
273
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
229
274
  role: z.ZodString;
275
+ scope_kind: z.ZodNullable<z.ZodString>;
230
276
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
231
277
  message: z.ZodNullable<z.ZodString>;
232
278
  created_at: z.ZodString;
@@ -236,62 +282,76 @@ export declare const permit_offer_accept_action_spec: {
236
282
  decline_reason: z.ZodNullable<z.ZodString>;
237
283
  retracted_at: z.ZodNullable<z.ZodString>;
238
284
  superseded_at: z.ZodNullable<z.ZodString>;
239
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
285
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
240
286
  }, z.core.$strict>;
241
287
  superseded_offer_ids: z.ZodArray<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
242
288
  }, z.core.$strict>;
243
289
  async: true;
244
290
  description: string;
245
- error_reasons: ("offer_terminal" | "offer_expired" | "offer_not_found")[];
291
+ error_reasons: ("role_grant_offer_terminal" | "role_grant_offer_expired" | "role_grant_offer_not_found" | "role_grant_offer_actor_mismatch")[];
246
292
  };
247
- export declare const permit_offer_decline_action_spec: {
293
+ export declare const role_grant_offer_decline_action_spec: {
248
294
  method: string;
249
295
  kind: "request_response";
250
296
  initiator: "frontend";
251
- auth: "authenticated";
297
+ auth: {
298
+ account: "required";
299
+ actor: "required";
300
+ };
252
301
  side_effects: true;
253
302
  input: z.ZodObject<{
254
303
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
255
304
  reason: z.ZodOptional<z.ZodNullable<z.ZodString>>;
305
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
256
306
  }, z.core.$strict>;
257
307
  output: z.ZodObject<{
258
308
  ok: z.ZodLiteral<true>;
259
309
  }, z.core.$strict>;
260
310
  async: true;
261
311
  description: string;
262
- error_reasons: ("offer_terminal" | "offer_not_found")[];
312
+ error_reasons: ("role_grant_offer_terminal" | "role_grant_offer_not_found")[];
263
313
  };
264
- export declare const permit_offer_retract_action_spec: {
314
+ export declare const role_grant_offer_retract_action_spec: {
265
315
  method: string;
266
316
  kind: "request_response";
267
317
  initiator: "frontend";
268
- auth: "authenticated";
318
+ auth: {
319
+ account: "required";
320
+ actor: "required";
321
+ };
269
322
  side_effects: true;
270
323
  input: z.ZodObject<{
271
324
  offer_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
325
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
272
326
  }, z.core.$strict>;
273
327
  output: z.ZodObject<{
274
328
  ok: z.ZodLiteral<true>;
275
329
  }, z.core.$strict>;
276
330
  async: true;
277
331
  description: string;
278
- error_reasons: ("offer_terminal" | "offer_not_found")[];
332
+ error_reasons: ("role_grant_offer_terminal" | "role_grant_offer_not_found")[];
279
333
  };
280
- export declare const permit_offer_list_action_spec: {
334
+ export declare const role_grant_offer_list_action_spec: {
281
335
  method: string;
282
336
  kind: "request_response";
283
337
  initiator: "frontend";
284
- auth: "authenticated";
338
+ auth: {
339
+ account: "required";
340
+ actor: "required";
341
+ };
285
342
  side_effects: false;
286
343
  input: z.ZodObject<{
287
344
  account_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
345
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
288
346
  }, z.core.$strict>;
289
347
  output: z.ZodObject<{
290
348
  offers: z.ZodArray<z.ZodObject<{
291
349
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
292
350
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
293
351
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
352
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
294
353
  role: z.ZodString;
354
+ scope_kind: z.ZodNullable<z.ZodString>;
295
355
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
296
356
  message: z.ZodNullable<z.ZodString>;
297
357
  created_at: z.ZodString;
@@ -301,29 +361,35 @@ export declare const permit_offer_list_action_spec: {
301
361
  decline_reason: z.ZodNullable<z.ZodString>;
302
362
  retracted_at: z.ZodNullable<z.ZodString>;
303
363
  superseded_at: z.ZodNullable<z.ZodString>;
304
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
364
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
305
365
  }, z.core.$strict>>;
306
366
  }, z.core.$strict>;
307
367
  async: true;
308
368
  description: string;
309
369
  };
310
- export declare const permit_offer_history_action_spec: {
370
+ export declare const role_grant_offer_history_action_spec: {
311
371
  method: string;
312
372
  kind: "request_response";
313
373
  initiator: "frontend";
314
- auth: "authenticated";
374
+ auth: {
375
+ account: "required";
376
+ actor: "required";
377
+ };
315
378
  side_effects: false;
316
379
  input: z.ZodObject<{
317
380
  account_id: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>>;
318
381
  limit: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
319
382
  offset: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
383
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
320
384
  }, z.core.$strict>;
321
385
  output: z.ZodObject<{
322
386
  offers: z.ZodArray<z.ZodObject<{
323
387
  id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
324
388
  from_actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
325
389
  to_account_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
390
+ to_actor_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
326
391
  role: z.ZodString;
392
+ scope_kind: z.ZodNullable<z.ZodString>;
327
393
  scope_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
328
394
  message: z.ZodNullable<z.ZodString>;
329
395
  created_at: z.ZodString;
@@ -333,24 +399,27 @@ export declare const permit_offer_history_action_spec: {
333
399
  decline_reason: z.ZodNullable<z.ZodString>;
334
400
  retracted_at: z.ZodNullable<z.ZodString>;
335
401
  superseded_at: z.ZodNullable<z.ZodString>;
336
- resulting_permit_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
402
+ resulting_role_grant_id: z.ZodNullable<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
337
403
  }, z.core.$strict>>;
338
404
  }, z.core.$strict>;
339
405
  async: true;
340
406
  description: string;
341
407
  };
342
- export declare const permit_revoke_action_spec: {
408
+ export declare const role_grant_revoke_action_spec: {
343
409
  method: string;
344
410
  kind: "request_response";
345
411
  initiator: "frontend";
346
412
  auth: {
347
- role: string;
413
+ account: "required";
414
+ actor: "required";
415
+ roles: string[];
348
416
  };
349
417
  side_effects: true;
350
418
  input: z.ZodObject<{
351
419
  actor_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
352
- permit_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
420
+ role_grant_id: z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">;
353
421
  reason: z.ZodOptional<z.ZodNullable<z.ZodString>>;
422
+ acting: z.ZodOptional<z.core.$ZodBranded<z.ZodUUID, "Uuid", "out">>;
354
423
  }, z.core.$strict>;
355
424
  output: z.ZodObject<{
356
425
  ok: z.ZodLiteral<true>;
@@ -358,13 +427,13 @@ export declare const permit_revoke_action_spec: {
358
427
  }, z.core.$strict>;
359
428
  async: true;
360
429
  description: string;
361
- error_reasons: ("account_not_found" | "role_not_web_grantable" | "permit_not_found")[];
430
+ error_reasons: ("role_not_web_grantable" | "role_grant_not_found")[];
362
431
  rate_limit: "account";
363
432
  };
364
433
  /**
365
- * All permit-offer action specs — a codegen-ready registry. Consumers spread
434
+ * All role-grant-offer action specs — a codegen-ready registry. Consumers spread
366
435
  * this into their own action-spec array to include offer lifecycle + revoke
367
436
  * methods in a typed client surface.
368
437
  */
369
- export declare const all_permit_offer_action_specs: Array<RequestResponseActionSpec>;
370
- //# sourceMappingURL=permit_offer_action_specs.d.ts.map
438
+ export declare const all_role_grant_offer_action_specs: Array<RequestResponseActionSpec>;
439
+ //# sourceMappingURL=role_grant_offer_action_specs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role_grant_offer_action_specs.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/auth/role_grant_offer_action_specs.ts"],"names":[],"mappings":"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"}