не понял какие там баги с getters/setters. А equals/hashCode и может и для хэшмапов нужен и для diffutil в андроид оч круто помогает, не приодится вручную писать.
Сейчас ты вызываешь метод copy, так как ты знаешь, что он есть у класса. А я хочу, чтобы это было выраженно конкретным типом. Например: interface Equatable<T> { fun equlas(model: T) }