Skip to content

feat(startup): Stage-0 全局状态治理 — CurrentSetting 一致性校验 + GameDb 多库字典 + LogType 固定标识 #482

Description

@AlianBlank

背景

C143 umbrella process-topology-isomorphism(计划中,planned)拆为 6 个子 change 落地。本 issue 实现 Stage-0 全局状态治理:修两颗已确认雷(D19 CurrentSetting set-once 静默吞配置;D20#2 GameDb._dbServiceImplementation 二次 Init 静默覆盖)+ D20#4 LogType 固定标识 + D20 12 项台账登记。

设计源:gfx-doc/dev/online-platform/process-topology-isomorphism-design-2026-09-21.md § D19 / D20 / D16。
Change 文件:gfx-doc/dev/startup/changes/C143a-process-topology-stage0a-currentsetting-globalstate/change.md
Umbrella:gfx-doc/dev/startup/changes/C143-process-topology-isomorphism/change.md

范围

  • AppSetting 字段分区标注([ProcessLevel] / [RoleLevel]),97 处消费分类成表。
  • GlobalSettings.SetCurrentSetting 一致性校验(进程级字段冲突 fail fast,列冲突字段与来源段)。
  • GameDb.InitDbOptions.Name 多库注册;控制库 gameframex_control 缺省回落(单库 D-Single 形态)。
  • GameApp.Start 多 Role 下 LogType 固定标识。
  • 启动链依赖顺序:控制库先行于业务库。
  • D20 台账 12 项清单入 startup/spec.md

任务

  • D19 普查 97 处 CurrentSetting 消费,输出字段分区表
  • SettingFieldLevel 枚举 + SettingFieldLevelAttribute 实现
  • AppSetting 字段按普查表逐一标注
  • GlobalSettings.SetCurrentSetting 一致性校验(含 SettingConflictException + 单元测试)
  • DbOptions 类(含 Name 缺省 "default"
  • MultiDbRegistry 多库字典(线程安全)
  • GameDb.Init(string, DbOptions) 多库重载;控制库缺省回落
  • 启动链调整:控制库先行于业务库
  • GameApp.Start 多 Role 分支 LogType 固定标识
  • D20 台账 12 项清单写入 startup/spec.md
  • 单 Role smoke test 对照基准(确保零行为变化)
  • dotnet test 全绿 + 新增校验单元测试通过

验收

依赖

  • 依赖:无(依赖链入口)
  • 阻塞:C143b、C143d、C143f

标签约定

P1 project:gameframex.server.source blocked-by-dependency(无依赖,blocked 标签本 issue 不带;后续子 issue 在依赖 C143a 时带 blocked-by-dependency

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions