lex-agentic-affect 0.1.10 → 0.1.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (25) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -3
  3. data/README.md +33 -5
  4. data/lib/legion/extensions/agentic/affect/empathy/actors/decay_models.rb +45 -0
  5. data/lib/legion/extensions/agentic/affect/empathy.rb +1 -0
  6. data/lib/legion/extensions/agentic/affect/fatigue/actors/update_fatigue.rb +45 -0
  7. data/lib/legion/extensions/agentic/affect/fatigue.rb +1 -0
  8. data/lib/legion/extensions/agentic/affect/flow/actors/update_flow.rb +45 -0
  9. data/lib/legion/extensions/agentic/affect/flow.rb +1 -0
  10. data/lib/legion/extensions/agentic/affect/mood/actors/update_mood.rb +45 -0
  11. data/lib/legion/extensions/agentic/affect/mood.rb +1 -0
  12. data/lib/legion/extensions/agentic/affect/motivation/runners/motivation.rb +3 -0
  13. data/lib/legion/extensions/agentic/affect/regulation/actors/regulate_emotion.rb +49 -0
  14. data/lib/legion/extensions/agentic/affect/regulation.rb +1 -0
  15. data/lib/legion/extensions/agentic/affect/resilience/actors/update_resilience.rb +45 -0
  16. data/lib/legion/extensions/agentic/affect/resilience.rb +1 -0
  17. data/lib/legion/extensions/agentic/affect/version.rb +1 -1
  18. data/lib/legion/extensions/agentic/affect.rb +12 -0
  19. data/spec/legion/extensions/agentic/affect/empathy/actors/decay_models_spec.rb +45 -0
  20. data/spec/legion/extensions/agentic/affect/fatigue/actors/update_fatigue_spec.rb +45 -0
  21. data/spec/legion/extensions/agentic/affect/flow/actors/update_flow_spec.rb +46 -0
  22. data/spec/legion/extensions/agentic/affect/mood/actors/update_mood_spec.rb +46 -0
  23. data/spec/legion/extensions/agentic/affect/regulation/actors/regulate_emotion_spec.rb +45 -0
  24. data/spec/legion/extensions/agentic/affect/resilience/actors/update_resilience_spec.rb +45 -0
  25. metadata +13 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c87da09f054216f8da59acfbcff01d1c813cf369392e7b590968a029d8857508
4
- data.tar.gz: aac26942587ce51b06e5436d98b159860613ffef12d3687cd71b5b5f847ee343
3
+ metadata.gz: b1451732e09f9aaebe3c833f3e9edf5923d0081c262d5fa3f1d0ad1392bbf660
4
+ data.tar.gz: deaa140090d9630d0ca749ed5a180e278f5ae8a0fe76b1bd840d1d949051990b
5
5
  SHA512:
6
- metadata.gz: 1e0f0e235c0990bf74ad2b3a788732d1c913f1b59190465c4a05a10837f4f85a26bc3ba824a737523a915fbef7a9fd4df1e8d5cd8cb38414b3042f3f8675a716
7
- data.tar.gz: 9370d612e70221d8ecb3ab7928be1797e30d48062f2b16bd0a2607913486a957def44172ce28001ddd73f0444ed543af685cf17edcb68cf038b09651ca9036e3
6
+ metadata.gz: 5a25e9fb7182dbeecc0c9e290ac6f3f7ba8f2be0b1d16d777b4502f63e98fe827b4ec0af60d303bbd83b10c22baabaec3df015e236bce4aa2c0b042a6cf710ed
7
+ data.tar.gz: d0c7d9f674583d01790199fa0750b036b64457b7a1a37900cabbad600be4a7e3c01bca43d254466ad848cdfd5a0d6c07aabdf43328d1b083263f59ef52e04e63
data/CHANGELOG.md CHANGED
@@ -1,9 +1,16 @@
1
1
  # Changelog
2
2
 
