Files
dotfiles/.scratch/proxy-client/token-ledger.md
T
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

10 KiB
Raw Blame History

Токен-леджер проекта proxy-client

Затраты по этапам конвейера, для калибровки эффорта и планирования лимитов (5-часовые / недельные окна подписок). Прямое сравнение корректно внутри провайдера; между Claude и Codex метрики разные (у Claude-субагентов харнесс даёт один суммарный счётчик, у Codex — раздельные input/cached/ output/reasoning), кросс-сравнение — ориентировочное.

Задача 06 — упрощение (baseline: реализация на HIGH)

Этап Агент / модель Effort Токены Прочее
KISS-обход спеки и кода Claude Opus (субагент) default 100 025 суммарно 14 tool uses, 4.5 мин
Ревью постановки Codex gpt-5.6-sol high in 1 263 557 (кэш 1 174 784 → свежих ~89k), out 16 862 (reasoning 12 817) 82 команды
Реализация Codex gpt-5.6-sol high in 6 680 053 (кэш 6 492 928 → свежих ~187k), out 29 064 (reasoning 8 280) 84 команды, −331 строка
Саморевью Codex (resume) medium инкремент: свежих in ~155k, out ~4.5k 8 команд, found 2 fixed 2
Слепое ревью «по задаче» Claude Opus (субагент) default 75 216 суммарно 26 tool uses, 4.3 мин; 1 NIT
Слепое ревью «по коду» Codex gpt-5.6-sol (свежий тред) high in 2 336 162 (кэш 2 106 112 → свежих ~230k), out 12 434 (reasoning 7 033) 48 команд; 1 MAJOR
Триаж/починка Codex (resume) medium инкремент: свежих in ~26k, out ~7.3k 18 команд; FIXED 1, REJECTED 1
Перепроверка CODE-1 Codex-ревьюер (resume) medium инкремент: свежих in ~137k (вкл. оборванный первый заход), out ~1.8k FIXES_CONFIRMED

Итог 06 (high-baseline): свежий input ~735k + output ~97k на весь конвейер (обход, ревью постановки, реализация, саморевью, 2 слепых ревью, триаж, перепроверка); Claude-доля — 175k суммарно (обход 100k + ревью 75k).

Задача 03 / 04 (эксперимент: реализация на MEDIUM)

Заполняется по ходу; сравнивать построчно с 06.

Этап Агент / модель Effort Токены Прочее
03: ревью постановки Codex gpt-5.6-sol high in 1 126 384 (кэш 1 044 480 → свежих ~82k), out 15 830 (reasoning 9 567) NEEDS_REWORK: 7 MAJOR + 3 MINOR
03: реализация Codex gpt-5.6-sol medium in 5 925 714 (кэш 5 678 080 → свежих ~248k), out 29 512 (reasoning 11 251)* 88+6 команд; +657/−89; 44 OK + 8 PASS; процесс убит рестартом сессии перед отчётом, дописан через resume

| 03: саморевью | Codex (resume) | medium | инкремент: свежих in ~53k, out ~11.6k (reasoning ~7k) | 38 команд; found 3 fixed 3; 45 OK + 8 PASS | | 03: слепое ревью «по задаче» | Claude Opus (субагент) | default | 73 131 суммарно | 21 tool uses, 6.3 мин; 1 MINOR + 2 NIT | | 03: слепое ревью «по коду» | Codex gpt-5.6-sol (свежий тред) | high | in 1 103 725 (кэш 1 019 136 → свежих ~85k), out 12 797 (reasoning 8 908) | 28 команд; 4 MAJOR + 1 MINOR | | 03: триаж/починка | Codex (resume) | medium | инкремент: свежих in ~55.5k, out ~16.9k (reasoning ~7.8k) | 46 команд; FIXED 8, REJECTED 0; 49 OK + 8 PASS | | 03: перепроверка TASK-1..3 | Claude Opus (резюм субагента) | default | инкремент ~7.4k (суммарно 80 560) | 8 tool uses, 1.7 мин; FIXES_CONFIRMED | | 03: перепроверка CODE-1..5 | Codex-ревьюер (resume) | medium | инкремент: свежих in ~112k, out ~3.2k | 20 команд; FIXES_CONFIRMED |

