Matriz de Ferramentas Técnicas - ifpebj-ti/controle-acesso-veiculos GitHub Wiki

Matriz de Ferramentas Técnicas

Baseline técnica — 30/09/2026: GitHub Actions executa formatação/lint, builds, testes, cobertura, Dependency Review, build de containers, Trivy e ensaio de recuperação do PostgreSQL. A stack de PostgreSQL, API e frontend também é iniciada em um projeto Compose descartável e precisa passar por readiness. Pull Requests e pushes na main validam sem publicar. Somente tags SemVer revisadas publicam imagens no GHCR; proveniência e SBOM assinados ficam no GitHub Artifact Attestations. Rastreabilidade: Issues #90, #92, #318 e #325. As seções históricas abaixo permanecem para registrar a evolução acadêmica; quando houver divergência de estado, esta baseline prevalece.

Projeto: Controle de Acesso de Veículos
Instituição: Instituto Federal de Pernambuco — Campus Belo Jardim
Disciplina: Projeto Integrador — Práticas Reais de Software e Segurança
Equipe: José Ernandes Gonçalves Costa; Raíssa Beatriz Marinho dos Santos
Cliente inicial: Eurico Lopes — Setor de Transporte
Versão: 0.3
Status: Fundação de CI e registry implementada; deploy pendente
Data de referência: 31 de agosto de 2026
Documentos relacionados: Decisão de Stack Tecnológica v0.2; Arquitetura de Software — arc42 v0.2; Estratégia de Testes v0.3; Guia de Execução, Configuração, Deploy e Operação v0.2; Segurança e Privacidade v0.1


1. Objetivo

Este documento apresenta a matriz de ferramentas técnicas do projeto Controle de Acesso de Veículos.

A matriz transforma as decisões gerais de stack em escolhas práticas para:

  • Organizar e manter o monorepo.
  • Desenvolver o frontend.
  • Desenvolver o backend.
  • Persistir dados.
  • Criar migrations.
  • Executar testes.
  • Aplicar lint e formatação.
  • Criar containers.
  • Configurar pipeline de integração contínua.
  • Preparar deploy futuro na OCI.
  • Proteger credenciais e dependências.

Este documento diferencia ferramentas confirmadas, implementadas, propostas, pendentes e futuras. Uma ferramenta classificada como proposta ou futura não deve ser considerada configurada no projeto.


2. Decisões já confirmadas

Categoria Decisão Situação
Frontend React + TypeScript + Vite + Tailwind CSS Confirmada pela equipe e orientadora
Backend ASP.NET Core Web API + C# Confirmada pela equipe
Versão backend .NET 10 e net10.0 Confirmada pela equipe
Banco de dados PostgreSQL Confirmada pela equipe
ORM Entity Framework Core Confirmada como direcionamento técnico
Migrations Entity Framework Core Migrations Confirmada como direcionamento técnico
Arquitetura backend Clean Architecture adaptada ao MVP Confirmada como direcionamento arquitetural
Estilo arquitetural Monólito modular Confirmada como direcionamento arquitetural
Containerização Docker e Docker Compose Confirmados como direcionamento técnico
CI/CD GitHub Actions Confirmado como direcionamento técnico
Infraestrutura futura VM Linux na OCI Confirmada como direcionamento de implantação
Licença Apache License 2.0 Implementada no repositório

3. Ferramentas recomendadas

3.1. Matriz principal

