mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-10-27 21:50:36 +00:00
* fix(ci): retarget label docs at triage.yml and guard label declarations .github/labels.yml still described the auto-labeling setup as the three workflows triage.yml replaced (pr-labeler.yml / pr-triage.yml / issue-triage.yml), and its section headers pointed at the deleted .github/labeler.yml and pr-triage.yml. A reader following those pointers lands on 404s. The same pair had an unguarded failure mode: triage.yml applies labels by name, and GitHub rejects the whole addLabels batch with 422 when any name is missing from the repository. Nothing checked that a label added to the workflow also reached the declarative source of truth. Point the comments at triage.yml and add scripts/check_label_declarations.py, which fails when the workflow applies a label labels.yml does not declare. * fix(ci): trace applied labels and cover the declaration guard --------- Co-authored-by: Willem Jiang <willem.jiang@gmail.com>
123 lines
2.9 KiB
YAML
123 lines
2.9 KiB
YAML
name: Lint Check
|
|
|
|
on:
|
|
push:
|
|
branches: [ 'main', '*-dev' ]
|
|
pull_request:
|
|
branches: [ '*' ]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
agent-guidance:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v6
|
|
with:
|
|
python-version: '3.12'
|
|
|
|
- name: Check agent guidance on pull requests
|
|
if: github.event_name == 'pull_request'
|
|
run: >-
|
|
python scripts/check_agent_guidance.py
|
|
--base-ref "${{ github.event.pull_request.base.sha }}"
|
|
--head-ref "${{ github.event.pull_request.head.sha }}"
|
|
--github-annotations
|
|
|
|
- name: Check agent guidance on pushes
|
|
if: github.event_name == 'push'
|
|
run: >-
|
|
python scripts/check_agent_guidance.py
|
|
--before "${{ github.event.before }}"
|
|
--after "${{ github.sha }}"
|
|
--github-annotations
|
|
|
|
label-declarations:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v6
|
|
with:
|
|
python-version: '3.12'
|
|
|
|
- name: Check every label applied by triage.yml is declared in labels.yml
|
|
run: python scripts/check_label_declarations.py
|
|
|
|
lint-backend:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v6
|
|
with:
|
|
python-version: '3.12'
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@v7
|
|
with:
|
|
# Must match backend/Dockerfile's UV_IMAGE tag; pinned by backend/tests/test_ci_uv_version_pin.py
|
|
version: "0.11.1"
|
|
|
|
- name: Check uv.lock is in sync
|
|
working-directory: backend
|
|
run: uv lock --check
|
|
|
|
- name: Install dependencies
|
|
working-directory: backend
|
|
run: |
|
|
uv sync --group dev
|
|
|
|
- name: Lint backend
|
|
working-directory: backend
|
|
run: make lint
|
|
|
|
lint-frontend:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
|
|
- name: Setup Node.js
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '24'
|
|
|
|
- name: Enable Corepack
|
|
run: corepack enable
|
|
|
|
- name: Use pinned pnpm version
|
|
run: corepack prepare pnpm@10.26.2 --activate
|
|
|
|
- name: Install frontend dependencies
|
|
run: |
|
|
cd frontend
|
|
pnpm install --frozen-lockfile
|
|
|
|
- name: Check frontend formatting
|
|
run: |
|
|
cd frontend
|
|
pnpm format
|
|
|
|
- name: Run frontend linting
|
|
run: |
|
|
cd frontend
|
|
pnpm lint
|
|
|
|
- name: Check TypeScript types
|
|
run: |
|
|
cd frontend
|
|
pnpm typecheck
|
|
|
|
- name: Build frontend
|
|
run: |
|
|
cd frontend
|
|
BETTER_AUTH_SECRET=local-dev-secret pnpm build
|