Skip to content

[v1.6-sve-branch] several cherrypicks for groupcast support.#71636

Closed
andy31415 wants to merge 12 commits intoproject-chip:v1.6-sve-branchfrom
andy31415:groupcast_cp
Closed

[v1.6-sve-branch] several cherrypicks for groupcast support.#71636
andy31415 wants to merge 12 commits intoproject-chip:v1.6-sve-branchfrom
andy31415:groupcast_cp

Conversation

@andy31415
Copy link
Copy Markdown
Contributor

@andy31415 andy31415 commented Apr 17, 2026

Summary

Based on a list received from @tennessee-google, cherrypicks for:

#43765
#71371
#71450
#71439
#71394
#71452
#43731
#71490
#71515
#71546
#71551
#71562
#71572

Conflicts:

Cherrypicking #71439 conflicted with #71582. I updated BIND_2_2 and BIND_2_3 yaml to match the CP since I assumed more correct (matched master)

Cherrypicking #71452 conflicted in tests.yaml, seems like a indent issue only

Cherrypicking #71551 conflicted in run header in TC_SC_5_1 and TC_SC_5_2. I did not add the new headers (but this needs to be double-checked for consistency still)

Testing

Cherrypicks were mostly clean (except above notes). CI will also validate.

zaid-google and others added 12 commits April 17, 2026 09:02
* Move macro definition

* Restyled by gn

* Move silabs gni macro definition

* Enable groupcast in wifi args gni file for silabs example

* Poke CI

* Revert "Poke CI"

