From 633fb6c2f048f63b9e81d2b90cbc507693d8662f Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 26 Jul 2026 15:54:14 +0000 Subject: [PATCH 1/2] chore(justdummies): nest Xunit companion projects under src/tests JustDummies.Xunit and JustDummies.Xunit.UnitTests had no entry in the solution's NestedProjects section, so they showed up at the solution root instead of under the src/tests solution folders like every other project. Predates the JustDummies rename (already missing when these projects were added under their Dummies.Xunit names); the rename only carried the gap forward. Co-Authored-By: Claude Sonnet 5 --- FirstClassErrors.sln | 2 ++ 1 file changed, 2 insertions(+) diff --git a/FirstClassErrors.sln b/FirstClassErrors.sln index 3131b88b..ee394bd5 100644 --- a/FirstClassErrors.sln +++ b/FirstClassErrors.sln @@ -381,6 +381,8 @@ Global {75EA57DD-0128-4EB9-ADBE-567BFF602A93} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} {F2C739E7-6F2E-4256-9C87-9D6F1168DF4A} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} {BC4F2BE8-55C9-4AA4-90FA-699EC83A8985} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} + {BF67DBAE-EBE1-45CE-86E5-B2E9E3D4EF6B} = {02EA681E-C7D8-13C7-8484-4AC65E1B71E8} + {75FD5E2C-A871-4659-8A01-13461FED84EB} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} {1FC2C501-8842-4ABE-845E-000ED6575DD6} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} {D12EE45B-78F8-4CD4-8E67-E4A9DDA01AE6} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} {04707ACA-FB2E-43BF-A12C-28E01BF5F60D} = {B7C3D08D-EFC5-4F5D-8DE4-5B7938354DBB} From b5ea4835da5c63954d91c6f00d8e145260eb04f0 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 26 Jul 2026 15:56:35 +0000 Subject: [PATCH 2/2] docs: tell agents to nest new projects in the sln A new .csproj has repeatedly landed without a matching entry in FirstClassErrors.sln's GlobalSection(NestedProjects), leaving it loose at the solution root instead of grouped under src/tests (RequestBinder, Testing.UnitTests, Dummies, and now Dummies.Xunit each needed a follow-up fix). Tell CLAUDE.md and AGENTS.md to check this whenever a project is added, so agents catch it up front instead of after the fact. Co-Authored-By: Claude Sonnet 5 --- AGENTS.md | 5 +++++ CLAUDE.md | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index f214bcc2..7b8cbcc6 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -17,6 +17,11 @@ Two roles are covered: **writing code** and **reviewing pull requests**. (`Transience`, `ErrorOrigin`) are the only value-type exception. - Keep changes small and focused. Treat renamed error codes, diagnostic IDs and public types as breaking changes. +- Adding a new project? Also add its GUID to `FirstClassErrors.sln`'s + `GlobalSection(NestedProjects)`, nested under the `src` or `tests` solution + folder like its siblings — a project left out of that section sits loose at + the solution root instead of grouped with the rest. This has recurred + several times; check it whenever a `.csproj` is added. ## Architecture decisions (code changes) diff --git a/CLAUDE.md b/CLAUDE.md index f1e3d729..1803198f 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -36,6 +36,13 @@ errors should stay structured, documented, and close to the code. * `FirstClassErrors.Usage` — usage examples * `doc/` — documentation: `handwritten/` (`for-users`, `for-maintainers`) and `generated/` (CI/CD living docs) +When adding a new project to the solution, also add its GUID to +`FirstClassErrors.sln`'s `GlobalSection(NestedProjects)`, nested under the +`src` or `tests` solution folder like its siblings — a project missing from +that section shows up loose at the solution root in Visual Studio/Rider +instead of grouped with the rest. This has been missed and fixed after the +fact several times; check it every time a `.csproj` is added. + ## Change guidelines * Keep changes small, focused, and aligned with the requested task.