Problem
Session#normalize_record calls record.attributes_for_database, which should handle Rails 7+ encrypted attributes and custom serialized types correctly — but there are no regression tests, and the behavior is not documented. A user finding out via a production data corruption is the worst case.
Proposal
- Add regression tests covering:
encrypts :ssn, serialize :preferences, JSON, attribute :status, EnumType.new
- Assert that encrypted values land on the target encrypted, not in cleartext
- Assert round-trip equivalence
- Document the support matrix in README
Acceptance criteria
- Encrypted attribute test passes on Postgres, MySQL, SQLite
- Serialized attribute test passes
- README has a "Supported attribute types" section (or note under Usage) listing these cases explicitly
- Any discovered bugs filed as separate issues and fixed before closing this one
Problem
Session#normalize_recordcallsrecord.attributes_for_database, which should handle Rails 7+ encrypted attributes and custom serialized types correctly — but there are no regression tests, and the behavior is not documented. A user finding out via a production data corruption is the worst case.Proposal
encrypts :ssn,serialize :preferences, JSON,attribute :status, EnumType.newAcceptance criteria