This project uses uv, pyright, and ruff. Every change needs to pass linting. Read README.md to understand what this project is about.