3
- ## [Unreleased]
4
-
3
+ ## [0.1.12] - 2026-04-22
4
+ ### Added
5
+ - 6 new maintenance actors: Mood::Actor::UpdateMood (60s), Flow::Actor::UpdateFlow (30s), Fatigue::Actor::UpdateFatigue (60s), Resilience::Actor::UpdateResilience (120s), Regulation::Actor::RegulateEmotion (60s), Empathy::Actor::DecayModels (300s)
5
6
  ### Fixed
6
- - add missing arousal value to evaluate_valence return hash for GAIA drive synthesis
7
+ - Valence runner: `evaluate_valence` return hash includes both `:valence` and `:arousal` previously missing `arousal` key caused GAIA drive synthesis errors
8
+ - Motivation runner extinction dependency guarded with comment documenting optional cross-extension coupling
9
+
10
+ ## [0.1.11] - 2026-04-15
11
+
12
+ ### Changed
13
+ - Set `mcp_tools?`, `mcp_tools_deferred?`, and `transport_required?` to `false` — this is an internal cognitive pipeline extension, not an LLM-callable tool and does not use AMQP transport directly
7
14
 
8
15
  ## [0.1.9] - 2026-03-31
9
16
 
data/README.md CHANGED
@@ -5,7 +5,7 @@ Domain consolidation gem for emotion, affect, and motivational processing. Bundl
5
5
  ## Overview
6
6
 
7
7
  **Gem**: `lex-agentic-affect`
8
- **Version**: 0.1.1
8
+ **Version**: 0.1.12
9
9
  **Namespace**: `Legion::Extensions::Agentic::Affect`
10
10
 
11
11
  ## Sub-Modules
@@ -32,10 +32,18 @@ Domain consolidation gem for emotion, affect, and motivational processing. Bundl
32
32
 
33
33
  ## Actors
34
34
 
35
- - `Affect::Emotion::Actors::MomentumDecay` runs every 60s, decays emotional momentum via `decay_momentum`
36
- - `Affect::Interoception::Actors::Decay` — interval actor, decays interoceptive body state signals
37
- - `Affect::Reappraisal::Actors::AutoRegulate` runs every 300s, processes pending emotional events
38
- - `Affect::SomaticMarker::Actors::Decay` interval actor, decays somatic marker strength
35
+ | Actor | Interval | What It Does |
36
+ |-------|----------|--------------|
37
+ | `Emotion::Actors::MomentumDecay` | Every 60s | Decays emotional momentum |
38
+ | `Empathy::Actor::DecayModels` | Every 300s | Decays stale mental models in empathy store |
39
+ | `Fatigue::Actor::UpdateFatigue` | Every 60s | Advances fatigue accumulation and recovery |
40
+ | `Flow::Actor::UpdateFlow` | Every 30s | Updates flow state detection |
41
+ | `Interoception::Actors::Decay` | interval | Decays interoceptive body state signals |
42
+ | `Mood::Actor::UpdateMood` | Every 60s | Updates mood baseline |
43
+ | `Reappraisal::Actors::AutoRegulate` | Every 300s | Processes pending emotional events |
44
+ | `Regulation::Actor::RegulateEmotion` | Every 60s | Runs skill decay maintenance (background only — not live regulation) |
45
+ | `Resilience::Actor::UpdateResilience` | Every 120s | Updates resilience and recovery metrics |
46
+ | `SomaticMarker::Actors::Decay` | interval | Decays somatic marker strength |
39
47
 
40
48
  ## Installation
41
49
 
@@ -43,6 +51,26 @@ Domain consolidation gem for emotion, affect, and motivational processing. Bundl
43
51
  gem 'lex-agentic-affect'
