Pools initialisieren, Pool-Guard raus, Löschschutz bei laufenden Sessions

- pool-guard-Hook aus Projekt-Scaffold und allen bestehenden Projekten entfernt
- neue Pools: settings.json mit aufgeräumten UI-Defaults
  (promptSuggestionEnabled/awaySummaryEnabled aus) + CLAUDE.md
- delete_pool bricht bei laufendem zugeordnetem Projekt ab; Übersicht sperrt
  den Delete-Button und zeigt den Grund per Hover-Pop (WKWebView-tauglich)
- Running-Erkennung zentralisiert (running_projects_using_pool),
  list_pools liefert pro Pool die laufenden Projekte
- Todo-Umschalter im Projekt-Wizard/Settings
- ungenutzte Dependencies ureq/getrandom entfernt
This commit is contained in:
marcus.hinz
2026-07-04 17:21:47 +02:00
parent 42d975874e
commit 20fc8474d2
7 changed files with 381 additions and 454 deletions
+35 -1
View File
@@ -208,6 +208,35 @@ button.danger:hover:not(:disabled) {
width: 9.5rem;
}
/* Tooltip-Träger um den Löschen-Button: ein disabled Button empfängt keine
Hover-Events, darum sitzt das Hover-Pop am Span und der Button ist im
gesperrten Zustand für die Maus durchlässig. WKWebView zeigt keine nativen
title-Tooltips, daher das CSS-Pop (hover-pop/pop). */
.tip-wrap {
display: inline-flex;
}
.tip-wrap button:disabled {
pointer-events: none;
}
/* Pop rechtsbündig — der Löschen-Button steht am rechten Zeilenrand.
Schmaler als das Standard-Pop, damit der Hinweis auf mind. zwei Zeilen
umbricht statt in einer sehr breiten Zeile zu stehen. */
.hover-pop .pop.pop-right {
left: auto;
right: 0;
min-width: 0;
width: 13rem;
max-width: 13rem;
}
.pop-text {
font-size: 1rem;
line-height: 1.5;
color: var(--text);
white-space: normal;
overflow-wrap: anywhere;
}
button.gear {
display: inline-flex;
align-items: center;
@@ -584,6 +613,11 @@ td select {
cursor: pointer;
}
.dialog .field .checkline {
font-size: 0.85rem;
color: var(--subtext);
}
.dialog .affected {
margin: 0;
padding-left: 1.1rem;
@@ -604,6 +638,6 @@ td select {
/* ---------- Formulare (Pools-Dialoge) ---------- */
form.dialog input {
form.dialog input:not([type="checkbox"]) {
width: 100%;
}