Class: Olyx::Guardrails::Rails::PolicyDocument

Inherits:
Object
  • Object
show all
Defined in:
lib/olyx/guardrails/rails/policy_document.rb

Overview

Parses and selects direct or environment-keyed policy YAML.

Constant Summary collapse

POLICY_KEYS =
%w[name max_input_length block_pii block_injections block_secrets llm_failure_mode secret_patterns
rules].freeze

Instance Method Summary collapse

Constructor Details

#initialize(path, environment) ⇒ PolicyDocument

Returns a new instance of PolicyDocument.



13
14
15
16
# File 'lib/olyx/guardrails/rails/policy_document.rb', line 13

def initialize(path, environment)
  @path = path
  @environment = environment
end

Instance Method Details

#callObject



18
19
20
21
22
23
# File 'lib/olyx/guardrails/rails/policy_document.rb', line 18

def call
  document = PolicyYaml.load(@path)
  return document if direct?(document)

  environment_policy(document)
end