# AssetManager v0.5.0.2

## Korrektur der Auftragsstatus-Race-Condition

Der Client konnte die Softwareinventur erfolgreich abschließen und der
AssetManager konnte den Callback mit HTTP 200 annehmen. Trotzdem blieb der
Auftrag anschließend auf „Gesendet; Callback ausstehend“.

Ursache:

MeshCtrl wartet auf das Ende des Befehls auf dem Client. Der Client sendete
den erfolgreichen Callback bereits, während der MeshCtrl-Prozess auf dem
AssetManager noch lief. Nach Rückkehr von MeshCtrl setzte dessen Thread den
bereits erfolgreichen Auftrag erneut pauschal auf „Gesendet“.

Korrektur:

- MeshCtrl-Diagnoseausgaben werden getrennt vom Auftragsstatus gespeichert.
- Ein bereits eingegangener oder abgeschlossener Callback wird nicht mehr
  überschrieben.
- Die Statusänderung erfolgt als bedingtes Datenbank-Update und schließt
  dadurch auch das kleine Zeitfenster zwischen Prüfung und Speicherung.
- Die Statusmeldung spricht neutral von „Callback“ statt fälschlich immer von
  „HTTPS-Callback“, da HTTP und HTTPS unterstützt werden.

Es wurden keine bestehenden Callback-Endpunkte, Inventurskripte,
Einstellungen, Tabellen, Themes oder Backupfunktionen verändert.
