tree 115deab7b220418971cb570769eceb7031f0800f
parent 72b1da70cf2d203ba732c5dff7745c485f991e62
author James Swan <122404367+swan-amazon@users.noreply.github.com> 1736957802 -0800
committer GitHub <noreply@github.com> 1736957802 +0000
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnh99qCRC1aQ7uu5UhlAAABocQACFA94GclCOiw3x2L0PW7N7b
 UL2cb7pUmz1qF5igrsfZSKwz33Xf94nDB5PDQJYPAz1U3aaXviT48DtkcE6EnmGe
 lShp3r041TJBm33jGSrkFBdA4XDqxEPjK1qYQQRsRHvXZnY7xXfFi8OYUASDZ4Ab
 T8WSiH8xBBeGtqWH2chX17oYSRgkAZ/ufTbW5IInduVox9JZX5yBssCtpt3uIl53
 QBfcTXpCK85iT0qpdQq6wGHSMQAUOe6ha+YOMVLxExgJAre65ZjA9ssIvlhzWlJh
 wsasNxq5U9+1NHw1HrMhPajjpGDt7f4Z7S+MilxLUEk0OPXSqryCMIycN7FHfbsn
 S78uZ1c9EyYq+FJgnRFhVnCCON+axrvDsLa81F8hiaNuyusSSq8ZOOZQkQthYE/h
 tLeSshXNgyMD2zUpUaEb2mbhHEUmI4OF7f0hhhO/lx0Z813wn9U5W1leXkKRz1B/
 N8c3FwZJiUYRd1cDt0p2IS9KlwmWLq1uy3nc4zYY4CMSLndSuKpP/Tzg+G24sQzX
 A4Ub24u9dI/2WNTpt5xicGopqC3RZ/2NXXR1et9yCbYvX/wBtfmAhWh8qT8AjITq
 u1+wd8Xwi8vmCFL4cINK+GhU5IfcVxdVeOr6wZ5lZvdCinG5C4SGTVygBabsDQ1D
 QM5FuBJteP51Hl3wuIJ4
 =tdd0
 -----END PGP SIGNATURE-----
 

feat: Add terms-and-conditions sample app for CI testing (#36950)

* feat: Add terms-and-conditions sample app for CI testing

Add a new sample application that demonstrates and tests the terms and
conditions feature. This app will be integrated into the CI pipeline to
prevent regressions and ensure the feature continues to work as
expected.

The sample app serves as both a reference implementation and an
automated test case for the terms and conditions functionality.

```bash
./scripts/build/build_examples.py --target linux-x64-terms-and-conditions build
```

* Update cluster configurations for app testing

- Enable switch cluster for basic app control testing
- Enable network commissioning cluster for in-app commission testing
- Disable provisional clusters as they are not required
- Disable other non-required clusters to streamline testing setup

This change focuses the cluster configuration on essential components
needed for basic app control and commissioning testing scenarios.

* refactor: Remove unused attributes from Switch cluster

Remove unused attributes from the Switch cluster to comply with the "On/Off Light"
device type specification as defined in the Matter device library v1.4. This change
removes several server-side attributes including ServerList, ClientList, PartsList,
and various internal lists that are not required for the basic On/Off Light
functionality.

* feat: Add Descriptor cluster and enable attribute reporting

Add the mandatory Descriptor cluster to endpoint 1 and enable attribute reporting
for the device. Changes include:
- Add Descriptor cluster with all required attributes (deviceTypeList, serverList, etc.)
- Enable reportable flag for multiple attributes with min/max reporting intervals
- Configure all Descriptor cluster attributes as external callbacks

This change ensures compliance with the Matter specification for the On/Off Light
device type.