meta(wiki): ingest ForgetMeAI free web-chat proxy analysis (concept + raw) + qwen-web task update (browser path through baxia-WAF)

This commit is contained in:
2026-08-22 20:22:00 +03:00
parent ff5e778d74
commit 46c8a0922e
6 changed files with 164 additions and 3 deletions

View File

@@ -23,6 +23,12 @@
- `open-sse/executors/qwen-web.ts` — из docker-образа `diegosouzapw/omniroute:latest` (`/app/`), паттерн вытаскивания deepseek-web.ts (уже отработан в llm-web-proxy).
- Парсеры тулов общие — `webTools.ts` уже есть, переиспользовать.
## Находка 2026-08-22 (вечер): прямой fetch мёртв — нужен браузерный путь
Подтверждено внешним источником (ForgetMeAI/FreeQwenApi, 212⭐): **Node-fetch в принципе не проходит baxia-WAF** — капча привязана к device-фингерпринту (bx-umidtoken минтится JS из sg-wum.alibaba.com в контексте страницы), не к cookie. Рабочий путь — **fetch внутри `page.evaluate`** на живой странице chat.qwen.ai (настоящий umidtoken + canvas-фингерпринт + same-origin).
Референс (закоммичен в lwp): `docs/reference/forgetmeai/` (фингерпринт-сниппет, browser-fetch паттерн, cloakbrowser-заметки). Дизайн решения: `.wiki/concepts/qwen-waf-browser-path.md` (варианты A — браузер-фасад / B — полный браузерный executor).
## Что писать в lwp
1. executor `qwen-web` (по паттерну deepseek-web, но НЕ копипастить логику тул-эмуляции — общий модуль).
@@ -39,13 +45,17 @@
## Open questions
- [ ] Актуальный userToken chat.qwen.ai жив? (проверить при работе — EAI_AGAIN мог быть и от бана/истечения)
- [ ] Какая модель по умолчанию у qwen-web (qwen3-max? qwen3-flash?) — смотреть executor omniroute.
- [x] 2026-08-22: Актуальный userToken chat.qwen.ai жив? (проверено: executor детектит капчу, не 401 по токену — токен жив, блокирует WAF)
- [ ] Какая модель по умолчанию у qwen-web (qwen3-max? qwen3-flash?) — в lwp стоит `qwen3.7-max` (из executor'а omniroute, alias-таблица в qwen-web-executor.ts)
- [ ] Браузерный путь: какой движок (puppeteer-extra vs playwright), persistent-профиль, ручной проход капчи один раз
## Completed steps
- [x] 2026-08-22: DNS-блокер перепроверен — chat.qwen.ai резолвится (EAI_AGAIN ушёл).
- [x] 2026-08-22: подтверждено, что qwen-executor'а в lwp ещё нет (только deepseek).
- [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) — следующий шаг.
## Notes