# AGENTS.md

## Проектные договоренности

### Публичное API библиотек

- Предпочтителен `non-null` подход.
- Там, где значение живет в Gradle Provider API, возвращается `Provider<T>` (не `null`).
- Там, где lookup синхронный, возвращается `Optional<T>` (не `null`).
- `find*` рассматривается как синоним legacy `get*` (поиск без `fail-fast`).
- `require*` это `find*` + `fail-fast` с понятной ошибкой в месте вызова.
- Для нового API предпочтительны формы `find/require`; новые `get*` по возможности не добавлять.
