- Verschifft
- 28. August 2026 um 00:50 UTC
- Autor
- Kamo
- Ausschuss
- 266357d
Drei Änderungen, die sich als eine herausstellten. DIE HOME PAGE. "My Master Note" und "Our Master Note" wurden maßgeschneiderte Panen gemacht direkt aus page.tsx, auf nichts gated, positioniert durch ihre eigenen Layout-IDs, und von niemandem abnehmbaren - also hat ein Mitglied, dessen Rolle VIEW_NOTES zurückhält, kein Hinweissymbol, keine / Noten Seite, und zwei Notizen auf ihrer Homepage sowieso. Sie sind Registry-Widgets jetzt, das ist, was die Registrierung sagt, es ist für: ein Eintrag kauft das Gitter, die Drag, die Bestellung, die pro-Mitglieder Show/Versteck, der Einstellungsbildschirm und der fünfrechts Politik. In page.tsx ist kein Masternote-Code mehr übrig. Ihre Layout-IDs ändern sich von Master:mine / master:ours zu Widget-IDs, so ein Mitglied, das diese beiden Panen gezogen hatte irgendwo findet sie wieder an ihrem Standardplatz einmal; eine permanente Zwei-Schreib-Mapping im Layout-Shop wäre der schlechtere Handel gewesen. Die Pinned-Note-Beine waren bereits auf der Antwort des Navi gateed; diese Antwort lebt jetzt an einem Ort (lib/notesAccess) anstatt inline geschrieben zu werden. DIE GRUPPE. Eine Sicherheitsgruppe ist eine APP, nur wenn die Organisation diese App hat eingeschaltet, dass Gating der ganze Grund ist, dass es Gruppen gibt. Apps haben eine Zwei-Ebene Baum seit 2026-08-24 und die Gruppen folgen ihm jetzt: POS ist "Linien des Geschäfts" (was "Handel") mit Einzelhandel, Vermietung, Servicearbeit, Abonnements, Beschaffung, Hypotheken Kreditvergabe, persönliche Kreditvergabe und Patientenakten darunter. Die Gruppenliste wurde von Hand gewartet und war hinter dem Katalog zurückgefallen, was schlimmer ist. als es klingt: ein Recht, dessen ServiceType zu keiner Gruppe passt, kann in keiner Herausgeber und nichts sagt so. Meetings, Hypothekenkredite, persönliche Kreditvergabe und Spiele waren in diesem Zustand 19 Rechte, ungrantable jedoch die App wurde lizenziert. Es ist jetzt ein COVERAGE-Test: permissionAppSections.test.ts liest RoleRightType.java und versagt, wenn welche App mit Rechten hat keine Gruppe, und liest ServiceType.java parent(...) Zeile zu pin Verschachtelung. Zwei weitere der gleichen Form, auf dem Weg gefunden: die Job-Titel-und Abteilung Redakteure ließ die fünf Access Security Rechte und CONFIGURE_SYSTEM vollständig (ausgegliedert Allgemein in Gruppen keine Redakteure gerendert), und das Mitglied Registerkarte betitelt seine Gruppen mit dem rohen Enum-Namen "POS" hier, "Commerce" drei Bildschirme entfernt. Jeder Redakteur jetzt baut seine Gruppen durch permissionGroupTree, so dass keiner von ihnen eine andere halten kann Taxonomie wieder. DIE Benutzeroberfläche. Vier Bildschirme gemacht 280 Rechte als Stapel von Akkordeons - eine Spalte über neun Bildschirme hoch, wo die Suche "kann diese Rolle eine Bestellung erstatten" bedeutete Öffnung Akkordeons wiederum. Und der Stapel ist flach, was die Apps nicht mehr sind. So ist es ein Konsole: eine Schiene von Gruppen, verschachtelt wie die Org-Apps sind, neben einer Panel mit einer Gruppe. Jede Schienenreihe trägt ein bewilligte-gegen-totaler Zähler für seinen ganzen Teilbaum, also die Form einer Rolle ist lesbar, bevor etwas geöffnet wird - ein Support-Agent vier Fünftel des Weges durch Patientenakten ist von der Schiene aus sichtbar. Suche umfasst jede Gruppe mit pro Gruppe Hit zählt; die Schiene ist klebrig, pfeilschlüsselig navigierbar und wird ein scrollbare Streifen unter md; reduzierte Bewegung wird respektiert. Eine Sache, die nicht vererbt werden musste, sondern geerbt werden sollte: die Aufteilung des Handels in ein Kind Gruppen brachen die Kaskade, weil die Verweigerung ACCESS_COMMERCE unter "Lines of Business" würde nicht mehr nuke VIEW_SUBSCRIPTIONS unter "Bezeichnet". RightsSection nimmt eine "Kontext"-Requisite jetzt - jedes Recht in jeder Gruppe - so funktioniert die Kaskade auf der ganzen Baum, während nur eine Gruppe macht.