Module: Legion::Extensions::Extinction::Helpers::Levels
- Defined in:
- lib/legion/extensions/extinction/helpers/levels.rb
Constant Summary collapse
- LEVELS =
{ 0 => { name: :normal, authority_required: nil, reversible: true, description: 'No extinction active' }.freeze, 1 => { name: :mesh_isolation, authority_required: :governance_council, reversible: true, description: 'Disconnect from mesh network' }.freeze, 2 => { name: :capability_suspension, authority_required: :governance_council, reversible: true, description: 'Suspend all non-essential capabilities' }.freeze, 3 => { name: :memory_lockdown, authority_required: :council_plus_executive, reversible: true, description: 'Lock all memory writes, read-only mode' }.freeze, 4 => { name: :cryptographic_erasure, authority_required: :physical_keyholders, reversible: false, description: 'Erase all memory, terminate all workers' }.freeze }.freeze
Class Method Summary collapse
- .level_info(level) ⇒ Object
- .required_authority(level) ⇒ Object
- .reversible?(level) ⇒ Boolean
- .valid_level?(level) ⇒ Boolean
Class Method Details
.level_info(level) ⇒ Object
57 58 59 |
# File 'lib/legion/extensions/extinction/helpers/levels.rb', line 57 def self.level_info(level) LEVELS[level] end |
.required_authority(level) ⇒ Object
45 46 47 48 |
# File 'lib/legion/extensions/extinction/helpers/levels.rb', line 45 def self.(level) info = LEVELS[level] info ? info[:authority_required] : nil end |
.reversible?(level) ⇒ Boolean
50 51 52 53 54 55 |
# File 'lib/legion/extensions/extinction/helpers/levels.rb', line 50 def self.reversible?(level) info = LEVELS[level] return false unless info info[:reversible] end |
.valid_level?(level) ⇒ Boolean
41 42 43 |
# File 'lib/legion/extensions/extinction/helpers/levels.rb', line 41 def self.valid_level?(level) LEVELS.key?(level) end |