Files
dotfiles/.scratch/handoffs/20260720-0835-xray-proxy-after-03.md
T
ddadmin 90cc8456cd docs(xray-proxy): обновлён handoff конвейера после задачи 03
- Зачем:
  - прежняя записка описывала состояние до задачи 03 и не содержала
    решения пользователя по эксперименту с эффортом для задачи 04.
- Что:
  - создан handoff after-03: статус тикетов, решение «04 на medium»,
    уроки resume-синтаксиса codex exec и потери usage при убитом ходе.
  - прежний handoff after-06 удалён как одноразовый по правилам AGENTS.md.
- Проверка:
  - git show --stat HEAD.
2026-07-20 08:35:47 -04:00

5.5 KiB
Raw Blame History

Handoff: конвейер xray-proxy после задачи 03

Дата: 2026-07-20. Для свежего агента, продолжающего работу в этом репозитории с пользователем Дмитрием. Заменяет handoff «after-06».

Состояние проекта

  • Спека: docs/specs/2026-07-15-headless-xray-proxy-design.md (обновлена задачей 03: модель идентичности процессов, lifetime-flock, три исхода проверки state).
  • Тикеты: .scratch/headless-xray-proxy/issues/01..06. 01, 02, 03, 06 — done; 04 — ready-for-agent (следующая); 05 — замыкающая (blocked by 03+04, включает ручную приёмку пользователем на целевых системах).
  • Последний коммит работ: 5ace0cf (feat 03, +890/−100).
  • Тесты сейчас: python3 -m unittest discover -s tests → 49 OK (~60 с); bash tests/test_proxy_launchers.sh → 8 PASS.
  • Резолюции конвейера по 03 — в шапке тикета 03; расход токенов по этапам — .scratch/headless-xray-proxy/token-ledger.md.

Решение пользователя по эксперименту (2026-07-20)

Реализацию 04 гнать на model_reasoning_effort="medium" — добираем статистику эксперимента (память codex-effort-calibration). Контекст решения: 03 на medium дала 4 MAJOR от слепого CODE-ревью против 1 MAJOR у 06 на high (все — гонки конкурентности/восстановления; конвейер выловил и починил, обе перепроверки FIXES_CONFIRMED). Оговорка: 03 богаче на гонки, чем 06, чистым A/B не считать. Ревью постановок и кода, диагнозы — high.

Как вести работу (проверено прогонами 06 и 03)

Скилл claude-subagent-playbook: постановка → spec-ревью (Codex, high; для 03 это дало NEEDS_REWORK с 7 MAJOR и спасло реализацию — не пропускать) → реализация Codex (medium) → саморевью (resume, medium) → два слепых ревью (Claude TASK-субагент + Codex CODE свежий тред, high) → триаж тредом исполнителя (resume, medium) → узкие перепроверки теми же ревьюерами → приёмка оркестратором (обе сьюты локально) → коммит по conventional-commits.

Критично:

  • thread_id Codex забирать сразу из первой строки stdout-JSONL. Рестарты сессии дважды убивали фоновые процессы/сторожа; тред реанимируется codex exec resume <id> без потерь.
  • Синтаксис resume отличается: codex exec resume <id> принимает ТОЛЬКО -c-оверрайды (-c 'sandbox_mode="workspace-write"', -c 'model="gpt-5.6-sol"', -c 'model_reasoning_effort="…"'), флаги -s/-m/-o дают exit 2. Отчёты просить писать в файл через промпт.
  • Usage при убитом ходе теряется (нет turn.completed); цифры resume-хода покрывают тред по масштабу — фиксировать с оговоркой.
  • Токен-леджер дополнять строкой на каждый этап; методика — в шапке леджера.
  • Один писатель в дереве; ревьюеров ограничивать read-only мандатом, после ревью сверять git status.
  • Чужие untracked-артефакты (zed/.config/*, agents/.agents/skills/*, scripts/setup-xray-proxy.sh) не трогать и не коммитить.

Решения пользователя (не пересматривать без него)

Память: prefers-kiss, consultant-multi-distro, codex-effort-calibration. KISS с различением essential/accidental; целевые системы: Ubuntu, РЕД ОС, возможно Astra/Alt (Python 3.8+ stdlib-only, переносимость); строгий отказ парсера и безопасный kill не упрощать; секреты (VLESS/UUID/ключи) — никогда в stdout/stderr/argv/ state/репозиторий.

Suggested skills

  • claude-subagent-playbook — конвейер задач 04/05.
  • conventional-commits — обязателен для каждого коммита.
  • resolving-merge-conflicts — если merge с origin принесёт конфликты.

Ближайший шаг

Задача 04: свежий обменный каталог (mktemp -d), spec-ревью постановки .scratch/headless-xray-proxy/issues/04-*.md (Codex, high) → правка постановки по находкам → реализация (medium) → далее по конвейеру. После 04 — итоговое сравнение эксперимента и, при решении пользователя, запись выводов в ~/.claude/skills/claude-subagent-playbook/references/codex-exec.md. Затем 05 с ручной приёмкой пользователя на целевых системах.