Skip to content

Contributing & CI

Oliver Hennhöfer edited this page Apr 7, 2026 · 1 revision

Contributing & CI

This page describes contribution expectations and automated PR checks.

When To Use This Page

Use this page before opening a PR and when preparing local checks to match CI expectations.

Branch And PR Basics

  • Open PRs against main.
  • Keep changes scoped and link at least one issue.
  • Use team labels for routing (team:frontend or team:backend).

Required PR Conditions

Linked Issue Check

Workflow: .github/workflows/pr-linked-issue.yml

  • Validates PR is linked to an issue.
  • Applies/removes PR:issue-missing label automatically.
  • Fails check until linkage is corrected.

Team Label Check

Workflow: .github/workflows/require-team-label.yml

  • Non-admin contributors must add team:frontend or team:backend.
  • Admins must add at least one categorization label.

Lock File Warning Check

Workflow: .github/workflows/check-lock-updates.yml

  • Detects changes to lock files and comments warnings on PRs.
  • Current watched paths: backend/uv.lock, frontend/yarn.lock.

Build/Publish Automation

Workflow: .github/workflows/docker-build-push.yml

  • Trigger: push to main.
  • Builds and pushes container images to GHCR.

Local Quality Gate (Before PR)

From project-code/backend:

uv run python -m ruff check .
uv run python -m pytest -q

From project-code/frontend:

npm run lint
npm run test

From project-code/:

pre-commit run --all-files

Commit Hygiene

  • Do not commit secrets or local-only env values.
  • Keep generated artifacts out of commits unless explicitly required.
  • Update docs when behavior, config, or interface changes.

Related Pages

Clone this wiki locally