# Developer Commit Guide This guide explains exactly what to commit to source control for this repository, and what to keep out. It also includes a suggested commit message and safe commands to stage changes. ## Commit these files ### Core framework (source) - `ecu_framework/config.py` - `ecu_framework/lin/base.py` - `ecu_framework/lin/mock.py` - `ecu_framework/lin/babylin.py` - `ecu_framework/flashing/hex_flasher.py` ### Pytest plugin and config - `conftest_plugin.py` Generates HTML columns, requirements coverage JSON, and CI summary - `pytest.ini` - `requirements.txt` ### Tests and fixtures - `tests/conftest.py` - `tests/test_smoke_mock.py` - `tests/test_babylin_hardware_smoke.py` (if present) - `tests/test_hardware_placeholder.py` (if present) ### Documentation - `README.md` - `TESTING_FRAMEWORK_GUIDE.md` - `docs/README.md` - `docs/01_run_sequence.md` - `docs/02_configuration_resolution.md` - `docs/03_reporting_and_metadata.md` - `docs/04_lin_interface_call_flow.md` - `docs/05_architecture_overview.md` - `docs/06_requirement_traceability.md` - `docs/07_flash_sequence.md` - `docs/08_babylin_internals.md` ### Vendor guidance (no binaries) - `vendor/README.md` - Any headers in `vendor/` (if added per SDK) ### Housekeeping - `.gitignore` Ignores reports and vendor binaries - `reports/.gitkeep` Retains folder structure without committing artifacts ## Do NOT commit (ignored or should be excluded) - Virtual environments: `.venv/`, `venv/`, etc. - Generated test artifacts: `reports/report.html`, `reports/junit.xml`, `reports/summary.md`, `reports/requirements_coverage.json` - Python caches: `__pycache__/`, `.pytest_cache/` - Local env files: `.env` ## Safe commit commands (PowerShell) ```powershell # Stage everything except what .gitignore already excludes git add -A # Commit with a helpful message git commit -m "ECU framework: docs, reporting plugin (HTML metadata + requirements JSON + CI summary), .gitignore updates" ``` ## Notes - The plugin writes CI-friendly artifacts into `reports/`; they’re ignored by default but published in CI.