PathmindAI / pathmind-api

2 stars 1 forks source link

Have better error messages in place when things go wrong in policy server #11

Closed maxpumperla closed 2 years ago

maxpumperla commented 2 years ago

Currently a bad response from policy server will not throw an error, but just silently return None values, leading to incomprehensible errors down-stream for users.

Be more explicit and only proceed when the HTTP response code is 200.

maxpumperla commented 2 years ago
In [3]: policy.get_actions(simulation)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-3-ed97ec827bff> in <module>
----> 1 policy.get_actions(simulation)

~/code/pathmind/pathmind-api/pathmind/policy.py in get_actions(self, simulation)
     45                                  f"Error message: {payload}")
     46             else:
---> 47                 raise ValueError(f"Couldn't get actions from policy server.\n"
     48                                  f"Error message: {payload}")
     49         return actions

ValueError: Couldn't get actions from policy server.
Error message: {'detail': [{'loc': ['body', 'distance_to_cheese'], 'msg': 'field required', 'type': 'value_error.missing'}]}

We could do something like this.