Class: SkillBench::Services::ErrorResponseBuilder
- Inherits:
-
Object
- Object
- SkillBench::Services::ErrorResponseBuilder
- Defined in:
- lib/skill_bench/services/error_response_builder.rb
Overview
Builds standardized error responses with metadata.
Class Method Summary collapse
-
.agent_error(result, phase, evaluation, provider, skill_names) ⇒ Hash
Builds an agent error response.
-
.config_error(error, evaluation, provider, skill_names) ⇒ Hash
Builds a configuration error response.
-
.empty_context_error(evaluation, provider, skill_names) ⇒ Hash
Builds an empty context error response.
-
.enrich_error(result, evaluation, provider, skill_names) ⇒ Hash
Enriches an existing error result with metadata.
Instance Method Summary collapse
-
#agent_error(result, phase) ⇒ Hash
Builds an agent error response.
-
#config_error(error) ⇒ Hash
Builds a configuration error response.
-
#empty_context_error ⇒ Hash
Builds an empty context error response.
-
#enrich_error(result) ⇒ Hash
Enriches an existing error result with metadata.
-
#initialize(evaluation, provider, skill_names) ⇒ ErrorResponseBuilder
constructor
A new instance of ErrorResponseBuilder.
Constructor Details
#initialize(evaluation, provider, skill_names) ⇒ ErrorResponseBuilder
Returns a new instance of ErrorResponseBuilder.
54 55 56 57 58 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 54 def initialize(evaluation, provider, skill_names) @evaluation = evaluation @provider = provider @skill_names = skill_names end |
Class Method Details
.agent_error(result, phase, evaluation, provider, skill_names) ⇒ Hash
Builds an agent error response.
26 27 28 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 26 def self.agent_error(result, phase, evaluation, provider, skill_names) new(evaluation, provider, skill_names).agent_error(result, phase) end |
.config_error(error, evaluation, provider, skill_names) ⇒ Hash
Builds a configuration error response.
14 15 16 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 14 def self.config_error(error, evaluation, provider, skill_names) new(evaluation, provider, skill_names).config_error(error) end |
.empty_context_error(evaluation, provider, skill_names) ⇒ Hash
Builds an empty context error response.
36 37 38 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 36 def self.empty_context_error(evaluation, provider, skill_names) new(evaluation, provider, skill_names).empty_context_error end |
.enrich_error(result, evaluation, provider, skill_names) ⇒ Hash
Enriches an existing error result with metadata.
47 48 49 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 47 def self.enrich_error(result, evaluation, provider, skill_names) new(evaluation, provider, skill_names).enrich_error(result) end |
Instance Method Details
#agent_error(result, phase) ⇒ Hash
Builds an agent error response.
73 74 75 76 77 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 73 def agent_error(result, phase) raw = result[:raw_response] error_msg = raw&.dig(:response, :error, :message) || raw&.dig(:error, :message) || 'unknown error' base_error_result("#{phase.capitalize} agent failed: #{error_msg}") end |
#config_error(error) ⇒ Hash
Builds a configuration error response.
64 65 66 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 64 def config_error(error) base_error_result("Configuration error: #{error.}") end |
#empty_context_error ⇒ Hash
Builds an empty context error response.
82 83 84 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 82 def empty_context_error base_error_result('Skill context is empty. Ensure SKILL.md exists and has content.') end |
#enrich_error(result) ⇒ Hash
Enriches an existing error result with metadata.
90 91 92 93 94 95 96 |
# File 'lib/skill_bench/services/error_response_builder.rb', line 90 def enrich_error(result) result.merge( eval_name: @evaluation.name, skill_name: @skill_names.join(', '), provider_name: @provider.name ) end |