Skip to content

Docs/sdk update documentation#271

Merged
GeWuYou merged 11 commits into
mainfrom
docs/sdk-update-documentation
Apr 23, 2026
Merged

Docs/sdk update documentation#271
GeWuYou merged 11 commits into
mainfrom
docs/sdk-update-documentation

Conversation

@GeWuYou
Copy link
Copy Markdown
Owner

@GeWuYou GeWuYou commented Apr 23, 2026

Summary by CodeRabbit

文档

  • 新文档页面

    • 新增 GFramework.Ecs.Arch.Abstractions 契约层文档和 CQRS 处理程序注册生成器专项文档
  • 文档重组与导航优化

    • 模块 README 扩展模块边界说明、契约地图和 XML 文档覆盖基线
    • 更新文档站点导航链接和模块入口指引
    • 重新组织 ECS、Core、Game 和 CQRS 模块的文档结构和采用路径说明
  • 文档治理

    • 增加内部文档完整性治理跟踪,归档已完成的治理议题

GeWuYou added 10 commits April 22, 2026 14:23
- 归档 documentation-governance-and-refresh 截至 2026-04-22 的跟踪与 trace 历史

- 更新 active tracking 与 trace,只保留恢复点、风险、验证结果和下一步

- 补充 Godot 栏目稳定性复核后的归档决策与 PR #268 follow-up 入口
- 迁移 documentation-governance-and-refresh 主题到 public archive 目录

- 更新 public README 的 active topic 与 worktree 映射

- 收口归档内 tracking 和 trace 的完成状态与恢复说明
- 新增 documentation-full-coverage-governance active topic 与首轮 inventory、trace 入口
- 补充 GFramework.Ecs.Arch.Abstractions README、抽象接口页面与导航映射
- 更新 API 参考页与根 README,明确内部支撑模块 owner 和阅读链路
- 更新 Core 与 Core.Abstractions README 的目录映射和 XML 阅读入口

- 重写 Core Abstractions 页面,改为契约边界与最小接入路径说明

- 补充 Core landing page、API 参考入口和 ai-plan 跟踪记录
- 补充 Core 与 Core.Abstractions README 的类型族级 XML 覆盖基线入口

- 更新 Core 与 Core.Abstractions landing page 的 XML inventory、代表类型和阅读重点

- 同步刷新 documentation-full-coverage-governance 的 tracking 与 trace 恢复点
- 重写 Ecs.Arch README 与 ecs 栏目页面,使采用路径对齐当前源码和集成测试

- 补充 Ecs.Arch.Abstractions 的 XML inventory 与抽象页阅读链路

- 更新 documentation-full-coverage-governance 的恢复点、验证结果和下一波次计划
- 更新 Cqrs family landing、API 参考与 source-generators 导航

- 新增 CQRS handler registry 专题页并补充 XML inventory

- 补充 runtime 与 generator 内部类型 XML 注释

- 记录 RP-004 验证结果与后续恢复点
- 更新 Game family README、landing 与 abstractions 页面,补齐声明级 XML inventory 入口

- 修复 Game.Abstractions 页面与当前源码不一致的旧接口摘录,改写为真实契约边界与最小接入路径

- 补充 ai-plan 跟踪与 trace,推进恢复点到 RP-005 并记录验证结果
- 更新 AGENTS.md,优先使用显式 --git-dir 与 --work-tree 绑定操作 worktree Git

- 补充 git.exe 在当前会话不可执行时的 fallback 规则,避免重复命中 Exec format error

- 更新 documentation-full-coverage-governance 的 tracking 与 trace,记录已验证的 Git 使用方式
- 更新 documentation-full-coverage-governance 恢复点到 RP-007
- 记录 Game family 巡检通过且未发现回漂
- 补充 docs build 验证结果与后续恢复建议
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 23, 2026

Warning

Rate limit exceeded

@GeWuYou has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 3 minutes and 35 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 3 minutes and 35 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: baf2cfe9-fe98-431f-b754-ceb970f28b03

📥 Commits

Reviewing files that changed from the base of the PR and between 737dd5d and df91d37.

📒 Files selected for processing (9)
  • .agents/skills/gframework-pr-review/SKILL.md
  • .agents/skills/gframework-pr-review/scripts/fetch_current_pr_review.py
  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/documentation-full-coverage-governance/archive/todos/documentation-full-coverage-governance-validation-history-through-rp-007.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • docs/zh-CN/ecs/index.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
📝 Walkthrough

Walkthrough

此PR更新了多个GFramework模块的文档、README和源代码XML注释。包括AGENTS.md的Git工作流指导、多个模块README的文档重组、源代码注释补充、VitePress导航配置调整、以及ai-plan治理主题的迁移和跟踪文档。不涉及代码逻辑或API行为变更。

Changes

