Run all unit tests via Bazel wildcards instead of acceptlist - #52
Open
Chahult wants to merge 3 commits into
Open
Run all unit tests via Bazel wildcards instead of acceptlist#52Chahult wants to merge 3 commits into
Chahult wants to merge 3 commits into
Conversation
Replace the acceptlist-JSON-driven test/clang-tidy/coverage target lists in test.yml, static-analysis.yml and coverage_report.yml with wildcard //score/config_management/... invocations, excluding the known non-OSS-buildable factory unit_tests_mw_com target and the dependability safety-metadata targets. Remove the now-unused deps-acceptlist-check.yml workflow and deps_acceptlist.json. Wildcard testing surfaced that score/config_management/config_provider is currently broken against its own pinned score_communication dependency (OptionalProxyData collapsed to a plain Optional<T> alias, replaced by ProxyFuture) and references internal-only targets/packages that don't exist in the OSS tree. Since score/config_management/** is synced from an internal source and can't be edited directly here, these fixes are shipped as bazel/patches/001-adapt-proxy-api-and-remove-internal-targets.patch and applied transiently in CI (git apply, with a --check guard so it becomes a no-op once the fix syncs in for real), mirroring the existing wire_unit_test_to_lobster.patch pattern in docs.yml. Locally verified with the patch applied: bazel build and bazel test both succeed for //score/config_management/... with the same exclusions used in CI (20/20 tests pass).
Chahult
requested review from
LittleHuba,
antonkri,
castler,
michaelsaborov and
ramceb
as code owners
August 12, 2026 11:17
License Check Results🚀 The license check job ran with the Bazel command: bazel run //:license-checkStatus: Click to expand output |
The docs job builds //score/config_management/dependability:config_management_rst, whose component() targets reference the unit()-wrapped config_daemon_app_unit / config_provider_details_unit targets from wire_unit_test_to_lobster.patch. Those unit() targets pull in the :details cc_library as `implementation`, which requires actually compiling config_provider_impl.cpp - but only wire_unit_test_to_lobster.patch was applied in docs.yml, not bazel/patches/001-adapt-proxy-api-and-remove-internal-targets.patch, so the build hit the same OptionalProxyData/ProxyFuture compile error fixed elsewhere. Chain a second git-apply (with the same --check no-op guard) for 001-adapt-proxy-api-and-remove-internal-targets.patch before `bazel run //:docs`. Locally verified: with both patches applied, `bazel build //score/config_management/dependability/...` (which //:docs depends on via config_management_rst) now completes successfully, including the full sphinx/LOBSTER doc build.
score_communication's ProvidedServices dynamic_cast lookup bug (fixed upstream in commit 9a91fc9528070a2358becc042443b84346651fc7 on Chahult/communication.git, branch fix/v0.2.1_provided_service_container_count) caused the real config_daemon binary to crash at runtime with "ConfigDaemon::Run Failed to create InitialQualifierStateSender callback" (exit code 1), since GetServices<>() always returned nullptr regardless of whether the service had actually been registered. Bump the pin to pick up that fix, and fix the last 2 remaining unit_test_mw_com test call sites that used GetServices<ProvidedServiceDecorator> directly instead of GetServices<ProvidedServiceBuilder::DecoratorType> (the only alias consistent with internal storage), which were still failing. Verified: all 10/10 unit_test_mw_com tests pass, and the real config_daemon binary now runs successfully instead of crashing.
|
The created documentation from the pull request is available at: docu-html |
Chahult
force-pushed
the
run-all-unit-tests
branch
from
August 18, 2026 05:38
a4c86a1 to
0cee26b
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replace the acceptlist-JSON-driven test/clang-tidy/coverage target lists in test.yml, static-analysis.yml and coverage_report.yml with wildcard //score/config_management/... invocations, excluding the known non-OSS-buildable factory unit_tests_mw_com target and the dependability safety-metadata targets. Remove the now-unused deps-acceptlist-check.yml workflow and deps_acceptlist.json.
Wildcard testing surfaced that score/config_management/config_provider is currently broken against its own pinned score_communication dependency (OptionalProxyData collapsed to a plain Optional alias, replaced by ProxyFuture) and references internal-only targets/packages that don't exist in the OSS tree. Since score/config_management/** is synced from an internal source and can't be edited directly here, these fixes are shipped as bazel/patches/001-adapt-proxy-api-and-remove-internal-targets.patch and applied transiently in CI (git apply, with a --check guard so it becomes a no-op once the fix syncs in for real), mirroring the existing wire_unit_test_to_lobster.patch pattern in docs.yml.
Locally verified with the patch applied: bazel build and bazel test both succeed for //score/config_management/... with the same exclusions used in CI (20/20 tests pass).