Änderungen an der benutzerdefinierten Radar-Regelbewertung

Stripe plant, bis Ende Mai 2024 Verbesserungen an den Radar-Regeln zu implementieren, die es vereinfachen, das Verhalten zu verstehen und zu behandeln, wenn Attributwerte fehlen.

Bisher galt, dass, wenn Sie eine Regel wie Block if :email_domain: != 'notfraud.com' schreiben und der Teil :email_domain: fehlt, diese Regel nicht angewendet werden konnte. Der Grund dafür ist, dass Stripe != 'notfraud.com' als ein Attribut interpretiert, das einen bestimmten Wert aufweist, der von 'notfraud.com' abweicht und den ein fehlendes Attribut nicht erfüllen würde. Wenn Sie im Gegensatz dazu eine ähnliche Regel wie Block if NOT(:email_domain: = 'notfraud.com') schreiben und der Teil :email_domain: fehlt, könnte diese Regel verwendet werden. Der Grund dafür ist, dass die eingebettete Aussage :email_domain: = 'notfraud.com' als „Falsch“ bewertet würde. Dies würde bei einer Negation durch die NOT-Operation als „Wahr“ bewertet.

Im neuen Interpreter würden beide Regeln jedoch dazu führen, dass die Regel nicht angewendet werden könnte. Dies liegt daran, dass jeder Vergleich (z. B. =, !=, >, <, IN) eines fehlenden Attributs mit einem anderen statischen Wert oder einem statischen Attribut (fehlend oder vorhanden) bestätigt, dass Daten fehlen. In gleicher Weise gilt, dass jede logische Operation (wie AND, OR, NOT) mit fehlenden Werten zu einem fehlenden Attribut führt, wenn nicht ausdrücklich definiert. Regeln, die zu einem fehlenden Wert führen, der über die gesamte Bewertung hinweg respektiert wird, kann angewendet werden.

Sie können Regeln erkennen, die von dieser Änderung betroffen sind, indem Sie Prädikate überprüfen, die eine NOT-Negation mit einem verschachtelten Attribut verwenden, das möglicherweise fehlen könnte. Wenn Sie dasselbe Abgleichverhalten der Art Block if NOT(:email_domain: = 'notfraud.com') aufrechterhalten möchten, können Sie dazu das Regelprädikat explizit für das Behandeln fehlender Werte anpassen: Block if is_missing(:email_domain:)OR NOT(:email_domain: = ‘notfraud.com’). Andernfalls übernimmt Ihre Regel automatisch das aktualisierte Verhalten, sobald Stripe die Änderung vom Mai 2024 einführt.

Wurde Ihre Frage damit beantwortet?