组群 / 文件 摘要
WSL Git工作流指导
AGENTS.md
更新WSL Git命令执行优先级,现在优先使用带--git-dir/--work-tree的Linux git,Windows git.exe作为备选,添加Exec format error处理规则,调整错误恢复流程。
核心模块README文档
GFramework.Core.Abstractions/README.md, GFramework.Core/README.md
重组文档结构,从单一目录列表改为分组目录族,新增XML覆盖基线清单和类型族级别的覆盖统计,扩展文档入口和API参考链接。
ECS模块README文档
GFramework.Ecs.Arch.Abstractions/README.md, GFramework.Ecs.Arch/README.md
新增Ecs.Arch.Abstractions说明文档,Ecs.Arch README改写为运行时实现包定位,删除冗长教程,添加最小接入路径和XML阅读基线表格。
其他模块README文档
GFramework.Game.Abstractions/README.md, GFramework.Game.SourceGenerators/README.md, GFramework.Game/README.md
新增或补充XML覆盖基线清单段落,报告按子系统的类型级XML注释覆盖情况和代表性类型。
源代码XML文档注释
GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs, GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
补充OrderedRegistrationKindRuntimeTypeReferenceSpec和三个内部元数据类的详细XML文档注释,覆盖类型说明、工厂方法和属性定义,无逻辑变更。
项目根README和VitePress配置
README.md, docs/.vitepress/config.mts
在模块映射中添加GFramework.Ecs.Arch.Abstractions条目,新增内部支持模块说明段落,更新VitePress中文边栏导航链接(CQRS Handler Registry生成器、Ecs.Arch Abstractions)。
文档页面和导航
docs/zh-CN/abstractions/*, docs/zh-CN/core/*, docs/zh-CN/ecs/*, docs/zh-CN/game/index.md, docs/zh-CN/source-generators/*, docs/zh-CN/api-reference/index.md
重写抽象层和运行时模块文档:添加前置元数据、契约映射表、最小接入路径示例、XML覆盖基线表格、边界澄清和读取导航。新增CQRS Handler Registry生成器专题文档。API参考页转换为导航指南。
ai-plan治理主题和档案
ai-plan/public/README.md, ai-plan/public/archive/documentation-governance-and-refresh/*, ai-plan/public/documentation-full-coverage-governance/*
documentation-governance-and-refresh主题迁移至档案,新增documentation-full-coverage-governance活跃主题,补充追踪和恢复点文档,记录多模块XML覆盖治理进展、验证步骤和后续行动。

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed 标题"Docs/sdk update documentation"明确指出了此PR的主要变更范围——文档更新,与PR中所有涉及文档、README、markdown文件的重大修改完全相关,准确反映了核心改动内容。
Docstring Coverage ✅ Passed Docstring coverage is 85.71% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/sdk-update-documentation

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

Summary

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Other ❓ Flaky 🍂 Duration ⏱️
2145 2145 0 0 0 0 35.7s    ↑4.3s

Test Results

passed 2145 passed

Details

tests 2145 tests
clock 35.7s ↑4.3s
tool nunit
build CI - Build & Test arrow-right build-and-test link #933
pull-request Docs/sdk update documentation link #271

Insights

Average Tests per Run Total Flaky Tests Total Failed Slowest Test (p95)
2128 0 0 30.0s

build-and-test: Run #933

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Pending ⏳ Other ❓ Flaky 🍂 Duration ⏱️
2145 2145 0 0 0 0 0 35.7s

🎉 All tests passed!

Slowest Tests

Test 📝 Results 📊 Duration (avg) ⏱️ Duration (p95) ⏱️
Append_FromMultipleThreads_ShouldHandleConcurrency 12 2.5s 30.0s
Does_Not_Report_When_FieldInjectedModel_Is_Registered 12 2.7s 5.7s
Generates_Scene_Behavior_Boilerplate 12 2.3s 5.4s
SendRequestAsync_Should_ResolveCqrsRuntime_OnlyOnce_When_AccessedConcurrently 12 4.2s 4.8s
Context_Caching_Should_Improve_Performance 12 835ms 1.1s
CleanupDuringAcquire_Should_NotCauseRaceCondition 12 1.1s 1.1s
Append_ShouldNotBlock 12 1.0s 1.0s
RegisterCqrsHandlersFromAssembly_Should_Deduplicate_Repeated_Assembly_Registration 12 300ms 975ms
ConfigModuleCanRunDuringArchitectureInitialization 12 271ms 965ms
LoadAsync_Should_Copy_Registered_Text_Assets_Into_Runtime_Cache_When_Source_Is_Res_Path 12 147ms 574ms

± Comparison with run #928 at 987bf68 | 🎉 No failed tests detected across all runs. | 🍂 No flaky tests detected across all runs. | ⏱️ Measured over 12 runs.

Github Test Reporter by CTRF 💚

@greptile-apps
Copy link
Copy Markdown

greptile-apps Bot commented Apr 23, 2026

Greptile Summary

This PR delivers a documentation refresh and SDK update pass across GFramework's ECS, Core, CQRS, and Game modules. The changes include new dedicated pages for GFramework.Ecs.Arch.Abstractions and the CQRS Handler Registry source generator, a major rewrite of docs/zh-CN/ecs/arch.md from a tutorial-style guide to a concise runtime-responsibility reference, and XML documentation additions to private types inside CqrsHandlerRegistryGenerator and CqrsHandlerRegistrar. Developer-tooling files are also updated: AGENTS.md revises the WSL Git strategy to prefer explicit --git-dir/--work-tree Linux bindings over git.exe, and the PR-review skill script is extended with heuristic worktree resolution so it can auto-detect the correct gitdir without requiring manual env-var configuration.

  • New docs/zh-CN/abstractions/ecs-arch-abstractions.md and GFramework.Ecs.Arch.Abstractions/README.md document the contract boundary between the abstractions layer and the default runtime; the previously-flagged misplaced "边界提醒" source-generator block is no longer present — it has been relocated to the parent abstractions/index.md as the "当前边界" section.
  • New docs/zh-CN/source-generators/cqrs-handler-registry-generator.md covers the generator's adoption path, runtime consumption flow, fallback semantics, and GF_Cqrs_001 diagnostic meaning.
  • docs/zh-CN/core/cqrs.md is expanded with a module-family boundary table, a step-by-step registration sequence, and an XML coverage inventory.
  • VitePress nav gains two new entries pointing to files that exist in this PR; no broken navigation links were introduced.
  • fetch_current_pr_review.py adds resolve_git_invocation() with environment-variable override and heuristic worktree auto-detection; one minor style issue: partial env-var configuration (only one of the two binding variables set) is silently discarded rather than warned about.

Confidence Score: 5/5

Safe to merge — no functional code changes; documentation and tooling improvements only.

All C# changes are pure XML documentation additions with no logic impact. The Python script enhancement is self-contained with correct fallback behaviour. Documentation navigation links point to files added in this PR. The one P2 style suggestion (partial env-var warning) is a non-blocking improvement. The previously-flagged misplaced boundary section has been resolved.

fetch_current_pr_review.py — minor style improvement possible for partial env-var config handling, but not a blocker.

Important Files Changed

Filename Overview
GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs Adds XML documentation comments to private enum, private sealed record, and factory methods — no logic changes.
GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs Adds XML documentation to three private nested types and their properties — no logic changes.
.agents/skills/gframework-pr-review/scripts/fetch_current_pr_review.py Adds explicit WSL worktree git-dir resolution via new resolve_git_invocation(), find_repository_root(), and resolve_worktree_git_dir() helpers; one style issue with partial env-var config being silently discarded.
AGENTS.md Revises WSL git strategy to prefer explicit Linux git --git-dir/--work-tree binding over git.exe, with clear priority order and fallback rules.
docs/.vitepress/config.mts Adds two navigation entries — CQRS Handler Registry and Ecs.Arch Abstractions — both pointing to files that exist in this PR.
docs/zh-CN/source-generators/cqrs-handler-registry-generator.md New page documenting the CQRS Handler Registry generator with install path, runtime consumption flow, fallback boundary, and diagnostic GF_Cqrs_001 explanation.
docs/zh-CN/abstractions/ecs-arch-abstractions.md New page documenting Ecs.Arch Abstractions contract boundary, package relationships, and minimum adoption path; misplaced source-generator boundary section from previous review iteration is no longer present.
GFramework.Ecs.Arch.Abstractions/README.md New module README covering contract map, XML baseline, and minimal usage examples for the abstractions layer.
docs/zh-CN/ecs/arch.md Major rewrite: removes extensive concept/Q&A content, replaces with focused runtime responsibility table, XML inventory, and concise step-by-step adoption path.
.agents/skills/gframework-pr-review/SKILL.md Fixes stale .codex/ → .agents/ script paths and updates WSL git strategy guidance to match revised AGENTS.md policy.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[resolve_git_invocation] --> B{GFRAMEWORK_GIT_DIR\n+ GFRAMEWORK_WORK_TREE\n+ linux git?}
    B -- Yes --> C["[linux_git, --git-dir=..., --work-tree=...]"]
    B -- No --> D[find_repository_root\nfrom cwd]
    D --> E{Root found\n+ linux git?}
    E -- Yes --> F[resolve_worktree_git_dir\ncheck parent == GFramework-WorkTree]
    F --> G{worktree gitdir\nexists?}
    G -- Yes --> H["[linux_git, --git-dir=worktrees/name, --work-tree=root]"]
    G -- No --> I[resolve_git_command\ngit.exe or env override]
    E -- No --> I
    I --> J{git.exe\nresolvable?}
    J -- Yes --> K[git.exe]
    J -- No --> L[RuntimeError]
Loading
Prompt To Fix All With AI
This is a comment left during a code review.
Path: .agents/skills/gframework-pr-review/scripts/fetch_current_pr_review.py
Line: 109-125

Comment:
**Partial env-var config silently falls through to auto-detection**

When only one of `GFRAMEWORK_GIT_DIR` / `GFRAMEWORK_WORK_TREE` is set, the `if configured_git_dir and configured_work_tree and linux_git` guard evaluates to `False` and the function silently ignores the partially-configured binding, falling through to the heuristic auto-detection path. A developer who sets only one variable will get no warning that their explicit config was discarded.

Consider emitting a warning (or raising) when exactly one of the two variables is set:

```python
if bool(configured_git_dir) != bool(configured_work_tree):
    import warnings
    warnings.warn(
        f"Both {GIT_DIR_ENVIRONMENT_KEY} and {WORK_TREE_ENVIRONMENT_KEY} must be set together; "
        "ignoring the partial configuration and falling back to auto-detection.",
        stacklevel=2,
    )
```

How can I resolve this? If you propose a fix, please make it concise.

Reviews (2): Last reviewed commit: "fix(docs): 修复 PR 评审遗留与 Git 抓取" | Re-trigger Greptile

Comment thread docs/zh-CN/abstractions/ecs-arch-abstractions.md Outdated
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 23, 2026

⚠️MegaLinter analysis: Success with warnings

Descriptor Linter Files Fixed Errors Warnings Elapsed time
⚠️ CSHARP dotnet-format yes 1 no 5.06s
✅ REPOSITORY gitleaks yes no no 7.06s
✅ REPOSITORY trufflehog yes no no 6.2s

Detailed Issues

⚠️ CSHARP / dotnet-format - 1 error
Welcome to .NET 9.0!
---------------------
SDK Version: 9.0.114

----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate, run 'dotnet dev-certs https --trust'
Learn about HTTPS: https://aka.ms/dotnet-https

----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Unhandled exception: System.Exception: Restore operation failed.
   at Microsoft.CodeAnalysis.Tools.CodeFormatter.OpenMSBuildWorkspaceAsync(String solutionOrProjectPath, WorkspaceType workspaceType, Boolean noRestore, Boolean requiresSemantics, String binaryLogPath, Boolean logWorkspaceWarnings, ILogger logger, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.Tools.CodeFormatter.FormatWorkspaceAsync(FormatOptions formatOptions, ILogger logger, CancellationToken cancellationToken, String binaryLogPath)
   at Microsoft.CodeAnalysis.Tools.FormatCommandCommon.FormatAsync(FormatOptions formatOptions, ILogger`1 logger, CancellationToken cancellationToken)
   at Microsoft.CodeAnalysis.Tools.Commands.RootFormatCommand.FormatCommandDefaultHandler.InvokeAsync(ParseResult parseResult, CancellationToken cancellationToken)
   at System.CommandLine.Invocation.InvocationPipeline.InvokeAsync(ParseResult parseResult, CancellationToken cancellationToken)

See detailed reports in MegaLinter artifacts
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security
Show us your support by starring ⭐ the repository

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (1)
docs/zh-CN/source-generators/cqrs-handler-registry-generator.md (1)

60-68: 建议补充“marker 类型放置与命名约定”。

多程序集示例已使用 marker,但建议再补一句约定(例如放在每个业务程序集的 Application/Markers 或等价目录、命名规范与唯一性),方便团队统一实践。

As per coding guidelines "For integration-oriented features... documentation MUST cover project directory layout and file conventions, required project or package wiring, minimal working usage example..."

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/zh-CN/source-generators/cqrs-handler-registry-generator.md` around lines
60 - 68, 在多程序集示例中缺少对 marker 类型放置与命名约定的说明;请在使用 RegisterCqrsHandlersFromAssemblies
的示例附近补充一条约定性说明,指出像 InventoryCqrsMarker 和 BattleCqrsMarker 这类 marker
应放在各自业务程序集的统一位置(例如 Application/Markers 或等价目录)、采用一致的命名模式(如
*CqrsMarker)并保证每程序集仅有唯一 marker 类型,以便团队能统一查找与注册 handler。
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md`:
- Around line 19-22: The validation section currently only lists the command `cd
docs && bun run build`; update the "验证" section to include an explicit result
state (e.g., "通过" or "失败"), a one-line summary of key output (e.g., "通过;无构建错误,
生成 X 页, 警告: Y"), and paste or reference the relevant snippet of the build output
or top-line error messages so readers can quickly assess the validation status;
ensure you modify the "验证" block that contains the `cd docs && bun run build`
entry and include the timestamp and who ran the check for traceability.

In
`@ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md`:
- Around line 97-168: The "验证说明" section contains excessive repeated validation
history; compress it by archiving detailed repetitive entries and leaving only a
concise active summary: the latest successful validation result, any current
blocking failure (e.g., the GFramework.Cqrs multi-target build failure causing
MSB4276/MSB4018), and the immediate next recovery action; move the long list of
individual command runs and dated rebuild notes into a trace/archive (e.g., a
linked "validation-archive" section) and update the "验证说明" header content to
reference that archive while presenting only "最新验证结论、当前阻塞、下一步恢复动作" so readers
can locate the current recovery point quickly.

In `@docs/zh-CN/ecs/index.md`:
- Line 134: Adjust the sentence at the noted location to improve readability by
reordering the phrase: replace the existing clause that reads like “把‘可能支持的其他
ECS 框架’写成现有能力会误导采用路径” (or similar) with the suggested clearer wording
“把‘未来可能支持的其他 ECS 框架’写成现有能力会误导采用路径”, ensuring the new wording exactly matches the
suggested phrase and preserves surrounding context and punctuation in the
markdown.

---

Nitpick comments:
In `@docs/zh-CN/source-generators/cqrs-handler-registry-generator.md`:
- Around line 60-68: 在多程序集示例中缺少对 marker 类型放置与命名约定的说明;请在使用
RegisterCqrsHandlersFromAssemblies 的示例附近补充一条约定性说明,指出像 InventoryCqrsMarker 和
BattleCqrsMarker 这类 marker 应放在各自业务程序集的统一位置(例如 Application/Markers
或等价目录)、采用一致的命名模式(如 *CqrsMarker)并保证每程序集仅有唯一 marker 类型,以便团队能统一查找与注册 handler。
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 5ff6c8f2-20d4-4947-8fb4-49c4d2768848

📥 Commits

Reviewing files that changed from the base of the PR and between b2a5555 and 737dd5d.

📒 Files selected for processing (34)
  • AGENTS.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • GFramework.Ecs.Arch.Abstractions/README.md
  • GFramework.Ecs.Arch/README.md
  • GFramework.Game.Abstractions/README.md
  • GFramework.Game.SourceGenerators/README.md
  • GFramework.Game/README.md
  • README.md
  • ai-plan/public/README.md
  • ai-plan/public/archive/documentation-governance-and-refresh/archive/todos/documentation-governance-and-refresh-history-through-2026-04-18.md
  • ai-plan/public/archive/documentation-governance-and-refresh/archive/todos/documentation-governance-and-refresh-history-through-2026-04-22.md
  • ai-plan/public/archive/documentation-governance-and-refresh/archive/traces/documentation-governance-and-refresh-history-through-2026-04-18.md
  • ai-plan/public/archive/documentation-governance-and-refresh/archive/traces/documentation-governance-and-refresh-history-through-2026-04-22.md
  • ai-plan/public/archive/documentation-governance-and-refresh/archive/traces/documentation-governance-and-refresh-rp-001-through-rp-008.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • docs/.vitepress/config.mts
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • docs/zh-CN/abstractions/game-abstractions.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/api-reference/index.md
  • docs/zh-CN/core/cqrs.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • docs/zh-CN/game/index.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • docs/zh-CN/source-generators/index.md
📜 Review details
⏰ Context from checks skipped due to timeout of 900000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Build and Test
  • GitHub Check: Code Quality & Security
  • GitHub Check: Analyze (C#)
🧰 Additional context used
📓 Path-based instructions (11)
**/README.md

📄 CodeRabbit inference engine (AGENTS.md)

A module README MUST describe the module's purpose, the relationship to adjacent runtime/abstractions/generator packages, the major subdirectories/subsystems, the minimum adoption path, and the corresponding docs/zh-CN/ entry points

Use the canonical filename README.md in module directories; do not introduce new ReadMe.md or other filename variants

If a module's responsibilities, setup, public API surface, generator inputs, or adoption path change, update that module's README.md in the same change

Files:

  • GFramework.Game.SourceGenerators/README.md
  • GFramework.Game.Abstractions/README.md
  • GFramework.Ecs.Arch.Abstractions/README.md
  • GFramework.Game/README.md
  • ai-plan/public/README.md
  • README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • GFramework.Ecs.Arch/README.md
**/{README.md,docs/**/*.md}

📄 CodeRabbit inference engine (AGENTS.md)

Update the relevant README.md or docs/ page when behavior, setup steps, architecture guidance, or user-facing examples change

Keep code samples, package names, and command examples in documentation aligned with the current repository state

Prefer documenting behavior and design intent in documentation, not only API surface

Do not rely on "the code is self-explanatory" for framework features that consumers need to adopt; write the adoption path down so future users do not need to rediscover it from source

When examples are rewritten in documentation, preserve only the parts that remain true; delete or replace speculative examples instead of lightly editing them into another inaccurate form

Files:

  • GFramework.Game.SourceGenerators/README.md
  • docs/zh-CN/game/index.md
  • docs/zh-CN/source-generators/index.md
  • GFramework.Game.Abstractions/README.md
  • GFramework.Ecs.Arch.Abstractions/README.md
  • GFramework.Game/README.md
  • docs/zh-CN/api-reference/index.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • ai-plan/public/README.md
  • README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/abstractions/game-abstractions.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • GFramework.Ecs.Arch/README.md
  • docs/zh-CN/core/cqrs.md
docs/**/*.md

📄 CodeRabbit inference engine (CLAUDE.md)

Documentation should be organized with Chinese content in docs/zh-CN/ and structured to include getting started, module-specific capabilities (Core, Game, Godot, ECS), source generator usage, tutorials, best practices, and troubleshooting

If a docs category appears in VitePress navigation or sidebar, it MUST have a real landing page or be removed from navigation in the same change

Files:

  • docs/zh-CN/game/index.md
  • docs/zh-CN/source-generators/index.md
  • docs/zh-CN/api-reference/index.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/abstractions/game-abstractions.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • docs/zh-CN/core/cqrs.md
docs/zh-CN/**/*.md

📄 CodeRabbit inference engine (AGENTS.md)

For integration-oriented features such as the AI-First config system, documentation MUST cover project directory layout/file conventions, required project/package wiring, minimal working usage example, and migration/compatibility notes when behavior changes

Files:

  • docs/zh-CN/game/index.md
  • docs/zh-CN/source-generators/index.md
  • docs/zh-CN/api-reference/index.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/abstractions/game-abstractions.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • docs/zh-CN/core/cqrs.md
ai-plan/public/**

📄 CodeRabbit inference engine (AGENTS.md)

Contributors MUST keep committed ai-plan/public/** content safe to publish in Git history; never write secrets, tokens, credentials, private keys, machine usernames, home-directory paths, hostnames, IP addresses, proprietary URLs, or other sensitive environment details

When working from a tracked implementation plan, contributors MUST update the corresponding tracking document under ai-plan/public/<topic>/todos/ in the same change

Tracking updates MUST reflect completed work, newly discovered issues, validation results, and the next recommended recovery point; active tracking and trace files are recovery entrypoints, not append-only changelogs, and MUST stay concise enough for boot to locate the current recovery point quickly

For any multi-step refactor, migration, or cross-module task, contributors MUST create or adopt a dedicated recovery document under ai-plan/public/<topic>/todos/ before making substantive code changes

Recovery documents MUST record the current phase, the active recovery point identifier, known risks, and the next recommended resume step so another contributor or subagent can continue the work safely

Contributors MUST maintain a matching execution trace under ai-plan/public/<topic>/traces/ for complex work, recording the current date, key decisions, validation milestones, and the immediate next step

When completed and validated stages begin to accumulate, contributors MUST archive their detailed history out of the active todos/ and traces/ entry files in the same change, keeping only the current recovery point, active facts, active risks, immediate next step, and pointers to relevant archive files

When a topic is fully complete, move the entire topic directory under ai-plan/public/archive/<topic>/ and remove it from ai-plan/public/README.md in the same change

When a task spans multiple commits or is likely to exceed a single agent context window, update both the recovery document and the trace at each meaningful milesto...

Files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
ai-plan/**

📄 CodeRabbit inference engine (AGENTS.md)

Never record absolute file-system paths in ai-plan/**; use repository-relative paths, branch names, PR numbers, or stable document identifiers instead

Files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
**/*.cs

📄 CodeRabbit inference engine (CLAUDE.md)

**/*.cs: Apply [Log] attribute for automatic logging field and logging helper method generation
Apply [Priority] attribute for automatic priority comparison implementation generation
Apply [GenerateEnumExtensions] attribute to generate enumeration extension capabilities
Apply [ContextAware] attribute to automatically implement IContextAware boilerplate logic

All public, protected, and internal types and members MUST include XML documentation comments (///) with <summary>, <param>, <returns>, <exception>, and <remarks> where applicable

Add inline comments for non-trivial logic, concurrency/threading behavior, performance-sensitive paths, workarounds/compatibility constraints/edge cases, and registration/lifecycle/generated code assumptions in C# code

Methods with non-trivial logic MUST document the core idea, key decisions, and edge case handling in C# code

Do not rely on implicit imports; declare every required using explicitly in C# code

Write null-safe code that respects nullable annotations instead of suppressing warnings by default in C#

Use the namespace pattern GFramework.{Module}.{Feature} with PascalCase segments in C# code

Follow standard C# naming: Types, methods, properties, events, and constants use PascalCase; interfaces use I prefix; parameters and locals use camelCase; private fields use _camelCase

Use 4 spaces for indentation; do not use tabs in C# code

Use Allman braces in C# code

Keep using directives at the top of C# files and sort them consistently

Separate logical blocks with blank lines in C# code when it improves readability

Prefer one primary type per file in C# unless the surrounding project already uses a different local pattern

Keep a single C# source file under roughly 800-1000 lines; if a file grows beyond that range, contributors MUST stop and check whether responsibilities should be split before continuing

Keep line length readable; around 120 characters is the preferred upper bound in C# code

Pre...

Files:

  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
ai-plan/public/README.md

📄 CodeRabbit inference engine (AGENTS.md)

ai-plan/public/README.md MUST list only active topics; do not add ai-plan/public/archive/** content to the default boot index

When a worktree-to-topic mapping changes, or when a topic becomes active/inactive, contributors MUST update ai-plan/public/README.md in the same change

Files:

  • ai-plan/public/README.md
README.md

📄 CodeRabbit inference engine (AGENTS.md)

The repository root README.md MUST mirror the current top-level documentation taxonomy used by the docs site; do not maintain a second, differently named navigation system in the root README

Prefer linking the root README.md to section landing pages such as index.md instead of deep-linking to a single article when the target is intended to be a documentation category

Files:

  • README.md
**/Cqrs/**/*.cs

