Conversation
WalkthroughAdds and updates localization entries across 24 locale files for the onboarding internal-boot flow: new eligibility titles/descriptions and codes, boot pool warnings, new boot-size/config fields, and revised labels/validation replacing "slots" with "boot devices". No functional code changes. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 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)
📝 Coding Plan for PR comments
Comment |
There was a problem hiding this comment.
Actionable comments posted: 15
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@web/src/locales/ar.json`:
- Around line 177-181: Change the inconsistent Arabic term for “array” to match
the established translation: update the values of the keys
onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY (and any other
entries in this block using "المجموعة") to use "الصفيف" so the wording is
consistent with the rest of the UI.
In `@web/src/locales/bn.json`:
- Around line 171-189: The strings mix two terms ("স্টোরেজ বুট" and "অভ্যন্তরীণ
বুট") for the same feature; pick the single product term to use consistently
(e.g., "অভ্যন্তরীণ বুট") and update all keys in this block—including
onboarding.internalBootStep.eligibility.availableTitle, availableDescription,
blockedTitle, blockedDescription and any codes messages that mention স্টোরেজ বুট
or অভ্যন্তরীণ বুট—so every message uses the chosen term and reads consistently
in the eligibility UI.
In `@web/src/locales/ca.json`:
- Line 186: The Catalan string for key
"onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED"
uses the incorrect contraction "pel l'estat actual del sistema"; update that
value to the correct form "per l'estat actual del sistema" so the JSON entry
reads with the proper Catalan contraction.
In `@web/src/locales/cs.json`:
- Around line 171-189: Normalize all boot-related copy under
onboarding.internalBootStep.eligibility to use the consistent term "interní
bootování" (and "bootování" where shorter) and fix awkward Czech phrasing:
update keys like ALREADY_INTERNAL_BOOT to something like "Server je již nastaven
na interní bootování", AVAILABLE/BLOCKED descriptions to use "interní bootování"
instead of mixed variants, and rewrite ENABLE_BOOT_TRANSFER_DISABLED /
ENABLE_BOOT_TRANSFER_UNKNOWN / BOOT_ELIGIBLE_FALSE / BOOT_ELIGIBLE_UNKNOWN to
read naturally in Czech (e.g., "Přenos bootu je zakázán podle aktuálního stavu
systému", "Systém neoznámil, zda je povolen přenos bootu", "Systém uvedl, že
interní bootování není způsobilé", "Systém neoznámil způsobilost interního
bootování"). Ensure keys referenced (onboarding.internalBootStep.eligibility.*
like AVAILABLE/BLOCKED/ALREADY_INTERNAL_BOOT/ENABLE_BOOT_TRANSFER_*
/BOOT_ELIGIBLE_*) are updated consistently.
In `@web/src/locales/da.json`:
- Around line 188-189: The Danish messages under keys
onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE and
onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN use the
awkward term "berettiget"; change that word to a more natural term like "mulig"
or "tilgængelig" so the strings read naturally (e.g., "Systemet rapporterede, at
lagerstart ikke er mulig." and "Systemet har ikke rapporteret, om lagerstart er
mulig."). Ensure both JSON values are updated consistently and keep surrounding
punctuation and capitalization intact.
- Around line 177-181: Two strings in the Danish locale use "rækken" but should
keep the Unraid UI term "array" for consistency: update the values for
"onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED" and
"onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY" to use "array"
(e.g., "Rækken skal stoppes..." -> "Array skal stoppes..." and "Denne disk er
allerede tildelt rækken." -> "Denne disk er allerede tildelt array.") so the
term matches the rest of the onboarding UI.
In `@web/src/locales/de.json`:
- Around line 171-189: The translation block under keys like
onboarding.internalBootStep.eligibility.availableTitle, .availableDescription,
.blockedTitle, .blockedDescription and all .codes entries should standardize
wording to match the rest of the section: replace mixed terms (Speicherstart,
Speicherboot, Speicherlaufwerksstart, internes Booten, Festplatten) with the
canonical terms used elsewhere—e.g. "Interner Boot" or "Speichermedien-Boot" for
the feature, and "Laufwerk"/"Gerät" for disk references—and correct
mis-translation "Paritätsdiskette" to "Paritätslaufwerk"; update strings such as
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY,
.USB_TRANSPORT, .TOO_SMALL, .ENABLE_BOOT_TRANSFER_* and the title/description
keys to use these consistent terms throughout.
In `@web/src/locales/fr.json`:
- Around line 171-189: The French strings under
onboarding.internalBootStep.eligibility (e.g. keys
onboarding.internalBootStep.eligibility.availableTitle, availableDescription,
blockedTitle, blockedDescription, and the codes.* entries) are
literal/grammatically incorrect translations; replace them with natural,
idiomatic French (fix gender/number like "Certaines disques" → "Certains
disques" or better "Certains disques ne sont pas disponibles pour le démarrage
interne", change "démarrage stockage" → "démarrage interne" or "démarrage du
système de stockage", correct phrases like "Résoudre tous les problèmes..." to
"Résolvez les problèmes ci‑dessous..."), review each codes.* message for clarity
and consistency, and if unsure consult a native French speaker or translator to
produce polished copy before merging.
In `@web/src/locales/hi.json`:
- Line 179: Replace the incorrect phrase "अनसाइन डिस्क" in the translation for
key "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS" with a
correct Hindi rendering of "unassigned disks" such as "बिना असाइन किए गए डिस्क"
(e.g., update the value to "फिलहाल कोई भी बिना असाइन किए गए डिस्क स्टोरेज बूट के
लिए उपलब्ध नहीं है।") so the message reads correctly in the UI.
In `@web/src/locales/hr.json`:
- Around line 177-189: Replace inconsistent machine-translated phrases in the
provided locale entries to match the existing internal-boot terminology: change
"Prenos pokretanja" in
onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED and
onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN to
use the locale's preferred term "unutarnji prijenos pokretanja" (or simply
"unutarnje pokretanje" if shorter), and replace "početno skladište" in
onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE and
onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN with
"unutarnje pokretanje" (or a consistent noun phrase like "unutarnje pokretanje
uređaja") so all four keys use the same established boot terminology as the rest
of internalBootStep messages.
In `@web/src/locales/hu.json`:
- Line 183: The translation for key
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE uses the
Hungarian word "medence" (swimming pool) which is incorrect for storage pool;
update the string to use the project’s existing terminology (e.g., "csoport" or
the untranslated technical term "pool") so it matches other keys like
bootConfig.pool and other pool translations, ensuring the sentence remains
grammatically correct in Hungarian.
In `@web/src/locales/lv.json`:
- Line 179: The translation for
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS is incorrect;
replace the current Latvian string with one that clearly conveys “no unassigned
disks” (use phrasing like "Nav pieejami nepiešķirtie diski, kas piemēroti
palaišanai." or similar) so the eligibility reason clearly informs users that
there are no eligible unassigned disks; update the value for the key
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS accordingly.
In `@web/src/locales/pt.json`:
- Around line 177-181: Replace the inconsistent Portuguese term "matriz" with
the project's preferred term "array" in the two affected locale entries:
onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY; update the
strings so they read naturally in Portuguese using "array" (and adjust the
article/gender if needed, e.g., "ao array" or "o array") while preserving the
original meaning and punctuation.
In `@web/src/locales/ro.json`:
- Around line 171-189: Replace inconsistent Romanian boot phrasing in the
onboarding.internalBootStep.eligibility block with a single standardized term
(e.g., "boot intern" or "pornire internă") across all message keys (for example:
availableTitle, availableDescription, blockedTitle, blockedDescription and all
codes like ARRAY_NOT_STOPPED, ALREADY_INTERNAL_BOOT, NO_UNASSIGNED_DISKS, etc.),
and update the section titles
"onboarding.internalBootStep.eligibility.systemTitle" and
"onboarding.internalBootStep.eligibility.diskTitle" to the more natural
"Verificări ale serverului" and "Verificări ale discurilor" respectively so the
language is consistent and natural throughout the flow.
In `@web/src/locales/uk.json`:
- Around line 171-174: Normalize the storage-boot terminology in the listed
localization keys by replacing inconsistent phrases ("завантаження збереження",
"завантаження зберігання", and the incorrect "парити диск") with the established
wording used elsewhere ("завантаження з носія" or "диски зберігання" as
appropriate) for keys like
onboarding.internalBootStep.eligibility.availableTitle, availableDescription,
blockedTitle, blockedDescription and the related keys in the 177-189 range so
all messages consistently reference носія/диски зберігання.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 4a78fede-66de-4acb-912a-7dca4e316b55
📒 Files selected for processing (24)
web/src/locales/ar.jsonweb/src/locales/bn.jsonweb/src/locales/ca.jsonweb/src/locales/cs.jsonweb/src/locales/da.jsonweb/src/locales/de.jsonweb/src/locales/es.jsonweb/src/locales/fr.jsonweb/src/locales/hi.jsonweb/src/locales/hr.jsonweb/src/locales/hu.jsonweb/src/locales/it.jsonweb/src/locales/ja.jsonweb/src/locales/ko.jsonweb/src/locales/lv.jsonweb/src/locales/nl.jsonweb/src/locales/no.jsonweb/src/locales/pl.jsonweb/src/locales/pt.jsonweb/src/locales/ro.jsonweb/src/locales/ru.jsonweb/src/locales/sv.jsonweb/src/locales/uk.jsonweb/src/locales/zh.json
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "يجب إيقاف المجموعة قبل تكوين التشغيل من التخزين.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "يبدو أن هذا الخادم يبدأ التشغيل داخليًا بالفعل.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "لا توجد أقراص غير مخصصة متاحة حاليًا للتشغيل من التخزين.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "تم تخصيص هذا القرص بالفعل كجهاز التشغيل الحالي.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "تم تخصيص هذا القرص بالفعل للمجموعة.", |
There was a problem hiding this comment.
Keep the Arabic term for “array” consistent with the rest of the UI.
Lines 177 and 181 switch to المجموعة, while the surrounding Arabic locale already uses الصفيف for this same Unraid concept. Reusing the established term here will keep the eligibility reasons consistent with the rest of the product.
Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "يجب إيقاف المجموعة قبل تكوين التشغيل من التخزين.",
+ "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "يجب إيقاف الصفيف قبل تكوين التشغيل من التخزين.",
...
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "تم تخصيص هذا القرص بالفعل للمجموعة.",
+ "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "تم تخصيص هذا القرص بالفعل للصفيف.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "يجب إيقاف المجموعة قبل تكوين التشغيل من التخزين.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "يبدو أن هذا الخادم يبدأ التشغيل داخليًا بالفعل.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "لا توجد أقراص غير مخصصة متاحة حاليًا للتشغيل من التخزين.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "تم تخصيص هذا القرص بالفعل كجهاز التشغيل الحالي.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "تم تخصيص هذا القرص بالفعل للمجموعة.", | |
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "يجب إيقاف الصفيف قبل تكوين التشغيل من التخزين.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "يبدو أن هذا الخادم يبدأ التشغيل داخليًا بالفعل.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "لا توجد أقراص غير مخصصة متاحة حاليًا للتشغيل من التخزين.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "تم تخصيص هذا القرص بالفعل كجهاز التشغيل الحالي.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "تم تخصيص هذا القرص بالفعل للصفيف.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ar.json` around lines 177 - 181, Change the inconsistent
Arabic term for “array” to match the established translation: update the values
of the keys onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY (and any other
entries in this block using "المجموعة") to use "الصفيف" so the wording is
consistent with the rest of the UI.
| "onboarding.internalBootStep.eligibility.availableTitle": "কিছু ডিস্ক স্টোরেজ বুটের জন্য উপলব্ধ নেই", | ||
| "onboarding.internalBootStep.eligibility.availableDescription": "নিচে তালিকাবদ্ধ ডিস্কগুলি এখন স্টোরেজ বুটের জন্য নির্বাচিত করা যাবে না।", | ||
| "onboarding.internalBootStep.eligibility.blockedTitle": "স্টোরেজ বুট বর্তমানে উপলব্ধ নয়", | ||
| "onboarding.internalBootStep.eligibility.blockedDescription": "এই সার্ভারে স্টোরেজ ড্রাইভ বুট ব্যবহার করতে সমস্ত নিচের সমস্যাগুলি সমাধান করুন।", | ||
| "onboarding.internalBootStep.eligibility.systemTitle": "সার্ভার চেক", | ||
| "onboarding.internalBootStep.eligibility.diskTitle": "ডিস্ক চেক", | ||
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "স্টোরেজ বুট কনফিগার করার আগে অ্যারে বন্ধ করা আবশ্যক।", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "এই সার্ভারটি ইতিমধ্যে অভ্যন্তরীণ বুট হয়েছে বলে মনে হচ্ছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "স্টোরেজ বুটের জন্য বর্তমানে কোনো অব্যবহৃত ডিস্ক উপলব্ধ নেই।", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "এই ডিস্কটি ইতিমধ্যে বর্তমান বুট ডিভাইস হিসেবে বরাদ্দ করা হয়েছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "এই ডিস্কটি ইতিমধ্যে অ্যারেতে বরাদ্দ করা হয়েছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "এই ডিস্কটি ইতিমধ্যে পারিটি ডিস্ক হিসেবে বরাদ্দ করা হয়েছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "এই ডিস্কটি ইতিমধ্যে একটি পুল বা ক্যাশ স্লটে বরাদ্দ করা হয়েছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "এই ডিস্কটি USB এর মাধ্যমে সংযুক্ত হয়েছে, যা অভ্যন্তরীণ বুটের জন্য অনুমোদিত নয়।", | ||
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "এই ডিস্কটি ন্যূনতম বুট রিজার্ভেশনের আকারের জন্য খুব ছোট।", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "বর্তমান সিস্টেমের অবস্থা দ্বারা বুট স্থানান্তর নিষ্ক্রিয় করা হয়েছে।", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN": "সিস্টেম রিপোর্ট করেনি যে বুট স্থানান্তর সক্রিয় কি না।", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "সিস্টেম রিপোর্ট করেছে যে স্টোরেজ বুট যোগ্য নয়।", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "সিস্টেম রিপোর্ট করেনি যে স্টোরেজ বুট যোগ্য কি না।", |
There was a problem hiding this comment.
Keep the boot terminology consistent.
This block mixes স্টোরেজ বুট and অভ্যন্তরীণ বুট for the same feature, which reads like two different boot modes in the eligibility UI. Please normalize these strings to the single product term you want users to see throughout onboarding.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/bn.json` around lines 171 - 189, The strings mix two terms
("স্টোরেজ বুট" and "অভ্যন্তরীণ বুট") for the same feature; pick the single
product term to use consistently (e.g., "অভ্যন্তরীণ বুট") and update all keys in
this block—including onboarding.internalBootStep.eligibility.availableTitle,
availableDescription, blockedTitle, blockedDescription and any codes messages
that mention স্টোরেজ বুট or অভ্যন্তরীণ বুট—so every message uses the chosen term
and reads consistently in the eligibility UI.
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Aquest disc ja està assignat a una ranura de grup o memòria cau.", | ||
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "Aquest disc està connectat per USB, cosa que no està permesa per a l'arrencada interna.", | ||
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "Aquest disc és massa petit per a la mida mínima de la reserva d'arrencada.", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada pel l'estat actual del sistema.", |
There was a problem hiding this comment.
Fix the Catalan contraction in this string.
pel l'estat actual del sistema on Line 186 is ungrammatical and will ship verbatim in the eligibility UI.
Suggested fix
- "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada pel l'estat actual del sistema.",
+ "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada per l'estat actual del sistema.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada pel l'estat actual del sistema.", | |
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada per l'estat actual del sistema.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ca.json` at line 186, The Catalan string for key
"onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED"
uses the incorrect contraction "pel l'estat actual del sistema"; update that
value to the correct form "per l'estat actual del sistema" so the JSON entry
reads with the proper Catalan contraction.
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Rækken skal stoppes, før lagerstart kan konfigureres.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Denne server ser allerede ud til at starte internt.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Der er i øjeblikket ingen uanvendte diske tilgængelige til lagerstart.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Denne disk er allerede tildelt som den aktuelle boot-enhed.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt rækken.", |
There was a problem hiding this comment.
Keep array untranslated for UI consistency.
Line 177 and Line 181 use rækken, but this locale otherwise keeps the Unraid term as array/Array. That will read inconsistently in the same onboarding flow.
Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Rækken skal stoppes, før lagerstart kan konfigureres.",
+ "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Arrayet skal stoppes, før lagerstart kan konfigureres.",
...
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt rækken.",
+ "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt arrayet.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Rækken skal stoppes, før lagerstart kan konfigureres.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Denne server ser allerede ud til at starte internt.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Der er i øjeblikket ingen uanvendte diske tilgængelige til lagerstart.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Denne disk er allerede tildelt som den aktuelle boot-enhed.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt rækken.", | |
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Arrayet skal stoppes, før lagerstart kan konfigureres.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Denne server ser allerede ud til at starte internt.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Der er i øjeblikket ingen uanvendte diske tilgængelige til lagerstart.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Denne disk er allerede tildelt som den aktuelle boot-enhed.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt arrayet.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/da.json` around lines 177 - 181, Two strings in the Danish
locale use "rækken" but should keep the Unraid UI term "array" for consistency:
update the values for
"onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED" and
"onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY" to use "array"
(e.g., "Rækken skal stoppes..." -> "Array skal stoppes..." and "Denne disk er
allerede tildelt rækken." -> "Denne disk er allerede tildelt array.") so the
term matches the rest of the onboarding UI.
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Ez a lemez már mint aktuális boot eszköz van hozzárendelve.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Ez a lemez már a tömbhöz van rendelve.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Ez a lemez már paritáslemezként van hozzárendelve.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már medence vagy gyorsítótár-foglaltnak van hozzárendelve.", |
There was a problem hiding this comment.
Translation inconsistency: "medence" is incorrect for storage pool context.
The word "medence" in Hungarian means "swimming pool" or "basin", which is inappropriate here. The file uses "csoport" (group) for pool elsewhere (e.g., line 218 bootConfig.pool), or leaves "pool" untranslated as a technical term (e.g., line 275).
Suggested fix
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már medence vagy gyorsítótár-foglaltnak van hozzárendelve.",
+ "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már csoporthoz vagy gyorsítótárhoz van hozzárendelve.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már medence vagy gyorsítótár-foglaltnak van hozzárendelve.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már csoporthoz vagy gyorsítótárhoz van hozzárendelve.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/hu.json` at line 183, The translation for key
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE uses the
Hungarian word "medence" (swimming pool) which is incorrect for storage pool;
update the string to use the project’s existing terminology (e.g., "csoport" or
the untranslated technical term "pool") so it matches other keys like
bootConfig.pool and other pool translations, ensuring the sentence remains
grammatically correct in Hungarian.
| "onboarding.internalBootStep.eligibility.diskTitle": "Diska pārbaudes", | ||
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Pirms iespējot uzglabāšanas palaišanu, masīvs ir jāpārtrauc.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Šķiet, ka serveris jau pašlaik tiek palaists iekšēji.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Pašlaik nav pieejami nevienielementi diski uzglabāšanas palaišanai.", |
There was a problem hiding this comment.
Fix the NO_UNASSIGNED_DISKS translation.
Line 179 does not convey “unassigned disks”; the current wording reads as different terminology, so this eligibility reason will mislead Latvian users when no eligible unassigned disks exist.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/lv.json` at line 179, The translation for
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS is incorrect;
replace the current Latvian string with one that clearly conveys “no unassigned
disks” (use phrasing like "Nav pieejami nepiešķirtie diski, kas piemēroti
palaišanai." or similar) so the eligibility reason clearly informs users that
there are no eligible unassigned disks; update the value for the key
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS accordingly.
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "A matriz deve ser parada antes que a inicialização do armazenamento possa ser configurada.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Este servidor já parece estar inicializando internamente.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Atualmente, não há discos não atribuídos disponíveis para inicialização de armazenamento.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Este disco já está atribuído como o dispositivo de inicialização atual.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído à matriz.", |
There was a problem hiding this comment.
Keep the Portuguese array terminology consistent.
These new messages switch to matriz, but the rest of this locale uses array for the Unraid storage construct. Mixing both terms in the same onboarding flow will be confusing.
Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "A matriz deve ser parada antes que a inicialização do armazenamento possa ser configurada.",
+ "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "O array deve ser parado antes que a inicialização do armazenamento possa ser configurada.",
...
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído à matriz.",
+ "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído ao array.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "A matriz deve ser parada antes que a inicialização do armazenamento possa ser configurada.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Este servidor já parece estar inicializando internamente.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Atualmente, não há discos não atribuídos disponíveis para inicialização de armazenamento.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Este disco já está atribuído como o dispositivo de inicialização atual.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído à matriz.", | |
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "O array deve ser parado antes que a inicialização do armazenamento possa ser configurada.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Este servidor já parece estar inicializando internamente.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Atualmente, não há discos não atribuídos disponíveis para inicialização de armazenamento.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Este disco já está atribuído como o dispositivo de inicialização atual.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído ao array.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/pt.json` around lines 177 - 181, Replace the inconsistent
Portuguese term "matriz" with the project's preferred term "array" in the two
affected locale entries:
onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY; update the
strings so they read naturally in Portuguese using "array" (and adjust the
article/gender if needed, e.g., "ao array" or "o array") while preserving the
original meaning and punctuation.
| "onboarding.internalBootStep.eligibility.availableTitle": "Unele discuri nu sunt disponibile pentru pornirea de stocare", | ||
| "onboarding.internalBootStep.eligibility.availableDescription": "Discurile de mai jos nu pot fi selectate pentru pornirea de stocare chiar acum.", | ||
| "onboarding.internalBootStep.eligibility.blockedTitle": "Pornirea de stocare nu este disponibilă în prezent", | ||
| "onboarding.internalBootStep.eligibility.blockedDescription": "Rezolvați toate problemele de mai jos pentru a folosi pornirea discului de stocare pe acest server.", | ||
| "onboarding.internalBootStep.eligibility.systemTitle": "Verificări servere", | ||
| "onboarding.internalBootStep.eligibility.diskTitle": "Verificări discuri", | ||
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Array-ul trebuie oprit înainte de a putea configura boot-ul de stocare.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Acest server pare deja să fi pornit intern.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Nu sunt disponibile discuri neatribuite pentru boot de stocare.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Acest disc este deja atribuit ca dispozitiv de boot curent.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Acest disc este deja atribuit la array.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Acest disc este deja atribuit ca disc de paritate.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Acest disc este deja atribuit unui slot de pool sau cache.", | ||
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "Acest disc este conectat prin USB, ceea ce nu este permis pentru boot intern.", | ||
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "Acest disc este prea mic pentru dimensiunea minimă de rezervare pentru boot.", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "Transferul de boot este dezactivat de starea actuală a sistemului.", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN": "Sistemul nu a raportat dacă transferul de boot este activat.", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Sistemul a raportat că boot-ul de stocare nu este eligibil.", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Sistemul nu a raportat dacă boot-ul de stocare este eligibil.", |
There was a problem hiding this comment.
Standardize the boot terminology in this eligibility block.
This block mixes pornirea de stocare, boot de stocare, and boot intern for the same concept, and the section titles (Verificări servere, Verificări discuri) read awkwardly in Romanian. Please align these strings to one term throughout the flow and use natural section labels such as Verificări ale serverului / Verificări ale discurilor.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ro.json` around lines 171 - 189, Replace inconsistent
Romanian boot phrasing in the onboarding.internalBootStep.eligibility block with
a single standardized term (e.g., "boot intern" or "pornire internă") across all
message keys (for example: availableTitle, availableDescription, blockedTitle,
blockedDescription and all codes like ARRAY_NOT_STOPPED, ALREADY_INTERNAL_BOOT,
NO_UNASSIGNED_DISKS, etc.), and update the section titles
"onboarding.internalBootStep.eligibility.systemTitle" and
"onboarding.internalBootStep.eligibility.diskTitle" to the more natural
"Verificări ale serverului" and "Verificări ale discurilor" respectively so the
language is consistent and natural throughout the flow.
| "onboarding.internalBootStep.eligibility.availableTitle": "Деякі диски недоступні для завантаження збереження", | ||
| "onboarding.internalBootStep.eligibility.availableDescription": "Наразі диски нижче не можна вибрати для завантаження збереження.", | ||
| "onboarding.internalBootStep.eligibility.blockedTitle": "Завантаження збереження на даний момент недоступне", | ||
| "onboarding.internalBootStep.eligibility.blockedDescription": "Вирішіть усі проблеми нижче, щоб використовувати завантаження збереження на цьому сервері.", |
There was a problem hiding this comment.
Normalize the Ukrainian storage-boot terminology.
Lines 171-174 and 177-189 mix завантаження збереження, завантаження зберігання, and парити диск on Line 182. That diverges from the existing носія/диски зберігання wording already used on Lines 149-153, so these eligibility reasons will read incorrectly in the UI.
Also applies to: 177-189
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/uk.json` around lines 171 - 174, Normalize the storage-boot
terminology in the listed localization keys by replacing inconsistent phrases
("завантаження збереження", "завантаження зберігання", and the incorrect "парити
диск") with the established wording used elsewhere ("завантаження з носія" or
"диски зберігання" as appropriate) for keys like
onboarding.internalBootStep.eligibility.availableTitle, availableDescription,
blockedTitle, blockedDescription and the related keys in the 177-189 range so
all messages consistently reference носія/диски зберігання.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1897 +/- ##
==========================================
+ Coverage 50.63% 50.78% +0.15%
==========================================
Files 1021 1022 +1
Lines 70262 70513 +251
Branches 7565 7644 +79
==========================================
+ Hits 35575 35809 +234
- Misses 34564 34581 +17
Partials 123 123 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
This plugin has been deployed to Cloudflare R2 and is available for testing. |
There was a problem hiding this comment.
Actionable comments posted: 15
♻️ Duplicate comments (11)
web/src/locales/hu.json (1)
177-199:⚠️ Potential issue | 🟡 MinorTranslation inconsistency at line 193: "medence" is incorrect for storage pool context.
The word "medence" means "swimming pool" or "basin" in Hungarian, which is inappropriate for a storage/cache pool context. The file uses "csoport" (group) for pool elsewhere (e.g., line 228
bootConfig.pool).Suggested fix
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már medence vagy gyorsítótár-foglaltnak van hozzárendelve.", + "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Ez a lemez már csoporthoz vagy gyorsítótárhoz van hozzárendelve.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/hu.json` around lines 177 - 199, The Hungarian translation for the key onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE uses "medence" (swimming pool) incorrectly; update that value to use the same term used elsewhere (e.g., "csoport" or the project's chosen term for storage pool) so it reads something like "Ez a lemez már medence vagy gyorsítótár-foglaltnak van hozzárendelve." -> replace "medence" with "csoport" (or the canonical storage-pool term) to keep terminology consistent across the locale file.web/src/locales/bn.json (1)
177-199:⚠️ Potential issue | 🟡 MinorNormalize the boot term across the new eligibility copy.
This block still alternates between
স্টোরেজ বুটandঅভ্যন্তরীণ বুটfor the same flow, so the eligibility UI reads like two different boot modes. Please pick one product term and use it consistently across these new strings.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/bn.json` around lines 177 - 199, The strings under onboarding.internalBootStep.eligibility mix two Bengali terms ("স্টোরেজ বুট" and "অভ্যন্তরীণ বুট"); pick one product term and make it consistent across all keys (e.g., onboarding.internalBootStep.eligibility.availableTitle, availableDescription, blockedTitle, blockedDescription, noDevicesTitle, and all codes messages that mention boot like NO_UNASSIGNED_DISKS, ENABLE_BOOT_TRANSFER_DISABLED/UNKNOWN, BOOT_ELIGIBLE_FALSE/UNKNOWN, ASSIGNED_TO_BOOT). Replace every occurrence of the alternate term so every message uses the single chosen term consistently.web/src/locales/hi.json (1)
189-189:⚠️ Potential issue | 🟡 MinorFix the Hindi translation for "unassigned disks".
The term "अनसाइन डिस्क" reads like "unsigned disks" rather than "unassigned disks". This will cause confusion in the UI for Hindi-speaking users.
💬 Suggested fix
- "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "फिलहाल कोई भी अनसाइन डिस्क स्टोरेज बूट के लिए उपलब्ध नहीं है।", + "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "फिलहाल कोई भी असाइन नहीं की गई डिस्क स्टोरेज बूट के लिए उपलब्ध नहीं है।",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/hi.json` at line 189, The translation for the key onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS uses the transliterated "अनसाइन डिस्क"; update the value string to use correct Hindi for "unassigned disks" (e.g., replace "फिलहाल कोई भी अनसाइन डिस्क स्टोरेज बूट के लिए उपलब्ध नहीं है।" with "फिलहाल कोई भी असाइन नहीं किए गए डिस्क स्टोरेज बूट के लिए उपलब्ध नहीं है।") so the UI reads naturally for Hindi users.web/src/locales/ca.json (1)
196-196:⚠️ Potential issue | 🟡 MinorFix the Catalan contraction in this string.
The phrase
pel l'estat actual del sistemais grammatically incorrect. In Catalan,pelis already a contraction ofper+el, butl'estatalso includes the article. This creates a redundant double article.Suggested fix
- "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada pel l'estat actual del sistema.", + "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "La transferència d'arrencada està desactivada per l'estat actual del sistema.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/ca.json` at line 196, Update the Catalan translation for the key "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED" to fix the double article: replace "pel l'estat actual del sistema" with "per l'estat actual del sistema" so the string reads "La transferència d'arrencada està desactivada per l'estat actual del sistema."; locate the value for that key in web/src/locales/ca.json and edit only the right-hand string.web/src/locales/cs.json (1)
177-199:⚠️ Potential issue | 🟡 MinorNormalize the boot terminology in this eligibility block.
This block still mixes
spuštění z úložiště,zavádění úložiště, andinterní bootování, and Line 188 (zavádějící interně) is still not natural Czech. Please align the whole block to one term set so the eligibility UI reads consistently.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/cs.json` around lines 177 - 199, The keys under onboarding.internalBootStep.eligibility use inconsistent Czech terms ("spuštění z úložiště", "zavádění úložiště", "interní bootování") and an unnatural phrase ("zavádějící interně"); standardize all strings to a single phrase (e.g., "interní zavádění") and make the ALREADY_INTERNAL_BOOT message natural Czech (for example "Tento server je již nakonfigurován pro interní zavádění" or similar). Update every value under onboarding.internalBootStep.eligibility.* (including availableTitle/Description, blockedTitle/Description, noDevicesTitle/Description, showDetails/hideDetails, systemTitle/diskTitle and all codes entries like ARRAY_NOT_STOPPED, ALREADY_INTERNAL_BOOT, NO_UNASSIGNED_DISKS, etc.) to use the chosen consistent terminology and replace the awkward "zavádějící interně" phrasing.web/src/locales/da.json (2)
198-199:⚠️ Potential issue | 🟡 MinorUse a more natural Danish term than
berettigethere.This is still present on Line 198 and Line 199.
berettigetsounds awkward for a capability check;muligortilgængeligwill read more naturally.Suggested wording
- "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Systemet rapporterede, at lagerstart ikke er berettiget.", - "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Systemet har ikke rapporteret, om lagerstart er berettiget.", + "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Systemet rapporterede, at lagerstart ikke er mulig.", + "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Systemet har ikke rapporteret, om lagerstart er mulig.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/da.json` around lines 198 - 199, Replace the awkward Danish word "berettiget" in the two message values for keys "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE" and "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN" with a more natural term such as "mulig" or "tilgængelig" so the phrases read naturally (e.g., "Systemet rapporterede, at lagerstart ikke er mulig." and "Systemet har ikke rapporteret, om lagerstart er mulig.").
187-191:⚠️ Potential issue | 🟡 MinorKeep
arrayuntranslated for UI consistency.This is still present on Line 187 and Line 191. The surrounding onboarding copy already uses
array, sorækkenreads inconsistent in the same flow.Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Rækken skal stoppes, før lagerstart kan konfigureres.", + "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Arrayet skal stoppes, før lagerstart kan konfigureres.", ... - "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt rækken.", + "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Denne disk er allerede tildelt arrayet.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/da.json` around lines 187 - 191, The Danish translations for the keys onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY use "rækken" but must keep the term "array" untranslated for UI consistency; update the values for those two keys to replace "rækken" with "array" while leaving the rest of the strings unchanged.web/src/locales/pt.json (1)
187-191:⚠️ Potential issue | 🟡 MinorKeep the
arrayterminology consistent here.Line 187 and Line 191 still use
matriz, but this locale already usesarrayelsewhere for the Unraid storage construct. Mixing both in the same onboarding flow will read inconsistently.Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "A matriz deve ser parada antes que a inicialização do armazenamento possa ser configurada.", + "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "O array deve ser parado antes que a inicialização do armazenamento possa ser configurada.", - "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído à matriz.", + "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Este disco já está atribuído ao array.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/pt.json` around lines 187 - 191, The two PT translations for keys onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY use "matriz" and should be changed to the consistent term "array" used elsewhere in the locale; update the strings to use "array" (e.g., replace "A matriz" with "O array" and "à matriz" with "ao array") while preserving punctuation and grammar.web/src/locales/uk.json (2)
192-192:⚠️ Potential issue | 🟡 MinorTypo: "парити диск" should be "паритетний диск".
"парити" is not valid Ukrainian in this context. The correct term for "parity disk" is "паритетний диск".
,
Suggested fix
- "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Цей диск вже призначений як парити диск.", + "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Цей диск вже призначений як паритетний диск.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/uk.json` at line 192, Replace the incorrect Ukrainian phrase in the localization key "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": change "Цей диск вже призначений як парити диск." to the correct wording "Цей диск вже призначений як паритетний диск." so the key's value uses the proper term "паритетний диск".
177-180:⚠️ Potential issue | 🟡 MinorNormalize storage-boot terminology for consistency.
The translations mix "завантаження збереження" (lines 177-180) with "завантаження зберігання" (lines 187, 189, 198, 199). This also diverges from the established "диски зберігання" / "носія зберігання" wording used in lines 149-153. Consider aligning all storage-boot references to use consistent phrasing (e.g., "завантаження з носія зберігання" or "завантаження зі сховища").
,
Also applies to: 187-189, 198-199
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/uk.json` around lines 177 - 180, The translations for storage-boot are inconsistent: replace the phrase "завантаження збереження"/"завантаження зберігання" with a single consistent term (e.g., "завантаження зі сховища") across the affected keys such as onboarding.internalBootStep.eligibility.availableTitle, onboarding.internalBootStep.eligibility.availableDescription, onboarding.internalBootStep.eligibility.blockedTitle, onboarding.internalBootStep.eligibility.blockedDescription and the other occurrences referenced (around the keys at lines 187–189 and 198–199), ensuring it aligns with existing "диски зберігання"/"носія зберігання" wording elsewhere.web/src/locales/de.json (1)
177-199:⚠️ Potential issue | 🟡 MinorThis eligibility block is still inconsistent and partially incomplete.
Lines 177-199 still mix
Festplatten,Speicherstart,Speicherboot,Speicherlaufwerksstartandinternes Booten, while the rest ofonboarding.internalBootStepnow usesInterner Boot/Speichermedien/Geräte. Line 182 is still empty, and Line 192 still saysParitätsdiskette, which is the wrong term here. Please align the whole block to the section’s canonical wording.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/de.json` around lines 177 - 199, This block uses inconsistent German terms; update all keys in the onboarding.internalBootStep.eligibility block (e.g., availableTitle, availableDescription, blockedTitle, blockedDescription, noDevicesTitle, noDevicesDescription, showDetails, hideDetails, systemTitle, diskTitle and all codes.* entries) to use the canonical wording used elsewhere: use "Interner Boot" for the feature, "Speichermedien" for disks/devices, and "Geräte" where appropriate; replace "Festplatten"/"Speicherstart"/"Speicherboot"/"Speicherlaufwerksstart"/"internes Booten" with those canonical terms, change "Paritätsdiskette" to "Paritätslaufwerk" (or the project’s chosen term), and supply a non-empty sentence for onboarding.internalBootStep.eligibility.noDevicesDescription that matches tone and terminology. Ensure all codes.* messages (e.g., ARRAY_NOT_STOPPED, ALREADY_INTERNAL_BOOT, NO_UNASSIGNED_DISKS, ASSIGNED_TO_BOOT, ASSIGNED_TO_ARRAY, ASSIGNED_TO_PARITY, ASSIGNED_TO_CACHE, USB_TRANSPORT, TOO_SMALL, ENABLE_BOOT_TRANSFER_DISABLED, ENABLE_BOOT_TRANSFER_UNKNOWN, BOOT_ELIGIBLE_FALSE, BOOT_ELIGIBLE_UNKNOWN) use "Speichermedien"/"Geräte" and "Interner Boot" consistently.
🧹 Nitpick comments (4)
web/src/locales/no.json (2)
182-182: Empty description value may need content.The
noDevicesDescriptionkey has an empty string value. If this is intentional (UI handles the case without a description), this is fine. Otherwise, consider adding a descriptive message for consistency with other eligibility states.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/no.json` at line 182, The localization key "onboarding.internalBootStep.eligibility.noDevicesDescription" has an empty value; update the no.json entry to provide a user-facing Norwegian description consistent with other eligibility messages (or confirm it's intentionally blank). Edit the "onboarding.internalBootStep.eligibility.noDevicesDescription" value in web/src/locales/no.json to a proper translated sentence (or add a comment/placeholder explaining intentional emptiness) and ensure the string follows the same tone/format as other keys like "onboarding.internalBootStep.eligibility.noDevicesTitle".
177-180: Minor terminology inconsistency: "Lagringsboot" vs "lagringsboot".Line 179 uses "Lagringsboot" (capitalized) while line 180 uses "lagringsboot" (lowercase). Consider standardizing the capitalization for consistency in the UI.
Additionally, lines 187, 189, 198, and 199 use "lagringsoppstart" instead of "lagringsboot". Both terms are valid Norwegian, but using one consistently throughout would improve terminology coherence.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/no.json` around lines 177 - 180, Standardize the Norwegian term and capitalization across the onboarding internal boot copy: choose either "lagringsboot" or "lagringsoppstart" and apply it consistently (and decide on capitalization — sentence case vs. Title Case). Update the keys shown (onboarding.internalBootStep.eligibility.availableTitle, onboarding.internalBootStep.eligibility.availableDescription, onboarding.internalBootStep.eligibility.blockedTitle, onboarding.internalBootStep.eligibility.blockedDescription) and any other keys that currently use "lagringsoppstart" (the entries around lines 187, 189, 198, 199) so all strings use the chosen term and consistent capitalization.web/src/locales/ro.json (1)
211-212: Redundant phrasing in validation message after terminology rename.Line 212 translates to "Select a device for each boot device," which is redundant. Consider rewording to clarify the intent, e.g.,
Selectează un dispozitiv pentru fiecare slot de boot(keeping "slot" here for clarity) orFiecare slot de boot necesită un dispozitiv selectat.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/ro.json` around lines 211 - 212, Update the redundant Romanian validation message for key "onboarding.internalBootStep.validation.devicePerSlot": replace the current phrasing that reads like "Selectează un dispozitiv pentru fiecare dispozitiv de boot" with a clearer, non-redundant sentence such as "Selectează un dispozitiv pentru fiecare slot de boot" or "Fiecare slot de boot necesită un dispozitiv selectat"; change the value for onboarding.internalBootStep.validation.devicePerSlot accordingly to improve clarity while keeping the existing key name.web/src/locales/fr.json (1)
161-161: Consider using "mettre en miroir" instead of "refléter" for technical accuracy.In French IT terminology, "mettre en miroir" is the standard term for disk mirroring/RAID mirroring, while "refléter" is more commonly used in the general sense of reflecting. This is a minor terminology refinement.
📝 Suggested terminology change
- "onboarding.internalBootStep.warning.bootMirrorDescription": "Vous pouvez sélectionner jusqu'à deux disques de stockage si vous souhaitez refléter le système de démarrage Unraid. Si un périphérique échoue, le serveur peut continuer à démarrer à partir de l'autre.", + "onboarding.internalBootStep.warning.bootMirrorDescription": "Vous pouvez sélectionner jusqu'à deux disques de stockage si vous souhaitez mettre en miroir le système de démarrage Unraid. Si un périphérique échoue, le serveur peut continuer à démarrer à partir de l'autre.",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@web/src/locales/fr.json` at line 161, The translation uses "refléter" for disk mirroring; update the value for the key "onboarding.internalBootStep.warning.bootMirrorDescription" to use the technical term "mettre en miroir" instead of "refléter" so it reads: "Vous pouvez sélectionner jusqu'à deux disques de stockage si vous souhaitez mettre en miroir le système de démarrage Unraid. Si un périphérique échoue, le serveur peut continuer à démarrer à partir de l'autre."
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@web/src/locales/ar.json`:
- Around line 156-160: The translations use "المجلد التمهيدي" ("boot folder")
which mixes folder and pool terminology; update the strings for the keys
onboarding.internalBootStep.warning.bootablePoolDescription (and any related
keys in this block such as
onboarding.internalBootStep.warning.bootablePoolVolumes, .systemBootVolume,
.storagePoolVolume, .storagePoolNaming) to use a consistent translation for
"pool" such as "مجموعة التمهيد" (or "مجموعة") instead of "المجلد التمهيدي" so
all messages consistently refer to a boot/storage pool.
In `@web/src/locales/cs.json`:
- Line 160: The string value for the key
onboarding.internalBootStep.warning.storagePoolNaming is missing a comma after
"níže"; update the JSON value to insert the comma so the Czech sentence reads
correctly (i.e., "...který zvolíte níže, se vztahuje...") and ensure the JSON
remains valid (preserve quotes and trailing comma conventions used in the file).
In `@web/src/locales/da.json`:
- Line 165: The translation key onboarding.internalBootStep.fields.slots
currently uses "Boot enheder" and must be standardized to match the other keys
that use "boot-enheder"; update the value for
onboarding.internalBootStep.fields.slots (and any other occurrences such as the
keys referenced around lines 211-212 and 229) to use the consistent spelling
"boot-enheder" so the UI shows a single, consistent label across the onboarding
flow.
In `@web/src/locales/de.json`:
- Around line 157-160: The two warning bullets are inconsistent:
"onboarding.internalBootStep.warning.bootablePoolVolumes" states the pool
contains two volumes, but
"onboarding.internalBootStep.warning.storagePoolVolume" describes a whole pool
instead of the second volume; update the translation for the key
onboarding.internalBootStep.warning.storagePoolVolume to refer to the second
volume (e.g., "ein Speicherpool-Volume für allgemeine Daten" or similar) so both
bullets consistently mention volumes and align with
onboarding.internalBootStep.warning.storagePoolNaming.
In `@web/src/locales/es.json`:
- Around line 181-182: Populate the empty value for the localization key
onboarding.internalBootStep.eligibility.noDevicesDescription in es.json with a
concise Spanish supporting sentence; update the string (for example: "Conecta un
dispositivo compatible para continuar con la configuración del arranque
interno.") so the empty-state has explanatory copy that guides the user.
- Line 212: Update the Spanish translation value for the key
"onboarding.internalBootStep.validation.devicePerSlot" in es.json to remove the
tautology and improve clarity — replace "Seleccione un dispositivo para cada
dispositivo de arranque." with a clearer phrasing such as "Seleccione un
dispositivo para cada ranura de arranque." so the validation message reads
unambiguously in the UI.
In `@web/src/locales/fr.json`:
- Around line 211-212: The translation for the key
"onboarding.internalBootStep.validation.devicePerSlot" is inconsistent and
confusing: replace the current text with a clearer, consistent phrase using the
same terminology as nearby keys (e.g., "périphériques de démarrage"); update the
value for "onboarding.internalBootStep.validation.devicePerSlot" to something
like "Sélectionnez un périphérique pour chaque emplacement de démarrage" so it
aligns with "onboarding.internalBootStep.validation.slotCount" and other entries
and conveys "one device per boot slot."
In `@web/src/locales/lv.json`:
- Around line 181-182: The Latvian title for the onboarding key
onboarding.internalBootStep.eligibility.noDevicesTitle has incorrect
gender/case; replace its value with the grammatically correct feminine form
(e.g., "Neviena piemērota ierīce netika atklāta iekšējās uzstādīšanas
iestatīšanai.") and confirm whether
onboarding.internalBootStep.eligibility.noDevicesDescription should remain an
empty string or be populated with a corresponding descriptive sentence; update
that key if a description is required.
In `@web/src/locales/nl.json`:
- Around line 177-180: The translation strings for the eligibility onboarding
use inconsistent Dutch terms and an untranslated English word; unify terminology
and translate "issues" consistently across the related keys. Update the values
for keys onboarding.internalBootStep.eligibility.availableTitle,
onboarding.internalBootStep.eligibility.availableDescription,
onboarding.internalBootStep.eligibility.blockedTitle,
onboarding.internalBootStep.eligibility.blockedDescription (and the
corresponding keys in the block covering lines 187-199) to use one consistent
Dutch phrase for the feature (e.g., "opstartopslag" or "interne opstartsetup")
and replace "issues" with an appropriate Dutch word like "problemen" so all
messages read consistently.
- Around line 181-182: The new Dutch locale key
onboarding.internalBootStep.eligibility.noDevicesDescription is empty; provide a
concise Dutch description for the "no devices detected" state and add it to
nl.json matching the key
onboarding.internalBootStep.eligibility.noDevicesDescription so the UI has
descriptive copy; craft a short user-facing sentence consistent with
onboarding.internalBootStep.eligibility.noDevicesTitle (e.g., explaining there
are no compatible devices found and next steps).
- Line 161: Fix the typo in the localization string identified by the key
"onboarding.internalBootStep.warning.bootMirrorDescription": change the word
"opstartsystem" to "opstartsysteem" so the sentence reads correctly in Dutch;
update the value for that key in web/src/locales/nl.json accordingly and keep
surrounding punctuation and spacing unchanged.
In `@web/src/locales/pl.json`:
- Line 182: The key onboarding.internalBootStep.eligibility.noDevicesDescription
is set to an empty string — either supply the Polish translation for that key or
remove the key entirely until the copy is ready; update the JSON entry for
onboarding.internalBootStep.eligibility.noDevicesDescription to a non-empty
Polish string (or delete the property) and ensure the locales JSON remains valid
after the change.
- Line 189: The string for
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS (and the other
two nearby eligibility keys referenced) uses "rozruch magazynu" which is
inconsistent with earlier strings; update these values to use the same phrasing
"uruchamianie z pamięci masowej" so all onboarding.internalBootStep.eligibility
messages use the identical Polish term.
In `@web/src/locales/ru.json`:
- Around line 181-182: The Russian localization key
onboarding.internalBootStep.eligibility.noDevicesDescription is set to an empty
string which suppresses fallback and yields a blank body; either provide an
appropriate Russian translation for the empty-state description (replace the
empty value with localized text) or remove the key entirely from ru.json so the
base locale fallback is used; update the entry for
onboarding.internalBootStep.eligibility.noDevicesDescription accordingly.
- Around line 188-199: Update the two RU strings to use consistent storage/drive
terminology and fix the spelling: change
onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT to wording
like "Этот сервер, по-видимому, уже загружается с внутреннего накопителя." and
change onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE to
wording like "Система сообщила, что загрузка с накопителя не разрешена." —
locate those keys in web/src/locales/ru.json and replace the existing values so
they use "накопитель"/"загрузки с накопителя" and correct "не допустима" to "не
разрешена" (or "недопустима" as a single word) to match surrounding strings.
---
Duplicate comments:
In `@web/src/locales/bn.json`:
- Around line 177-199: The strings under onboarding.internalBootStep.eligibility
mix two Bengali terms ("স্টোরেজ বুট" and "অভ্যন্তরীণ বুট"); pick one product
term and make it consistent across all keys (e.g.,
onboarding.internalBootStep.eligibility.availableTitle, availableDescription,
blockedTitle, blockedDescription, noDevicesTitle, and all codes messages that
mention boot like NO_UNASSIGNED_DISKS, ENABLE_BOOT_TRANSFER_DISABLED/UNKNOWN,
BOOT_ELIGIBLE_FALSE/UNKNOWN, ASSIGNED_TO_BOOT). Replace every occurrence of the
alternate term so every message uses the single chosen term consistently.
In `@web/src/locales/ca.json`:
- Line 196: Update the Catalan translation for the key
"onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED" to
fix the double article: replace "pel l'estat actual del sistema" with "per
l'estat actual del sistema" so the string reads "La transferència d'arrencada
està desactivada per l'estat actual del sistema."; locate the value for that key
in web/src/locales/ca.json and edit only the right-hand string.
In `@web/src/locales/cs.json`:
- Around line 177-199: The keys under onboarding.internalBootStep.eligibility
use inconsistent Czech terms ("spuštění z úložiště", "zavádění úložiště",
"interní bootování") and an unnatural phrase ("zavádějící interně"); standardize
all strings to a single phrase (e.g., "interní zavádění") and make the
ALREADY_INTERNAL_BOOT message natural Czech (for example "Tento server je již
nakonfigurován pro interní zavádění" or similar). Update every value under
onboarding.internalBootStep.eligibility.* (including availableTitle/Description,
blockedTitle/Description, noDevicesTitle/Description, showDetails/hideDetails,
systemTitle/diskTitle and all codes entries like ARRAY_NOT_STOPPED,
ALREADY_INTERNAL_BOOT, NO_UNASSIGNED_DISKS, etc.) to use the chosen consistent
terminology and replace the awkward "zavádějící interně" phrasing.
In `@web/src/locales/da.json`:
- Around line 198-199: Replace the awkward Danish word "berettiget" in the two
message values for keys
"onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE" and
"onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN" with a
more natural term such as "mulig" or "tilgængelig" so the phrases read naturally
(e.g., "Systemet rapporterede, at lagerstart ikke er mulig." and "Systemet har
ikke rapporteret, om lagerstart er mulig.").
- Around line 187-191: The Danish translations for the keys
onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY use "rækken" but
must keep the term "array" untranslated for UI consistency; update the values
for those two keys to replace "rækken" with "array" while leaving the rest of
the strings unchanged.
In `@web/src/locales/de.json`:
- Around line 177-199: This block uses inconsistent German terms; update all
keys in the onboarding.internalBootStep.eligibility block (e.g., availableTitle,
availableDescription, blockedTitle, blockedDescription, noDevicesTitle,
noDevicesDescription, showDetails, hideDetails, systemTitle, diskTitle and all
codes.* entries) to use the canonical wording used elsewhere: use "Interner
Boot" for the feature, "Speichermedien" for disks/devices, and "Geräte" where
appropriate; replace
"Festplatten"/"Speicherstart"/"Speicherboot"/"Speicherlaufwerksstart"/"internes
Booten" with those canonical terms, change "Paritätsdiskette" to
"Paritätslaufwerk" (or the project’s chosen term), and supply a non-empty
sentence for onboarding.internalBootStep.eligibility.noDevicesDescription that
matches tone and terminology. Ensure all codes.* messages (e.g.,
ARRAY_NOT_STOPPED, ALREADY_INTERNAL_BOOT, NO_UNASSIGNED_DISKS, ASSIGNED_TO_BOOT,
ASSIGNED_TO_ARRAY, ASSIGNED_TO_PARITY, ASSIGNED_TO_CACHE, USB_TRANSPORT,
TOO_SMALL, ENABLE_BOOT_TRANSFER_DISABLED, ENABLE_BOOT_TRANSFER_UNKNOWN,
BOOT_ELIGIBLE_FALSE, BOOT_ELIGIBLE_UNKNOWN) use "Speichermedien"/"Geräte" and
"Interner Boot" consistently.
In `@web/src/locales/hi.json`:
- Line 189: The translation for the key
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS uses the
transliterated "अनसाइन डिस्क"; update the value string to use correct Hindi for
"unassigned disks" (e.g., replace "फिलहाल कोई भी अनसाइन डिस्क स्टोरेज बूट के लिए
उपलब्ध नहीं है।" with "फिलहाल कोई भी असाइन नहीं किए गए डिस्क स्टोरेज बूट के लिए
उपलब्ध नहीं है।") so the UI reads naturally for Hindi users.
In `@web/src/locales/hu.json`:
- Around line 177-199: The Hungarian translation for the key
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE uses "medence"
(swimming pool) incorrectly; update that value to use the same term used
elsewhere (e.g., "csoport" or the project's chosen term for storage pool) so it
reads something like "Ez a lemez már medence vagy gyorsítótár-foglaltnak van
hozzárendelve." -> replace "medence" with "csoport" (or the canonical
storage-pool term) to keep terminology consistent across the locale file.
In `@web/src/locales/pt.json`:
- Around line 187-191: The two PT translations for keys
onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED and
onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY use "matriz" and
should be changed to the consistent term "array" used elsewhere in the locale;
update the strings to use "array" (e.g., replace "A matriz" with "O array" and
"à matriz" with "ao array") while preserving punctuation and grammar.
In `@web/src/locales/uk.json`:
- Line 192: Replace the incorrect Ukrainian phrase in the localization key
"onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": change "Цей
диск вже призначений як парити диск." to the correct wording "Цей диск вже
призначений як паритетний диск." so the key's value uses the proper term
"паритетний диск".
- Around line 177-180: The translations for storage-boot are inconsistent:
replace the phrase "завантаження збереження"/"завантаження зберігання" with a
single consistent term (e.g., "завантаження зі сховища") across the affected
keys such as onboarding.internalBootStep.eligibility.availableTitle,
onboarding.internalBootStep.eligibility.availableDescription,
onboarding.internalBootStep.eligibility.blockedTitle,
onboarding.internalBootStep.eligibility.blockedDescription and the other
occurrences referenced (around the keys at lines 187–189 and 198–199), ensuring
it aligns with existing "диски зберігання"/"носія зберігання" wording elsewhere.
---
Nitpick comments:
In `@web/src/locales/fr.json`:
- Line 161: The translation uses "refléter" for disk mirroring; update the value
for the key "onboarding.internalBootStep.warning.bootMirrorDescription" to use
the technical term "mettre en miroir" instead of "refléter" so it reads: "Vous
pouvez sélectionner jusqu'à deux disques de stockage si vous souhaitez mettre en
miroir le système de démarrage Unraid. Si un périphérique échoue, le serveur
peut continuer à démarrer à partir de l'autre."
In `@web/src/locales/no.json`:
- Line 182: The localization key
"onboarding.internalBootStep.eligibility.noDevicesDescription" has an empty
value; update the no.json entry to provide a user-facing Norwegian description
consistent with other eligibility messages (or confirm it's intentionally
blank). Edit the "onboarding.internalBootStep.eligibility.noDevicesDescription"
value in web/src/locales/no.json to a proper translated sentence (or add a
comment/placeholder explaining intentional emptiness) and ensure the string
follows the same tone/format as other keys like
"onboarding.internalBootStep.eligibility.noDevicesTitle".
- Around line 177-180: Standardize the Norwegian term and capitalization across
the onboarding internal boot copy: choose either "lagringsboot" or
"lagringsoppstart" and apply it consistently (and decide on capitalization —
sentence case vs. Title Case). Update the keys shown
(onboarding.internalBootStep.eligibility.availableTitle,
onboarding.internalBootStep.eligibility.availableDescription,
onboarding.internalBootStep.eligibility.blockedTitle,
onboarding.internalBootStep.eligibility.blockedDescription) and any other keys
that currently use "lagringsoppstart" (the entries around lines 187, 189, 198,
199) so all strings use the chosen term and consistent capitalization.
In `@web/src/locales/ro.json`:
- Around line 211-212: Update the redundant Romanian validation message for key
"onboarding.internalBootStep.validation.devicePerSlot": replace the current
phrasing that reads like "Selectează un dispozitiv pentru fiecare dispozitiv de
boot" with a clearer, non-redundant sentence such as "Selectează un dispozitiv
pentru fiecare slot de boot" or "Fiecare slot de boot necesită un dispozitiv
selectat"; change the value for
onboarding.internalBootStep.validation.devicePerSlot accordingly to improve
clarity while keeping the existing key name.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
Run ID: 597b80c9-36ec-4244-8a37-6ae3def92ba8
📒 Files selected for processing (24)
web/src/locales/ar.jsonweb/src/locales/bn.jsonweb/src/locales/ca.jsonweb/src/locales/cs.jsonweb/src/locales/da.jsonweb/src/locales/de.jsonweb/src/locales/es.jsonweb/src/locales/fr.jsonweb/src/locales/hi.jsonweb/src/locales/hr.jsonweb/src/locales/hu.jsonweb/src/locales/it.jsonweb/src/locales/ja.jsonweb/src/locales/ko.jsonweb/src/locales/lv.jsonweb/src/locales/nl.jsonweb/src/locales/no.jsonweb/src/locales/pl.jsonweb/src/locales/pt.jsonweb/src/locales/ro.jsonweb/src/locales/ru.jsonweb/src/locales/sv.jsonweb/src/locales/uk.jsonweb/src/locales/zh.json
🚧 Files skipped from review as they are similar to previous changes (1)
- web/src/locales/ko.json
| "onboarding.internalBootStep.warning.bootablePoolDescription": "يتيح المجلد التمهيدي لـ Unraid التمهيد من الأقراص الداخلية بدلاً من جهاز USB فلاش.", | ||
| "onboarding.internalBootStep.warning.bootablePoolVolumes": "يحتوي كل مجلد تمهيدي على وحدتين تخزين:", | ||
| "onboarding.internalBootStep.warning.systemBootVolume": "وحدة تمهيد النظام المستخدمة من قبل Unraid", | ||
| "onboarding.internalBootStep.warning.storagePoolVolume": "مجموعة تخزين للبيانات العامة", | ||
| "onboarding.internalBootStep.warning.storagePoolNaming": "الاسم الذي تختاره أدناه ينطبق على مجموعة التخزين وليس على وحدة التمهيد.", |
There was a problem hiding this comment.
Keep the “pool” terminology consistent here.
المجلد التمهيدي reads as “boot folder”, but this block is otherwise describing a boot/storage pool. Mixing folder/pool terminology will make the warning copy harder to follow.
Suggested wording
- "onboarding.internalBootStep.warning.bootablePoolDescription": "يتيح المجلد التمهيدي لـ Unraid التمهيد من الأقراص الداخلية بدلاً من جهاز USB فلاش.",
- "onboarding.internalBootStep.warning.bootablePoolVolumes": "يحتوي كل مجلد تمهيدي على وحدتين تخزين:",
+ "onboarding.internalBootStep.warning.bootablePoolDescription": "تتيح مجموعة التمهيد في Unraid التمهيد من الأقراص الداخلية بدلًا من جهاز USB فلاش.",
+ "onboarding.internalBootStep.warning.bootablePoolVolumes": "تحتوي كل مجموعة تمهيد على وحدتي تخزين:",🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ar.json` around lines 156 - 160, The translations use "المجلد
التمهيدي" ("boot folder") which mixes folder and pool terminology; update the
strings for the keys onboarding.internalBootStep.warning.bootablePoolDescription
(and any related keys in this block such as
onboarding.internalBootStep.warning.bootablePoolVolumes, .systemBootVolume,
.storagePoolVolume, .storagePoolNaming) to use a consistent translation for
"pool" such as "مجموعة التمهيد" (or "مجموعة") instead of "المجلد التمهيدي" so
all messages consistently refer to a boot/storage pool.
| "onboarding.internalBootStep.warning.bootablePoolVolumes": "Každý spustitelný pool obsahuje dva svazky:", | ||
| "onboarding.internalBootStep.warning.systemBootVolume": "systémový bootovací svazek používaný systémem Unraid", | ||
| "onboarding.internalBootStep.warning.storagePoolVolume": "úložný pool pro obecná data", | ||
| "onboarding.internalBootStep.warning.storagePoolNaming": "Název, který zvolíte níže se vztahuje k úložnému poolu, nikoliv k bootovacímu svazku.", |
There was a problem hiding this comment.
Add the missing comma in this sentence.
Line 160 reads awkwardly in Czech without a comma after níže, which makes the warning look unpolished in the UI.
✏️ Suggested wording
- "onboarding.internalBootStep.warning.storagePoolNaming": "Název, který zvolíte níže se vztahuje k úložnému poolu, nikoliv k bootovacímu svazku.",
+ "onboarding.internalBootStep.warning.storagePoolNaming": "Název, který zvolíte níže, se vztahuje k úložnému poolu, nikoli k bootovacímu svazku.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.warning.storagePoolNaming": "Název, který zvolíte níže se vztahuje k úložnému poolu, nikoliv k bootovacímu svazku.", | |
| "onboarding.internalBootStep.warning.storagePoolNaming": "Název, který zvolíte níže, se vztahuje k úložnému poolu, nikoli k bootovacímu svazku.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/cs.json` at line 160, The string value for the key
onboarding.internalBootStep.warning.storagePoolNaming is missing a comma after
"níže"; update the JSON value to insert the comma so the Czech sentence reads
correctly (i.e., "...který zvolíte níže, se vztahuje...") and ensure the JSON
remains valid (preserve quotes and trailing comma conventions used in the file).
| "onboarding.internalBootStep.warning.updateBios": "På nogle systemer kan det være nødvendigt manuelt at ændre BIOS-bootrækkefølgen fra USB-enheden til lagringsdrevet.", | ||
| "onboarding.internalBootStep.fields.poolName": "Pool navn", | ||
| "onboarding.internalBootStep.fields.slots": "Slots", | ||
| "onboarding.internalBootStep.fields.slots": "Boot enheder", |
There was a problem hiding this comment.
Standardize the boot device label.
Line 165 and Line 229 use Boot enheder, while Line 211 and Line 212 already use boot-enheder. Keeping one spelling here will avoid visible UI inconsistency in the same flow.
Suggested wording
- "onboarding.internalBootStep.fields.slots": "Boot enheder",
+ "onboarding.internalBootStep.fields.slots": "Boot-enheder",
...
- "onboarding.summaryStep.bootConfig.slots": "Boot enheder",
+ "onboarding.summaryStep.bootConfig.slots": "Boot-enheder",Also applies to: 211-212, 229-229
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/da.json` at line 165, The translation key
onboarding.internalBootStep.fields.slots currently uses "Boot enheder" and must
be standardized to match the other keys that use "boot-enheder"; update the
value for onboarding.internalBootStep.fields.slots (and any other occurrences
such as the keys referenced around lines 211-212 and 229) to use the consistent
spelling "boot-enheder" so the UI shows a single, consistent label across the
onboarding flow.
| "onboarding.internalBootStep.warning.bootablePoolVolumes": "Jeder startfähige Pool enthält zwei Volumen:", | ||
| "onboarding.internalBootStep.warning.systemBootVolume": "ein System-Bootvolumen, das von Unraid verwendet wird.", | ||
| "onboarding.internalBootStep.warning.storagePoolVolume": "ein Speicherpool für allgemeine Daten.", | ||
| "onboarding.internalBootStep.warning.storagePoolNaming": "Der unten gewählte Name gilt für den Speicherpool, nicht für das Boot-Volumen.", |
There was a problem hiding this comment.
Keep both warning bullets referring to volumes.
Line 157 says the bootable pool contains two volumes, but Line 159 turns the second bullet into a whole pool. That makes the list and the naming note on Line 160 read inconsistently.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/de.json` around lines 157 - 160, The two warning bullets are
inconsistent: "onboarding.internalBootStep.warning.bootablePoolVolumes" states
the pool contains two volumes, but
"onboarding.internalBootStep.warning.storagePoolVolume" describes a whole pool
instead of the second volume; update the translation for the key
onboarding.internalBootStep.warning.storagePoolVolume to refer to the second
volume (e.g., "ein Speicherpool-Volume für allgemeine Daten" or similar) so both
bullets consistently mention volumes and align with
onboarding.internalBootStep.warning.storagePoolNaming.
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "No se detectaron dispositivos elegibles para la configuración del arranque interno.", | ||
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "", |
There was a problem hiding this comment.
Populate the empty-state description on Line 182.
noDevicesDescription is currently blank, so this state will render without any supporting copy.
💬 Suggested fix
- "onboarding.internalBootStep.eligibility.noDevicesDescription": "",
+ "onboarding.internalBootStep.eligibility.noDevicesDescription": "No hay discos disponibles actualmente que cumplan los requisitos para configurar el arranque interno.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "No se detectaron dispositivos elegibles para la configuración del arranque interno.", | |
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "", | |
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "No se detectaron dispositivos elegibles para la configuración del arranque interno.", | |
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "No hay discos disponibles actualmente que cumplan los requisitos para configurar el arranque interno.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/es.json` around lines 181 - 182, Populate the empty value for
the localization key
onboarding.internalBootStep.eligibility.noDevicesDescription in es.json with a
concise Spanish supporting sentence; update the string (for example: "Conecta un
dispositivo compatible para continuar con la configuración del arranque
interno.") so the empty-state has explanatory copy that guides the user.
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "Geen in aanmerking komende apparaten gedetecteerd voor interne opstartsetup.", | ||
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "", |
There was a problem hiding this comment.
Don’t leave the no-devices description empty.
Line 182 adds onboarding.internalBootStep.eligibility.noDevicesDescription with an empty value, so this state will have no descriptive copy in the Dutch locale if the UI renders that field.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/nl.json` around lines 181 - 182, The new Dutch locale key
onboarding.internalBootStep.eligibility.noDevicesDescription is empty; provide a
concise Dutch description for the "no devices detected" state and add it to
nl.json matching the key
onboarding.internalBootStep.eligibility.noDevicesDescription so the UI has
descriptive copy; craft a short user-facing sentence consistent with
onboarding.internalBootStep.eligibility.noDevicesTitle (e.g., explaining there
are no compatible devices found and next steps).
| "onboarding.internalBootStep.eligibility.blockedTitle": "Uruchamianie z pamięci masowej jest obecnie niedostępne.", | ||
| "onboarding.internalBootStep.eligibility.blockedDescription": "Aby użyć uruchamiania z pamięci masowej na tym serwerze, rozwiąż wszystkie poniższe problemy.", | ||
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "Nie wykryto żadnych kwalifikowanych urządzeń do wewnętrznej konfiguracji bootowania.", | ||
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "", |
There was a problem hiding this comment.
Don't ship an empty localized description here.
Line 182 sets onboarding.internalBootStep.eligibility.noDevicesDescription to "". If this key is rendered, Polish users will get a blank body instead of translated copy or a fallback. Please either provide the translation or omit the key until the string is ready.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/pl.json` at line 182, The key
onboarding.internalBootStep.eligibility.noDevicesDescription is set to an empty
string — either supply the Polish translation for that key or remove the key
entirely until the copy is ready; update the JSON entry for
onboarding.internalBootStep.eligibility.noDevicesDescription to a non-empty
Polish string (or delete the property) and ensure the locales JSON remains valid
after the change.
| "onboarding.internalBootStep.eligibility.diskTitle": "Sprawdzanie dysków", | ||
| "onboarding.internalBootStep.eligibility.codes.ARRAY_NOT_STOPPED": "Tablicę należy zatrzymać przed skonfigurowaniem rozruchu magazynu.", | ||
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Ten serwer już wydaje się być uruchamiany wewnętrznie.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "Obecnie nie ma dostępnych żadnych nieprzypisanych dysków do rozruchu magazynu.", |
There was a problem hiding this comment.
Keep the “storage boot” terminology consistent across these new strings.
These entries switch from uruchamianie z pamięci masowej used earlier in the same block to rozruch magazynu. Mixing both phrasings in one screen will read inconsistently in Polish and makes the eligibility messaging harder to follow.
Also applies to: 198-199
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/pl.json` at line 189, The string for
onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS (and the other
two nearby eligibility keys referenced) uses "rozruch magazynu" which is
inconsistent with earlier strings; update these values to use the same phrasing
"uruchamianie z pamięci masowej" so all onboarding.internalBootStep.eligibility
messages use the identical Polish term.
| "onboarding.internalBootStep.eligibility.noDevicesTitle": "Не было найдено подходящих устройств для настройки внутренней загрузки.", | ||
| "onboarding.internalBootStep.eligibility.noDevicesDescription": "", |
There was a problem hiding this comment.
Don't ship an empty localized description here.
onboarding.internalBootStep.eligibility.noDevicesDescription is "". That will usually suppress any fallback copy and leave the RU empty-state body blank. Please add the localized text here, or remove the override if this key is meant to fall back to the base locale.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ru.json` around lines 181 - 182, The Russian localization key
onboarding.internalBootStep.eligibility.noDevicesDescription is set to an empty
string which suppresses fallback and yields a blank body; either provide an
appropriate Russian translation for the empty-state description (replace the
empty value with localized text) or remove the key entirely from ru.json so the
base locale fallback is used; update the entry for
onboarding.internalBootStep.eligibility.noDevicesDescription accordingly.
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Этот сервер уже, по-видимому, загружается из внутренней памяти.", | ||
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "В данный момент нет не назначенных дисков для загрузки из хранилища.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Этот диск уже назначен в качестве текущего загрузочного устройства.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Этот диск уже назначен массиву.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Этот диск уже назначен в качестве диска паритета.", | ||
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Этот диск уже назначен в пул или слот кэша.", | ||
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "Этот диск подключен через USB, что не допускается для внутренней загрузки.", | ||
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "Этот диск слишком мал для минимального размера резервирования загрузки.", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "Передача загрузки отключена текущим состоянием системы.", | ||
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN": "Система не сообщила, включена ли передача загрузки.", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Система сообщила, что загрузка из хранилища не допустима.", | ||
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Система не сообщила, разрешена ли загрузка из хранилища.", |
There was a problem hiding this comment.
Tighten the internal-boot wording in these eligibility messages.
Line 188 uses внутренней памяти, which reads like RAM/internal memory rather than internal boot storage, and Line 198 has the spelling не допустима. Using the same storage/drive terminology as the surrounding strings will keep these warnings clearer.
✏️ Suggested wording
- "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Этот сервер уже, по-видимому, загружается из внутренней памяти.",
+ "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Этот сервер уже, по-видимому, загружается с внутреннего накопителя.",
...
- "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Система сообщила, что загрузка из хранилища не допустима.",
+ "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Система сообщила, что загрузка из хранилища недопустима.",📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Этот сервер уже, по-видимому, загружается из внутренней памяти.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "В данный момент нет не назначенных дисков для загрузки из хранилища.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Этот диск уже назначен в качестве текущего загрузочного устройства.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Этот диск уже назначен массиву.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Этот диск уже назначен в качестве диска паритета.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Этот диск уже назначен в пул или слот кэша.", | |
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "Этот диск подключен через USB, что не допускается для внутренней загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "Этот диск слишком мал для минимального размера резервирования загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "Передача загрузки отключена текущим состоянием системы.", | |
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN": "Система не сообщила, включена ли передача загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Система сообщила, что загрузка из хранилища не допустима.", | |
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Система не сообщила, разрешена ли загрузка из хранилища.", | |
| "onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT": "Этот сервер уже, по-видимому, загружается с внутреннего накопителя.", | |
| "onboarding.internalBootStep.eligibility.codes.NO_UNASSIGNED_DISKS": "В данный момент нет не назначенных дисков для загрузки из хранилища.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_BOOT": "Этот диск уже назначен в качестве текущего загрузочного устройства.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_ARRAY": "Этот диск уже назначен массиву.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_PARITY": "Этот диск уже назначен в качестве диска паритета.", | |
| "onboarding.internalBootStep.eligibility.codes.ASSIGNED_TO_CACHE": "Этот диск уже назначен в пул или слот кэша.", | |
| "onboarding.internalBootStep.eligibility.codes.USB_TRANSPORT": "Этот диск подключен через USB, что не допускается для внутренней загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.TOO_SMALL": "Этот диск слишком мал для минимального размера резервирования загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_DISABLED": "Передача загрузки отключена текущим состоянием системы.", | |
| "onboarding.internalBootStep.eligibility.codes.ENABLE_BOOT_TRANSFER_UNKNOWN": "Система не сообщила, включена ли передача загрузки.", | |
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE": "Система сообщила, что загрузка из хранилища недопустима.", | |
| "onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_UNKNOWN": "Система не сообщила, разрешена ли загрузка из хранилища.", |
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.
In `@web/src/locales/ru.json` around lines 188 - 199, Update the two RU strings to
use consistent storage/drive terminology and fix the spelling: change
onboarding.internalBootStep.eligibility.codes.ALREADY_INTERNAL_BOOT to wording
like "Этот сервер, по-видимому, уже загружается с внутреннего накопителя." and
change onboarding.internalBootStep.eligibility.codes.BOOT_ELIGIBLE_FALSE to
wording like "Система сообщила, что загрузка с накопителя не разрешена." —
locate those keys in web/src/locales/ru.json and replace the existing values so
they use "накопитель"/"загрузки с накопителя" and correct "не допустима" to "не
разрешена" (or "недопустима" as a single word) to match surrounding strings.
Summary by CodeRabbit