lex-tasker 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: 655758b4611fd1b18f693e733f31395f5fbe7e936cc38476222f5a7797d43b9b
4
- data.tar.gz: e6040d7568eebac7c3464c88e496ae16dffcd8ed9a39660ec62c4e436d6510be
3
+ metadata.gz: d76ee37e0384b05461bb96c12b973df17f5a0bd950be7edf636ec5c81d008480
4
+ data.tar.gz: 2432e93d827dbf09596ffa965b67457fe2fe29570ab2e72be33a0fe66f3277c9
5
5
  SHA512:
6
- metadata.gz: ca29e06d642a053a81b8ff60ce3c95e09f588a4eb238f5083c71525f951084e1440d1f368fb375f0c3240e4cb091ebfedeb1fedaa3de6e166eb3e246d5666948
7
- data.tar.gz: ab53a69217e469a6c92803dd58e76a9d31ce69d79020085ad5d2b8e5b620e11aa12a73b8b6ff7b5cbf720c5edbe51881512e217a9c8dd3f3726500c3c0cef3a8
6
+ metadata.gz: cab4deab705051107b02d1ef03e655e648ce0d15f33a39fa7a40af10a163c51cb6bffd9b0775cc8f7a68c87f7133593921fefa36f9f5c816ff554c627538596e
7
+ data.tar.gz: ec791ab74fefa0bff01ee6653ce99e913ed91e4a2a23a6a582175a93e9e1b326116eb3c33fc83cc313878602aa050d047614085ff8dc1a8d75931780f78e2c8e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.3.8] - 2026-03-31
4
+
5
+ ### Fixed
6
+ - type guard cache returns in `find_trigger` (must be Hash) and `find_subtasks` (must be Array) — cache deserialization can return String instead of Hash, causing `TypeError: no implicit conversion of Symbol into Integer`
7
+ - `check_subtasks` guard changed from `unless trigger` to `unless trigger.is_a?(Hash)` for same reason
8
+
3
9
  ## [0.3.7] - 2026-03-30
4
10
 
5
11
  ### Fixed
@@ -26,7 +26,7 @@ module Legion
26
26
 
27
27
  cache_key = "find_trigger:#{runner_class}:#{function}"
28
28
  cached = cache_get(cache_key)
29
- return cached unless cached.nil?
29
+ return cached if cached.is_a?(Hash)
30
30
 
31
31
  result = Legion::Data::Model::Function
32
32
  .join(:runners, id: :runner_id)
@@ -46,7 +46,7 @@ module Legion
46
46
 
47
47
  cache_key = "find_subtasks:#{trigger_id}"
48
48
  cached = cache_get(cache_key)
49
- return cached unless cached.nil?
49
+ return cached if cached.is_a?(Array)
50
50
 
51
51
  results = subtask_query(trigger_id).all.map do |row|
52
52
  row[:runner_routing_key] = "#{row[:exchange]}.#{row[:queue]}.#{row[:function]}"
@@ -12,7 +12,7 @@ module Legion
12
12
 
13
13
  def check_subtasks(runner_class:, function:, **opts)
14
14
  trigger = find_trigger(runner_class: runner_class, function: function)
15
- return { success: true, subtasks: 0 } unless trigger
15
+ return { success: true, subtasks: 0 } unless trigger.is_a?(Hash)
16
16
 
17
17
  find_subtasks(trigger_id: trigger[:function_id]).each do |relationship|
18
18
  next unless chain_matches?(relationship, opts)
@@ -3,7 +3,7 @@
3
3
  module Legion
4
4
  module Extensions
5
5
  module Tasker
6
- VERSION = '0.3.7'
6
+ VERSION = '0.3.8'
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-tasker
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
  - Esity