| 04: ревью постановки | Codex gpt-5.6-sol | high | in 2 469 937 (кэш 2 352 896 → свежих ~117k), out 17 051 (reasoning 10 128) | 54 команды; NEEDS_REWORK: 5 MAJOR + 3 MINOR + 1 NIT | | 04: реализация | Codex gpt-5.6-sol | medium | in 2 941 682 (кэш 2 828 288 → свежих ~113k), out 18 521 (reasoning 5 278) | 50 команд; +~600 строк; 63 OK (+14) + 8 PASS | | 04: саморевью | Codex (resume) | medium | инкремент: свежих in ~50k, out ~17.2k (reasoning ~9.2k) | 38 команд; found 6 fixed 6; 72 OK + 8 PASS | | 04: слепое ревью «по задаче» | Claude Opus (субагент) | default | 53 463 суммарно | 18 tool uses, 5.7 мин; 3 NIT | | 04: слепое ревью «по коду» | Codex gpt-5.6-sol (свежий тред) | high | in 1 774 005 (кэш 1 676 288 → свежих ~98k), out 10 402 (reasoning 5 481) | 46 команд; 2 MAJOR + 2 MINOR (CODE-1 — дефект постановки: реальный формат .dgst) | | 04: триаж/починка | Codex (resume) | medium | инкремент: свежих in ~237k, out ~58.9k (reasoning ~24k) | FIXED 7, REJECTED 0; 79 OK (+30 к baseline) + 8 PASS | | 04: перепроверка TASK-1..3 | Claude Opus (резюм субагента) | default | инкремент ~7.7k (суммарно 61 135) | 6 tool uses, 1.7 мин; FIXES_CONFIRMED | | 04: перепроверка CODE-1..4 | Codex-ревьюер (resume) | medium | инкремент: свежих in ~207k, out ~12.5k (reasoning ~6.3k) | FIXES_CONFIRMED |

Итог 03 (реализация на MEDIUM): Codex — свежий input ~636k + output ~77k (ревью постановки 82k/16k, реализация ~248k/29.5k, саморевью 53k/11.6k, CODE-ревью 85k/12.8k, триаж 55.5k/16.9k, перепроверка 112k/3.2k); Claude-доля — 80.5k суммарно (TASK-ревью + перепроверка). Против 06 (high-baseline: ~735k + 97k Codex, 175k Claude) — дешевле, но качество ниже: слепые ревью нашли 4 MAJOR (у 06 — 1), все — гонки конкурентности/восстановления; конвейер их выловил и починил.

* usage первого (убитого) хода не был зафиксирован (нет turn.completed); цифры — из resume-хода, по масштабу покрывают весь тред.

Итог 04 (реализация на MEDIUM): Codex — свежий input ~822k + output ~135k (ревью постановки 117k/17k, реализация 113k/18.5k, саморевью 50k/17.2k, CODE-ревью 98k/10.4k, триаж 237k/58.9k, перепроверка 207k/12.5k); Claude-доля — 61k суммарно (TASK-ревью + перепроверка). Слепые ревью нашли 2 MAJOR + 2 MINOR + 3 NIT, причём CODE-1 (MAJOR) — дефект постановки (spec-review на high выдумал однострочный SHA256=), т.е. на счету реализации-medium фактически 1 MAJOR (границы размеров). Примечательно: 04-medium вышла ДОРОЖЕ 06-high по свежим токенам (~822k+135k против ~735k+97k) — экономию реализации съели дорогой триаж (7 находок, включая переделку под исправленный протокол) и перепроверки.

Сводка эксперимента (свежий input + output Codex; MAJOR от слепых ревью):

Задача Effort реализации Codex токены Claude MAJOR
06 high (baseline) ~735k + 97k 175k 1
03 medium ~636k + 77k 80.5k 4 (гонки)
04 medium ~822k + 135k 61k 2 (1 — вина постановки)

Задача 05 — доставка пакета и приёмка

Этап Агент / модель Effort Токены Прочее
05: ревью постановки, попытки 1–2 (убиты) Codex gpt-5.6-sol high расход токенов потерян (нет turn.completed) обе умерли на Quota exceeded (os error 122): набор test_install.sh заполнял /tmp тестовыми деревьями по ~1,8 ГБ; потеряно ~2 и ~10 мин работы, сеансы невосстановимы из-за сбоя журнала

Наблюдения

  • Кэш у Codex покрывает ~93% входа ревью-этапа: длинные треды с большим контекстом дешевле по лимитам, чем кажется по сырому input.
  • Сравнивать этапы честнее по «свежий input + output (включая reasoning)», а не по валовому input.
  • Итог эксперимента (решение пользователя 2026-07-21, детали — в claude-subagent-playbook): реализация по отревьюированному тикету → medium допустима, но экономию считать по конвейеру целиком (04-medium дороже 06-high из-за триажа); Claude-субагентам effort задавать явно — xhigh постановки/планы, high слепое ревью (ниже не опускать), medium перепроверки; высокий effort не страхует от выдумки внешних фактов (казус формата .dgst); смена effort у Codex при resume кэш не сбрасывает (~93% кэша при high→medium).