Skip to content

强化元数据国际化约定(对象优先/全局分离),为自动检测和工作台优化结构 #845

Closed

Description

@hotlong

背景

当前的元数据翻译 key 采用 category-first(按类别分散)结构,翻译覆盖但实际渲染/维护体验较差,且冗余严重。Salesforce、Dynamics 等主流平台采用以对象为单位聚合的国际化元数据布局,大幅提升翻译工作台和运行时自动检测能力。

方案 (Spec 协议和 API Runtime 优化)

1. 新增对象优先的国际化规范协议

将 category-first flat key 约定升级为 object-first,嵌套所有对象可翻译内容,见下方结构:

const zh = {
  o: {
    account: {
      label: '客户',
      description: '......',
      _options: { industry: { ... } },
      _views: { ... },
      _sections: { ... },
      _actions: { ... },
      // 预留 helpText/placeholder/pluralLabel
    },
    ...
  },
  _globalOptions: { ... },
  dashboard: { ... },
  pages: { ... },
};
  • 以o.{object}为根,将label/description, field, picklist, view, section, action(及params)等所有相关翻译聚合。
  • category/fieldOptions/reports/dashboard.columns冗余节点将被移除,字段与选项复用。
  • 全局(非对象绑定)翻译保持原有分组(app,nav,dashboard,reports,pages等)。

更新协议文档与 Zod Schema :

  • ui/i18n.zod.ts 新增 ObjectTranslationNodeSchema/AppTranslationBundleSchema、更新国际化约定 markdown 说明文档
  • contracts/i18n-service.ts 扩展国际化服务接口支持以object级别聚合生成、diff检测

2. API Runtime与CLI/Workbench约定升级

  • 新增API: 输入完整metadata与locale bundle可返回所有缺失、冗余、陈旧翻译项(支持object维度聚合结果)
  • CLI工具自动检测、导出object优先的翻译骨架
  • 文档与测试覆盖调整

验收标准

  • 协议与示例schema同步
  • 完整的object-first结构生成/检测能力
  • API/CLI/Workbench三处完全一致的约定兼容
  • 测试与ROADMAP文档同步

如需协作/CLI采样脚本/Bench交互设计可随时跟进补充。

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

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions