Monkey patching
Изменение классов или модулей во время выполнения: добавление методов во встроенные типы, подмена функций в библиотеках, смена поведения без правки исходников.
Распространён в Ruby (открытые классы по умолчанию), Python, JavaScript. Классика Ruby: class Integer; def lucky?; self == 7; end; end. Стандартный приём в тестах (подмена requests.get, заморозка datetime.now) и для исправления багов в сторонних библиотеках, которые нельзя обновить.
Риск: другие разработчики не видят изменения — и возникает вопрос «почему этот метод вдруг возвращает другое значение?». Лучшая практика: чётко документировать, ограничивать тестами или инициализацией, избегать в боевом коде.