Área Ferramenta Finalidade Situação
Runtime backend .NET 10 SDK Criar, restaurar, compilar e executar a API Implementado e validado localmente
API backend ASP.NET Core Web API Expor endpoints e organizar a camada HTTP Implementado e testado
Linguagem backend C# Implementar regras, casos de uso e persistência Implementado
Arquitetura backend Clean Architecture adaptada Separar Domain, Application, Infrastructure e API Implementada nos fluxos do MVP
Solução backend .slnx Organizar projetos .NET na solução Implementada
Banco de dados PostgreSQL Persistir dados relacionais e auditoria PostgreSQL 16 integrado e testado
ORM Entity Framework Core Mapear entidades, consultas e relações EF Core 10 implementado em Infrastructure
Migrations Entity Framework Core Migrations Versionar evolução do banco 16 migrations versionadas
Testes unitários backend xUnit v3 + Microsoft Testing Platform Testar domínio, regras e casos de uso Implementado
Assertions backend FluentAssertions Melhorar legibilidade de asserts Proposta recomendada
Testes de integração backend WebApplicationFactory + PostgreSQL de teste Testar API, EF Core e persistência Implementado
Testes de banco em container Testcontainers for .NET Subir PostgreSQL temporário em testes Implementado
Documentação da API OpenAPI e exemplos HTTP Documentar e testar endpoints da API Implementado para desenvolvimento
Validação backend Validação explícita na Application e nos endpoints Validar requisições e comandos Implementado por caso de uso
Logging backend ILogger do ASP.NET Core Registrar logs técnicos da aplicação Implementado com minimização e correlation ID
Frontend React + TypeScript + Vite + Tailwind CSS Construir a interface web Implementado e validado localmente
Ferramenta de build frontend Vite Executar desenvolvimento e gerar build Implementada e validada localmente
Estilização frontend Tailwind CSS 4 + @tailwindcss/vite Criar interface responsiva e componentes customizados Implementada e validada localmente
Gerenciador de dependências frontend npm Instalar dependências e executar scripts Implementado
Cliente HTTP frontend Axios Comunicar frontend com backend Implementado
Roteamento frontend React Router Organizar páginas e rotas Implementado
Formulários frontend React Hook Form Gerenciar formulários e validações Implementado
Validação frontend Zod Validar formulários e dados no frontend Implementado
Testes unitários frontend Vitest Testar componentes e utilitários React Implementado
Testes de interface frontend Testing Library Testar interação com componentes React Implementado com axe-core
Testes ponta a ponta Playwright Testar fluxos completos no navegador Futuro recomendado
Lint frontend ESLint Analisar padrões e problemas no código Implementado e validado localmente
Formatação frontend Prettier Padronizar formatação de código Implementado
Lint backend analyzers .NET e dotnet format Analisar formatação e regras de código C# Implementado na validação
Formatação backend dotnet format Padronizar formatação de C# Implementado na validação
Padronização global EditorConfig Padronizar estilos e indentação no monorepo Implementado
Containerização Docker Empacotar aplicação e dependências Implementada e analisada para AMD64/ARM64
Orquestração local Docker Compose Subir frontend, backend e PostgreSQL Implementada e validada por smoke test
CI/CD GitHub Actions Automatizar lint, build e testes Implementado e validado no Pull Request
Dependências Dependabot e Dependency Review Alertar e impedir novas dependências vulneráveis Implementado
Segredos GitHub Secret Scanning e revisão Identificar credenciais expostas Habilitado conforme os recursos do repositório; revisão continua obrigatória
Análise de imagens Trivy Analisar vulnerabilidades de imagens Docker por arquitetura Implementado na CI
DAST passiva OWASP ZAP Baseline Scan Observar a superfície HTTP em execução sem ataque ativo Implementado na CI; fluxos autenticados e pentest permanecem pendentes
Teste de carga k6 Executar testes básicos de carga Futuro recomendado
Proxy reverso Caddy ou Nginx Encaminhar tráfego e configurar HTTPS Pendente de discussão
HTTPS Let's Encrypt ou equivalente Proteger acesso à aplicação Futuro
Infraestrutura Oracle Cloud Infrastructure Hospedar a aplicação em VM Linux Futuro
Monitoramento OpenTelemetry + plataforma futura Acompanhar logs, métricas e traces Instrumentação implementada; operação externa pendente
Backup pg_dump e restauração isolada Gerar e validar backup do PostgreSQL Ensaio local e CI implementados; armazenamento externo pendente

4. Ferramentas do backend

4.1. .NET 10 e ASP.NET Core Web API

Tecnologias adotadas:

