Onde você pode editar
| Tipo de arquivo | Como alterar |
|---|---|
Spec em .plintrix/features |
Edite a intenção e gere novamente |
| Arquivo gerenciado | Use o comando que o produz; hash e manifesto detectam conflito |
Região sil-business |
Escreva lógica própria dentro dos marcadores |
| Governança do consumidor | README, CI, configuração e hooks pertencem à equipe |
| C# escrito à mão | Mantenha as convenções e valide com build/check |
O manifesto do backend gerado é a autoridade sobre propriedade. A árvore abaixo vem da amostra e destaca a presença de regiões de negócio; não infere propriedade só pela extensão do arquivo.
68 resultados
.builder/errors.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.builder/hoppscotch.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.builder/openapi.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.builder/permissions.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.builder/proposals/permissions-seed.sqlReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.builder/schema/dock/dock.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.config/dotnet-tools.jsonReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.editorconfigReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.githooks/commit-msgReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.github/workflows/ci.ymlReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.gitignoreReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.migrations/V20261003_BLD-1.sqlReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗.plintrix/features/dock/2026-10-03-dock-docas.mdSpec
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗AGENTS.mdReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗CLAUDE.mdReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗Directory.Build.propsReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗NuGet.ConfigReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗README.mdReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗Sil.Dock.slnxReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/API/Sil.Dock.Api/.gitkeepReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/API/Sil.Dock.Api/Program.csRegião de negócio
Lógica manual nas regiões sil-business. Preserve os marcadores e gere novamente pela spec.
Ver arquivo no GitHub ↗src/API/Sil.Dock.Api/Sil.Dock.Api.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.ApiControllers/Controllers/Client/DockController.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.ApiControllers/DependencyInjection/DockConfigApi.csRegião de negócio
Lógica manual nas regiões sil-business. Preserve os marcadores e gere novamente pela spec.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.ApiControllers/Sil.Modules.Dock.ApiControllers.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/DependencyInjection/DockConfigApp.csRegião de negócio
Lógica manual nas regiões sil-business. Preserve os marcadores e gere novamente pela spec.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Delete/DeleteDockCommand.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Delete/DeleteDockHandler.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Insert/InsertDockCommand.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Insert/InsertDockHandler.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Insert/InsertDockValidator.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Update/UpdateDockCommand.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Update/UpdateDockHandler.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Commands/Update/UpdateDockValidator.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Errors/DockErrors.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Mapping/DockMapper.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Queries/DockList.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Features/Dock/Queries/DockQueries.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Application/Sil.Modules.Dock.Application.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Contracts/DTOs/Dock/GetDockDTO.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Contracts/DTOs/Dock/InsertUpdateDockDataDTO.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Contracts/Permissions/DockPermissions.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Contracts/Queries/IDockQueries.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Contracts/Sil.Modules.Dock.Contracts.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Domain/Entities/DockEntity.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Domain/Repositories/IDockQueryRepository.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Domain/Repositories/IDockRepository.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Domain/Repositories/IDockUnitOfWork.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Domain/Sil.Modules.Dock.Domain.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Configurations/DockConfiguration.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/DependencyInjection/DockConfigInfra.csRegião de negócio
Lógica manual nas regiões sil-business. Preserve os marcadores e gere novamente pela spec.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Persistence/DockConstraintCatalog.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Persistence/DockDbContext.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Persistence/DockUnitOfWork.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Repositories/DockQueryRepository.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Repositories/DockRepository.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗src/Modules/Dock/Sil.Modules.Dock.Infrastructure/Sil.Modules.Dock.Infrastructure.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockDatabaseTests.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockFakes.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockHandlersTests.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockHttpTests.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockSamples.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Dock/DockValidatorTests.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/DockContractTests.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/DockDatabase.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/DockFakes.csReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/DockTestHost.csRegião de negócio
Lógica manual nas regiões sil-business. Preserve os marcadores e gere novamente pela spec.
Ver arquivo no GitHub ↗test/Sil.Modules.Dock.Tests/Sil.Modules.Dock.Tests.csprojReferência
Consulte o manifesto do backend para saber se o arquivo é gerenciado. Estar nesta árvore não concede permissão de edição.
Ver arquivo no GitHub ↗Nenhum resultado. Tente outro termo ou remova o filtro.
Quando a spec publica patch, o gerador também escreve Patch<Entidade>DataDTO, command, validator, handler e testes HTTP de atualização parcial. Altere a allowlist em api.patchFields ou via add endpoint ... patch --patch-fields ...; regenere com spec apply.
Campos sensitive: true saem mascarados também do ToString dos DTOs de entrada (InsertUpdate<Entidade>DataDTO e Patch<Entidade>DataDTO ganham um PrintMembers que imprime ***), porque o ASP.NET Core grava os argumentos da ação no log de Debug. A entidade continua com [MaskInLog] para a auditoria.
Organização do código gerado
Seção intitulada “Organização do código gerado”Cada tipo de produção tem seu arquivo. A Application organiza Features/<Entidade>/Commands/<Operação>, Mapping, Queries, Rules e Errors; DI fica em DependencyInjection. Domain separa Entities, Enums e Repositories; Contracts separa DTOs, Queries e Permissions; Infrastructure separa Configurations, Repositories e Persistence.
I<Entidade>Queries é o contrato público de leitura em Contracts. A Application coordena a consulta; a Infrastructure executa SQL. DTOs continuam concretos. O mapper usa CopyToEntity, ApplyPatchToEntity e ToGetDto.
A entidade mostra [Table] e [Column] nos campos próprios. Fluent API conserva colunas herdadas com prefixos por tabela, comprimentos, precisão, chaves e índices parciais. Os comentários técnicos ficam em inglês; nomes JSON e mensagens ao usuário preservam o português da spec.
Ao atualizar um backend com layout plano, revise spec plan e execute spec apply. A migração preserva regiões de negócio e remove apenas arquivos antigos reconhecidos e íntegros segundo o manifest. Colisões e edições externas bloqueiam a operação. Atualize referências manuais à interface de consultas (agora em Contracts) e aos métodos antigos do mapper.
Conflito SIL1601
Seção intitulada “Conflito SIL1601”Revise o diff e recupere a intenção da edição manual. Leve a mudança à spec ou à região apropriada, depois regenere. Não atualize hashes à mão para esconder conflitos.
A migration criada por dotnet builder new migration é da equipe: escreva o SQL revisado no UP sem conflito, porque ela não entra no manifesto. Depois do merge, BLD2004 impede alterá-la. As migrations de delta do spec apply continuam gerenciadas.
Se o arquivo já é idêntico ao que a spec gera, mas o manifesto não o registra ou guarda outro hash, o spec apply o lista como adopt. Ele grava só o hash no manifesto e não reescreve o arquivo.
Depois de um merge com conflito no .builder/manifest.json, não escolha um lado nem edite o manifesto à mão: resolva o código e rode dotnet builder manifest rebuild (com --dry-run para revisar). Ele refaz o manifesto, mesmo com os marcadores de conflito, só com arquivos comprovadamente gerados: idênticos à geração das specs ou com o hash que um manifesto do histórico git registrou, como a migration de delta da outra frente. O que não confere aparece em unresolved: o arquivo editado mantém a entrada antiga (SIL1601) e a migration alterada fica fora, como migration da equipe (BLD2004 depois do merge). Em seguida, rode o spec apply que o BLD4002 do check indicar.
Se uma aplicação foi interrompida, dotnet builder recover --dry-run verifica o journal; revise antes de executar recover sem preview. A recuperação também recusa edições posteriores incompatíveis.
Registros manuais e hosts
Seção intitulada “Registros manuais e hosts”MConfigApp, MConfigInfra e MConfigApi oferecem regiões sil-business estáveis para serviços, validadores e assemblies de controllers. O host real e MTestHost usam os mesmos registros. Infrastructure pode implementar portas de Application do próprio módulo; o caminho inverso continua proibido. Com uma regra services: true, MFakes.cs ganha a região M.fake-services para os fakes dessas portas (veja Regras com serviços).
MTestHost.StartAsync(connectionString: cs, configureServices: services => ...) usa infraestrutura real quando recebe a conexão. Sem ela, usa fakes. As substituições explícitas rodam por último; a região M.test-services também é preservada. Para consumir um assembly manual, acrescente a referência no arquivo manual <NomeDoProjeto>.Extensions.props ao lado do .csproj e registre seu ApplicationPart em MConfigApi.
Marque controllers ou actions manuais com [SilManualEndpoint]: o teste compara o OpenAPI derivado das specs apenas com os endpoints gerados. O marcador não desliga regras de API, autenticação ou autorização. Mantenha documentação e testes próprios para a superfície manual.
Comentários de código gerados são em pt-BR, inclusive os /// <summary> de handlers, repositórios, DTOs, controllers e constantes de permissão, no host e no cliente HTTP. Eles usam o rótulo e o gênero da entidade (Inclui uma doca.) e, nos campos, a description da spec. Não traduza à mão: a edição fica fora das regiões de negócio e para o spec sync (SIL1601). Identificadores C# e error_message continuam em inglês; display_message permanece em pt-BR e, desde a 0.2.12, cita o nome do campo entre aspas, como o inglês (O campo 'nome' é obrigatório.).
Repositórios e erros gerados
Seção intitulada “Repositórios e erros gerados”O CRUD dos repositórios usa GetByIdAsync, InsertAsync e Delete (exclusão física). A exclusão lógica continua marcando a entidade antes de salvar pela unidade de trabalho. Consultas de Application mantêm GetAsync.
Os erros gerados entram em .builder/errors.json com X0000001 até o cadastro. Cada entrada mantém origin e registrationKey próprios, inclusive entre insert, update e patch. O placeholder pode se repetir; códigos definitivos e origens continuam únicos. O cadastro remoto no Shipyard permanece pendente.
Entidade externa
Seção intitulada “Entidade externa”Uma entidade com builder.entity.external gera apenas Domain/Entities/<Entidade>Entity.cs e Infrastructure/Configurations/<Entidade>Configuration.cs, com mapeamento de leitura fora das migrations do EF. Não há repositório, handler, controller, testes próprios nem migration. O estado aplicado fica em .builder/external/<módulo>/<entidade>.json, e <Módulo>Database dos testes cria a forma mínima da tabela e expõe Insert<Entidade>Async().