Spicy Media sieht die Zahlen wieder -- und eine Creator-Liste enthaelt nur Creator

Zwei Dinge, das zweite habe ich nur gefunden, weil das erste eine
Pruefung rot gemacht hat.

1) DIE SPICY-SPERRE IST AUFGEHOBEN.
Filipe: "jetzt soll jede rolle diese kachel sehen. spicy, dogfather,
manager, scout und creator ... der manager scout dogfather oder spicy
koennen eintragen."

Kachel und Tuer hatte ich schon geoeffnet -- es reichte nicht. In
workspace-leistung.js sass eine dritte Schranke, die Spicy Media mit
404 abwies (Rest des Wunsches vom 07.09.). Folge: Die Seite lud, das
Auswahlfeld blieb leer, und es sah aus wie ein Fehler. Drei Schichten
mussten zustimmen, und die dritte stand woanders als die beiden
ersten.

Nebenwirkung, ausdruecklich: Damit stehen im Dashboard wieder
Diamanten, LIVE-Tage und Verweildauer je Creator-Karte. Das war der
zweite Teil der damaligen Entscheidung und faellt mit ihr weg.

Die Pruefung in pruef-spicy wurde nicht geloescht, sondern GEDREHT --
sie schlaegt jetzt an, wenn jemand die Sperre versehentlich wieder
einbaut.

2) EINE LISTE VON CREATOR-NUMMERN ENTHIELT KEINE CREATOR.
Beim Drehen fiel auf: Spicy Media bekam "Agentur, Filipe, Luna, Max,
NeuerCreator, NeuerManager" -- DogFather nur "Luna, NeuerCreator".

Ursache: `ohneVerborgene` schreibt ein `null` ("sieht alles") zu einer
echten Liste aus, sobald es etwas zu verbergen gibt -- zur Liste ALLER
Personen, weil sie nicht wissen kann, wovon "alles" gerade handelt.
Bei DogFather greift das nie (er verbirgt nichts vor sich selbst), bei
Spicy Media schon. Der Aufrufer baut daraus ein `IN (...)` OHNE
Rollenfilter, und damit wurden Manager und Scouts zu Creators.

Repariert an der Wurzel, nicht beim Aufrufer: Es gibt zehn Aufrufer,
und neun richtig plus einen vergessen sieht man nie. Der Name der
Funktion ist das Versprechen -- es wird jetzt dort eingeloest, wo der
Name steht.

AUFGEFALLEN IST ES, WEIL EINE PRUEFUNG DIE BEIDEN LISTEN VERGLICHEN
HAT, statt bei jeder einzeln "ist nicht leer" zu sagen. Genau dieser
Unterschied steht jetzt als eigene Aussage drin.

Gemessen: pruef-backstage-import 50 -> 63 (Manager und Spicy Media
kamen dazu, inklusive der Aussage, dass Spicy Media MEHR Creator sieht
als ein Manager), pruef-spicy 60 -> 62. Dazu gruen: betreuung,
manager-sicht, verborgen, haus-trennung, sicht, aufgabenbrett,
schulung, steckbrief, uebersicht, leistung, tiktok-datei,
fremde-sicht, personen-liste, creator-anlegen, ampel, tagesblick.

NICHT von mir: pruef-agentur meldet 31 Fehler (HTTP 503). Gegen den
Stand ohne meine Aenderungen nachgemessen -- dort dieselben 31. Ein
aelterer, eigener Befund, unangetastet.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-11 14:19:43 +02:00
co-authored by Claude Opus 5
parent 8d3a79ed2a
commit 915a4ae07c
4 changed files with 138 additions and 34 deletions
+22 -9
View File
@@ -455,20 +455,33 @@ const ruf = async (art, weg, keks, koerper) => {
`DogFather sieht weiterhin beide (${dTitel.length})`);
}
{
/* DIE ZAHLEN SIEHT SIE NIRGENDS (07.09.2026).
/* DIE ZAHLEN SIEHT SIE WIEDER (11.09.2026) -- umgedreht.
Zuerst waren nur Kachel und Seite geschlossen -- die Creator-Zahlen
standen damit weiterhin im Dashboard, weil das sie ueber eine
eigene Schnittstelle holt. Filipe hat entschieden, dass auch das
weg soll.
Vom 07.09. bis heute stand hier das Gegenteil: Die Schnittstelle
antwortete ihr mit 404, nach Filipes Wunsch "bei der spicy rolle,
die zahlen diese kategorie nicht sehen". Am 11.09. hat er das
aufgehoben: "jetzt soll jede rolle diese kachel sehen. spicy,
dogfather, manager, scout und creator."
Geprueft wird die SCHNITTSTELLE und nicht die Oberflaeche: Eine
ausgeblendete Zeile ist keine Sperre. Und mit Gegenprobe, sonst
bewiese die Zeile nur, dass es den Weg gar nicht gibt. */
DIE PRUEFUNG WURDE NICHT GELOESCHT, SONDERN GEDREHT. Eine
entfernte Pruefung senkt die Zahl und beweist nichts; eine
gedrehte haelt fest, dass die Entscheidung bewusst war -- und
schlaegt an, wenn jemand die Sperre versehentlich wieder
einbaut.
Geprueft wird die SCHNITTSTELLE und nicht die Oberflaeche: Ein
eingeblendeter Knopf ist kein Zugang. Und mit Gegenprobe, sonst
bewiese die Zeile nur, dass irgendetwas antwortet. */
const beiIhr = await ruf("GET", "/workspace/api/leistung", keksSpicy);
ok(beiIhr.status === 404, `die Zahlen antworten ihr mit 404 (${beiIhr.status})`);
ok(beiIhr.status === 200, `die Zahlen antworten ihr wieder (${beiIhr.status})`);
ok((beiIhr.daten?.creator || []).length > 0,
`und sie bekommt auch Creator dabei (${(beiIhr.daten?.creator || []).length})`);
const beiIhm = await ruf("GET", "/workspace/api/leistung", keksDogi);
ok(beiIhm.status === 200, `DogFather bekommt sie weiterhin (${beiIhm.status})`);
const ihre = (beiIhr.daten?.creator || []).map((c) => c.name).sort().join(",");
const seine = (beiIhm.daten?.creator || []).map((c) => c.name).sort().join(",");
ok(ihre === seine,
`und beide sehen dieselben -- Spicy Media sieht alles, wie DogFather (sie: ${ihre || "keine"} | er: ${seine || "keine"})`);
/* UND DAS DASHBOARD BLEIBT FUER SIE STEHEN. Das ist der eigentliche
Prueffall: Die Uebersicht holt die Zahlen in einer zusaetzlichen