Issue the parallel research/21 session prompt: survey 11 cloned open-source LLM harnesses for transport-layer patterns and provider-quirk candidates, zero-cost and backend-read-only

This commit is contained in:
Claude (backend session) 2026-07-23 20:58:32 +03:00
parent 46e43ebc6f
commit c04a9ef4cc
3 changed files with 47 additions and 1 deletions

View file

@ -0,0 +1,42 @@
# Промт ресёрч-сессии: обзор LLM-транспорта чужих харнессов (research/21)
**Статус: АКТИВЕН (выдан 20.07.2026, оркестратор №7).** Роль — ресёрч (полигон-профиль). Идёт ПАРАЛЛЕЛЬНО операционному пере-прогону: **`backend/` строго read-only, НИКАКИХ патчей** — рекомендации применяются только после пере-прогона отдельным решением. Это $0-сессия чтения кода: **не запускать чужие CLI, не делать НИ ОДНОГО вызова моделей, ключи не трогать**.
## Материал
Склонировано в `/home/ubuntu/projects/tmp/` (shallow, 20.07): `codex` (OpenAI, Apache-2.0) · `gemini-cli` (Apache-2.0) · **`grok-build` (официальный xAI, Apache-2.0, open-sourced 15.07.2026)** · `goose` (Block, Apache-2.0) · `aider` (Apache-2.0) · `cline` (Apache-2.0) · `opencode` (sst, MIT) · `litellm` (MIT-ядро; **`enterprise/` — иная лицензия, НЕ читать**) · `crush` (Charm, **FSL-1.1: читать можно, копировать НЕЛЬЗЯ**) · `openai-go` + `anthropic-sdk-go` (референс официальных SDK).
**Периметр:** leaked-форки Claude Code — ВНЕ периметра: не искать, не клонировать, не открывать (контаминация независимой разработки). Официальный трекер/чейнджлог `anthropics/claude-code` — читать ОНЛАЙН (issues/CHANGELOG), код не разбирать.
## Контекст нашей стороны (прочитать ДО чужого кода)
1. `CLAUDE.md``docs/README.md` → CURRENT-STATE `docs/PROGRESS.md`.
2. `backend/internal/llm/` (весь пакет — наш транспорт: адаптеры, фейловер, таймауты) + `backend/internal/pipeline/ratelimit.go` + `backend/configs/models.yaml` (капабилити/цены/квирки).
3. `docs/experiments/00-provider-quirks.md` (наш реестр квирков) + `docs/architecture/04-unhappy-paths.md` (~70 режимов отказа) + `docs/experiments/08-cost-model-v2.md` (деньги).
## Вопросы (ранжированы; на каждый — вывод «что берём/что не берём и почему»)
**Q1 — Prompt-cache дисциплина (потенциально $).** Как харнессы раскладывают запрос под префикс-кеш (стабильный system/tools-префикс, порядок блоков, cache_control-маркеры у Anthropic, implicit/explicit cache Gemini, автокеш DeepSeek/GLM)? Наша боль: инъекция банка меняется от чанка к чанку — какой порядок блоков (промт-константы → банк → исходник) максимизирует cache-hit на deepseek-v4-flash/glm-5? Выход: конкретная рекомендация раскладки + оценка экономии по cost-model (cache-hit $0.0028 vs miss $0.14 — до ×50 на входе).
**Q2 — Rate-limit адаптив.** Парсинг `retry-after`/`x-ratelimit-*`, токен-бакеты, адаптивная конкурентность (AIMD?), очереди per-provider. Сверить с нашим rate-guard (фикс-пул волнового исполнителя). Особый интерес: Mistral (замечание к плану — их лимиты жёсткие, mistral = арм редактора пере-прогона).
**Q3 — finish_reason таксономия.** Как нормализуют across-provider (stop/length/content_filter/tool_calls + нестандарт), как детектят тихое усечение, что делают с partial-ответом. Сверить с нашим контрактом finish=stop-only и floor `min_max_tokens` (deepseek thinking ⊆ completion — субсет-модель).
**Q4 — Таксономия ошибок retry/fatal.** Классификация HTTP/сетевых/провайдерских ошибок, backoff-формы, идемпотентность (у кого есть idempotency-key кроме OpenAI?). Дифф против `04-unhappy-paths.md` — чего у нас нет.
**Q5 — Usage-учёт.** Как считают reasoning/thinking-токены по провайдерам, cache-hit поля, атрибуция стоимости. Сверить с нашим ledger (Р7): есть ли поля usage, которые мы теряем/книжим неверно.
**Q6 — Streaming vs non-streaming надёжность.** Меньше ли у стриминга обрывов/таймаутов на длинных генерациях (наш режим отказа — тихие пропуски на выходе 28k)? SSE-реассемблинг, обработка обрыва посреди стрима, ретрай частичного. Вывод: есть ли довод менять наш non-streaming путь (сейчас — attempt_s 240 + ретраи).
**Q7 — Issue-sweep по НАШИМ провайдерам (возможно, самое ценное).** По трекерам всех склонированных + `anthropics/claude-code` онлайн: поиск по deepseek / zai / glm / gemini / mistral / grok / xai / kimi — жатва квирк-репортов (новые finish_reason, игнор параметров, депрекации, флейки) с датами и ссылками. Выход: таблица кандидатов в `00-provider-quirks.md` (кандидаты! абсорбирует оркестратор после вендор-сверки — правило 10.07).
## Метод (жёстко)
- Каждое утверждение о чужом коде — с `repo/file:line`. README ≠ код: пересказ документации фактом о коде не считается.
- **Мандат самопроверки (12.07):** спорные находки верифицировать чтением второго места в коде (call-site, тест); в отчёте помечать confidence.
- Лицензии — в шапке отчёта per-repo. НИКАКОГО копирования чужого кода в textmachine: выход — отчёт-рекомендации; реимплементация — отдельное решение после пере-прогона.
- `.env` не читать. Git textmachine не трогать (сессия не коммитит).
## Выход
`docs/research/21-llm-transport-survey.md`НЕ коммитить (лендит оркестратор). Структура: (1) топ-рекомендации, ранжированные по ожидаемому импакту ($ / надёжность), каждая с «какая наша метрика двинется и на сколько (оценка)»; (2) таблица quirk-кандидатов Q7 со ссылками; (3) per-question разборы с цитатами; (4) appendix per-repo (лицензия, что смотрели, что пропустили). Плюс короткое итоговое сообщение оркестратору.

View file

@ -9,6 +9,10 @@
> - **Ждём от владельца:** тачпойнты exp16 (карта подписи/пол · мини-голд алиасов · precision@30, `books/gu-zhenren/exp16/`, ~3040 мин — для сид-дельты к пере-прогону) · развилки плана §10 (W1.5-UX · DC5-стих-политика · Edit-ceiling · и др.) · реплика ja→ru (тест общности §B5) · **ре-чек прайса DeepSeek у катовера слагов 24.07** (до него платных deepseek-прогонов нет) · чтение пере-прогона (после R1+resnapshot) · старые висящие: планка запуска (лучше-фана/гибрид/издательский) · билингв-якорь пилота (D25.9-Q1) · контаминация пилот-корпуса (D27.4) · publishable/waiver (D25.1) · FN-bound L3 (D25.4) · юр-пакет · провенанс 12-*-доков.
> - Архивы хроники: `archive/PROGRESS-2026-07-04-10.md` (D31) · `archive/PROGRESS-2026-07-10-13.md` (D39.6-гигиена). Записи ниже — живая эра D39.
## Оркестратор №7 — параллельный трек: промт research/21 (обзор LLM-транспорта чужих харнессов) выдан, 20.07
По решению владельца — параллельно пере-прогону. В `/home/ubuntu/projects/tmp/` склонированы 11 репо (лицензии сверены поштучно): codex/gemini-cli/**grok-build (офиц. xAI, open-sourced 15.07.2026, Apache-2.0)**/goose/aider/cline/openai-go — Apache-2.0; opencode/anthropic-sdk-go — MIT; litellm — MIT-ядро (`enterprise/` не читать); crush — FSL-1.1 (читать можно, копировать нельзя). **Leaked-форки Claude Code — ВНЕ периметра** (контаминация; офиц. трекер/чейнджлог — онлайн). Промт: `LLM_TRANSPORT_RESEARCH_SESSION_PROMPT.md` — Q1 cache-раскладка инъекции (до ×50 на входе flash), Q2 rate-limit адаптив (Mistral-арм), Q3 finish_reason-таксономия, Q4 retry/fatal vs 04-unhappy-paths, Q5 usage/ledger, Q6 streaming-надёжность, Q7 issue-sweep по нашим провайдерам → кандидаты в 00-provider-quirks. Жёстко: $0 (никаких вызовов), backend read-only (патчи — только после пере-прогона), file:line-грунтовка, выход `research/21` некоммиченным.
## Оркестратор №7 — гейт DeepSeek закрыт факт-чеком, промт ПЕРЕ-ПРОГОНА выдан, 20.07
**Гейт 24.07 закрыт по существу** (офиц. `api-docs.deepseek.com/quick_start/pricing`, 20.07): катовер депрекейтит ТОЛЬКО старые алиасы `deepseek-chat`/`deepseek-reasoner` — мы на `v4-flash`/`v4-pro`, не затронуты; цены байт-в-байт равны `models.yaml` (flash $0.14/$0.0028/$0.28, pro $0.435/$0.003625/$0.87); анонсов изменений нет. Остаточный риск (тихая смена цены в день катовера) страхуется потолком леджера + повторным прайс-чеком 24.07, если прогон жив (вписан в промт). **Промт операционной сессии выдан: `PERERUN_SESSION_PROMPT.md`** — главы 15, ОДИН resnapshot, майнинг-стоп → резидуал-подпись (тачпойнт №1), армы glm/mistral/deepseek-pro с проверкой $0-резюма драфта по ledger («переоплата ОДНА» на живых деньгах), риг D39.7, блайнд-пакет D39.8 (тачпойнт №2 — чтение, планка ≤2 претензии), потолок $15/$15. Стенд-артефакты сверены: контраст `eval/exp16/data/jieba_dict_general_zh.txt` · сид v2 · подписанная карта exp16 — все на месте.

