Class: Legion::LLM::Routing::EvaluationSet

Inherits:
Object
  • Object
show all
Defined in:
lib/legion/llm/routing/evaluation.rb

Overview

Immutable full evaluation of the captured snapshot (ยง7.6): every candidate plus every publication status (including initializing scopes with no lane) and the captured inventory generation. RejectionDiagnostics consumes publication_statuses to distinguish 424 (authoritative unsupported) from 425 (incomplete/initializing authority).

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(candidates:, publication_statuses:, inventory_generation:) ⇒ EvaluationSet

Returns a new instance of EvaluationSet.



88
89
90
91
92
93
# File 'lib/legion/llm/routing/evaluation.rb', line 88

def initialize(candidates:, publication_statuses:, inventory_generation:, **)
  @candidates = candidates.freeze
  @publication_statuses = publication_statuses.freeze
  @inventory_generation = inventory_generation
  freeze
end

Instance Attribute Details

#candidatesObject (readonly)

Returns the value of attribute candidates.



86
87
88
# File 'lib/legion/llm/routing/evaluation.rb', line 86

def candidates
  @candidates
end

#inventory_generationObject (readonly)

Returns the value of attribute inventory_generation.



86
87
88
# File 'lib/legion/llm/routing/evaluation.rb', line 86

def inventory_generation
  @inventory_generation
end

#publication_statusesObject (readonly)

Returns the value of attribute publication_statuses.



86
87
88
# File 'lib/legion/llm/routing/evaluation.rb', line 86

def publication_statuses
  @publication_statuses
end

Instance Method Details

#ready_candidatesObject



95
96
97
# File 'lib/legion/llm/routing/evaluation.rb', line 95

def ready_candidates(**)
  @candidates.select(&:ready?)
end