# Handoff: `proxy-client` переименован, сетевой маршрут требует диагностики Обновлён: 2026-07-21 09:23 EDT. ## Состояние задачи 05 Автоматическая часть готова. Публичное имя изменено с `xray-proxy` на `proxy-client`, а ручная приёмка дошла до реального сетевого запроса. Xray запускается и принимает локальные соединения, но удалённый маршрут пока не работает. Статус тикета остаётся `ready-for-human`. Тикет: `.scratch/proxy-client/issues/05-package-delivery-and-acceptance.md`. ## Переименование - stow-пакет: `proxy-client/`; - CLI: `~/.local/bin/proxy-client`; - единый пользовательский каталог: `~/.config/proxy-client/`; - служебный каталог: `~/.local/state/proxy-client/`; - машинный конфиг и закрытый профиль теперь лежат рядом как `config` и `default.url`; - примеры называются `config.external` и `config.xray`; - имена тестов, спецификации, задач, README и Bash-модуля приведены к `proxy-client`; - `Xray`, бинарник `xray` и значение `type = xray` сохранены как названия конкретного движка. Поддержка старой раскладки в `install.sh` намеренно не добавлена: публичное имя изменено до завершения разработки и выпуска. Текущий HOME уже приведён к новой структуре. Свежая установка заранее создаёт настоящий `~/.config/proxy-client`, поэтому Stow не может свернуть его в ссылку на репозиторий. ## Автоматическая проверка `bash tests/test_proxy_client_full.sh` завершился с кодом 0 после переименования: - системный Python 3.14: 79 тестов, `OK`, 61,034 с; - Bash-интеграция: 8 проверок, `PASS`; `shellcheck` не установлен; - установка и миграция: `All install tests passed`; - CPython 3.8 через `uv`: 79 тестов, `OK`, 52,446 с. Дополнительно прошли синтаксическая проверка shell-файлов и `git diff --check`. ## Текущий HOME Во время разработки текущий HOME приведён к новой структуре: - `~/.config/proxy-client` — настоящий каталог; - `config` и `default.url` — обычные файлы с правами `600`; - профиль содержит одну непустую строку, его содержимое не выводилось; - `shell.bash`, `examples` и CLI указывают в новый stow-пакет; - старые `~/.config/xray-proxy`, `~/.config/proxy/config`, `~/.local/bin/xray-proxy` и `~/.local/state/xray-proxy` отсутствуют. ## Ручная приёмка Подтверждено: - установлен Xray 26.3.27; - `proxy-client start` успешно проверяет версию, строит JSON и запускает Xray; - `proxy-client status` видит управляемый процесс на `127.0.0.1:12334`; - `xray run -test` сообщает `Configuration OK`; - после проверки процесс штатно остановлен командой `proxy-client stop`. Не прошло: - встроенное определение внешнего IP; - HTTP через `127.0.0.1:12334`; - SOCKS5h через тот же порт. Оба запроса `curl` завершились кодом 35: TLS-соединение неожиданно закрылось во время рукопожатия. Внешний IP и содержимое профиля в вывод не попадали. ## Следующий шаг Диагностировать сетевой маршрут XHTTP/TLS: сравнить профиль с рабочим клиентом, проверить доступность удалённого узла и выяснить, связан ли EOF с преобразованием профиля, параметрами XHTTP/TLS или удалённой стороной. До этого не отмечать ручную HTTP/SOCKS-приёмку выполненной. ## Git Переименование и текущий handoff ещё не закоммичены. Не включать посторонние неотслеживаемые `agents/.agents/.skill-lock.json` и `scripts/setup-xray-proxy.sh`.