Module: Legion::Extensions::Agentic::Defense::Phantom::Runners::CognitivePhantom
- Includes:
- Helpers::Lex
- Included in:
- Client
- Defined in:
- lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb
Instance Method Summary collapse
- #acknowledge_phantom(phantom_id:, engine: nil) ⇒ Object
- #decay_all(engine: nil) ⇒ Object
- #phantom_status(engine: nil) ⇒ Object
- #process_stimulus(stimulus:, domain: :general, engine: nil) ⇒ Object
- #register_removal(capability_name:, capability_domain: :general, engine: nil) ⇒ Object
Instance Method Details
#acknowledge_phantom(phantom_id:, engine: nil) ⇒ Object
42 43 44 45 46 47 48 49 50 51 |
# File 'lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb', line 42 def acknowledge_phantom(phantom_id:, engine: nil, **) raise ArgumentError, 'phantom_id is required' if phantom_id.nil? || phantom_id.to_s.strip.empty? eng = engine || phantom_engine result = eng.acknowledge(phantom_id: phantom_id) log.debug("[cognitive_phantom] acknowledge phantom_id=#{phantom_id[0..7]}") result.merge(success: result[:acknowledged]) rescue ArgumentError => e { success: false, error: e. } end |
#decay_all(engine: nil) ⇒ Object
60 61 62 63 64 65 66 |
# File 'lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb', line 60 def decay_all(engine: nil, **) eng = engine || phantom_engine resolved_count = eng.decay_all! report = eng.phantom_activity_report log.debug("[cognitive_phantom] decay_all resolved=#{resolved_count}") { success: true, resolved_this_cycle: resolved_count, **report } end |
#phantom_status(engine: nil) ⇒ Object
53 54 55 56 57 58 |
# File 'lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb', line 53 def phantom_status(engine: nil, **) eng = engine || phantom_engine report = eng.phantom_activity_report log.debug("[cognitive_phantom] phantom_status total=#{report[:total]} active=#{report[:active]}") { success: true, **report } end |
#process_stimulus(stimulus:, domain: :general, engine: nil) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb', line 26 def process_stimulus(stimulus:, domain: :general, engine: nil, **) raise ArgumentError, 'stimulus is required' if stimulus.nil? eng = engine || phantom_engine fired = eng.process_stimulus(stimulus: stimulus, domain: domain) log.debug("[cognitive_phantom] process_stimulus domain=#{domain} fired=#{fired.size}") { success: true, fired_count: fired.size, signals: fired.map(&:to_h), domain: domain } rescue ArgumentError => e { success: false, error: e. } end |
#register_removal(capability_name:, capability_domain: :general, engine: nil) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 |
# File 'lib/legion/extensions/agentic/defense/phantom/runners/cognitive_phantom.rb', line 13 def register_removal(capability_name:, capability_domain: :general, engine: nil, **) raise ArgumentError, 'capability_name is required' if capability_name.nil? || capability_name.to_s.strip.empty? eng = engine || phantom_engine limb = eng.register_removal(capability_name: capability_name, capability_domain: capability_domain) return { success: false, error: 'MAX_PHANTOMS limit reached' } unless limb log.debug("[cognitive_phantom] register_removal capability=#{capability_name}") { success: true, phantom_id: limb.id, capability_name: capability_name, state: limb.state, intensity: limb.intensity } rescue ArgumentError => e { success: false, error: e. } end |