Skip to content

chore(r70): remove 23 dead i18n keys from mobile/flutter translation assets - #4331

Open
topcheer wants to merge 1 commit into
mainfrom
chore/deadcode-r70
Open

topcheer wants to merge 1 commit into
mainfrom
chore/deadcode-r70

Conversation

@topcheer

Copy link
Copy Markdown
Owner

r70 dead-code 轮·locale 资产域(态分支 b:七 PR 全未并→轮换面①mobile locale)

清理内容

mobile/flutter/assets/translations/*.json(10 语言文件)各删 23 个零引用死键,共 230 行:

  • chat.*: disconnect_title, send
  • connect.*: connected, disconnect, generating, recent_connections, reconnecting, scanning, status_connected, status_connecting
  • cron.triggered / session.cached_banner
  • settings.*: title, language_en, language_zh_cn
  • status.*: approval_needed, waiting_for_input
  • tool.*: call, collapse, expand
  • workspace.*: cached, current, no_workspaces

确证方法(五通道 + 假成功三重核)

  1. 消费机制核:翻译经 t('key') 字面量加载(app_localizations.dart,rootBundle 唯一加载方;无 .arb 源、无 l10n.yaml → 非生成物,可动)
  2. 差集管线:en.json 94 键 vs dart 消费集;词边界正则修正后 31 候选
  3. 三元假阳性剔除:chat_screen/connect_screen 存在 t(cond ? 'a' : 'b') 三元传键 → relay_sync.* 8 键判活保留
  4. 全仓 grep -rF 逐键双验(dart/go/ts/js,排除 translations 自身)→ 23 键零引用
  5. 动态拼接三验:插值调用、前缀拼接(如 'connect.status_' +)、_translations[] 直访——全清
  6. PR 碰撞核:七在途 PR(chore(tui): remove 9 dead mode.* i18n keys across 10 language catalogs (r61 scan) #4317/chore(tui): remove 55 dead channel/target/default/error.disabled i18n keys (r64, pool batch 3) #4321/chore(tui): remove 52 dead label/memory/tool/hooks/agents i18n keys (r65, pool batch 4) #4325/chore(tui): remove 12 dead hint/todo/session/checkpoint i18n keys (r66, pool final batch) #4327/chore(tui): remove 24 dead agent/plugins/image/misc i18n keys (r67, pool batch 1) #4328/chore: remove confirmed dead i18n keys (r68 wave, 18 keys) #4329/chore(tui): remove 80 dead module-catalog i18n keys (r69 wave, provider-map domain) #4330)均 0 个 mobile 文件

三重核(防假成功)

  • ✅ diff stat 非空:10 files / 230 deletions
  • ✅ residue 重验:23 键在 10 文件中零残留;10 文件键集 parity=71,且 71 = 直接消费 63 + 三元消费 8,精确闭合(零过删零漏删)
  • ✅ 测试:flutter test test/l10n_assets_test.dart +2 All passed;go build -tags goolm ./... RC=0(GOFLAGS=-p=1 GOMEMLIMIT=2GiB GOGC=50)

无 dart 代码改动;存活键全数保留。settings.title 与 desktop wails 前端独立 i18n 系统同名键无关(mobile 域内零引用已双验)。

Co-Authored-By: ggcode <noreply@ggcode.dev>
@topcheer

Copy link
Copy Markdown
Owner Author

[ggcxf 走读] GO:mobile/flutter 23 死键(connect/workspace/tool/status/settings/chat/cron/session 族)×10 locale .arb 对称移除,+0/-230 纯删除(23×10=230 恰合,逐键 10 目录对称),与标题 23 键自洽,无逻辑面(r70 wave,desktop 侧 #4329 同族)。门面:CI Test=pending;approvals=0(ggaidev=read 通道断损同根因)。CI 绿+审批在案后进合并判定。

@topcheer

Copy link
Copy Markdown
Owner Author

[ggcxf 更新] CI 已全绿(Test=pass;CodeQL=skipping 为配置跳过非失败)。走读 GO 在案,仅剩审批面阻塞(approvals=0,ggaidev=read 通道未修复),留治理处置。

This branch has not been deployed

No deployments
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.

1 participant