44
52
  ```
45
53
 
54
+ ## Usage
55
+
56
+ ```ruby
57
+ require 'legion/extensions/agentic/affect'
58
+
59
+ # Signal a drive
60
+ motivation = Legion::Extensions::Agentic::Affect::Motivation::Client.new
61
+ motivation.signal_drive(drive: :novelty, signal: 0.8)
62
+ motivation.commit_to_goal(goal_id: 'explore_codebase', drives: [:novelty, :competence])
63
+
64
+ # Check motivation state
65
+ motivation.drive_status
66
+ # => { drives: { novelty: { level: 0.8, satisfied: false }, ... }, mode: :motivated, overall: 0.65 }
67
+ ```
68
+
69
+ ## Notes
70
+
71
+ - `Affect::Motivation` reads an optional `:extinction` key from `tick_results` (from `lex-agentic-defense`) to update the survival drive. This dependency is guarded with `defined?()` and the gem works without it.
72
+ - `Regulation::Actor::RegulateEmotion` calls `update_emotional_regulation` (skill decay), not `regulate_emotion` which requires a live emotion signal and cannot be safely called as a background tick.
73
+
46
74
  ## Development
47
75
 
48
76
  ```bash
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Empathy
10
+ module Actor
11
+ class DecayModels < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
12
+ def runner_class
13
+ Legion::Extensions::Agentic::Affect::Empathy::Runners::Empathy
14
+ end
15
+
16
+ def runner_function
17
+ 'decay_models'
18
+ end
19
+
20
+ def time
21
+ 300
22
+ end
23
+
24
+ def run_now?
25
+ false
26
+ end
27
+
28
+ def use_runner?
29
+ false
30
+ end
31
+
32
+ def check_subtask?
33
+ false
34
+ end
35
+
36
+ def generate_task?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -6,6 +6,7 @@ require 'legion/extensions/agentic/affect/empathy/helpers/constants'
6
6
  require 'legion/extensions/agentic/affect/empathy/helpers/mental_model'
7
7
  require 'legion/extensions/agentic/affect/empathy/helpers/model_store'
8
8
  require 'legion/extensions/agentic/affect/empathy/runners/empathy'
9
+ require 'legion/extensions/agentic/affect/empathy/actors/decay_models'
9
10
  require 'legion/extensions/agentic/affect/empathy/client'
10
11
 
11
12
  module Legion
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Fatigue
10
+ module Actor
11
+ class UpdateFatigue < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
12
+ def runner_class
13
+ Legion::Extensions::Agentic::Affect::Fatigue::Runners::Fatigue
14
+ end
15
+
16
+ def runner_function
17
+ 'update_fatigue'
18
+ end
19
+
20
+ def time
21
+ 60
22
+ end
23
+
24
+ def run_now?
25
+ false
26
+ end
27
+
28
+ def use_runner?
29
+ false
30
+ end
31
+
32
+ def check_subtask?
33
+ false
34
+ end
35
+
36
+ def generate_task?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -5,6 +5,7 @@ require 'legion/extensions/agentic/affect/fatigue/helpers/constants'
5
5
  require 'legion/extensions/agentic/affect/fatigue/helpers/energy_model'
6
6
  require 'legion/extensions/agentic/affect/fatigue/helpers/fatigue_store'
7
7
  require 'legion/extensions/agentic/affect/fatigue/runners/fatigue'
8
+ require 'legion/extensions/agentic/affect/fatigue/actors/update_fatigue'
8
9
  require 'legion/extensions/agentic/affect/fatigue/client'
9
10
 
10
11
  module Legion
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Flow
10
+ module Actor
11
+ class UpdateFlow < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
12
+ def runner_class
13
+ Legion::Extensions::Agentic::Affect::Flow::Runners::Flow
14
+ end
15
+
16
+ def runner_function
17
+ 'update_flow'
18
+ end
19
+
20
+ def time
21
+ 30
22
+ end
23
+
24
+ def run_now?
25
+ false
26
+ end
27
+
28
+ def use_runner?
29
+ false
30
+ end
31
+
32
+ def check_subtask?
33
+ false
34
+ end
35
+
36
+ def generate_task?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -4,6 +4,7 @@ require 'legion/extensions/agentic/affect/flow/version'
4
4
  require 'legion/extensions/agentic/affect/flow/helpers/constants'
5
5
  require 'legion/extensions/agentic/affect/flow/helpers/flow_detector'
6
6
  require 'legion/extensions/agentic/affect/flow/runners/flow'
7
+ require 'legion/extensions/agentic/affect/flow/actors/update_flow'
7
8
  require 'legion/extensions/agentic/affect/flow/client'
8
9
 
