2.3 KiB
2.3 KiB
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.pyecu_framework/lin/base.pyecu_framework/lin/mock.pyecu_framework/lin/babylin.pyecu_framework/flashing/hex_flasher.py
Pytest plugin and config
conftest_plugin.py
Generates HTML columns, requirements coverage JSON, and CI summarypytest.inirequirements.txt
Tests and fixtures
tests/conftest.pytests/test_smoke_mock.pytests/test_babylin_hardware_smoke.py(if present)tests/test_hardware_placeholder.py(if present)
Documentation
README.mdTESTING_FRAMEWORK_GUIDE.mddocs/README.mddocs/01_run_sequence.mddocs/02_configuration_resolution.mddocs/03_reporting_and_metadata.mddocs/04_lin_interface_call_flow.mddocs/05_architecture_overview.mddocs/06_requirement_traceability.mddocs/07_flash_sequence.mddocs/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 binariesreports/.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)
# 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.