we (web engine): Experimental web browser project to understand the limits of Claude

Add --real-web runner with summary report (isu issue 260) master

Implements the Phase 23 orchestrator that walks every `crates/e2e/scenarios/real-web/*.we` scenario, runs each through the standard scenario engine, captures pass/fail/panic/xfail status with per-scenario wall-clock time, peak RSS, and the maximum screenshot diff percentage observed during `assert_screenshot_matches`, and writes a deterministic `report.json` under `<out-dir>/real-web/`. Per-scenario artifacts (PNGs, DOM dumps, console captures, `perf.json`, `panics/L<lineno>.txt`) land under `<out-dir>/real-web/runs/<domain>/`. The runner survives per-scenario panics: each scenario already runs under `panic::catch`, so one buggy site cannot abort a batch. Exit code is non-zero on any `fail` or `panic`, `0` otherwise. `--real-web-online` re-fetches every `goto_as <url> <path>` target through the live network before running each scenario, overwriting the on-disk snapshot for ad-hoc re-baselining. No commits are issued. Scenarios that need to be marked expected-to-fail can include a `# xfail` comment near the top of the `.we` file; xfailed scenarios are counted separately and do not fail the overall run.


+935 -17
6 changed files