Context
Once the firmware CLI commands are available (see #7), we need a validation workflow that can be run against real hardware to verify the core firmware update implementation works end-to-end. This is the "AI feedback loop" use case — a coding agent can run this script after making changes to verify nothing is broken.
Scope
Validation Script
Validation Criteria
CI Integration Notes
Example Usage
# Full validation with auto-detected device
./scripts/validate-firmware-update.sh
# Validation with specific port and hex file
./scripts/validate-firmware-update.sh --port COM3 --hex-file ./firmware-v1.2.0.hex
# Skip actual flash (dry-run validation)
./scripts/validate-firmware-update.sh --skip-flash --port COM3
# AI agent usage pattern
dotnet run -- --firmware-flash --latest --port COM3 --json && \
dotnet run -- --discover --json | jq '.devices[0].firmware_version'
Acceptance Criteria
- Script can validate full firmware update cycle against real hardware
- Clear pass/fail output with diagnostic information on failure
- A coding agent can run this script to verify firmware update changes work
- Documented in README with prerequisites and usage
Related
Context
Once the firmware CLI commands are available (see #7), we need a validation workflow that can be run against real hardware to verify the core firmware update implementation works end-to-end. This is the "AI feedback loop" use case — a coding agent can run this script after making changes to verify nothing is broken.
Scope
Validation Script
scripts/validate-firmware-update.sh(or PowerShell equivalent)--skip-flashmode to test everything except the actual flash (for CI without dedicated hardware)Validation Criteria
CI Integration Notes
Example Usage
Acceptance Criteria
Related