GitHub Actions workflow running lint, type-check, and tests on every pull request. Blocks merge on failure.