9
10
  module Legion
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Mood
10
+ module Actor
11
+ class UpdateMood < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
12
+ def runner_class
13
+ Legion::Extensions::Agentic::Affect::Mood::Runners::Mood
14
+ end
15
+
16
+ def runner_function
17
+ 'update_mood'
18
+ end
19
+
20
+ def time
21
+ 60
22
+ end
23
+
24
+ def run_now?
25
+ false
26
+ end
27
+
28
+ def use_runner?
29
+ false
30
+ end
31
+
32
+ def check_subtask?
33
+ false
34
+ end
35
+
36
+ def generate_task?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -4,6 +4,7 @@ require 'legion/extensions/agentic/affect/mood/version'
4
4
  require 'legion/extensions/agentic/affect/mood/helpers/constants'
5
5
  require 'legion/extensions/agentic/affect/mood/helpers/mood_state'
6
6
  require 'legion/extensions/agentic/affect/mood/runners/mood'
7
+ require 'legion/extensions/agentic/affect/mood/actors/update_mood'
7
8
  require 'legion/extensions/agentic/affect/mood/client'
8
9
 
9
10
  module Legion
@@ -150,6 +150,9 @@ module Legion
150
150
  end
151
151
 
152
152
  def extract_survival_signal(tick_results)
153
+ # Optional dependency: lex-agentic-defense Extinction subsystem.
154
+ # dig returns nil safely when :extinction or :level is absent; the
155
+ # guard below ensures we skip the update rather than raise.
153
156
  extinction_level = tick_results.dig(:extinction, :level)
154
157
  return unless extinction_level
155
158
 
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Regulation
10
+ module Actor
11
+ # Periodic emotional regulation maintenance actor.
12
+ # Calls update_emotional_regulation which performs skill decay — no live emotion
13
+ # inputs are required. regulate_emotion itself requires emotion_magnitude: and
14
+ # cannot be safely invoked as a background tick without a signal source.
15
+ class RegulateEmotion < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
16
+ def runner_class
17
+ Legion::Extensions::Agentic::Affect::Regulation::Runners::EmotionalRegulation
18
+ end
19
+
20
+ def runner_function
21
+ 'update_emotional_regulation'
22
+ end
23
+
24
+ def time
25
+ 60
26
+ end
27
+
28
+ def run_now?
29
+ false
30
+ end
31
+
32
+ def use_runner?
33
+ false
34
+ end
35
+
36
+ def check_subtask?
37
+ false
38
+ end
39
+
40
+ def generate_task?
41
+ false
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
49
+ end
@@ -4,6 +4,7 @@ require 'legion/extensions/agentic/affect/regulation/version'
4
4
  require 'legion/extensions/agentic/affect/regulation/helpers/constants'
5
5
  require 'legion/extensions/agentic/affect/regulation/helpers/regulation_model'
6
6
  require 'legion/extensions/agentic/affect/regulation/runners/emotional_regulation'
7
+ require 'legion/extensions/agentic/affect/regulation/actors/regulate_emotion'
7
8
  require 'legion/extensions/agentic/affect/regulation/client'
8
9
 
9
10
  module Legion
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'legion/extensions/actors/every'
4
+
5
+ module Legion
6
+ module Extensions
7
+ module Agentic
8
+ module Affect
9
+ module Resilience
10
+ module Actor
11
+ class UpdateResilience < Legion::Extensions::Actors::Every # rubocop:disable Legion/Extension/EveryActorRequiresTime
12
+ def runner_class
13
+ Legion::Extensions::Agentic::Affect::Resilience::Runners::Resilience
14
+ end
15
+
16
+ def runner_function
17
+ 'update_resilience'
18
+ end
19
+
20
+ def time
21
+ 120
22
+ end
23
+
24
+ def run_now?
25
+ false
26
+ end
27
+
28
+ def use_runner?
29
+ false
30
+ end
31
+
32
+ def check_subtask?
33
+ false
34
+ end
35
+
36
+ def generate_task?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
@@ -5,6 +5,7 @@ require 'legion/extensions/agentic/affect/resilience/helpers/constants'
5
5
  require 'legion/extensions/agentic/affect/resilience/helpers/adversity_tracker'
