Skip to content

fix(mobile): correct the Uzbek term for pull request - #6923

Closed
iscekic wants to merge 1 commit into
mainfrom
kwf/janitor-mobile-pr-review-761e9d58b4
Closed

iscekic wants to merge 1 commit into
mainfrom
kwf/janitor-mobile-pr-review-761e9d58b4

Conversation

@iscekic

@iscekic iscekic commented Sep 29, 2026 •

Copy link
Copy Markdown
Collaborator

Changelog for users

  • Uzbek readers now see "PR" instead of "pR" in PR Review sentences.

Changelog for maintainers

  • One locale value changed in the Uzbek catalog; check other locales for the same malformed casing before assuming this is the only one.
  • The term is interpolated mid-sentence, so a wrong case is visible wherever the shared string appears.

E2E proof

Published PR head: bae4e6ed1176c90646f0b54a502e54402cea0e24 (same tree as proved source e4509e3078a70c6730ef550a2a98fda448778b77).

common.pullRequest holds the malformed form "pR" instead of the accepted term "PR"; it is interpolated as the mid-sentence {{term}} in PR Review sentences, so users read e.g. "bu pR", unlike the correctly cased PR used in uz's prReview strings.

Code trace: apps/mobile/src/i18n/locales/uz.json:39 changed in e4509e3078a70c6730ef550a2a98fda448778b77. Sense check (model): uz.json:39 changes "pullRequest": "pR" to "PR", directly fixing the malformed term the claim describes

Changed lines
diff apps/mobile/src/i18n/locales/uz.json
@@ -39,7 +39,7 @@
     "mergeRequest": "merge so‘rovi",
     "notConnected": "Ulanmagan",
     "notifications": "Bildirishnomalar",
-    "pullRequest": "pR",
+    "pullRequest": "PR",
     "repositories": "Repozitoriylar",
     "securityAgent": "Xavfsizlik agenti",
     "unknown": "Noma’lum",

Asserted value: uz PR term toast: PRni ochib bo'lmadi.. Sense check (model): Base log shows TextView "pRni ochib bo'lmadi." (ui-assert exited 1); head log shows TextView "PRni ochib bo'lmadi." and asserts "uz PR term toast: PRni ochib bo'lmadi.", matching the base screenshot toast "pRni ochib bo'lmadi." and head screenshot toast "PRni ochib bo'lmadi."

