Haustrennung: kein Eintrag mehr aus dem anderen Haus
Filipe, 24.09.2026: "wenn ich bei der einen was mache soll nichts bei
der anderen passieren." -- und heute: "ja los".
GEMESSEN, BEVOR ETWAS ANGEFASST WURDE (jedes Brett x beide Adressen x
vier Rollen):
AGENTUR-Adresse DogFather 18 Bretter
Manager 6 Bretter
Creator 6 Bretter
Modi kommt nicht rein (401)
CREW-Adresse DogFather 18 Bretter
Modi 13 Bretter
Manager kommt nicht rein (401)
Creator kommt nicht rein (401)
Die Anmeldung war also dicht. Durch griff genau EINE Rolle: DogFather.
Er wohnt in beiden Haeusern, und die Riegel in sichtbarEintrag()
fragten nach der ROLLE, nicht nach der Adresse. Auf der Crew-Adresse
stand damit das Brett der Agentur samt Inhalt.
Nachgemessen ist der Durchgriff AELTER als der gestrige Eventkarten-
Umbau -- zweimal gemessen, mit und ohne ihn, gleiches Ergebnis.
RIEGEL 0 in sichtbarEintrag(): Wer auf einer Adresse angemeldet ist,
sieht nur Eintraege dieses Hauses. Er haengt den uebrigen Riegeln
UM, statt in jeden Ausgang geschrieben zu werden -- die Funktion hat
drei Rueckgabepunkte, und der naechste waere sonst wieder offen.
Nachher, dieselbe Messung: DogFather sieht auf der Agenturadresse nur
Agentur-Eintraege, auf der Crew-Adresse nur die des Rudels. Manager,
Creator und Modi unveraendert.
WAS DABEI SCHIEFGING UND WIE ES AUFFIEL
1. Die erste Fassung liess bei `haus IS NULL` den BEREICH entscheiden.
pruef-haus-trennung.mjs wurde sofort rot: "Lunas Live vom Montag"
verschwand von der Agenturadresse. `live`, `technik` und
`community` tragen BEIDES -- die Kacheln von Team Dogi und die
Creator-Akten. Eine Regel, die jedem Brett genau ein Haus zuweist,
kann das nicht. Jetzt bleibt ein Eintrag ohne Haus sichtbar: ein
Eintrag zu viel faellt auf, ein fehlender nicht.
2. Damit NULL kein Dauerloch ist: FUENF von ACHT Stellen, die
Eintraege anlegen, setzten `haus` gar nicht (workspace-video.js,
-content.js, -bewerbung.js, -treff.js, -vorlagen.js). Nachgetragen.
3. Und `person.haus` war dafuer der falsche Massstab: Legt DogFather
ueber die Agenturadresse ein Highlight an, gehoert es trotzdem dem
Rudel -- sonst sieht die Community es nie. pruef-treff.mjs hat das
gefunden (2 Fehler). Neu: hausFuerNeuenEintrag() -- bei den sieben
Brettern des Rudels entscheidet das BRETT, sonst die Adresse.
NEU: pruef-haus-luecke.mjs (12 Pruefungen). Sie sucht die
Einfuege-Stellen im Quelltext und wird rot, sobald eine neunte
dazukommt, die `haus` vergisst -- mit Gegenprobe, dass das Suchmuster
eine solche Stelle auch wirklich erkennt. Ein Kommentar daneben haette
es nicht verhindert; das steht so schon im Projektgedaechtnis.
NEBENBEI: In bereich.js stand seit gestern `|| "Agentur-Events"` als
Rueckfall fuer das Etikett der Vorschau. pruef-treff.mjs verbietet
das zu Recht -- wie ein Brett heisst, haengt am Haus, und der Server
sagt es. Der Rueckfall ist weg; fehlt die Angabe, steht lieber kein
Etikett da als ein falsches.
pruef-treff.mjs nachgezogen (85 -> 86 Pruefungen, nicht weniger): Die
Zusage "DogFather sieht den Beitrag" wird jetzt auf der Crew-Adresse
geprueft, mit Gegenprobe fuer die Agenturadresse.
GEPRUEFT, alle gruen:
pruef-haus-luecke 12 pruef-haus-trennung 100
pruef-crew-adresse 169 pruef-treff 86
pruef-eventkarte 77 pruef-agentur 62
pruef-haus-seiten 38 pruef-eintrag-bild 24
pruef-vorlagen 24 pruef-video, -content, -bewerbung,
-bereiche-lesend: in Ordnung
Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
+24
-2
@@ -892,8 +892,30 @@ melde("=== 6. Schreiben ===");
|
||||
text: "Ansage", datum: heuteLokal() });
|
||||
ok(brettDesTeams.code === 403, `aufs Anschlagbrett schreibt nur das Team (${brettDesTeams.code})`);
|
||||
|
||||
const beiDogi = await brett("treff", HAUS, kDogi);
|
||||
ok(beiDogi.titel.includes("GAST-SCHREIBT-8899"), "DogFather sieht den Beitrag");
|
||||
/* ==== AUF DER CREW-ADRESSE, NICHT AUF DER AGENTURADRESSE ========
|
||||
(nachgezogen 03.10.2026)
|
||||
|
||||
Hier stand `brett("treff", HAUS, kDogi)` -- DogFather liest das
|
||||
Rudel-Brett ueber die AGENTURADRESSE. Das war richtig, solange
|
||||
"getrennt wird das AUSSEHEN, nicht der Bestand" galt. Filipe hat
|
||||
das am 24.09.2026 umgedreht: "wenn ich bei der einen was mache
|
||||
soll nichts bei der anderen passieren."
|
||||
|
||||
Seit Riegel 0 in sichtbarEintrag() gibt es auf der Agenturadresse
|
||||
keine Eintraege von Team Dogi mehr -- auch nicht fuer DogFather.
|
||||
`treff` ist ein Brett des Rudels; dass dort auf workspace. nichts
|
||||
steht, ist das Ziel und kein Fehler.
|
||||
|
||||
DIE ZUSAGE BLEIBT, sie wird nur am richtigen Ort geprueft -- und
|
||||
bekommt eine GEGENPROBE dazu. Damit sagt diese Stelle jetzt mehr
|
||||
als vorher: nicht nur "er sieht es", sondern "er sieht es DORT
|
||||
und nur dort". */
|
||||
const beiDogi = await brett("treff", CREW, kDogi);
|
||||
ok(beiDogi.titel.includes("GAST-SCHREIBT-8899"),
|
||||
"DogFather sieht den Beitrag auf der Crew-Adresse");
|
||||
const beiDogiAgentur = await brett("treff", HAUS, kDogi);
|
||||
ok(!beiDogiAgentur.titel.includes("GAST-SCHREIBT-8899"),
|
||||
`und auf der Agenturadresse nicht (${beiDogiAgentur.titel.join(" | ") || "leer"})`);
|
||||
const beiModi = await brett("treff", CREW, kModi);
|
||||
ok(beiModi.titel.includes("GAST-SCHREIBT-8899"), "der Modi auch");
|
||||
const beiCrea = await brett("treff", HAUS, kCrea);
|
||||
|
||||
Reference in New Issue
Block a user