Ablage je Einheit, Stufe 2: Verwaltung und Organisationsseite (#684)

- OrgAdministration: eine neue Einheit bekommt ihren Bereich (Mitglieder:
  die Einheit samt Untereinheiten, schreiben); reservierte Namen und belegte
  Bereichs-Ids werden als Einheiten-Id abgelehnt. Uebergreifende Bereiche
  anlegen (mit Eigentuemer), Name/Zweck/geschuetzte Ordner aendern,
  Mitgliederliste ersetzen, nur leere Bereiche loeschen, nie den eigenen
  einer Einheit. Eine geloeschte Einheit verlaesst alle Mitgliederlisten;
  ihr Bereich geht nur, wenn er leer ist, sonst bleibt er ohne Eigentuemer.
  Nachruesten des eigenen Bereichs fuer Einheiten von vor #684. Alles im
  AuditLog.
- API unter /api/organisation/workspaces; die Uebersicht liefert je Bereich
  Mitglieder, Dateizahl und - von der Instanz berechnet - wer hineinkommt.
- Organisationsseite: Bereiche unter der Struktur, Bearbeitung mit
  Mitglieder-Editor, "Wer hineinkommt", Bereichskarte an der Einheit,
  Bereiche am Agenten. Sprachschluessel en/de.
- Die Nachschau nach einem Absturz bekommt die Organisation mit, sonst
  fände sie einen Aufruf in einem benannten Bereich nicht.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-09-24 16:58:09 +02:00
co-authored by Claude Opus 5.5
parent ff20ce2563
commit 609298dd7a
9 changed files with 850 additions and 10 deletions
@@ -127,6 +127,43 @@
"org.toolsLostIntro": "The new position has a tool ceiling. These agents would lose tools:",
"org.toolsLostConfirm": "Remove the tools and apply",
"org.runningRefusal": "Not while {agents} is running — an agent must not get different rights in the middle of a run.",
"org.workspaces": "Workspaces",
"org.workspacesHint": "Shared folders with a member list. Whoever is not on the list does not see the workspace.",
"org.noWorkspaces": "No workspaces yet — a unit gets one when it is created.",
"org.newWorkspace": "New workspace",
"org.newWorkspaceHint": "For something several units share on purpose, like an article master. The owning unit manages it; add readers afterwards.",
"org.workspaceId": "Id (folder name)",
"org.workspaceName": "Name",
"org.purpose": "Purpose",
"org.owner": "Owner",
"org.noOwner": "— instance (human) —",
"org.fileCount": "{n} files",
"org.unitOwnWorkspace": "the unit's own workspace",
"org.unitWorkspace": "Workspace",
"org.unitWorkspaceMissing": "This unit has no workspace of its own yet.",
"org.createUnitWorkspace": "Create its workspace",
"org.editWorkspace": "Edit workspace",
"org.protectedPaths": "Protected folders",
"org.protectedHint": "Comma separated. Files there can be added, but only members who manage the workspace change or delete them.",
"org.memberEntries": "Member list",
"org.membersHint": "The right stands at the workspace. A unit entry includes the units below it unless switched off. Deleting files needs Manage.",
"org.noWorkspaceMembers": "nobody",
"org.memberKind": "Kind",
"org.memberWho": "Who",
"org.memberUnit": "Unit",
"org.memberAgent": "Agent",
"org.accessLevel": "Level",
"org.access.Read": "read",
"org.access.Write": "write",
"org.access.Manage": "manage",
"org.includeSubUnits": "incl. sub-units",
"org.addMember": "Add member",
"org.removeMember": "Remove member",
"org.whoGetsIn": "Who gets in",
"org.nobodyHasAccess": "Nobody — only a human reaches it.",
"org.deleteWorkspace": "Delete workspace",
"org.deleteWorkspaceHint": "Only an empty workspace can be deleted. Nothing filed is deleted from here.",
"org.unitWorkspaceStays": "A unit's own workspace goes with its unit. If it still holds files then, it stays without owner.",
"team.title": "Team overview",
"team.subtitle": "Every unit is a card, connected as the organisation. A line takes the colour of the most urgent state below it, so a red line leads to the problem. Click a card or an agent for details.",
"team.noInstance": "No instance selected. Choose an active instance in the header.",