Перейти к содержимому

Fähigkeit, Berechtigung, Herkunft

Это содержимое пока не доступно на вашем языке.

Ob ein Knopf „Bearbeiten“ erscheint, hängt von drei Antworten ab, und jede kommt von woanders. Wer sie zu einer Prüfung verkürzt, baut entweder Knöpfe, die ins Leere führen, oder versteckt Rechte, die da wären.

Fähigkeit: was die Datenquelle kann

Der Kern des DataInterface liest und beobachtet. Alles darüber hinaus ist eine Fähigkeit (Spec 03): schreiben (isWritable), Gruppen führen (hasGroups), anmelden (isAuthenticatable), Relation Eine gerichtete Beziehung zwischen Items mit Prädikat und Ziel. Rückverweise zeigen sie aus der Gegenrichtung. GlossarRelation A directed link between items with predicate and target. Back-references show it from the opposite direction. Glossary, Aktivität, Benachrichtigungen. Ein Connector Die Implementierung des DataInterface für eine konkrete Datenquelle, ergänzt um unterstützte Capabilities. Die Steckstelle des Stacks nach unten. GlossarConnector The implementation of the DataInterface for one data source, plus the capabilities it supports. The stack's socket downward. Glossary hat sie oder nicht; die Oberfläche fragt nach, statt anzunehmen.

Im Rahmen ist das erledigt: Lesende Hooks antworten ohne Fähigkeit leer, schreibende scheitern beim Aufruf, nicht beim Rendern, und Flächen blenden aus, was der Connector nicht kann. Derselbe Garten mit einem Connector, der nur lesen kann:

In Storybook öffnen ↗

Derselbe Garten ohne Schreibfähigkeit: kein Plusknopf, kein Bearbeiten, aber alles lesbar. Die Beispieldaten sind fiktiv. Änderungen bleiben nur für diese Sitzung.

In Storybook öffnen ↗

Die Prüfung, die jede schreibende Fläche macht, bevor sie einen Knopf zeigt. Die Beispieldaten sind fiktiv. Änderungen bleiben nur für diese Sitzung.

Berechtigung: was ich hier darf

Dass ein Connector schreiben kann, heißt nicht, dass ich dieses Item ändern darf. Die Berechtigung hängt an mir und am Item: Bin ich Mitglied Vorgeschlagen: wer zu einem Space gehört. Die Anwendungsschicht liest Mitgliedschaft über den Connector und konstruiert sie nicht selbst; wie sie gespeichert und belegt wird, entscheidet der jeweilige Connector (der lokale Connector hält sie in groupMembers, der RLTP-Connector leitet sie aus Gruppen-Log und Schlüssel ab). GlossarMember Proposed: who belongs to a space. The application layer reads membership through the connector and does not construct it; how it is stored and proven is decided by the connector in use (the local connector keeps it in groupMembers, the RLTP connector derives it from the group log and key). Glossary des Space Der gemeinsame Arbeits-, Mitgliedschafts- und Sichtbarkeitskontext. Im Datenvertrag heißt er Group. GlossarSpace The shared context for work, membership and visibility. In the data contract it is called Group. Glossary, bin ich Urheber, was erlaubt die Gruppe? useItemPermissions(item) beantwortet das für die Oberfläche als {canEdit, canDelete}, ohne Fähigkeit beides false.

Wichtig ist die Richtung: Die Oberfläche zeigt passende Aktionen, aber der Schreibpfad setzt die Regel durch. Einen Knopf auszublenden ist keine Autorisierung. Wo ein Server steht, ist er die Grenze: Bei Supabase weist die Zeilenregel fremde Änderungen ab. Im Web of Trust gibt es diese Grenze für gewöhnliche Items heute nicht: Jedes Mitglied hält den Schlüssel des Space und kann das Dokument direkt schreiben; die Autorenprüfung beim Schreiben ist eine Konvention, die ehrliche Clients ehrlich hält, kein Schutz gegen andere Mitglieder. Signaturen prüfen dort nur, was signiert ist, etwa Relation-Records (Spec 08) und Spiegel-Snapshots (Spec 09). Wer die Regel nur in der Oberfläche hat, hat keine.

Herkunft: wo das Item zu Hause ist

Ein Item hat genau einen Heimat-Space. Erscheint es in einem anderen, ist es dort ein Spiegel Ein schreibgeschützter Schnappschuss eines Items in einem anderen Space als seinem Home. Er erscheint dort als gewöhnliches Item mit der Relation mirrorOf auf das Original; bearbeitet wird immer das Home. Dieselbe Form gilt für alle Connectoren: mit Signaturidentität (RLTP) sind die Schnappschüsse vom Autor signiert und werden vor der Anzeige geprüft, ohne Signaturidentität kommen sie ohne JWS aus einer Vertrauensdomäne. GlossarMirror A read-only snapshot of an item in a space other than its home. There it appears as an ordinary item with the relation mirrorOf pointing at the original; editing always opens the home. The same form holds for every connector: with a signing identity (RLTP) the snapshots are author-signed and verified before they are shown, without one they come without a JWS from a single trust domain. Glossary (Spec 09): lesbar, mit Hinweis auf die Herkunft, aber nicht dort zu bearbeiten, denn die Wahrheit liegt im Heimat-Space. Das Personenprofil Die fachliche Darstellung einer Person als Item nach Profilvertrag. Die User-Identität ist ein eigener Begriff. GlossarPerson profile The domain representation of a person as an item under the profile contract. The user identity is a separate term. Glossary einer Person ist das erste Item, das so wandert: Es lebt im persönlichen Space und wird in jede Gruppe gespiegelt, der die Person es freigibt (Spec 12).

Die Herkunft entscheidet also nicht allein über Schreibbarkeit; sie sagt, wo eine Änderung hingehört. Die Oberfläche zeigt sie als Badge (ItemScopeBadge: Gruppe, Farbe, privat), aus einer Ableitung für alle Flächen (useItemPresentation).

Vertrauen ist eine vierte Frage

Ob eine Aussage stimmt, wer sie bestätigt hat und wie sehr ich der Quelle traue, ist keine Berechtigung und keine Fähigkeit. Spec 05 trennt Behauptungen, Bestätigungen und Vertrauensstufen; im Resonanz-Modul zählen nur Stellungnahmen, deren Signatur geprüft ist (useVerifiedRelationRecords). Ein Connector ohne Signaturprüfung liefert leere Zählungen, keine falschen.

Wo es weitergeht

Spec 03 Fähigkeiten, Spec 09 Spiegel und Brücke, die Hooks der Gruppe Rechte und Fähigkeiten. Die letzte Konzeptseite nimmt die Fläche auseinander, in der die drei Antworten zusammenkommen: Eine Detailansicht für alle Items.