Module: Legion::Extensions::Llm::Ledger::Runners::RegistryAvailability

Extended by:
RegistryAvailability
Includes:
Helpers::Lex
Included in:
RegistryAvailability
Defined in:
lib/legion/extensions/llm/ledger/runners/registry_availability.rb

Instance Method Summary collapse

Instance Method Details

#write_registry_availability_record(payload = nil, metadata = {}, **message) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/legion/extensions/llm/ledger/runners/registry_availability.rb', line 14

def write_registry_availability_record(payload = nil,  = {}, **message)
  payload,  = normalize_runner_args(payload, , message)
  props = [:properties] || {}

  body = symbolize(payload)
  record = build_registry_availability_record(body, props)
  Helpers::PersistenceLogging.insert_row(
    ::Legion::Data.connection,
    :llm_registry_availability_records,
    record,
    operation: 'write_registry_availability_record'
  )
  { result: :ok }
rescue Sequel::UniqueConstraintViolation => e
  log.warn("write_registry_availability_record duplicate insert ignored: #{e.message}")
  { result: :duplicate }
rescue StandardError => e
  handle_exception(e, level: :error, handled: true, operation: 'write_registry_availability_record')
  { result: :error, error: e.message }
end