feat(docs): machinevertaal-pijplijn + eerlijke basistaal-melding (#1181) #1204

Merged
brenno merged 1 commit from feat/1181-doc-translations into main 2026-08-04 09:46:39 +00:00
Owner

De mechaniek voor #1181 (handleiding in de taal van de gebruiker). Sluit het issue niet: dit is de pijplijn + de eerlijke basistaal-melding; het genereren van de talen met een gekozen motor is de vervolgstap.

  • DocumentationService.baseLanguage (en) maakt de basistaal expliciet; de reader-melding "bestaat alleen in het Engels" toont nu voor élke niet-Engelse lezer die terugvalt — Nederlands incl. (voorheen != nl, wat juist de NL-lezer de melding onthield). _resolveKey lost nu ook voor nl een .nl.md-variant op.
  • tool/translate_docs.dart (make translate-docs): machinevertaalt de gebundelde gebruikersdocs naar elke app-taal, met zichtbare banner; geen ingebakken motor (lokaal-eerst) — TRANSLATOR= wijst een extern commando aan. docs/PRIVACY.md en docs/SECURITY_DESIGN.md worden nooit machinevertaald.
  • Tests: doc_translation_test.dart + bijgewerkte document_reader_test.dart (39 groen, analyze schoon). Docs: CHANGELOG dev-log + SOURCE_MAP.

Refs #1181

De mechaniek voor #1181 (handleiding in de taal van de gebruiker). Sluit het issue **niet**: dit is de pijplijn + de eerlijke basistaal-melding; het genereren van de talen met een gekozen motor is de vervolgstap. - `DocumentationService.baseLanguage` (en) maakt de basistaal expliciet; de reader-melding "bestaat alleen in het Engels" toont nu voor élke niet-Engelse lezer die terugvalt — Nederlands incl. (voorheen `!= nl`, wat juist de NL-lezer de melding onthield). `_resolveKey` lost nu ook voor nl een `.nl.md`-variant op. - `tool/translate_docs.dart` (`make translate-docs`): machinevertaalt de gebundelde gebruikersdocs naar elke app-taal, met zichtbare banner; geen ingebakken motor (lokaal-eerst) — `TRANSLATOR=` wijst een extern commando aan. `docs/PRIVACY.md` en `docs/SECURITY_DESIGN.md` worden nooit machinevertaald. - Tests: `doc_translation_test.dart` + bijgewerkte `document_reader_test.dart` (39 groen, analyze schoon). Docs: CHANGELOG dev-log + SOURCE_MAP. Refs #1181
feat(docs): machinevertaal-pijplijn + eerlijke basistaal-melding (#1181)
All checks were successful
scans / scans (pull_request) Successful in 3m6s
static-gate / static-gate (pull_request) Successful in 5m53s
6ba795ec9d
Wie de app op een andere taal zette kreeg een vertaalde titel maar de
Engelse handleiding, en juist de Nederlandse lezer kreeg dat niet gemeld:
de #626-melding stond op `!= 'nl'` in de veronderstelling dat de basis
Nederlands was — maar de gebundelde docs zijn Engels.

Mechaniek:
- DocumentationService.baseLanguage ('en') maakt de basistaal expliciet;
  _resolveKey lost nu ook voor 'nl' een variant op (voorheen hard naar de
  basis gepind). De reader-melding "bestaat alleen in het Engels" toont
  daardoor voor élke niet-Engelse lezer die terugvalt, Nederlands incl.
- tool/translate_docs.dart (`make translate-docs`): schrijft
  docs/NAME.<taal>.md voor de gebundelde gebruikersdocs in elke app-taal,
  met een zichtbare machinevertaal-banner. Geen ingebakken vertaalmotor
  (lokaal-eerst): wijs met TRANSLATOR= een extern commando aan. PRIVACY.md
  en SECURITY_DESIGN.md worden nooit machinevertaald.
- make translate-docs-check verifieert aanwezigheid + registratie.

Tests: doc_translation_test.dart (varianten, banner, exclusie, idempotente
pubspec-registratie); document_reader_test.dart bijgewerkt (melding toont nu
in NL, niet in EN). Docs: CHANGELOG dev-log + SOURCE_MAP.

Dit is de mechaniek; de talen genereren met een gekozen motor is de
vervolgstap (>100k regels, buiten deze wijziging).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
brenno force-pushed feat/1181-doc-translations from 6ba795ec9d
All checks were successful
scans / scans (pull_request) Successful in 3m6s
static-gate / static-gate (pull_request) Successful in 5m53s
to 3b2930c61e
All checks were successful
scans / scans (pull_request) Successful in 2m36s
static-gate / static-gate (pull_request) Successful in 5m17s
2026-08-04 09:07:36 +00:00
Compare
brenno merged commit c8995204a8 into main 2026-08-04 09:46:39 +00:00
Sign in to join this conversation.
No description provided.