Wie lange geht das schon so -- Eskalation statt eines Schalters
Stufe 9 aus dem Plan: "Eskalationsstufe sichtbar". Damit ist Stufe 9
bis auf einen Punkt durch.
DER MANGEL, GEMESSEN
"Ueberfaellig" war ein Schalter: an oder aus. Eine Aufgabe, deren Frist
gestern lief, sah genauso aus wie eine, die seit drei Wochen liegt --
dasselbe Wort, dieselbe Farbe, derselbe Platz.
Damit verliert das Wort seine Bedeutung. Stehen auf einem Brett zwanzig
Karten "ueberfaellig", sagt keine davon mehr etwas; man ueberliest sie
alle, auch die, die seit einem Monat blockiert.
ZWEI VERSCHIEDENE FRAGEN, DIE NICHT VERMISCHT WERDEN DUERFEN
FRIST UEBERSCHRITTEN Es war etwas versprochen, der Termin ist
vorbei. Eine Tatsache.
faellig (ab 1 Tag) -> liegt (ab 3) -> haengt (ab 8)
NICHTS PASSIERT Keine Frist, aber seit 14 Tagen hat niemand
die Karte angefasst. Eine Beobachtung.
Die erste ist haerter und steht vorn. Eine Aufgabe ohne Frist ist nicht
"zu spaet" -- sie ist nur still. Beides in einen Topf zu werfen hiesse,
jemandem einen gebrochenen Termin vorzuwerfen, den er nie zugesagt hat.
Deshalb ist "still" auch farblos gezeichnet, gestrichelt statt gefuellt.
DAS IST KEINE MAHNUNG
Dieselbe Haltung wie bei der Standzeit im Talente-Trichter: Die Zahl ist
eine Auskunft ueber UNS, kein Vorwurf an eine Person. Deshalb steht
nirgends ein Name, und die hoechste Stufe heisst "haengt", nicht
"versaeumt".
DIE SCHWELLEN SIND GESETZT, NICHT GEMESSEN -- und das steht so im Code:
unter 3 Tagen reicht ein Wochenende; ab 3 ist es ein Zustand; ab 8 (ueber
eine Woche) kommt es ohne Hilfe auch naechste Woche nicht dazu. Aendert
sich eine Zahl, aendert sie sich an einer Stelle, und die Oberflaeche
zieht mit -- sie bekommt das WORT vom Server.
AM SERVER GERECHNET. Startseite, Brett und Uebersicht lesen dieselbe
Liste. Drei Stellen, die dieselbe Frage selbst beantworten, geben
irgendwann drei Antworten -- genau der Fehler, der im Projekt schon bei
der Rollenreihenfolge und beim Wort "Agentur" passiert ist.
DIE FARBE IST NICHT DIE AUSKUNFT: In jedem Kaestchen steht ein Wort
("liegt seit 5 Tagen"), nicht nur ein roterer Punkt.
PRUEFUNGEN: pruef-eskalation neu mit 40, davon 6 im Browser. Gemessen
wird an den GRENZEN, nicht in der Mitte -- jede Schwelle dreimal: einen
Tag davor, genau darauf, einen Tag danach. Die wichtigste ist die erste:
am Tag der Frist ist nichts ueberfaellig. Wer bis zum 15. Zeit hat, ist
am 15. puenktlich; eine Eskalation, die einen Tag zu frueh anschlaegt,
verliert genau das Vertrauen, das sie braucht.
Die Pruefung benutzt einen FESTEN Zeitpunkt als Eingabe, keine
Wanderuhr -- sonst misst sie irgendwann das Gegenteil.
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -1038,3 +1038,46 @@
|
||||
}
|
||||
.anhaenge__zufuegen:hover .anhaenge__knopf { color: var(--text); border-color: var(--rand-hell); }
|
||||
.anhaenge__hinweis { margin: 6px 0 0; font-size: .78rem; color: var(--text-still); }
|
||||
|
||||
/* =====================================================================
|
||||
WIE LANGE GEHT DAS SCHON SO? (15.09.2026)
|
||||
|
||||
Drei Stufen, drei Toene -- aber die Farbe ist NICHT die Auskunft: Im
|
||||
Text steht "liegt seit 5 Tagen", nicht nur ein roterer Punkt. Wer
|
||||
Farben schlecht sieht, liest dasselbe.
|
||||
|
||||
Und es bleibt gedaempft. Eine Karte, die schreit, wird weggeklickt;
|
||||
eine, die ruhig sagt "seit 12 Tagen", wird gelesen.
|
||||
===================================================================== */
|
||||
|
||||
.karte__eskal {
|
||||
font-size: .76rem; font-weight: 700;
|
||||
padding: 2px 9px; border-radius: 999px;
|
||||
letter-spacing: .01em;
|
||||
color: var(--text-leise);
|
||||
border: 1px solid var(--rand-hell);
|
||||
}
|
||||
/* faellig: es ist gerade passiert. Ein Hinweis, keine Warnung. */
|
||||
.karte__eskal[data-stufe="faellig"] {
|
||||
color: #d8a76a;
|
||||
border-color: color-mix(in srgb, #cc9451 40%, transparent);
|
||||
}
|
||||
/* liegt: laenger als ein Wochenende. Jetzt ist es ein Zustand. */
|
||||
.karte__eskal[data-stufe="liegt"] {
|
||||
color: #e0955f;
|
||||
border-color: color-mix(in srgb, #cc7a3f 50%, transparent);
|
||||
background: color-mix(in srgb, #cc7a3f 10%, transparent);
|
||||
}
|
||||
/* haengt: ueber eine Woche. Ohne Hilfe wird das auch naechste Woche
|
||||
nichts. */
|
||||
.karte__eskal[data-stufe="haengt"] {
|
||||
color: #e8886f;
|
||||
border-color: color-mix(in srgb, #c25c45 55%, transparent);
|
||||
background: color-mix(in srgb, #c25c45 14%, transparent);
|
||||
}
|
||||
/* still: keine Frist gerissen, nur lange nichts passiert. Bewusst
|
||||
farblos -- das ist eine Beobachtung, kein gebrochenes Versprechen. */
|
||||
.karte__eskal[data-stufe="still"] {
|
||||
color: var(--text-still);
|
||||
border-style: dashed;
|
||||
}
|
||||
|
||||
@@ -194,10 +194,32 @@
|
||||
if (a.prioritaet === 'hoch' && a.status !== 'erledigt') {
|
||||
zeile.append(el('span', 'karte__wichtig', 'wichtig'));
|
||||
}
|
||||
/* ---- WIE LANGE GEHT DAS SCHON SO? (15.09.2026, Stufe 9) --------
|
||||
|
||||
"Ueberfaellig" war ein Schalter: an oder aus. Eine Karte, deren
|
||||
Frist gestern lief, sah aus wie eine, die seit drei Wochen liegt.
|
||||
Stehen auf einem Brett zwanzig Karten "ueberfaellig", sagt keine
|
||||
davon mehr etwas -- man ueberliest sie alle, auch die, die seit
|
||||
einem Monat blockiert.
|
||||
|
||||
DAS WORT KOMMT VOM SERVER. Eine zweite Rechnung hier waere die,
|
||||
die irgendwann anders antwortet als die Startseite. */
|
||||
if (a.eskalation) {
|
||||
const e = el('span', 'karte__eskal', a.eskalation.wort);
|
||||
e.dataset.stufe = a.eskalation.stufe;
|
||||
e.title = a.eskalation.grund === 'frist'
|
||||
? 'Die Frist ist vorbei. Die Zahl sagt, seit wann.'
|
||||
: 'Ohne Frist – seit so vielen Tagen hat niemand die Karte angefasst.';
|
||||
zeile.append(e);
|
||||
}
|
||||
|
||||
if (a.frist) {
|
||||
const faellig = a.status !== 'erledigt' && a.frist < heute;
|
||||
/* Das Wort "ueberfaellig" steht jetzt oben in der Stufe. Hier
|
||||
bleibt nur noch das Datum -- zweimal dasselbe nebeneinander
|
||||
waere Laerm. */
|
||||
const faellig = !!a.eskalation && a.eskalation.grund === 'frist';
|
||||
const f = el('span', 'karte__frist' + (faellig ? ' karte__frist--faellig' : ''),
|
||||
(faellig ? 'überfällig ' : 'bis ') + datumHuebsch(a.frist));
|
||||
'bis ' + datumHuebsch(a.frist));
|
||||
zeile.append(f);
|
||||
}
|
||||
/* Die Kategorie als Wort in derselben Zeile wie Frist und Person.
|
||||
|
||||
Reference in New Issue
Block a user