This project is currently a lightweight Python CLI with no runtime dependencies. The release process should preserve that property unless a dependency has a clear adoption benefit.
Use semantic versioning:
- patch: bug fixes and validation-rule clarifications;
- minor: new CLI commands, report fields, or backward-compatible schema additions;
- major: breaking schema or command contract changes.
Update the version in:
pyproject.tomlsrc/cdad_tools/__init__.py
Run:
PYTHONPATH=src python3 -m unittest discover -s tests -v
PYTHONPATH=src python3 -m cdad_tools.cli --root . validate --strict-paths --report
PYTHONPATH=src python3 -m cdad_tools.cli --root . goal validate --report
PYTHONPATH=src python3 -m cdad_tools.cli --root . coverage --report
PYTHONPATH=src python3 -m cdad_tools.cli --root . trace --json --output agent/reports/trace.json
PYTHONPATH=src python3 -m cdad_tools.cli --root . benchmark --output agent/benchmarks/metrics.json
PYTHONPATH=src python3 -m cdad_tools.cli --root . ciWhen packaging tools are available:
python3 -m pip install --upgrade build
python3 -m buildInspect the wheel contents before publishing.
- Tests pass.
cdad cipasses.docs/first-project-guide.mdmatches current commands.README.mdincludes newly added command groups.- Packet schemas remain backward compatible or the version is bumped appropriately.
- Generated reports are refreshed if examples changed.
python3 -m pip install -e .
cdad --helpThe repository includes .github/workflows/cdad.yml, which runs unit tests and cdad ci.