6
6
  require 'legion/extensions/agentic/affect/resilience/helpers/resilience_model'
7
7
  require 'legion/extensions/agentic/affect/resilience/runners/resilience'
8
+ require 'legion/extensions/agentic/affect/resilience/actors/update_resilience'
8
9
  require 'legion/extensions/agentic/affect/resilience/client'
9
10
 
10
11
  module Legion
@@ -4,7 +4,7 @@ module Legion
4
4
  module Extensions
5
5
  module Agentic
6
6
  module Affect
7
- VERSION = '0.1.10'
7
+ VERSION = '0.1.12'
8
8
  end
9
9
  end
10
10
  end
@@ -29,6 +29,18 @@ module Legion
29
29
  def self.remote_invocable?
30
30
  false
31
31
  end
32
+
33
+ def self.mcp_tools?
34
+ false
35
+ end
36
+
37
+ def self.mcp_tools_deferred?
38
+ false
39
+ end
40
+
41
+ def self.transport_required?
42
+ false
43
+ end
32
44
  end
33
45
  end
34
46
  end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every; end # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+
11
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
12
+
13
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/empathy/actors/decay_models'
14
+
15
+ RSpec.describe Legion::Extensions::Agentic::Affect::Empathy::Actor::DecayModels do
16
+ subject(:actor) { described_class.new }
17
+
18
+ describe '#runner_class' do
19
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Empathy::Runners::Empathy }
20
+ end
21
+
22
+ describe '#runner_function' do
23
+ it { expect(actor.runner_function).to eq 'decay_models' }
24
+ end
25
+
26
+ describe '#time' do
27
+ it { expect(actor.time).to eq 300 }
28
+ end
29
+
30
+ describe '#run_now?' do
31
+ it { expect(actor.run_now?).to be false }
32
+ end
33
+
34
+ describe '#use_runner?' do
35
+ it { expect(actor.use_runner?).to be false }
36
+ end
37
+
38
+ describe '#check_subtask?' do
39
+ it { expect(actor.check_subtask?).to be false }
40
+ end
41
+
42
+ describe '#generate_task?' do
43
+ it { expect(actor.generate_task?).to be false }
44
+ end
45
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every; end # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+
11
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
12
+
13
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/fatigue/actors/update_fatigue'
14
+
15
+ RSpec.describe Legion::Extensions::Agentic::Affect::Fatigue::Actor::UpdateFatigue do
16
+ subject(:actor) { described_class.new }
17
+
18
+ describe '#runner_class' do
19
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Fatigue::Runners::Fatigue }
20
+ end
21
+
22
+ describe '#runner_function' do
23
+ it { expect(actor.runner_function).to eq 'update_fatigue' }
24
+ end
25
+
26
+ describe '#time' do
27
+ it { expect(actor.time).to eq 60 }
28
+ end
29
+
30
+ describe '#run_now?' do
31
+ it { expect(actor.run_now?).to be false }
32
+ end
33
+
34
+ describe '#use_runner?' do
35
+ it { expect(actor.use_runner?).to be false }
36
+ end
37
+
38
+ describe '#check_subtask?' do
39
+ it { expect(actor.check_subtask?).to be false }
40
+ end
41
+
42
+ describe '#generate_task?' do
43
+ it { expect(actor.generate_task?).to be false }
44
+ end
45
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+ end
11
+
12
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
13
+
14
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/flow/actors/update_flow'
15
+
16
+ RSpec.describe Legion::Extensions::Agentic::Affect::Flow::Actor::UpdateFlow do
17
+ subject(:actor) { described_class.new }
18
+
19
+ describe '#runner_class' do
20
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Flow::Runners::Flow }
21
+ end
22
+
23
+ describe '#runner_function' do
24
+ it { expect(actor.runner_function).to eq 'update_flow' }
25
+ end
26
+
27
+ describe '#time' do
28
+ it { expect(actor.time).to eq 30 }
29
+ end
30
+
31
+ describe '#run_now?' do
32
+ it { expect(actor.run_now?).to be false }
33
+ end
34
+
35
+ describe '#use_runner?' do
36
+ it { expect(actor.use_runner?).to be false }
37
+ end
38
+
39
+ describe '#check_subtask?' do
40
+ it { expect(actor.check_subtask?).to be false }
41
+ end
42
+
43
+ describe '#generate_task?' do
44
+ it { expect(actor.generate_task?).to be false }
45
+ end
46
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+ end
11
+
12
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
13
+
14
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/mood/actors/update_mood'
15
+
16
+ RSpec.describe Legion::Extensions::Agentic::Affect::Mood::Actor::UpdateMood do
17
+ subject(:actor) { described_class.new }
18
+
19
+ describe '#runner_class' do
20
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Mood::Runners::Mood }
21
+ end
22
+
23
+ describe '#runner_function' do
24
+ it { expect(actor.runner_function).to eq 'update_mood' }
25
+ end
26
+
27
+ describe '#time' do
28
+ it { expect(actor.time).to eq 60 }
29
+ end
30
+
31
+ describe '#run_now?' do
32
+ it { expect(actor.run_now?).to be false }
33
+ end
34
+
35
+ describe '#use_runner?' do
36
+ it { expect(actor.use_runner?).to be false }
37
+ end
38
+
39
+ describe '#check_subtask?' do
40
+ it { expect(actor.check_subtask?).to be false }
41
+ end
42
+
43
+ describe '#generate_task?' do
44
+ it { expect(actor.generate_task?).to be false }
45
+ end
46
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every; end # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+
11
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
12
+
13
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/regulation/actors/regulate_emotion'
14
+
15
+ RSpec.describe Legion::Extensions::Agentic::Affect::Regulation::Actor::RegulateEmotion do
16
+ subject(:actor) { described_class.new }
17
+
18
+ describe '#runner_class' do
19
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Regulation::Runners::EmotionalRegulation }
20
+ end
21
+
22
+ describe '#runner_function' do
23
+ it { expect(actor.runner_function).to eq 'update_emotional_regulation' }
24
+ end
25
+
26
+ describe '#time' do
27
+ it { expect(actor.time).to eq 60 }
28
+ end
29
+
30
+ describe '#run_now?' do
31
+ it { expect(actor.run_now?).to be false }
32
+ end
33
+
34
+ describe '#use_runner?' do
35
+ it { expect(actor.use_runner?).to be false }
36
+ end
37
+
38
+ describe '#check_subtask?' do
39
+ it { expect(actor.check_subtask?).to be false }
40
+ end
41
+
42
+ describe '#generate_task?' do
43
+ it { expect(actor.generate_task?).to be false }
44
+ end
45
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Legion
4
+ module Extensions
5
+ module Actors
6
+ class Every; end # rubocop:disable Lint/EmptyClass
7
+ end
8
+ end
9
+ end
10
+
11
+ $LOADED_FEATURES << 'legion/extensions/actors/every'
12
+
13
+ require_relative '../../../../../../../lib/legion/extensions/agentic/affect/resilience/actors/update_resilience'
14
+
15
+ RSpec.describe Legion::Extensions::Agentic::Affect::Resilience::Actor::UpdateResilience do
16
+ subject(:actor) { described_class.new }
17
+
18
+ describe '#runner_class' do
19
+ it { expect(actor.runner_class).to eq Legion::Extensions::Agentic::Affect::Resilience::Runners::Resilience }
20
+ end
21
+
22
+ describe '#runner_function' do
23
+ it { expect(actor.runner_function).to eq 'update_resilience' }
24
+ end
25
+
26
+ describe '#time' do
27
+ it { expect(actor.time).to eq 120 }
28
+ end
29
+
30
+ describe '#run_now?' do
31
+ it { expect(actor.run_now?).to be false }
32
+ end
33
+
34
+ describe '#use_runner?' do
35
+ it { expect(actor.use_runner?).to be false }
36
+ end
37
+
38
+ describe '#check_subtask?' do
39
+ it { expect(actor.check_subtask?).to be false }
40
+ end
41
+
42
+ describe '#generate_task?' do
43
+ it { expect(actor.generate_task?).to be false }
44
+ end
45
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-agentic-affect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity
@@ -200,6 +200,7 @@ files:
200
200
  - lib/legion/extensions/agentic/affect/emotion/runners/valence.rb
