Rename ThemeProviderDemo to ThemeProvider.Demo - #103
matt-edmondson wants to merge 1 commit into
Conversation
ThemeProviderDemo derived the identity ktsu.ThemeProviderDemo, running the role suffix together into the family name, so it read as a separate family rather than a component of ThemeProvider and sorted away from its siblings. The convention separates role suffixes with a dot. Renames the folder, the csproj and the solution entry, and moves the namespace from ktsu.ThemeProviderDemo to ktsu.ThemeProvider.Demo to match the derived identity. Sets IsPackable=false explicitly rather than relying on OutputType. Nothing was published under the old name: ktsu.Sdk marks only libraries and PackAsTool projects packable, and this is a WinExe via ktsu.Sdk.App. dotnet pack still produces exactly ktsu.ThemeProvider and ktsu.ThemeProvider.ImGui. Part of the naming audit in ktsu-dev/Sdk#36. Fixes #78 Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AEnne4CKU84fkH76m2eK2Y
|
|
SonarCloud gate needs a repo variable set — this one is blocked on you
WhyMoving Nothing about the rename changed what is testable. Reverting the namespace edit would not help either: the gate needs ≥80% on whatever it counts as new, and 0% of a moved file fails the same way at one changed line as at 795. What unblocks itThe shared workflow already has the mechanism, and its comment describes this exact case:
So this needs a repository variable on That is a settings change rather than a commit, which is why I have not done it — and it is the kind of decision worth making once for the estate rather than by me unilaterally, since ktsu-dev/Invoker#48 is blocked on exactly the same thing right now ( The alternative, if you would rather not use a variable
Everything else on this head is green: build clean with 0 warnings, 64/64 tests passing on ubuntu, macOS and Windows. The only other red check is Generated by Claude Code |


Fixes #78
What
ThemeProviderDemoderived the identityktsu.ThemeProviderDemo, running the role suffix together into the family name, so it read as a separate family rather than a component ofThemeProviderand sorted away from its siblings. The convention separates role suffixes with a dot..csprojfilename and solution entry:ThemeProviderDemo→ThemeProvider.Demoktsu.ThemeProviderDemo→ktsu.ThemeProvider.Demo, so the source matches the identity the folder path now derivesIsPackable=falseset explicitly rather than relying onOutputTypeCLAUDE.md,ThemeProvider.ImGui/README.md) follow itThe issue notes nothing inside the project file needs editing since the identity follows the folder path; the namespace edit is the one source change, and it is what keeps
Program.csconsistent with the new identity rather than leaving it on the old family name.CHANGELOG.mdand the historical plan underdocs/superpowers/still mention the old name; those are records of what happened and are left alone.Verification
dotnet build ThemeProvider.sln— clean, 0 warnings, 0 errorsktsu.ThemeProvider.Demo.dll, confirming the derived identity changed as intendeddotnet pack ThemeProvider.slnproduces exactlyktsu.ThemeProviderandktsu.ThemeProvider.ImGuiand no demo package, confirming the published packages are untouched and the demo stays unpublishedNo test is added: the change is a rename with no behaviour to assert, and the build plus the pack output are what actually prove it.
dotnet packalso reports pre-existingCP0001ApiCompat errors on the two library projects — those reproduce identically onmain(146 of them either way) and are not from this change.Part of the naming audit tracked in ktsu-dev/Sdk#36.
🤖 Generated with Claude Code
https://claude.ai/code/session_01AEnne4CKU84fkH76m2eK2Y
Generated by Claude Code