diff --git a/app.py b/app.py index e940390..d9d0f39 100644 --- a/app.py +++ b/app.py @@ -275,12 +275,24 @@ def load_or_create_device( raise RuntimeError( "Das Gerät ist bereits einer anderen Organization zugeordnet." ) + # archived_at/deprovisioned_at explizit mit zuruecksetzen (nicht + # nur hostname/last_seen): live gefunden (02.09.2026) - ein per + # "Gerät löschen" archiviertes Geraet (archive_device(), Soft + # Delete) blieb nach einer frischen Neuinstallation derselben + # physischen Hardware (gleicher device_fingerprint) dauerhaft aus + # fetch_devices_for_organization() verschwunden, weil load_or_ + # create_device() den bestehenden Datensatz zwar fand und + # aktualisierte, archived_at dabei aber unangetastet liess - ein + # erfolgreicher /api/v1/activate-Aufruf ist der eindeutigste + # mögliche Beweis, dass das Geraet wieder aktiv genutzt wird. cur.execute( """ UPDATE devices SET hostname = %s, - last_seen = CURRENT_TIMESTAMP + last_seen = CURRENT_TIMESTAMP, + archived_at = NULL, + deprovisioned_at = NULL WHERE id = %s RETURNING id,