@fuzdev/fuz_app 0.52.0 → 0.53.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 (247) hide show
  1. package/dist/actions/CLAUDE.md +29 -9
  2. package/dist/actions/action_codegen.d.ts +10 -35
  3. package/dist/actions/action_codegen.d.ts.map +1 -1
  4. package/dist/actions/action_codegen.js +13 -42
  5. package/dist/actions/action_peer.d.ts.map +1 -1
  6. package/dist/actions/action_peer.js +0 -9
  7. package/dist/actions/action_registry.d.ts +0 -4
  8. package/dist/actions/action_registry.d.ts.map +1 -1
  9. package/dist/actions/action_registry.js +4 -10
  10. package/dist/actions/action_rpc.d.ts +16 -0
  11. package/dist/actions/action_rpc.d.ts.map +1 -1
  12. package/dist/actions/action_rpc.js +41 -20
  13. package/dist/actions/action_spec.d.ts +54 -5
  14. package/dist/actions/action_spec.d.ts.map +1 -1
  15. package/dist/actions/action_spec.js +21 -5
  16. package/dist/actions/frontend_rpc_client.d.ts +1 -9
  17. package/dist/actions/frontend_rpc_client.d.ts.map +1 -1
  18. package/dist/actions/frontend_rpc_client.js +1 -9
  19. package/dist/actions/register_action_ws.d.ts +16 -0
  20. package/dist/actions/register_action_ws.d.ts.map +1 -1
  21. package/dist/actions/register_action_ws.js +41 -1
  22. package/dist/actions/request_tracker.svelte.d.ts +10 -15
  23. package/dist/actions/request_tracker.svelte.d.ts.map +1 -1
  24. package/dist/actions/request_tracker.svelte.js +10 -15
  25. package/dist/actions/rpc_client.d.ts +0 -1
  26. package/dist/actions/rpc_client.d.ts.map +1 -1
  27. package/dist/actions/rpc_client.js +3 -17
  28. package/dist/actions/socket.svelte.d.ts +0 -1
  29. package/dist/actions/socket.svelte.d.ts.map +1 -1
  30. package/dist/actions/socket.svelte.js +0 -1
  31. package/dist/actions/transports.d.ts +4 -3
  32. package/dist/actions/transports.d.ts.map +1 -1
  33. package/dist/actions/transports.js +4 -13
  34. package/dist/actions/transports_ws_auth_guard.d.ts +0 -2
  35. package/dist/actions/transports_ws_auth_guard.d.ts.map +1 -1
  36. package/dist/actions/transports_ws_auth_guard.js +0 -2
  37. package/dist/actions/transports_ws_backend.d.ts.map +1 -1
  38. package/dist/actions/transports_ws_backend.js +0 -9
  39. package/dist/auth/CLAUDE.md +24 -14
  40. package/dist/auth/account_queries.d.ts +0 -3
  41. package/dist/auth/account_queries.d.ts.map +1 -1
  42. package/dist/auth/account_queries.js +0 -3
  43. package/dist/auth/admin_action_specs.d.ts +5 -0
  44. package/dist/auth/admin_action_specs.d.ts.map +1 -1
  45. package/dist/auth/admin_action_specs.js +5 -0
  46. package/dist/auth/api_token_queries.d.ts +0 -1
  47. package/dist/auth/api_token_queries.d.ts.map +1 -1
  48. package/dist/auth/api_token_queries.js +0 -1
  49. package/dist/auth/audit_log_queries.d.ts +0 -1
  50. package/dist/auth/audit_log_queries.d.ts.map +1 -1
  51. package/dist/auth/audit_log_queries.js +0 -1
  52. package/dist/auth/audit_log_routes.d.ts +2 -2
  53. package/dist/auth/audit_log_routes.js +2 -2
  54. package/dist/auth/invite_queries.d.ts +0 -1
  55. package/dist/auth/invite_queries.d.ts.map +1 -1
  56. package/dist/auth/invite_queries.js +0 -1
  57. package/dist/auth/permit_offer_action_specs.d.ts +1 -0
  58. package/dist/auth/permit_offer_action_specs.d.ts.map +1 -1
  59. package/dist/auth/permit_offer_action_specs.js +1 -0
  60. package/dist/auth/permit_offer_queries.d.ts +0 -1
  61. package/dist/auth/permit_offer_queries.d.ts.map +1 -1
  62. package/dist/auth/permit_offer_queries.js +0 -1
  63. package/dist/auth/permit_queries.d.ts +0 -1
  64. package/dist/auth/permit_queries.d.ts.map +1 -1
  65. package/dist/auth/permit_queries.js +0 -1
  66. package/dist/auth/session_lifecycle.d.ts +0 -1
  67. package/dist/auth/session_lifecycle.d.ts.map +1 -1
  68. package/dist/auth/session_lifecycle.js +0 -1
  69. package/dist/auth/session_middleware.d.ts +0 -4
  70. package/dist/auth/session_middleware.d.ts.map +1 -1
  71. package/dist/auth/session_middleware.js +0 -4
  72. package/dist/cli/config.d.ts +0 -3
  73. package/dist/cli/config.d.ts.map +1 -1
  74. package/dist/cli/config.js +0 -3
  75. package/dist/cli/daemon.d.ts +1 -1
  76. package/dist/cli/daemon.js +1 -1
  77. package/dist/db/create_db.d.ts +0 -1
  78. package/dist/db/create_db.d.ts.map +1 -1
  79. package/dist/db/create_db.js +0 -1
  80. package/dist/db/db.d.ts +0 -4
  81. package/dist/db/db.d.ts.map +1 -1
  82. package/dist/db/db.js +0 -4
  83. package/dist/db/db_pg.d.ts +2 -2
  84. package/dist/db/db_pg.js +2 -2
  85. package/dist/db/db_pglite.d.ts +1 -2
  86. package/dist/db/db_pglite.d.ts.map +1 -1
  87. package/dist/db/db_pglite.js +1 -2
  88. package/dist/db/migrate.d.ts +0 -1
  89. package/dist/db/migrate.d.ts.map +1 -1
  90. package/dist/db/migrate.js +0 -1
  91. package/dist/dev/setup.d.ts +0 -3
  92. package/dist/dev/setup.d.ts.map +1 -1
  93. package/dist/dev/setup.js +0 -3
  94. package/dist/env/load.d.ts +0 -2
  95. package/dist/env/load.d.ts.map +1 -1
  96. package/dist/env/load.js +0 -2
  97. package/dist/hono_context.d.ts +2 -5
  98. package/dist/hono_context.d.ts.map +1 -1
  99. package/dist/hono_context.js +2 -5
  100. package/dist/http/common_routes.d.ts +0 -8
  101. package/dist/http/common_routes.d.ts.map +1 -1
  102. package/dist/http/common_routes.js +0 -8
  103. package/dist/http/db_routes.d.ts +0 -3
  104. package/dist/http/db_routes.d.ts.map +1 -1
  105. package/dist/http/db_routes.js +0 -3
  106. package/dist/http/error_schemas.d.ts +12 -11
  107. package/dist/http/error_schemas.d.ts.map +1 -1
  108. package/dist/http/error_schemas.js +11 -7
  109. package/dist/http/jsonrpc_errors.d.ts +0 -6
  110. package/dist/http/jsonrpc_errors.d.ts.map +1 -1
  111. package/dist/http/jsonrpc_errors.js +0 -6
  112. package/dist/http/origin.d.ts +6 -13
  113. package/dist/http/origin.d.ts.map +1 -1
  114. package/dist/http/origin.js +7 -14
  115. package/dist/http/proxy.d.ts +1 -7
  116. package/dist/http/proxy.d.ts.map +1 -1
  117. package/dist/http/proxy.js +1 -7
  118. package/dist/http/route_spec.d.ts +13 -35
  119. package/dist/http/route_spec.d.ts.map +1 -1
  120. package/dist/http/route_spec.js +10 -22
  121. package/dist/http/schema_helpers.d.ts +0 -4
  122. package/dist/http/schema_helpers.d.ts.map +1 -1
  123. package/dist/http/schema_helpers.js +0 -4
  124. package/dist/http/surface.d.ts +2 -12
  125. package/dist/http/surface.d.ts.map +1 -1
  126. package/dist/http/surface.js +1 -12
  127. package/dist/rate_limiter.d.ts +16 -0
  128. package/dist/rate_limiter.d.ts.map +1 -1
  129. package/dist/rate_limiter.js +26 -0
  130. package/dist/realtime/sse.d.ts +0 -1
  131. package/dist/realtime/sse.d.ts.map +1 -1
  132. package/dist/realtime/sse.js +0 -1
  133. package/dist/realtime/subscriber_registry.d.ts +0 -3
  134. package/dist/realtime/subscriber_registry.d.ts.map +1 -1
  135. package/dist/realtime/subscriber_registry.js +0 -3
  136. package/dist/runtime/fs.d.ts +1 -4
  137. package/dist/runtime/fs.d.ts.map +1 -1
  138. package/dist/runtime/fs.js +1 -4
  139. package/dist/runtime/mock.d.ts +0 -3
  140. package/dist/runtime/mock.d.ts.map +1 -1
  141. package/dist/runtime/mock.js +0 -3
  142. package/dist/server/app_server.d.ts +27 -5
  143. package/dist/server/app_server.d.ts.map +1 -1
  144. package/dist/server/app_server.js +19 -7
  145. package/dist/server/startup.d.ts +0 -2
  146. package/dist/server/startup.d.ts.map +1 -1
  147. package/dist/server/startup.js +0 -2
  148. package/dist/server/static.d.ts +0 -1
  149. package/dist/server/static.d.ts.map +1 -1
  150. package/dist/server/static.js +0 -1
  151. package/dist/server/validate_nginx.d.ts +0 -3
  152. package/dist/server/validate_nginx.d.ts.map +1 -1
  153. package/dist/server/validate_nginx.js +0 -3
  154. package/dist/testing/CLAUDE.md +1 -1
  155. package/dist/testing/admin_integration.d.ts +0 -1
  156. package/dist/testing/admin_integration.d.ts.map +1 -1
  157. package/dist/testing/admin_integration.js +3 -6
  158. package/dist/testing/adversarial_404.d.ts +0 -2
  159. package/dist/testing/adversarial_404.d.ts.map +1 -1
  160. package/dist/testing/adversarial_404.js +0 -2
  161. package/dist/testing/adversarial_headers.d.ts +0 -1
  162. package/dist/testing/adversarial_headers.d.ts.map +1 -1
  163. package/dist/testing/adversarial_headers.js +0 -1
  164. package/dist/testing/adversarial_input.d.ts +0 -2
  165. package/dist/testing/adversarial_input.d.ts.map +1 -1
  166. package/dist/testing/adversarial_input.js +0 -2
  167. package/dist/testing/app_server.d.ts +22 -0
  168. package/dist/testing/app_server.d.ts.map +1 -1
  169. package/dist/testing/app_server.js +2 -4
  170. package/dist/testing/assertions.d.ts +0 -4
  171. package/dist/testing/assertions.d.ts.map +1 -1
  172. package/dist/testing/assertions.js +0 -4
  173. package/dist/testing/attack_surface.d.ts +0 -4
  174. package/dist/testing/attack_surface.d.ts.map +1 -1
  175. package/dist/testing/attack_surface.js +0 -4
  176. package/dist/testing/audit_completeness.d.ts +0 -1
  177. package/dist/testing/audit_completeness.d.ts.map +1 -1
  178. package/dist/testing/audit_completeness.js +0 -1
  179. package/dist/testing/auth_apps.d.ts +2 -10
  180. package/dist/testing/auth_apps.d.ts.map +1 -1
  181. package/dist/testing/auth_apps.js +2 -10
  182. package/dist/testing/data_exposure.d.ts +0 -11
  183. package/dist/testing/data_exposure.d.ts.map +1 -1
  184. package/dist/testing/data_exposure.js +0 -11
  185. package/dist/testing/db.d.ts +0 -6
  186. package/dist/testing/db.d.ts.map +1 -1
  187. package/dist/testing/db.js +0 -6
  188. package/dist/testing/error_coverage.d.ts +0 -14
  189. package/dist/testing/error_coverage.d.ts.map +1 -1
  190. package/dist/testing/error_coverage.js +0 -14
  191. package/dist/testing/integration.d.ts +0 -1
  192. package/dist/testing/integration.d.ts.map +1 -1
  193. package/dist/testing/integration.js +0 -1
  194. package/dist/testing/integration_helpers.d.ts +1 -36
  195. package/dist/testing/integration_helpers.d.ts.map +1 -1
  196. package/dist/testing/integration_helpers.js +1 -43
  197. package/dist/testing/middleware.d.ts +0 -10
  198. package/dist/testing/middleware.d.ts.map +1 -1
  199. package/dist/testing/middleware.js +0 -10
  200. package/dist/testing/mock_fs.d.ts +0 -2
  201. package/dist/testing/mock_fs.d.ts.map +1 -1
  202. package/dist/testing/mock_fs.js +0 -2
  203. package/dist/testing/rate_limiting.d.ts +0 -1
  204. package/dist/testing/rate_limiting.d.ts.map +1 -1
  205. package/dist/testing/rate_limiting.js +0 -1
  206. package/dist/testing/round_trip.d.ts +0 -2
  207. package/dist/testing/round_trip.d.ts.map +1 -1
  208. package/dist/testing/round_trip.js +0 -2
  209. package/dist/testing/rpc_attack_surface.d.ts +0 -2
  210. package/dist/testing/rpc_attack_surface.d.ts.map +1 -1
  211. package/dist/testing/rpc_attack_surface.js +0 -2
  212. package/dist/testing/rpc_helpers.d.ts +0 -6
  213. package/dist/testing/rpc_helpers.d.ts.map +1 -1
  214. package/dist/testing/rpc_helpers.js +0 -6
  215. package/dist/testing/rpc_round_trip.d.ts +0 -2
  216. package/dist/testing/rpc_round_trip.d.ts.map +1 -1
  217. package/dist/testing/rpc_round_trip.js +0 -2
  218. package/dist/testing/schema_generators.d.ts +0 -3
  219. package/dist/testing/schema_generators.d.ts.map +1 -1
  220. package/dist/testing/schema_generators.js +17 -3
  221. package/dist/testing/sse_round_trip.d.ts +0 -1
  222. package/dist/testing/sse_round_trip.d.ts.map +1 -1
  223. package/dist/testing/sse_round_trip.js +0 -1
  224. package/dist/testing/standard.d.ts +0 -2
  225. package/dist/testing/standard.d.ts.map +1 -1
  226. package/dist/testing/standard.js +0 -2
  227. package/dist/testing/stubs.d.ts +3 -5
  228. package/dist/testing/stubs.d.ts.map +1 -1
  229. package/dist/testing/stubs.js +5 -5
  230. package/dist/testing/surface_invariants.d.ts +0 -3
  231. package/dist/testing/surface_invariants.d.ts.map +1 -1
  232. package/dist/testing/surface_invariants.js +0 -3
  233. package/dist/ui/CLAUDE.md +1 -1
  234. package/dist/ui/audit_log_state.svelte.js +1 -1
  235. package/dist/ui/position_helpers.d.ts +0 -3
  236. package/dist/ui/position_helpers.d.ts.map +1 -1
  237. package/dist/ui/position_helpers.js +0 -3
  238. package/dist/ui/sidebar_state.svelte.d.ts +1 -2
  239. package/dist/ui/sidebar_state.svelte.d.ts.map +1 -1
  240. package/dist/ui/sidebar_state.svelte.js +1 -2
  241. package/dist/ui/ui_fetch.d.ts +1 -7
  242. package/dist/ui/ui_fetch.d.ts.map +1 -1
  243. package/dist/ui/ui_fetch.js +1 -7
  244. package/dist/ui/ui_format.d.ts +2 -14
  245. package/dist/ui/ui_format.d.ts.map +1 -1
  246. package/dist/ui/ui_format.js +2 -14
  247. package/package.json +2 -2
