Skip to content

fix(mobile): correct remaining Swedish common and consent copy - #8390

Merged
iscekic merged 2 commits into
mainfrom
drain/sv-common-consent-copy
Oct 21, 2026
Merged

iscekic merged 2 commits into
mainfrom
drain/sv-common-consent-copy

Conversation

@iscekic

@iscekic iscekic commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Three value corrections in the mobile app's Swedish catalog (apps/mobile/src/i18n/locales/sv.json). Keys, placeholders and the English source are unchanged; no other locale is touched.

key before after
common.dismissed Avskriven Avfärdad
common.imageUnavailable Bilden är inte tillgänglig. Bilden är inte tillgänglig
consent.crashReportingNote Kraschrapporter innehåller bara skärmbilder om du har aktiverat den valfria delningen (se nedan). Vi registrerar aldrig skärmens vyhierarki. Kraschrapporter innehåller inga skärmbilder om du inte har aktiverat den valfria delningen (se nedan). Vi registrerar aldrig skärmens vyhierarki.

Reasons:

  1. common.dismissed is the status label for a dismissed security finding (finding-details-panel.tsx:112, finding-filter-modal.tsx:46), a dismissed briefing item (briefing-list-screen.tsx:210) and the closed-with-dismissal deadline label (security-agent-copy.ts:157). Avskriven means written off or decommissioned. Avfärdad uses the dismiss stem the same catalog already renders for dismissing a suggestion (Förslag avfärdat, Det gick inte att avfärda det här förslaget.) and composes correctly in securityAgent.deadline.closedOn ({{status}} {{date}}).
  2. common.imageUnavailable is an inline chip beside an alert icon (file-part-renderer.tsx, tool-card-image-attachments.tsx, image-viewer.tsx, message-attachment.tsx) and is concatenated directly before alt text with a newline (markdown-image.tsx:222). English has no terminal period; dropping it matches the label form and the concatenation now reads Bilden är inte tillgänglig followed by the alt line.
  3. consent.crashReportingNote now states that crash reports contain no screenshots unless optional sharing is enabled, matching the English default-off claim. The second sentence, the (se nedan) reference and the established skärmbilder term (errorScreenshotsTitle) are kept.

The dismissed status label is inside a single-member English wording group, so no entry in the wording exceptions file is needed. securityAgent.findingDetails.dismissedBecause is a separate key owned by another open Swedish copy PR and is untouched here.

Verification

On a clean work VM at 861ea58af7b9:

  • pnpm --filter kilo-app check:i18n — oxlint i18n config clean, check-catalogs: 87 languages, every catalog matches en.json.
  • pnpm --filter kilo-app run check:plurals — every counted message declares its plural categories.
  • pnpm --filter kilo-app format:check — no files differ.
  • pnpm --filter kilo-app exec vitest run src/i18n — 17 files, 1610 tests passed (includes a throwaway runtime smoke, deleted before the commit).
  • Key path diff against origin/main — 3285 keys before and after, no added or removed key, exactly the three values above changed.
  • Runtime smoke with the app's own i18n instance (changeLanguage('sv'), returnDetails: true) asserted exactUsedKey equals each key (no English fallback) and printed the rendered copy:
common.dismissed = "Avfärdad"
common.imageUnavailable = "Bilden är inte tillgänglig"
consent.crashReportingNote = "Kraschrapporter innehåller inga skärmbilder om du inte har aktiverat den valfria delningen (se nedan). Vi registrerar aldrig skärmens vyhierarki."
closed label = "Avfärdad"
closed detail = "Avfärdad 2026-01-05"
markdown-image = "Bilden är inte tillgänglig\nChart of requests"

No screenshot: these are string values behind an authenticated security-agent screen and a consent screen, with no layout change.

Merge resolution: main advanced while this branch was open, so commit b439985e merges main into the branch. The only conflict was apps/mobile/src/i18n/locales/sv.json: main renamed the adjacent common.agent value, and Git grouped that with this branch's common.dismissed edit into one hunk. The resolution keeps this branch's three values above and main's common.agent; the diff against origin/main is still exactly the three values in the table.

Proxy answers

The owner's proxy gave these answers in the owner's place.

  1. Question: sv term: common.dismissed is the status/label for a dismissed (ignored) security finding and a dismissed briefing item. Which Swedish term should replace "Avskriven"?
    Answer: Avfärdad
    Confidence: 0.90 · Precedent: Keep similar elements consistent across surfaces: session 1, "thought row match the tool call row". The brief also names "Avfärdad", which matches the existing "avfärda" stem.
  2. Question: Scope: In the same catalog, securityAgent.findingDetails.dismissedBecause still reads "Fyndet har avskrivits. Orsak: {{reason}}." — the same wrong stem. The sibling open Swedish PR already rewrites that key to "Fyndet har avfärdats." Should this change also touch it?
    Answer: Leave it to the sibling PR
    Confidence: 0.80 · Precedent: Put each separate concern in its own PR: session 2, "in a separate PR". Never redo completed work: session 3, "do not redo work that was already done". The sibling PR already fixes this key.

Render the dismissed status with the Swedish dismiss stem, drop the
terminal period from the image-unavailable label, and keep the
default-off negation in the crash-reporting note.
@iscekic iscekic added drain Work item from the findings drain janitor:i18n Janitor finding: mobile copy and catalog checks labels Oct 21, 2026
Comment thread apps/mobile/src/i18n/locales/sv.json Resolved
@kilo-code-bot

kilo-code-bot Bot commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: 1 Issue Found | Recommendation: Address before merge

Executive Summary

The three Swedish value corrections are accurate and low risk; the only concern is that common.dismissed now uses a different dismiss stem than the surrounding security-agent dismissal copy that renders on the same screen.

Overview

Severity Count
CRITICAL 0
WARNING 0
SUGGESTION 1
Issue Details (click to expand)

SUGGESTION

File Line Issue
apps/mobile/src/i18n/locales/sv.json 139 common.dismissed = "Avfärdad" while securityAgent.dismiss.title (line 1720) and securityAgent.findingDetails.dismissedBecause (line 1741) still use "avskriva/avskrivits", so the finding detail screen mixes two stems until the sibling PR lands.
Files Reviewed (1 file)
  • apps/mobile/src/i18n/locales/sv.json - 1 issue

Fix these issues in Kilo Cloud


Reviewed by deepseek-v4.1-flash-1017 · Input: 35.2K · Output: 6K · Cached: 422.8K

Review guidance: REVIEW.md from base branch main

@iscekic iscekic added merge:blocked merge:bot Bot-owned review; merge when ready once readiness passes and a review approves. labels Oct 21, 2026
Resolve apps/mobile/src/i18n/locales/sv.json by keeping the Swedish
dismissed, image-unavailable and crash-reporting strings from this
branch and taking main's common.agent value.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

drain Work item from the findings drain janitor:i18n Janitor finding: mobile copy and catalog checks merge:bot Bot-owned review; merge when ready once readiness passes and a review approves.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants