Skip to content

fix(l10n): translate the Flow label #485 added - #493

Merged
rubenvdlinde merged 1 commit into
developmentfrom
fix/l10n-flow-settings-label
Aug 28, 2026
Merged

fix(l10n): translate the Flow label #485 added#493
rubenvdlinde merged 1 commit into
developmentfrom
fix/l10n-flow-settings-label

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

#485 gave buildiq a settings section with Flows, which put Flow in the manifest. The manifest is data the renderer walks, not source the l10n extractor scans, so it never reached the catalogue and rendered English for a Dutch user.

Maps to itself: Dutch Nextcloud keeps the product term, and decidiq, dossiq, openregister, keepiq, portaliq, pipelinq and filinq all already carry Flow → "Flow". Matching the fleet beats inventing a Dutch word for a feature name nobody uses one for.

Third regression of this shape today

keepiq regressed via #448, and now this — both within hours of a fleet-wide sweep that left every app at zero.

check:l10n-js cannot catch it, and did not. nl.json and nl.js were in sync at 1,045 keys each, both simply missing the string. That check guards source-versus-artifact drift; this is manifest-versus-catalogue coverage.

Only humaniq runs a check that asserts every manifest string has a key (validate-l10n-parity.js). Porting it to the other 16 is the durable fix; this PR is the symptom.

Verification

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

#485 gave buildiq a settings section with Flows, which put `Flow` in the
manifest. The manifest is data the renderer walks rather than source the l10n
extractor scans, so it never reached the catalogue and rendered English for a
Dutch user.

Maps to itself: Dutch Nextcloud keeps the product term, and decidiq, dossiq,
openregister, keepiq, portaliq, pipelinq and filinq all already carry
`Flow -> "Flow"`. Matching the fleet beats inventing a Dutch word for a feature
name nobody uses one for.

This is the third time today the same gap has produced a regression within
hours of a sweep: keepiq via #448, and now this. `check:l10n-js` cannot catch
it and did not — nl.json and nl.js were in sync at 1,045 keys each, both simply
missing the string. That check guards source-versus-artifact drift; this is
manifest-versus-catalogue coverage, and only humaniq runs a check that asserts
it.

Verified: 0 manifest strings left without Dutch, keys DROPPED = 0,
check:l10n-js PASS.
@github-actions

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/buildiq @ 5433a1a

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

Quality workflow — 2026-08-27 21:54 UTC

Download the full PDF report from the workflow artifacts.

@rubenvdlinde
rubenvdlinde merged commit da8e4a7 into development Aug 28, 2026
47 checks passed
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