📄 CodeRabbit inference engine (CLAUDE.md)

Use CQRS (Command Query Responsibility Segregation) pattern with the Cqrs naming entry point instead of the historical Mediator alias

Files:

  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
**/*Generators*/**/*.cs

📄 CodeRabbit inference engine (AGENTS.md)

Generated logic and generator pipelines MUST explain what is generated, why it is generated, the semantic assumptions the generator relies on, and any diagnostics or fallback behavior

Source generator changes MUST be covered by generator tests; preserve snapshot-based verification patterns already used in the repository

When generator behavior changes intentionally, update snapshots together with the implementation

Keep source generators deterministic and free of hidden environment or network dependencies

Files:

  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
🧠 Learnings (35)
📓 Common learnings
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to docs/zh-CN/**/*.md : When a feature is added, removed, renamed, or substantially refactored, contributors MUST update or create the corresponding user-facing integration documentation in `docs/zh-CN/` in the same change. For integration-oriented features, documentation MUST cover project directory layout and file conventions, required project or package wiring, minimal working usage example, and migration or compatibility notes when behavior changes.
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Read `@.ai/environment/tools.ai.yaml` before choosing runtimes or CLI tools; prefer project-relevant tools listed there instead of assuming every installed system tool is fair game
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: When working in WSL against this repository's Windows-backed worktree, prefer Linux `git` with explicit `--git-dir=<repo>/.git/worktrees/<worktree-name>` and `--work-tree=<worktree-root>` binding for every repository command
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Every completed task MUST pass at least one build validation before it is considered done
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Commit messages MUST use Conventional Commits format: `<type>(<scope>): <summary>`, with summary in simplified Chinese and body using unordered list items with verbs like `新增`、`修复`、`优化`、`更新`、`补充`、`重构`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Keep technical terms in English in commit messages when they are established project terms, such as `API`、`Model`、`System`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Use multiple `-m` flags or ANSI-C `$'...'` quoting for multi-line commit bodies instead of relying on Bash `$"..."` quoting, so the commit body contains real line breaks
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: When a new task starts while the current branch is `main`, contributors MUST first try to update local `main` from the remote, then create and switch to a dedicated branch before making substantive changes
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Use branch naming rule `<type>/<topic-or-scope>` for new task branches, where `<type>` should match the intended Conventional Commit category
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Prefer invoking `$gframework-boot` skill when the user uses short startup prompts such as `boot`、`continue`、`next step`、`按 boot 开始`、`先看 AGENTS`、`继续当前任务`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Use subagents only when the task is complex, the context is likely to grow too large, or the work can be split into independent parallel subtasks; identify the critical path first and do not delegate the immediate blocking task
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Core framework components such as Architecture, Module, System, Context, Registry, Service Module, and Lifecycle types MUST include high-level explanations of responsibilities, lifecycle, interaction with other components, why the abstraction exists, and when to use it instead of alternatives
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Comments MUST NOT be trivial, redundant, or misleading; prefer explaining `why` and `when`, not just `what`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Missing required documentation is a coding standards violation; code that does not meet the documentation rules is considered incomplete
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Keep abstractions projects free of implementation details and engine-specific dependencies in C#
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Preserve existing module boundaries; do not introduce new cross-module dependencies without clear architectural need in C#
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Treat `Meziantou.Analyzer` feedback as part of the coding standard and SonarQube maintainability rules as part of the coding standard, especially cognitive complexity and oversized parameter list findings
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Every non-trivial feature, bug fix, or behavior change MUST include tests or an explicit justification for why a test is not practical
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Public API changes must be covered by unit or integration tests
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Every user-facing package or module directory that contains a `*.csproj` intended for direct consumption MUST have a sibling `README.md`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Adding a new top-level module directory without a `README.md` is considered incomplete work
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Treat `ai-libs/` as a read-only third-party source reference area; do not modify it unless the user explicitly asks to sync or update that third-party snapshot
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: When a feature is added, removed, renamed, or substantially refactored, contributors MUST update or create the corresponding user-facing integration documentation in `docs/zh-CN/` in the same change
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: If an existing documentation page no longer reflects the current implementation, fixing the code without fixing the documentation is considered incomplete work
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Use `ai-plan/public/**` only for durable, handoff-safe task state; put temporary notes, local experiments, or worktree-specific scratch recovery data under `ai-plan/private/`
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: Completing code changes without updating the active tracking document is considered incomplete work
Learnt from: CR
Repo: GeWuYou/GFramework

Timestamp: 2026-04-23T00:17:39.326Z
Learning: When a stage inside an active topic is fully complete, move the finished artifacts into that topic's `archive/` directory instead of leaving every completed step in the default boot path
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/SourceGenerators/**/*.cs : Source generator changes MUST be covered by generator tests. Preserve snapshot-based verification patterns already used in the repository. When generator behavior changes intentionally, update snapshots together with the implementation.

Applied to files:

  • GFramework.Game.SourceGenerators/README.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Generated logic and generator pipelines MUST explain what is generated, why it is generated, the semantic assumptions the generator relies on, and any diagnostics or fallback behavior.

Applied to files:

  • GFramework.Game.SourceGenerators/README.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to docs/zh-CN/**/*.md : When a feature is added, removed, renamed, or substantially refactored, contributors MUST update or create the corresponding user-facing integration documentation in `docs/zh-CN/` in the same change. For integration-oriented features, documentation MUST cover project directory layout and file conventions, required project or package wiring, minimal working usage example, and migration or compatibility notes when behavior changes.

Applied to files:

  • GFramework.Game.SourceGenerators/README.md
  • docs/zh-CN/game/index.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • GFramework.Game/README.md
  • docs/zh-CN/api-reference/index.md
  • docs/.vitepress/config.mts
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/abstractions/game-abstractions.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • GFramework.Ecs.Arch/README.md
  • docs/zh-CN/core/cqrs.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Applies to docs/**/*.md : Documentation should be organized with Chinese content in docs/zh-CN/ and structured to include getting started, module-specific capabilities (Core, Game, Godot, ECS), source generator usage, tutorials, best practices, and troubleshooting

Applied to files:

  • GFramework.Game.SourceGenerators/README.md
  • docs/zh-CN/game/index.md
  • docs/zh-CN/source-generators/index.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • docs/zh-CN/api-reference/index.md
  • docs/.vitepress/config.mts
  • docs/zh-CN/abstractions/index.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
  • README.md
  • GFramework.Core/README.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/README.md : Every user-facing package or module directory that contains a `*.csproj` intended for direct consumption MUST have a sibling `README.md`. Use the canonical filename `README.md`, not `ReadMe.md` or other variants. A module README MUST describe the module's purpose, relationship to adjacent runtime/abstractions/generator packages, major subdirectories or subsystems, the minimum adoption path, and corresponding `docs/zh-CN/` entry points.

Applied to files:

  • docs/zh-CN/game/index.md
  • GFramework.Ecs.Arch.Abstractions/README.md
  • docs/zh-CN/api-reference/index.md
  • README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • docs/zh-CN/core/index.md
  • GFramework.Ecs.Arch/README.md
  • docs/zh-CN/core/cqrs.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Applies to **/*{Startup,Init,Register,Setup,Configure}*.cs : CQRS handler registration should use generated products from CqrsHandlerRegistryGenerator at runtime, falling back to reflection scanning when generation cannot cover cases; explicitly register handlers from non-default assemblies using RegisterCqrsHandlersFromAssembly(...) or RegisterCqrsHandlersFromAssemblies(...)

Applied to files:

  • docs/zh-CN/source-generators/index.md
  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • docs/zh-CN/source-generators/cqrs-handler-registry-generator.md
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
  • docs/zh-CN/core/cqrs.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : All public, protected, and internal types and members MUST include XML documentation comments (`///`) with `<summary>`, `<param>`, `<returns>`, `<exception>`, and `<remarks>` tags where applicable. Comments must explain intent, contract, and usage constraints instead of restating syntax.

Applied to files:

  • GFramework.Game.Abstractions/README.md
  • GFramework.Game/README.md
  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Core framework components such as Architecture, Module, System, Context, Registry, Service Module, and Lifecycle types MUST include high-level explanations of responsibilities, lifecycle, interaction with other components, why the abstraction exists, and when to use it instead of alternatives.

Applied to files:

  • GFramework.Ecs.Arch.Abstractions/README.md
  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
  • GFramework.Ecs.Arch/README.md
  • docs/zh-CN/core/cqrs.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Applies to **/*Abstractions/**/*.cs : Abstractions projects should only contain interfaces and contract definitions without any runtime implementation logic

Applied to files:

  • GFramework.Ecs.Arch.Abstractions/README.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • README.md
  • GFramework.Core.Abstractions/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Keep abstractions projects free of implementation details and engine-specific dependencies. Preserve existing module boundaries. Do not introduce new cross-module dependencies without clear architectural need.

Applied to files:

  • GFramework.Ecs.Arch.Abstractions/README.md
  • docs/zh-CN/abstractions/index.md
  • docs/zh-CN/abstractions/ecs-arch-abstractions.md
  • README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to ai-plan/public/*/traces/*.md : Maintain a matching execution trace under `ai-plan/public/<topic>/traces/` for complex work. The trace should record the current date, key decisions, validation milestones, and the immediate next step. Update both the recovery document and the trace at each meaningful milestone before pausing or handing work off.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to ai-plan/public/*/todos/*.md : Contributors MUST keep `ai-plan/public/<topic>/todos/` recovery documents up-to-date with completed work, newly discovered issues, validation results, and the next recommended recovery point. For any multi-step refactor, migration, or cross-module task, create or adopt a dedicated recovery document before making substantive code changes. Recovery documents MUST record the current phase, the active recovery point identifier, known risks, and the next recommended resume step.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to ai-plan/public/README.md : `ai-plan/public/README.md` is the shared startup index that binds worktrees or branches to active topics and resume entry points. It MUST list only active topics. Do not add `ai-plan/public/archive/**` content to the default boot index. When a worktree-to-topic mapping changes, or when a topic becomes active/inactive, contributors MUST update `ai-plan/public/README.md` in the same change.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Treat existing `README.md` files and `docs/zh-CN/` pages as editable outputs, not authoritative truth. If existing documentation conflicts with code or tests, update the documentation to match the implementation instead of preserving outdated wording. Do not publish example code, setup steps, or package guidance that cannot be traced back to code, tests, or a verified consumer project.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • docs/zh-CN/api-reference/index.md
  • docs/.vitepress/config.mts
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
  • GFramework.Core.Abstractions/README.md
  • GFramework.Core/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/core/index.md
  • docs/zh-CN/ecs/index.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Treat source code, `*.csproj`, tests, generated snapshots, and packaging metadata as the primary evidence for documentation updates. Treat verified reference implementations under `ai-libs/` as a secondary evidence source for real project adoption patterns, directory layouts, and end-to-end usage examples.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/traces/documentation-governance-and-refresh-trace.md
  • docs/zh-CN/api-reference/index.md
  • ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
  • GFramework.Core.Abstractions/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/ecs/index.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to docs/**/*.md : Update the relevant `README.md` or `docs/` page when behavior, setup steps, architecture guidance, or user-facing examples change. Keep code samples, package names, and command examples aligned with the current repository state. Prefer documenting behavior and design intent, not only API surface. If an existing documentation page no longer reflects the current implementation, fixing the code without fixing the documentation is considered incomplete work.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • docs/zh-CN/api-reference/index.md
  • ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md
  • ai-plan/public/README.md
  • GFramework.Core.Abstractions/README.md
  • docs/zh-CN/abstractions/core-abstractions.md
  • docs/zh-CN/ecs/arch.md
  • docs/zh-CN/ecs/index.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: The main documentation site lives under `docs/`, with Chinese content under `docs/zh-CN/`. When examples are rewritten, preserve only the parts that remain true. Delete or replace speculative examples instead of lightly editing them into another inaccurate form.

Applied to files:

  • ai-plan/public/archive/documentation-governance-and-refresh/todos/documentation-governance-and-refresh-tracking.md
  • docs/zh-CN/api-reference/index.md
  • docs/.vitepress/config.mts
  • ai-plan/public/README.md
  • docs/zh-CN/core/index.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Add inline comments for non-trivial logic, concurrency or threading behavior, performance-sensitive paths, workarounds/compatibility constraints/edge cases, and registration order/lifecycle sequencing/generated code assumptions. Avoid obvious comments such as `// increment i`.

Applied to files:

  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Preserve deterministic behavior in registries, lifecycle orchestration, and generated outputs. When adding analyzers or suppressions, keep them minimal and justify them in code comments if the reason is not obvious.

Applied to files:

  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
📚 Learning: 2026-04-06T12:45:43.921Z
Learnt from: GeWuYou
Repo: GeWuYou/GFramework PR: 190
File: GFramework.Game/Config/GameConfigBootstrap.cs:1-3
Timestamp: 2026-04-06T12:45:43.921Z
Learning: In the GeWuYou/GFramework repository, C# files may omit explicit `using System*` imports because the project-wide `GlobalUsings.cs` (referenced via manual global `using` directives) supplies common namespaces (e.g., `System`, `System.Threading`, `System.Threading.Tasks`). During code review, do not flag missing `using System...` directives in `.cs` files as long as `GlobalUsings.cs` is present/used to provide those namespaces.

Applied to files:

  • GFramework.Cqrs/Internal/CqrsHandlerRegistrar.cs
  • GFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegistryGenerator.cs
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to README.md : The repository root `README.md` MUST mirror the current top-level documentation taxonomy used by the docs site. Do not maintain a second, differently named navigation system in the root README. Prefer linking the root `README.md` to section landing pages such as `index.md` instead of deep-linking to a single article when the target is intended to be a documentation category. If a docs category appears in VitePress navigation or sidebar, it MUST have a real landing page or be removed from navigation in the same change.

Applied to files:

  • docs/.vitepress/config.mts
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to **/*.cs : Use the namespace pattern `GFramework.{Module}.{Feature}` with PascalCase segments.

Applied to files:

  • README.md
  • GFramework.Core/README.md
📚 Learning: 2026-04-16T13:26:01.780Z
Learnt from: GeWuYou
Repo: GeWuYou/GFramework PR: 235
File: GFramework.SourceGenerators.Tests/Rule/ContextAwareGeneratorSnapshotTests.cs:1-3
Timestamp: 2026-04-16T13:26:01.780Z
Learning: In the GeWuYou/GFramework repository, the test project `GFramework.SourceGenerators.Tests` provides `global using NUnit.Framework;` via its `GlobalUsings.cs`. Do not flag missing `using NUnit.Framework;` directives in test files within this project, as the global using already covers it. The project-wide GlobalUsings.cs pattern is used broadly to supply common namespaces (including NUnit, System.IO, etc.) without per-file imports.

Applied to files:

  • README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Commit messages MUST use Conventional Commits format: `<type>(<scope>): <summary>`. The commit `summary` MUST use simplified Chinese and briefly describe the main change. The commit `body` MUST use unordered list items, and each item MUST start with a verb such as `新增`、`修复`、`优化`、`更新`、`补充`、`重构`. Each commit body bullet MUST describe one independent change point; avoid repeated or redundant descriptions. Keep technical terms in English when they are established project terms, such as `API`、`Model`、`System`.

Applied to files:

  • GFramework.Core/README.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Architecture implementations should follow the four-layer structure: IArchitecture (lifecycle management), IContextAware (unified context access), IModel (data/state layer), ISystem (business logic layer), and IUtility (stateless utility layer)

Applied to files:

  • GFramework.Core/README.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Use IArchitectureContext and Provider classes to propagate context capabilities between components rather than direct coupling to implementation details

Applied to files:

  • GFramework.Core/README.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: If the real environment differs from the inventory, use the project-relevant installed tool and report the mismatch. When working in WSL against this repository's Windows-backed worktree, prefer Windows Git from WSL (e.g., `git.exe`) instead of the Linux `git` binary. If a Git command in WSL fails with a worktree-style path translation error, rerun it with the Windows Git executable and treat that as the repository-default Git path. If the shell does not currently resolve `git.exe` to the host Windows Git installation, prepend that installation's command directory to `PATH` and reset shell command hashing for the current session before continuing. After resolving the host Windows Git path, prefer an explicit session-local binding for subsequent commands.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: All coding rules must be followed strictly as defined in AGENTS.md

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: The boot skill MUST read `AGENTS.md`、`.ai/environment/tools.ai.yaml`、`ai-plan/public/README.md` and the relevant active-topic `ai-plan/` artifacts before substantive execution.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Before choosing runtimes or CLI tools, read `@.ai/environment/tools.ai.yaml`. Use `@.ai/environment/tools.raw.yaml` only when you need the full collected facts behind the AI-facing hints. Prefer the project-relevant tools listed there instead of assuming every installed system tool is fair game.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to .gitignore : Use `ai-plan/private/` for worktree-private recovery artifacts; keep these untracked and scoped to the current worktree. Ensure `.gitignore` is configured to exclude `ai-plan/private/**` from version control.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: Applies to ai-plan/public/** : Keep committed `ai-plan/public/**` content safe to publish in Git history. Never write secrets, tokens, credentials, private keys, machine usernames, home-directory paths, hostnames, IP addresses, proprietary URLs, or other sensitive environment details into any `ai-plan/**` file. Never record absolute file-system paths; use repository-relative paths, branch names, PR numbers, or stable document identifiers instead.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-22T03:16:51.907Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: AGENTS.md:0-0
Timestamp: 2026-04-22T03:16:51.907Z
Learning: When composing a multi-line commit body from shell commands, contributors MUST NOT rely on Bash `$"..."` quoting for newline escapes, because it passes literal `\n` sequences to Git. Use multiple `-m` flags or ANSI-C `$'...'` quoting so the commit body contains real line breaks.

Applied to files:

  • AGENTS.md
📚 Learning: 2026-04-17T11:35:08.762Z
Learnt from: CR
Repo: GeWuYou/GFramework PR: 0
File: CLAUDE.md:0-0
Timestamp: 2026-04-17T11:35:08.762Z
Learning: Applies to **/Cqrs/**/*.cs : Use CQRS (Command Query Responsibility Segregation) pattern with the Cqrs naming entry point instead of the historical Mediator alias

Applied to files:

  • docs/zh-CN/core/cqrs.md
🪛 LanguageTool
ai-plan/public/documentation-full-coverage-governance/traces/documentation-full-coverage-governance-trace.md

[grammar] ~112-~112: Ensure spelling is correct
Context: ...qrs/Internal/CqrsHandlerRegistrar.csGFramework.Cqrs.SourceGenerators/Cqrs/CqrsHandlerRegist...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~142-~142: Ensure spelling is correct
Context: .../ Ecs / Cqrs 已验证模板继续补 XML inventory 与教程链路 2. 把 GFramework.Cqrs 的本地构建阻塞留给后续环境治理或...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~162-~162: Ensure spelling is correct
Context: ... docs/zh-CN/source-generators/index.md组成入口,不额外新增只为凑数量的专题页 -docs/zh-CN/game/index.md补 frontmatter,并承担Game` family 的 XML 基线入...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

docs/zh-CN/source-generators/cqrs-handler-registry-generator.md

[uncategorized] ~89-~89: 数词与名词之间一般应存在量词,可能缺少量词。
Context: ...数量较多 - 想把 handler 注册路径前移到编译期 - 希望冷启动阶段减少整程序集反射扫描 - 需要更明确地观察“哪些 handler 走静态注册,哪些只能走 ...

(wa5)

ai-plan/public/documentation-full-coverage-governance/todos/documentation-full-coverage-governance-tracking.md

[uncategorized] ~32-~32: 您的意思是“"不"齐”?
Context: ...ractions/README.md - 在根README.md中补齐GFramework.Ecs.Arch.Abstractions` 入口,...

(BU)


[uncategorized] ~33-~33: 您的意思是“"不"齐”?
Context: ...ractions入口,并声明内部支撑模块 owner - 为抽象接口栏目补齐Ecs.Arch.Abstractions` 页面与 sidebar 入口...

(BU)


[uncategorized] ~35-~35: 您的意思是“"不"齐”?
Context: ...读链路入口 - 为 GFramework.Core/README.md 补齐 ServicesConfiguration、`Environmen...

(BU)


[uncategorized] ~36-~36: 您的意思是“"不"齐”?
Context: ...GFramework.Core.Abstractions/README.md补齐契约族地图与 XML 阅读重点 - 将docs/zh-CN/abstr...

(BU)


[uncategorized] ~38-~38: 您的意思是“"不"齐”?
Context: ...接入路径页面 - 为 docs/zh-CN/core/index.md 补齐 frontmatter、能力域导航和 API / XML 阅读入口 - ...

(BU)


