lex-tick 0.1.16 → 0.1.17

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: 94918234bd1b19854887b794867550d1a6252f74ea4ad10dd6009b6df2797c5b
4
- data.tar.gz: df175d240f2a5816e9b7be4269aa12880051e1bbe5bdf6f761731cca585b0e10
3
+ metadata.gz: 5adf45874a3807dccf25a41669745614b8c1c5051cea86634e15b9e68cec83d8
4
+ data.tar.gz: 313f7a0b71ee43ddb9e752c809419dd5b0dd6e8c7a7797e1abfe2cc7318b3e38
5
5
  SHA512:
6
- metadata.gz: 291b85fa4cfe572c00bb279026569c08691daf1233d7900ffe619e6c4f8d15b3cc9241d18f98aa8ef22715a0438a78a1239919181decf4463f8ab26e13c708cc
7
- data.tar.gz: 56b3a74946173477cbd2d3d85a6b35ff15cc61472b9065bade72af63dcbdab5a8392ceaf50a54ca7e4397db01142cf6d4ee702786d60d938bbd7fa2ff541f954
6
+ metadata.gz: 269f481503c6e5fdc94df7049b3eb19a8909d53434bfd34838b202b10aef4a17bea4083869d8651d000d1bf05bfb3d38d922e8a66fe244f5da109b37000abc66
7
+ data.tar.gz: 13b540ccc95b33b58508be8a133bb4c9823ff42dddfd643bb63babbfb892756acd589731bc6b696236ff72c7fdff0ac4273e5ad2dd60645c465878cf31c34b4b
@@ -100,9 +100,8 @@ module Legion
100
100
 
101
101
  previous = tick_state.mode
102
102
  tick_state.transition_to(mode)
103
- @mode_forced = true
104
- @force_expires_at = Time.now.utc + Helpers::Constants.tick_budget(mode).clamp(0, Helpers::Constants::MAX_TICK_DURATION)
105
- log.info "[tick] mode forced: #{previous} -> #{mode} (protected until #{@force_expires_at})"
103
+ @mode_forced = true
104
+ log.info "[tick] mode forced: #{previous} -> #{mode}"
106
105
  { mode: mode }
107
106
  end
108
107
 
@@ -122,8 +121,7 @@ module Legion
122
121
  # @mode_forced is set by set_mode and cleared here so the force lasts exactly one cycle.
123
122
  if @mode_forced
124
123
  log.debug "[tick] ##{state.tick_count} skipping mode evaluation (mode forced to #{state.mode})"
125
- @mode_forced = false
126
- @force_expires_at = nil
124
+ @mode_forced = false
127
125
  else
128
126
  evaluate_mode_transition(signals: signals)
129
127
  end
@@ -3,7 +3,7 @@
3
3
  module Legion
4
4
  module Extensions
5
5
  module Tick
6
- VERSION = '0.1.16'
6
+ VERSION = '0.1.17'
7
7
  end
8
8
  end
9
9
  end
@@ -255,6 +255,12 @@ RSpec.describe Legion::Extensions::Tick::Runners::Orchestrator do
255
255
  expect(result[:mode]).to eq(:full_active)
256
256
  end
257
257
 
258
+ it 'does not expose an unused force expiration timestamp' do
259
+ client.set_mode(mode: :full_active)
260
+
261
+ expect(client.instance_variable_defined?(:@force_expires_at)).to be false
262
+ end
263
+
258
264
  it 'rejects invalid mode' do
259
265
  result = client.set_mode(mode: :invalid)
260
266
  expect(result[:error]).to eq(:invalid_mode)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-tick
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.16
4
+ version: 0.1.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity