Repository navigation
fix(mobile): show an agent identifier example as the slash command agent placeholder - #8461
Conversation
…ent placeholder The slash command form's Agent field carries an agent identifier, but its placeholder was the picker's localized mode label, which some catalogs render as an action phrase (Khmer read as "write code"). Point the field at a new placeholder, "e.g. code, architect", the same example the web profile editor shows, and keep it English in every catalog beside the other profile-editor examples that name the value's syntax. Assert in Khmer that the field keeps the identifier example while the picker's mode label stays translated.
|
bot: Android emulator proof for the slash command Agent field, captured on the local dev stack with a local fake account and a seeded test profile. What I exercised: opened Profiles → the test profile → Slash commands → Add slash command, with the app language set to Khmer, and read the form's fields from the accessibility tree plus a screen capture. Observed, after this branch:
Observed before this branch, with only the placeholder line reverted and Metro restarted on a fresh bundle:
The English capture shows the same form in the default language, where the Agent hint is the new example. |
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Executive SummaryThe slash-command Agent field now points at a new Assumptions: Files Reviewed (90 files)
Reviewed by deepseek-flash-latest · Input: 83.5K · Output: 13.2K · Cached: 1.4M Review guidance: REVIEW.md from base branch |
…gent-placeholder # Conflicts: # apps/mobile/src/components/profiles/kilo-command-form-sheet.mounted.test.tsx
|
bot: Supersession note for the Android capture above.
What the branch now carries is the regression guard, verified on this VM:
No emulator screenshot is offered as proof of the fix itself, because the fix is not in this branch. |



Change
The slash command add/edit form's Agent field carries an agent identifier (
code,architect,plan, or a profile agent slug) and must not use the mode picker's localized label as its hint. That identifier placeholder already landed onmainthrough #8205: the field readsprofiles.slashCommands.agentPlaceholder(reviewer), every catalog keeps that example untranslated, andtools/i18n/check-catalogs.mjsallowlists it.Merging
maininto this branch therefore leaves the component, the catalogs, and the checker byte-identical tomain; this pull request now carries only the regression guard:apps/mobile/src/components/profiles/kilo-command-form-sheet.mounted.test.tsxadds a mounted suite that renders the sheet in Khmer and asserts the Agent field's placeholder is the identifier example whileagentChat.modeOptions.codestill resolves to the localized label.main's server-bounds and dismissal suites; the merge resolved the shared top-level test helper region so all four tests run together.agentChat.modeOptions.codestays untouched for the picker.Verification
pnpm --filter kilo-app check:i18n→check-catalogs: 87 languages, every catalog matches en.json; the i18n oxlint run reports 0 findings. The working tree's catalogs and checker are identical tomain, so the checker's duplicate-key and one-wording rules see the shipped state.pnpm --filter kilo-app exec vitest run src/components/profiles/kilo-command-form-sheet.mounted.test.tsx→ 4 tests pass (server bounds, agent identifier field, dismissal without asking, dismissal confirmation gate).agentChat.modeOptions.code: the suite fails withAssertionError: expected 'សរសេរកូដ' to be 'reviewer', then passes again once the shipped line is restored.apps/mobile/src/components/profilesreports no finding on the test file; its only diagnostics are type-resolution artifacts in unrelated files on a VM without the generated types.The Android emulator capture in the evidence comment below was taken before this branch was reduced to the test; the placeholder string it shows is superseded by the one
mainshipped, and the branch no longer changes rendered copy.Proxy answers
The owner's proxy gave these answers in the owner's place.
Answer: code
Confidence: 0.75 · Precedent: Keep similar elements consistent across surfaces ("thought row match the tool call row"); 'code' matches the untranslated sibling placeholders and the brief's suggested slug
Answer: e.g. code, architect
Confidence: 0.50 · Precedent: Keep similar elements consistent across surfaces ("thought row match the tool call row")
Answer: Keep only a regression test
Confidence: 0.55 · Precedent: A work item must converge rather than end blocked; do not redo work that was already done. So the redundant catalog changes are dropped and the guard test stays.