All notable changes to this Actor are documented here.
Un-shelved. The Actor was fully implemented (client.py, parser.py, targets.py,
scraper.py — see docs/specs/wellfound-jobs-scraper/) but never published: it
carried a shelve note reading
. That note named a third-party proxy
vendor, not a wall in
wellfound.com's own defences, and it read — to anyone triaging the shelf list
later — as if the target itself were the blocker. It wasn't. A 2026-08-26
cloud probe (run
zzuPK3zgkC2igPLXx) swapped ONLY the proxy tier — same
curl-cffi +
firefox147 impersonation, same URL shapes, same parser — from
WebShare to Apify's own
RESIDENTIAL group pinned
country_code=US, with a
fresh exit IP per page (harsher than the original recon's same-session
retry methodology). Result: 20/20 pages HTTP 200, 705 rows parsed, zero
degradation at page 20 vs page 1, circuit breaker never tripped. Apify
RESIDENTIAL was never tried before this — WebShare's residential pool was
reputation-poisoned against this target; Apify's is not.
- Proxy default changed: WebShare env-var override REMOVED, not
reordered.
src/main.py::_build_proxy_factory used to let
WEBSHARE_PROXY_URL (env) silently take precedence over Apify Proxy
whenever the var happened to be set — a dormant trap that could re-route
every future run through the same poisoned pool that produced the false
shelve verdict. The override is gone; Apify Proxy is now the only proxy
path. tests/test_main.py gained a regression test that sets
WEBSHARE_PROXY_URL and asserts it has zero effect on the resolved
proxy URL, alongside the existing no-env-var-set path — both directions
covered.
- **
proxy_configuration default now pins apifyProxyGroups: ["RESIDENTIAL"]
apifyProxyCountry: "US"** (src/models.py, .actor/input_schema.json
default + prefill, kept in sync per the prefill-validation gate) — the
exact tier+country the probe confirmed clears the wall, instead of
leaving proxy tier unpinned and hoping a customer's default routing lands
somewhere that works.
- Removed from
SHELVED in scripts/publish_actors.py.
- Cost measured on the probe run: $0.0169 total, ~$0.024 per 1,000 rows
(settled figure — see
docs/specs/wellfound-jobs-scraper/ probe notes) —
curl-cffi/RESIDENTIAL has none of the headless-browser egress overhead a
Camoufox path would carry, so PPE pricing at the fleet-standard $0.20
actor-start + $0.0015/result-row (matching recruitee-jobs-scraper /
workday-jobs-scraper) carries a very wide margin.