corona-warn-app / cwa-app-ios

Native iOS app using the exposure notification framework from Apple. The CWA development ends on May 31, 2023. You still can warn other users until April 30, 2023. More information:
https://coronawarn.app/en/faq/#ramp_down
Apache License 2.0
1.68k stars 284 forks source link

Risk-state unknown after 14 days and switching temporarily to the Swiss Corona App and back #819

Closed elektro-wolle closed 4 years ago

elektro-wolle commented 4 years ago

Avoid duplicates

Describe the bug

After switching to another contact-tracing app (SwissCovid) after 14 days and returning to the Corona Warn App, the risk-state switches to unknown.

Expected behaviour

The previous history of 14 days without contact should not be discarded.

Steps to reproduce the issue

  1. Install CWA as contact tracing app
  2. Wait 1 day for retrieving an update
  3. Install SwissCovid, enable it as tracing app
  4. Immediately switching back to CWA
  5. Contact-History lost in CWA

Technical details

Possible Fix

Additional context

The day counter is also reset to zero

IMG_C45843C2E18E-1

But the exposure checks were present:

{
  "Build" : "17F80",
  "ExportVersion" : 1,
  "ExposureChecks" : [
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-24 02:20:10 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-25 02:33:41 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-25 02:33:41 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-26 08:12:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-26 08:12:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1160,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-26 08:12:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-27 12:01:55 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-27 12:01:55 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1160,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-27 12:01:55 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1450,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-27 12:01:55 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-28 16:31:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-28 16:31:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1160,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-28 16:31:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1450,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-28 16:31:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1280,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-28 16:31:37 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1160,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1450,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1280,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 760,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-29 17:05:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 503,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 720,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1160,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1450,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1280,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 760,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 1270,
      "MatchCount" : 0,
      "DataSource" : "de.rki.coronawarnapp",
      "Timestamp" : "2020-06-30 17:48:43 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 10,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:28 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 10,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:28 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 10,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:28 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 10,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 14,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 16,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 14,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 14,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 10,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    },
    {
      "Hash" : "zzz",
      "RandomIDCount" : 13,
      "MatchCount" : 0,
      "DataSource" : "ch.admin.bag.dp3t",
      "Timestamp" : "2020-06-30 18:53:29 +0200"
    }
  ],
  "DeviceProductType" : "iPhone10,4"
}
jwildeboer commented 4 years ago

See #794, #804, #805, #815 and #818 ;)

It’s a known bug. It’s fixed. The update is in the App Store since today.

So please install the update to version 1.0.3. That should fix it.

elektro-wolle commented 4 years ago

1.0.3 is currently installed. I'll try waiting until the next exposure check update is delivered.

jwildeboer commented 4 years ago

I had to wait for around two hours after the update was installed for the risk calculation to switch from grey to green. FYI.

elektro-wolle commented 4 years ago

After waiting a couple of hours, the state switches back to green, but the history is lost:

IMG_563C7E123F2E-1

Despite the different root cause, this could be closed as duplicate to #805

tkowark commented 4 years ago

Thanks again for your patience. As mentioned in other issues, the "history" is only lost as far as the displayed active days are concerned. The RPIs stored in the exposure log of the Exposure Notification Framework are not affected by that.