|
| 1 | +# AGENTS.md |
| 2 | + |
| 3 | +## Repo purpose |
| 4 | + |
| 5 | +`qref` defines the Quantum Resource Estimation Format and provides validation, schema tooling, docs, and rendering utilities. |
| 6 | + |
| 7 | +## Setup prerequisites |
| 8 | + |
| 9 | +- Python 3.10-3.12 |
| 10 | +- `poetry` |
| 11 | +- Graphviz on `PATH` for rendering-related workflows |
| 12 | + |
| 13 | +## Canonical local commands |
| 14 | + |
| 15 | +- Install default environment: `poetry install` |
| 16 | +- Install docs environment: `poetry install --with docs` |
| 17 | +- Lint/hooks: `pre-commit run -a` |
| 18 | +- Unit tests: `poetry run pytest --json-report --json-report-file=pytest_report.json --json-report-omit collectors log streams --cov src --cov-report term --cov-report html` |
| 19 | +- Type checks: `MYPYPATH=src poetry run mypy src --install-types --non-interactive` |
| 20 | +- Docs build: `poetry run mkdocs build` |
| 21 | + |
| 22 | +## Validation before handoff |
| 23 | + |
| 24 | +- Run `pre-commit run -a` for normal code changes. |
| 25 | +- Run the pytest command for library or schema changes. |
| 26 | +- Run the mypy command when changing typed library code. |
| 27 | +- Run `poetry run mkdocs build` when touching docs or `mkdocs.yml`. |
| 28 | + |
| 29 | +## Risky or restricted areas |
| 30 | + |
| 31 | +- Keep GitHub Actions and release automation aligned with the existing GitHub workflow model. |
| 32 | +- Schema or validation changes can affect downstream consumers broadly. |
| 33 | +- Graphviz-dependent rendering paths may fail without the system binary. |
| 34 | + |
| 35 | +## Repo-specific notes for agents |
| 36 | + |
| 37 | +- This repo uses GitHub Actions and an open-source-style workflow rather than the internal GitLab conventions used by most other repos here. |
| 38 | +- Pre-commit uses `isort`, `black`, and `flake8`, not Ruff. |
| 39 | +- Preserve compatibility expectations for the QREF format unless the task explicitly changes schema behavior. |
0 commit comments