awslabs/benchmark-ai

[bff] Bubble up schema validation error to customer

オープン

#950 opened on 2019/10/15

 (0 件のコメント) (0 件のリアクション) (0 人の担当者)Python (6 件のフォーク)auto 404
enhancementgood first issue

Repository metrics

Stars
 (19 個のスター)
PR merge metrics
 (PR metrics pending)

説明

If there is a "TOML" schema validation error the user does not get an informative error message. What they get is:

[ERROR] Submission was NOT successful - submission rejected by service:
{"status":400,"headers":{},"body":"Could Not Parse Submitted Descriptor: JSON Validation error:"}

The validation takes place here, and thus the genesis of this exception https://github.com/awslabs/benchmark-ai/blob/master/bai-bff/src/bai_bff/events.clj#L45

What it really looks like is:

Execution error (ValidationException) at org.everit.json.schema.ValidationException/prepend (ValidationException.java:395).
#/ml/args: expected type: JSONArray, found: String

So the task here is to expose that exception's details through the bubbled up exception, "handled" in the calling environment: https://github.com/awslabs/benchmark-ai/blob/master/bai-bff/src/bai_bff/http_api.clj#L38

コントリビューターガイド