cleanup at death
All checks were successful
Deploy yourpart (blue-green) / deploy (push) Successful in 4m44s
All checks were successful
Deploy yourpart (blue-green) / deploy (push) Successful in 4m44s
This commit is contained in:
@@ -15,6 +15,7 @@ Verhindern, dass nach Tod/Erbe ein Mischzustand entsteht
|
||||
## Voraussetzungen
|
||||
|
||||
- Daemon läuft mit aktuellen Änderungen.
|
||||
- Migration `020_falukant_character_relation_cleanup.sql` ist eingespielt.
|
||||
- Zugriff auf DB (psql).
|
||||
- Zugriff auf WebSocket-Eventstream oder Daemon-Log.
|
||||
- Ein Test-User mit:
|
||||
@@ -63,6 +64,15 @@ WHERE c.user_id = <USER_ID>;
|
||||
|
||||
```sql
|
||||
-- Todes-Cleanup (sollte leer sein)
|
||||
SELECT COUNT(*) FROM falukant_data.relationship
|
||||
WHERE character1_id = <CHARACTER_ID> OR character2_id = <CHARACTER_ID>;
|
||||
SELECT COUNT(*) FROM falukant_data.child_relation
|
||||
WHERE child_character_id = <CHARACTER_ID>
|
||||
OR father_character_id = <CHARACTER_ID>
|
||||
OR mother_character_id = <CHARACTER_ID>;
|
||||
-- Es dürfen auch keine Zustände gelöschter Beziehungen zurückbleiben.
|
||||
SELECT COUNT(*) FROM falukant_data.relationship_state rs
|
||||
WHERE NOT EXISTS (SELECT 1 FROM falukant_data.relationship r WHERE r.id = rs.relationship_id);
|
||||
SELECT COUNT(*) FROM falukant_data.knowledge WHERE character_id = <CHARACTER_ID>;
|
||||
SELECT COUNT(*) FROM falukant_data.debtors_prism WHERE character_id = <CHARACTER_ID>;
|
||||
SELECT COUNT(*) FROM falukant_data.political_office WHERE character_id = <CHARACTER_ID>;
|
||||
@@ -106,5 +116,8 @@ Nach Eintreffen von `falukantUpdateStatus`:
|
||||
- [ ] `CharacterDeath` kommt genau für den verstorbenen Charakter.
|
||||
- [ ] `falukantUpdateStatus` kommt nach Erbwechsel für den betroffenen User.
|
||||
- [ ] `knowledge`/`debtors_prism`/`political_office`/`election_candidate` sind bereinigt.
|
||||
- [ ] `relationship`/`relationship_state`/`child_relation` sind bereinigt (beide Partner, alle drei Kind-/Elternrollen).
|
||||
- [ ] Kindstod benachrichtigt auch einen einzelnen bekannten Elternteil (`NULL` beim anderen Elternteil).
|
||||
- [ ] Ein Benachrichtigungsfehler unterbricht den NPC-Todes-Cleanup nicht.
|
||||
- [ ] `political_office_history` enthält entfernte Ämter (falls vorhanden).
|
||||
- [ ] UI bleibt konsistent (Bild + Status gehören zum selben Charakter).
|
||||
|
||||
Reference in New Issue
Block a user