invisible_playwright/.github/workflows
feder-cr e524695088 fix(webrtc): ship the validated proxy realness config + CI guards
Audit follow-up (2026-06-10), all validated before commit.

#2 WebRTC — the shipped baseline now MATCHES the manually-validated config
(behind a residential proxy: host=<uuid>.local, srflx=proxy egress, No-Leak,
gathering completes, indistinguishable from vanilla Firefox on BrowserLeaks +
CreepJS):
  - prefs baseline obfuscate_host_addresses False->True; add
    zoom.stealth.webrtc.disable_ipv6=True; drop the dead
    media.peerconnection.ice.disableIPv6 (no-op on FF150)
  - launcher auto-derives the proxy egress IP via _geo.prepare_session_geo
    (one round-trip shared with the timezone resolution) and feeds nICEr via
    STEALTHFOX_WEBRTC_PUBLIC_IP + STEALTHFOX_WEBRTC_DISABLE_IPV6 in _build_env
    (sync + async); an explicit caller env still wins. The C++ mechanisms were
    already in firefox-9 — this activates them, no rebuild.

#1 drop orphan prefs zoom.stealth.timezone + zoom.stealth.seed (read by no C++;
   the live ones are juggler.timezone.override + zoom.stealth.fpp.hw_seed).

#3 release title 'rev N' instead of 'rev firefox-N'.

CI guards (unit, leak-safe — no real proxy/creds, the kind that would have
caught this gap at zero cost):
  - shipped-baseline guard + no-orphan-prefs (test_webrtc_realness.py)
  - egress auto-derive in _build_env (test_launcher_helpers.py)
  - prepare_session_geo returns (tz, egress) (test_geo.py)
CI keeps faking 'behind a proxy' with an in-process TCP-only SOCKS5 + RFC 5737
TEST-NET IPs; real-proxy residential realness stays a LOCAL manual gate.

449 unit pass.
2026-06-10 14:30:16 +02:00
..
e2e.yml docs: correct e2e count 138 -> 127 in e2e.yml + run_e2e.py comments 2026-06-09 18:29:58 +02:00
firefox-launch-matrix.yml ci: fix firefox --version check (stdout match, not exit code) 2026-05-25 07:25:23 -07:00
release.yml fix(webrtc): ship the validated proxy realness config + CI guards 2026-06-10 14:30:16 +02:00
tests.yml tests: add/update .github/workflows/tests.yml 2026-05-15 20:01:59 -07:00
verify-assets.yml ci: pin actions to SHA + single-source the playwright pin (audit B6/B4) 2026-06-09 15:59:18 +02:00
webrtc-e2e.yml test(webrtc): realness sentinels + e2e behind a fake TCP-only SOCKS proxy 2026-06-06 18:39:03 +02:00