Module: Legion::Extensions::Agentic::Self::Anosognosia::Runners::Anosognosia

Includes:
Helpers::Lex
Included in:
Client
Defined in:
lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb

Instance Method Summary collapse

Instance Method Details

#acknowledge_deficit(deficit_id:) ⇒ Object



32
33
34
35
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 32

def acknowledge_deficit(deficit_id:, **)
  log.debug "[anosognosia] acknowledge_deficit: id=#{deficit_id}"
  engine.acknowledge_deficit(deficit_id: deficit_id)
end

#anosognosia_statusObject



75
76
77
78
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 75

def anosognosia_status(**)
  { total_deficits: engine.deficits.size, awareness_score: engine.awareness_score.round(10),
    blind_spot_count: engine.blind_spots.size }
end

#awareness_gapObject



52
53
54
55
56
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 52

def awareness_gap(**)
  gap = engine.awareness_gap
  log.debug "[anosognosia] awareness_gap: gap=#{gap.round(2)}"
  { awareness_gap: gap, awareness_score: engine.awareness_score.round(10) }
end

#awareness_scoreObject



42
43
44
45
46
47
48
49
50
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 42

def awareness_score(**)
  score = engine.awareness_score
  log.debug "[anosognosia] awareness_score: score=#{score.round(2)}"
  {
    awareness_score: score.round(10),
    awareness_gap:   engine.awareness_gap,
    awareness_label: awareness_label_for(score)
  }
end

#blind_spotsObject



58
59
60
61
62
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 58

def blind_spots(**)
  spots = engine.blind_spots
  log.debug "[anosognosia] blind_spots: count=#{spots.size}"
  { blind_spots: spots.map(&:to_h), count: spots.size }
end

#calibration_reportObject



64
65
66
67
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 64

def calibration_report(**)
  log.info '[anosognosia] calibration_report requested'
  engine.calibration_report
end

#decay_awareness(amount: nil) ⇒ Object



69
70
71
72
73
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 69

def decay_awareness(amount: nil, **)
  amt   = amount || Helpers::Constants::AWARENESS_DECAY
  score = engine.decay_awareness(amount: amt)
  { awareness_score: score.round(10), awareness_gap: engine.awareness_gap, decayed_by: amt }
end

#register_deficit(domain:, deficit_type:, severity:, acknowledged: false) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 13

def register_deficit(domain:, deficit_type:, severity:, acknowledged: false, **)
  deficit = engine.register_deficit(
    domain:       domain,
    deficit_type: deficit_type,
    severity:     severity,
    acknowledged: acknowledged
  )
  {
    registered:      true,
    deficit_id:      deficit.id,
    domain:          domain,
    deficit_type:    deficit_type,
    severity:        deficit.severity,
    severity_label:  deficit.severity_label,
    acknowledged:    deficit.acknowledged,
    awareness_score: engine.awareness_score.round(10)
  }
end

#reveal_blind_spot(deficit_id:) ⇒ Object



37
38
39
40
# File 'lib/legion/extensions/agentic/self/anosognosia/runners/anosognosia.rb', line 37

def reveal_blind_spot(deficit_id:, **)
  log.info "[anosognosia] reveal_blind_spot: id=#{deficit_id}"
  engine.reveal_blind_spot(deficit_id: deficit_id)
end