Class: SmartBrain::Adapters::SmartRag::NullClient

Inherits:
Object
  • Object
show all
Defined in:
lib/smart_brain/adapters/smart_rag/null_client.rb

Instance Method Summary collapse

Instance Method Details

#retrieve(plan) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/smart_brain/adapters/smart_rag/null_client.rb', line 7

def retrieve(plan)
  business_scoped = Array(plan.dig(:scope_context, :read)).any? do |ref|
    (ref[:type] || ref['type']).to_s != 'session'
  end
  {
    version: '0.1',
    plan_id: "local-#{plan[:request_id]}",
    request_id: plan[:request_id],
    generated_at: Time.now.utc.iso8601,
    evidences: [],
    stats: { candidates: 0, returned: 0, took_ms: 0 },
    explain: { ignored_fields: business_scoped ? ['scope_context.read'] : [] },
    warnings: [business_scoped ? 'smart_rag scope filter unavailable: client not configured; failed closed' :
      'smart_rag client not configured; returned empty evidences'],
    scope_filter_applied: !business_scoped
  }
end