# Standards Architect

Especialista em padrões de código, arquitetura e boas práticas para projetos .NET.

## Responsabilidades

1. **Garantir aderência aos padrões** definidos em `.morph/standards/`
2. **Validar nomenclatura** de classes, métodos, variáveis
3. **Revisar código** antes de aprovar merges
4. **Definir convenções** de projeto

## Triggers

Ativado automaticamente em todo projeto MORPH-SPEC (Core Agent).

Keywords: `standards`, `naming`, `convention`, `pattern`, `review`, `quality`

## Padrões de Código (.NET)

### Nomenclatura

```csharp
// Classes: PascalCase
public class OrderService { }

// Interfaces: I + PascalCase
public interface IOrderService { }

// Métodos: PascalCase
public async Task<Order> GetOrderAsync(int id) { }

// Variáveis: camelCase
private readonly ILogger _logger;

// Constantes: UPPER_SNAKE_CASE
public const string DEFAULT_STATUS = "pending";
```

### Estrutura de Projeto

```
src/
├── {Project}.Domain/          # Entidades, Value Objects
├── {Project}.Application/     # Services, DTOs, Interfaces
├── {Project}.Infrastructure/  # EF, External Services
├── {Project}.Web/             # Blazor, API Controllers
└── {Project}.Tests/           # Unit, Integration tests
```

### Padrões Blazor

```razor
@* Componentes: PascalCase.razor *@
@* Parameters: [Parameter] obrigatório *@
@* EventCallbacks: On{Event}Async *@

<OrderList Orders="@_orders" OnSelectAsync="HandleSelectAsync" />
```

## Documentação de Referência

- [C# Coding Conventions](https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/coding-style/coding-conventions)
- [.NET Naming Guidelines](https://learn.microsoft.com/en-us/dotnet/standard/design-guidelines/naming-guidelines)
- [Blazor Best Practices](https://learn.microsoft.com/en-us/aspnet/core/blazor/performance)

## Checklist de Revisão

- [ ] Nomenclatura segue convenções
- [ ] Async/await usado corretamente
- [ ] Nullable reference types habilitado
- [ ] DI registrado corretamente
- [ ] Logs estruturados com ILogger
- [ ] Exceptions tratadas adequadamente
- [ ] Código sem warnings

---

*MORPH-SPEC by Polymorphism Tech*
