Skip to content

fix: harden HTML adapters with live E2E coverage - #27

Open
lennney wants to merge 5 commits into
mainfrom
codex/harden-html-search-live-e2e
Open

fix: harden HTML adapters with live E2E coverage#27
lennney wants to merge 5 commits into
mainfrom
codex/harden-html-search-live-e2e

Conversation

@lennney

@lennney lennney commented Jul 28, 2026

Copy link
Copy Markdown
Owner

Summary

  • Harden Bing, Baidu, and Yandex HTML adapters against parser drift: recognized cards that stop parsing now report parse_error instead of silently returning an empty success.
  • Classify anti-bot challenge bodies and redirect URLs before ordinary HTTP status mapping, including HTTP 200, 403, and 429 responses.
  • Preserve adapter failures through both parallel and waterfall free_search execution as structured partialFailures.
  • Make live E2E probes bounded and deterministic: budget exhaustion skips cleanly, a bot challenge stops later probes, provider coverage is tracked separately from extraction, and invalid engine selections fail before build/network work.

Validation

  • npm run build
  • npm run lint
  • npm test ✅ 77 test files, 788 passed, 5 skipped
  • git diff --check
  • Offline stdio E2E ✅ initialize/tools-list
  • Live runner validation ✅ invalid/empty LIVE_E2E_ENGINES exits with code 2 before build/network work

Live E2E

The opt-in live suite remains bounded by LIVE_E2E_MAX_REQUESTS and LIVE_E2E_MIN_INTERVAL_MS. The existing live run was intentionally opt-in and observed provider-dependent availability: Bing returned results, Baidu returned bot_challenge, and later probes were skipped. The latest local verification did not make additional real network requests.

Live provider availability varies by exit and time; the suite does not claim stable search availability or quality.

@lennney
lennney force-pushed the codex/harden-html-search-live-e2e branch from ffd9d19 to 456d500 Compare July 28, 2026 05:43
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