Skip to content

fix(providers): restore specialty validator dispatch for web-cookie providers (+ restore-green for #4440/#4443 baselines) - #4460

Closed
diegosouzapw wants to merge 1 commit into
release/v3.8.32from
fix/qwen-web-specialty-regression-4023
Closed

diegosouzapw wants to merge 1 commit into
release/v3.8.32from
fix/qwen-web-specialty-regression-4023

Conversation

@diegosouzapw

Copy link
Copy Markdown
Owner

Summary

Test plan

  • TDD red→green on the existing regression test tests/unit/qwen-web-cookie-validation-3958.test.ts (was failing on the tip of release/v3.8.32; passes after the fix).
  • New invariant test tests/unit/web-cookie-specialty-dispatch.test.ts enforces (a) every entry in the override set is a real web-cookie provider, and (b) qwen-web's dispatch hits /api/v2/user, never /models.
  • Related validation test suites (provider-validation-specialty, provider-validation-hardening, provider-validation-azure-vertex, the existing qwen-web test, the new invariant test): 131/131 passing locally.
  • npm run check:file-size, npm run typecheck:core, npm run lint — all clean.

File-size rebaselines (documented in config/quality/file-size-baseline.json)

File Was Now Reason
src/lib/providers/validation.ts 4518 4556 +38 — this fix (gate + comment + test-export const)
src/shared/constants/pricing.ts 1620 1623 +3 — drift from #4440 (CC pricing alignment) merged with --admin
open-sse/executors/base.ts 1399 1407 +8 — drift from #4443 (granular reasoning_effort) merged with --admin

…roviders

PR #4023 introduced a generic /models web-cookie probe in
validateProviderApiKey that silently took precedence over the
per-provider specialty validators (qwen-web, grok-web, chatgpt-web,
claude-web, gemini-web, copilot-web, deepseek-web, perplexity-web,
blackbox-web, muse-spark-web, t3-web, adapta-web, inner-ai).

For qwen-web this regressed the body-check fix from #3958 — the generic
probe accepts any 200 as valid, where the specialty validator inspects
data.user on /api/v2/user to detect expired sessions that still return
200. Every other specialty web-cookie validator was equally bypassed.

The dispatcher now gates the generic probe on a
WEB_COOKIE_PROVIDERS_WITH_SPECIALTY_VALIDATOR set so providers with
bespoke validators reach them again. A new
tests/unit/web-cookie-specialty-dispatch.test.ts enforces the invariant
(every override must really be a registered web-cookie provider, and
qwen-web's specialty path must hit /api/v2/user, not /models).

Also rebaseline (restore-green of release/v3.8.32 fast-gates):
- src/lib/providers/validation.ts 4518 -> 4556 (own growth, this fix)
- src/shared/constants/pricing.ts 1620 -> 1623 (drift from #4440)
- open-sse/executors/base.ts 1399 -> 1407 (drift from #4443)
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Warning

You have reached your daily quota limit. Please wait up to 24 hours and I will start processing your requests again!

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@diegosouzapw

Copy link
Copy Markdown
Owner Author

Fechando como superseded. O conteúdo deste PR aterrissou em release/v3.8.32 dividido em peças estreitas:

Como as duas metades já estão na release (e este branch ficou CONFLICTING contra elas), não há nada a mergear aqui. Reabrível se necessário.

@diegosouzapw
diegosouzapw deleted the fix/qwen-web-specialty-regression-4023 branch June 23, 2026 13:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant