Skip to content

fix(dashboard): validate locale parity input - #7497

Merged
houko merged 3 commits into
mainfrom
fix/dashboard-i18n-parity-script
Aug 15, 2026
Merged

houko merged 3 commits into
mainfrom
fix/dashboard-i18n-parity-script

Conversation

@houko

@houko houko commented Aug 15, 2026 •

Copy link
Copy Markdown
Contributor

Changes

  • Flatten locale arrays with explicit indexed paths while keeping empty arrays distinct from scalar values.
  • Keep array indices distinct from numeric object keys so malformed locale shapes cannot collide.
  • Reject malformed non-object locale roots and wrap read or JSON parse failures with the affected filename.
  • Add importable script helpers, focused regressions, and a changelog fragment.

Verification

  • mise exec -- pnpm --dir crates/librefang-api/dashboard lint
  • mise exec -- pnpm --dir crates/librefang-api/dashboard typecheck
  • mise exec -- pnpm --dir crates/librefang-api/dashboard test (102 files, 1078 tests)
  • mise exec -- pnpm --dir crates/librefang-api/dashboard build
  • python3 scripts/check-changelog-attribution.py --base origin/main --head HEAD
  • git diff --check origin/main...HEAD

Out of scope

  • Locale content and the CLDR-aware parity policy are unchanged.
  • Locale-directory discovery remains rooted beside the checked-in script.
  • Existing Polish and Ukrainian plural-key drift remains unchanged.

@github-actions github-actions Bot added the size/M 50-249 lines changed label Aug 15, 2026
@houko
houko enabled auto-merge (squash) August 15, 2026 14:01
@houko
houko merged commit d445e90 into main Aug 15, 2026
39 checks passed
@houko
houko deleted the fix/dashboard-i18n-parity-script branch August 15, 2026 14:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/M 50-249 lines changed

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant