Skip to content

i18n - translations#16190

Merged
FelixMalfait merged 2 commits intomainfrom
i18n
Nov 28, 2025
Merged

i18n - translations#16190
FelixMalfait merged 2 commits intomainfrom
i18n

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

Created by Github action

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Nov 28, 2025

Skipped: This PR changes more files than the configured file change limit: (124 files found, 100 file limit)

Comment on lines +2920 to 2930
msgstr ""

#. js-lingui-id: alYNOd
#: src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/validators/services/flat-role-target-validator.service.ts
#: src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/validators/services/flat-role-target-validator.service.ts
msgid "Role target with this id already exists"
msgstr ""

#. js-lingui-id: MFW30/
#: src/engine/workspace-manager/workspace-migration-v2/workspace-migration-builder-v2/validators/services/flat-route-trigger-validator.service.ts
msgid "Route already exists"
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Russian translation strings are corrupted with null characters and malformed JSON escape sequences, leading to broken UI rendering.
Severity: CRITICAL | Confidence: High

🔍 Detailed Analysis

Translation strings in ru-RU.po and compiled ru-RU.ts files contain \u0000 null characters and malformed JSON escape sequences like \\\":[\\\"...\\\"]\"]. This corruption will cause the i18n system to render broken text, display escaped JSON syntax, and potentially crash rendering logic, preventing Russian users from properly using filter operand labels in the UI.

💡 Suggested Fix

Correct the translation extraction or compilation process to prevent the introduction of \u0000 null characters and ensure proper JSON escaping for translation strings in ru-RU.po and ru-RU.ts files.

🤖 Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location:
packages/twenty-server/src/engine/core-modules/i18n/locales/ru-RU.po#L2875-L2930

Potential issue: Translation strings in `ru-RU.po` and compiled `ru-RU.ts` files contain
`\u0000` null characters and malformed JSON escape sequences like
`\\\":[\\\"...\\\"]\"]`. This corruption will cause the i18n system to render broken
text, display escaped JSON syntax, and potentially crash rendering logic, preventing
Russian users from properly using filter operand labels in the UI.

Did we get this right? 👍 / 👎 to inform future reviews.
Reference ID: 4300234

@FelixMalfait FelixMalfait merged commit dedb191 into main Nov 28, 2025
8 checks passed
@FelixMalfait FelixMalfait deleted the i18n branch November 28, 2025 17:45
@github-actions
Copy link
Copy Markdown
Contributor Author

Fails
🚫

node failed.

Log

Details
�[31mError: �[39m SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
�[90m    at parseJSONFromBytes (node:internal/deps/undici/undici:6433:19)�[39m
�[90m    at successSteps (node:internal/deps/undici/undici:6414:27)�[39m
�[90m    at readAllBytes (node:internal/deps/undici/undici:5380:13)�[39m
�[90m    at process.processTicksAndRejections (node:internal/process/task_queues:103:5)�[39m
danger-results://tmp/danger-results-721ada5c.json

Generated by 🚫 dangerJS against 368450a

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