Vraagtekst "Welk gewest is dit?" verschijnt bij niet-gewest regio-items #110

Closed
opened 2026-04-21 21:37:10 +02:00 by Ghost · 2 comments
Ghost commented 2026-04-21 21:37:10 +02:00 (Migrated from codeberg.org)

Bug

In v2.19.2 (prod) verschijnt de vraag "Welk gewest is dit?" bij regio-items die geen gewest zijn. Duidelijkst zichtbaar in de daily voor groep 7 (mixed pool die ook FR régions, DE Bundesländer en DE Mittelgebirge bevat).

Voorbeelden die fout gelabeld zijn:

  • Bretagne, Normandië, Corsica, Pyreneeën (FR) — moet "regio" of "streek" zijn
  • Beieren (DE) — moet "deelstaat" zijn
  • Ruhrgebied, Zwarte Woud, Eifel, Sauerland, Harz (DE) — moet "gebied" of "streek" zijn
  • Veel andere regio-items in sets 7.3, 7.4, 7.5, 7.6, 7.7, 7.8, 7.9

Oorzaak

In cities.js is kind: 'gewest' hardcoded op alle regio-items, inclusief Franse régions en Duitse landschappen (66 instanties). De vraagtekst-lookup in index.html (rond regel 1140) leest item.kind en kiest daarop de prompt:

```js
province: item => {
if (item.kind === 'regio') return 'Welke regio is dit?';
if (item.kind === 'gebied') return 'Welk gebied is dit?';
if (item.kind === 'gewest') return 'Welk gewest is dit?';
if (item.kind === 'eiland') return 'Welk eiland is dit?';
return 'Welke provincie is dit?';
},
```

Scope

Pre-existing data-bug — niet door #93 refactor geïntroduceerd. Verschijnt nu scherper in daily/bonus (groep 7/8) omdat regio's uit meerdere landen door elkaar gevraagd worden.

Fix-richting

  1. Data-audit in cities.js: per set/land het correcte kind zetten
    • BE (set 72): 'gewest' (correct)
    • FR régions (set 73): 'regio'
    • DE Bundesländer (set 74): nieuw kind 'deelstaat' → vraagtekst toevoegen, of mappen op 'regio'
    • DE Mittelgebirge (set 74): 'gebied'
    • UK countries (set 75): aparte vraag? of 'regio'
    • Andere EU/wereldsets: doorlopen
  2. Eventueel een nieuwe kind 'deelstaat' + bijbehorende prompt in QUESTION_TEXT

Acceptatie

  • Daily groep 7 + bonus groep 7/8: regio-vragen gebruiken de juiste lokale term
  • Unit-test: voor elk regio-item in ALL_PROVINCES, als kind aanwezig → de resulterende vraagtekst komt overeen met verwachte mapping per land (of set)
  • Playwright: groep 7 daily → als regio uit FR/DE in pool zit → vraagtekst ≠ "Welk gewest is dit?"
## Bug In v2.19.2 (prod) verschijnt de vraag **"Welk gewest is dit?"** bij regio-items die geen gewest zijn. Duidelijkst zichtbaar in de daily voor groep 7 (mixed pool die ook FR régions, DE Bundesländer en DE Mittelgebirge bevat). Voorbeelden die fout gelabeld zijn: - **Bretagne**, **Normandië**, **Corsica**, **Pyreneeën** (FR) — moet "regio" of "streek" zijn - **Beieren** (DE) — moet "deelstaat" zijn - **Ruhrgebied**, **Zwarte Woud**, **Eifel**, **Sauerland**, **Harz** (DE) — moet "gebied" of "streek" zijn - Veel andere regio-items in sets 7.3, 7.4, 7.5, 7.6, 7.7, 7.8, 7.9 ## Oorzaak In `cities.js` is `kind: 'gewest'` hardcoded op **alle** regio-items, inclusief Franse régions en Duitse landschappen (66 instanties). De vraagtekst-lookup in `index.html` (rond regel 1140) leest `item.kind` en kiest daarop de prompt: \`\`\`js province: item => { if (item.kind === 'regio') return 'Welke regio is dit?'; if (item.kind === 'gebied') return 'Welk gebied is dit?'; if (item.kind === 'gewest') return 'Welk gewest is dit?'; if (item.kind === 'eiland') return 'Welk eiland is dit?'; return 'Welke provincie is dit?'; }, \`\`\` ## Scope Pre-existing data-bug — niet door #93 refactor geïntroduceerd. Verschijnt nu scherper in daily/bonus (groep 7/8) omdat regio's uit meerdere landen door elkaar gevraagd worden. ## Fix-richting 1. **Data-audit** in `cities.js`: per set/land het correcte `kind` zetten - BE (set 72): `'gewest'` (correct) - FR régions (set 73): `'regio'` - DE Bundesländer (set 74): nieuw kind `'deelstaat'` → vraagtekst toevoegen, of mappen op `'regio'` - DE Mittelgebirge (set 74): `'gebied'` - UK countries (set 75): aparte vraag? of `'regio'` - Andere EU/wereldsets: doorlopen 2. Eventueel een nieuwe kind `'deelstaat'` + bijbehorende prompt in `QUESTION_TEXT` ## Acceptatie - Daily groep 7 + bonus groep 7/8: regio-vragen gebruiken de juiste lokale term - Unit-test: voor elk regio-item in `ALL_PROVINCES`, als `kind` aanwezig → de resulterende vraagtekst komt overeen met verwachte mapping per land (of set) - Playwright: groep 7 daily → als regio uit FR/DE in pool zit → vraagtekst ≠ "Welk gewest is dit?"
Ghost commented 2026-04-21 21:45:09 +02:00 (Migrated from codeberg.org)

Aanvulling: set 8.5 fase 3 — Everest krijgt "Welke provincie is dit?"

Mount Everest (shape 'peak', set 85) valt door alle item.kind branches in QUESTION_TEXT.province omdat het geen kind-veld heeft (alleen shape). Resultaat: de quiz vraagt "Welke provincie is dit?" terwijl het correcte antwoord Everest is.

Fix-richting

De QUESTION_TEXT.province lookup moet ook op shape: 'peak' branchen, bijvoorbeeld:

```js
province: item => {
if (item.shape === 'peak') return 'Welke bergtop is dit?';
if (item.kind === 'regio') return 'Welke regio is dit?';
// …
},
```

Of netter: geef Everest expliciet een kind: 'berg' (of 'bergtop') en voeg die branch toe. Past in dezelfde data-audit als de gewest-fix.

## Aanvulling: set 8.5 fase 3 — Everest krijgt "Welke provincie is dit?" Mount Everest (shape `'peak'`, set 85) valt door alle `item.kind` branches in `QUESTION_TEXT.province` omdat het geen `kind`-veld heeft (alleen `shape`). Resultaat: de quiz vraagt "Welke provincie is dit?" terwijl het correcte antwoord Everest is. ### Fix-richting De `QUESTION_TEXT.province` lookup moet ook op `shape: 'peak'` branchen, bijvoorbeeld: \`\`\`js province: item => { if (item.shape === 'peak') return 'Welke bergtop is dit?'; if (item.kind === 'regio') return 'Welke regio is dit?'; // … }, \`\`\` Of netter: geef Everest expliciet een `kind: 'berg'` (of `'bergtop'`) en voeg die branch toe. Past in dezelfde data-audit als de gewest-fix.
Ghost commented 2026-04-21 22:04:05 +02:00 (Migrated from codeberg.org)

Fixed in v2.19.4 — kind per regio-item gecorrigeerd in sets 73/74/76/77/78/79/83; QUESTION_TEXT mapt nu alle kind/shape-varianten. Regressietest in test.js vangt toekomstige drift. Mount Everest (shape:'peak') → 'Welke bergtop is dit?'.

Fixed in v2.19.4 — kind per regio-item gecorrigeerd in sets 73/74/76/77/78/79/83; QUESTION_TEXT mapt nu alle kind/shape-varianten. Regressietest in test.js vangt toekomstige drift. Mount Everest (shape:'peak') → 'Welke bergtop is dit?'.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
jelmer/topoquiz#110
No description provided.