# Declarative label source of truth for DeerFlow. # # This file is the single source of truth for repository labels used by the # auto-labeling workflows (.github/workflows/pr-labeler.yml, pr-triage.yml, # issue-triage.yml). Auto-labelers can only apply labels that already exist, # so every label referenced by a workflow MUST be declared here. # # Apply with: uv run --with pyyaml python scripts/sync_labels.py [--repo OWNER/NAME] # CI keeps it in sync via .github/workflows/label-sync.yml (runs on changes here). # # Sync is additive/update-only: it creates or updates the labels listed below # and never deletes labels that are not listed. # # Color = 6-digit hex without the leading '#'. labels: # ── Type ───────────────────────────────────────────────────────────────── # Mostly GitHub defaults; declared here so colors/descriptions stay stable # and so issue templates can rely on them existing. - name: bug color: d73a4a description: Something isn't working - name: enhancement color: a2eeef description: New feature or request - name: documentation color: 0075ca description: Improvements or additions to documentation - name: question color: d876e3 description: Further information is requested # ── Area (auto, by changed paths — see .github/labeler.yml) ─────────────── # Mirrors the "Surface area" section of the pull request template. - name: "area:frontend" color: c5def5 description: Next.js frontend under frontend/ - name: "area:backend" color: c5def5 description: Gateway / runtime / core backend under backend/ - name: "area:agents" color: c5def5 description: Agents, subagents, graph wiring, prompts, langgraph.json - name: "area:sandbox" color: c5def5 description: Sandboxed execution and docker/ - name: "area:skills" color: c5def5 description: Skills under skills/ or the skills harness - name: "area:mcp" color: c5def5 description: Model Context Protocol integration - name: "area:ci" color: c5def5 description: GitHub Actions, CI config, repo tooling - name: "area:docs" color: c5def5 description: Documentation and Markdown only - name: "area:deps" color: c5def5 description: Dependency manifests / lockfiles # ── Size (auto, by additions + deletions — see pr-triage.yml) ───────────── - name: "size/XS" color: "009900" description: PR changes < 20 lines - name: "size/S" color: 77bb00 description: PR changes 20-100 lines - name: "size/M" color: eebb00 description: PR changes 100-300 lines - name: "size/L" color: ee9900 description: PR changes 300-700 lines - name: "size/XL" color: ee5500 description: PR changes 700+ lines # ── Risk (auto, by changed paths — see pr-triage.yml) ───────────────────── - name: "risk:low" color: 0e8a16 description: "Low risk: docs / i18n / assets only" - name: "risk:medium" color: fbca04 description: "Medium risk: regular code changes" - name: "risk:high" color: b60205 description: "High risk: backend API, agents, sandbox, auth, deps, CI" # ── Priority (manual) ───────────────────────────────────────────────────── - name: P0 color: b60205 description: Critical priority - name: P1 color: d93f0b description: Major priority - name: P2 color: e99695 description: Normal priority # ── Status (auto + manual) ──────────────────────────────────────────────── - name: needs-triage color: fef2c0 description: Awaiting maintainer triage - name: needs-validation color: d4c5f9 description: Touches front/back contract surface; needs real-path validation - name: skip-validation color: cccccc description: "Maintainer override: do not auto-add needs-validation on this PR" - name: reviewing color: 5319e7 description: A maintainer is reviewing this PR # ── Contributor ─────────────────────────────────────────────────────────── - name: first-time-contributor color: c2e0c6 description: First contribution to this repository — be welcoming