ADR-0017: Root pyproject.toml for Dependency Management
- Status: Accepted
- Date: 2026-03-26
- Deciders: DeAcero Agentic Team (Technical Committee)
- Supersedes: None
Context
Currently, the root repository cookiecutter-agentic-ci (Cornerstone template) lacks a dedicated dependency management file like pyproject.toml or requirements.txt.
This causes integration friction where users cloning the repository cannot execute tests (like test_kedro_lineage_builder.py) automatically due to missing dependencies (pytest, PyYAML). Developers have to manually install them.
Decision
We will introduce a pyproject.toml file at the root of the Cornerstone repository.
This file will be strictly meant for maintaining development and testing dependencies associated with the template itself, independently from the generated templates (builder/).
It will declare an optional [dev] dependencies group including testing and operational libraries: pytest, PyYAML, and pre-commit.
Consequences
Positive
- Fully automated testing capabilities directly from the root cloned repository without manual intervention.
- Pre-commit integration is formally supported and reproducible.
- Eliminates onboarding friction for new developers modifying the base template.
Negative
- Developers might confuse the root
pyproject.tomlwith thepyproject.tomlbelonging to the specific generated templates. - Requires slight modifications to
install.bat/install.shto triggerpip install -e ".[dev]".