[uncategorized] ~39-~39: 您的意思是“"不"齐”?
Context: ...GFramework.Core.Abstractions/README.md补齐类型族级 XML 覆盖基线入口 - 为docs/zh-CN/core/...

(BU)


[uncategorized] ~45-~45: 您的意思是“"不"齐”?
Context: .../abstractions/ecs-arch-abstractions.md补齐类型族级 XML inventory - 重写docs/zh-CN/c...

(BU)


[uncategorized] ~46-~46: 您的意思是“"不"齐”?
Context: ...e/cqrs.md,将其收敛为 Cqrsfamily landing,并补齐运行时 / 契约层 / 生成器的 XML inventory - 新建...

(BU)


[uncategorized] ~49-~49: 您的意思是“"不"齐”?
Context: ...qrsHandlerRegistryGenerator.cs中缺失的内部类型补齐 XML 注释,使本轮轻量 inventory 达到声明级闭环 - 为...

(BU)


[uncategorized] ~50-~50: 您的意思是“"不"齐”?
Context: ...mework.Game.SourceGenerators/README.md补齐Game` family 的类型族级 XML inventory - ...

(BU)


[uncategorized] ~51-~51: 您的意思是“"不"齐”?
Context: ...entory - 为 docs/zh-CN/game/index.md 补齐 frontmatter,并增加 Game / `Game.Abstrac...

(BU)


[uncategorized] ~62-~62: 您的意思是“"不"齐”?
Context: ... --- | | Core / Core.Abstractions | README / landing / 类型族级 XML inventory 已收口,成员级审计待补齐 | 根 README、模块 README、`docs/zh-CN/core...

(BU)


[uncategorized] ~63-~63: 您的意思是“"不"齐”?
Context: ...stractions/Cqrs.SourceGenerators|README / landing / generator topic / 类型族级 XML inventory 已收口,成员级审计待补齐|GFramework.Cqrs/README.mdGFrame...

(BU)


[uncategorized] ~64-~64: 您的意思是“"不"齐”?
Context: ...stractions/Game.SourceGenerators|README / landing / abstractions / 类型族级 XML inventory 已收口,成员级审计待补齐|GFramework.Game/README.mdGFrame...

(BU)


[uncategorized] ~66-~66: 您的意思是“"不"齐”?
Context: ... Ecs.Arch / Ecs.Arch.Abstractions | README / landing / abstractions / 类型族级 XML inventory 已收口,成员级审计待补齐 | GFramework.Ecs.Arch/README.md、`GF...

(BU)


[uncategorized] ~66-~66: 您的意思是“"不"成员”?
Context: ....md已对齐当前源码与测试 | 转入巡检;后续仅在运行时公共 API 变动时补成员级 XML 细审 | |SourceGenerators.Common`...

(BU)


[uncategorized] ~77-~77: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:过时"地"默认
Context: ...- README / docs 示例与源码实现不一致 - 教程仍引用已经过时的默认接线方式 - P2 - 结构重复、交叉链接不足、API 参考链路过薄...

(wb4)


[uncategorized] ~85-~85: 您的意思是“"不"成员”?
Context: ...员级契约全审计 - 缓解措施:后续只在共享抽象或高风险生命周期接口发生改动时补成员级细审,不在本轮扩张范围 - Godot family 的治理结论主要留...

(BU)

README.md

[grammar] ~33-~33: Ensure spelling is correct
Context: ...rk.Game.SourceGenerators/README.md) | | GFramework.Cqrs.SourceGenerators | CQRS handler regist...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~33-~33: Ensure spelling is correct
Context: ...s| CQRS handler registry 生成器 | [README](GFramework.Cqrs.SourceGenerators/README.md) | |GFrame...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

docs/zh-CN/abstractions/game-abstractions.md

[grammar] ~106-~106: Ensure spelling is correct
Context: ...ingsSystemSaveRepository等默认实现 - 使用YamlConfigLoaderGameConfigBoot...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)

docs/zh-CN/ecs/index.md

[uncategorized] ~134-~134: 能愿动词不能成为‘把’字句、‘被’字句的谓语动词。应该是:"可能把……“"。
Context: ...# 边界说明 - 当前仓库没有交付其他可直接消费的 ECS 运行时包;旧文档里把“可能支持的其他 ECS 框架”写成现有能力会误导采用路径。 - `GFramewor...

(wa3)

docs/zh-CN/core/cqrs.md

[uncategorized] ~20-~20: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:稳定"地"共享
Context: ...ler、pipeline、runtime seam | 需要把消息契约放到更稳定的共享层,或只依赖接口做解耦 | | `GeWuYou.GFramework.Cq...

(wb4)

Comment thread docs/zh-CN/ecs/index.md Outdated
- 修复 gframework-pr-review 在 WSL worktree 中优先使用显式 Linux Git 绑定

- 更新 CQRS 与 ECS 文档以及 skill 文案,消化 PR #271 中仍成立的 review 意见

- 归档 documentation-full-coverage-governance 历史验证记录,并补写 trace 验证结果态
@github-actions
Copy link
Copy Markdown

Summary

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Other ❓ Flaky 🍂 Duration ⏱️
2145 2145 0 0 0 0 37.0s    ↑1.3s

Test Results

passed 2145 passed

Details

tests 2145 tests
clock 37.0s ↑1.3s
tool nunit
build CI - Build & Test arrow-right build-and-test link #935
pull-request Docs/sdk update documentation link #271

Insights

Average Tests per Run Total Flaky Tests Total Failed Slowest Test (p95)
2129 0 0 30.0s

build-and-test: Run #935

Tests 📝 Passed ✅ Failed ❌ Skipped ⏭️ Pending ⏳ Other ❓ Flaky 🍂 Duration ⏱️
2145 2145 0 0 0 0 0 37.0s

🎉 All tests passed!

Slowest Tests

Test 📝 Results 📊 Duration (avg) ⏱️ Duration (p95) ⏱️
Append_FromMultipleThreads_ShouldHandleConcurrency 13 2.3s 30.0s
Does_Not_Report_When_FieldInjectedModel_Is_Registered 13 2.7s 5.7s
Generates_Scene_Behavior_Boilerplate 13 2.3s 5.4s
SendRequestAsync_Should_ResolveCqrsRuntime_OnlyOnce_When_AccessedConcurrently 13 4.2s 4.8s
Context_Caching_Should_Improve_Performance 13 831ms 1.1s
CleanupDuringAcquire_Should_NotCauseRaceCondition 13 1.1s 1.1s
Append_ShouldNotBlock 13 1.0s 1.0s
RegisterCqrsHandlersFromAssembly_Should_Deduplicate_Repeated_Assembly_Registration 13 291ms 975ms
ConfigModuleCanRunDuringArchitectureInitialization 13 265ms 965ms
LoadAsync_Should_Copy_Registered_Text_Assets_Into_Runtime_Cache_When_Source_Is_Res_Path 13 143ms 574ms

± Comparison with run #933 at 13e0b1e | 🎉 No failed tests detected across all runs. | 🍂 No flaky tests detected across all runs. | ⏱️ Measured over 13 runs.

Github Test Reporter by CTRF 💚

@GeWuYou GeWuYou merged commit 3f95843 into main Apr 23, 2026
7 checks passed
@GeWuYou GeWuYou deleted the docs/sdk-update-documentation branch April 23, 2026 01:22
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