Какие инварианты (invariants) `Proxy` не может нарушить?
Proxy обязан соблюдать инварианты для консистентности языка:
getне может вернуть значение, отличное от свойства сwritable: false, configurable: falsesetне может успешно завершиться для свойства сwritable: false, configurable: falsehasне может скрыть non-configurable собственное свойствоdeletePropertyне может удалить non-configurable свойствоownKeysобязан включать все non-configurable собственные свойстваgetPrototypeOfдолжен возвращать реальный прототип, если объект non-extensible
Нарушение инвариантов бросает TypeError.