project-chip / connectedhomeip

Matter (formerly Project CHIP) creates more connections between more objects, simplifying development for manufacturers and increasing compatibility for consumers, guided by the Connectivity Standards Alliance.
https://buildwithmatter.com
Apache License 2.0
7.53k stars 2.02k forks source link

[BUG] asyncio timeout error experienced when attempting to get window_status from endpoint after commissioning window expires #35983

Open j-ororke opened 1 month ago

j-ororke commented 1 month ago

Reproduction steps

Test Steps:

  1. TH_CR1 starts a commissioning process with DUT_CE
  2. TH_CR1 reads the BasicCommissioningInfo attribute from the General Commissioning cluster and saves the MaxCumulativeFailsafeSeconds field as max_window_duration. 3a. TH_CR1 opens a commissioning window on DUT_CE using a commissioning timeout of max_window_duration using ECM 3b. DNS-SD records shows DUT_CE advertising 3c. TH_CR1 writes and reads the Basic Information Cluster's NodeLabel mandatory attribute of DUT_CE
  3. TH creates a controller (TH_CR2) on a new fabric and commissions DUT_CE using that controller. TH_CR2 should commission the device using a different NodeID than TH_CR1.
  4. TH_CR1 reads the Fabrics attribute from the Node Operational Credentials cluster using a fabric-filtered read
  5. TH_CR2 reads the Fabrics attribute from the Node Operational Credentials cluster using a fabric-filtered read
  6. TH_CR1 writes and reads the Basic Information Cluster's NodeLabel mandatory attribute of DUT_CE
  7. TH_CR2 reads, writes and then reads the Basic Information Cluster's NodeLabel mandatory attribute of DUT_CE
  8. TH_CR2 opens a commissioning window on DUT_CE for 180 seconds using ECM
  9. Wait for the commissioning window in step 8 to timeout
  10. TH_CR2 reads the window status to verify the DUT_CE window is closed

Bug prevalence

Consistent

GitHub hash of the SDK that was being used

17b1a38e909e7874593bcb87c31be03a5866f1d4

Platform

python, raspi, vscode

Platform Version(s)

No response

Anything else?

Pre-Requisites:

TH_CR1 = Test harness as Commissioner 1 TH_CR2 = Test harness as Commissioner 2 DUT = Commissionee

Expected Result:

Actual Result:

Logs Provided from TH:

Notes:

bzbarsky-apple commented 1 month ago

@cecille This sounds like a test harness issue....

cecille commented 1 month ago

possibly, possibly not. This came up when automating some tests, it's unclear right now which side is losing the connection, but that seems to be what's happening. I asked Jake to open this to track and share logs.