Skip to content

Commit f2ea42e

Browse files
committed
fix(ci): stabilize control ui locale checks
1 parent 05fe841 commit f2ea42e

35 files changed

Lines changed: 459 additions & 461 deletions

scripts/control-ui-i18n.ts

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1126,22 +1126,20 @@ async function syncLocale(
11261126
fallbackKeys.push(item.key);
11271127
}
11281128

1129-
if (!allowTranslate) {
1130-
fallbackKeys.length = 0;
1131-
for (const [key, sourceText] of sourceFlat.entries()) {
1132-
if ((nextFlat.get(key) ?? sourceText) === sourceText) {
1133-
fallbackKeys.push(key);
1134-
}
1135-
}
1136-
}
1129+
// Do not infer fallback state from source-text equality alone.
1130+
// Product names, config keys, and other intentional carry-through strings may
1131+
// legitimately stay identical to English. Track fallback keys from actual
1132+
// fallback decisions and previous fallback metadata instead.
11371133

11381134
const nextMap: TranslationMap = {};
11391135
for (const [key, value] of sourceFlat.entries()) {
11401136
setNestedValue(nextMap, key, nextFlat.get(key) ?? value);
11411137
}
11421138

1143-
const nextProvider = allowTranslate ? resolveConfiguredProvider() : "";
1144-
const nextModel = allowTranslate ? resolveConfiguredModel() : "";
1139+
const nextProvider = allowTranslate
1140+
? resolveConfiguredProvider()
1141+
: (previousMeta?.provider ?? "");
1142+
const nextModel = allowTranslate ? resolveConfiguredModel() : (previousMeta?.model ?? "");
11451143
const sortedFallbackKeys = [...new Set(fallbackKeys)].toSorted((left, right) =>
11461144
left.localeCompare(right),
11471145
);

ui/src/i18n/.i18n/de.meta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"fallbackKeys": [],
3-
"generatedAt": "2026-04-06T02:48:38.156Z",
3+
"generatedAt": "2026-04-06T02:59:31.793Z",
44
"locale": "de",
55
"model": "gpt-5.4",
66
"provider": "openai",

ui/src/i18n/.i18n/de.tm.jsonl

Lines changed: 49 additions & 49 deletions
Large diffs are not rendered by default.

ui/src/i18n/.i18n/es.meta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"fallbackKeys": [],
3-
"generatedAt": "2026-04-06T02:49:12.920Z",
3+
"generatedAt": "2026-04-06T02:59:37.034Z",
44
"locale": "es",
55
"model": "gpt-5.4",
66
"provider": "openai",

ui/src/i18n/.i18n/es.tm.jsonl

Lines changed: 33 additions & 33 deletions
Large diffs are not rendered by default.

ui/src/i18n/.i18n/fr.meta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"fallbackKeys": [],
3-
"generatedAt": "2026-04-06T02:50:08.162Z",
3+
"generatedAt": "2026-04-06T03:00:02.262Z",
44
"locale": "fr",
55
"model": "gpt-5.4",
66
"provider": "openai",

ui/src/i18n/.i18n/fr.tm.jsonl

Lines changed: 61 additions & 61 deletions
Large diffs are not rendered by default.

ui/src/i18n/.i18n/id.meta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"fallbackKeys": [],
3-
"generatedAt": "2026-04-06T02:51:11.674Z",
3+
"generatedAt": "2026-04-06T03:00:22.165Z",
44
"locale": "id",
55
"model": "gpt-5.4",
66
"provider": "openai",

ui/src/i18n/.i18n/id.tm.jsonl

Lines changed: 58 additions & 58 deletions
Large diffs are not rendered by default.

ui/src/i18n/.i18n/ja-JP.meta.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"fallbackKeys": [],
3-
"generatedAt": "2026-04-06T02:49:31.323Z",
3+
"generatedAt": "2026-04-06T02:59:42.831Z",
44
"locale": "ja-JP",
55
"model": "gpt-5.4",
66
"provider": "openai",

0 commit comments

Comments
 (0)