@@ -135,8 +135,7 @@ let event_response client request_id output =
135
135
request_id
136
136
in
137
137
make_runtime_post_request client path output >> = function
138
- | Ok response ->
139
- let status = Response. status response in
138
+ | Ok { Response. status; _ } ->
140
139
if not (Status. is_successful status) then
141
140
let error =
142
141
Errors. make_api_error
@@ -179,8 +178,7 @@ let event_error client request_id err =
179
178
request_id
180
179
in
181
180
make_runtime_error_request client path err >> = function
182
- | Ok response ->
183
- let status = Response. status response in
181
+ | Ok { Response. status; _ } ->
184
182
if not (Status. is_successful status) then
185
183
let error =
186
184
Errors. make_api_error
@@ -281,9 +279,7 @@ let next_event client =
281
279
Logs_lwt. info (fun m -> m " Polling for next event. Path: %s\n " path)
282
280
>> = fun () ->
283
281
Client. get client path >> = function
284
- | Ok response ->
285
- let headers = Response. headers response in
286
- let status = Response. status response in
282
+ | Ok { Response. status; headers; body; _ } ->
287
283
let code = Status. to_code status in
288
284
if Status. is_client_error status then
289
285
Logs_lwt. err (fun m ->
@@ -316,8 +312,19 @@ let next_event client =
316
312
m " Failed to get event context: %s\n " (Errors. message err))
317
313
>> = fun () -> Lwt_result. fail err
318
314
| Ok ctx ->
319
- Body. to_string (Response. body response) >> = fun body_str ->
320
- Lwt_result. return (body_str, ctx))
315
+ Body. to_string body >> = ( function
316
+ | Ok body_str ->
317
+ Lwt_result. return (body_str, ctx)
318
+ | Error e ->
319
+ let err =
320
+ Errors. make_api_error
321
+ ~recoverable: false
322
+ (Format. asprintf
323
+ " Server error when polling for new events: %a"
324
+ Piaf.Error. pp_hum
325
+ e)
326
+ in
327
+ Lwt_result. fail err ))
321
328
| Error _ ->
322
329
let err =
323
330
Errors. make_api_error
0 commit comments