View file

@ -16,7 +16,7 @@
- `experiments/` — эмпирика «Полигона»: `00-provider-quirks` (читать перед любым вызовом провайдера), `01-token-calibration`, `02-refusal-benchmark`, `03-local-stand`, `04-editor-quality`, `06-local-extraction`, `07-coverage-precision`, `08-cost-model-v2` (актуальная денежная модель), `09-pilot-protocol` (пилот Ф2.5 + поправки D13), `10-explicit-benchmark` (18+ violence-рука канала B), `11-erotica-benchmark` (erotica по трём парам/регистрам — закрытие D14.4, D22).
- `research/` — фактура исследований 0405.07: `0110` базовые, `11-gap-*` добор критиком, `12-*` режимы отказа/отзывы/таксономии (+ два внешних материала с провенанс-шапками), `13` валидация памяти, `14` адаптивная память, `15` голос и состояние (принят, D21), **`16` ридер-IDE (принят с ревью-шапкой, D29)**, **`17` внешняя критика GPT-5.6 (принят с ревью-шапкой, D25)** — у 16/17 читать шапку прежде тела. **`18` рычаги качества (два отчёта, D36)** · **`19` нарезка+когезия+контракт t/e (D39.1)** · **`20` банк-майнинг W1.5 (D39.6)** — у всех ревью-шапки. ⚠ Часть под superseded-баннерами (01/02/03/04/05/09 и gap-1/2/5) — **читай баннер прежде содержимого**.
- `PROGRESS.md`**журнал** (CURRENT-STATE сверху, ниже хронология; НЕ источник решений).
- **Активные хендофф-промты (пост-D39.19, 20.07):** [`PERERUN_SESSION_PROMPT.md`](PERERUN_SESSION_PROMPT.md) (**операционная сессия пере-прогона — ТЕКУЩИЙ шаг**: главы 15, ОДИН resnapshot, армы glm/mistral/deepseek-pro, риг D39.7, блайнд-пакет D39.8) · [`ORCHESTRATOR_SESSION_PROMPT.md`](ORCHESTRATOR_SESSION_PROMPT.md) (хендофф №5 оркестратора) · [`POLYGON_PACKAGE4_SESSION_PROMPT.md`](POLYGON_PACKAGE4_SESSION_PROMPT.md) (residual пилот/18+/echo). **ПАК-11 + ПРЕП ЗАВЕРШЕНЫ.** Гейт DeepSeek 24.07 закрыт факт-чеком 20.07 (наши слаги не под депрекацией, цены совпадают; повторный чек 24.07 вписан в промт). Закрытые — в `archive/prompts/` (свежие: преп→D39.19, пак-11/R1→D39.17, арх-cleanup→D39.16).
- **Активные хендофф-промты (пост-D39.19, 20.07):** [`PERERUN_SESSION_PROMPT.md`](PERERUN_SESSION_PROMPT.md) (**операционная сессия пере-прогона — ТЕКУЩИЙ шаг**: главы 15, ОДИН resnapshot, армы glm/mistral/deepseek-pro, риг D39.7, блайнд-пакет D39.8) · [`LLM_TRANSPORT_RESEARCH_SESSION_PROMPT.md`](LLM_TRANSPORT_RESEARCH_SESSION_PROMPT.md) (параллельный ресёрч: 11 чужих харнессов в `/home/ubuntu/projects/tmp/`, $0, backend read-only → research/21) · [`ORCHESTRATOR_SESSION_PROMPT.md`](ORCHESTRATOR_SESSION_PROMPT.md) (хендофф №5 оркестратора) · [`POLYGON_PACKAGE4_SESSION_PROMPT.md`](POLYGON_PACKAGE4_SESSION_PROMPT.md) (residual пилот/18+/echo). **ПАК-11 + ПРЕП ЗАВЕРШЕНЫ.** Гейт DeepSeek 24.07 закрыт факт-чеком 20.07 (наши слаги не под депрекацией, цены совпадают; повторный чек 24.07 вписан в промт). Закрытые — в `archive/prompts/` (свежие: преп→D39.19, пак-11/R1→D39.17, арх-cleanup→D39.16).
- `archive/` — закрытые сессионные промты (только история, инструкции оттуда не исполнять).
## Статус (2026-07-19, пост-D39.16 — стройка пере-прогонного стека)