Files
dotfiles/.scratch/handoffs/20260720-0425-xray-proxy-after-06.md
T
ddadminandClaude Fable 5 e048d79d46 docs(xray-proxy): добавлен handoff конвейера перед compact контекста
- Зачем:
  - пользователь сжимает контекст сессии; состояние конвейера и решения
    должны переживать сжатие в файле проекта, а не в разговоре.
- Что:
  - создан .scratch/handoffs/20260720-0425-xray-proxy-after-06.md: состояние
    после задачи 06, порядок 03→04→05, правила прогона
    (medium-эксперимент, леджер, thread_id) и решения пользователя.
  - в AGENTS.md закреплено правило размещения handoff-записок в
    .scratch/handoffs/ (одноразовые, коммитятся, уборка best-effort).
- Проверка:
  - git show --stat HEAD.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-20 04:25:32 -04:00

73 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Handoff: конвейер xray-proxy после задачи 06 (перед compact)
Дата: 2026-07-20. Для свежего агента, продолжающего работу в этом
репозитории с пользователем Дмитрием.
## Состояние проекта
- Спека: `docs/specs/2026-07-15-headless-xray-proxy-design.md` (уже
упрощена задачей 06 — только Xray 26.3.27, срезаны лишние защиты).
- Тикеты: `.scratch/headless-xray-proxy/issues/01..06`. 01, 02, 06 — done;
03, 04 — ready-for-agent; 05 — замыкающая (blocked by 03+04).
- Порядок: **03 → 04 → 05** (03 и 04 независимы; 03 предпочтительнее
первой — работает по зоне, только что упрощённой в 06).
- Последний коммит работ: `98bfd63` (refactor 06) + следом этот handoff.
- Тесты сейчас: `python3 -m unittest discover -s tests` → 34 OK (~60 с);
`bash tests/test_proxy_launchers.sh` → 8 PASS.
## Как вести работу (проверено прогоном 06)
Работа идёт по скиллу `claude-subagent-playbook` (оркестратор — Claude,
исполнитель и часть ревью — Codex через `codex exec`; рецепты — в
references скилла). Прогон 06 прошёл полный цикл: постановка →
spec-ревью → реализация → саморевью → два слепых ревью (Claude TASK +
Codex CODE) → триаж → узкая перепроверка → коммит. Итог ревью: 1 MAJOR
(починен), 1 NIT (отклонён аргументированно) — детали в резолюции тикета
06.
Критично для продолжения:
- **Эксперимент по эффорту** (см. память `codex-effort-calibration`):
реализацию 03 и 04 гнать на `model_reasoning_effort="medium"`; ревью
кода и постановок, диагнозы — high. Метрика: число/тяжесть находок
слепых ревью против baseline 06 (реализация на high дала 1 MAJOR + 1
NIT после саморевью).
- **Токен-леджер**: `.scratch/headless-xray-proxy/token-ledger.md` —
дополнять строкой на каждый этап (Codex usage — из `turn.completed` в
stdout-JSONL, Claude — из `subagent_tokens` уведомления). Итог 06 там
же — база сравнения.
- **thread_id Codex забирать сразу** после старта из первой строки
stdout-JSONL: в прогоне 06 перезапуск сессии убил фоновый процесс
перепроверки, тред реанимирован `codex exec resume <id>` без потерь.
- Перед реализацией 03 постановку прогнать через spec-ревью (Codex,
high): тикет 03 редактировался в 06 (добавлен мандат идентичности
«PID + время старта + exe»), свежих глаз после правки не было.
- Один писатель в дереве; ревьюеров ограничивать мандатом в промпте,
после ревью сверять `git status` с baseline.
- В дереве есть чужие untracked-артефакты (`zed/.config/*`,
`agents/.agents/skills/*`, `scripts/setup-xray-proxy.sh`) — не трогать
и не коммитить.
## Решения пользователя (не пересматривать без него)
Зафиксированы в памяти (`prefers-kiss`, `consultant-multi-distro`,
`codex-effort-calibration`) и в тикете 06: KISS-линза с различением
essential/accidental; целевые системы шире Ubuntu (РЕД ОС, возможно
Astra/Alt — пункты приёмки в 05 сохранены намеренно); Python 3.8+
stdlib-only — требование переносимости; строгий отказ парсера и
безопасный kill не упрощать.
## Suggested skills
- `claude-subagent-playbook` — основной конвейер задач 03/04/05.
- `conventional-commits` — обязателен для каждого коммита.
- `resolving-merge-conflicts` — если merge с origin принесёт конфликты.
- `/compact` пользователь делает сам; после него продолжать отсюда.
## Ближайший шаг
Пользователь даёт «го» на 03 → развернуть конвейер плейбука: свежий
обменный каталог (`mktemp -d`), spec-ревью постановки 03 (high) →
реализация Codex (**medium** — эксперимент) → саморевью → слепые ревью →
триаж → приёмка → коммит; леджер вести построчно.