revert(abstractions): drop C# extension blocks; restore classic this-param form #94
No reviewers
Labels
No labels
bug
commercial
documentation
duplicate
enhancement
feature
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jasoncouture/llama-shears!94
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "revert-extension-blocks"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
LlamaShears.Core.Abstractionsback to classicthis T paramextension methods.<G>$<hash>doc tree the generator was emitting from compiler-mangled nested types.Why
Extension blocks emit synthetic nested types into metadata; the docs generator could not collapse those into the host static class, so every extension block produced garbage filenames like
AgentConfigExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1.md. Reverting to classic syntax keeps the doc tree clean without touching the generator.Test plan
dotnet buildclean (0 errors; pre-existing obsolete warnings unrelated).dotnet test🤖 Generated with Claude Code
Pull request overview
This PR reverts public abstraction extension APIs from C# extension blocks back to classic
this-parameter extension methods to avoid compiler-generated synthetic types leaking into API documentation.Changes:
Reviewed changes
Copilot reviewed 32 out of 32 changed files in this pull request and generated 2 comments.
Show a summary per file
src/public/LlamaShears.Core.Abstractions/Provider/ModelConfigurationExtensions.cssrc/public/LlamaShears.Core.Abstractions/Provider/EmbeddingModelConfigurationExtensions.cssrc/public/LlamaShears.Core.Abstractions/Events/EventPublisherExtensions.cssrc/public/LlamaShears.Core.Abstractions/Common/DataContextServiceCollectionExtensions.cssrc/public/LlamaShears.Core.Abstractions/Agent/Sessions/SessionExtensions.cssrc/public/LlamaShears.Core.Abstractions/Agent/AgentStateExtensions.cssrc/public/LlamaShears.Core.Abstractions/Agent/AgentConfigExtensions.csdocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/ModelConfigurationExtensions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/ModelConfigurationExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/ModelConfigurationExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/<M>$4CE8FFD1231E591D45179C9C504A5A71.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/ModelConfigurationExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/ModelConfigurationExtensions.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/EmbeddingModelConfigurationExtensions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/EmbeddingModelConfigurationExtensions/<G>$DE5C531DB009878C78653085F6B97138.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Provider/EmbeddingModelConfigurationExtensions.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/SessionExtensions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/SessionExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/SessionExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/<M>$4CE8FFD1231E591D45179C9C504A5A71.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/SessionExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/SessionExtensions.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/Sessions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentStateExtensions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentStateExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentStateExtensions.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentConfigExtensions/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentConfigExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/index.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentConfigExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1/<M>$4CE8FFD1231E591D45179C9C504A5A71.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentConfigExtensions/<G>$1E5D4A79A014BD10CBE0F98F7F208BE1.mddocs/api/LlamaShears.Core.Abstractions/LlamaShears/Core/Abstractions/Agent/AgentConfigExtensions.mddocs/api/LlamaShears.Core.Abstractions/index.mdComments suppressed due to low confidence (2)
src/public/LlamaShears.Core.Abstractions/Common/DataContextServiceCollectionExtensions.cs:32
docs/api/.../Common/DataContextServiceCollectionExtensions.mdstill omitsAddScopedDataProvider, leaving the public docs stale after this signature change. Please update the generated docs for this method as part of the revert.src/public/LlamaShears.Core.Abstractions/Events/EventPublisherExtensions.cs:30
PublishAsyncoverload (docs/api/.../Events/EventPublisherExtensions.mdcontains only the type summary), leaving the generated API reference incomplete after the revert. Please regenerate/update the docs for this overload.💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
@ -12,0 +16,4 @@/// only depend on other singletons./// </summary>public static IServiceCollection AddSingletonDataProvider<TProvider>(this IServiceCollection services)where TProvider : class, IDataContextItemProviderThe checked-in API docs were not regenerated for this public extension method:
docs/api/.../Common/DataContextServiceCollectionExtensions.mdstill lists onlyGetScopedDataProviders, soAddSingletonDataProvideris omitted from the public docs after moving it back out of the extension block. Please update the generated docs for this method as part of the revert.This issue also appears on line 32 of the same file.
@ -11,0 +15,4 @@EventType eventType,T? data,CancellationToken cancellationToken)where T : classThe checked-in API docs still omit this public
PublishAsyncoverload (docs/api/.../Events/EventPublisherExtensions.mdcontains only the type summary), so consumers will not see the restored classic extension method in the generated API reference. Please regenerate/update the docs for this overload.This issue also appears on line 27 of the same file.