Add Reactive and Avalonia routed samples with Nuke CI#2
Conversation
1、Add Observables.Samples.Events.Reactive and RestAPI.Reactive console projects 2、Add Observables.Samples.Events.Routed Avalonia AttachedRoutedEvent demo (excluded from Ci) 3、Introduce Nuke build.cmd Ci and update GitHub Actions workflow
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Autofix Details
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Batch bootstrap on Ubuntu runner
- Updated the Ubuntu workflow to invoke the Nuke project directly with dotnet instead of executing the Windows-only build.cmd bootstrap.
Or push these changes by commenting:
@cursor push 5364529374
Preview (5364529374)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -20,6 +20,6 @@
dotnet-version: 8.0.x
- name: Build and run CI samples via Nuke (skips Avalonia Routed)
- run: ./build.cmd Ci --configuration Release
+ run: dotnet run --project build/_build.csproj -- Ci --configuration Release
env:
UseLocalObservables: "false"You can send follow-ups to the cloud agent here.
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: CI exclusion property unused
- Nuke now reads each sample project's ObservablesExcludeFromCi property to decide CI exclusions instead of relying on the hard-coded Routed path substring.
Or push these changes by commenting:
@cursor push feebdb1d6e
You can send follow-ups to the cloud agent here.
Reviewed by Cursor Bugbot for commit 310a77a. Configure here.
| } | ||
|
|
||
| yield return (relativePath, runAfterBuild); | ||
| } |
There was a problem hiding this comment.
CI exclusion property unused
Medium Severity
ObservablesExcludeFromCi is documented and set on the Avalonia sample, but Nuke never reads it. CI skips Events.Routed only because GetProjectsForCi hard-codes a path substring, so other GUI projects would still be built on headless agents.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit 310a77a. Configure here.



Summary
AttachedRoutedEventsample (local/desktop only)build.cmd Ciskips Routed; CI runs four console samplesTest plan
./build.cmd Ci --configuration Releasedotnet run --project Observables.Samples.Events.Routed -p:UseLocalObservables=true(optional, GUI)Note
Medium Risk
CI behavior changes materially (Nuke vs direct dotnet build/run), and the Nuke host targets net10.0 while the workflow only installs .NET 8, which may break Actions unless a 10 SDK is present globally.
Overview
Adds System.Reactive console samples for
Observables.Events.ReactiveandObservables.RestAPI.Reactive, plus an Avalonia desktop sample forAttachedRoutedEvent/<ObservableRoutedEvents>. Shared MSBuild wiring introducesEventsReactiveandRestAPIReactivesample kinds (NuGet and local generator paths).CI no longer builds the whole solution and runs two projects inline; it runs the Nuke
Citarget viabuild/_build.csproj, which builds and executes the four console samples withUseLocalObservables=falseand omitsObservables.Samples.Events.Routed. Docs and the solution file list the new projects;build.cmdand.nukeschema/parameters support the Nuke entrypoint.Reviewed by Cursor Bugbot for commit 310a77a. Bugbot is set up for automated code reviews on this repo. Configure here.