-
Notifications
You must be signed in to change notification settings - Fork 0
43 lines (34 loc) · 1.05 KB
/
check-lint-type.yml
File metadata and controls
43 lines (34 loc) · 1.05 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
name: Lint & Type (biome, tsc)
permissions:
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
# Triggers: PR opened, updated (new commits), or reopened
# 1. Runs on remote GitHub Actions server (fresh environment, not local cache)
# 2. Required to pass before PR can be merged to main (enforced by branch protection)
pull_request:
branches: [main]
jobs:
lint-type:
name: Run Lint & Type Checks
timeout-minutes: 10
runs-on: ubuntu-latest
steps:
# Step: Checkout code
- uses: actions/checkout@v6
# Step: Setup Node.js
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
cache: 'npm'
# Step: Install dependencies
- name: Install dependencies
run: npm ci
# Step: Run Biome checks
- name: Run Biome lint & format check
run: npx @biomejs/biome ci --error-on-warnings
# Step: Run TypeScript checks
- name: Run TypeScript type check
run: npx tsc --noEmit --pretty