Skip to content

fix(i18n): localize automation contextual tour - #12270

Closed
5Hyeons wants to merge 4 commits into
stablyai:mainfrom
5Hyeons:fix/localize-automation-tour
Closed

5Hyeons wants to merge 4 commits into
stablyai:mainfrom
5Hyeons:fix/localize-automation-tour

Conversation

@5Hyeons

@5Hyeons 5Hyeons commented Aug 3, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • route both Automation contextual-tour steps through the renderer localization catalog
  • localize the default Next and Done actions
  • add Korean translations and focused regression coverage

Root cause

The shared Automation tour copy was rendered directly without passing through translate(), while the overlay surface hardcoded its default Next and Done labels.

Screenshots

Step 1: Automation introduction

Korean Automation contextual tour introduction

Step 2: Results

Korean Automation contextual tour results step

Validation

  • pnpm exec vitest run --config config/vitest.config.ts src/renderer/src/components/contextual-tours/contextual-tour-overlay-measurement.test.ts src/renderer/src/components/contextual-tours/ContextualTourOverlay.test.tsx src/renderer/src/components/contextual-tours/ContextualTourOverlaySurface.localization.test.tsx
  • pnpm run typecheck:web
  • pnpm run verify:localization-catalog
  • pnpm run verify:localization-extraction
  • pnpm run verify:localization-coverage
  • pnpm run check:max-lines-ratchet
  • real Electron E2E capture of both tour steps in Korean

Fixes #11693

Made with Orca 🐋

5Hyeons and others added 4 commits July 31, 2026 14:02
Localized automation tour copy was selected by matching tour id plus the
raw activeStepIndex. Inserting a step ahead of those two, or adding a
third, silently shifts the mapping: the intro copy lands on the wrong
step and the new one falls through to untranslated English, with no type
or test error to catch it.

Give ContextualTourStep an optional stable `id` and look the copy up by
that instead. Thunks keep translate() out of module scope so the lookup
still resolves in the language active at render time, and the four keys
stay statically referenced for the extraction gate.

Addresses the review comment on stablyai#11694.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Co-authored-by: Orca <help@stably.ai>
@coderabbitai

coderabbitai Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Contextual tours now support optional stable step IDs. The automation tour uses IDs for its introduction and results steps. English and Korean translations were added for automation content and completion labels. Overlay measurement resolves localized copy by step ID and preserves fallback content and keybinding formatting. Default Next and Done labels now use translations. Tests cover Korean action labels, automation step content, and step insertion behavior.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description covers the change, screenshots, root cause, and validation, but omits the required AI Review Report, Security Audit, and Notes sections. Add the missing AI Review Report, Security Audit, and Notes sections, and use the required Testing heading with the applicable checklist items.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the primary change: localizing the automation contextual tour.
Linked Issues check ✅ Passed The changes satisfy issue #11693 by localizing both automation tour steps and the default Next and Done actions for Korean users.
Out of Scope Changes check ✅ Passed The code, localization, and regression-test changes are directly related to the linked issue objectives.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1


ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 8bebb473-e5ee-4de3-8aed-323cbcbfaa38

📥 Commits

Reviewing files that changed from the base of the PR and between 173abf8 and 3af175c.

📒 Files selected for processing (8)
  • config/scripts/locale-ko-key-overrides.json
  • src/renderer/src/components/contextual-tours/ContextualTourOverlaySurface.localization.test.tsx
  • src/renderer/src/components/contextual-tours/ContextualTourOverlaySurface.tsx
  • src/renderer/src/components/contextual-tours/contextual-tour-overlay-measurement.test.ts
  • src/renderer/src/components/contextual-tours/contextual-tour-overlay-measurement.ts
  • src/renderer/src/i18n/locales/en.json
  • src/renderer/src/i18n/locales/ko.json
  • src/shared/contextual-tours.ts

nwparker pushed a commit that referenced this pull request Aug 4, 2026
The shared Automation tour copy was rendered without passing through
translate(), and the overlay surface hardcoded its default Next and Done
labels. Copy is keyed off the step id rather than its position, so inserting a
step ahead of them cannot shift the text onto the wrong step.

Co-authored-by: 5Hyeons <ohs2251@naver.com>
@nwparker

nwparker commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Merged into main via #12514, which consolidated the open community translation work into one branch. Your commit is on main with you as its author — I used a rebase merge specifically so every contributor's commit and co-author trailer survived intact rather than being squashed into one.

Closing this in favour of that. Thank you for the fix, and sorry it took as long as it did to get through.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(i18n): localize the automation contextual tour

2 participants