Module: Legion::Extensions::Agentic::Homeostasis::Metabolism::Runners::CognitiveMetabolism
- Includes:
- Helpers::Lex
- Included in:
- Client
- Defined in:
- lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb
Instance Method Summary collapse
- #anabolize(reserve_id:, energy_cost: 5.0) ⇒ Object
- #catabolize(reserve_id:, complexity: 1.0) ⇒ Object
- #create_reserve(max_energy: Helpers::Constants::MAX_ENERGY, metabolic_rate: Helpers::Constants::RESTING_METABOLIC_RATE, efficiency: 1.0) ⇒ Object
- #metabolic_status(reserve_id:) ⇒ Object
- #recover(reserve_id:, duration: 1.0) ⇒ Object
- #run_cycle(reserve_id:, operations: []) ⇒ Object
- #spend_energy(reserve_id:, operation_type:) ⇒ Object
Instance Method Details
#anabolize(reserve_id:, energy_cost: 5.0) ⇒ Object
50 51 52 53 54 55 56 57 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 50 def anabolize(reserve_id:, energy_cost: 5.0, **) result = engine.anabolize(reserve_id: reserve_id, energy_cost: energy_cost) log.debug("[cognitive_metabolism] anabolize: reserve=#{reserve_id} " \ "cost=#{energy_cost} value=#{result[:structure_value]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |
#catabolize(reserve_id:, complexity: 1.0) ⇒ Object
41 42 43 44 45 46 47 48 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 41 def catabolize(reserve_id:, complexity: 1.0, **) result = engine.catabolize(reserve_id: reserve_id, complexity: complexity) log.debug("[cognitive_metabolism] catabolize: reserve=#{reserve_id} " \ "complexity=#{complexity} gained=#{result[:energy_gained]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |
#create_reserve(max_energy: Helpers::Constants::MAX_ENERGY, metabolic_rate: Helpers::Constants::RESTING_METABOLIC_RATE, efficiency: 1.0) ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 13 def create_reserve(max_energy: Helpers::Constants::MAX_ENERGY, metabolic_rate: Helpers::Constants::RESTING_METABOLIC_RATE, efficiency: 1.0, **) reserve = engine.create_reserve(max_energy: max_energy, metabolic_rate: , efficiency: efficiency) log.debug("[cognitive_metabolism] reserve created: id=#{reserve.id} max_energy=#{reserve.max_energy}") { success: true, reserve: reserve.to_h } rescue ArgumentError => e { success: false, error: e. } end |
#metabolic_status(reserve_id:) ⇒ Object
59 60 61 62 63 64 65 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 59 def (reserve_id:, **) result = engine.(reserve_id: reserve_id) log.debug("[cognitive_metabolism] status: reserve=#{reserve_id} state=#{result[:reserve][:state]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |
#recover(reserve_id:, duration: 1.0) ⇒ Object
32 33 34 35 36 37 38 39 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 32 def recover(reserve_id:, duration: 1.0, **) result = engine.recover(reserve_id: reserve_id, duration: duration) log.debug("[cognitive_metabolism] recover: reserve=#{reserve_id} " \ "gained=#{result[:energy_gained]} state=#{result[:state]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |
#run_cycle(reserve_id:, operations: []) ⇒ Object
67 68 69 70 71 72 73 74 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 67 def run_cycle(reserve_id:, operations: [], **) result = engine.run_cycle(reserve_id: reserve_id, operations: operations) log.debug("[cognitive_metabolism] cycle: reserve=#{reserve_id} " \ "ops=#{result[:cycle_count]} spent=#{result[:energy_spent_this_cycle]} state=#{result[:reserve_state]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |
#spend_energy(reserve_id:, operation_type:) ⇒ Object
23 24 25 26 27 28 29 30 |
# File 'lib/legion/extensions/agentic/homeostasis/metabolism/runners/cognitive_metabolism.rb', line 23 def spend_energy(reserve_id:, operation_type:, **) result = engine.spend_energy(reserve_id: reserve_id, operation_type: operation_type) log.debug("[cognitive_metabolism] spend: reserve=#{reserve_id} op=#{operation_type} " \ "spent=#{result[:actual_spent]} state=#{result[:state]}") { success: true }.merge(result) rescue ArgumentError => e { success: false, error: e. } end |