201
201
  - lib/legion/extensions/agentic/affect/emotion/version.rb
202
202
  - lib/legion/extensions/agentic/affect/empathy.rb
203
+ - lib/legion/extensions/agentic/affect/empathy/actors/decay_models.rb
203
204
  - lib/legion/extensions/agentic/affect/empathy/client.rb
204
205
  - lib/legion/extensions/agentic/affect/empathy/helpers/constants.rb
205
206
  - lib/legion/extensions/agentic/affect/empathy/helpers/mental_model.rb
@@ -207,6 +208,7 @@ files:
207
208
  - lib/legion/extensions/agentic/affect/empathy/runners/empathy.rb
208
209
  - lib/legion/extensions/agentic/affect/empathy/version.rb
209
210
  - lib/legion/extensions/agentic/affect/fatigue.rb
211
+ - lib/legion/extensions/agentic/affect/fatigue/actors/update_fatigue.rb
210
212
  - lib/legion/extensions/agentic/affect/fatigue/client.rb
211
213
  - lib/legion/extensions/agentic/affect/fatigue/helpers/constants.rb
212
214
  - lib/legion/extensions/agentic/affect/fatigue/helpers/energy_model.rb
@@ -214,6 +216,7 @@ files:
214
216
  - lib/legion/extensions/agentic/affect/fatigue/runners/fatigue.rb
