lex-synapse 0.4.1 → 0.4.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4a9d8a3b5e13c6470c2170ca639e04e1fc8aedc0d596ff709ec9324334374e51
4
- data.tar.gz: ecc92ce72c7ec61129495e1b290dbfb1e5df7353c6ce8b9a9ef974f146fbfa9f
3
+ metadata.gz: 0fd3abbde7ec695013ddfe41801f8da65b8513f87fb6bc7e2648238728f5d19a
4
+ data.tar.gz: 67081b1e1ffb5b043f5c5123788d81289b01760a23626e220571fff8799a6c7f
5
5
  SHA512:
6
- metadata.gz: bf1e6f5ffe926a283d8e5278cc12546e57e3183b8893604c7b20ca81a57e2b5b571b28ce6448370e4e24576ff62dc55916a5080fd864e67e3814951f93b5ed69
7
- data.tar.gz: 7995dee982eda776e8f847ba73202131a5c5fb01f0198193ef9dd5f3bed7d45677be196a76a65b19d4518bd3f41265ddb5622c587cced160cd94164d59771793
6
+ metadata.gz: 3aa579de0a149d2c9e75725b8b444d387130e39c870d61bc6e6c5740ade2d55867f5642bd1da354d156db74f01f20e6ab8e5284fd565150c5eb227c34277d0e6
7
+ data.tar.gz: ce0f497bc6eb45c32a45ae1be1adb56feac5ac43574ae53ab0fa9b44546e6c336fd8dfe1b99fa330f98f265b920a70eef0d1d564cfb0eb147737779535846801
data/CHANGELOG.md CHANGED
@@ -1,9 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.4.2] - 2026-03-22
4
+
5
+ ### Fixed
6
+ - Add `include Helpers::Lex` to Crystallize, Challenge, Evaluate, Pain, and Propose runners so methods are callable at module level by framework actor auto-dispatch
7
+
3
8
  ## [0.4.1] - 2026-03-22
4
9
 
5
10
  ### Fixed
6
- - Challenge and Propose actors now include their runner modules and override `runner_class` to return `self.class`, fixing `NoMethodError: undefined method 'run_challenge_cycle'` at runtime
11
+ - Challenge, Propose, and Crystallize actors now include their runner modules and override `runner_class` to return `self.class`, fixing `NoMethodError` at runtime
12
+ - Decay actor converted to self-contained pattern (like Homeostasis) — no `Runners::Decay` module existed
7
13
 
8
14
  ## [0.4.0] - 2026-03-22
9
15
 
@@ -1,10 +1,16 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative '../runners/crystallize'
4
+
3
5
  module Legion
4
6
  module Extensions
5
7
  module Synapse
6
8
  module Actor
7
9
  class Crystallize < Legion::Extensions::Actors::Every
10
+ include Legion::Extensions::Synapse::Runners::Crystallize
11
+
12
+ def runner_class = self.class
13
+
8
14
  def runner_function
9
15
  'crystallize'
10
16
  end
@@ -5,24 +5,27 @@ module Legion
5
5
  module Synapse
6
6
  module Actor
7
7
  class Decay < Legion::Extensions::Actors::Every
8
- def runner_function
9
- 'apply_decay'
10
- end
8
+ def runner_class = self.class
9
+ def time = 3600
10
+ def use_runner? = false
11
+ def check_subtask? = false
12
+ def generate_task? = false
11
13
 
12
- def time
13
- 3600
14
- end
14
+ def action(**_opts)
15
+ return { status: :skipped, reason: :no_data } unless defined?(Legion::Data)
15
16
 
16
- def use_runner?
17
- false
18
- end
17
+ Data::Model.define_synapse_model
18
+ decayed = 0
19
19
 
20
- def check_subtask?
21
- false
22
- end
20
+ Data::Model::Synapse.where(status: 'active').each do |synapse|
21
+ new_conf = Helpers::Confidence.decay(synapse.confidence, hours: 1)
22
+ next if new_conf == synapse.confidence
23
+
24
+ synapse.update(confidence: new_conf)
25
+ decayed += 1
26
+ end
23
27
 
24
- def generate_task?
25
- false
28
+ { decayed: decayed }
26
29
  end
27
30
  end
28
31
  end
@@ -242,6 +242,8 @@ module Legion
242
242
 
243
243
  recent.first.challenger_confidence
244
244
  end
245
+
246
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
245
247
  end
246
248
  end
247
249
  end
@@ -39,6 +39,8 @@ module Legion
39
39
  target_function_id: target_id
40
40
  ).any?
41
41
  end
42
+
43
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
42
44
  end
43
45
  end
44
46
  end
@@ -112,6 +112,8 @@ module Legion
112
112
  latency_ms: latency_ms.to_i
113
113
  )
114
114
  end
115
+
116
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
115
117
  end
116
118
  end
117
119
  end
@@ -73,6 +73,8 @@ module Legion
73
73
  baseline_signals = [synapse.baseline_throughput * 5, 5].max
74
74
  recent > (baseline_signals * 2)
75
75
  end
76
+
77
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
76
78
  end
77
79
  end
78
80
  end
@@ -246,6 +246,8 @@ module Legion
246
246
  "There have been #{recent_failures.size} downstream failures despite attention passing. " \
247
247
  'Suggest refined attention rules as a JSON condition object. Return only JSON.'
248
248
  end
249
+
250
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
249
251
  end
250
252
  end
251
253
  end
@@ -3,7 +3,7 @@
3
3
  module Legion
4
4
  module Extensions
5
5
  module Synapse
6
- VERSION = '0.4.1'
6
+ VERSION = '0.4.2'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-synapse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity