Skip to content

feat(web-extract): support source-qualified URL benchmarks and independent reports - #260

Open
lanyue-llk wants to merge 27 commits into
mainfrom
codex/web-extract-public-benchmarks
Open

lanyue-llk wants to merge 27 commits into
mainfrom
codex/web-extract-public-benchmarks

Conversation

@lanyue-llk

@lanyue-llk lanyue-llk commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

Web Extract can now evaluate source-qualified URL tasks with custom schemas and list queries, then publish several independent benchmarks through the existing report renderer. Live tasks use the original website; archived tasks use a version-bound public HTML service. Providers receive field requirements, never reference answers.

The shared adapter freezes instructions, source/reference hashes, captured resources and input routes before collection. Source access blocks stay separate from invalid references. Certified, disjoint task scopes can be assembled without repeating successful calls. Live inputs cannot enter archived repair paths, and URL routes no longer decode unused HTML. The portable evaluator and runtime use the same text and URL matching rules.

Cloudflare reuse requires both an API-confirmed immutable deployment and a complete page/resource byte-verification proof for the selected inventory. Concurrent first users share one audit, static downloads reuse connections, and later runs reuse the proof. External or unconfirmed hosts still require direct byte checks. Repair collection and offline verification share the same receipt contract.

Reports keep each benchmark's denominator, quality metrics, latency and normalized prices separate. Arbitrary schema field names retain their identity in result filters; hosted navigation and on-demand evidence work from nested cohort pages. Output paths and reserved language directories are rejected before writes.

Validation covers source text/URL equivalence, malformed answers, reference multiplicity, native live routes, resumable collection, managed/external resource integrity, concurrent snapshot users, certified scope assembly, nested report navigation, pricing and evidence controls. Python and JavaScript behavior checks pass. The delivered report passed 176 desktop/narrow and light/dark page states; hosted success/error drilldown and keyboard navigation were exercised.

Report and ImageGen evaluation-flow diagram (organization access). The report contains Expanded SWDE 210 tasks, NewsXLM 189 tasks and LiveWeb-IE 200 tasks. Oxylabs' 342 quota-rejected archived tasks are retained as account failures and excluded from those quality comparisons. Dataset inputs, provider responses, report prose and illustrations remain outside Git.

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Review complete · cd58a77

This review found 9 issue(s), including 9 blocking issue(s).

Comment thread src/harness/web_extract/analysis.py Resolved
Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved
Comment thread src/harness/web_extract/swde.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · d5c502b

This review found 9 issue(s), including 9 blocking issue(s).

Comment thread src/harness/web_extract/analysis.py Resolved
Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved
Comment thread src/harness/web_extract/swde.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · bfa8668

This review found 9 issue(s), including 9 blocking issue(s).

Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved
Comment thread src/harness/web_extract/swde.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · f8e483b

This review found 5 issue(s), including 5 blocking issue(s).

Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved
Comment thread src/harness/web_extract/swde.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 45bd414

This review found 6 issue(s), including 6 blocking issue(s).

Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/report.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved
Comment thread src/harness/web_extract/swde.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Review complete · 37f6482

This review found 3 issue(s), including 3 blocking issue(s).

Comment thread src/harness/web_extract/example.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report_suite.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · a7ea87d

This review found 3 issue(s), including 3 blocking issue(s).

Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report_suite.py Resolved
@lanyue-llk lanyue-llk changed the title feat(web-extract): support source-qualified URL cohorts feat(web-extract): support source-qualified URL benchmarks and independent reports Nov 6, 2026

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 7c81b06

This review found 3 issue(s), including 3 blocking issue(s).

⚠️ 1 warning(s) occurred during review.


⚠️ Warnings:

  • src/harness/web_extract/report_suite.py (token_budget_reached): stopped group "src/harness/web_extract/report_suite.py" mid-review: used 511079 tokens exceeds budget 500000

Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/report_suite.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 86ea6b8

This review found 2 issue(s), including 2 blocking issue(s).

⚠️ 1 warning(s) occurred during review.


⚠️ Warnings:

  • src/harness/web_extract/report_suite.py (token_budget_reached): stopped group "src/harness/web_extract/report_suite.py" mid-review: used 558951 tokens exceeds budget 500000

Comment thread src/harness/web_extract/report_suite.py Resolved
Comment thread src/harness/web_extract/report_suite.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Review complete · 8b61a64

This review found 3 issue(s), including 3 blocking issue(s).

Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 7e81669

This review found 6 issue(s), including 6 blocking issue(s).

Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · d9279c8

This review found 4 issue(s), including 4 blocking issue(s).

Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/records.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · e37eb2a

This review found 3 issue(s), including 3 blocking issue(s).

Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 3ebaf2f

This review found 5 issue(s), including 5 blocking issue(s).

Comment thread src/harness/web_extract/pipeline.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/repair.py Resolved
Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Re-review complete · 3bee61d

This review found 1 issue(s), including 1 blocking issue(s).

⚠️ 1 warning(s) occurred during review.


⚠️ Warnings:

  • src/harness/web_extract/snapshots.py (token_budget_reached): stopped group "src/harness/web_extract/snapshots.py" mid-review: used 572409 tokens exceeds budget 500000

Comment thread src/harness/web_extract/snapshots.py Resolved

@lexmount-ocr lexmount-ocr Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Re-review complete · eed0365

No findings in this incremental review.

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