Log Analysis: BAT, IMU and ESC analysis modules - #1955
Conversation
Coverage Report for CI Build 32549536820Coverage decreased (-0.6%) to 90.2%Details
Uncovered ChangesNo uncovered changes found. Coverage Regressions283 previously-covered lines in 11 files lost coverage.
Coverage Stats
💛 - Coveralls |
0838bfc to
a06deec
Compare
amilcarlucas
left a comment
There was a problem hiding this comment.
The battery stuff is looking good, you are detecting many misconfiguration issues already. Keep it up!
f4bd02a to
12f655c
Compare
There was a problem hiding this comment.
Pull request overview
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Adds new battery and IMU log analysis checks (battery health/parameter analysis and IMU temperature calibration analysis) while refactoring the log-quality model base class to support configuration-step derived/forced parameter evaluation.
Changes:
- Introduces
BatteryLogAnalysisandImuLogAnalysisplus comprehensive new pytest suites for both. - Refactors
BaseLogQualityAnalysisModelintoBaseLogModel, adding helpers to evaluate derived/forced parameters per configuration step. - Updates config-step processing to compute forced+derived parameters in a single call path.
Reviewed changes
Copilot reviewed 23 out of 23 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/test_data_model_log_analysis.py | Updates tests to use BaseLogModel instead of the old base class. |
| tests/test_data_model_imu_analysis.py | Adds end-to-end style tests for IMU quality + temperature calibration analysis. |
| tests/test_data_model_configuration_step.py | Updates mocks/assertions for the new combined forced+derived computation API. |
| tests/test_data_model_battery_analysis.py | Adds end-to-end style tests for battery quality + analysis models. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_vibe.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_pm.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_mode.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_imu.py | Adds IMU temperature calibration analysis and migrates quality model base. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_gnss.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_fft.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_esc.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_err.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_battery.py | Adds battery analysis model + refactors battery quality checks. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_base.py | Introduces BaseLogModel + helpers for expected/derived parameter evaluation. |
| ardupilot_methodic_configurator/log_analysis/data_model_quality_arm.py | Migrates quality model to BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/data_model_log_quality.py | Extends QualityIssue and LogQualityResult with param/suggestion + related step. |
| ardupilot_methodic_configurator/log_analysis/data_model_log_analysis_result.py | Adds structured result types for analysis outcomes. |
| ardupilot_methodic_configurator/log_analysis/data_model_log_analysis.py | Updates typing/imports to align with BaseLogModel. |
| ardupilot_methodic_configurator/log_analysis/backend_log_extraction.py | Adjusts multiplier resolution for pymavlink fixed-point fields. |
| ardupilot_methodic_configurator/data_model_parameter_editor.py | Passes nested Components dict into log analysis inputs. |
| ardupilot_methodic_configurator/data_model_configuration_step.py | Switches to compute_forced_and_derived_parameters and simplifies error handling. |
| ardupilot_methodic_configurator/backend_filesystem_configuration_steps.py | Adds compute_forced_and_derived_parameters() helper API. |
| ardupilot_methodic_configurator/backend_filesystem.py | Uses new combined forced+derived computation helper. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
64c4874 to
32d64fc
Compare
08668a6 to
df2d1b3
Compare
|
High — custom quality_models callers now crash Medium — IMU calibration analysis falsely rejects valid data without apm_doc |
e029538 to
6928ac4
Compare
Thank You, so much for this, fixed and rebased |
…QualityAnalysisModel to BaseLogModel to avoid naming confusion Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> fix: bat analysis with some inconsitency Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> fix: match the format of configuration steps to compare paramters and compute derived and forced parameters and add the imu analysis Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com>
Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com>
6928ac4 to
1373651
Compare
Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix test Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: added tests for BAT and IMU analysis Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com> test: fix tests Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com>
b58e73a to
0b6cfcd
Compare
Signed-off-by: Omkar Sarkar <omkarsarkar24@gmail.com>
0b6cfcd to
093a067
Compare
Description
Log Analysis Checks for BAT, IMU temp and ESC calibration
Checklist
git commit --signoff)Testing
Describe how you tested these changes: