Localisation correctness: the git host footer is Swedish in the English interface #70

Stängd
öppnade 2026-08-02 12:24:12 +00:00 av supernaut · 1 kommentar
Ägare

The git host's footer renders three Bitborg links in Swedish regardless of the interface language,
and those links then send the reader to Swedish-only pages. Both are our own defects, not upstream
translation gaps.

Labels. custom/templates/custom/* hook fragments are not routed through the translation
pipeline unless they ask for it explicitly, and ours is plain HTML with hardcoded Swedish. Verified:
with the interface set to English the footer still reads "Användarvillkor" and "Integritetspolicy",
byte-identical to the Swedish response, while the upstream strings immediately beside them
("Powered by Forgejo", "Licenses") translate correctly.

Destinations. Separately, all three links point at the portal's Swedish URLs unconditionally.
The website serves Swedish at / and English under /en/, and does not detect
Accept-Language — so an English reader clicking "Privacy Policy" lands on the Swedish page even
once the label is fixed.

A stale decision record caused the second bug. ADR 0010 states the portal does "English
auto-detected (Accept-Language) with a cookie-backed switcher". Neither the detection nor the
cookie exists. The footer fragment was written against that sentence.

A latent third. The translation store's default language is Swedish (first entry wins), so any
key missing from English would render in Swedish to an English reader — silent in the interface,
but always logged. Not firing today: zero matches over fourteen days. Cheap to guard before an
upgrade introduces one.

Scope

Done when

An English reader sees English labels leading to English pages, the Swedish output is byte-identical
to today, and the decision record matches what exists.

Status — 2026-08-02

Both defects are fixed, applied, and verified against the live instance:

EN  /en/  ·  /en/terms   "Terms of Service"  ·  /en/privacy   "Privacy Policy"
SV  /     ·  /terms      "Användarvillkor"   ·  /privacy      "Integritetspolicy"

An English reader now gets English labels and English destinations, which was the point — fixing
only the labels would have left them on Swedish pages. Swedish output is byte-identical to what it
was, verified by extracting the footer region from production and from the render and comparing.

Outstanding: the stale ADR 0010 sentence that caused the second defect, and the missing-translation
alert. The alert is a guard against a latent third defect rather than a live one — Swedish is the
translation store's fallback language, so a key missing from English would render in Swedish
silently.

The git host's footer renders three Bitborg links in Swedish regardless of the interface language, and those links then send the reader to Swedish-only pages. Both are our own defects, not upstream translation gaps. **Labels.** `custom/templates/custom/*` hook fragments are not routed through the translation pipeline unless they ask for it explicitly, and ours is plain HTML with hardcoded Swedish. Verified: with the interface set to English the footer still reads "Användarvillkor" and "Integritetspolicy", byte-identical to the Swedish response, while the upstream strings immediately beside them ("Powered by Forgejo", "Licenses") translate correctly. **Destinations.** Separately, all three links point at the portal's Swedish URLs unconditionally. The website serves Swedish at `/` and English under `/en/`, and does **not** detect `Accept-Language` — so an English reader clicking "Privacy Policy" lands on the Swedish page even once the label is fixed. **A stale decision record caused the second bug.** ADR 0010 states the portal does "English auto-detected (`Accept-Language`) with a cookie-backed switcher". Neither the detection nor the cookie exists. The footer fragment was written against that sentence. **A latent third.** The translation store's default language is Swedish (first entry wins), so any key missing from English would render in Swedish to an English reader — silent in the interface, but always logged. Not firing today: zero matches over fourteen days. Cheap to guard before an upgrade introduces one. ## Scope - [x] gitborg/gitborg-infra#333 — make the footer labels follow the interface language - [x] gitborg/gitborg-infra#334 — make the footer links resolve to the reader's language - [x] #72 — correct ADR 0010 to describe the routing as built - [ ] gitborg/gitborg-infra#335 — alert on missing translations (continues in the infra backlog) ## Done when An English reader sees English labels leading to English pages, the Swedish output is byte-identical to today, and the decision record matches what exists. ## Status — 2026-08-02 Both defects are fixed, applied, and verified against the live instance: ```text EN /en/ · /en/terms "Terms of Service" · /en/privacy "Privacy Policy" SV / · /terms "Användarvillkor" · /privacy "Integritetspolicy" ``` An English reader now gets English labels **and** English destinations, which was the point — fixing only the labels would have left them on Swedish pages. Swedish output is byte-identical to what it was, verified by extracting the footer region from production and from the render and comparing. Outstanding: the stale ADR 0010 sentence that caused the second defect, and the missing-translation alert. The alert is a guard against a latent third defect rather than a live one — Swedish is the translation store's fallback language, so a key missing from English would render in Swedish silently.
supernaut lade till detta till projektet Bitborg Roadmap 2026-08-02 12:27:12 +00:00
Upphovsperson
Ägare

Shipping. The done-when is met: English readers see English footer labels that lead to English pages, the Swedish output is unchanged, and ADR 0010 matches what is built.

The remaining task, bitborg/bitborg-infra#335 (alert on missing translations), guards a failure that has not occurred. It stays in the infra backlog on its own.

Shipping. The done-when is met: English readers see English footer labels that lead to English pages, the Swedish output is unchanged, and ADR 0010 matches what is built. The remaining task, bitborg/bitborg-infra#335 (alert on missing translations), guards a failure that has not occurred. It stays in the infra backlog on its own.
Logga in för att delta i denna konversation.
Ingen milstolpe
Inget projekt
Inga tilldelade
1 deltagare
Notiser
Förfallodatum
Förfallodatumet är ogiltigt eller utanför gränserna. Använd formatet "åååå-mm-dd".

Inget förfallodatum satt.

Beroenden

Inga beroenden satta

Referens
bitborg/bitborg-docs#70
Ingen beskrivning angiven.