Class: SmartBrain::Contracts::ContextPackage

Inherits:
Object
  • Object
show all
Defined in:
lib/smart_brain/contracts/context_package.rb

Constant Summary collapse

REQUIRED_KEYS =
%i[version context_id session_id created_at user_message evidence].freeze

Class Method Summary collapse

Class Method Details

.validate!(pkg) ⇒ Object

Raises:

  • (ArgumentError)


8
9
10
11
12
13
# File 'lib/smart_brain/contracts/context_package.rb', line 8

def self.validate!(pkg)
  missing = REQUIRED_KEYS.reject { |key| pkg.key?(key) }
  raise ArgumentError, "invalid context package: missing #{missing.join(', ')}" unless missing.empty?

  true
end