Module: Legion::Extensions::Agentic::Defense::EpistemicVigilance::Runners::EpistemicVigilance

Includes:
Helpers::Lex
Included in:
Client, Helpers::Client
Defined in:
lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb

Instance Method Summary collapse

Instance Method Details

#adjudicate_epistemic_claim(claim_id:, verdict:) ⇒ Object



44
45
46
47
48
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 44

def adjudicate_epistemic_claim(claim_id:, verdict:, **)
  result = engine.adjudicate_claim(claim_id: claim_id, verdict: verdict)
  log.info("[epistemic_vigilance] adjudicate claim_id=#{claim_id} verdict=#{verdict}")
  result
end

#assess_epistemic_claim(claim_id:) ⇒ Object



26
27
28
29
30
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 26

def assess_epistemic_claim(claim_id:, **)
  result = engine.assess_claim(claim_id: claim_id)
  log.debug("[epistemic_vigilance] assess claim_id=#{claim_id} total=#{result[:total_score]&.round(3)}")
  result
end

#challenge_epistemic_claim(claim_id:) ⇒ Object



38
39
40
41
42
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 38

def challenge_epistemic_claim(claim_id:, **)
  result = engine.challenge_claim(claim_id: claim_id)
  log.debug("[epistemic_vigilance] challenge claim_id=#{claim_id} confidence=#{result[:confidence]&.round(3)}")
  result
end

#contested_claims_reportObject



56
57
58
59
60
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 56

def contested_claims_report(**)
  claims = engine.contested_claims
  log.debug("[epistemic_vigilance] contested claims count=#{claims.size}")
  { contested: claims, count: claims.size }
end

#domain_vigilance_report(domain:) ⇒ Object



62
63
64
65
66
67
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 62

def domain_vigilance_report(domain:, **)
  level = engine.domain_vigilance_level(domain: domain)
  claims = engine.claims_by_domain(domain: domain)
  log.debug("[epistemic_vigilance] domain=#{domain} vigilance_level=#{level} claims=#{claims.size}")
  { domain: domain, vigilance_level: level, claims: claims, count: claims.size }
end

#epistemic_vigilance_statsObject



76
77
78
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 76

def epistemic_vigilance_stats(**)
  engine.to_h
end

#register_epistemic_source(name:, domain:) ⇒ Object



13
14
15
16
17
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 13

def register_epistemic_source(name:, domain:, **)
  result = engine.register_source(name: name, domain: domain)
  log.info("[epistemic_vigilance] registered source name=#{name} domain=#{domain} id=#{result[:id]}")
  result
end

#source_reliability_report(source_id:) ⇒ Object



50
51
52
53
54
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 50

def source_reliability_report(source_id:, **)
  result = engine.source_reliability(source_id: source_id)
  log.debug("[epistemic_vigilance] source reliability source_id=#{source_id} label=#{result[:label]}")
  result
end

#submit_epistemic_claim(content:, source_id:, domain:, initial_confidence: 0.5) ⇒ Object



19
20
21
22
23
24
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 19

def submit_epistemic_claim(content:, source_id:, domain:, initial_confidence: 0.5, **)
  result = engine.submit_claim(content: content, source_id: source_id, domain: domain,
                               initial_confidence: initial_confidence)
  log.debug("[epistemic_vigilance] claim submitted domain=#{domain} verdict=#{result.dig(:assessment, :recommended_verdict)}")
  result
end

#support_epistemic_claim(claim_id:) ⇒ Object



32
33
34
35
36
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 32

def support_epistemic_claim(claim_id:, **)
  result = engine.support_claim(claim_id: claim_id)
  log.debug("[epistemic_vigilance] support claim_id=#{claim_id} confidence=#{result[:confidence]&.round(3)}")
  result
end

#update_epistemic_vigilanceObject



69
70
71
72
73
74
# File 'lib/legion/extensions/agentic/defense/epistemic_vigilance/runners/epistemic_vigilance.rb', line 69

def update_epistemic_vigilance(**)
  decay_result = engine.decay_all
  prune_result = engine.prune_rejected
  log.debug("[epistemic_vigilance] decay+prune decayed=#{decay_result[:decayed]} pruned=#{prune_result[:pruned]}")
  { decay: decay_result, prune: prune_result }
end