Werkzeuge waren zu umstaendlich, um sie beim Kunden wirklich zu benutzen: die
Produktivdaten zeigen 19 Protokolle, aber nur 26 Messungen, fast durchweg ein
einzelner IP-Scan. Der Standardfall "IP-Scan im aktuellen Netz" kostete drei
Tipper, obwohl das einzige Feld ausdruecklich leer bleiben darf.
- Kurzer Tap auf eine Werkzeugkarte startet sofort, langes Halten oeffnet die
Optionen. Auf den betroffenen Karten steht "Tippen startet · Halten fuer
Optionen" - sonst ist das Verhalten unsichtbar und der erste versehentliche
Scan ueberrascht.
- quickRun wird je Werkzeug AUSDRUECKLICH gesetzt, nicht hergeleitet:
ToolParamField kennt kein 'required', die Pflicht steht allein im run()-Rumpf.
portscan.ports hat keinen Vorgabewert und ist optional, iperf.host hat
ebenfalls keinen und ist Pflicht - eine Heuristik ueber "hat Default" wuerde
genau falsch herum raten. iperf bleibt deshalb bewusst ohne Schnellstart.
- Der Lauf bleibt zwingend im ToolDialog: dort sitzen Bildschirmsperre,
Fortschritt mit Abbrechen und die EINZIGE Fehlerbehandlung eines
Werkzeuglaufs (runTool selbst hat kein try/catch). Ein Schnellstart daran
vorbei wuerde Fehler verschlucken.
- Die Vorschau wird nicht uebersprungen, sondern nur ohne Warnung automatisch
durchgewunken. Der IP-Scan warnt ab ~1000 Adressen - genau der Fall, in dem
ein versehentlicher Tap sonst minutenlang das falsche Netz absucht.
- Langdruck bricht ab, sobald der Finger mehr als 10 px wandert: das
Werkzeug-Raster liegt in einem Scroll-Bereich, sonst oeffnet jeder Wisch nach
einer halben Sekunde den Dialog.
- Nach einer Messung wird zum Ergebnis gescrollt und es 2,5 s hervorgehoben.
Bei 46 Geraeten liegt die neue Karte sonst dutzende Bildschirme entfernt.
block:'center', weil die feste Aktionsleiste den unteren Rand verdeckt; bei
einer Geraete-Messung wird die Geraetekarte angesteuert, denn dort hinein
wird gerendert.
- Verwendete Parameter stehen in der Messkarte. Seit dem Schnellstart laeuft
eine Messung auch ohne Dialog - dann ist das der einzige Ort, an dem man
sieht, WOMIT gemessen wurde. Beschriftung aus tool.params, nicht aus der
Ergebnistabelle: 'count' heisst dort "Gefundene Geraete", als Ping-Parameter
aber "Anzahl Pakete".
- Zuletzt benutzte Parameter werden gemerkt (neues Modul toolparams.ts).
Ortsgebundene Schluessel wie 'subnet' ausdruecklich NICHT: ein aus dem
vorigen Kundennetz uebernommener Netzbereich waere schlimmer als gar keiner,
der Schnellstart wuerde stillschweigend das falsche Netz scannen.
Im Emulator geprueft, und dabei zwei Fehler gefunden, die im Code nicht
auffielen: die Parameterzeile wiederholte "Ziel: 8.8.8.8" direkt ueber dem
Ergebnis (jetzt werden Werte ausgelassen, die das Ergebnis ohnehin nennt), und
Traceroute schrieb "1 Hops" ins Kundendokument (jetzt "1 Station").