Usages:
  conventions: .goga/usages/conventions.md

Annotations: |
  Использовать `conventions` для правил написания кода и тестов.

  Поиск свободного TCP-порта на localhost.
  Использовать socket из стандартной библиотеки Python.

---

"find_free_port(min_port: int, max_port: int) -> port:int":
  location: port_finder.py
  annotations: |
    Ищет свободный TCP-порт в диапазоне [`min_port`, `max_port`].
    Выбирает случайный порт из диапазона, проверяет доступность.
    Если все порты заняты — вызывает OSError.

    `min_port`: нижняя граница диапазона (default 49152)
    `max_port`: верхняя граница диапазона (default 65535)

    `port`: свободный номер порта

---

Author: Goga
CreatedAt: 09/05/26
Description: |
  Поиск свободного TCP-порта для запуска HTTP-сервера.
