Commit Graph
21 Commits
Author SHA1 Message Date
ddadmin a30e2eb939 fix(proxy-client): обновлён Xray и исправлен разбор VLESS
Зачем: профиль XHTTP с x_padding_bytes и пустым host не запускался.

Что: Xray обновлён до 26.10.10; добавлены параметры TLS, REALITY и XHTTP,
значения по умолчанию и преобразование старых названий сессии XHTTP.
Обновлены документация и регрессионные тесты.

Проверка: 59 тестов на Python 3.14 и 3.8, Bash-функции и установщик;
16 тестов разбора после уточнения проверки SHA-256. Настоящий Xray
проверил конфигурацию и выполнил HTTPS-запрос через профиль с HTTP 200.
Пользователь подтвердил работу proxy-client start.
2026-10-12 16:21:16 -04:00
ddadmin 16e85139b9 chore(opencode): эксперимент с permission-reviewer — итоги и отключение
Плагин настроен и проверен (jev через Zen + прокси, enforce+deny),
но признан не стоящим использования: хрупкая цепочка, нервные
эскалации, запертая сессия. Запись в opencode.json отключена
(закомментирована), выводы — в docs/research/.
2026-10-11 12:15:19 +03:00
ddadminandClaude Opus 5.5 e8bf134554 docs(agents): вести задачи в Gitea через tea
Хранилище задач переведено с локальных файлов в .scratch/ на Gitea Issues.
Состояния triage стали метками Gitea. Оставшиеся английские заголовки
и термины в документах для агентов переведены на русский.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 11:09:21 -04:00
ddmitry 310cddf749 Merge PR #2: .scratch/ — только локально 2026-09-28 17:58:58 +03:00
ddadminandClaude Opus 5.5 68a944dbdf chore: .scratch/ — только локально, в .gitignore
Рабочие заметки агентов больше не коммитятся и не удаляются перед
слиянием: каталог живёт на машине. Долговечное по-прежнему выносится
в docs/ до слияния.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 10:56:38 -04:00
ddadminandClaude Opus 5.5 e709c585fa docs(proxy-client): спецификация под упрощённый код, ссылка из README
Спецификация 603 → 220 строк: без описаний снятых защит и без пересказа
кода и README; остались задача, границы, решения с причинами и риски.
В README раздел «Изменение кода» ведёт к спецификации и тестам.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 09:36:56 -04:00
ddadminandClaude Opus 5.5 502f828c6f docs(proxy-client): принцип простоты — в спецификацию вместо ADR
Отдельный ADR дублировал спецификацию и оставлял в ней устаревшие места.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 09:23:13 -04:00
ddadminandClaude Opus 5.5 05a7f1e4fb docs(adr): proxy-client — личный инструмент, простота важнее защиты
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-28 09:22:28 -04:00
ddadmin cb600bcaa8 feat(chatgpt): добавлен отдельный запуск через прокси
- Зачем:
  - приложение должно явно работать через прокси и сохранять настройку после обновлений.
- Что:
  - добавлены отдельный ярлык ChatGPT Proxy и запускатель на основе proxy-client.
  - исключено смешение прямого и проксированного режимов существующего процесса.
  - установка, документация и автоматические проверки дополнены новым Stow-пакетом.
- Проверка:
  - bash tests/test_chatgpt_proxy_launcher.sh.
  - bash tests/test_proxy_launchers.sh.
  - bash tests/test_install.sh.
2026-08-17 01:09:59 +03:00
ddadmin 97193eaa4b docs(rclone): добавлена настройка Яндекс Диска для Ubuntu
- Зачем:
  - нужна удобная работа с документами на большом Яндекс Диске из Linux.
- Что:
  - собраны выводы о поведении rclone mount на больших хранилищах.
  - добавлены команды установки, настройки, проверки и автозапуска в Ubuntu 26.04.
  - описаны ограничения кэша, внешних изменений и рекурсивного обхода.
- Проверка:
  - выполнена проверка `git diff --cached --check`.
2026-07-27 22:16:33 +03:00
ddadmin 32051ae3f0 docs(gitverse): добавлено исследование API задач
- Зачем:
  - нужно понять, подходит ли GitVerse для управления задачами проекта.
