Conversation
WalkthroughUpdated localized onboarding/privacy copy (formatting and minor wording/pronoun tweaks) across multiple locales, adjusted one Dutch checkbox label, and replaced the GDPR legal-basis description string used by LegalBasisSettingsCard (and synced translations). No runtime or API changes. LGTM. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
echo/frontend/src/components/participant/hooks/useOnboardingCards.ts (1)
1038-1103:⚠️ Potential issue | 🟡 MinorKeep the glossary consistent: use “language model,” not “AI model.”
These updated privacy strings still say “AI models” / localized equivalents. Repo copy rules call for “language model” terminology in participant-facing UI, so this copy should be adjusted before release.
As per coding guidelines "UI copy should be shortest possible with highest clarity; say
language modelnotAIfor platform features".Also applies to: 1133-1265, 1298-1383
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@echo/frontend/src/components/participant/hooks/useOnboardingCards.ts` around lines 1038 - 1103, The privacy copy in useOnboardingCards (the locale slide entries’ extraHelp strings) uses “AI model(s)” and localized equivalents; update all locale entries referenced (e.g., the "extraHelp" fields under "en-US", "de-DE", "es-ES", "fr-FR", "it-IT", "nl-NL" and the other ranges you noted) to replace “AI model(s)”/localized variants with “language model” (singular/plural as appropriate) and ensure phrasing remains short and clear per UI copy guidelines; search the useOnboardingCards locale object for any occurrences of “AI” or “AI model” and perform the replacement across all locales (including the other ranges 1133-1265 and 1298-1383) so participant-facing strings consistently use “language model.”
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@echo/frontend/src/components/settings/LegalBasisSettingsCard.tsx`:
- Around line 87-90: The new or changed Trans string in the
LegalBasisSettingsCard component isn't reflected in the .po catalogs so
translations will miss; run the extraction and compilation steps and update all
locale files: in the frontend run "pnpm messages:extract" to regenerate message
keys (which will pick up the updated <Trans> in LegalBasisSettingsCard.tsx),
then run "pnpm messages:compile" and propagate the updated msgids into each
supported locale file (frontend/src/locales/* — en-US, nl-NL, de-DE, fr-FR,
es-ES, it-IT) so the new text is present in every .po.
---
Outside diff comments:
In `@echo/frontend/src/components/participant/hooks/useOnboardingCards.ts`:
- Around line 1038-1103: The privacy copy in useOnboardingCards (the locale
slide entries’ extraHelp strings) uses “AI model(s)” and localized equivalents;
update all locale entries referenced (e.g., the "extraHelp" fields under
"en-US", "de-DE", "es-ES", "fr-FR", "it-IT", "nl-NL" and the other ranges you
noted) to replace “AI model(s)”/localized variants with “language model”
(singular/plural as appropriate) and ensure phrasing remains short and clear per
UI copy guidelines; search the useOnboardingCards locale object for any
occurrences of “AI” or “AI model” and perform the replacement across all locales
(including the other ranges 1133-1265 and 1298-1383) so participant-facing
strings consistently use “language model.”
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: baee9388-d88c-4b87-bceb-dd4eb49bbcd0
📒 Files selected for processing (4)
echo/frontend/src/components/participant/hooks/useOnboardingCards.tsecho/frontend/src/components/settings/LegalBasisSettingsCard.tsxecho/frontend/src/locales/nl-NL.poecho/frontend/src/locales/nl-NL.ts
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
echo/frontend/src/locales/it-IT.po (1)
8-8:⚠️ Potential issue | 🟡 MinorLanguage header mismatch — should be
it-IT, noten-US.Ship it or fix it, but this header's lying about what locale it represents. Classic copy-paste from the template vibes.
-"Language: en-US\n" +"Language: it-IT\n"🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@echo/frontend/src/locales/it-IT.po` at line 8, The PO file's language header is incorrect: replace the string "Language: en-US\n" with the correct locale "Language: it-IT\n" so the file's header matches the Italian translations (ensure the exact header line is updated and preserved in the same format).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@echo/frontend/src/locales/fr-FR.po`:
- Around line 1465-1467: The French translation for the msgid used in
LegalBasisSettingsCard (src/components/settings/LegalBasisSettingsCard.tsx:87)
is incorrect — replace the current msgstr (which refers to account/project
settings) with a correct French rendering of "Determines under which GDPR legal
basis personal data is processed. This affects the information shown to
participants and data subject rights." Update the msgstr in
echo/frontend/src/locales/fr-FR.po so it accurately mirrors the English source
(mentioning information shown to participants and data subject rights) and keep
punctuation and capitalization consistent with other entries.
In `@echo/frontend/src/locales/it-IT.po`:
- Around line 1669-1674: The Italian translation for the GDPR help string is
still English in it-IT.po; update the msgstr for the msgid "Determines under
which GDPR legal basis personal data is processed. This affects the information
shown to participants and data subject rights." to an appropriate Italian
translation (or mark it as TODO and notify the i18n team if translation must be
coordinated), referencing the string in the file and the related component
LegalBasisSettingsCard.tsx to ensure the localized copy is correct before
shipping.
---
Outside diff comments:
In `@echo/frontend/src/locales/it-IT.po`:
- Line 8: The PO file's language header is incorrect: replace the string
"Language: en-US\n" with the correct locale "Language: it-IT\n" so the file's
header matches the Italian translations (ensure the exact header line is updated
and preserved in the same format).
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro
Run ID: a9d1043f-bf6a-41cb-807a-4b6274a2511c
📒 Files selected for processing (12)
echo/frontend/src/locales/de-DE.poecho/frontend/src/locales/de-DE.tsecho/frontend/src/locales/en-US.poecho/frontend/src/locales/en-US.tsecho/frontend/src/locales/es-ES.poecho/frontend/src/locales/es-ES.tsecho/frontend/src/locales/fr-FR.poecho/frontend/src/locales/fr-FR.tsecho/frontend/src/locales/it-IT.poecho/frontend/src/locales/it-IT.tsecho/frontend/src/locales/nl-NL.poecho/frontend/src/locales/nl-NL.ts
| #: src/components/settings/LegalBasisSettingsCard.tsx:87 | ||
| msgid "Determines under which GDPR legal basis personal data is processed. This affects the information shown to participants and data subject rights." | ||
| msgstr "Détermine sous quelle base juridique de GDPR les données personnelles sont traitées. Cette configuration s'applique à tous vos projets et peut être modifiée dans vos paramètres de compte." |
There was a problem hiding this comment.
Translation mismatch detected – French text doesn't match English source.
The French translation at line 1467 describes project settings configuration, but the English source at line 1466 talks about "information shown to participants and data subject rights." Looks like the French was copied from line 1470's msgid instead.
🔧 Proposed fix
#: src/components/settings/LegalBasisSettingsCard.tsx:87
msgid "Determines under which GDPR legal basis personal data is processed. This affects the information shown to participants and data subject rights."
-msgstr "Détermine sous quelle base juridique de GDPR les données personnelles sont traitées. Cette configuration s'applique à tous vos projets et peut être modifiée dans vos paramètres de compte."
+msgstr "Détermine sous quelle base juridique de GDPR les données personnelles sont traitées. Cela affecte les informations affichées aux participants et les droits des sujets de données."🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@echo/frontend/src/locales/fr-FR.po` around lines 1465 - 1467, The French
translation for the msgid used in LegalBasisSettingsCard
(src/components/settings/LegalBasisSettingsCard.tsx:87) is incorrect — replace
the current msgstr (which refers to account/project settings) with a correct
French rendering of "Determines under which GDPR legal basis personal data is
processed. This affects the information shown to participants and data subject
rights." Update the msgstr in echo/frontend/src/locales/fr-FR.po so it
accurately mirrors the English source (mentioning information shown to
participants and data subject rights) and keep punctuation and capitalization
consistent with other entries.
Summary by CodeRabbit