97 lines
5.0 KiB
Markdown
97 lines
5.0 KiB
Markdown
---
|
|
phase: quick-261008-h3t
|
|
plan: 01
|
|
subsystem: domains
|
|
tags: [autodns, nameserver, domains, migration]
|
|
requires:
|
|
- quick-261008-dts (Modul Domains)
|
|
provides:
|
|
- Standard-Nameserver kommen aus dem AutoDNS-Benutzerprofil (GET /user/{user}/{context}/profile)
|
|
- GET modules/domains/name-servers (Verwalten)
|
|
affects:
|
|
- apps/api/src/domains
|
|
- apps/web Registrieren und Einstellungen
|
|
tech-stack:
|
|
added: []
|
|
patterns:
|
|
- tolerante Profilauswertung in einer Funktion (parseProfileNameServers)
|
|
key-files:
|
|
created:
|
|
- apps/api/prisma/migrations/20261008160000_domains_drop_default_nameservers/migration.sql
|
|
modified:
|
|
- apps/api/src/domains/autodns-parse.ts
|
|
- apps/api/src/domains/domain-name.ts
|
|
- apps/api/src/domains/domains-orders.service.ts
|
|
- apps/api/src/domains/domains.controller.ts
|
|
- apps/api/src/domains/domains-settings.service.ts
|
|
- apps/api/src/domains/dto/domains-order.dto.ts
|
|
- apps/api/src/domains/dto/domains-settings.dto.ts
|
|
- apps/api/prisma/schema.prisma
|
|
- apps/web/src/app/(portal)/modules/domains/components/RegisterTab.tsx
|
|
- apps/web/src/app/(portal)/modules/domains/components/SettingsTab.tsx
|
|
- apps/web/src/lib/domains-api.ts
|
|
- apps/web/src/messages/de.json
|
|
- apps/web/src/messages/en.json
|
|
- CHANGELOG.md
|
|
- docs/anleitung-anwender.md
|
|
- docs/anleitung-administration.md
|
|
- docs/mandantentrennung-zugriffsklassifikation.md
|
|
decisions:
|
|
- Spalte DomainsConfig.defaultNameServers per Migration entfernt (Modul unveroeffentlicht, Werte wertlos)
|
|
- Bei Lesefehler eigener Hinweis "nicht aus AutoDNS lesen" statt "keine hinterlegt"; beide sperren die Registrierung
|
|
- Weniger als zwei erkannte Nameserver gelten als nicht hinterlegt; keine Kuerzung, kein Raten
|
|
status: complete
|
|
actuals:
|
|
tokens: 60000
|
|
tasks: 3
|
|
commits: 3
|
|
plan_head_before: 95d625bd25e6713fb98a29b27bb08b8efe2ab8b0
|
|
plan_head_after: 2176f8ecce233a5e3c6416e866f73d2a8823a37e
|
|
completed: 2026-10-08
|
|
---
|
|
|
|
# Phase quick-261008-h3t Plan 01: Domains, Nameserver aus AutoDNS Summary
|
|
|
|
Tessera liest die Standard-Nameserver der Registrierung aus dem AutoDNS-Benutzerprofil (tolerante Schluessel-Erkennung), zeigt sie nur lesend in AutoDNS-Reihenfolge, speichert sie im Entwurf und sendet sie unveraendert im einen POST /domain; die Tessera-Einstellung samt DB-Spalte ist entfernt.
|
|
|
|
## Commits
|
|
|
|
| Task | Commit | Beschreibung |
|
|
| ---- | ------ | ------------ |
|
|
| 1 (tracer) | 473738d | feat(domains): Standard-Nameserver aus dem AutoDNS-Profil lesen (h3t) |
|
|
| 2 | 1b20b84 | feat(domains): Registrieren zeigt Nameserver aus AutoDNS nur zur Kontrolle (h3t) |
|
|
| 3 | 2176f8e | refactor(domains): Einstellung Standard-Nameserver entfernt, Doku angepasst (h3t) |
|
|
|
|
## Messungen
|
|
|
|
- API-Suite: 135 Dateien, 2498 Tests gruen; Web-Suite: 132 Dateien, 1458 Tests gruen.
|
|
- tsc (api, web) ohne Fehler; biome check auf den beruehrten Verzeichnissen sauber.
|
|
- de/en-Schluesselparitaet gruen; kein `defaultNameServers` mehr in apps/*/src; keine firmenspezifischen Nameserver-Namen in Code, Docs, Changelog.
|
|
- Tracer-Kette (Entwurf -> Bestaetigung -> genau ein POST /domain mit Profil-Nameservern in Profil-Reihenfolge) als Test "Nameserver aus AutoDNS (h3t)" gruen.
|
|
- Neu gebauter Stack: Migration 20261008160000 angewendet, Spalte in der lokalen DB weg, GET settings ohne Nameserver-Feld, GET name-servers antwortet 409 notConfigured (lokal ist kein AutoDNS-Zugang hinterlegt), GET status 200.
|
|
|
|
## Deviations from Plan
|
|
|
|
None - plan executed exactly as written. Hinweis: ein einzelner Web-Test (domains-page, "Speichern") fiel in einem Lauf unter Last durch (Zeitueberschreitung) und war im Einzel- und Wiederholungslauf gruen; unveraendert, nicht von dieser Aenderung verursacht.
|
|
|
|
## Known Stubs
|
|
|
|
None.
|
|
|
|
## Demo-Checkliste (vom Benutzer mit Demo-Zugang auszufuehren, nicht vom Executor)
|
|
|
|
- H-1 [ASSUMED] Schluesselnamen: Der Reiter Registrieren listet die Standard-Nameserver des Demo-Benutzers in AutoDNS-Reihenfolge. Erscheint stattdessen "In AutoDNS sind keine Standard-Nameserver hinterlegt", obwohl AutoDNS Werte hat, die Warnzeile "Keine Standard-Nameserver im AutoDNS-Profil erkannt" in `docker compose logs api` lesen (sie nennt die Schluesselnamen) und `parseProfileNameServers` anpassen.
|
|
- H-2 Der AutoDNS-Benutzer darf sein eigenes Profil lesen (kein 403; ein 403 zeigt den Hinweis "nicht aus AutoDNS lesen").
|
|
- H-3 Eine Demo-Registrierung sendet die angezeigten Nameserver und AutoDNS akzeptiert sie ausdruecklich.
|
|
- H-4 Live: die Liste entspricht den vier vom Benutzer genannten Werten in dieser Reihenfolge.
|
|
- H-x ersetzt Punkt 8 (A8) der Checkliste von 261008-dts, dessen Schritt "Standard-Nameserver in den Einstellungen eintragen" entfaellt.
|
|
|
|
## Browser-Schritte fuer den Orchestrator (Dunkelmodus)
|
|
|
|
1. Domains -> Einstellungen: keine Karte "Standard-Nameserver" mehr.
|
|
2. Domains -> Registrieren, Domain pruefen: entweder schreibgeschuetzte Nameserver-Liste in AutoDNS-Reihenfolge, oder (lokal ohne Zugang) Hinweis oben mit "Erneut aus AutoDNS lesen" und gesperrtem "Zusammenfassung anzeigen".
|
|
|
|
## Self-Check: PASSED
|
|
|
|
Commits 473738d, 1b20b84, 2176f8e liegen auf main; Migration und Parser vorhanden.
|