lex-llm-mlx 0.3.7 → 0.3.8

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: ddbc30a66deeb8a43b0801bdc7c63e3388ef12a6be22ef1ecf390c588af89be2
4
- data.tar.gz: eaecfe996293eec9607012f9e6aaa66af047021502d62eeb2cef34b309816bd8
3
+ metadata.gz: 8c8354f75f1c60440525ccd50a2db7460fc078a2d6e8c1b831d3ce842668a71b
4
+ data.tar.gz: ab0e2e741551a033851685c8b2ad32d52a3d0addef5c17c36bd7a496d5aad8ff
5
5
  SHA512:
6
- metadata.gz: '0218f8982051c9a54b16c36442545052b36b88670e01548487bcab93572c46f012b447c5936f267e9d5b0b54c321dd30c24a3aef2395fbd08e8f501cc9304900'
7
- data.tar.gz: 2763d809a2806f44fed3fb282c4679bfbb1c9b1c8d192fa41c90ac24d55cdd88fc435a8ce3e91822c9e79c595e94518eb49040ec2210e2beb4e070769e744d98
6
+ metadata.gz: 1e7f880272085c55b6197e3013e1b5c44e6aa8baefdcd8c060b74f7a1cb96eeba8322360d3997f6b2c367286fd43e9f1b0ee6fa5c79fac4915e7dcd4535d89f4
7
+ data.tar.gz: 67b196e176f19ad2eff3c18c8eb072226b56d578a20603d7fe0c7f1daa7079b1ccd1310b9c0c0b09808ad7a0a10d5a3a73b8112be68da8b86199b97a1f1ee639
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.8 - 2026-06-02
4
+
5
+ - Add per-provider scoped discovery refresh actor
6
+
3
7
  ## 0.3.7 - 2026-05-21
4
8
 
5
9
  - Add `default_transport`/`default_tier` class declarations
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ begin
4
+ require 'legion/extensions/actors/every'
5
+ rescue LoadError => e
6
+ warn(e.message) if $VERBOSE
7
+ end
8
+
9
+ return unless defined?(Legion::Extensions::Actors::Every)
10
+
11
+ module Legion
12
+ module Extensions
13
+ module Llm
14
+ module Mlx
15
+ module Actor
16
+ class DiscoveryRefresh < Legion::Extensions::Actors::Every # rubocop:disable Style/Documentation
17
+ include Legion::Logging::Helper
18
+
19
+ REFRESH_INTERVAL = 1800
20
+
21
+ def runner_class = self.class
22
+ def runner_function = 'manual'
23
+ def run_now? = true
24
+ def use_runner? = false
25
+ def check_subtask? = false
26
+ def generate_task? = false
27
+
28
+ def time
29
+ return REFRESH_INTERVAL unless defined?(Legion::Settings)
30
+
31
+ Legion::Settings.dig(:extensions, :llm, :mlx, :discovery_interval) || REFRESH_INTERVAL
32
+ end
33
+
34
+ def manual
35
+ log.debug('[mlx][discovery_refresh] refreshing model list')
36
+ return unless defined?(Legion::LLM::Discovery)
37
+
38
+ Legion::LLM::Discovery.refresh_discovered_models!(provider: :mlx)
39
+ rescue StandardError => e
40
+ handle_exception(e, level: :warn, handled: true, operation: 'mlx.actor.discovery_refresh')
41
+ end
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -4,7 +4,7 @@ module Legion
4
4
  module Extensions
5
5
  module Llm
6
6
  module Mlx
7
- VERSION = '0.3.7'
7
+ VERSION = '0.3.8'
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-llm-mlx
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.7
4
+ version: 0.3.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - LegionIO
@@ -97,6 +97,7 @@ files:
97
97
  - README.md
98
98
  - lex-llm-mlx.gemspec
99
99
  - lib/legion/extensions/llm/mlx.rb
100
+ - lib/legion/extensions/llm/mlx/actors/discovery_refresh.rb
100
101
  - lib/legion/extensions/llm/mlx/actors/fleet_worker.rb
101
102
  - lib/legion/extensions/llm/mlx/provider.rb
102
103
  - lib/legion/extensions/llm/mlx/runners/fleet_worker.rb