Class: Olyx::Guardrails::RiskScorer

Inherits:
Object
  • Object
show all
Defined in:
lib/olyx/guardrails/risk_scorer.rb

Overview

Computes the bounded heuristic risk score from merged check results and an optional LLM provider score.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(checks, ordered_checks, llm_result) ⇒ RiskScorer

Returns a new instance of RiskScorer.



15
16
17
18
19
# File 'lib/olyx/guardrails/risk_scorer.rb', line 15

def initialize(checks, ordered_checks, llm_result)
  @checks = checks
  @ordered_checks = ordered_checks
  @llm_result = llm_result
end

Class Method Details

.call(checks, ordered_checks, llm_result) ⇒ Object



11
12
13
# File 'lib/olyx/guardrails/risk_scorer.rb', line 11

def self.call(checks, ordered_checks, llm_result)
  new(checks, ordered_checks, llm_result).call
end

Instance Method Details

#callObject



21
22
23
24
25
# File 'lib/olyx/guardrails/risk_scorer.rb', line 21

def call
  deterministic = Risk::DeterministicScore.call(@checks, @ordered_checks)
  llm_risk = Risk::LlmScore.call(@llm_result)
  llm_risk ? [deterministic, llm_risk].max.round(4) : deterministic
end