Module: Legion::Extensions::Agentic::Defense::Bias::Runners::Bias
- Includes:
- Helpers::Lex
- Included in:
- Client
- Defined in:
- lib/legion/extensions/agentic/defense/bias/runners/bias.rb
Instance Method Summary collapse
- #bias_report(domain: nil) ⇒ Object
- #bias_stats ⇒ Object
- #check_for_bias(domain:, decision_context: {}) ⇒ Object
- #record_anchor(domain:, value:) ⇒ Object
- #susceptibility_profile ⇒ Object
- #update_bias ⇒ Object
Instance Method Details
#bias_report(domain: nil) ⇒ Object
33 34 35 36 37 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 33 def bias_report(domain: nil, **) events = domain ? bias_store.by_domain(domain) : bias_store.recent(50) log.debug("[bias] bias_report domain=#{domain.inspect} events=#{events.size}") { success: true, domain: domain, events: events, count: events.size } end |
#bias_stats ⇒ Object
45 46 47 48 49 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 45 def bias_stats(**) stats = bias_store.stats log.debug("[bias] bias_stats total=#{stats[:total]}") { success: true, **stats } end |
#check_for_bias(domain:, decision_context: {}) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 13 def check_for_bias(domain:, decision_context: {}, **) log.debug("[bias] check_for_bias domain=#{domain}") detected = collect_bias_detections(domain, decision_context) active = detected.select { |b| b[:magnitude] >= Helpers::Constants::DETECTION_THRESHOLD } log.debug("[bias] check_for_bias domain=#{domain} detected=#{active.size}") { success: true, domain: domain, detected: active, all: detected } end |
#record_anchor(domain:, value:) ⇒ Object
21 22 23 24 25 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 21 def record_anchor(domain:, value:, **) bias_store.register_anchor(domain, value: value) log.debug("[bias] anchor recorded domain=#{domain} value=#{value}") { success: true, domain: domain, value: value } end |
#susceptibility_profile ⇒ Object
39 40 41 42 43 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 39 def susceptibility_profile(**) profile = bias_detector.to_h log.debug('[bias] susceptibility_profile') { success: true, **profile } end |
#update_bias ⇒ Object
27 28 29 30 31 |
# File 'lib/legion/extensions/agentic/defense/bias/runners/bias.rb', line 27 def update_bias(**) bias_store.decay_anchors log.debug('[bias] update_bias: anchors decayed') { success: true } end |