fix: Bank-Suche verlor die besten Treffer beim Kuerzen

Der Fehler, den der Nutzer gefunden hat: Die Suche nach "n" lieferte
"genau 200" Treffer und darunter nie N26. Ursache war die Reihenfolge –
alphabetisch sortiert und ERST DANN bei 200 gekuerzt. "N26" liegt hinter
"Aachener Bank", fiel also hinter zweihundert Banken heraus, die irgendwo
ein n im Namen tragen. Die Bank war die ganze Zeit da.

Jetzt wird zuerst bewertet (genauer Name > Namensanfang > Wortanfang >
Teiltreffer > nur BIC/Gruppe) und erst danach gekuerzt. Ausserdem wird die
ECHTE Trefferzahl gemeldet statt der gekuerzten – "genau 200" sah aus wie ein
Suchergebnis, war aber die Obergrenze.

Ein Regressionstest stellt den Fall nach: 300 Banken mit "n" im Namen,
alphabetisch vor N26. Ohne den Fix faellt er um.

Nebenbei geprueft und ausgeschlossen: /aspsps blaettert nicht, die Liste ist
also vollstaendig; Sandbox und alphabetische Kuerzung waren es auch nicht.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Guido
2026-08-26 22:10:41 +02:00
co-authored by Claude Opus 5
parent f53efc4767
commit beb1bb3419
5 changed files with 98 additions and 25 deletions
+2 -1
View File
@@ -609,7 +609,8 @@
"range": "Die Liste reicht von „{{von}}“ bis „{{bis}}“.",
"letters": "Vorhandene Anfangsbuchstaben",
"truncatedHint": "Fehlen ganze Buchstaben – etwa N oder R –, ist die Liste abgeschnitten und deine Bank wurde gar nicht mitgeliefert. Dann liegt es nicht am Suchbegriff, und ich muss die Abfrage blättern lassen.",
"sameLetter": "Alles, was in der Liste mit „{{buchstabe}}“ beginnt:"
"sameLetter": "Alles, was in der Liste mit „{{buchstabe}}“ beginnt:",
"pickBankMore": "Die besten {{n}} von {{treffer}} Treffern – such genauer, wenn deine Bank nicht dabei ist:"
},
"bankReturn": {
"title": "Rückkehr von der Bank",
+2 -1
View File
@@ -609,7 +609,8 @@
"range": "The list runs from “{{von}}” to “{{bis}}”.",
"letters": "Initial letters present",
"truncatedHint": "If whole letters are missing – N or R, say – the list is truncated and your bank was never delivered. Then the search term is innocent and the query needs paging.",
"sameLetter": "Everything in the list starting with “{{buchstabe}}”:"
"sameLetter": "Everything in the list starting with “{{buchstabe}}”:",
"pickBankMore": "The best {{n}} of {{treffer}} matches – search more precisely if yours is not among them:"
},
"bankReturn": {
"title": "Back from your bank",
+5 -1
View File
@@ -306,7 +306,11 @@ export default function Bankanbindung() {
) : (
<>
<p className="muted small">
{t("bank.pickBank", { n: banken.treffer.length, gesamt: banken.gesamt })}
{banken.gekuerzt
? t("bank.pickBankMore", { n: banken.treffer.length,
treffer: banken.treffer_gesamt })
: t("bank.pickBank", { n: banken.treffer_gesamt,
gesamt: banken.gesamt })}
</p>
<div className="account-list">
{banken.treffer.map((b) => (