215
217
  - lib/legion/extensions/agentic/affect/fatigue/version.rb
216
218
  - lib/legion/extensions/agentic/affect/flow.rb
219
+ - lib/legion/extensions/agentic/affect/flow/actors/update_flow.rb
217
220
  - lib/legion/extensions/agentic/affect/flow/client.rb
218
221
  - lib/legion/extensions/agentic/affect/flow/helpers/constants.rb
219
222
  - lib/legion/extensions/agentic/affect/flow/helpers/flow_detector.rb
@@ -228,6 +231,7 @@ files:
228
231
  - lib/legion/extensions/agentic/affect/interoception/runners/interoception.rb
229
232
  - lib/legion/extensions/agentic/affect/interoception/version.rb
230
233
  - lib/legion/extensions/agentic/affect/mood.rb
234
+ - lib/legion/extensions/agentic/affect/mood/actors/update_mood.rb
231
235
  - lib/legion/extensions/agentic/affect/mood/client.rb
232
236
  - lib/legion/extensions/agentic/affect/mood/helpers/constants.rb
233
237
  - lib/legion/extensions/agentic/affect/mood/helpers/mood_state.rb
@@ -251,12 +255,14 @@ files:
251
255
  - lib/legion/extensions/agentic/affect/reappraisal/runners/cognitive_reappraisal.rb
252
256
  - lib/legion/extensions/agentic/affect/reappraisal/version.rb
253
257
  - lib/legion/extensions/agentic/affect/regulation.rb
258
+ - lib/legion/extensions/agentic/affect/regulation/actors/regulate_emotion.rb
254
259
  - lib/legion/extensions/agentic/affect/regulation/client.rb
255
260
  - lib/legion/extensions/agentic/affect/regulation/helpers/constants.rb
256
261
  - lib/legion/extensions/agentic/affect/regulation/helpers/regulation_model.rb
257
262
  - lib/legion/extensions/agentic/affect/regulation/runners/emotional_regulation.rb
258
263
  - lib/legion/extensions/agentic/affect/regulation/version.rb
259
264
  - lib/legion/extensions/agentic/affect/resilience.rb
265
+ - lib/legion/extensions/agentic/affect/resilience/actors/update_resilience.rb
260
266
  - lib/legion/extensions/agentic/affect/resilience/client.rb
261
267
  - lib/legion/extensions/agentic/affect/resilience/helpers/adversity_tracker.rb
262
268
  - lib/legion/extensions/agentic/affect/resilience/helpers/constants.rb
@@ -317,6 +323,7 @@ files:
317
323
  - spec/legion/extensions/agentic/affect/emotion/runners/gut_spec.rb
