Files
d4rkbot/frontend
D4rkst3randClaude Fable 5 55085d7e2b
Deploy / check (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
NaN im Dashboard: zwei Zeitstempel-Formate, ein Parser
Bei Devlogs und Backup stand "vor NaN Tagen". Ursache war meine Annahme, die
Datenbank speichere Zeit durchgehend im SQLite-Format. Stimmt nur zur Haelfte:

  audit.ts             "2026-07-30 12:34:56"       datetime('now'), UTC ohne Zone
  devlogs.posted_at    "2026-07-30T12:34:56.789Z"  toISOString()
  Einstellung last_backup                          ebenso

Mein Code haengte immer ein Z an. Beim ersten Format ist das noetig, sonst
liest der Browser die Zeit als Ortszeit. Beim zweiten ergibt es "...ZZ" und
damit ein ungueltiges Datum — daher das NaN. Auf der Team-Seite fiel es nicht
auf, weil dort nur das Protokoll steht, und das hat das erste Format.

Jetzt erkennt alsDatum() die Zone am String und ergaenzt nur, was fehlt.
Unlesbares ergibt null statt NaN, die Anzeige faellt dann auf ihren Ersatztext
zurueck. Die Funktion liegt einmal auf Modulebene und wird von beiden Stellen
benutzt, damit sie nicht wieder auseinanderlaufen.

Geprueft mit acht Faellen direkt gegen die ausgelieferte Funktion, nicht gegen
eine Kopie: beide echten Formate ergeben denselben Zeitpunkt, dazu Offset
statt Z, und null/leer/Unsinn ergeben null. Danach im Browser mit dem Format
gegengeprueft, an dem es wirklich gescheitert ist — der erste Testlauf lief
noch mit dem SQLite-Format und waere gruen gewesen, ohne etwas zu beweisen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 04:38:11 +02:00
..