scholarr/CONTRIBUTING.md
2026-02-17 21:59:41 +01:00

1.2 KiB

Contributing

Scope

This project favors small, reviewable pull requests that keep runtime behavior clear and operationally safe.

Essential-File Policy

Commit only source-of-truth files required to build, run, test, or document the app.

Do not commit generated or local-only artifacts, including:

  • __pycache__/, *.pyc, .pytest_cache/, .mypy_cache/, .ruff_cache/
  • frontend build/install outputs like frontend/dist/, frontend/node_modules/, frontend/.vite/
  • coverage outputs (.coverage, htmlcov/)
  • packaging/build leftovers (*.egg-info/, build/, dist/)
  • local probe/scratch material (planning/)

CI enforces this with scripts/check_no_generated_artifacts.sh.

Merge Checklist

  • Changes are minimal, purposeful, and remove obsolete/dead code in touched areas.
  • Backend tests pass (uv run pytest tests/unit and integration scope as needed).
  • Frontend checks pass (npm run typecheck, npm run test:run, npm run build).
  • API/behavior docs are updated when env vars, endpoints, or payloads change.
  • README.md, .env.example, and deployment notes stay aligned.
  • scripts/check_no_generated_artifacts.sh passes locally.