feat(import): isResident-Override + Vorfahren Bentley/Alexandria/Bugatti

- Neuer isResident-Override im Import (merge_and_resolve, NACH dem Dedup, damit die
  Zusammenführung ihn nicht überschreibt). Matcht über externalRef (präzise, auch für
  namenlose Tiere) oder normalize(call-name)+dob. Ein Nicht-Bestandstier verliert den
  eigenen Zucht-Breeder.
- conflict-decisions.json: Bentley, Alexandria, Bugatti = nur Vorfahren (isResident=false),
  bestätigt von der Züchterin (Tickets 09bcac78 / 45cc501b).
- Regressionstests ergänzt/aktualisiert (Bentley/Alexandria/Bugatti isResident; Danielle
  Vater Makoto; Catelyn Eddard×Milena; Gaida Zhuāngzǐ×Zaibunissa). Alle python test_*.py grün.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-23 12:29:25 +02:00
parent 41ee4ee3ab
commit fe79be2eee
3 changed files with 81 additions and 2 deletions

View File

@@ -414,6 +414,27 @@
"mother": "Zaibunissa von den Kleinen Chaoten",
"motherDob": "21.02.2020",
"source": "Züchterin 2026-06-23 — Ticket ba63325a"
},
{
"name": "Bentley",
"externalRef": "Wurfchronik Teil 1_page_0054.md-50505050-0003-4000-8000-000000000003",
"isResident": false,
"decision": "Nur Vorfahre (Clan of Black Forest), kein eigenes Zuchttier. Bestätigt von der Züchterin.",
"source": "Züchterin 2026-06-23 — Ticket 09bcac78"
},
{
"name": "Alexandria",
"externalRef": "Wurfchronik Teil 1_page_0054.md-50505050-0004-4000-8000-000000000004",
"isResident": false,
"decision": "Nur Vorfahre, kein eigenes Zuchttier (wie Bentley).",
"source": "Züchterin 2026-06-23 — Ticket 45cc501b"
},
{
"name": "Bugatti",
"externalRef": "Wurfchronik Teil 1_page_0054.md-40404040-0003-4000-8000-000000000003",
"isResident": false,
"decision": "Bugatti stammt aus Clan of Black Forest, war nie ihr Zuchttier — nur Vorfahre.",
"source": "Züchterin 2026-06-23 — Ticket 09bcac78"
}
],
"addAnimals": [