- Что:
  - описаны Public API, совместимость с GitHub и GitLab и доступные операции.
  - сохранены результаты живых проверок и отличие внутреннего API.
  - добавлены безопасные команды повторной проверки и решение для dotfiles.
- Проверка:
  - git diff --cached --check.
2026-07-21 16:38:02 -04:00
ddadmin 86d63ab2aa docs(proxy-client): спроектирован самостоятельный установщик
- Зачем:
  - отдельный пакет должен устанавливаться без общего dotfiles и обязательного stow.
- Что:
  - зафиксирована единая раскладка симлинков через stow или ln.
  - отделены файлы пакета от машинного конфига и закрытого профиля.
  - добавлены правила конфликтов, настройки Bash и проверки установки.
- Проверка:
  - git diff --cached --check.
2026-07-21 21:42:33 +03:00
ddadmin 6e431d875e refactor(proxy-client): переименован интерфейс прокси
- Зачем:
  - прежнее имя выпячивало Xray, хотя клиент поддерживает также внешний прокси, а два каталога конфигурации были неочевидны.
- Что:
  - пакет, CLI, конфигурация, состояние, тесты и документация переименованы в proxy-client.
  - машинный конфиг, профиль и два явных примера собраны в одном пользовательском каталоге.
  - свежая установка защищена от сворачивания каталога конфигурации внутрь репозитория.
- Проверка:
  - bash tests/test_proxy_client_full.sh.
  - bash tests/test_install.sh.
  - ручные start, status и xray run -test; незавершённая сетевая приёмка записана в handoff.
2026-07-21 09:31:21 -04:00
ddadminandClaude Fable 5 0432c4ae8a feat(xray-proxy): добавлена проверяемая установка Xray командой install
- Зачем:
  - пользователь без root должен получать проверенный бинарник Xray 26.3.27
    одной явной командой, без риска для живого managed-экземпляра.
- Что:
  - команда install [--replace]: пин 26.3.27, маппинг x86_64/aarch64,
    скачивание urllib + проверка SHA2-256 из официального четырёхзаписного
    .dgst, staging внутри ~/.local/bin и один атомарный os.replace;
  - границы размеров (64 MiB архив/бинарник, 4 KiB .dgst, счёт limit+1,
    сверка Content-Length) и guard managed-режима через start-lock;
  - типизированная StartLockBusyError, offline-тесты реального загрузчика
    через подмену urlopen, снапшоты дерева ФС в отказных путях;
  - README/спека обновлены, включая справку о последней версии с
    allowInsecure (25.12.8, удалена в 26.2.6); тикет 04 закрыт, леджер
    дополнен итогами эксперимента.
- Проверка:
  - PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover -s tests — 79 OK.
  - bash tests/test_proxy_launchers.sh — 8 PASS.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 13:46:33 -04:00
ddadminandClaude Fable 5 5ace0cfae0 feat(xray-proxy): добавлен безопасный жизненный цикл управляемого Xray
- Зачем:
  - stop/status опирались на обход argv и могли счесть чужой или
    переиспользованный PID управляемым процессом, а параллельный start
    и аварийная гибель супервизора не имели определённого поведения.
- Что:
  - введена модель идентичности: PID + starttime (поле 22 /proc/PID/stat),
    /proc/PID/exe для ребёнка, канонический путь скрипта для супервизора,
    boot_id как граница загрузки; перечитка перед каждым сигналом.
  - добавлены lifetime-flock супервизора, три исхода проверки состояния
    (здоровая пара / подтверждённый сирота / непроверяемое), отказ при
    занятом порте пробным bind и очистка stale только под lock.
  - тесты расширены до 49 (blank flock, подмена starttime, чужой exe,
    boot_id, SIGKILL супервизора, занятый порт, парсер stat); спека
    приведена к модели идентичности; тикет 03 закрыт, леджер дополнен.
- Проверка:
  - python3 -m unittest discover -s tests — 49 OK.
  - bash tests/test_proxy_launchers.sh — 8 PASS.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 07:02:33 -04:00