This reverts commit b6e29e1.

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…test steps (project-chip#71371)

* Add a step to verify DUT SpecificationVersion before running the new test steps for 1.6 and above

* Apply suggestion to avoid failure in case SpecificationVersion is not present on DUT with version pre 1.3
…ject-chip#71439)

* Update Light-switch zap file to add groupcast has sender

* Enable the gn arg chip_config_enable_groupcast on gn built apps

* Restyled by gn

* Add chip_config_enable_groupcast gn args to cmake builds. and enable on light-switch

* Add manual step instructions/details in two nont automated binding tests.

* Fix arg name

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…upcast devices (project-chip#71394)

* TC-SC-5.2: Fix PICS, run for whole node

The groups tests are weird because they're running against the
endpoint with the groups cluster, which is not the endpoint
with the key management cluster. With the top level PICS the
way they are, this test wouldn't be selected reliably.

Instead, swapping to have the test do the endpoint selection
logic itself. This should be run once per node for any
commissionable device. If there are no groups endpoints, then
it's fine - this test will skip all the steps and return.

* TC-SC-5.1: Same fix as TC-SC-5.2

* TC-SC-5.2: Fix test for non-groupcast

* Address review comments

* Restyled by autopep8

* remove pixit notation

* Fix endpoint per review comment

* Consolidate endpoint selection, update comment

* Restyled by autopep8

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* [WIP] Test plan impl

* Restyled by ruff

* Restyled by autopep8

* minor update

* Restyled by ruff

* Fix step ordering errors

* test runs w/ groupcast, needs cleanup

* Restyled by autopep8

* Restyled by isort

* lint error

* Cleanup, still some todo's remaining

* Restyled by ruff

* Restyled by autopep8

* Support iana and per group, fix legacy groups flow

* Add run without groupcast and pics update

* Remove old yaml version of test

* Restyled by ruff

---------

Co-authored-by: Restyled.io <commits@restyled.io>
…1515)

* Fix key and AuxACL update checks in Groupcast cluster

- Disallow touching keys or useAuxiliaryACL from Manage-privilege
  commands UpdateGroupKey and JoinGroup, to avoid privilege escalation.
- Disallow touching the IPK.
- Disallow GroupID 0.

Addresses fixes in the following spec PRs:

- CHIP-Specifications/connectedhomeip-spec#12865
- CHIP-Specifications/connectedhomeip-spec#12868

Testing done:

- Added full unit test coverage.
- Fixed test plumbing to better enable actual testing of these types
  of situation.

* Restyled

* Address review comment about factoring

* Restyled by clang-format

* Add more coverage to ReplaceEndpoints argument of JoinGroup

* Restyled by clang-format

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* Add logging, general cleanup, todos

* Add code to search for valid cluster with operate priv commands

* Fix command possibly being response type and unbound value todo

* Restyled by ruff

* Restyled by autopep8

* Restyled by isort

* Address comment

---------

Co-authored-by: Restyled.io <commits@restyled.io>
* enable gc_2_2 and gc_2_7 in CI

* update CI endpoint argument from 1 to 0
* Roll back to groups cluster rev4. Revision 5 implementation was done in time for SVE

* run regen all
@andy31415 andy31415 requested review from a team and s07641069 as code owners April 17, 2026 13:21
@andy31415 andy31415 changed the title Groupcast cp [v1.6-sve-branch] several cherrypicks for groupcast support. Apr 17, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request enables the Groupcast cluster across multiple platforms and example applications, integrating it with the access control system to enforce administrative privileges for sensitive operations. The changes include logic updates to cluster commands, comprehensive test enhancements, and a reversion of the Groups cluster revision to 4. I have no feedback to provide.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 17, 2026

PR #71636: Size comparison from 17fd735 to dff5656

Increases above 0.2%:

platform target config section 17fd735 dff5656 change % change
telink light-switch-app-ota-factory-data tl3218x_retention RAM 33388 33472 84 0.3
Full report (42 builds for bl602, bl616, bl702, bl702l, cc13x4_26x4, cc32xx, efr32, esp32, nrfconnect, nxp, psoc6, qpg, realtek, stm32, telink)
platform target config section 17fd735 dff5656 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1091258 1091242 -16 -0.0
RAM 144858 144858 0 0.0
bl616 lighting-app bl616+thread FLASH 1101964 1101948 -16 -0.0
RAM 104280 104280 0 0.0
bl616+wifi+shell FLASH 1588876 1588860 -16 -0.0
RAM 98176 98176 0 0.0
bl702 lighting-app bl702+eth FLASH 1054400 1054384 -16 -0.0
RAM 108461 108461 0 0.0
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 892268 892252 -16 -0.0
RAM 105852 105852 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 775864 775840 -24 -0.0
RAM 103396 103404 8 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 788068 788068 0 0.0
RAM 108588 108588 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 734392 734392 0 0.0
RAM 97396 97396 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 717812 717812 0 0.0
RAM 97556 97556 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 559894 559894 0 0.0
RAM 204568 204568 0 0.0
lock CC3235SF_LAUNCHXL FLASH 592770 592770 0 0.0
RAM 204816 204816 0 0.0
efr32 lock-app BRD4187C FLASH 974180 974164 -16 -0.0
RAM 126148 126148 0 0.0
BRD4338a FLASH 771964 771932 -32 -0.0
RAM 236632 236632 0 0.0
window-app BRD4187C FLASH 1078608 1078568 -40 -0.0
RAM 126760 126760 0 0.0
esp32 all-clusters-app c3devkit DRAM 98460 98460 0 0.0
FLASH 1598936 1598924 -12 -0.0
IRAM 93514 93514 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 860428 860428 0 0.0
RAM 162093 162093 0 0.0
nrf54l15dk_nrf54l15_cpuapp FLASH 971156 971132 -24 -0.0
RAM 162265 162265 0 0.0
light-switch-app nrf52840dk_nrf52840 FLASH 835764 836360 596 0.1
RAM 125695 125779 84 0.1
lighting-app nrf52840dk_nrf52840+rpc FLASH 888432 888408 -24 -0.0
RAM 140133 140137 4 0.0
nrf52840dongle_nrf52840 FLASH 818320 818296 -24 -0.0
RAM 148384 148388 4 0.0
nrf54l15dk_nrf54l15_cpuapp FLASH 864736 864716 -20 -0.0
RAM 141014 141018 4 0.0
lock-app nrf52840dk_nrf52840 FLASH 820060 820060 0 0.0
RAM 125488 125488 0 0.0
nrf54l15dk_nrf54l15_cpuapp FLASH 827344 827344 0 0.0
RAM 127541 127541 0 0.0
shell nrf52840dk_nrf52840 FLASH 558476 558476 0 0.0
RAM 112639 112639 0 0.0
nxp contact mcxw71+release FLASH 738992 738992 0 0.0
RAM 67016 67016 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1711452 1711452 0 0.0
RAM 214028 214028 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1609228 1609228 0 0.0
RAM 210908 210908 0 0.0
light cy8ckit_062s2_43012 FLASH 1466876 1466876 0 0.0
RAM 197068 197076 8 0.0
lock cy8ckit_062s2_43012 FLASH 1499596 1499596 0 0.0
RAM 224820 224820 0 0.0
qpg lighting-app qpg6200+debug FLASH 842636 842620 -16 -0.0
RAM 127868 127868 0 0.0
lock-app qpg6200+debug FLASH 781252 781236 -16 -0.0
RAM 118816 118816 0 0.0
realtek light-switch-app rtl8777g FLASH 676960 677544 584 0.1
RAM 101516 101600 84 0.1
lighting-app rtl8777g FLASH 724504 724488 -16 -0.0
RAM 101956 101956 0 0.0
stm32 light STM32WB5MM-DK FLASH 475428 475412 -16 -0.0
RAM 141388 141396 8 0.0
telink bridge-app tl7218x FLASH 730800 730800 0 0.0
RAM 95924 95924 0 0.0
light-app-ota-compress-lzma-shell-factory-data tl3218x FLASH 850312 850300 -12 -0.0
RAM 44340 44344 4 0.0
tl7218x FLASH 841718 841706 -12 -0.0
RAM 99724 99728 4 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 729998 730204 206 0.0
RAM 55904 55988 84 0.2
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 793224 793430 206 0.0
RAM 75080 75164 84 0.1
light-switch-app-ota-factory-data tl3218x_retention FLASH 729946 730152 206 0.0
RAM 33388 33472 84 0.3
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 612928 612916 -12 -0.0
RAM 118396 118400 4 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 840648 840636 -12 -0.0
RAM 97432 97436 4 0.0

@codecov
Copy link
Copy Markdown

codecov bot commented Apr 17, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 54.26%. Comparing base (17fd735) to head (dff5656).

Additional details and impacted files
@@                 Coverage Diff                 @@
##           v1.6-sve-branch   #71636      +/-   ##
===================================================
+ Coverage            54.25%   54.26%   +0.01%     
===================================================
  Files                 1563     1563              
  Lines               107441   107457      +16     
  Branches             13333    13331       -2     
===================================================
+ Hits                 58287    58310      +23     
+ Misses               49154    49147       -7     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@andy31415
Copy link
Copy Markdown
Contributor Author

Abandoning: apparently there are more things to CP, so I will do that instead.

@andy31415 andy31415 closed this Apr 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants