Thanks for your interest in improving this project. This repository also models a “Software Curator” posture: small, well‑tested, well‑documented, and automation‑friendly.
- Use Python 3.9+
- Run tests locally before committing:
PYTHONPATH=src pytest -q - Lint:
ruff check .(and optionallyruff format) - Type check:
mypy src tests scripts(strict mode can be considered later) - Keep changes focused and add tests for behavior changes
- If you change user‑visible behavior or architecture/process, add/update an ADR in
docs/adr/and update the index
Pre‑commit (recommended):
pip install -r requirements-dev.txt
pre-commit install
pre-commit run --all-files
- Create a virtualenv and install dev deps
pip install -r requirements-dev.txt
- Run tests and linters
PYTHONPATH=src pytest -qruff check .mypy src tests scripts
- Make changes in
src/(drop‑in file issrc/cli.py; installable package issrc/dropin_cli/) - Add or update tests in
tests/and keep them fast and deterministic
Optional packaging/build check:
python -m build
This ensures the repository can be packaged (sdist/wheel) when used as an installable library.
- Version is declared in
pyproject.toml([project].version). A mirrored__version__exists in code; keep them consistent when bumping. - Tag as
vX.Y.Zand push tags. Consider creating a GitHub Release with notes. - Ensure CI is green before tagging.
See AUTHORS and ADR‑0010 for the AI curation policy. For large AI‑assisted batches, include the footer:
Curated-By: <Your Name>