Die Entwicklungs-Pruefung war rot, ohne dass etwas kaputt war
Sie hielt seit dem 19.09. eine Namensliste fest: !["Eure Aufgaben", "Talente"].includes(k.name) Als ein Modi eine eigene Kachel bekam -- "Deine Aufgaben", weil "Eure" aus seiner Sicht falsch ist -- wurde sie rot. Nichts war kaputt, der Name hatte sich geaendert. Das ist die abgeschriebene Liste zum dritten Mal in diesem Haus, und diesmal traf sie eine Pruefung: Eine rote Pruefung, die rot BLEIBT, gewoehnt einem das Hinsehen ab und ist damit schaedlicher als gar keine. Erst nachgemessen, ob die Kachel ueberhaupt falsch ist: In workspace-entwicklung.js steht const personen = leitung ? db().prepare(...) : []; Ein Modi bekommt dort eine LEERE Liste -- er sieht auf der Seite nur sich selbst. Die Kachel war also richtig, die Pruefung nicht. An ihre Stelle treten zwei Messungen: 1. DAS VERSPRECHEN STATT DES NAMENS. Filipe hatte gemeldet, dass auf der Kachel "die Antworten sieht nur du" stand und sie trotzdem auf eine Seite mit fremden Namen fuehrte. Das ist eine Eigenschaft des Untertitels, nicht des Namens. Wer morgen eine Kachel "Dein Kopf" nennt und dasselbe verspricht, ist mitgeprueft -- die Namensliste haette ihn durchgelassen. 2. DIE ECHTE GRENZE, die bisher NIEMAND gemessen hat. Ob eine Kachel richtig zeigt, ist Beschriftung; ob die Seite dahinter fremde Namen herausgibt, sind Daten -- und nur das schuetzt jemanden wirklich. Gemessen wird jetzt beides: Ein Modi bekommt auf /entwicklung/lage NIEMANDEN (0), DogFather und die rechte Hand bekommen sehr wohl welche (2). Die zweite Zeile ist die Gegenprobe zur ersten -- waere der Filter einfach zu, saehe auch die Leitung nichts, und die Modi-Zeile waere trotzdem gruen. Nebenbei: Beim ersten Lauf stand `lage.code === 200` statt `lage.status` -- der Helfer heisst anders. Beide Zeilen wurden dadurch ROT, obwohl die Zahlen (2 und 0) von Anfang an stimmten. Der richtige Ausgang: lieber laut scheitern als still bestaetigen. pruef-entwicklung: 46 Pruefungen, 0 Fehler (vorher 43 mit 1 Fehler). Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -308,12 +308,49 @@ console.log("=== Die Kacheln ===");
|
||||
ok(!!befinden, `${wer} hat „${befinden?.name || "—"}"`);
|
||||
ok(befinden?.gruppe === "Für dich",
|
||||
`und sie steht bei „Für dich" (${befinden?.gruppe})`);
|
||||
/* GEGENPROBE: Sie fuehrt NICHT mehr dorthin, wo andere Menschen
|
||||
stehen -- sonst waere der gemeldete Fehler beim naechsten Umbau
|
||||
still wieder da. */
|
||||
ok(!alleX.some((k) => k.ziel === "entwicklung.html"
|
||||
&& !["Eure Aufgaben", "Talente"].includes(k.name)),
|
||||
`${wer}: keine Kachel fuehrt mehr ersatzweise auf die Entwicklungsseite`);
|
||||
/* GEGENPROBE: Die Kachel, die VERTRAULICHKEIT VERSPRICHT, fuehrt
|
||||
nicht dorthin, wo andere Menschen stehen.
|
||||
|
||||
HIER STAND EINE NAMENSLISTE (20.09.2026 ersetzt). Sie lautete
|
||||
`!["Eure Aufgaben", "Talente"].includes(k.name)` -- und war damit
|
||||
eine abgeschriebene Liste, genau die Sorte, vor der dieses Haus
|
||||
an drei Stellen warnt. Als ein Modi eine eigene Kachel bekam
|
||||
("Deine Aufgaben", weil "Eure" aus seiner Sicht falsch ist),
|
||||
wurde diese Pruefung rot, OHNE dass irgendetwas kaputt war. Eine
|
||||
rote Pruefung, die rot bleibt, gewoehnt einem das Hinsehen ab --
|
||||
sie ist schaedlicher als gar keine.
|
||||
|
||||
Geprueft wird jetzt, was Filipe eigentlich gemeldet hat: Auf der
|
||||
Kachel stand "die Antworten sieht nur du", und sie fuehrte auf
|
||||
eine Seite mit Namen anderer Leute. Das ist eine Eigenschaft des
|
||||
VERSPRECHENS, nicht des Namens -- und Versprechen stehen im
|
||||
Untertitel. Wer morgen eine Kachel "Dein Kopf" nennt und dasselbe
|
||||
verspricht, ist damit mitgeprueft; die Namensliste haette ihn
|
||||
durchgelassen. */
|
||||
const verspricht = (k) => /nur du|nur dich|siehst nur du/i.test(k.unter || "");
|
||||
const heikel = alleX.filter((k) => verspricht(k) && k.ziel === "entwicklung.html");
|
||||
ok(alleX.some(verspricht) && heikel.length === 0,
|
||||
`${wer}: keine Kachel verspricht Vertraulichkeit und fuehrt doch auf die`
|
||||
+ ` Entwicklungsseite (${alleX.filter(verspricht).length} mit Versprechen geprueft)`);
|
||||
|
||||
/* UND DIE ECHTE GRENZE, die bisher NIEMAND gemessen hat.
|
||||
Ob eine Kachel richtig zeigt, ist Beschriftung. Ob die Seite
|
||||
dahinter fremde Namen herausgibt, sind Daten -- und nur das
|
||||
schuetzt jemanden wirklich. Ein Modi darf dort NIEMANDEN
|
||||
bekommen ausser sich selbst. */
|
||||
const lage = await hole("/workspace/api/entwicklung/lage", { host: CREW, keks });
|
||||
const fremde = (lage.daten?.personen || []).filter((q) => q.id !== undefined);
|
||||
if (wer === "ein Modi") {
|
||||
ok(lage.status === 200 && fremde.length === 0,
|
||||
`${wer} bekommt auf der Entwicklungsseite KEINE fremden Namen (${fremde.length})`);
|
||||
} else {
|
||||
/* Die Gegenprobe zur Zeile darueber: Waere der Filter kaputt und
|
||||
liesse niemanden durch, saehe auch die Leitung nichts -- und
|
||||
die Modi-Zeile waere trotzdem gruen. Beide Richtungen gehoeren
|
||||
gemessen, sonst beweist keine etwas. */
|
||||
ok(lage.status === 200 && fremde.length > 0,
|
||||
`${wer} bekommt sie sehr wohl (${fremde.length}) -- der Filter ist nicht einfach zu`);
|
||||
}
|
||||
}
|
||||
|
||||
const a = await hole("/workspace/api/ich", { host: CREW, keks: ayla.keks });
|
||||
|
||||
Reference in New Issue
Block a user