.NET 10
ASP.NET Core Web API
C#
Target Framework: net10.0
Formato de solução: .slnx

Situação atual:

  • Solução backend criada.
  • Projetos Domain, Application, Infrastructure e API criados.
  • Referências entre projetos configuradas.
  • Restore executado com sucesso.
  • Build executado com sucesso.
  • Comando inicial de testes executado sem falhas.
  • Workflow de CI configurado para compilar a solução .slnx.

Motivos da adoção:

  • Decisão confirmada pela equipe.
  • Compatibilidade com APIs web.
  • Compatibilidade com Entity Framework Core.
  • Compatibilidade com PostgreSQL.
  • Compatibilidade com Docker e Linux.
  • Adequação para futura VM Linux na OCI.
  • Suporte até maio de 2027.
  • Ferramentas e SDK disponíveis no ambiente de desenvolvimento.

4.2. Estrutura inicial do backend

src/backend/
├── ControleAcessoVeiculos.slnx
├── ControleAcessoVeiculos.API/
├── ControleAcessoVeiculos.Application/
├── ControleAcessoVeiculos.Domain/
└── ControleAcessoVeiculos.Infrastructure/

Responsabilidades previstas:

Projeto Responsabilidade
Domain Entidades, regras de negócio, contratos e objetos de valor
Application Casos de uso, DTOs, interfaces e orquestração de regras
Infrastructure Persistência, integrações externas, EF Core e implementações de interfaces
API Endpoints HTTP, configuração da aplicação, autenticação e injeção de dependências

4.3. Entity Framework Core

Tecnologias previstas:

Entity Framework Core
Provider PostgreSQL compatível
Entity Framework Core Migrations

Finalidade:

  • Mapear entidades C# para tabelas PostgreSQL.
  • Configurar relacionamentos.
  • Executar consultas.
  • Criar migrations.
  • Atualizar esquema do banco de forma versionada.
  • Integrar persistência à camada Infrastructure.

Cuidados:

  • Não colocar regras de negócio dentro do DbContext.
  • Não tratar migrations como substituto da validação do Modelo de Dados.
  • Revisar migrations antes de aplicá-las.
  • Não executar migrations em produção sem backup e procedimento aprovado.
  • Compreender SQL, índices, joins e transações mesmo usando ORM.

Situação: Definido como direcionamento técnico; ainda não instalado ou configurado.

4.4. xUnit

Recomendação:

xUnit

Finalidade:

  • Testar regras de domínio.
  • Testar casos de uso.
  • Testar validações.
  • Testar transições de estado.
  • Testar regras de quilometragem.
  • Testar correções e auditoria.

Exemplos futuros:

Registro de entrada válido cria acesso aberto.
Saída duplicada é bloqueada.
Quilometragem de entrada menor que saída é rejeitada.
Correção sem motivo é rejeitada.
Usuário sem permissão não corrige registro.

Situação: Proposta recomendada; projetos de teste ainda não criados.

4.5. FluentAssertions

Recomendação:

FluentAssertions

Finalidade:

Melhorar a legibilidade dos testes.

Exemplo conceitual:

resultado.Sucesso.Should().BeTrue();
registro.Status.Should().Be(StatusRegistroAcesso.Aberto);

Situação: Proposta recomendada.

4.6. Testes de integração

Recomendação inicial:

WebApplicationFactory
PostgreSQL de teste
Entity Framework Core

Evolução futura:

Testcontainers for .NET

Finalidade:

  • Testar endpoints da API.
  • Testar autenticação e autorização.
  • Testar persistência real.
  • Testar migrations.
  • Testar consultas.
  • Testar auditoria.
  • Testar resposta de erros.
  • Evitar testes que usem apenas mocks em fluxos críticos.

Situação: Proposta recomendada.

4.7. Swagger / OpenAPI

Recomendação:

Swagger / OpenAPI

Finalidade:

  • Documentar endpoints.
  • Testar a API localmente.
  • Visualizar contratos de requisição e resposta.
  • Ajudar a integração entre frontend e backend.
  • Apoiar demonstrações técnicas.

Cuidados:

  • Não expor Swagger publicamente em produção sem decisão e proteção adequadas.
  • Não expor exemplos com senhas, tokens ou dados pessoais reais.

Situação: Implementado em Development pelo PR #369. O documento nativo fica em /openapi/v1.json e a interface em /swagger. Operações protegidas indicam Bearer JWT, operações anônimas permanecem sem requisito incorreto e a autorização não é persistida pelo navegador. Swagger e OpenAPI não são publicados em produção.

4.8. Validação de DTOs

Opção Vantagem Situação
Data Annotations Simples e integrada ao ASP.NET Core Opção inicial possível
FluentValidation Regras mais organizadas e expressivas Opção recomendada para discussão

Recomendação inicial:

Usar Data Annotations para regras simples e avaliar FluentValidation
para regras mais complexas de entrada, saída, quilometragem e correção.

A decisão deve ser tomada antes da implementação dos primeiros endpoints.

Situação: Pendente de discussão.

4.9. Logs do backend

Recomendação inicial:

ILogger do ASP.NET Core

Finalidade:

  • Registrar inicialização.
  • Registrar erros técnicos.
  • Registrar falhas de conexão.
  • Registrar problemas de infraestrutura.
  • Apoiar diagnóstico local e futuro monitoramento.

Nunca registrar:

  • Senhas.
  • Hashes.
  • Tokens.
  • Strings de conexão.
  • RG ou CPF completos.
  • Segredos.
  • Dados pessoais desnecessários.

Situação: Proposta recomendada.


5. Ferramentas do frontend

5.1. React, TypeScript e Vite

Tecnologias adotadas:

React
TypeScript
Vite
npm

Situação atual:

  • Projeto React com TypeScript criado.
  • Dependências instaladas com npm.
  • ESLint executado sem erros.
  • Build executado com sucesso por meio de npm run build.
  • Aplicação iniciada localmente por meio de npm run dev.

Finalidade:

  • Criar a interface web.
  • Executar ambiente local de desenvolvimento.
  • Gerar build de produção.
  • Integrar ferramentas de qualidade e testes.
  • Preparar futuras telas do sistema.

5.2. Tailwind CSS 4

Tecnologias adotadas:

Tailwind CSS 4
@tailwindcss/vite

Configuração adotada:

Plugin do Tailwind integrado ao Vite.
Importação global de Tailwind por meio de @import "tailwindcss".

Finalidade:

  • Estilização utilitária.
  • Criar componentes customizados.
  • Manter consistência visual.
  • Permitir flexibilidade de design.
  • Criar interfaces responsivas.

Situação atual:

  • Plugin @tailwindcss/vite instalado.
  • Configuração adicionada ao vite.config.ts.
  • Build validado localmente.
  • Configurações legadas de PostCSS removidas.

5.3. React Router

Recomendação:

React Router

Finalidade:

  • Organizar páginas.
  • Criar rotas do sistema.
  • Proteger rotas autenticadas futuramente.
  • Separar telas de entrada, saída, consultas, veículos institucionais e administração.

Situação: Proposta recomendada.

5.4. React Hook Form

Recomendação:

React Hook Form

Finalidade:

  • Gerenciar formulários.
  • Validar campos.
  • Controlar erros de preenchimento.
  • Reduzir repetição em telas de entrada, saída e veículos institucionais.

Situação: Proposta recomendada.

5.5. Zod

Recomendação:

Zod

Finalidade:

  • Definir schemas de validação.
  • Validar formulários.
  • Melhorar integração com TypeScript.
  • Compartilhar regras simples de validação com a interface.

A validação do frontend não substitui a validação no backend.

Situação: Proposta recomendada.

5.6. Cliente HTTP

Recomendação:

Axios

Finalidade:

  • Centralizar URL da API.
  • Configurar interceptors de autenticação.
  • Tratar erros de requisição.
  • Facilitar configuração futura de tokens.

Situação: Proposta recomendada.

5.7. Testes de frontend

Recomendação:

Vitest
Testing Library
Playwright no futuro

Finalidade:

  • Vitest: testar componentes e utilitários.
  • Testing Library: testar interação com componentes React.
  • Playwright: testar fluxos completos no navegador.

Situação: Proposta recomendada.


6. Qualidade de código

6.1. Backend

Ferramenta Finalidade Situação
dotnet format Formatar código C# Proposta recomendada
Analyzers .NET Identificar problemas e padrões Pendente de decisão
EditorConfig Padronizar estilo no repositório Implementado
xUnit Testes unitários Proposta recomendada
FluentAssertions Assertions legíveis Proposta recomendada
Cobertura .NET Medir cobertura de testes Pendente de ferramenta

6.2. Frontend

Ferramenta Finalidade Situação
ESLint Analisar código TypeScript e React Implementado e validado localmente
Prettier Padronizar formatação Proposta recomendada
EditorConfig Padronizar estilo no repositório Implementado
Vitest Testes unitários frontend Proposta recomendada
Testing Library Testar componentes React Proposta recomendada
Playwright Testes ponta a ponta Futuro recomendado

6.3. EditorConfig

Situação atual:

O arquivo .editorconfig foi criado na raiz do monorepo.

Finalidade:

  • Padronizar indentação.
  • Padronizar quebras de linha.
  • Evitar diferenças de formatação entre Windows e Linux.
  • Melhorar consistência entre C#, TypeScript, JSON, YAML e Markdown.

7. Containerização

7.1. Docker

Tecnologia adotada:

Docker

Finalidade:

  • Padronizar ambiente.
  • Executar backend, frontend e banco.
  • Reproduzir ambiente local.
  • Preparar deploy futuro.
  • Facilitar execução em VM Linux na OCI.

Situação atual:

  • Dockerfile inicial do backend criado.
  • Dockerfile inicial do frontend criado.
  • Execução completa ainda precisa ser validada.

7.2. Docker Compose

Tecnologia adotada:

Docker Compose

Serviços previstos:

frontend
backend
postgresql
proxy reverso futuro

Situação atual:

  • Arquivo docker-compose.yml inicial criado.
  • Serviços de frontend, backend e PostgreSQL definidos.
  • Execução integrada ainda precisa ser validada antes de ser considerada pronta para uso.

7.3. Estrutura atual

infrastructure/
└── docker/
    ├── frontend/
    │   ├── Dockerfile
    │   └── nginx.conf
    ├── backend/
    │   └── Dockerfile
    └── docker-compose.yml

7.4. Segurança de containers

  • Usar imagens base atualizadas.
  • Usar imagens oficiais quando possível.
  • Não incluir segredos em imagens.
  • Executar processo sem privilégios quando aplicável.
  • Copiar apenas arquivos necessários.
  • Analisar imagens futuramente.
  • Atualizar dependências vulneráveis.

8. CI/CD e segurança automatizada

8.1. GitHub Actions

Tecnologia adotada:

GitHub Actions

Situação atual:

  • Backend executa restore, dotnet format, build com warnings como erros, 164 testes e coleta de cobertura.
  • Frontend executa instalação travada, lint e build.
  • Dependency Review bloqueia novas dependências de severidade alta ou crítica.
  • Containers de backend e frontend são construídos e analisados pelo Trivy.
  • Pull Requests e main reconstroem e analisam imagens sem publicar no GHCR.
  • Tags SemVer revisadas repetem as validações e publicam a release multi-arquitetura.
  • Proveniência e SBOM assinados ficam no GitHub Artifact Attestations, sem versões OCI auxiliares no GHCR.
  • Recuperação do PostgreSQL é ensaiada em banco isolado pela CI.

8.2. Pipeline atual

Push ou Pull Request
    ↓
Checkout do código
    ↓
Lint, formatação, builds e testes
    ↓
Build das imagens de backend e frontend
    ↓
Trivy HIGH/CRITICAL
    ↓
