Zwei Pruefungen rechneten in UTC und schlugen abends falschen Alarm
pruef-zeitraum und pruef-highlights bildeten ihren Tagesstempel mit toISOString(). Das ist UTC. Zwischen 22:00 und Mitternacht deutscher Zeit ist das schon der naechste Tag -- die Pruefungen verglichen dann einen Eintrag von heute mit dem Datum von morgen und meldeten einen Fehler, wo keiner war. Der Zeitraum-Filter im Haus rechnet richtig; er benutzt tagLokal() aus helfer-zeit.mjs. Nur die Pruefungen darueber hatten ihre eigene, falsche Rechnung. Jetzt benutzen sie denselben Helfer wie der Code, den sie pruefen -- damit koennen die beiden gar nicht mehr auseinanderlaufen. Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -27,6 +27,7 @@
|
||||
import { mkdtempSync, rmSync } from "node:fs";
|
||||
import { tmpdir } from "node:os";
|
||||
import { join } from "node:path";
|
||||
import { tagLokal } from "./helfer-zeit.mjs";
|
||||
import { eigenerPort } from "./helfer-port.mjs";
|
||||
import { notbremse } from "./helfer-notbremse.mjs";
|
||||
|
||||
@@ -83,7 +84,13 @@ const einf = (titel, kanal, wannTage) => d.prepare(
|
||||
+ " datum, quelle_kanal, erstellt_von, erstellt)"
|
||||
+ " VALUES (?,?,?,?,?,?,?,?,?,?)")
|
||||
.run("highlight", "clip", titel, "", "offen", "mittel",
|
||||
vorTagen(wannTage).toISOString().slice(0, 10), kanal, 1,
|
||||
/* Das TAGESDATUM ueber den Hausschluessel, nicht ueber UTC:
|
||||
`vorTagen` verankert zwar um neun Uhr und waere damit richtig,
|
||||
aber das sieht man der Zeile nicht an -- pruef-struktur hat sie
|
||||
als UTC-Rechnung gemeldet. Ein Fehlalarm ist schlimmer als keine
|
||||
Pruefung. Der volle Zeitstempel eine Zeile tiefer darf bleiben:
|
||||
Dort ist UTC richtig, weil er eine ZEIT ist und keinen Tag. */
|
||||
tagLokal(-wannTage), kanal, 1,
|
||||
vorTagen(wannTage).toISOString());
|
||||
|
||||
einf("Heute DogFather", "dogfather", 0);
|
||||
|
||||
Reference in New Issue
Block a user