一键导入
pr-reviewer
PR review checklist for SourceBase. Use when reviewing pull requests to verify architecture, conventions, tests, and code quality.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
PR review checklist for SourceBase. Use when reviewing pull requests to verify architecture, conventions, tests, and code quality.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Windows WPF tray-app architecture and conventions for SourceBase.Desktop (Jupiter). Use when writing or reviewing tray icon wiring, overlay windows, schedulers, settings persistence, or API sync code in SourceBase.Desktop.
Frontend Blazor components, Tailwind CSS layout patterns, and mobile-responsive design for SourceBase. Use when writing or reviewing Blazor components, UI layout, or responsive behavior — especially for mobile S (320px) viewports.
Backend architecture, API endpoints, handlers, entities, and conventions for SourceBase. Use when writing or reviewing API features, handlers, entities, validators, or infrastructure.
Integration test patterns and infrastructure for SourceBase. Use when writing, reviewing, or fixing tests.
| name | pr-reviewer |
| description | PR review checklist for SourceBase. Use when reviewing pull requests to verify architecture, conventions, tests, and code quality. |
| trigger | /pr-reviewer |
Review pull requests against SourceBase's architecture and conventions.
Start with the global /review skill for diff analysis, then apply the checklist below for project-specific concerns.
SourceBase.Application/Features/ as a single file (request, response, endpoint, handler, validator)IEndpoint / IRequestHandler<TRequest, TResponse>Api → Application ← Infrastructure ← DomainSourceBase.Application/Shared/Interfaces/; implementations in SourceBase.Infrastructure/Implementations/AppSettings.cs and appsettings.jsonMapEndpoint chain uses separate lines (.MapXxx, then auth, then .WithTags)PATCH (not PUT) with partial semantics — MapPatch, not MapPutId is a route param marked [property: SwaggerIgnore] on the request recordRequireAuthorization() present, or .AllowAnonymous() intentionalPagingRequest base + feature-specific OrderBy enum + .PaginateAsync()BaseAuditableEntity; audit fields (CreatedOn/By, UpdatedOn/By) never set manuallyEnumToStringConverterNotFoundException, BadRequestException, etc.) — no raw status codesPATCH (not PUT)entity.Field = request.Field ?? entity.Field (null-coalescing), not if-guards.When(x => x.Field is not null)MustAsync, not in the handlerSourceBase.Tests/Features/ path{FEATURE}-{ACTION}-{NNN} format in DisplayNameMethodName_WithCondition_ReturnsExpectedCreateTodoEndpoint.Route (strong-typed) — no hardcoded URL stringsGetLatestEmailCodeAsync — no manually generated tokensWithDbContextAsync only used when asserting on a DB field not returned by the APIAction-returning or Func<Task>-returning methods