[projmgr] MLOps: make it tolerant to missing hardware or simulator targets#2474
Conversation
Test Results 3 files - 55 21 suites - 155 17m 34s ⏱️ - 6m 16s Results for commit a5af619. ± Comparison against base commit e673230. This pull request removes 451 tests.♻️ This comment has been updated with latest results. |
3a64ab0 to
86841f6
Compare
86841f6 to
7f103b0
Compare
There was a problem hiding this comment.
Pull request overview
Adjusts ProjMgr’s MLOps (cbuild-mlops) generation to be tolerant when a default hardware or simulator target cannot be determined, avoiding errors and omitting the corresponding YAML sections, and updates the unit tests/test data accordingly.
Changes:
- Refactors MLOps target/target-set resolution to allow “missing default” hardware/simulator without failing generation.
- Updates/extends unit tests to cover missing hardware/simulator scenarios and revised error messages.
- Updates MLOps test csolution fixtures to align with the new target resolution behavior.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/projmgr/src/ProjMgrMlops.cpp | Adds tolerant target-set resolution and conditional emission of hardware/simulator-derived settings. |
| tools/projmgr/include/ProjMgrMlops.h | Updates MLOps helper method signatures to support new resolution logic (std::optional-based). |
| tools/projmgr/test/src/ProjMgrUnitTests.cpp | Extends MLOps unit tests for missing hardware/simulator targets and adjusts expected failures. |
| tools/projmgr/test/data/MLOps/no_hardware.csolution.yml | New fixture covering “simulator-only” target-types for MLOps generation. |
| tools/projmgr/test/data/MLOps/no_simulator.csolution.yml | Updates fixture covering “hardware-only” target-types for MLOps generation. |
| tools/projmgr/test/data/MLOps/minimal.csolution.yml | Updates minimal fixture (removes simulator define) to match current expectations. |
| tools/projmgr/test/data/MLOps/failure2.csolution.yml | Updates failure case fixture to match new target syntax/error message. |
| tools/projmgr/test/data/MLOps/failure3.csolution.yml | Updates failure case fixture to match new error condition and message. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2474 +/- ##
=======================================
Coverage 65.17% 65.18%
=======================================
Files 147 147
Lines 26621 26633 +12
Branches 16128 16140 +12
=======================================
+ Hits 17351 17361 +10
- Misses 7070 7072 +2
Partials 2200 2200
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
Fixes
Changes
simulatororhardwaretargets are not explicitly specified, accept if their default values cannot be determined: in such case do not emit the related sections in cbuild-mlops.yml and do not throw error messages.Checklist