一键导入
semantic-versioning
Use esta skill ao alterar regras ARCH, severidades, opções de .editorconfig, empacotamento NuGet ou documentação de release do Swa.Analyzers.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Use esta skill ao alterar regras ARCH, severidades, opções de .editorconfig, empacotamento NuGet ou documentação de release do Swa.Analyzers.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Compatibilidade temporária. Este repositório não é um serviço .NET; para alterações neste projeto, use as skills de Roslyn analyzer.
Use esta skill ao criar ou atualizar documentação de regras ARCH### em docs/rules e referências públicas no README.
Use esta skill ao alterar empacotamento, release metadata, NuGet, CI, versão, lock file ou workflows deste projeto de analyzers.
Use esta skill ao criar ou alterar regras Roslyn ARCH### neste repositório, incluindo analyzer, testes, documentação, SampleApp, README e metadados de release.
Use esta skill ao criar ou ajustar exemplos manuais no Swa.Analyzers.SampleApp.
Use esta skill ao criar, corrigir ou ampliar testes automatizados de analyzers Roslyn neste repositório.
| name | semantic-versioning |
| description | Use esta skill ao alterar regras ARCH, severidades, opções de .editorconfig, empacotamento NuGet ou documentação de release do Swa.Analyzers. |
Garantir que mudanças no pacote Swa.Analyzers sejam classificadas corretamente como PATCH, MINOR ou MAJOR, mantendo commits semânticos, CHANGELOG.md e documentação coerentes.
A versão publicada do pacote é calculada por GitVersion a partir de:
GitVersion.yml
O workflow .github/workflows/release.yml usa o output semVer do GitVersion como fonte única para PackageVersion, tag v{SemVer} e GitHub Release.
Não atualize VersionPrefix manualmente para preparar release. O projeto não usa mais VersionPrefix como fonte da versão publicada.
Sempre que uma tarefa alterar regras ARCH, empacotamento NuGet, severidade padrão, opções .editorconfig ou documentação pública de release, o agente deve decidir qual incremento semântico é esperado e garantir que a mensagem de commit reflita esse incremento.
O projeto segue Semantic Versioning.
Formato:
MAJOR.MINOR.PATCH
Como o pacote já passou de 1.0.0:
Use PATCH quando:
.editorconfig;Exemplo:
1.1.0 -> 1.1.1
Ao aplicar PATCH, atualize:
CHANGELOG.md;fix: ou perf: quando a mudança deve incrementar patch.Use MINOR quando:
.editorconfig;Exemplo:
1.1.1 -> 1.2.0
Ao aplicar MINOR, atualize:
CHANGELOG.md;feat: quando a mudança deve incrementar minor.Considere breaking change quando:
.editorconfig;.editorconfig;Exemplo:
1.1.1 -> 2.0.0
Ao aplicar MAJOR, atualize:
CHANGELOG.md;! no tipo ou BREAKING CHANGE: no corpo;Ao criar nova regra:
src/Swa.Analyzers.Core/RuleIdentifiers.cs;src/Swa.Analyzers.Core/Rules;tests/Swa.Analyzers.Tests/Rules;docs/rules/ARCH###.md;src/Swa.Analyzers.SampleApp/Arch###;README.md;src/Swa.Analyzers.Core/AnalyzerReleases.Unshipped.md;CHANGELOG.md;feat: para que GitVersion incremente MINOR.Nova regra ARCH deve incrementar MINOR.
Exemplo:
Versao atual: 1.1.0
Nova regra: ARCH034
Nova versão: 1.2.0
Use:
Mudanca posterior de severidade padrão pode ser breaking change, principalmente quando a severidade fica mais restritiva.
Exemplo:
ARCH030 era Info.
Passou para Warning.
Isso pode quebrar pipelines de consumidores que tratam warning como erro.
Classifique como MAJOR depois do 1.0.0.
Toda mudança relevante para consumidores do pacote deve atualizar CHANGELOG.md.
Ajustes apenas em .agents/skills, relatórios internos em docs/reviews ou orientações operacionais que não alterem regra, empacotamento, release pública ou comportamento do pacote não exigem bump de VersionPrefix nem entrada no CHANGELOG.md.
Durante o desenvolvimento, registre mudanças em:
## [Unreleased]
Ao preparar uma release, mova os itens para uma seção versionada:
## [1.2.0] - 2026-05-04
Depois recrie a seção vazia de [Unreleased].
Antes de concluir a tarefa, responda internamente:
A mudança adiciona nova regra?
A mudança altera comportamento de regra existente?
A mudança altera severidade padrão?
A mudança altera opção .editorconfig?
O CHANGELOG.md foi atualizado?
A mensagem de commit corresponde ao incremento esperado pelo GitVersion?
Se foi criada nova regra ARCH, o commit usa feat:?
Se foi correção sem regra nova, o commit usa fix: ou perf: quando deve gerar PATCH?
Se foi breaking change, o commit usa ! ou corpo com BREAKING CHANGE:?
README, documentação, testes, SampleApp e AnalyzerReleases.Unshipped.md foram atualizados quando aplicável?
Não finalize uma tarefa que altere regras ARCH, severidades, opções .editorconfig, empacotamento NuGet ou documentação de release pública sem verificar e, quando necessário, atualizar:
CHANGELOG.md
GitVersion.yml
docs/release.md