Skip to content

Sync csa-v1.6.1-branch branch with release_2.10-1.6.1 - #1272

Open
silabs-matter-ci-bot[bot] wants to merge 1 commit into
release_2.10-1.6.1from
automation/update_release_2.10-1.6.1
Open

silabs-matter-ci-bot[bot] wants to merge 1 commit into
release_2.10-1.6.1from
automation/update_release_2.10-1.6.1

Conversation

@silabs-matter-ci-bot

Copy link
Copy Markdown
Contributor

This PR syncs the csa-v1.6.1-branch branch with the release_2.10-1.6.1 branch.

PR MUST BE MERGED WITH MERGE COMMIT - ADMIN MUST ENABLE THE OPTION

…tch entries by value (backport #74429) (#74706)

* Add test case 2.5 for the Joint Fabric data store (#72151)

* Add test case 2.5 for the Joint Fabric data store

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Address review comments and fix indentation in TC_JFDS_2_5

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix formatting issues

* Implement JFDS Test_Script_2.5 PR review comments

* Address review comments

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

(cherry picked from commit 53c2605)
This backport leaves out src/python_testing/TC_JFDS_2_5.py.

* [JF] Fix TC_JFDS_2_5 and TC_JFDS_BindingSync failures on master (#74425)

* [JF] Fix TC_JFDS_2_5 and TC_JFDS_BindingSync failures on master

TC_JFDS_2_5 ran TH2 on the groupcast-enabled all-clusters-app, whose Groups
cluster is the revision 5 stub that answers GetGroupMembership and AddGroup
with InvalidInState. The JF Administrator syncs group membership through
those commands, so TH2 now uses the no-groupcast all-clusters-app, which keeps
the legacy Groups cluster that the test and its plan assume.

TC_JFDS_BindingSync read the target's Binding list on endpoint 0. Since
#72151 the JF Administrator writes each binding on the datastore entry's
EndpointID, so the test now reads the endpoint it adds the binding to.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* [JF] Mark TC_JFDS_2_5 as MatterTestCommissioner

TestDeviceRequirementMarkers requires every concrete test to derive from a
device-requirement marker. TC_JFDS_2_5 merged in #72151 after that guard landed
in #73243 and still derived from bare MatterBaseTest. It commissions the JF
Administrator DUT itself, like the other TC_JFDS_2_x tests.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

(cherry picked from commit f935302)
This backport leaves out src/python_testing/TC_JFDS_2_5.py.

* [JF] Joint Fabric Datastore: record sync failures, retry removals, match entries by value (#74429)

Changes of #74429 at its head 889d065df3 (base cbcf92f), which is not
yet merged on master. Its commits:

* fix(jfds): compare CommitFailed failureCode as an IM Status Code
* feat(jfds): add value-identity matching for ACL and binding entries
* fix(jfds): record failed syncs as CommitFailed
* fix(jfds): tear down RefreshNode in one place
* fix(jfds): match refreshed ACL entries by value
* fix(jfds): send the real entry when removing groups and key sets
* fix(jfds): limit RefreshNode's binding merge to the fetched endpoint
* fix(jfds): keep removing entries whose removal failed unrecoverably
* fix(jfds): serialize read-modify-write syncs per node
* fix(jf-admin-app): replace and remove ACL and binding entries by value
* test(jfds): update RefreshNode comment in TC_JFDS_BindingSync
* fix(jfds): log RefreshNode stage failures
* [pre-commit.ci] auto fixes from pre-commit.com hooks
* test(jfds): pass MakeEndpointGroupEntry's failure code as uint8_t
* fix(jfds): do not commit ACL updates made during RefreshNode's write
* fix(jfds): ignore group and key set removals cancelled by an add
* fix(jfds): match ACL entries by value in AddACLToNode
* [pre-commit.ci] auto fixes from pre-commit.com hooks
* refactor(jfds): store removal intent on binding, group and key set entries
* fix(jfds): queue group and key set syncs per node, and answer BUSY when full
* fix(jfds): discard syncs in flight when the joint fabric is removed
* refactor(jfds): share duplicated sync bookkeeping
* fix(jfds): propagate CAT changes to encoded ACL subjects
* [pre-commit.ci] auto fixes from pre-commit.com hooks
* test(jfds): read recorded ACL syncs through checked accessors
* fix(jfds): reject reserved and zero GroupCAT values
* fix(jfds): leave ACL entries being removed out of UpdateGroup
* fix(jfds): record the value an ACL update left on a node being removed
* fix(jfds): reject epoch keys that are not 16 bytes
* fix(jfds): do not replace a node's ACL when its entries cannot be adopted
* fix(jfds): keep the ACL value a node holds while its update is unapplied
* fix(jfds): sync each new entry alone when a refresh list write fails
* fix(jfds): record the ACL value a refresh wrote for an entry being removed
* fix(jfds): keep a full ACL list from blocking refreshes and removals
* refactor(jfds): queue a refresh's per-entry re-syncs by key
* fix(jfds): reject an unknown key set security policy in AddKeySet
* fix(jfds): sync a key set updated while its write is in flight
* fix(jfds): limit a refresh's key-set syncs to the refreshed node
* fix(jfds): don't commit a refreshed group entry changed during its sync
* fix(jfds): change the sync revision when a removal is cancelled
* fix(jfds): classify transport timeouts and busy errors
* fix(jfds): drop a key-set removal the node no longer needs
* test(jfds): expect Committed in TC-JFDS-2.5 step 33
* test(jfds): tighten tests that pass without the behavior they check
* test(jfds): move the fabric removal comment to its test
* fix(jfds): define ResetRefreshState in the header

This backport leaves out src/python_testing/TC_JFDS_2_5.py.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@silabs-matter-ci-bot
silabs-matter-ci-bot Bot requested a review from a team as a code owner October 13, 2026 00:54
@silabs-matter-ci-bot silabs-matter-ci-bot Bot added changing-git-submodules-on-purpose sl-require-admin-action This TAG indicates that an admin must take action. labels Oct 13, 2026
@github-actions

Copy link
Copy Markdown
Contributor

The check for sl-require-admin-action label CI failure for this job is normal. An admin must do the merge.

@Sarthak-Shaha

Copy link
Copy Markdown
Contributor

Keeping this open for a while as its only one commit, can be merged if we really need change, else will be merging once a few days.

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

Labels

changing-git-submodules-on-purpose sl-require-admin-action This TAG indicates that an admin must take action.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants