feat(discovery): blocked countries filter and smoke subprocess fixes
CI / Linting (Biome) (push) Failing after 41s
CI / Tests (push) Successful in 5m27s
CI / Type Check (adzuna-extractor) (push) Successful in 1m9s
CI / Type Check (gradcracker-extractor) (push) Successful in 1m13s
CI / Type Check (hiringcafe-extractor) (push) Successful in 1m9s
CI / Type Check (orchestrator) (push) Successful in 1m24s
CI / Type Check (startupjobs-extractor) (push) Successful in 1m8s
CI / Type Check (ukvisajobs-extractor) (push) Successful in 1m9s
CI / Documentation (push) Successful in 1m59s

Add blockedCountries in Settings so pipeline discovery drops jobs whose
location mentions listed countries (existing discovered rows are kept).
Document the feature, fix smoke tsconfig inheritance for nested extractors,
and run smoke via an absolute-tsconfig wrapper.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-05-16 11:41:29 -04:00
co-authored by Cursor
parent c840f289e1
commit f5179304c1
27 changed files with 470 additions and 23 deletions
+17
View File
@@ -0,0 +1,17 @@
import { spawnSync } from "node:child_process";
import path from "node:path";
import { fileURLToPath } from "node:url";
const scriptsDir = path.dirname(fileURLToPath(import.meta.url));
const repoRoot = path.join(scriptsDir, "..");
const tsx = path.join(repoRoot, "node_modules", ".bin", "tsx");
const tsconfig = path.join(scriptsDir, "tsconfig.smoke.json");
const smokeScript = path.join(scriptsDir, "smoke-extractors.ts");
const result = spawnSync(
tsx,
["--tsconfig", tsconfig, smokeScript, ...process.argv.slice(2)],
{ cwd: repoRoot, stdio: "inherit", env: process.env },
);
process.exit(result.status ?? 1);