Module: Evilution::MCP::MutateTool::ErrorPayload

Defined in:
lib/evilution/mcp/mutate_tool/error_payload.rb

Class Method Summary collapse

Class Method Details

.build(error) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/evilution/mcp/mutate_tool/error_payload.rb', line 8

def self.build(error)
  type = case error
         when Evilution::ConfigError then "config_error"
         when Evilution::ParseError  then "parse_error"
         else "runtime_error"
         end

  payload = { type: type, message: error.message }
  payload[:file] = error.file if error.file

  {
    error: payload,
    feedback_url: Evilution::Feedback::DISCUSSION_URL,
    feedback_hint: Evilution::Feedback::Messages.mcp_hint
  }
end