saveinmed/backend/docs/gemini-prompts.md
Gabbriiel 90467db1ec refactor: substitui backend Medusa por backend Go e corrige testes do marketplace
- Remove backend Medusa.js (TypeScript) e substitui pelo backend Go (saveinmed-performance-core)
- Corrige testes auth.test.ts: alinha paths de API (v1/ sem barra inicial) e campo access_token
- Corrige GroupedProductCard.test.tsx: ajusta distância formatada (toFixed) e troca userEvent por fireEvent com fakeTimers
- Corrige AuthContext.test.tsx: usa vi.hoisted() para mocks e corrige parênteses no waitFor

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 04:56:37 -06: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.