Alt-Bestands-Messung las die falsche Antwort-Form — und schwieg dabei
Der Vorab-Riegel von vault-change-password griff NICHT. Gefunden hat es erst
die Live-Probe: der Wechsel ging trotz eines vorhandenen Alt-Zugangs raus und
wurde vom SERVER mit 409 gestoppt — die Zusage "stoppt, bevor gesendet wird"
war damit gebrochen.
Ursache, am laufenden Dienst gemessen: die Antwort ist
{ payload: { data: [...] }, meta } — `payload` ist ein OBJEKT, kein Feld. Der
Code las `res.payload ?? res.data` als Liste, bekam ein Objekt, und
`Array.isArray(...) ? ... : []` machte daraus STILL eine leere Liste. Eine
leere Liste heisst hier "keine Alt-Bestaende", also: senden.
Zwei Fehler, nicht einer — und der zweite ist der teurere:
(a) falscher Pfad in die Antwort;
(b) eine unerwartete Form wurde als "nichts vorhanden" gelesen statt als
"nicht feststellbar". Genau die Fehlerklasse, gegen die dieser Riegel
steht.
Behoben: der gemessene Pfad zuerst, danach zwei ausdrueckliche Rueckfaelle —
und FAIL-CLOSED. Ist das Ergebnis keine Liste, bricht der Befehl ab, statt
weiterzumachen. Ebenso, wenn die Liste die Obergrenze (500) erreicht und
damit abgeschnitten sein koennte; `meta` traegt keine Gesamtzahl, mit der
sich das anders pruefen liesse.
Belegt: dieselbe Live-Probe stoppt jetzt VOR dem Senden, nennt den Zugang
namentlich (69fe8996e1772fc374ef1c86 "Rustdesk Public Key") und endet mit
Exit 2 statt mit dem Server-409. Drei neue Proben halten die gemessene Form,
die unerwartete Form und den Obergrenzen-Fall fest; die bestehenden Proben
sind auf die ECHTE Form umgestellt — sie hatten meine falsche Annahme
gespiegelt und deshalb gruen gemeldet.
Dazu: die Phrasen-Abfrage nimmt die Phrase nicht-interaktiv ueber die
STANDARDEINGABE (nie ueber ein Flag — das stuende in der Prozessliste), je
eine Zeile pro Abfrage. Der Leser wird je Befehlsaufruf erzeugt statt im
Modul gehalten; als Modul-Zustand teilten sich zwei Aufrufe im selben Prozess
einen bereits geleerten Vorrat.
23 Proben in dieser Datei; volle Reihe 1545 gruen / 3 uebersprungen.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
die Live-Probe: der Wechsel ging trotz eines vorhandenen Alt-Zugangs raus und
wurde vom SERVER mit 409 gestoppt — die Zusage "stoppt, bevor gesendet wird"
war damit gebrochen.
Ursache, am laufenden Dienst gemessen: die Antwort ist
{ payload: { data: [...] }, meta } — `payload` ist ein OBJEKT, kein Feld. Der
Code las `res.payload ?? res.data` als Liste, bekam ein Objekt, und
`Array.isArray(...) ? ... : []` machte daraus STILL eine leere Liste. Eine
leere Liste heisst hier "keine Alt-Bestaende", also: senden.
Zwei Fehler, nicht einer — und der zweite ist der teurere:
(a) falscher Pfad in die Antwort;
(b) eine unerwartete Form wurde als "nichts vorhanden" gelesen statt als
"nicht feststellbar". Genau die Fehlerklasse, gegen die dieser Riegel
steht.
Behoben: der gemessene Pfad zuerst, danach zwei ausdrueckliche Rueckfaelle —
und FAIL-CLOSED. Ist das Ergebnis keine Liste, bricht der Befehl ab, statt
weiterzumachen. Ebenso, wenn die Liste die Obergrenze (500) erreicht und
damit abgeschnitten sein koennte; `meta` traegt keine Gesamtzahl, mit der
sich das anders pruefen liesse.
Belegt: dieselbe Live-Probe stoppt jetzt VOR dem Senden, nennt den Zugang
namentlich (69fe8996e1772fc374ef1c86 "Rustdesk Public Key") und endet mit
Exit 2 statt mit dem Server-409. Drei neue Proben halten die gemessene Form,
die unerwartete Form und den Obergrenzen-Fall fest; die bestehenden Proben
sind auf die ECHTE Form umgestellt — sie hatten meine falsche Annahme
gespiegelt und deshalb gruen gemeldet.
Dazu: die Phrasen-Abfrage nimmt die Phrase nicht-interaktiv ueber die
STANDARDEINGABE (nie ueber ein Flag — das stuende in der Prozessliste), je
eine Zeile pro Abfrage. Der Leser wird je Befehlsaufruf erzeugt statt im
Modul gehalten; als Modul-Zustand teilten sich zwei Aufrufe im selben Prozess
einen bereits geleerten Vorrat.
23 Proben in dieser Datei; volle Reihe 1545 gruen / 3 uebersprungen.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>