fix(i18n): correct semantic errors in Korean UI copy (#11169)
Nine ko values said something other than the English source. The riskiest is
SourceControl.6d7f2a47e5 "Discard folder", rendered as 폴더 삭제 ("delete
folder") next to a sibling delete-untracked action. Others: "Only branches Orca
named itself" read as "branches named Orca"; "staged changes" as 단계적
("phased"); "first-party cloud" as the mojibake 1方클라우드; "discard the
deletion" as "the deletion is deleted"; "Stage all changes" as a sentence
meaning "prepare"; and Recipes as 조리법 (cooking recipes).
EphemeralVmsPane.skillTitle is dropped from the PR's test and override — the
key was renamed to cloudVmSkillTitle on main, so the assertion would resolve to
undefined.
Co-authored-by: ShinSungkyu <kxu4583@naver.com>
This commit is contained in:
parent
d4f2ae1454
commit
705e17a2a0
|
|
@ -1883,6 +1883,9 @@
|
|||
"auto.components.right.sidebar.SourceControl.3a231c845b": {
|
||||
"ko": "알 수 없음"
|
||||
},
|
||||
"auto.components.right.sidebar.SourceControl.6d7f2a47e5": {
|
||||
"ko": "폴더의 변경 사항 취소"
|
||||
},
|
||||
"auto.components.right.sidebar.SourceControl.812cb992ee": {
|
||||
"ko": "{{value0}}에서 열기"
|
||||
},
|
||||
|
|
@ -1895,6 +1898,9 @@
|
|||
"auto.components.right.sidebar.SourceControl.9bb062a886": {
|
||||
"ko": "commit 되지 않음"
|
||||
},
|
||||
"auto.components.right.sidebar.SourceControl.a5e5a11090": {
|
||||
"ko": "모든 변경 사항 취소 실패 — 취소 전에 파일의 스테이징을 해제하지 못했습니다."
|
||||
},
|
||||
"auto.components.right.sidebar.SourceControl.aaf1451654": {
|
||||
"ko": "초안 {{value0}} 만들기"
|
||||
},
|
||||
|
|
@ -2009,6 +2015,9 @@
|
|||
"auto.components.right.sidebar.source.control.discard.confirmation.2ae5a785b3": {
|
||||
"ko": "스테이징되지 않은 변경 사항을 모두 삭제하시겠습니까?"
|
||||
},
|
||||
"auto.components.right.sidebar.source.control.discard.confirmation.40e9357b2a": {
|
||||
"ko": "이렇게 하면 HEAD에서 파일을 복원하고 파일 삭제를 취소합니다. 이 작업은 취소할 수 없습니다."
|
||||
},
|
||||
"auto.components.right.sidebar.source.control.discard.confirmation.5ddd8cac7f": {
|
||||
"ko": "스테이징된 변경 사항을 모두 삭제하시겠습니까?"
|
||||
},
|
||||
|
|
@ -2030,6 +2039,9 @@
|
|||
"auto.components.right.sidebar.source.control.primary.action.1d47e850cf": {
|
||||
"ko": "연결된 리뷰 브랜치에 업데이트 푸시"
|
||||
},
|
||||
"auto.components.right.sidebar.source.control.primary.action.5a477d80cb": {
|
||||
"ko": "모든 변경 사항 스테이징"
|
||||
},
|
||||
"auto.components.right.sidebar.source.control.primary.action.a5d1f7b036": {
|
||||
"ko": "{{value0}}을(를) 만들기 전에 commits을 게시하세요."
|
||||
},
|
||||
|
|
@ -2177,6 +2189,9 @@
|
|||
"auto.components.settings.AutoRenameBranchFromWorkSetting.a4fa380b67": {
|
||||
"ko": "{assistantMessage}"
|
||||
},
|
||||
"auto.components.settings.AutoRenameBranchFromWorkSetting.d9b65054ef": {
|
||||
"ko": ") 작업을 요약하는 짧은 이름으로 변경됩니다. Orca가 직접 이름 붙인 브랜치만 이름을 바꾸며, 푸시된 후에는 이름을 바꾸지 않습니다."
|
||||
},
|
||||
"auto.components.settings.AutoRenameBranchPromptEditor.ebb942a2ec": {
|
||||
"ko": "fix-login-flow"
|
||||
},
|
||||
|
|
@ -2243,6 +2258,9 @@
|
|||
"auto.components.settings.DefaultWindowsProjectRuntimeSetting.wslUnavailable": {
|
||||
"ko": "WSL을 사용할 수 없습니다. WSL을 상속하는 프로젝트는 복구가 필요합니다."
|
||||
},
|
||||
"auto.components.settings.DevToolsPane.orcaCloudDescription": {
|
||||
"ko": "자사 클라우드 로그인의 개발자 전용 미리보기. 프로덕션에서는 숨겨집니다. 개발 환경에서는 ORCA_CLOUD_API_URL과 ORCA_CLOUD_CLIENT_ID가 설정되면 사이드바 계정 전환기에도 표시됩니다."
|
||||
},
|
||||
"auto.components.settings.DeveloperPermissionsPane.16381e040a": {
|
||||
"ko": "마이크"
|
||||
},
|
||||
|
|
@ -2270,6 +2288,12 @@
|
|||
"auto.components.settings.ExperimentalPane.newWorktreeCardStyle.description": {
|
||||
"ko": "업데이트된 워크트리 카드 레이아웃, 메타데이터 배치, 카드 표시 메뉴 옵션 및 상태 표시를 미리 봅니다."
|
||||
},
|
||||
"auto.components.settings.EphemeralVmsPane.recipes": {
|
||||
"ko": "레시피"
|
||||
},
|
||||
"auto.components.settings.EphemeralVmsPane.whatTitle": {
|
||||
"ko": "이 스킬로 함께 하는 작업"
|
||||
},
|
||||
"auto.components.settings.GeneralEditorSettingsSection.45c6e85c4d": {
|
||||
"ko": "편집기"
|
||||
},
|
||||
|
|
@ -3725,6 +3749,9 @@
|
|||
"auto.components.settings.ssh.search.f9493b80c0": {
|
||||
"ko": "서버"
|
||||
},
|
||||
"auto.components.settings.source.control.action.recipe.options.commitMessage": {
|
||||
"ko": "스테이징된 변경 사항에서 commit 메시지를 생성합니다."
|
||||
},
|
||||
"auto.components.settings.task.tracker.integration.cards.1a12e33fe5": {
|
||||
"ko": "Linear 액세스 추가"
|
||||
},
|
||||
|
|
|
|||
|
|
@ -0,0 +1,52 @@
|
|||
import fs from 'node:fs'
|
||||
|
||||
import { describe, expect, it } from 'vitest'
|
||||
import ko from './locales/ko.json'
|
||||
|
||||
const correctedValues = {
|
||||
'auto.components.settings.AutoRenameBranchFromWorkSetting.d9b65054ef':
|
||||
') 작업을 요약하는 짧은 이름으로 변경됩니다. Orca가 직접 이름 붙인 브랜치만 이름을 바꾸며, 푸시된 후에는 이름을 바꾸지 않습니다.',
|
||||
'auto.components.settings.source.control.action.recipe.options.commitMessage':
|
||||
'스테이징된 변경 사항에서 commit 메시지를 생성합니다.',
|
||||
'auto.components.settings.DevToolsPane.orcaCloudDescription':
|
||||
'자사 클라우드 로그인의 개발자 전용 미리보기. 프로덕션에서는 숨겨집니다. 개발 환경에서는 ORCA_CLOUD_API_URL과 ORCA_CLOUD_CLIENT_ID가 설정되면 사이드바 계정 전환기에도 표시됩니다.',
|
||||
'auto.components.settings.EphemeralVmsPane.whatTitle': '이 스킬로 함께 하는 작업',
|
||||
'auto.components.settings.EphemeralVmsPane.recipes': '레시피',
|
||||
'auto.components.right.sidebar.SourceControl.a5e5a11090':
|
||||
'모든 변경 사항 취소 실패 — 취소 전에 파일의 스테이징을 해제하지 못했습니다.',
|
||||
'auto.components.right.sidebar.SourceControl.6d7f2a47e5': '폴더의 변경 사항 취소',
|
||||
'auto.components.right.sidebar.source.control.discard.confirmation.40e9357b2a':
|
||||
'이렇게 하면 HEAD에서 파일을 복원하고 파일 삭제를 취소합니다. 이 작업은 취소할 수 없습니다.',
|
||||
'auto.components.right.sidebar.source.control.primary.action.5a477d80cb':
|
||||
'모든 변경 사항 스테이징'
|
||||
} as const
|
||||
|
||||
function getLocaleValue(path: string): unknown {
|
||||
return path.split('.').reduce<unknown>((node, segment) => {
|
||||
if (!node || typeof node !== 'object' || Array.isArray(node)) {
|
||||
return undefined
|
||||
}
|
||||
return (node as Record<string, unknown>)[segment]
|
||||
}, ko)
|
||||
}
|
||||
|
||||
describe('Korean UI semantic mistranslation fixes', () => {
|
||||
it('keeps the corrected values in the Korean catalog', () => {
|
||||
for (const [path, expected] of Object.entries(correctedValues)) {
|
||||
expect(getLocaleValue(path), path).toBe(expected)
|
||||
}
|
||||
})
|
||||
|
||||
it('keeps the corrected values in the translation overrides', () => {
|
||||
const overrides = JSON.parse(
|
||||
fs.readFileSync(
|
||||
new URL('../../../../config/scripts/locale-ko-key-overrides.json', import.meta.url),
|
||||
'utf8'
|
||||
)
|
||||
) as Record<string, { ko?: string }>
|
||||
|
||||
for (const [path, expected] of Object.entries(correctedValues)) {
|
||||
expect(overrides[path]?.ko, path).toBe(expected)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
|
@ -5404,7 +5404,7 @@
|
|||
"9241b59bf5": "사용",
|
||||
"a869d0edd8": "브랜치 이름 명령 템플릿",
|
||||
"e784ea62dc": "고급",
|
||||
"d9b65054ef": ") 작업을 요약하는 짧은 이름으로 변경됩니다. Orca 라는 이름의 브랜치만 이름이 변경되며 푸시된 후에는 이름이 변경되지 않습니다.",
|
||||
"d9b65054ef": ") 작업을 요약하는 짧은 이름으로 변경됩니다. Orca가 직접 이름 붙인 브랜치만 이름을 바꾸며, 푸시된 후에는 이름을 바꾸지 않습니다.",
|
||||
"12ea4a408d": "agent가 새 워크스페이스에서 작업을 시작하면 Orca는 자동 생성된 브랜치의 이름을 바꿉니다(예:",
|
||||
"ef787db0e3": "브랜치 자동 이름 바꾸기",
|
||||
"6a051586d2": "agent가 시작되면 작업을 기반으로 자동 생성된 브랜치의 이름을 바꿉니다.",
|
||||
|
|
@ -9032,7 +9032,7 @@
|
|||
"action": {
|
||||
"recipe": {
|
||||
"options": {
|
||||
"commitMessage": "단계적 변경에서 commit 메시지를 생성합니다.",
|
||||
"commitMessage": "스테이징된 변경 사항에서 commit 메시지를 생성합니다.",
|
||||
"pullRequest": "호스팅된 리뷰 제목 및 설명을 생성합니다.",
|
||||
"branchName": "초기 agent 작업에서 Orca가 생성한 브랜치의 이름을 바꿉니다.",
|
||||
"fixCommitFailure": "commit 후크 또는 git commit이 실패하면 agent를 시작합니다.",
|
||||
|
|
@ -9421,7 +9421,7 @@
|
|||
"notificationPlaygroundDescription": "토스트 레이아웃, 복구 액션, 긴 텍스트 줄바꿈을 확인하기 위한 개발 전용 트리거입니다.",
|
||||
"devOnly": "Dev only",
|
||||
"orcaCloud": "Orca Cloud",
|
||||
"orcaCloudDescription": "1方클라우드 로그인의 개발자 전용 미리보기. 프로덕션에서는 숨겨집니다. 개발 환경에서는 ORCA_CLOUD_API_URL과 ORCA_CLOUD_CLIENT_ID가 설정되면 사이드바 계정 전환기에도 표시됩니다.",
|
||||
"orcaCloudDescription": "자사 클라우드 로그인의 개발자 전용 미리보기. 프로덕션에서는 숨겨집니다. 개발 환경에서는 ORCA_CLOUD_API_URL과 ORCA_CLOUD_CLIENT_ID가 설정되면 사이드바 계정 전환기에도 표시됩니다.",
|
||||
"orcaCloudStatus": "상태",
|
||||
"orcaCloudSignOut": "로그아웃",
|
||||
"orcaCloudConnect": "프로필 연결",
|
||||
|
|
@ -9471,14 +9471,14 @@
|
|||
"loadError": "레시피를 로드할 수 없습니다.",
|
||||
"copyError": "프롬프트를 복사할 수 없습니다.",
|
||||
"skillDescription": "repo 소유 환경 레시피를 설정, 빌드, 인증 및 검증합니다.",
|
||||
"whatTitle": "당신과 함께 기술이 하는 일",
|
||||
"whatTitle": "이 스킬로 함께 하는 작업",
|
||||
"whatScaffold": "Orca 서버 또는 SSH를 통해 연결된 공급자를 위한 레시피 및 스크립트를 작성합니다.",
|
||||
"whatBuild": "재사용 가능한 기본 이미지를 구축하고 agent에 로그인합니다.",
|
||||
"whatValidate": "워크스페이스를 생성할 수 있도록 유효성을 검사합니다.",
|
||||
"promptHint": "어떤 워크스페이스에서든 agent에게 다음과 같이 질문하세요.",
|
||||
"copy": "복사",
|
||||
"copied": "복사됨",
|
||||
"recipes": "조리법",
|
||||
"recipes": "레시피",
|
||||
"recipesHelp": "orca.yaml과 활성화된 플러그인의 레시피가 여기에 표시되어 워크스페이스를 시작할 수 있습니다.",
|
||||
"checking": "레시피 확인 중...",
|
||||
"none": "아직 레시피를 찾을 수 없습니다.",
|
||||
|
|
@ -10406,7 +10406,7 @@
|
|||
"c07b236287": "변경사항을 보려면 워크스페이스를 선택하세요.",
|
||||
"dc5a6465fc": "{{value0}}(예: {{value1}}{{value2}})",
|
||||
"8eb3782a0c": "{{value0}} 파일{{value1}}을(를) 삭제하지 못했습니다.",
|
||||
"a5e5a11090": "모두 삭제 실패 - 삭제하기 전에 파일을 스테이지 해제할 수 없습니다.",
|
||||
"a5e5a11090": "모든 변경 사항 취소 실패 — 취소 전에 파일의 스테이징을 해제하지 못했습니다.",
|
||||
"8a5ba6a988": "commit 차이점을 로드하지 못했습니다.",
|
||||
"fe5bd1a610": "{{value0}} 생성 중...",
|
||||
"812cb992ee": "{{value0}}에서 열기",
|
||||
|
|
@ -10424,7 +10424,7 @@
|
|||
"d62bc0c7d8": "추적되지 않은",
|
||||
"ab31221779": "언스테이지 폴더",
|
||||
"bfe9011a0e": "스테이지 폴더",
|
||||
"6d7f2a47e5": "폴더 삭제",
|
||||
"6d7f2a47e5": "폴더의 변경 사항 취소",
|
||||
"9b367363b6": "추적되지 않은 폴더 삭제",
|
||||
"540ca8f78c": "병합 중단",
|
||||
"425f138269": "리베이스 중단",
|
||||
|
|
@ -10967,7 +10967,7 @@
|
|||
"5ddd8cac7f": "스테이징된 변경 사항을 모두 삭제하시겠습니까?",
|
||||
"1426c2efff": "그러면 이 파일의 모든 변경 사항이 되돌려집니다. 이 작업은 취소할 수 없습니다.",
|
||||
"d4df3a61df": "'{{value0}}' 변경사항을 취소하시겠습니까?",
|
||||
"40e9357b2a": "이렇게 하면 HEAD에서 파일이 복원되고 삭제 내용이 삭제됩니다. 이 작업은 취소할 수 없습니다.",
|
||||
"40e9357b2a": "이렇게 하면 HEAD에서 파일을 복원하고 파일 삭제를 취소합니다. 이 작업은 취소할 수 없습니다.",
|
||||
"5c0bdbc4cb": "'{{value0}}'을(를) 복원하시겠습니까?",
|
||||
"d97bf697c9": "이 파일이 영구적으로 삭제됩니다. 이 작업은 취소할 수 없습니다.",
|
||||
"96c772bee9": "'{{value0}}'을 삭제하시겠습니까?"
|
||||
|
|
@ -11008,7 +11008,7 @@
|
|||
"41d4bcf157": "PR 상태 확인 중…",
|
||||
"acce237921": "commit 할 것이 없습니다. 브랜치에 게시할 변경 사항이 없습니다.",
|
||||
"fa3bd4f40c": "commit 할 파일을 하나 이상 스테이지하세요",
|
||||
"5a477d80cb": "모든 변경 사항을 준비합니다.",
|
||||
"5a477d80cb": "모든 변경 사항 스테이징",
|
||||
"18a0fca877": "모두 스테이지",
|
||||
"f01f16d77f": "commit 하려면 commit 메시지를 입력하세요.",
|
||||
"ab41fb926b": "스테이지된 변경 사항 Commit",
|
||||
|
|
|
|||
Loading…
Reference in New Issue