Slim product to Jobs+Settings and drop expired/rediscovered noise.
Hide unused nav surfaces, probe listing URLs before import, add Danger Zone cleanup for archive matches and dead links, and stop rebuilding jobs on every migrate boot.
This commit is contained in:
@@ -71,6 +71,7 @@ Defaults and constraints:
|
||||
- Every card carries Google's own `data-share-url` permalink for that specific listing, which the extractor uses as `jobUrl` — so a job stays unique and reviewable even if the "click into the card for a detail pane" step below fails for it.
|
||||
- Because resolving a real application link requires clicking each card in a real browser, this extractor is slower per job than API-backed sources — keep `googleJobsMaxJobsPerTerm` modest for frequent runs.
|
||||
- If no external "Apply on <site>" link is found for a card, the extractor falls back to Google's own permalink for that listing so it's still reviewable, but not directly one-click-applyable.
|
||||
- After scraping, JobOps probes each apply URL (preferring the external link over Google's share permalink). Listings that return **404/410** or pages that say the job expired / is no longer available are **dropped before import**. Network failures fail-open (job is kept).
|
||||
- Automated, frequent, or high-volume scraping of Google search results may be against Google's Terms of Service; treat this extractor as best-effort and keep run frequency/volume conservative.
|
||||
- See [Dealing with Google's CAPTCHA / bot detection](#dealing-with-googles-captcha--bot-detection) above for proxy and interactive-solve options.
|
||||
|
||||
|
||||
@@ -53,13 +53,23 @@ Use **Filters → Employer keywords → Hide roles you already skipped** to togg
|
||||
|
||||
Uncheck the filter to temporarily review rediscovered rows that match older skips.
|
||||
|
||||
### Clean up rediscovered rows already in Discovered
|
||||
|
||||
If older pipeline runs left Discovered copies of roles you already skipped or applied:
|
||||
|
||||
1. Open **Settings → Danger Zone**.
|
||||
2. Use **Clear Rediscovered Archive Matches**.
|
||||
3. Confirm. JobOps permanently deletes matching **Discovered** rows only (Ready / Applied / Skipped stay).
|
||||
|
||||
Matching uses the same employer+title (and employer+description) keys as skip/import dedup.
|
||||
|
||||
## Defaults and constraints
|
||||
|
||||
- Prior-skip hiding uses employer + title only (not description text).
|
||||
- The 90-day window applies to both the Jobs list filter and pipeline import suppression for skipped/applied rows.
|
||||
- Description matching during import still requires at least **80 characters** of normalized text; short or empty descriptions fall back to employer+title only.
|
||||
- Matching is **per profile** (`ownerProfileId`); different login profiles do not share dedup state.
|
||||
- Dedup does **not** delete existing rows retroactively when you change skip list or country filters — run discovery again or skip manually for old data.
|
||||
- Dedup does **not** delete existing rows retroactively when you change skip list or country filters — use **Clear Rediscovered Archive Matches** in Danger Zone, run discovery again, or skip manually for old data.
|
||||
- Very different titles at the same company (for example `SDET` vs `Product Designer`) are **not** collapsed.
|
||||
|
||||
## Common problems
|
||||
|
||||
@@ -186,6 +186,8 @@ Readiness requires:
|
||||

|
||||
|
||||
- Clear jobs by selected statuses
|
||||
- Clear rediscovered archive matches (Discovered jobs that match skipped/applied roles)
|
||||
- Mark expired listings (probe Discovered URLs; mark 404/410 / “job expired” as expired)
|
||||
- Clear jobs below a score threshold
|
||||
- Clear the full database
|
||||
|
||||
|
||||
Reference in New Issue
Block a user