Repository navigation
Conversation
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>
📝 WalkthroughWalkthroughContextual 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 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
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. Comment |
There was a problem hiding this comment.
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
📒 Files selected for processing (8)
config/scripts/locale-ko-key-overrides.jsonsrc/renderer/src/components/contextual-tours/ContextualTourOverlaySurface.localization.test.tsxsrc/renderer/src/components/contextual-tours/ContextualTourOverlaySurface.tsxsrc/renderer/src/components/contextual-tours/contextual-tour-overlay-measurement.test.tssrc/renderer/src/components/contextual-tours/contextual-tour-overlay-measurement.tssrc/renderer/src/i18n/locales/en.jsonsrc/renderer/src/i18n/locales/ko.jsonsrc/shared/contextual-tours.ts
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>
|
Merged into Closing this in favour of that. Thank you for the fix, and sorry it took as long as it did to get through. |
Summary
Root cause
The shared Automation tour copy was rendered directly without passing through
translate(), while the overlay surface hardcoded its defaultNextandDonelabels.Screenshots
Step 1: Automation introduction
Step 2: Results
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.tsxpnpm run typecheck:webpnpm run verify:localization-catalogpnpm run verify:localization-extractionpnpm run verify:localization-coveragepnpm run check:max-lines-ratchetFixes #11693
Made with Orca 🐋