@@ -16,8 +16,6 @@ export interface AdversarialTestOptions {
16
16
  * - wrong role → 403 — every role route, tested with all non-matching roles
17
17
  * - authenticated without role → 403 — every role route, no-role context
18
18
  * - correct auth passes guard — every protected route, assert not 401/403
19
- *
20
- * @param options - the test configuration
21
19
  */
22
20
  export declare const describe_adversarial_auth: (options: AdversarialTestOptions) => void;
23
21
  /**
@@ -83,8 +81,6 @@ export interface StandardAttackSurfaceOptions {
83
81
  *
84
82
  * Consumer test files call this with project-specific options, then add
85
83
  * any project-specific assertions in additional `describe` blocks.
86
- *
87
- * @param options - the test configuration
88
84
  */
89
85
  export declare const describe_standard_attack_surface_tests: (options: StandardAttackSurfaceOptions) => void;
90
86
  //# sourceMappingURL=attack_surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attack_surface.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/attack_surface.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAoB7B,OAAO,EAON,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,MAAM,yBAAyB,CAAC;AAoBjC,OAAO,EAA4B,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAsClF,oFAAoF;AACpF,MAAM,WAAW,sBAAsB;IACtC,+EAA+E;IAC/E,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,yDAAyD;IACzD,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,yBAAyB,GAAI,SAAS,sBAAsB,KAAG,IAkH3E,CAAC;AAIF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uCAAuC,GACnD,UAAU,2BAA2B,GAAG,IAAI,GAAG,SAAS,KACtD,2BAA2B,GAAG,IAWhC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,WAAW,4BAA4B;IAC5C,+EAA+E;IAC/E,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,sBAAsB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC,gHAAgH;IAChH,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,yDAAyD;IACzD,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C;;;;;;;;;;;OAWG;IACH,sBAAsB,CAAC,EAAE,2BAA2B,GAAG,IAAI,CAAC;CAC5D;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,sCAAsC,GAClD,SAAS,4BAA4B,KACnC,IAuEF,CAAC"}
1
+ {"version":3,"file":"attack_surface.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/attack_surface.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAoB7B,OAAO,EAON,KAAK,4BAA4B,EACjC,KAAK,2BAA2B,EAChC,MAAM,yBAAyB,CAAC;AAoBjC,OAAO,EAA4B,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAsClF,oFAAoF;AACpF,MAAM,WAAW,sBAAsB;IACtC,+EAA+E;IAC/E,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,yDAAyD;IACzD,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,yBAAyB,GAAI,SAAS,sBAAsB,KAAG,IAkH3E,CAAC;AAIF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uCAAuC,GACnD,UAAU,2BAA2B,GAAG,IAAI,GAAG,SAAS,KACtD,2BAA2B,GAAG,IAWhC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,WAAW,4BAA4B;IAC5C,+EAA+E;IAC/E,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,yDAAyD;IACzD,aAAa,EAAE,MAAM,CAAC;IACtB,iFAAiF;IACjF,sBAAsB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC,gHAAgH;IAChH,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,yDAAyD;IACzD,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACrB,qEAAqE;IACrE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,eAAe,CAAC,EAAE,4BAA4B,CAAC;IAC/C;;;;;;;;;;;OAWG;IACH,sBAAsB,CAAC,EAAE,2BAA2B,GAAG,IAAI,CAAC;CAC5D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sCAAsC,GAClD,SAAS,4BAA4B,KACnC,IAuEF,CAAC"}
@@ -53,8 +53,6 @@ const build_error_schema_lookup = (route_specs, middleware_specs) => {
53
53
  * - wrong role → 403 — every role route, tested with all non-matching roles
54
54
  * - authenticated without role → 403 — every role route, no-role context
55
55
  * - correct auth passes guard — every protected route, assert not 401/403
56
- *
57
- * @param options - the test configuration
58
56
  */
59
57
  export const describe_adversarial_auth = (options) => {
60
58
  const { build, roles } = options;
@@ -203,8 +201,6 @@ export const resolve_standard_error_schema_tightness = (consumer) => {
203
201
  *
204
202
  * Consumer test files call this with project-specific options, then add
205
203
  * any project-specific assertions in additional `describe` blocks.
206
- *
207
- * @param options - the test configuration
208
204
  */
209
205
  export const describe_standard_attack_surface_tests = (options) => {
210
206
  const { build, snapshot_path, expected_public_routes, expected_api_middleware, roles, api_path_prefix = '/api/', security_policy, } = options;
@@ -38,7 +38,6 @@ export interface AuditCompletenessTestOptions {
38
38
  * event type. Exercises routes via HTTP requests against a real PGlite
39
39
  * database, then queries the `audit_log` table to verify events.
40
40
  *
41
- * @param options - session config, route factory, and optional overrides
42
41
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
43
42
  * mutation-audit tests drive permit flow, session/token revoke-all, and
44
43
  * invite create/delete through their RPC action specs. Hard-fails via
@@ -1 +1 @@
1
- {"version":3,"file":"audit_completeness.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/audit_completeness.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAkB7B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EAGN,KAAK,eAAe,EAEpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIN,KAAK,SAAS,EACd,MAAM,SAAS,CAAC;AAKjB,OAAO,EAIN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAsB1B;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC5C,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE;;;;;;;;;;;OAWG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAChC;AAoDD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iCAAiC,GAAI,SAAS,4BAA4B,KAAG,IAyezF,CAAC"}
1
+ {"version":3,"file":"audit_completeness.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/audit_completeness.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAkB7B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAIrD,OAAO,EAGN,KAAK,eAAe,EAEpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIN,KAAK,SAAS,EACd,MAAM,SAAS,CAAC;AAKjB,OAAO,EAIN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAsB1B;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC5C,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE;;;;;;;;;;;OAWG;IACH,aAAa,EAAE,uBAAuB,CAAC;IACvC,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;CAChC;AAoDD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iCAAiC,GAAI,SAAS,4BAA4B,KAAG,IAyezF,CAAC"}
@@ -63,7 +63,6 @@ const json_session_headers = (test_app, extra) => test_app.create_session_header
63
63
  * event type. Exercises routes via HTTP requests against a real PGlite
64
64
  * database, then queries the `audit_log` table to verify events.
65
65
  *
66
- * @param options - session config, route factory, and optional overrides
67
66
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
68
67
  * mutation-audit tests drive permit flow, session/token revoke-all, and
69
68
  * invite create/delete through their RPC action specs. Hard-fails via
@@ -12,10 +12,7 @@ import { type RouteSpec, type RouteAuth } from '../http/route_spec.js';
12
12
  import { type RequestContext } from '../auth/request_context.js';
13
13
  import { type CredentialType } from '../hono_context.js';
14
14
  /**
15
- * Create a mock request context with optional role permit.
16
- *
17
- * @param role - optional role to grant
18
- * @returns a valid `RequestContext`
15
+ * Create a mock `RequestContext` with optional role permit.
19
16
  */
20
17
  export declare const create_test_request_context: (role?: string) => RequestContext;
21
18
  /**
@@ -23,8 +20,7 @@ export declare const create_test_request_context: (role?: string) => RequestCont
23
20
  *
24
21
  * @param route_specs - the route specs to register
25
22
  * @param auth_ctx - optional request context to inject via middleware
26
- * @param credential_type - optional credential type (default: `'session'` when auth_ctx provided)
27
- * @returns a configured Hono app
23
+ * @param credential_type - optional credential type (default: `'session'` when `auth_ctx` provided)
28
24
  */
29
25
  export declare const create_test_app_from_specs: (route_specs: Array<RouteSpec>, auth_ctx?: RequestContext, credential_type?: CredentialType) => Hono;
30
26
  /** Pre-built Hono apps for each auth level, shared across adversarial test suites. */
@@ -39,15 +35,11 @@ export interface AuthTestApps {
39
35
  *
40
36
  * @param route_specs - the route specs to register
41
37
  * @param roles - all roles in the app
42
- * @returns apps keyed by auth level
43
38
  */
44
39
  export declare const create_auth_test_apps: (route_specs: Array<RouteSpec>, roles: Array<string>) => AuthTestApps;
45
40
  /**
46
41
  * Select the Hono test app with correct auth for a route.
47
42
  *
48
- * @param apps - the pre-built auth test apps
49
- * @param auth - the route's auth options
50
- * @returns the correctly-authenticated Hono app
51
43
  * @throws Error if `auth.type === 'role'` and `auth.role` is not present in
52
44
  * `apps.by_role` — surfaces a missing entry in the `roles` array passed to
53
45
  * `create_auth_test_apps`.
@@ -1 +1 @@
1
- {"version":3,"file":"auth_apps.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/auth_apps.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;GAOG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,MAAM,CAAC;AAG1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAExF,OAAO,EAAsB,KAAK,cAAc,EAAC,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAsB,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAI5E;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GAAI,OAAO,MAAM,KAAG,cAI1D,CAAC;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,0BAA0B,GACtC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,WAAW,cAAc,EACzB,kBAAkB,cAAc,KAC9B,IAkBF,CAAC;AAEF,sFAAsF;AACtF,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GACjC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,KAClB,YAeF,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,YAAY,EAAE,MAAM,SAAS,KAAG,IAcrE,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAA4C,CAAC"}
1
+ {"version":3,"file":"auth_apps.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/auth_apps.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;GAOG;AAEH,OAAO,EAAC,IAAI,EAAC,MAAM,MAAM,CAAC;AAG1B,OAAO,EAAoB,KAAK,SAAS,EAAE,KAAK,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAExF,OAAO,EAAsB,KAAK,cAAc,EAAC,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAsB,KAAK,cAAc,EAAC,MAAM,oBAAoB,CAAC;AAI5E;;GAEG;AACH,eAAO,MAAM,2BAA2B,GAAI,OAAO,MAAM,KAAG,cAI1D,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GACtC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,WAAW,cAAc,EACzB,kBAAkB,cAAc,KAC9B,IAkBF,CAAC;AAEF,sFAAsF;AACtF,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,MAAM,EAAE,IAAI,CAAC;IACb,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;CAC3B;AAED;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GACjC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,OAAO,KAAK,CAAC,MAAM,CAAC,KAClB,YAeF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,YAAY,EAAE,MAAM,SAAS,KAAG,IAcrE,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,KAAG,MAA4C,CAAC"}
@@ -16,10 +16,7 @@ import { CREDENTIAL_TYPE_KEY } from '../hono_context.js';
16
16
  import { create_stub_db } from './stubs.js';
17
17
  import { create_test_account, create_test_actor, create_test_permit } from './entities.js';
18
18
  /**
19
- * Create a mock request context with optional role permit.
20
- *
21
- * @param role - optional role to grant
22
- * @returns a valid `RequestContext`
19
+ * Create a mock `RequestContext` with optional role permit.
23
20
  */
24
21
  export const create_test_request_context = (role) => ({
25
22
  account: create_test_account({ id: 'acc_1', username: 'testuser' }),
@@ -31,8 +28,7 @@ export const create_test_request_context = (role) => ({
31
28
  *
32
29
  * @param route_specs - the route specs to register
33
30
  * @param auth_ctx - optional request context to inject via middleware
34
- * @param credential_type - optional credential type (default: `'session'` when auth_ctx provided)
35
- * @returns a configured Hono app
31
+ * @param credential_type - optional credential type (default: `'session'` when `auth_ctx` provided)
36
32
  */
37
33
  export const create_test_app_from_specs = (route_specs, auth_ctx, credential_type) => {
38
34
  const app = new Hono();
@@ -52,7 +48,6 @@ export const create_test_app_from_specs = (route_specs, auth_ctx, credential_typ
52
48
  *
53
49
  * @param route_specs - the route specs to register
54
50
  * @param roles - all roles in the app
55
- * @returns apps keyed by auth level
56
51
  */
57
52
  export const create_auth_test_apps = (route_specs, roles) => {
58
53
  const by_role = new Map();
@@ -69,9 +64,6 @@ export const create_auth_test_apps = (route_specs, roles) => {
69
64
  /**
70
65
  * Select the Hono test app with correct auth for a route.
71
66
  *
72
- * @param apps - the pre-built auth test apps
73
- * @param auth - the route's auth options
74
- * @returns the correctly-authenticated Hono app
75
67
  * @throws Error if `auth.type === 'role'` and `auth.role` is not present in
76
68
  * `apps.by_role` — surfaces a missing entry in the `roles` array passed to
77
69
  * `create_auth_test_apps`.
@@ -9,23 +9,14 @@ import { type DbFactory } from './db.js';
9
9
  *
10
10
  * Walks `properties`, `items`, `allOf`/`anyOf`/`oneOf`, and
11
11
  * `additionalProperties` to find every declared field name at any depth.
12
- *
13
- * @param schema - JSON Schema object
14
- * @returns set of all property names found
15
12
  */
16
13
  export declare const collect_json_schema_property_names: (schema: unknown) => Set<string>;
17
14
  /**
18
15
  * Assert that no output schema in the surface contains sensitive field names.
19
- *
20
- * @param surface - the app surface to check
21
- * @param sensitive_fields - field names to flag
22
16
  */
23
17
  export declare const assert_output_schemas_no_sensitive_fields: (surface: AppSurface, sensitive_fields?: ReadonlyArray<string>) => void;
24
18
  /**
25
19
  * Assert that non-admin route output schemas don't contain admin-only fields.
26
- *
27
- * @param surface - the app surface to check
28
- * @param admin_only_fields - field names that are admin-only
29
20
  */
30
21
  export declare const assert_non_admin_schemas_no_admin_fields: (surface: AppSurface, admin_only_fields?: ReadonlyArray<string>) => void;
31
22
  /** Options for `describe_data_exposure_tests`. */
@@ -55,8 +46,6 @@ export interface DataExposureTestOptions {
55
46
  * 2. Runtime — fire real requests and check response bodies against blocklists
56
47
  * 3. Cross-privilege — admin routes return 403 for non-admin, error responses
57
48
  * contain no sensitive fields
58
- *
59
- * @param options - test configuration
60
49
  */
61
50
  export declare const describe_data_exposure_tests: (options: DataExposureTestOptions) => void;
62
51
  //# sourceMappingURL=data_exposure.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"data_exposure.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/data_exposure.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAgB7B,OAAO,KAAK,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAG9D,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAe9D;;;;;;;;GAQG;AACH,eAAO,MAAM,kCAAkC,GAAI,QAAQ,OAAO,KAAG,GAAG,CAAC,MAAM,CAuB9E,CAAC;AAIF;;;;;GAKG;AACH,eAAO,MAAM,yCAAyC,GACrD,SAAS,UAAU,EACnB,mBAAkB,aAAa,CAAC,MAAM,CAA6B,KACjE,IAWF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wCAAwC,GACpD,SAAS,UAAU,EACnB,oBAAmB,aAAa,CAAC,MAAM,CAA8B,KACnE,IAcF,CAAC;AAIF,kDAAkD;AAClD,MAAM,WAAW,uBAAuB;IACvC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,wCAAwC;IACxC,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,4CAA4C;IAC5C,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,iGAAiG;IACjG,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CACpB,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,iBAAiB,GAAG,oBAAoB,CAAC,CAC5E,CAAC;IACF,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC,kDAAkD;IAClD,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B,GAAI,SAAS,uBAAuB,KAAG,IAmC/E,CAAC"}
1
+ {"version":3,"file":"data_exposure.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/data_exposure.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAgB7B,OAAO,KAAK,EAAC,UAAU,EAAE,cAAc,EAAC,MAAM,oBAAoB,CAAC;AACnE,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AACrD,OAAO,KAAK,EAAC,gBAAgB,EAAE,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAChF,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAG9D,OAAO,EAAwB,KAAK,SAAS,EAAC,MAAM,SAAS,CAAC;AAe9D;;;;;GAKG;AACH,eAAO,MAAM,kCAAkC,GAAI,QAAQ,OAAO,KAAG,GAAG,CAAC,MAAM,CAuB9E,CAAC;AAIF;;GAEG;AACH,eAAO,MAAM,yCAAyC,GACrD,SAAS,UAAU,EACnB,mBAAkB,aAAa,CAAC,MAAM,CAA6B,KACjE,IAWF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wCAAwC,GACpD,SAAS,UAAU,EACnB,oBAAmB,aAAa,CAAC,MAAM,CAA8B,KACnE,IAcF,CAAC;AAIF,kDAAkD;AAClD,MAAM,WAAW,uBAAuB;IACvC,4DAA4D;IAC5D,KAAK,EAAE,MAAM,cAAc,CAAC;IAC5B,wCAAwC;IACxC,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,4CAA4C;IAC5C,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,2FAA2F;IAC3F,gBAAgB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACzC,iGAAiG;IACjG,iBAAiB,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,iDAAiD;IACjD,WAAW,CAAC,EAAE,OAAO,CACpB,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,iBAAiB,GAAG,oBAAoB,CAAC,CAC5E,CAAC;IACF,qEAAqE;IACrE,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC,kDAAkD;IAClD,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,GAAI,SAAS,uBAAuB,KAAG,IAmC/E,CAAC"}
@@ -25,9 +25,6 @@ import { SENSITIVE_FIELD_BLOCKLIST, ADMIN_ONLY_FIELD_BLOCKLIST, assert_no_sensit
25
25
  *
26
26
  * Walks `properties`, `items`, `allOf`/`anyOf`/`oneOf`, and
27
27
  * `additionalProperties` to find every declared field name at any depth.
28
- *
29
- * @param schema - JSON Schema object
30
- * @returns set of all property names found
31
28
  */
32
29
  export const collect_json_schema_property_names = (schema) => {
33
30
  const names = new Set();
@@ -59,9 +56,6 @@ export const collect_json_schema_property_names = (schema) => {
59
56
  // --- Schema-level assertions ---
60
57
  /**
61
58
  * Assert that no output schema in the surface contains sensitive field names.
62
- *
63
- * @param surface - the app surface to check
64
- * @param sensitive_fields - field names to flag
65
59
  */
66
60
  export const assert_output_schemas_no_sensitive_fields = (surface, sensitive_fields = SENSITIVE_FIELD_BLOCKLIST) => {
67
61
  for (const route of surface.routes) {
@@ -75,9 +69,6 @@ export const assert_output_schemas_no_sensitive_fields = (surface, sensitive_fie
75
69
  };
76
70
  /**
77
71
  * Assert that non-admin route output schemas don't contain admin-only fields.
78
- *
79
- * @param surface - the app surface to check
80
- * @param admin_only_fields - field names that are admin-only
81
72
  */
82
73
  export const assert_non_admin_schemas_no_admin_fields = (surface, admin_only_fields = ADMIN_ONLY_FIELD_BLOCKLIST) => {
83
74
  const non_admin = surface.routes.filter((r) => r.auth.type !== 'keeper' && !(r.auth.type === 'role' && r.auth.role === 'admin'));
@@ -98,8 +89,6 @@ export const assert_non_admin_schemas_no_admin_fields = (surface, admin_only_fie
98
89
  * 2. Runtime — fire real requests and check response bodies against blocklists
99
90
  * 3. Cross-privilege — admin routes return 403 for non-admin, error responses
100
91
  * contain no sensitive fields
101
- *
102
- * @param options - test configuration
103
92
  */
104
93
  export const describe_data_exposure_tests = (options) => {
105
94
  const { build, sensitive_fields = SENSITIVE_FIELD_BLOCKLIST, admin_only_fields = ADMIN_ONLY_FIELD_BLOCKLIST, } = options;
@@ -20,7 +20,6 @@ export interface DbFactory {
20
20
  * Removes all tables, sequences, indexes, types, and functions.
21
21
  * The database instance remains usable after reset.
22
22
  *
23
- * @param db - the database to reset
24
23
  * @mutates db - drops the `public` schema and recreates it; all rows in all
25
24
  * tables are gone after this returns.
26
25
  */
@@ -35,7 +34,6 @@ export declare const reset_pglite: (db: Db) => Promise<void>;
35
34
  * cold-start cost again.
36
35
  *
37
36
  * @param init_schema - callback to initialize the database schema
38
- * @returns a factory that creates in-memory pglite databases
39
37
  */
40
38
  export declare const create_pglite_factory: (init_schema: (db: Db) => Promise<void>) => DbFactory;
41
39
  /**
@@ -91,7 +89,6 @@ export declare const AUTH_DROP_TABLES: readonly ["app_settings", "invite", "audi
91
89
  * Safe on fresh databases (`IF EXISTS` on all statements). No-op effect for
92
90
  * PGlite (already fresh), but harmless to call unconditionally.
93
91
  *
94
- * @param db - the database to clean
95
92
  * @mutates db - drops every table in `AUTH_DROP_TABLES` plus `schema_version`.
96
93
  */
97
94
  export declare const drop_auth_schema: (db: Db) => Promise<void>;
@@ -105,15 +102,12 @@ export declare const drop_auth_schema: (db: Db) => Promise<void>;
105
102
  *
106
103
  * @param factories - one or more database factories to run suites against
107
104
  * @param truncate_tables - tables to truncate between tests (children first for FK safety)
108
- * @returns a `describe_db` function for use in test files
109
105
  * @mutates the underlying database between tests — `beforeEach` issues
110
106
  * `TRUNCATE <truncate_tables> CASCADE` against the shared instance.
111
107
  */
112
108
  export declare const create_describe_db: (factories: DbFactory | Array<DbFactory>, truncate_tables: Array<string>) => ((name: string, fn: (get_db: () => Db) => void) => void);
113
109
  /**
114
110
  * Log factory status to console.
115
- *
116
- * @param factories - the database factories to report on
117
111
  */
118
112
  export declare const log_db_factory_status: (factories: Array<DbFactory>) => void;
119
113
  //# sourceMappingURL=db.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/db.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AA6B7B,OAAO,KAAK,EAAC,EAAE,EAAC,MAAM,aAAa,CAAC;AAKpC;;GAEG;AACH,eAAO,MAAM,KAAK,SAA4B,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,GAAU,IAAI,EAAE,KAAG,OAAO,CAAC,IAAI,CAGvD,CAAC;AAMF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,qBAAqB,GAAI,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,KAAG,SAkB7E,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,iBAAiB,GAC7B,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,EACtC,WAAW,MAAM,KACf,SA2DF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,UAQhC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,UAAyC,CAAC;AAEvF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,+IAWnB,CAAC;AAEX;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,gBAAgB,GAAU,IAAI,EAAE,KAAG,OAAO,CAAC,IAAI,CAK3D,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,GAC9B,WAAW,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,EACvC,iBAAiB,KAAK,CAAC,MAAM,CAAC,KAC5B,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,KAAK,IAAI,CAwBzD,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,WAAW,KAAK,CAAC,SAAS,CAAC,KAAG,IAMnE,CAAC"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/db.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AA6B7B,OAAO,KAAK,EAAC,EAAE,EAAC,MAAM,aAAa,CAAC;AAKpC;;GAEG;AACH,eAAO,MAAM,KAAK,SAA4B,CAAC;AAE/C;;GAEG;AACH,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1B,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,EAAE,OAAO,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,GAAU,IAAI,EAAE,KAAG,OAAO,CAAC,IAAI,CAGvD,CAAC;AAMF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,qBAAqB,GAAI,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,KAAG,SAkB7E,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,iBAAiB,GAC7B,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,EACtC,WAAW,MAAM,KACf,SA2DF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,UAQhC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC,UAAyC,CAAC;AAEvF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,+IAWnB,CAAC;AAEX;;;;;;;;;;GAUG;AACH,eAAO,MAAM,gBAAgB,GAAU,IAAI,EAAE,KAAG,OAAO,CAAC,IAAI,CAK3D,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,kBAAkB,GAC9B,WAAW,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,EACvC,iBAAiB,KAAK,CAAC,MAAM,CAAC,KAC5B,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,KAAK,IAAI,CAwBzD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,WAAW,KAAK,CAAC,SAAS,CAAC,KAAG,IAMnE,CAAC"}
@@ -36,7 +36,6 @@ export const IS_CI = process.env.CI === 'true';
36
36
  * Removes all tables, sequences, indexes, types, and functions.
37
37
  * The database instance remains usable after reset.
38
38
  *
39
- * @param db - the database to reset
40
39
  * @mutates db - drops the `public` schema and recreates it; all rows in all
41
40
  * tables are gone after this returns.
42
41
  */
@@ -57,7 +56,6 @@ let module_db = null;
57
56
  * cold-start cost again.
58
57
  *
59
58
  * @param init_schema - callback to initialize the database schema
60
- * @returns a factory that creates in-memory pglite databases
61
59
  */
62
60
  export const create_pglite_factory = (init_schema) => ({
63
61
  name: 'pglite',
@@ -209,7 +207,6 @@ export const AUTH_DROP_TABLES = [
209
207
  * Safe on fresh databases (`IF EXISTS` on all statements). No-op effect for
210
208
  * PGlite (already fresh), but harmless to call unconditionally.
211
209
  *
212
- * @param db - the database to clean
213
210
  * @mutates db - drops every table in `AUTH_DROP_TABLES` plus `schema_version`.
214
211
  */
215
212
  export const drop_auth_schema = async (db) => {
@@ -228,7 +225,6 @@ export const drop_auth_schema = async (db) => {
228
225
  *
229
226
  * @param factories - one or more database factories to run suites against
230
227
  * @param truncate_tables - tables to truncate between tests (children first for FK safety)
231
- * @returns a `describe_db` function for use in test files
232
228
  * @mutates the underlying database between tests — `beforeEach` issues
233
229
  * `TRUNCATE <truncate_tables> CASCADE` against the shared instance.
234
230
  */
@@ -258,8 +254,6 @@ export const create_describe_db = (factories, truncate_tables) => {
258
254
  };
259
255
  /**
260
256
  * Log factory status to console.
261
- *
262
- * @param factories - the database factories to report on
263
257
  */
264
258
  export const log_db_factory_status = (factories) => {
265
259
  const enabled = factories.filter((f) => !f.skip).map((f) => f.name);
@@ -71,10 +71,7 @@ export declare class ErrorCoverageCollector {
71
71
  * (e.g., `/api/accounts/abc` → `/api/accounts/:id`). When `code` is provided,
72
72
  * it is stored alongside the status for per-code coverage tracking.
73
73
  *
74
- * @param route_specs - route specs for path resolution
75
- * @param method - HTTP method
76
74
  * @param path - request path (may be concrete)
77
- * @param status - observed HTTP status code
78
75
  * @param code - observed body `error` code (pass when the route's error
79
76
  * schema declares specific codes via `z.literal` or `z.enum`)
80
77
  * @mutates `this.observed` - adds the resolved `"METHOD /spec-path:STATUS"`
@@ -90,10 +87,6 @@ export declare class ErrorCoverageCollector {
90
87
  * for per-code coverage. Pass an explicit `code` to override the
91
88
  * auto-extracted value or when the body was already consumed.
92
89
  *
93
- * @param route_specs - route specs for schema lookup and path resolution
94
- * @param method - HTTP method
95
- * @param path - request path
96
- * @param response - the Response to validate and record
97
90
  * @param code - observed body `error` code (override; if omitted and the
98
91
  * response body is a JSON object with a string `error` field, that value
99
92
  * is auto-extracted)
@@ -111,10 +104,6 @@ export declare class ErrorCoverageCollector {
111
104
  * `z.enum`), reports per-code rows; otherwise reports one row per status.
112
105
  * A status-only observation (no code) satisfies all declared codes for that
113
106
  * status — the "any-code" rule.
114
- *
115
- * @param route_specs - route specs to check coverage against
116
- * @param options - exclusion configuration (skip routes or statuses)
117
- * @returns uncovered entries with method, path, status, and optional code
118
107
  */
119
108
  uncovered(route_specs: Array<RouteSpec>, options?: CoverageFilterOptions): Array<UncoveredEntry>;
120
109
  }
@@ -142,9 +131,6 @@ export interface ErrorCoverageOptions extends CoverageFilterOptions {
142
131
  * When `min_coverage` is 0 (default), logs coverage info without failing.
143
132
  * When > 0, fails if coverage is below the threshold.
144
133
  *
145
- * @param collector - the coverage collector with recorded observations
146
- * @param route_specs - route specs to check coverage against
147
- * @param options - threshold and exclusion configuration
148
134
  * @throws AssertionError if `min_coverage > 0` and the covered/total ratio
149
135
  * falls below the threshold — the failure message lists every uncovered
150
136
  * route + status (+ code).
@@ -1 +1 @@
1
- {"version":3,"file":"error_coverage.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/error_coverage.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;;;;GAWG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAIrD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B,GAAI,QAAQ,CAAC,CAAC,OAAO,KAAG,KAAK,CAAC,MAAM,CAAC,GAAG,IAWhF,CAAC;AAEF,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,6EAA6E;AAC7E,MAAM,WAAW,qBAAqB;IACrC,kDAAkD;IAClD,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAChC;AAqDD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE3C;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CACL,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,GACX,IAAI;IAUP;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,iBAAiB,CACtB,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,IAAI,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC;IAgBhB;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC;CAKhG;AAED;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD,2CAA2C;AAC3C,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IAClE,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAaD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,qBAAqB,GACjC,WAAW,sBAAsB,EACjC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,UAAU,oBAAoB,KAC5B,IAqBF,CAAC"}
1
+ {"version":3,"file":"error_coverage.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/error_coverage.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAE7B;;;;;;;;;;;GAWG;AAEH,OAAO,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAGtB,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAIrD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,4BAA4B,GAAI,QAAQ,CAAC,CAAC,OAAO,KAAG,KAAK,CAAC,MAAM,CAAC,GAAG,IAWhF,CAAC;AAEF,sFAAsF;AACtF,MAAM,WAAW,cAAc;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,wFAAwF;IACxF,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,6EAA6E;AAC7E,MAAM,WAAW,qBAAqB;IACrC,kDAAkD;IAClD,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,iCAAiC;IACjC,eAAe,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAChC;AAqDD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IAClC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE3C;;;;;;;;;;;;OAYG;IACH,MAAM,CACL,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,MAAM,GACX,IAAI;IAUP;;;;;;;;;;;;;;;;OAgBG;IACG,iBAAiB,CACtB,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAC7B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,IAAI,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC;IAgBhB;;;;;;;;OAQG;IACH,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,KAAK,CAAC,cAAc,CAAC;CAKhG;AAED;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,MAAM,CAAC;AAEtD,2CAA2C;AAC3C,MAAM,WAAW,oBAAqB,SAAQ,qBAAqB;IAClE,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB;AAaD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,qBAAqB,GACjC,WAAW,sBAAsB,EACjC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,UAAU,oBAAoB,KAC5B,IAqBF,CAAC"}
@@ -113,10 +113,7 @@ export class ErrorCoverageCollector {
113
113
  * (e.g., `/api/accounts/abc` → `/api/accounts/:id`). When `code` is provided,
114
114
  * it is stored alongside the status for per-code coverage tracking.
115
115
  *
116
- * @param route_specs - route specs for path resolution
117
- * @param method - HTTP method
118
116
  * @param path - request path (may be concrete)
119
- * @param status - observed HTTP status code
120
117
  * @param code - observed body `error` code (pass when the route's error
121
118
  * schema declares specific codes via `z.literal` or `z.enum`)
122
119
  * @mutates `this.observed` - adds the resolved `"METHOD /spec-path:STATUS"`
@@ -140,10 +137,6 @@ export class ErrorCoverageCollector {
140
137
  * for per-code coverage. Pass an explicit `code` to override the
141
138
  * auto-extracted value or when the body was already consumed.
142
139
  *
143
- * @param route_specs - route specs for schema lookup and path resolution
144
- * @param method - HTTP method
145
- * @param path - request path
146
- * @param response - the Response to validate and record
147
140
  * @param code - observed body `error` code (override; if omitted and the
148
141
  * response body is a JSON object with a string `error` field, that value
149
142
  * is auto-extracted)
@@ -176,10 +169,6 @@ export class ErrorCoverageCollector {
176
169
  * `z.enum`), reports per-code rows; otherwise reports one row per status.
177
170
  * A status-only observation (no code) satisfies all declared codes for that
178
171
  * status — the "any-code" rule.
179
- *
180
- * @param route_specs - route specs to check coverage against
181
- * @param options - exclusion configuration (skip routes or statuses)
182
- * @returns uncovered entries with method, path, status, and optional code
183
172
  */
184
173
  uncovered(route_specs, options) {
185
174
  return walk_coverage(this, route_specs, options)
@@ -213,9 +202,6 @@ const format_uncovered = (entry) => `${entry.method} ${entry.path} → ${entry.s
213
202
  * When `min_coverage` is 0 (default), logs coverage info without failing.
214
203
  * When > 0, fails if coverage is below the threshold.
215
204
  *
216
- * @param collector - the coverage collector with recorded observations
217
- * @param route_specs - route specs to check coverage against
218
- * @param options - threshold and exclusion configuration
219
205
  * @throws AssertionError if `min_coverage > 0` and the covered/total ratio
220
206
  * falls below the threshold — the failure message lists every uncovered
221
207
  * route + status (+ code).
@@ -51,7 +51,6 @@ export interface StandardIntegrationTestOptions {
51
51
  * Each test group asserts that required routes exist, failing with a descriptive
52
52
  * message if the consumer's route specs are misconfigured.
53
53
  *
54
- * @param options - session config and route factory
55
54
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
56
55
  * suite hard-fails via `require_rpc_endpoint_path` rather than running
57
56
  * tests that would crash mid-suite trying to dispatch
@@ -1 +1 @@
1
- {"version":3,"file":"integration.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/integration.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAsB7B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAA6C,KAAK,eAAe,EAAC,MAAM,iBAAiB,CAAC;AACjG,OAAO,EAIN,KAAK,SAAS,EACd,MAAM,SAAS,CAAC;AAOjB,OAAO,EAKN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAqB1B;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC9C,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,EAAE,uBAAuB,CAAC;CACvC;AAsBD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,mCAAmC,GAC/C,SAAS,8BAA8B,KACrC,IAg8CF,CAAC"}
1
+ {"version":3,"file":"integration.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/integration.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAsB7B,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAA6C,KAAK,eAAe,EAAC,MAAM,iBAAiB,CAAC;AACjG,OAAO,EAIN,KAAK,SAAS,EACd,MAAM,SAAS,CAAC;AAOjB,OAAO,EAKN,KAAK,uBAAuB,EAC5B,MAAM,kBAAkB,CAAC;AAqB1B;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC9C,4CAA4C;IAC5C,eAAe,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACxC,wDAAwD;IACxD,kBAAkB,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,KAAK,CAAC,SAAS,CAAC,CAAC;IAChE,iDAAiD;IACjD,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAChC;;;;;;;;;;;;;;;;OAgBG;IACH,aAAa,EAAE,uBAAuB,CAAC;CACvC;AAsBD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,mCAAmC,GAC/C,SAAS,8BAA8B,KACrC,IAg8CF,CAAC"}
@@ -56,7 +56,6 @@ const build_test_app_options = (options, db) => ({
56
56
  * Each test group asserts that required routes exist, failing with a descriptive
57
57
  * message if the consumer's route specs are misconfigured.
58
58
  *
59
- * @param options - session config and route factory
60
59
  * @throws Error at setup time when `options.rpc_endpoints` is empty — the
61
60
  * suite hard-fails via `require_rpc_endpoint_path` rather than running
62
61
  * tests that would crash mid-suite trying to dispatch
@@ -8,10 +8,7 @@ import type { TestApp, TestAccount } from './app_server.js';
8
8
  *
9
9
  * Supports both exact matches and parameterized paths (`:param` segments).
10
10
  *
11
- * @param specs - route specs to search
12
- * @param method - HTTP method
13
11
  * @param path - request path (exact or with concrete param values)
14
- * @returns matching route spec, or `undefined`
15
12
  */
16
13
  export declare const find_route_spec: (specs: Array<RouteSpec>, method: string, path: string) => RouteSpec | undefined;
17
14
  /**
@@ -31,14 +28,7 @@ export type RestAuthRouteSuffix = (typeof REST_AUTH_ROUTE_SUFFIXES)[number];
31
28
  * method name (e.g. `/sessions/revoke-all`) fails loudly at the call site
32
29
  * instead of silently returning `undefined`.
33
30
  *
34
- * @param specs - route specs to search
35
- * @param suffix - REST auth path suffix
36
- * @param method - HTTP method
37
- * @returns matching route spec, or `undefined`
38
- * @throws Error if `suffix` is not in `REST_AUTH_ROUTE_SUFFIXES` — surfaces
39
- * accidental use of a post-RPC-migration method name (e.g.
40
- * `/sessions/revoke-all`) at the call site rather than silently returning
41
- * `undefined`.
31
+ * @throws Error if `suffix` is not in `REST_AUTH_ROUTE_SUFFIXES`.
42
32
  */
43
33
  export declare const find_auth_route: (specs: Array<RouteSpec>, suffix: RestAuthRouteSuffix, method: RouteMethod) => RouteSpec | undefined;
44
34
  /**
@@ -47,10 +37,6 @@ export declare const find_auth_route: (specs: Array<RouteSpec>, suffix: RestAuth
47
37
  * For 2xx responses, validates against `spec.output`.
48
38
  * For error responses, validates against the merged error schema for that status code.
49
39
  *
50
- * @param route_specs - route specs for schema lookup
51
- * @param method - HTTP method of the request
52
- * @param path - path of the request
53
- * @param response - the Response to validate
54
40
  * @throws Error if no route spec matches `method` + `path`, if the response
55
41
  * body fails to parse against the declared output / error schema, or if the
56
42
  * response is non-JSON despite a declared schema for that status.
@@ -58,10 +44,6 @@ export declare const find_auth_route: (specs: Array<RouteSpec>, suffix: RestAuth
58
44
  export declare const assert_response_matches_spec: (route_specs: Array<RouteSpec>, method: string, path: string, response: Response) => Promise<void>;
59
45
  /**
60
46
  * Create an expired test cookie — validly signed but with an expiry timestamp in 1970.
61
- *
62
- * @param keyring - keyring for signing
63
- * @param session_options - session config
64
- * @returns signed cookie value with long-past expiry
65
47
  */
66
48
  export declare const create_expired_test_cookie: (keyring: Keyring, session_options: SessionOptions<string>) => Promise<string>;
67
49
  /**
@@ -69,10 +51,7 @@ export declare const create_expired_test_cookie: (keyring: Keyring, session_opti
69
51
  *
70
52
  * Error schemas use `z.looseObject` (intentional — multiple producers), but
71
53
  * test responses should be checked for fields that could leak information.
72
- * Flags any field not in the known-safe set so callers can decide whether to
73
- * fail or log.
74
54
  *
75
- * @param body - parsed error response JSON
76
55
  * @returns array of unexpected field names (empty = clean)
77
56
  */
78
57
  export declare const check_error_response_fields: (body: Record<string, unknown>) => Array<string>;
@@ -82,16 +61,12 @@ export declare const check_error_response_fields: (body: Record<string, unknown>
82
61
  * Checks both field names and string values for patterns indicating
83
62
  * stack traces, SQL, or internal paths.
84
63
  *
85
- * @param body - parsed error response JSON
86
64
  * @param context - description for error messages
87
65
  */
88
66
  export declare const assert_no_error_info_leakage: (body: Record<string, unknown>, context: string) => void;
89
67
  /**
90
68
  * Assert that a 429 response includes a valid `Retry-After` header
91
69
  * matching the JSON body's `retry_after` field.
92
- *
93
- * @param response - the 429 response
94
- * @param body - parsed JSON body with `retry_after` field
95
70
  */
96
71
  export declare const assert_rate_limit_retry_after_header: (response: Response, body: {
97
72
  retry_after: number;
@@ -104,16 +79,11 @@ export declare const ADMIN_ONLY_FIELD_BLOCKLIST: ReadonlyArray<string>;
104
79
  * Recursively collect all key names from a parsed JSON value.
105
80
  *
106
81
  * Walks objects and arrays to find every property name at any nesting depth.
107
- *
108
- * @param value - parsed JSON value
109
- * @returns set of all key names found
110
82
  */
111
83
  export declare const collect_json_keys_recursive: (value: unknown) => Set<string>;
112
84
  /**
113
85
  * Assert that a parsed JSON body contains no fields from the given blocklist.
114
86
  *
115
- * @param body - parsed response JSON
116
- * @param blocklist - field names to check for
117
87
  * @param context - description for error messages
118
88
  */
119
89
  export declare const assert_no_sensitive_fields_in_json: (body: unknown, blocklist: ReadonlyArray<string>, context: string) => void;
@@ -126,11 +96,6 @@ export declare const assert_no_sensitive_fields_in_json: (body: unknown, blockli
126
96
  * - `role: admin` — the admin account's session cookie
127
97
  * - `role: <other>` — the test app's bootstrapped keeper session
128
98
  * - `keeper` — the test app's daemon token
129
- *
130
- * @param spec - route spec to inspect
131
- * @param test_app - the assembled test app (for bootstrapped credentials)
132
- * @param authed_account - an account with no roles (for `authenticated` auth)
133
- * @param admin_account - an account with `admin` role (for role-gated routes)
134
99
  */
135
100
  export declare const pick_auth_headers: (spec: RouteSpec, test_app: TestApp, authed_account: TestAccount, admin_account: TestAccount) => Record<string, string>;
136
101
  //# sourceMappingURL=integration_helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"integration_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/integration_helpers.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAU7B,OAAO,KAAK,EAAC,SAAS,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAA8B,KAAK,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAE3F,OAAO,KAAK,EAAC,OAAO,EAAE,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE1D;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe,GAC3B,OAAO,KAAK,CAAC,SAAS,CAAC,EACvB,QAAQ,MAAM,EACd,MAAM,MAAM,KACV,SAAS,GAAG,SAad,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,iFAO3B,CAAC;AACX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,eAAe,GAC3B,OAAO,KAAK,CAAC,SAAS,CAAC,EACvB,QAAQ,mBAAmB,EAC3B,QAAQ,WAAW,KACjB,SAAS,GAAG,SAOd,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,4BAA4B,GACxC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,QAAQ,MAAM,EACd,MAAM,MAAM,EACZ,UAAU,QAAQ,KAChB,OAAO,CAAC,IAAI,CAmDd,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,0BAA0B,GACtC,SAAS,OAAO,EAChB,iBAAiB,cAAc,CAAC,MAAM,CAAC,KACrC,OAAO,CAAC,MAAM,CAGhB,CAAC;AAuCF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,KAAK,CAAC,MAAM,CAQvF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,4BAA4B,GACxC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,MAAM,KACb,IAkBF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,oCAAoC,GAChD,UAAU,QAAQ,EAClB,MAAM;IAAC,WAAW,EAAE,MAAM,CAAA;CAAC,KACzB,IAUF,CAAC;AAIF,oEAAoE;AACpE,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,MAAM,CAAmC,CAAC;AAEhG,0EAA0E;AAC1E,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,MAAM,CAAgC,CAAC;AAE9F;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,GAAG,CAAC,MAAM,CAetE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,kCAAkC,GAC9C,MAAM,OAAO,EACb,WAAW,aAAa,CAAC,MAAM,CAAC,EAChC,SAAS,MAAM,KACb,IAKF,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB,GAC7B,MAAM,SAAS,EACf,UAAU,OAAO,EACjB,gBAAgB,WAAW,EAC3B,eAAe,WAAW,KACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAcvB,CAAC"}
1
+ {"version":3,"file":"integration_helpers.d.ts","sourceRoot":"../src/lib/","sources":["../../src/lib/testing/integration_helpers.ts"],"names":[],"mappings":"AAAA,OAAO,qBAAqB,CAAC;AAU7B,OAAO,KAAK,EAAC,SAAS,EAAE,WAAW,EAAC,MAAM,uBAAuB,CAAC;AAElE,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAA8B,KAAK,cAAc,EAAC,MAAM,2BAA2B,CAAC;AAE3F,OAAO,KAAK,EAAC,OAAO,EAAE,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE1D;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAC3B,OAAO,KAAK,CAAC,SAAS,CAAC,EACvB,QAAQ,MAAM,EACd,MAAM,MAAM,KACV,SAAS,GAAG,SAad,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,iFAO3B,CAAC;AACX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,wBAAwB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E;;;;;;;;;;GAUG;AACH,eAAO,MAAM,eAAe,GAC3B,OAAO,KAAK,CAAC,SAAS,CAAC,EACvB,QAAQ,mBAAmB,EAC3B,QAAQ,WAAW,KACjB,SAAS,GAAG,SAOd,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,4BAA4B,GACxC,aAAa,KAAK,CAAC,SAAS,CAAC,EAC7B,QAAQ,MAAM,EACd,MAAM,MAAM,EACZ,UAAU,QAAQ,KAChB,OAAO,CAAC,IAAI,CAmDd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,0BAA0B,GACtC,SAAS,OAAO,EAChB,iBAAiB,cAAc,CAAC,MAAM,CAAC,KACrC,OAAO,CAAC,MAAM,CAGhB,CAAC;AAgCF;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,KAAK,CAAC,MAAM,CAQvF,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,GACxC,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,SAAS,MAAM,KACb,IAkBF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,oCAAoC,GAChD,UAAU,QAAQ,EAClB,MAAM;IAAC,WAAW,EAAE,MAAM,CAAA;CAAC,KACzB,IAUF,CAAC;AAIF,oEAAoE;AACpE,eAAO,MAAM,yBAAyB,EAAE,aAAa,CAAC,MAAM,CAAmC,CAAC;AAEhG,0EAA0E;AAC1E,eAAO,MAAM,0BAA0B,EAAE,aAAa,CAAC,MAAM,CAAgC,CAAC;AAE9F;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,GAAI,OAAO,OAAO,KAAG,GAAG,CAAC,MAAM,CAetE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kCAAkC,GAC9C,MAAM,OAAO,EACb,WAAW,aAAa,CAAC,MAAM,CAAC,EAChC,SAAS,MAAM,KACb,IAKF,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,GAC7B,MAAM,SAAS,EACf,UAAU,OAAO,EACjB,gBAAgB,WAAW,EAC3B,eAAe,WAAW,KACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAcvB,CAAC"}