Module: RailsMcp::Database::ColumnPolicy
- Defined in:
- lib/rails_mcp/database/column_policy.rb
Overview
Single source of truth for which columns are visible for a given AR class. Applies schema_file allowlist, default_fields auto-include, and denied_columns in that order.
Class Method Summary collapse
Class Method Details
.allowed_for(klass) ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/rails_mcp/database/column_policy.rb', line 9 def self.allowed_for(klass) schema = RailsMcp.schema_config cols = if schema auto = RailsMcp.configuration.default_fields.map(&:to_s) & klass.column_names (schema.allowed_columns(klass.name) + auto).uniq else klass.column_names end cols.reject { |col| RailsMcp.configuration.column_denied?(col) } end |