saveinmed/backend/docs/gemini-prompts.md
2026-01-08 14:28:34 -03:00

1.7 KiB

Roteiro de Prompts para o Gemini CLI

Status (pronto x faltando)

Pronto

  • Conteúdo descrito neste documento.

Faltando

  • Confirmar no código o estado real das funcionalidades e atualizar esta seção conforme necessário.

Este roteiro sequencial ajuda a guiar o Gemini CLI na construção dos componentes críticos do marketplace B2B farmacêutico saveinmed-performance-core, garantindo que o contexto de logística com rastreabilidade e a stack Go + PostgreSQL sejam respeitados.

Parte 1 — Contexto e Infraestrutura de Banco (Migrations)

Atue como um Arquiteto de Software Especialista em Marketplaces B2B. O projeto é o saveinmed-performance-core, focado em logística farmacêutica com rastreabilidade. Stack: Go (puro ou com Echo/Gin) e PostgreSQL.

Gere o SQL de migration inicial contendo as tabelas:

  • users (id, nome, email, senha_hash, role: admin/seller/buyer, company_id).
  • addresses (vinculado a empresas e usuários).
  • inventory (vinculado a produtos, com lote, validade e quantidade disponível).
  • cart_items (para persistência de carrinho).
  • audit_logs (para rastreabilidade de alterações em pedidos/lotes).

Mantenha as chaves estrangeiras com as tabelas companies e products já existentes no print do Swagger.

Parte 2 — Autenticação e Autorização (JWT + RBAC)

Com base nas tabelas criadas, implemente em Go o módulo de Autenticação v1:

  • POST /api/v1/auth/register: suporte para criação de usuário vinculado a uma empresa.
  • POST /api/v1/auth/login: retorna JWT com claims de Role e CompanyID.
  • Middleware de Auth que valida o token e verifica permissões (RBAC).

Use golang.org/x/crypto/bcrypt para o hashing de senhas.