Base ecac00c2faac Head bae4e6ed1176
Base after drive: the Uzbek session screen for the seeded session: the header shows the 'ochiq PR #7' badge and the body shows the session load error 'Bu sessiyani yuklab bo'lmadi.', with the open-PR error toast at the bottom reading 'PRni ochib bo'lmadi.' on the head revision (the base revision reads 'pRni ochib bo'lmadi.') Head after drive: the Uzbek session screen for the seeded session: the header shows the 'ochiq PR #7' badge and the body shows the session load error 'Bu sessiyani yuklab bo'lmadi.', with the open-PR error toast at the bottom reading 'PRni ochib bo'lmadi.' on the head revision (the base revision reads 'pRni ochib bo'lmadi.')

After drive: the Uzbek session screen for the seeded session: the header shows the 'ochiq PR #7' badge and the body shows the session load error 'Bu sessiyani yuklab bo'lmadi.', with the open-PR error toast at the bottom reading 'PRni ochib bo'lmadi.' on the head revision (the base revision reads 'pRni ochib bo'lmadi.')

Base log: ui-assert a3e00bee1c8f exited 1
$ set -uo pipefail
$ # Toasts reach the accessibility tree (app-root-providers anchors the sonner positioner
$ # at top:0), so the dump has the toast node. But `do check --literal` matches case-
$ # insensitively: on the base it returned "shown" for "PRni ochib" against the rendered
$ # "pRni ochib bo'lmadi.". The differential therefore needs a case-sensitive read of the
$ # rendered text. The base-rendered PR badge is tapped here, in one device session
$ # (do seq), so the 4 s toast cannot expire between the drive and the dump. On an
$ # unparseable PR URL the badge's press falls to openExternalUrl, whose failure toast is
$ # common.couldNotOpen with common.pullRequest interpolated as {{label}} ("PR" on the
$ # head, "pR" on the base).
$ out=$(node "$KWF_EXPLORER_SIM_CLI" do seq '[ ["click","ochiq PR #7"],["snapshot"],["check","--literal","ochib bo"] ]' 2>&1)
$ printf '%s\n' "$out"
$ … 6 more line(s)
- TextView "Sessiyalarga qaytish" [ref=e15]
- EditText "Xabar" [disabled] [ref=e16]
- TextView "Xabar" [ref=e17]
- Button "Ovozli kiritishni boshlash" [disabled] [ref=e18]
- Button "Xabar yuborish" [disabled] [ref=e19]
- TextView "pRni ochib bo'lmadi." [ref=e20]
check (0.7 s): shown
uz PR term toast: not found or malformed
Head log: ui-assert a3e00bee1c8f exited 0
$ set -uo pipefail
$ # Toasts reach the accessibility tree (app-root-providers anchors the sonner positioner
$ # at top:0), so the dump has the toast node. But `do check --literal` matches case-
$ # insensitively: on the base it returned "shown" for "PRni ochib" against the rendered
$ # "pRni ochib bo'lmadi.". The differential therefore needs a case-sensitive read of the
$ # rendered text. The base-rendered PR badge is tapped here, in one device session
$ # (do seq), so the 4 s toast cannot expire between the drive and the dump. On an
$ # unparseable PR URL the badge's press falls to openExternalUrl, whose failure toast is
$ # common.couldNotOpen with common.pullRequest interpolated as {{label}} ("PR" on the
$ # head, "pR" on the base).
$ out=$(node "$KWF_EXPLORER_SIM_CLI" do seq '[ ["click","ochiq PR #7"],["snapshot"],["check","--literal","ochib bo"] ]' 2>&1)
$ printf '%s\n' "$out"
$ … 6 more line(s)
- TextView "Sessiyalarga qaytish" [ref=e15]
- EditText "Xabar" [disabled] [ref=e16]
- TextView "Xabar" [ref=e17]
- Button "Ovozli kiritishni boshlash" [disabled] [ref=e18]
- Button "Xabar yuborish" [disabled] [ref=e19]
- TextView "PRni ochib bo'lmadi." [ref=e20]
check (0.6 s): shown
uz PR term toast: PRni ochib bo'lmadi.
Owner request

Fix 1 janitor finding in mobile/pr-review. Fix every one; the proof covers each.

  1. common.pullRequest holds the malformed form "pR" instead of the accepted term "PR"; it is interpolated as the mid-sentence {{term}} in PR Review sentences, so users read e.g. "bu pR", unlike the correctly cased PR used in uz's prReview strings. (finding 76374)
    Trace: apps/mobile/src/i18n/locales/uz.json:42: common.pullRequest holds the malformed form "pR" instead of the accepted term "PR"; it is interpolated as the mid-sentence {{term}} in PR Review sentences, so users read e.g. "bu pR", unlike the correctly cased PR used in uz's prReview strings. (janitor area i18n, locale uz).
    Files: apps/mobile/src/i18n/locales/uz.json.

ed39776b69b49eff3ba15c7ac27019d862e063a4e75afb5742e86fff4b2e3f3a

8bff5e0e1784bae369b1b1447f171aa4617da5f2b035f7a3b70ddf0154ff02a6

@iscekic iscekic added the kwf-janitor Admitted to the workflow from a janitor finding label Sep 29, 2026
@iscekic iscekic self-assigned this Sep 29, 2026
@iscekic
iscekic marked this pull request as ready for review September 29, 2026 13:03
@kilo-code-bot

kilo-code-bot Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Executive Summary

Single-line Uzbek catalog casing fix (common.pullRequest pR → PR) that matches the abbreviation casing already used throughout uz.json; the JSON stays valid and no catalog-check rule is affected.

Files Reviewed (1 file)
  • apps/mobile/src/i18n/locales/uz.json
Previous Review Summary (commit 46a9352)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit 46a9352)

Status: No Issues Found | Recommendation: Merge

Executive Summary

Single-line Uzbek catalog casing correction (common.pullRequest pR → PR); the new value matches the abbreviation casing already used by uz's prReview strings and the JSON remains valid.

Files Reviewed (1 file)
  • apps/mobile/src/i18n/locales/uz.json

Reviewed by deepseek-v4.1-flash · Input: 0 · Output: 0 · Cached: 0

Review guidance: REVIEW.md from base branch main

@iscekic
iscekic force-pushed the kwf/janitor-mobile-pr-review-761e9d58b4 branch from 46a9352 to bae4e6e Compare September 30, 2026 03:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kwf-janitor Admitted to the workflow from a janitor finding merge-by-bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants