Skip to content

fix(l10n): translate the two strings #448 added - #466

Merged
rubenvdlinde merged 1 commit into
developmentfrom
fix/l10n-frontend-improvements-strings
Aug 27, 2026
Merged

fix(l10n): translate the two strings #448 added#466
rubenvdlinde merged 1 commit into
developmentfrom
fix/l10n-frontend-improvements-strings

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

#448 (frontend-improvements) added Registered by and Requested to the manifest. The manifest is data the renderer walks, not source the l10n extractor scans, so neither reached the catalogue and both rendered English for a Dutch user.

Registered by Geregistreerd door
Requested Aangevraagd

This is the ordinary case, not a backlog

The fleet-wide sweep cleared the historical debt. This is just the next PR that adds a manifest string — it appeared within a couple of hours, which is roughly the rate to expect.

check:l10n-js did not catch it, and could not

nl.json and nl.js were in sync at 617 keys each — both simply missing the strings.

That check guards source-versus-artifact drift. This is manifest-versus-catalogue coverage. Different failure, different detector: humaniq's validate-l10n-parity.js asserts every manifest string has a key, and this app does not run it.

Worth recording rather than assuming the check that exists covers everything.

Verification

manifest strings without Dutch 0 (was 2)
keys DROPPED vs pre-change 0
check:l10n-js PASS
check-l10n-parity PASS

#448 (frontend-improvements) added `Registered by` and `Requested` to the
manifest. The manifest is data the renderer walks rather than source the l10n
extractor scans, so neither reached the catalogue and both rendered English for
a Dutch user.

  Registered by -> Geregistreerd door
  Requested     -> Aangevraagd

This is the drift the fleet check was added to catch, arriving the ordinary
way: not a historical backlog, just the next PR that adds a manifest string.
It took a couple of hours to appear, which is roughly the rate to expect.

Worth noting `check:l10n-js` did NOT catch it and could not: nl.json and nl.js
were in sync at 617 keys each, both simply missing the strings. That check
guards source-versus-artifact drift, not manifest-versus-catalogue coverage.
Different failure, different detector — humaniq's validate-l10n-parity.js is
the one that asserts every manifest string has a key, and this app does not
run it.

Then `l10n:build`, because nl.json alone ships nothing.

Verified: 0 manifest strings left without Dutch, keys DROPPED = 0 against the
pre-change catalogues, check:l10n-js PASS, check-l10n-parity PASS.
@rubenvdlinde
rubenvdlinde merged commit a2fa1ab into development Aug 27, 2026
86 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/keepiq @ 952ec49

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
build
check-manifest
test-l10n
format
check-l10n-js
check-schema-l10n
composer ✅ 111/111
npm ✅ 550/550
app:check-code ⏭️
info.xml
REUSE
PHPUnit
Newman
Playwright
Hydra gates

Quality workflow — 2026-08-27 19:26 UTC

Download the full PDF report from the workflow artifacts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant