Skip to content

Enabled pinned USBX regression and merged coverage on dev - #280

Open
fdesbiens wants to merge 2 commits into
eclipse-threadx:devfrom
fdesbiens:ci/full-regression-coverage
Open

fdesbiens wants to merge 2 commits into
eclipse-threadx:devfrom
fdesbiens:ci/full-regression-coverage

Conversation

@fdesbiens

@fdesbiens fdesbiens commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Dev pull requests did not run the USBX regression gate, dependencies floated, and coverage represented one filtered configuration. GCC 14 also rejected pointer types and missing declarations in five test sources and the sample.

Pinned compatible dependencies and the reviewed ThreadX workflow/bootstrap, enabled all 17 profiles on every dev PR, and merged unfiltered raw coverage with exact source-line union checks. Added descriptor-size regressions, failure-path runner tests, safe manual subsets and Ubuntu 24.04 setup. eclipse-threadx/filex#106 remains open; its tested head is pinned. Pages deployment remains limited to successful full master runs. The check stays auto_tests / run_tests; the USBX ruleset staged in eclipse-threadx/.eclipsefdn#18 remains disabled pending rollout to dev, so passing CI is not yet an enforced merge requirement.

Hosted GCC 14.2.0 CI passed: 3,043/3,043 CTest cases across all 17 profiles, no skips or retries, 668.85 s summed CTest time. Merged coverage: 21001/31649 lines (66.3560%) and 12122/22004 branches (55.0900%); floors 66%/54.5%. Downloaded all 17 reports and independently verified the exact source-line union, nonempty inputs and repository-relative paths. Eight runner tests passed in CI; local real-failure/subset probes, actionlint, ShellCheck and whitespace checks passed. Pages deployment was skipped. Per-profile CI results follow (coverage is hit/valid). The generic case is a build-only placeholder; baseline results and remaining gaps to 100% are documented in test/cmake/usbx.

Profile Tests Seconds Lines Branches
default_build_coverage 430/430 17.71 14228/24018 5741/11162
error_check_build_full_coverage 430/430 17.13 14914/24084 6385/11250
tracex_enable_build 430/430 17.20 14698/24806 5768/11272
device_buffer_owner_build 430/430 17.35 15337/25269 5994/11474
device_zero_copy_build 430/430 17.30 15291/25242 5974/11474
nofx_build_coverage 46/46 5.90 3302/23982 1179/11208
optimized_build 129/129 3.78 3604/22895 1329/10645
standalone_device_build_coverage 57/57 175.84 8516/24155 3129/11106
standalone_device_buffer_owner_build 57/57 176.01 9041/25436 3256/11381
standalone_device_zero_copy_build 57/57 176.03 8907/25214 3226/11319
standalone_host_build_coverage 44/44 20.45 7667/24626 2729/11307
standalone_build_coverage 20/20 0.29 2965/24467 1036/11107
generic_build 1/1 0.00 0/24070 0/11310
otg_support_build 430/430 17.17 14289/24140 5789/11292
memory_management_build_coverage 11/11 3.64 5527/24073 1966/11204
msrc_rtos_build 33/33 1.00 7271/24595 2602/11492
msrc_standalone_build 8/8 2.05 3567/24991 1188/11363

Assisted-by: Codex (GPT-6) noreply@openai.com

Dev pull requests did not run the USBX regression gate, dependencies floated, and
coverage represented one filtered configuration. GCC 14 also rejected pointer types and
missing declarations in five test sources and the sample.

Pinned compatible dependencies and the reviewed ThreadX workflow/bootstrap, enabled all
17 profiles on every dev PR, and merged unfiltered raw coverage with exact source-line
union checks. Added descriptor-size regressions, failure-path runner tests, safe manual
subsets and Ubuntu 24.04 setup. Pages deployment remains limited to successful full
master runs. The check stays auto_tests / run_tests; eclipse-threadx/.eclipsefdn#18
remains disabled pending rollout to dev, so passing CI is not yet an enforced merge
requirement.

All 17 GCC 14 CMake/Ninja configurations built; 3,043/3,043 CTest cases passed. The
exact coverage union measured 66.3244% lines and 55.0718% branches. Eight runner tests,
real failure/subset probes, actionlint, ShellCheck and whitespace checks passed.

Assisted-by: Codex (GPT-6) <noreply@openai.com>
Dependabot identifies reusable workflows by repository and workflow path. A
repository-only ignore entry would allow automatic changes to the workflow pin.

Matched the full dependency name so workflow and bootstrap revisions retain
explicit review together.

Verified the name against Dependabot's workflow parser and both workflow calls.
Whitespace checks passed.

Assisted-by: Codex (GPT-6) <noreply@openai.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant