flare-dotnet-patterns
星标4
分支0
更新时间2026年6月16日 07:57
Coding patterns extracted from flare-dotnet repository
安装
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
SKILL.md
readonly菜单
Coding patterns extracted from flare-dotnet repository
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
| name | flare-dotnet-patterns |
| description | Coding patterns extracted from flare-dotnet repository |
| version | 1.0.0 |
| source | local-git-analysis |
| analyzed_commits | 14 |
This project uses prefixed conventional commits:
feature: - New features and capabilitiesfixes: - Bug fixeschore: - Maintenance, renames, upgradesExamples:
feature: add standalone api client and refactor Flare.OpenFeature.Provider
fixes: Flare.Configuration.Provider fatal exception fix
chore: rename projects
chore: Upgrade to .NET 10
src/
├── Flare.HttpClient/ # Shared HTTP client (netstandard2.0)
│ ├── IFlareApiClient.cs # Interface for API calls
│ ├── FlareApiClient.cs # Internal implementation
│ ├── FlareApiClientOptions.cs # Options class
│ ├── FlareApiException.cs # Custom exception
│ ├── FlareHttpClientExtensions.cs # DI registration
│ └── Models/ # Request/response DTOs
├── Flare.OpenFeature.Provider/ # OpenFeature integration (netstandard2.0)
│ ├── FlareProvider.cs # Main provider (sealed)
│ ├── FlareProviderOptions.cs # Provider config
│ ├── FlagCache.cs # Internal cache (internal sealed)
│ ├── EvaluationContextConverter.cs # Internal converter (internal static)
│ └── OpenFeatureBuilderExtensions.cs # DI extensions
├── Flare.Extensions.Configuration/ # ASP.NET config provider (net10.0)
│ ├── FlareBackgroundService.cs
│ ├── FlareConfigurationProvider.cs
│ └── ...
tests/
└── Flare.OpenFeature.Provider.Tests/ # xUnit + NSubstitute + FluentAssertions
src/Flare.{Name}/tests/Flare.{Name}.Tests/.slnx format (XML-based)/src/ and /tests/ solution foldersnetstandard2.0 for broad compatibilitynet10.0LangVersion set to latest across all projectsOpenFeatureBuilder, IConfigurationBuilder)*Core() method for shared registration logicIOptions<T>) for all configurationpublic sealed class for providers, public class for optionsinternal sealed class for caches, internal static class for convertersInternalsVisibleTo for test projectsFlareApiException : Exception)HttpRequestException -> ProviderNotReadyException)ILogger<T> with structured parametersvolatile for flag fields and dictionary referencesSemaphoreSlim for exclusive async locksInterlocked for atomic counter operationsIHttpClientFactory via Microsoft.Extensions.HttpSystem.Text.Json with camelCase naming policysrc/Flare.{Name}/Flare.{Name}.csproj targeting netstandard2.0Flare.Dotnet.slnx under /src/ folder.github/workflows/release-flare-{name}.ymlREADME.md for NuGet package pagetests/Flare.{Name}.Tests/Flare.{Name}.Tests.csproj targeting net10.0InternalsVisibleTo to source project's .csprojFlare.Dotnet.slnx under /tests/ folder[Fact], [Theory]), NSubstitute for mocks, FluentAssertions for assertionsGlobalUsings.cs with global using Xunit;.csproj.cs filesFlare.Dotnet.slnx referencesMethodName_Condition_ExpectedResult#region per concern area[InlineData] for parameterized testsShutdownAsync() callsrelease/flare-{name}/*.*.*nuget-publish environment approval.github repo: nuget-publish.ymlmain and PRs targeting main.trx output