11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'app/jobs/completion_kit/check_review_job.rb', line 11
def perform(response_id, metric_id, run_id = nil)
@response_id = response_id
@metric_id = metric_id
@run_id = run_id
response = Response.find(response_id)
metric = Metric.find(metric_id)
result = evaluate(response, metric.check_config || {})
review = response.reviews.find_or_initialize_by(metric_id: metric.id)
current_metric_version = MetricVersion.ensure_current_for(metric)
review.assign_attributes(
metric_name: metric.name,
metric_version_id: current_metric_version.id,
status: "succeeded",
passed: result.passed,
ai_score: nil,
ai_feedback: result.detail,
error_provider: nil, error_class: nil, error_status: nil, error_message: nil
)
review.save!
enqueue_completion_check
end
|