318
324
  - spec/legion/extensions/agentic/affect/emotion/runners/valence_partner_absence_spec.rb
319
325
  - spec/legion/extensions/agentic/affect/emotion/runners/valence_spec.rb
326
+ - spec/legion/extensions/agentic/affect/empathy/actors/decay_models_spec.rb
320
327
  - spec/legion/extensions/agentic/affect/empathy/client_spec.rb
321
328
  - spec/legion/extensions/agentic/affect/empathy/helpers/constants_spec.rb
322
329
  - spec/legion/extensions/agentic/affect/empathy/helpers/mental_model_spec.rb
@@ -324,11 +331,13 @@ files:
324
331
  - spec/legion/extensions/agentic/affect/empathy/helpers/model_store_spec.rb
325
332
  - spec/legion/extensions/agentic/affect/empathy/runners/empathy_human_obs_spec.rb
326
333
  - spec/legion/extensions/agentic/affect/empathy/runners/empathy_spec.rb
334
+ - spec/legion/extensions/agentic/affect/fatigue/actors/update_fatigue_spec.rb
327
335
  - spec/legion/extensions/agentic/affect/fatigue/client_spec.rb
328
336
  - spec/legion/extensions/agentic/affect/fatigue/helpers/constants_spec.rb
329
337
  - spec/legion/extensions/agentic/affect/fatigue/helpers/energy_model_spec.rb
330
338
  - spec/legion/extensions/agentic/affect/fatigue/helpers/fatigue_store_spec.rb
331
339
  - spec/legion/extensions/agentic/affect/fatigue/runners/fatigue_spec.rb
340
+ - spec/legion/extensions/agentic/affect/flow/actors/update_flow_spec.rb
332
341
  - spec/legion/extensions/agentic/affect/flow/client_spec.rb
333
342
  - spec/legion/extensions/agentic/affect/flow/helpers/constants_spec.rb
334
343
  - spec/legion/extensions/agentic/affect/flow/helpers/flow_detector_spec.rb
@@ -337,6 +346,7 @@ files:
337
346
  - spec/legion/extensions/agentic/affect/interoception/helpers/body_budget_spec.rb
338
347
  - spec/legion/extensions/agentic/affect/interoception/helpers/somatic_marker_spec.rb
339
348
  - spec/legion/extensions/agentic/affect/interoception/runners/interoception_spec.rb
349
+ - spec/legion/extensions/agentic/affect/mood/actors/update_mood_spec.rb
340
350
  - spec/legion/extensions/agentic/affect/mood/client_spec.rb
341
351
  - spec/legion/extensions/agentic/affect/mood/helpers/constants_spec.rb
342
352
  - spec/legion/extensions/agentic/affect/mood/helpers/mood_state_apollo_spec.rb
@@ -355,10 +365,12 @@ files:
355
365
  - spec/legion/extensions/agentic/affect/reappraisal/helpers/llm_enhancer_spec.rb
356
366
  - spec/legion/extensions/agentic/affect/reappraisal/helpers/reappraisal_engine_spec.rb
357
367
  - spec/legion/extensions/agentic/affect/reappraisal/runners/cognitive_reappraisal_spec.rb
368
+ - spec/legion/extensions/agentic/affect/regulation/actors/regulate_emotion_spec.rb
358
369
  - spec/legion/extensions/agentic/affect/regulation/client_spec.rb
359
370
  - spec/legion/extensions/agentic/affect/regulation/helpers/constants_spec.rb
360
371
  - spec/legion/extensions/agentic/affect/regulation/helpers/regulation_model_spec.rb
361
372
  - spec/legion/extensions/agentic/affect/regulation/runners/emotional_regulation_spec.rb
373
+ - spec/legion/extensions/agentic/affect/resilience/actors/update_resilience_spec.rb
362
374
  - spec/legion/extensions/agentic/affect/resilience/client_spec.rb
363
375
  - spec/legion/extensions/agentic/affect/resilience/helpers/adversity_tracker_spec.rb
364
376
  - spec/legion/extensions/agentic/affect/resilience/helpers/constants_spec.rb