You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(mobile): correct Hungarian profile, agent and skill copy - #8206
Corrects 25 Hungarian values in apps/mobile/src/i18n/locales/hu.json. Values only; keys, key order, placeholders and $t() references are unchanged.
Profile entry and variables:entrySubtitle uses the a munkamenetek között wording of emptyDescription; namePlaceholder lowercases the example after például; keyLabel becomes the noun Kulcs.
Toasts:createdToast/deletedToast drop the fixed article before {{name}}, so any user-entered name stays grammatical.
Reordering and commands:moveUp/moveDown become one formal imperative pair (Mozgassa fel / Mozgassa le); commandPlaceholder uses the pl. abbreviation of the sibling placeholders.
Delete block:deleteBlocked names the webhook triggers with one term in both sentences.
Skills: one Készség term throughout (addSkill, skillNameLabel, skillEditTitle, skillMarkdownLabel, skillContentRequired, skillSaveFailed, skillsHint); addSkill is a singular action label; skillsHint is one register with the reflexive kitöltődik.
MCP:mcp.empty and mcp.saveFailed use the szerver term the sibling profiles.mcp keys already use.
Agents:slug/slugRequired/slugConflict/slugInvalid use one accurate slug term with the common noun lowercase mid-sentence; modelPlaceholder is a complete phrase; prompt is one closed compound; visibilityAll uses the same spaced en dash as its siblings.
profiles.mcp.secretCount is not named by the work item's key list and stays unchanged, per the owner's answer.
Verification
On this VM, against the branch head:
pnpm --filter kilo-app run check:i18n — oxlint i18n config (0 problems) and check-catalogs.mjs: 87 languages, every catalog matches en.json.
node tools/i18n/check-plurals.mjs — every counted message and every locale declares its plural categories.
pnpm --filter kilo-app run format:check — no files differ.
Throwaway i18next smoke with the app's own options (compatibilityJSON: 'v4', fallbackLng: 'en'): all 25 changed keys resolve to the new Hungarian value with {{name}} bound and no English fallback; profiles.mcp.secretCount still resolves to Titkos szám.
Android emulator end to end (headless omp36, local dev stack on this VM, fake local account, app language set to Hungarian):
Profile tab row shows Használja újra a környezeti beállításokat a munkamenetek között.
New-profile name placeholder reads például háttérbeli hibakeresés; deleting a profile raises "…" profil törölve with no fixed article.
Skills screen and sheet: Készség hozzáadása button and title, Készség neve / Készség tartalma labels, the new hint line, and A készség tartalma kötelező when saving with empty content.
MCP screen empty state reads Még nincsenek MCP szerverek.
Agent form: Ügynök slug, Rendszerprompt, A munkamenet alapértelmezettjének használata, and Mind – mindkettő in the visibility picker.
Variables form: Kulcs. Setup-command form: pl. pnpm install, with Mozgassa fel / Mozgassa le on the reorder controls.
profiles.agents.slugInvalid could not be reached from the UI: the client lowercases the slug field before validation, so an invalid-format save normalizes and succeeds. The string is covered by the catalog check and the runtime smoke.
Screenshots follow in a comment on this pull request.
Proxy answers
The owner's proxy gave these answers in the owner's place.
Question: secretCount: Finding Security - Fix npm audit vulnerabilities #12 (profiles.mcp.secretCount "Titkos szám" → "Titkok száma") is approved for this work item, but the brief's key enumeration omits it. Change it? Answer: Include it (Recommended) Confidence: 0.60 · Precedent: Autonomy: 'if you saw a gap, fix it' (session 89824a222897). The finding is approved for this item, and it is the same file and the same kind of copy fix.
Question: skillSaveFailed: profiles.skillSaveFailed is reused for create, update, delete and enable-toggle failures. Which Hungarian value? Answer: "Nem sikerült elmenteni a készséget" Confidence: 0.45 · Precedent: none
Question: Toasts: createdToast/deletedToast currently hard-code "A" before {{name}}. Which construction? Answer: "{{name}}" profil létrehozva / törölve (Recommended) Confidence: 0.80 · Precedent: Speed: least work with no drop in quality, 'do the least amount of work possible, with no drop in quality' (session 7f3470e0ba6f). The brief also says to drop the article before {{name}}.
Question: E2E depth: How far should end-to-end verification go for this copy-only change? Answer: Android emulator + screenshots (Recommended) Confidence: 0.75 · Precedent: Proof: 'logs and/or screenshots are mandatory proof ... make sure they make sense' (session 55c9c80332a7). Screenshots go up as comment uploads, 'Upload the images to the PR so reviewers can see' (session 884b92b7395e).
Question: entrySubtitle: profiles.entrySubtitle: the brief names the „munkamenetek közötti” wording from emptyDescription, but that form is attributive. Which final phrase? Answer: „… a munkamenetek között” (Recommended) Confidence: 0.70 · Precedent: Fix the root cause and the class of the issue: the brief wants the emptyDescription wording, and the adverbial form is the grammatical way to carry it here
Question: skillsHint: profiles.skillsHint second clause (English: "add a skill from your phone without drag and drop"). Which wording? Answer: „…; töltsön fel egy készséget a telefonjáról húzás nélkül.” Confidence: 0.40 · Precedent: Make every surface pleasant to look at and remove redundant copy: the literal „húzás és ejtés” is an unnatural calque, and the finding's shorter formal wording reads naturally
Question: Slug label: profiles.agents.slug label: which term for the field? Answer: „Ügynök slug” (Recommended) Confidence: 0.60 · Precedent: Do the least work with no drop in quality: the brief prescribes one slug term, lowercase mid-sentence, and this option keeps the sibling keys consistent without rewording
Question: Move pair: profiles.moveUp/moveDown are accessibility labels on chevron reorder buttons. Which matching pair? Answer: „Mozgassa fel” / „Mozgassa le” (Recommended) Confidence: 0.75 · Precedent: Keep similar elements consistent across surfaces: this matches the formal imperative a11y labels already used on the profile surface
Question: MCP hyphen: profiles.mcp.empty/saveFailed: findings recommend hyphenated „MCP-szerver”, while the six sibling keys the brief calls the standard write „MCP szerver” with a space. Which form for the two changed keys? Answer: Spaced: „MCP szerverek” / „MCP szervert” (Recommended) Confidence: 0.85 · Precedent: Keep each PR diff to files that the feature needs (session df491946927a: "PR should be checked for stray changes before merging"). The brief makes the six sibling keys' „MCP szerver” the standard, and those keys are out of scope.
Question: secretCount: profiles.mcp.secretCount value (accessibility label on the lock badge + number): Answer: Leave profiles.mcp.secretCount unchanged. The brief does not name it, and the brief says to change only the named keys. Only if the key is missing or broken and check:i18n fails, use „Titkok száma”. Confidence: 0.50 · Precedent: Keep each PR diff to files that the feature needs (session 7f3470e0ba6f: owner asked for checks against unrelated changes). Put each separate concern in its own PR (session debabfb38c82).
bot: Android emulator proof for the Hungarian profile, agent and skill copy. Headless omp36, local dev stack on the work VM, fake local test account, app language set to Hungarian. Each capture shows the changed copy as rendered by the app; the text was also confirmed in the UI hierarchy dump at capture time.
Order: profile entry and new-profile placeholder, MCP empty state, skills list and sheet with the required-content error, agent form and visibility options, variables key label, setup-command form with reorder labels, and the delete toast without a fixed article.
Two notes on scope: profiles.agents.slugInvalid is not reachable from the UI because the field lowercases the slug before validation, so the invalid-format save normalizes instead; and profiles.mcp.secretCount is intentionally unchanged because the work item's key list does not name it.
The change is a copy-only update of 25 Hungarian values in hu.json; all keys, key order, {{name}} placeholders and JSON structure are intact, values are unique within the catalog, and every string matches the meaning of its en.json counterpart.
Files Reviewed (1 file)
apps/mobile/src/i18n/locales/hu.json - 0 issues (25 value-only changes; {{name}} preserved in createdToast/deletedToast; no duplicate values introduced)
iscekic
added
merge:bot
Bot-owned review; readiness checks still apply before merging.
merge:human
Substantive functional risk requires human review.
and removed
merge:bot
Bot-owned review; readiness checks still apply before merging.
merge:human
Substantive functional risk requires human review.
labels
Oct 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
drainWork item from the findings drainjanitor:i18nJanitor finding: mobile copy and catalog checksmerge:blockedAgent-owned readiness prerequisites remain unresolved; do not merge.merge:botBot-owned review; readiness checks still apply before merging.
2 participants
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Corrects 25 Hungarian values in
apps/mobile/src/i18n/locales/hu.json. Values only; keys, key order, placeholders and$t()references are unchanged.entrySubtitleuses thea munkamenetek közöttwording ofemptyDescription;namePlaceholderlowercases the example afterpéldául;keyLabelbecomes the nounKulcs.createdToast/deletedToastdrop the fixed article before{{name}}, so any user-entered name stays grammatical.moveUp/moveDownbecome one formal imperative pair (Mozgassa fel/Mozgassa le);commandPlaceholderuses thepl.abbreviation of the sibling placeholders.deleteBlockednames the webhook triggers with one term in both sentences.Készségterm throughout (addSkill,skillNameLabel,skillEditTitle,skillMarkdownLabel,skillContentRequired,skillSaveFailed,skillsHint);addSkillis a singular action label;skillsHintis one register with the reflexivekitöltődik.mcp.emptyandmcp.saveFaileduse theszerverterm the siblingprofiles.mcpkeys already use.slug/slugRequired/slugConflict/slugInvaliduse one accurateslugterm with the common noun lowercase mid-sentence;modelPlaceholderis a complete phrase;promptis one closed compound;visibilityAlluses the same spaced en dash as its siblings.profiles.mcp.secretCountis not named by the work item's key list and stays unchanged, per the owner's answer.Verification
On this VM, against the branch head:
pnpm --filter kilo-app run check:i18n— oxlint i18n config (0 problems) andcheck-catalogs.mjs:87 languages, every catalog matches en.json.node tools/i18n/check-plurals.mjs—every counted message and every locale declares its plural categories.pnpm --filter kilo-app exec vitest run src/i18n— 16 files, 1609 tests passed.pnpm --filter kilo-app run format:check— no files differ.compatibilityJSON: 'v4',fallbackLng: 'en'): all 25 changed keys resolve to the new Hungarian value with{{name}}bound and no English fallback;profiles.mcp.secretCountstill resolves toTitkos szám.Android emulator end to end (headless
omp36, local dev stack on this VM, fake local account, app language set to Hungarian):Használja újra a környezeti beállításokat a munkamenetek között.például háttérbeli hibakeresés; deleting a profile raises"…" profil törölvewith no fixed article.Készség hozzáadásabutton and title,Készség neve/Készség tartalmalabels, the new hint line, andA készség tartalma kötelezőwhen saving with empty content.Még nincsenek MCP szerverek.Ügynök slug,Rendszerprompt,A munkamenet alapértelmezettjének használata, andMind – mindkettőin the visibility picker.Kulcs. Setup-command form:pl. pnpm install, withMozgassa fel/Mozgassa leon the reorder controls.profiles.agents.slugInvalidcould not be reached from the UI: the client lowercases the slug field before validation, so an invalid-format save normalizes and succeeds. The string is covered by the catalog check and the runtime smoke.Screenshots follow in a comment on this pull request.
Proxy answers
The owner's proxy gave these answers in the owner's place.
Answer: Include it (Recommended)
Confidence: 0.60 · Precedent: Autonomy: 'if you saw a gap, fix it' (session 89824a222897). The finding is approved for this item, and it is the same file and the same kind of copy fix.
Answer: "Nem sikerült elmenteni a készséget"
Confidence: 0.45 · Precedent: none
Answer: "{{name}}" profil létrehozva / törölve (Recommended)
Confidence: 0.80 · Precedent: Speed: least work with no drop in quality, 'do the least amount of work possible, with no drop in quality' (session 7f3470e0ba6f). The brief also says to drop the article before {{name}}.
Answer: Android emulator + screenshots (Recommended)
Confidence: 0.75 · Precedent: Proof: 'logs and/or screenshots are mandatory proof ... make sure they make sense' (session 55c9c80332a7). Screenshots go up as comment uploads, 'Upload the images to the PR so reviewers can see' (session 884b92b7395e).
Answer: „… a munkamenetek között” (Recommended)
Confidence: 0.70 · Precedent: Fix the root cause and the class of the issue: the brief wants the emptyDescription wording, and the adverbial form is the grammatical way to carry it here
Answer: „…; töltsön fel egy készséget a telefonjáról húzás nélkül.”
Confidence: 0.40 · Precedent: Make every surface pleasant to look at and remove redundant copy: the literal „húzás és ejtés” is an unnatural calque, and the finding's shorter formal wording reads naturally
Answer: „Ügynök slug” (Recommended)
Confidence: 0.60 · Precedent: Do the least work with no drop in quality: the brief prescribes one slug term, lowercase mid-sentence, and this option keeps the sibling keys consistent without rewording
Answer: „Mozgassa fel” / „Mozgassa le” (Recommended)
Confidence: 0.75 · Precedent: Keep similar elements consistent across surfaces: this matches the formal imperative a11y labels already used on the profile surface
Answer: Spaced: „MCP szerverek” / „MCP szervert” (Recommended)
Confidence: 0.85 · Precedent: Keep each PR diff to files that the feature needs (session df491946927a: "PR should be checked for stray changes before merging"). The brief makes the six sibling keys' „MCP szerver” the standard, and those keys are out of scope.
Answer: Leave profiles.mcp.secretCount unchanged. The brief does not name it, and the brief says to change only the named keys. Only if the key is missing or broken and check:i18n fails, use „Titkok száma”.
Confidence: 0.50 · Precedent: Keep each PR diff to files that the feature needs (session 7f3470e0ba6f: owner asked for checks against unrelated changes). Put each separate concern in its own PR (session debabfb38c82).