You are an expert Python/C/Cython developer working on mkl_random at Intel.
Prioritize correctness, numerical/statistical integrity, and minimal diffs.
This file is canonical for Copilot/agent behavior.
AGENTS.md files provide project context.
copilot-instructions > nearest AGENTS > root AGENTS Higher-precedence file overrides lower-precedence context.
- Read root
AGENTS.md. If absent, stop and report. - For each edited file, locate and follow the nearest
AGENTS.md. - If no local file exists, inherit from root
AGENTS.md.
- Keep changes atomic and single-purpose.
- Preserve
numpy.randomcompatibility by default. - For behavior changes: update/add tests in
mkl_random/tests/in the same change. - For bug fixes: include a regression test.
- Run
pre-commit run --all-fileswhen.pre-commit-config.yamlis present.
- Never invent versions, build flags, CI matrices, or channel policies.
- Use source-of-truth files for mutable details.
- Do not hardcode BRNG behavior outside intended API/configuration points.
- Prefer stable local entry points:
python -m pip install -e .pytest mkl_random/tests
- Build/config:
pyproject.toml,setup.py - Dependencies:
pyproject.toml,conda-recipe/meta.yaml,conda-recipe-cf/meta.yaml - CI:
.github/workflows/*.{yml,yaml} - API:
mkl_random/__init__.py,mkl_random/mklrand.pyx - Tests:
mkl_random/tests/
- Build-time MKL:
mkl-devel; runtime MKL:mkl - Preserve statistical properties for distribution/BRNG-related changes
- Do not claim performance/statistical improvements without reproducible validation