meta(tasks): llm-web-proxy-qwen-web UNBLOCKED — browser path through baxia-WAF implemented (lwp 0.1.9), live HTTP 200 headless

This commit is contained in:
2026-08-22 21:22:36 +03:00
parent 46c8a0922e
commit ab9df5e5d7
2 changed files with 7 additions and 1 deletions

View File

@@ -1,4 +1,5 @@
# Admin Task Board
_Updated: 2026-08-22 — 🟢 **[llm-web-proxy-qwen-web] UNBLOCKED + live GREEN** (vitya): браузерный путь через baxia-WAF реализован (lwp 0.1.9, commit 43840ce): src/lib/qwen-browser.js (lazy puppeteer-core, persistent-профиль, фингерпринт-спуфинг) + executor runFlow/browser-fallback/force + CLI `--browser [fallback|force]`. Тесты 25/25 (qwen-browser 6, fallback 6, config 3 — все новые). **LIVE: qwen-web HTTP 200 headless** («Hi», «4»=2+2), капча руками НЕ понадобилась (куки из секрета + фингерпринт страницы). Конфиг: `browser: {enabled, force, headless:true}` в secrets.json qwen-main. Осталось (опционально): live-smoke стриминга и тулов через браузер. Референс: ForgetMeAI FreeQwenApi (212★), docs/reference/forgetmeai/._
_Updated: 2026-08-22 — 🟡 **[llm-web-proxy-qwen-web] PAUSED** (решение vitya: стоп, next-сессия покажет рабочий подход; WAF-стена: baxia капча даже из браузера). Docker починен (GPU-крэш → DisableHardwareAcceleration). Хендофф записан._
_Updated: 2026-08-22 — 🔵 **[llm-web-proxy-qwen-web]** executor готов и задеплоен (0.1.7, 92 теста, капча-детект, фикс model-alias), live заблокирован капчей — нужен свежий Cookie от vitya. Docker Desktop починен (GPU-крэш → DisableHardwareAcceleration)._
_Updated: 2026-08-22 — 🆕 подзадача ⚪ **[llm-web-proxy-qwen-web]** заведена (п.4 qwen-web: DNS EAI_AGAIN перепроверен — chat.qwen.ai резолвится, блокер снят; ключ есть; комбо добавить в lwp). ⚪ **[llm-web-proxy] заведена** (спека .tasks/llm-web-proxy.md: кастомный web-LLM провайдер для pi + Claude Code — web-чаты, эмуляция тулов, без оверкилла omniroute; делать в следующей сессии). 🟢 **[sched-pipelines-local-stack] ЗАКРЫТА** (ритуал закрытия, решение vitya): мок-кампания финализирована ранее (0.1.0 published оба воркера, повторные раны noop, 0.2.0-кейс проверен симуляцией и откачен; фикс #7 httpGet fetch-Response контракта принят). Реальный деплой apilki — за отмашкой юзера (в «Спроси user'а»); VDS-миграция — таска sched-vds-deploy (paused). Wiki: +2 концепта в shared (verdaccio-token-buildkit-secret, msys-no-pathconv-docker-windows).

View File

@@ -55,9 +55,14 @@
- [x] 2026-08-22: подтверждено, что qwen-executor'а в lwp ещё нет (только deepseek). *(позднее: executor добавлен коммитом 6ef57bc — v2 API, cookie jar + детект капчи)*
- [x] 2026-08-22: живой прогон — лог `waf=captcha-envelope` на completion (детект работает, запрос блокируется WAF).
- [x] 2026-08-22: внешний источник найден (FreeQwenApi): браузерный путь через baxia-WAF, референс в `docs/reference/forgetmeai/`, дизайн в `.wiki/concepts/qwen-waf-browser-path.md`.
- [ ] Реализация браузерного executor'а (вариант A или B) — следующий шаг.
- [x] 2026-08-22: **браузерный путь РЕАЛИЗОВАН (lwp 0.1.9, commit 43840ce)** — вариант A (браузер-фасад): `src/lib/qwen-browser.js` (lazy puppeteer-core + системный Chrome, persistent-профиль `<dataDir>/profiles/qwen-browser`, фингерпринт-спуфинг, cleanProfileLocks) + executor `runFlow(fetchImpl)` с blocked-маркером (WAF html / captcha-эневелоп → retry всей цепочки через браузер) + `force`-режим; конфиг `browser` в секрете аккаунта; CLI `lwp account add ... --browser [fallback|force]`; build.mjs external puppeteer-core.
- [x] 2026-08-22: тесты — `qwen-browser.test.ts` (6, fake launch), `qwen-browser-fallback.test.ts` (6, injected browserFactory), `browser-config.test.ts` (3); всего 25/25, регрессов нет.
- [x] 2026-08-22: **LIVE GREEN** — qwen-web HTTP 200 (headless=true): `2+2` → «4», лог `[QWEN-BROWSER] event=browser-fetch status=200` на chats/new + completion. Капча руками не понадобилась.
- [x] 2026-08-22: задеплоено в live-сервис (restart, qwen-main `browser: {enabled:true, force:true, headless:true}`), smoke-ключ ревокнут.
- [ ] (опц.) live-smoke стриминга и tool-calls qwen через браузерный путь.
## Notes
- Родитель llm-web-proxy — 🔴 active (claimed 2026-08-22, vitya). Эта подзадача ⚪ ready, берётся в работу после/параллельно с п.2 (mac/linux autostart).
- «Настоящий» web-чат Qwen без подписки — бесплатный, тул-эмуляция emulated (wiki:58).
- **2026-08-22 вечер: подзадача разблокирована.** Диагноз подтверждён (baxia-WAF привязана к device-фингерпринту, Node-fetch мёртв), решение реализовано: fetch внутри реальной страницы (`page.evaluate`), фингерпринт-спуфинг, persistent-профиль. Live 200. Детали: lwp `.wiki/concepts/qwen-waf-browser-path.md` (статус → implemented).