GFramework/ai-plan/public/runtime-generator-boundary/traces/runtime-generator-boundary-trace.md
gewuyou 7288114e33 fix(game): 剥离运行时模块对生成器依赖
- 修复 GFramework.Game 对 SourceGenerators.Abstractions 的项目引用并移除未使用的枚举生成 attribute

- 新增 runtime-generator 边界校验脚本并接入 CI 与发布打包校验

- 更新 AGENTS、贡献文档与 ai-plan 跟踪,明确运行时模块禁止依赖生成器能力
2026-05-05 12:39:10 +08:00

1.1 KiB

Runtime / Generator Boundary Trace

2026-05-05

RGB-RP-001 Runtime package boundary repair

  • Trigger:
    • external consumers restoring GeWuYou.GFramework.Game failed because NuGet looked for GFramework.Core.SourceGenerators.Abstractions
    • repository inspection showed GFramework.Game had a direct project reference to a non-packable generator abstractions project and used [GenerateEnumExtensions]
  • Decisions:
    • treat the issue as a runtime/generator boundary violation, not as a missing publish target
    • remove the runtime-side attribute usage instead of turning generator abstractions into public runtime packages
    • add repository guardrails at both source-validation time and packed-package validation time
  • Expected implementation:
    • GFramework.Game removes the generator abstractions project reference
    • GFramework.Game removes the two unused enum generator attributes
    • CI and publish workflows run a dedicated boundary validator script
  • Immediate next step:
    • complete implementation and run Release build plus pack verification