Specify mirroed files in bit Boilerplate (#12838) - #12839
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (45)
WalkthroughThe boilerplate adds mirror-maintenance guidance across shared, web, MAUI, Windows, server, and platform files. It also updates Claude settings and changes Admin navigation rendering for multitenant and non-multitenant modules. ChangesMirror maintenance guidance
Admin navigation branching
Claude project settings
Estimated code review effort: 2 (Simple) | ~10 minutes Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Pull request overview
This PR addresses issue #12838 by introducing consistent [mirror] markers across the Bit.Boilerplate template, making it explicit which files must be kept in sync when making parallel changes across platforms/projects.
Changes:
- Added
[mirror]comments to many Boilerplate files to document their mirrored counterparts and synchronization intent. - Updated the client host pages (
index.html) to document mirrored head/script/style and loading/progress markup responsibilities. - Adjusted the Admin module NavBar template logic to differentiate multitenant vs non-multitenant Admin navigation rendering.
Reviewed changes
Copilot reviewed 45 out of 45 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Templates/Boilerplate/Bit.Boilerplate/src/Server/Boilerplate.Server.Web/Components/App.razor | Adds [mirror] note pointing to client host pages to keep head/script/style in sync. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Program.Services.cs | Adds [mirror] note linking DI/logging/Otel setup with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsWebAuthnService.cs | Adds [mirror] note linking WebAuthn loopback flow with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsTelemetryContext.cs | Adds [mirror] note linking telemetry context with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsStorageService.cs | Adds [mirror] note linking storage semantics with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsPushNotificationService.cs | Adds [mirror] note linking Windows push notification stub with MAUI Windows equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsLocalHttpServer.cs | Adds [mirror] note linking loopback server behavior with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsExceptionHandler.cs | Adds [mirror] note linking exception handler with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/Infrastructure/Services/WindowsDeviceCoordinator.cs | Adds [mirror] note linking device coordinator behavior with MAUI equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Windows/_Imports.razor | Adds [mirror] note linking _Imports alignment across client projects. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/wwwroot/service-worker.published.js | Adds [mirror] note linking handlers with non-published service worker. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/wwwroot/service-worker.js | Adds [mirror] note linking handlers with published service worker. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/wwwroot/index.html | Adds consolidated [mirror] notes for host page head/loading/progress markup sync points. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/Components/AppBswupProgressBar.razor | Adds [mirror] note linking progress bar markup/CSS with host page. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Web/_Imports.razor | Adds [mirror] note linking _Imports alignment across client projects. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/wwwroot/index.html | Adds consolidated [mirror] notes for host page head/loading markup sync points. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/Windows/Services/WindowsPushNotificationService.cs | Adds [mirror] note linking MAUI Windows push notification stub with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/Windows/Extensions/IWindowsServiceCollectionExtensions.cs | Adds [mirror] note linking per-platform DI registrations across MAUI platforms. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/Services/MacCatalystPushNotificationService.cs | Adds [mirror] note linking push notification flow with Android/iOS counterparts. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/Services/AppUNUserNotificationCenterDelegate.cs | Adds [mirror] note linking UNUserNotificationCenter delegate with iOS counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/Program.cs | Adds [mirror] note linking entry point with iOS counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/Extensions/NSDataExtensions.cs | Adds [mirror] note linking NSData extensions with iOS counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/Extensions/IMacServiceCollectionExtensions.cs | Adds [mirror] note linking per-platform DI registrations across MAUI platforms. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/MacCatalyst/AppDelegate.cs | Adds [mirror] note linking AppDelegate with iOS counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/Services/iOSPushNotificationService.cs | Adds [mirror] note linking push notification flow with Android/MacCatalyst counterparts. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/Services/AppUNUserNotificationCenterDelegate.cs | Adds [mirror] note linking UNUserNotificationCenter delegate with MacCatalyst counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/Program.cs | Adds [mirror] note linking entry point with MacCatalyst counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/Extensions/NSDataExtensions.cs | Adds [mirror] note linking NSData extensions with MacCatalyst counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/Extensions/IIosServiceCollectionExtensions.cs | Adds [mirror] note linking per-platform DI registrations across MAUI platforms. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/iOS/AppDelegate.cs | Adds [mirror] note linking AppDelegate with MacCatalyst counterpart. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/Android/Services/AndroidPushNotificationService.cs | Adds [mirror] note linking push notification flow with iOS/MacCatalyst counterparts. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Platforms/Android/Extensions/IAndroidServiceCollectionExtensions.cs | Adds [mirror] note linking per-platform DI registrations across MAUI platforms. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/MauiProgram.Services.cs | Adds [mirror] note linking DI/logging/Otel setup with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiWebAuthnService.cs | Adds [mirror] note linking WebAuthn loopback flow with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiTelemetryContext.cs | Adds [mirror] note linking telemetry context with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiStorageService.cs | Adds [mirror] note linking storage semantics with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiLocalHttpServer.cs | Adds [mirror] note linking loopback server behavior with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiExceptionHandler.cs | Adds [mirror] note linking exception handler with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/Infrastructure/Services/MauiDeviceCoordinator.cs | Adds [mirror] note linking device coordinator behavior with Windows client equivalent. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Maui/_Imports.razor | Adds [mirror] note linking _Imports alignment across client projects. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/Layout/NavBar.razor | Updates template conditions to render Admin nav appropriately for multitenant vs non-multitenant setups. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/Common/LoadingComponent.razor | Replaces prior note with [mirror] comment pointing to mirrored host pages. |
| src/Templates/Boilerplate/Bit.Boilerplate/src/Client/Boilerplate.Client.Core/Components/_Imports.razor | Adds [mirror] note linking _Imports alignment across client projects. |
| src/Templates/Boilerplate/Bit.Boilerplate/AGENTS.md | Documents the required workflow for keeping [mirror] file sets synchronized. |
| src/Templates/Boilerplate/Bit.Boilerplate/.claude/settings.json | Adds Claude project settings and MCP permissions for the Boilerplate template. |
| @@ -1,3 +1,6 @@ | |||
| // [mirror] not implemented push notification service of the windows targets - keep in sync with: | |||
| @@ -1,3 +1,6 @@ | |||
| // [mirror] not implemented push notification service of the windows targets - keep in sync with: | |||
| - **Use OData Query Options**: Leverage `[EnableQuery]` and `ODataQueryOptions` for efficient data filtering and pagination. | ||
| - **Follow Mapperly Conventions**: Use **partial static classes and extension methods** with Mapperly for high-performance object mapping. | ||
| - **Handle Concurrency**: Always use `long Version` for optimistic concurrency control in update and delete operations. | ||
| - **Respect `[mirror]` Comments**: Some files carry (near) identical logic under different extensions or projects. Each of them starts with a `[mirror]` comment listing its counterparts. Whenever you change such a file you **MUST** open every file that comment names and apply the same change there, or state explicitly why it does not apply. Run `Grep` for `[mirror]` to see the full set. |
closes #12838
Summary by CodeRabbit
New Features
Documentation