4aca1d528b85ce9a4a1e9f386cc72dbebb6260c8
Julian-confirmed against the real xlsx (Kentucky, Akio Kids): pedigree blocks have two shapes. EARLY bands (gen 0-1, cols B/E/H) are 5-cell Name/DOB/Farbschlag/Genotype/Zucht — real Farbschlag present. DEEP bands (gen>=2, cols K/N/Q...) are 3-cell Name/DOB/Genotype with NO Farbschlag — the colour is derived from the genotype. The old extractor grabbed the NEXT block's name or a stray health note (e.g. "DD-Tumor", "Chronische Ohrenentzündung...") as the deep-band Farbschlag — source of the D1 'name-in-Farbschlag' conflicts and a big chunk of farbschlagUnmatched. Fix: gen_of(col)>=2 => never assign a Farbschlag in that block (Name/DOB/Genotype only); the cell is left for the next block's name search. Deep-band animals load with empty Farbschlag and the UI computes 'Errechnet' from the stored genotype (lossless). Dedup already prefers a real (non-empty) early-band Farbschlag, so an animal appearing in both an early band (Chesnut -> 'Kohlfuchsschimmel') and deep bands keeps the real value; Chesnut and Tennessee stay separate (distinct genotype + name+DOB key). Result: 248/306 loadable animals now have empty Farbschlag (genotype- derived), 0 suspicious name/note values remain, 0 Farbschlag-based conflicts (D1 dissolved). Regression test test_extract.py builds a two-band xlsx and asserts the deep band yields no Farbschlag + the stray note doesn't bleed. Extractor-only (no C# change). python test_genotype + test_extract green; dotnet 118/118. Batches with Kevin's GEN-3f seed for one re-import. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
GerbilManager
GerbilManagerWebAPI/— ASP.NET Core backend (Swagger unter/swagger)gerbil-manager-web/— React-Frontend (Vite + TypeScript), siehegerbil-manager-web/README.md
Requirements
Install ef:
dotnet tool install --global dotnet-ef
Used cmd´s
Start containers
docker compose up
Create the initial database
dotnet ef database update
Create an migration script
dotnet ef migrations add
Docker
force compose rebuild
docker-compose build --no-cache
Frontend (gerbil-manager-web)
cd gerbil-manager-web npm install npm run dev
TODO:
- Backup docker volume database
- run "dotnet ef database update" if no database exist.
Description
Languages
C#
43%
TypeScript
34.5%
Python
18%
CSS
3.7%
Shell
0.5%
Other
0.1%