Files
management/docs/issues/0092-threadnet-web-1-default-client-einstellungen-theme-features-f.md
Thore CimbalandClaude Opus 5 a1def8666e feat(issues): adopt the component trackers — one backlog, one numbering (ADR-0019)
ADR-0012 made docs/issues/ canonical for the management scope only and left
gitops, ThreadNet-Web and threadnet-call on GitLab "until the component adopts".
That split produced exactly what it invited: two numbering worlds where
management#20 and gitops#20 are different issues, drift nobody had to answer for
(gitops#61 carried no milestone since 2026-08-11), and component backlogs that
host sessions without lab access cannot read at all.

The 46 open component issues are now files 0056-0101. The file id is the
group-wide identifier; provenance lives in the frontmatter (new field `projekt`
plus gitlab_iid) and in the filename, so "gitops#61" still finds 0091. Bodies are
copied verbatim; comments and history stay on GitLab, as with the 2026-08-11
management import.

Both scripts learned the second dimension: spiegel_issues.py routes each file to
its origin project, reopens issues that are open in the repo but closed on the
board, and writes the new iid back after creating one; gruppenpruefung.py checks
drift across all four trackers instead of management alone. What the mirror
cannot decide stays a finding, not a silent state.

Two things needed a hand, both recorded in the files: gitops#61 had no milestone
(M1 - it is a live account-takeover path) and carried two area labels where the
schema holds one. The Gitea migration footers in the imported bodies point at
decommissioned trackers; their links are removed, the provenance sentence stays.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-18 12:00:00 +00:00

50 lines
2.5 KiB
Markdown

---
type: issue
id: "0092"
status: waiting
created: 2026-07-29
milestone: M3
priority: low
wartegrund: wartet auf Entscheidung, welche Defaults verbindlich gelten sollen
projekt: threadnet-web
gitlab_iid: "1"
related: []
---
# Default-Client-Einstellungen (Theme, Features) für Neuinstallationen provisionieren
> Adoptiert aus [threadnet-web#1](https://git.lab/axion1337.chat/ThreadNet-Web/-/issues/1) (2026-08-18, ADR-0019). Kommentare und Verlauf bleiben dort; kanonisch ist ab jetzt diese Datei.
Neue Nutzer (egal ob Web-Client, installierte PWA oder Electron-Desktop) sollten mit
den für axion1337.chat gedachten Standardeinstellungen starten - nicht mit den generischen
Element-Defaults. Konkret betrifft das mindestens:
- **Theme**: `default_theme` ist im Web-Deployment bereits gesetzt (`aXion1337 Dark`, via
`element-values.yaml`) - muss für Electron-Builds ebenso gelten, ist dort aber nicht
eigenständig provisioniert.
- **Custom Features** (z.B. die Discord-Style-Raumliste): falls das ein Feature ist, das alle
Nutzer standardmäßig sehen sollen, muss geprüft werden, ob es aktuell hinter einem
Labs-Flag/einer manuellen Einstellung versteckt ist, die neue Nutzer nicht automatisch
bekommen.
- **Sonstige sinnvolle Defaults** (Benachrichtigungen, Video-Qualität, etc.) - einmal
durchgehen, was aktuell nur "zufällig" beim Entwickeln richtig eingestellt ist, statt
bewusst als Default für alle Nutzer konfiguriert.
**Konkreter Fund, der das Problem sichtbar gemacht hat** (beim manuellen Electron-Build,
siehe Release `desktop-v1.12.17-clientscan`): es gibt in `apps/desktop` keinen eigenen
Config-Variant-Ordner für unsere Instanz (wie `element.io/release`/`element.io/nightly`) -
das produktiv genutzte `config.json` musste manuell aus dem laufenden Pod kopiert werden, um
den generischen `config.sample.json`-Platzhalter zu ersetzen. Ohne eigenen Variant-Ordner
wiederholt sich das bei jedem zukünftigen Desktop-Build.
**Vorschlag**:
1. Eigenen Config-Variant-Ordner anlegen (z.B. `apps/desktop/element.io/axion1337/`) mit
`config.json` (Server-URL, Theme, gewünschte Default-Features) + `build.json` (Branding).
2. Web-seitige `element-values.yaml`-Config und Desktop-Variant synchron halten, damit beide
Clients dieselben Defaults haben.
3. Bewusste Entscheidung pro Feature/Setting treffen: soll es Default sein oder optional
bleiben - und das dokumentieren, statt es implizit zu lassen.
---
*Migriert aus Gitea `sorb/ThreadNet-Web#1` — dort erstellt am 2026-07-29 von sorb.*
<!-- gitea-migration: sorb/ThreadNet-Web#1 -->