name: ue5-architecture description: UE5.6/UE5.7 architecture planning and module boundary design for Unreal projects. Use when requests involve module layout, Build.cs dependencies, reflection exposure strategy, Public/Private API boundaries, naming conventions, and preventing circular dependencies.
Quick Start
- Collect current module list,
*.Build.cs, and major gameplay/UI systems. - Propose one target module graph before writing code.
- Output module responsibilities and ownership in a table.
Workflow
- Identify runtime, editor, UI, networking, and data modules from current codebase.
- Define Public API for each module as minimal headers and Blueprint surface.
- Define Private implementation boundaries and include rules.
- Define
PublicDependencyModuleNamesandPrivateDependencyModuleNamesper module. - Report risks: circular includes, over-exposed reflection types, and cross-layer references.
Constraints
- Keep
UCLASS/USTRUCT/UENUMonly where reflection is required. - Prefer forward declarations in headers; include concrete headers in
.cpp. - Do not move types across modules without listing migration impact.
- Keep naming aligned with Unreal conventions (
U,A,F,Eprefixes).
Failure Handling
- If ownership of a class is ambiguous, place it in runtime module first and log a TODO to split after usage mapping.
- If dependency graph becomes cyclic, extract shared contracts into a thin common module.
- If Build.cs dependencies are uncertain, choose minimal set and verify compile paths immediately.
Escalation
- Escalate when a refactor requires asset redirectors, class renames, or package path migration.
- Escalate when module split changes public Blueprint class paths used by existing content.