Pull Request: encerra sem credencial de package
main: encerra depois de build, scan, smoke test e ZAP, sem publicação
tag vMAJOR.MINOR.PATCH: repete validações → GHCR (`MAJOR.MINOR.PATCH` e `sha-<commit>`)
    ↓
GitHub Artifact Attestations: proveniência + SBOMs assinados

8.3. Evoluções previstas

Promoção controlada e deploy futuro

8.4. Dependabot

Recomendação:

Dependabot

Finalidade:

  • Avisar sobre dependências vulneráveis.
  • Criar Pull Requests de atualização.
  • Ajudar a acompanhar atualizações de dependências.

Situação: Configurado semanalmente para NuGet, npm, imagens Docker e GitHub Actions. Atualizações continuam sujeitas a Pull Request, revisão e CI; não há merge automático.

8.5. Secret Scanning

Recomendação:

GitHub Secret Scanning

Finalidade:

  • Identificar segredos enviados acidentalmente.
  • Apoiar proteção de tokens, senhas e chaves.
  • Evitar exposição de credenciais OCI ou banco.

Situação: Proposta recomendada.

8.6. Análise de imagens

Opções futuras:

Trivy ou ferramenta equivalente

Situação: Futuro recomendado.


9. Infraestrutura e OCI

9.1. Oracle Cloud Infrastructure

Direcionamento confirmado:

VM Linux na OCI

Situação: Futuro; infraestrutura ainda não criada.

9.2. Conhecimentos necessários

Antes da criação da infraestrutura, a equipe deverá compreender:

  • IAM.
  • MFA.
  • Código de bypass.
  • Compartments.
  • Compute.
  • VCN.
  • Subnets.
  • Security Lists ou Network Security Groups.
  • IP público.
  • SSH.
  • Firewall.
  • Armazenamento.
  • Custos e limites.
  • Backup.
  • Monitoramento.

9.3. Ações de segurança imediatas

  • Habilitar MFA.
  • Gerar e guardar código de bypass em local seguro.
  • Não compartilhar credenciais.
  • Não publicar chaves privadas.
  • Não publicar código de bypass.
  • Não abrir portas desnecessárias.
  • Não criar recursos pagos sem entendimento.
  • Não criar VM antes do planejamento da infraestrutura.

9.4. Proxy reverso

Opção Característica
Nginx Maduro, muito utilizado e flexível
Caddy Configuração simples e suporte facilitado a HTTPS

Recomendação:

Adiar a escolha até a etapa de deploy.

10. Ferramentas que ainda precisam de decisão

10.1. Pendências do frontend

  • Cliente HTTP: Axios ou Fetch API.
  • React Router.
  • React Hook Form.
  • Zod.
  • Prettier.
  • Vitest.
  • Testing Library.
  • Estrutura interna de pastas e componentes.
  • Estratégia de temas, cores e design system.
  • Gerenciamento de estado, se necessário.
  • Estratégia de autenticação e autorização no frontend.

10.2. Pendências do backend

  • Entity Framework Core e provider PostgreSQL.
  • Biblioteca de autenticação.
  • Estratégia de token ou sessão.
  • Data Annotations ou FluentValidation.
  • xUnit e FluentAssertions.
  • Projetos de testes.
  • Estratégia de testes de integração.
  • Ferramenta de cobertura.
  • Analyzers específicos.
  • Estratégia de logs mais avançada.
  • Swagger/OpenAPI.
  • Formato de erros da API.
  • Estratégia de seed de dados.

10.3. Pendências de infraestrutura

  • Validação do Docker Compose.
  • Ambiente de homologação.
  • Estratégia de PostgreSQL na OCI.
  • Proxy reverso.
  • HTTPS.
  • Domínio.
  • Monitoramento.
  • Backup.
  • Recuperação.
  • Estratégia de deploy.
  • Acesso SSH.
  • Política de segredos.
  • Testes de carga.
  • Scanner de imagens.

11. Ordem recomendada de execução

1. Atualizar documentos com o resultado da Issue #16
    ↓
