Repository navigation
Default new reports to English and support explicit language selection - #46
Conversation
lanyue-llk
left a comment
There was a problem hiding this comment.
Review conclusion
Conditional pass. The PR addresses new users receiving Chinese reports and adds explicit language selection. Reusing the existing renderers with a shared language contract is appropriate; no parallel renderer is needed. Two public-entry compatibility regressions should be fixed before merging.
Findings and recommendations
The inline comments identify the affected Make targets and historical build commands, with reproductions and minimal fixes. Keep language resolution in the shared owner and add boundary tests for both scenarios.
Validation at this commit: 200 Python tests and 9 subtests passed across public language selection, language contracts, release history, presentation, WCXB, Browser Use and trajectory replay. All three report UI/loader Node suites passed. Real Chrome navigation passed at 1280px and 390px in both color schemes: default English, Chinese switch, results navigation, Chinese home and English return. Additional baseline/head compatibility probes reproduced both findings. These checks cover report behavior; they do not repeat provider calls or review measured benchmark verdicts.
New users currently get Chinese reports from the public CLI, and rebuilding a report offers no language choice. This change defaults new reports to English and adds
--language en|zhto the maintained Web Fetch, Browser Use and qualified WebArena replay builders. Rebuilding without a language keeps the saved choice, including older Chinese reports.English builds retain a switchable Chinese edition. The hosted report root opens the selected language, and Chinese navigation remains usable. Unsupported language codes fail before calls or output changes. Make forwards a language only when explicitly provided, preserving saved choices on ordinary rebuilds. Historical Chinese-only builders retain their existing no-language commands and reject explicit English requests; their limits are listed in the publishing guide.
The existing renderers still own both editions. Shared language metadata and checks bind the selected entry to generated pages. Language selection changes no scoring, calls or measured evidence. English localization now covers report controls and accessibility labels; structured release translations use the current report's records instead of reading repository history during module import, so installed packages can build English reports outside a checkout.
Validation:
GitHub CI passed: full repository checks, all four installed-package variants and base CLI checks on Python 3.12–3.14.
Language and report regression checks: 121 tests and 50 subtests passed, including six Make entry points, saved Chinese choices, explicit overrides and actual historical diagnostic builds.
Public run/rebuild/switch scenarios, unsupported-language controls, preserved evidence, localization and historical release tests.
Installed-wheel smoke checks outside the checkout: base, WebMainBench, OSS adapters and reference audit.
Chromium navigation through default English, Chinese return, success/failure details and raw evidence; normal and preview hosting, desktop/narrow widths and light/dark themes.
Report links, track naming, lint and Node report-interface tests.