ddadminandClaude Fable 5 98bfd6338a refactor(xray-proxy): срезана accidental-сложность CLI, тестов и спеки
- Зачем:
  - CLI и спека были переусложнены относительно принятой модели угроз
    (один пользователь, доверенная машина): лишняя ось версий Xray и
    защита от входов, которые не возникают при ручном редактировании.
- Что:
  - убрана поддержка Xray 25.12.8 — поддерживается только 26.3.27;
    allowInsecure валидируется, но никогда не эмитится в JSON.
  - удалена проверка владения сокетом через /proc/net/tcp; идентичность
    процесса и сверка адрес/порт со state сохранены.
  - валидация INI/профиля/адреса/query сведена к отказам на реальные
    опечатки; scoped IPv6 отклоняется одинаково на Python 3.8 и 3.9+.
  - удалены fsync/O_EXCL-церемония, SIGALRM-таймер, zombie-инспекция,
    мёртвый отпечаток профиля и двойной разбор extra/alpn.
  - shell.bash принимает вывод env без ре-валидации, сохранив атомарность;
    спека и issue 01–05 приведены к новому объёму (тикет 06, леджер).
- Проверка:
  - python3 -m unittest discover -s tests — 34 теста OK.
  - bash tests/test_proxy_launchers.sh — 8 проверок PASS.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 04:13:54 -04:00
ddadmin 71e16a795a chore(sync): слиты локальные docs и origin/master (xray-proxy) 2026-07-20 02:34:49 -04:00
ddadmin e69a4bb7df feat(xray-proxy): добавлен управляемый прокси для CLI
Зачем:
- отделить переносимый прокси-интерфейс от общих Bash-функций
- запускать агентские CLI через явный внешний или управляемый прокси

Что:
- добавлен stow-пакет xray-proxy с CLI, Bash-модулем и примерами
- реализованы строгий разбор VLESS и управляемый запуск Xray
- добавлены проверки процесса, порта, сигналов и отсутствия утечек
- сохранены спецификация и очередь следующих тикетов

Проверка:
- python3 tests/test_xray_proxy.py — 22/22
- python3 tests/test_xray_proxy_managed.py — 16/16
- bash tests/test_proxy_launchers.sh — 9/9
- bash tests/test_install.sh
- bash -n, Python 3.8 grammar, git diff --check
2026-07-20 00:00:59 +03:00
ddadmin 1a422a4ead docs(agents): добавлена настройка инженерных навыков
- Зачем:
  - инженерным навыкам нужны единые правила хранения задач и документов предметной области.
- Что:
  - настроено локальное хранилище задач с веточным жизненным циклом.
  - добавлены стандартные состояния triage и схема single-context.
  - добавлены ссылки на настройки в AGENTS.md.
- Проверка:
  - git diff --cached --check.
2026-07-19 13:50:06 -04:00
ddadmin 716fb7f5dd docs(xray-proxy): добавлена спецификация консольного клиента
- Зачем:
  - нужен зафиксированный контракт переносимого Xray-клиента для удалённых Linux-систем.
- Что:
  - описаны Python CLI, отдельный Bash-модуль и совместимость с внешним Hiddify.
  - закреплены преобразование VLESS-ссылок, версии Xray и обработка TLS.
  - определены жизненный цикл в tmux, безопасность файлов и проверки реализации.
- Проверка:
  - выполнена проверка `git diff --cached --check`.
2026-07-16 00:06:10 +03:00
Dmitry Dementiev 84e577bc97 docs(proxy): добавлен дизайн pclaude/pcodex для запуска через прокси
- Зачем:
  - claude/codex CLI должны гарантированно ходить через hproxy.local, а ручной proxy_on легко забыть.
- Что:
  - добавлен spec docs/superpowers/specs/2026-05-19-proxy-cli-launchers-design.md.
  - описаны команды pclaude/pcodex с fail-fast pre-flight для Linux (bash) и Windows (PowerShell).
  - честная формулировка цели (удобство + best-effort), зафиксировано проверенное допущение о proxy-env.
  - добавлены секция «Известные ограничения» (аддитивность, TOCTOU), PS-passthrough и регресс-тест proxy_on.
- Проверка:
  - git show --stat HEAD.
2026-05-19 14:23:04 +03:00