2. Estruturar arquitetura inicial do frontend
    ↓
3. Definir e instalar bibliotecas frontend necessárias
    ↓
4. Definir e instalar ferramentas de testes backend
    ↓
5. Modelar banco de dados e entidades do domínio
    ↓
6. Configurar Entity Framework Core e PostgreSQL
    ↓
7. Criar migrations iniciais
    ↓
8. Implementar autenticação e autorização
    ↓
9. Criar primeiros endpoints do MVP
    ↓
10. Criar primeiras telas do MVP
    ↓
11. Validar Docker Compose integrado
    ↓
12. Evoluir CI com testes e cobertura
    ↓
13. Planejar deploy e infraestrutura na OCI

12. Próximas decisões recomendadas

12.1. Próxima atividade

A próxima atividade recomendada é estruturar a arquitetura inicial do frontend.

A atividade deverá definir:

- Organização de components, pages, routes, services, hooks, types e utils.
- React Router e rotas iniciais.
- Cliente HTTP centralizado.
- Convenções para componentes reutilizáveis.
- Layout base da aplicação.
- Página inicial temporária.

12.2. Decisão backend seguinte

Depois da estrutura inicial do frontend, a equipe deverá confirmar:

- xUnit.
- FluentAssertions.
- Estratégia de testes de integração.
- Swagger/OpenAPI.
- Data Annotations ou FluentValidation.
- dotnet format.
- Analyzers .NET.
- Entity Framework Core com provider PostgreSQL.

12.3. Decisão de infraestrutura

Depois da implementação inicial do MVP, a equipe deverá planejar:

- Validação do Docker Compose.
- Estratégia de containers.
- Evolução da pipeline de CI/CD.
- Infraestrutura na OCI.
- Proxy reverso.
- HTTPS.
- Monitoramento.
- Backup.

13. Status, validação e próximas etapas

Documento: Matriz de Ferramentas Técnicas
Versão: 0.3
Status: Ferramentas de desenvolvimento, teste e cadeia de entrega implementadas; implantação institucional pendente
Stack principal: Definida pela equipe e orientadora
Ferramentas complementares: Parcialmente definidas ou pendentes
Código: Monorepo e fluxos veiculares do MVP integrados
Backend: Clean Architecture adaptada, API .NET 10 e 262 testes na baseline atual
Frontend: React, Vite, TypeScript, Tailwind CSS 4, ESLint e 432 testes na baseline atual
Banco: PostgreSQL 16 integrado por EF Core com 16 migrations
Containers: Dockerfiles, Compose local, smoke test e Compose versionado para imagens do GHCR implementados
Pipeline: GitHub Actions com build, testes, CodeQL, Dependency Review, Trivy, ZAP, SBOM, proveniência e publicação multi-arquitetura
Deploy: Ainda não realizado

Principais decisões e situação atual

  • Backend estruturado com .NET 10, ASP.NET Core Web API e Clean Architecture adaptada.
  • Solução backend criada no formato .slnx.
  • Restore, build e execução inicial de testes do backend validados localmente.
  • Banco PostgreSQL, schema dbo, migrations e integração via Entity Framework Core implementados.
  • Frontend criado com React, TypeScript, Vite e Tailwind CSS 4.
  • Tailwind CSS configurado com o plugin oficial @tailwindcss/vite.
  • Lint e build do frontend validados localmente.
  • Docker Compose, Dockerfiles e workflows do GitHub Actions criados e validados na CI.
  • Workflow de backend ajustado para utilizar ControleAcessoVeiculos.slnx.
  • GitHub Actions validado com checks de backend e frontend aprovados no Pull Request da estrutura inicial.
  • 262 testes automatizados de Domain, Application, API e PostgreSQL real e 432 testes de frontend estão integrados à baseline técnica de 30/09/2026.
  • Imagens OCI são publicadas no GHCR; ambiente OCI, proxy reverso, monitoramento, backup protegido e deploy permanecem fora do escopo implementado.
⚠️ **GitHub.com Fallback** ⚠️