eBuz v1.0 - Produção

Documento de especificação técnica completa da plataforma eBuz. Cobre requisitos funcionais e não-funcionais, arquitetura, modelo de dados, contratos de API, integracoes, deploy e testes.

152

Requisitos

0

Removidos

69

Tabelas

101

Rotas API

38

Testes

6

ADRs

Livro APE - Arquitetura de Produtos Educacionais

O livro que fundamenta toda a plataforma eBuz. 50 anos de pesquisa científica de 12 pesquisadores condensados em um framework prático de engenharia de transferencia de conhecimento.

Framework Universal

INPUTGATEKEEPERBLACK BOXOUTPUTFEEDBACK
PesquisadorContribuiçãoNo do Framework
Michael PolanyiConhecimento tácito - externalizar o que o expert sabe mas não consegue dizerINPUT
Malcolm KnowlesAndragogia - 6 pressupostos de como adultos aprendemINPUT
Wiggins & McTigheBackward Design - comecar pelo OUTPUT, não pelo conteúdoOUTPUT
Benjamin BloomTaxonomia cognitiva - 6 níveis hierarquicos de aprendizagemBLACK BOX
Robert Gagne9 eventos instrucionais - sequência confiavel para produzir aprendizagemBLACK BOX
K. Anders EricssonPrática deliberada - foco, feedback, adaptacao, desconfortoBLACK BOX
John SwellerCarga cognitiva - intrinseca, extrinseca, germinalBLACK BOX
William GlasserPiramide de retenção - modalidades de 10% a 95%BLACK BOX
Eugene Schwartz5 níveis de consciencia do compradorGATEKEEPER
Neil RackhamSPIN Selling - qualificação diagnosticaGATEKEEPER
Lincoln MurphyCustomer Success - Desired OutcomeFEEDBACK
Fred ReichheldNPS - métrica que prediz crescimento sustentávelFEEDBACK

12

Pesquisadores

50+

Anos de pesquisa

5

Nos do framework

14

Capitulos

Cursos Publicados

3 cursos publicados na plataforma com player estilo Spotify, progresso por aula, estrelas e comentários. 42h43 de carga horária total (17h33 de áudio, 13h22 de leitura, 11h45 de exercícios). Áudio gerado via Google TTS Chirp3-HD (voz masculina premium).

CursoMódulosAulasÁudioLeituraExercíciosTotalStatus
Arquitetura de Produtos Educacionais126711h527h305h3525hPublicado
Vibecoding PRO9443h194h203h4011h19Publicado
Pre-Vibecoding6302h221h322h306h24Publicado

Áudio medido via ffprobe (duração real dos MP3). Leitura estimada a 200 palavras/min sobre o conteúdo das aulas. Exercícios estimados em 5 min/aula.

3

Cursos

27

Módulos

141

Aulas

42h43

Carga Horária Total

Chirp3-HD

Engine de Áudio

Entrevista Estruturada com Jhow

Chat interativo com personalidade Jhow (IA) que extrai o conhecimento tácito do expert em 3 fases progressivas. Suporte a audio (transcricao via Groq Whisper) e upload de arquivos de referência.

1. Exploração

Perguntas abertas para mapear dominio e experiência do expert

2. Aprofundamento

Investiga pontos-chave, exemplos concretos e diferenciais

3. Sintese

Consolida em Resumo do Produto Educacional estruturado

Resumo do Produto Educacional

  • O que ensina: conhecimento e habilidades transferidos
  • Quais habilidades aplica: capacidades práticas desenvolvidas
  • Para quem resolve dor aguda: público-alvo com problema real

Stack Técnica

interview-engine.tsjhow-prompt.tsai-router.ts7 endpoints /api/interview/*interview_sessions (RLS)

Mapa de Contexto

Produto com 4 etapas sequenciais que transformam o conhecimento do expert em um documento estratégico completo. Aproximadamente 35 minutos com IA. Cada etapa gera um documento parcial, e o Passaporte consolida tudo.

1

Entrevista Estruturada

Chat com Jhow (IA) para extrair conhecimento tácito do expert

2

Segmentos de Mercado

Fluxo IA para identificar e validar segmentos-alvo

3

Persona Dissecada

Fluxo IA para construir persona detalhada com dores e desejos

4

Passaporte de Contexto

Documento final que consolida tudo em estrategia acionavel

4

Etapas

~35min

Tempo com IA

4

Documentos Parciais

1

Passaporte Final

Planos

Starter

R$ 19,90/mes

100.000 moedas

Professional

R$ 49,90/mes

500.000 moedas

Expert

R$ 99,90/mes

1.500.000 moedas

Esteira de Produtos - Precificacao

ProdutoTipoPreçoModeloPúblico
eBook APEDigital (PDF)GratuitoIsca de capturaLeads frios
Passaporte de Contexto (7 dias)SaaS (acesso temporario)R$ 19,90Acesso únicoLeads qualificados
Pre-VibecodingCurso online (30 aulas)R$ 47,00Acesso vitalícioIniciantes
Vibecoding PROCurso online (44 aulas)R$ 197,00Acesso vitalícioIntermediarios
Evento PresencialWorkshop 1 diaR$ 247,00Ingresso únicoExperts
Livro APELivro fisicoR$ 97,90Compra unicaExperts e educadores
Arquitetura de Produtos EducacionaisCurso premium (67 aulas, 12 módulos)R$ 2.000,00Acesso vitalícioExperts avancados

Funil de Conversão

eBook (gratis)
Passaporte (R$19,90)
Cursos (R$47-197)
Evento (R$247)
Curso Premium (R$2.000)

Métricas de Receita

R$ 150-500

Ticket medio por aluno

R$ 2.608,80

LTV potencial (esteira completa)

7 produtos

Esteira completa

Funil Evergreen - Sistema de Vendas Automatizado

Funil de 4 etapas que transforma tráfego frio em alunos do curso APE. Operação evergreen com webinário gravado de 45 minutos.

Páginas do Funil

PáginaRotaFunçãoStatus
Captura/capturaLanding page com formulário (nome + email). Entrada do funil via Meta Ads.Publicada
Webinário/webinarioPlayer do vídeo de 45 min + countdown + CTA para ofertaPublicada
Oferta/ofertaPágina de vendas do Curso APE. R$ 2.000 (12x R$ 197). 67 aulas, 12 módulos, garantia 7 dias.Publicada
Obrigado/obrigadoConfirmação pós-compra/registro. Próximos passos + acesso à área de membros.Publicada

Webinário APE - Roteiro Completo

Duração: 45-50 minutos

Frameworks: Duarte Resonate + StoryBrand + Phil M. Jones (P1-P5) + Nested Loops

Loops narrativos: 3 loops integrados

Slides: 30 slides Canva (1920x1080, dark theme)

Demo ao vivo: Framework dos 5 nós

Oferta: Stack completo do curso

Fluxo do Funil

Meta Ads
Captura
Email Sequence
Webinário
Oferta
Checkout
Obrigado
Área de Membros

Requisitos do Funil

RF-131Página de captura com formulário de leads
RF-132Página do webinário com player e countdown
RF-133Página de vendas com pricing e FAQ
RF-134Página de obrigado com próximos passos
RF-135Roteiro de webinário evergreen (45 min)

Checkout Transparente

Sistema de pagamento inline - o usuário nunca sai do eBuz. Integração direta com a API transparente do Assas para tokenização de cartão, geração de QR Code PIX e emissão de boletos, tudo dentro da própria plataforma.

Métodos de Pagamento

MétodoFluxoConfirmação
Cartão de CréditoDados inline → tokeniza → cobraImediata
PIXQR Code + copia-e-cola → polling 5sTempo real (~30s)
BoletoCódigo de barras + PDFAté 3 dias úteis

Pontos de Integração

PáginaProdutoValorParcelas
/ofertaCurso APER$ 2.00012x
/planosAcesso 7 diasR$ 19,901x
/livroLivro APER$ 97,903x
/créditosPacotesVariável1x

Arquitetura

API TransparenteStatus PollingComponente CompartilhadoWebhook Assas

Segurança

Rate limiting por usuário e IP
Validação de CPF
Sanitização de inputs
HTTPS obrigatório
Sem secrets no código cliente

Requisitos do Checkout

RF-136Checkout transparente com cartão inline
RF-137PIX com QR code e polling em tempo real
RF-138Boleto com código copiável
RF-139Componente reutilizável em 4 páginas
RF-140Rate limiting por usuário e IP

Visão do Produto

Proposta de Valor

Metodologia científica operacionalizada

12 pesquisadores transformados em fluxos step-by-step que qualquer expert consegue seguir.

IA como co-autora

Sugestões inteligentes que o expert aceita, edita ou refina. O humano sempre decide.

Multi-LLM resiliente

4 provedores com fallback automático. O aluno nunca ve erro técnico.

Documentos prontos

Cada fluxo gera um documento versionado e compartilhavel, pronto para uso.

Modelo de Negócio

ItemDetalhesProvedor
SaaS com assinatura mensalPlanos com créditos inclusosAssas
Trial 24h via SMS3 créditos, verificação anti-fraude por telefoneTwilio
Cupons promocionaisCódigos resgatáveis para créditos bonusInterno
Cursos como produtoPlayer Spotify-like com audio Google TTSGoogle TTS

Planos

Starter

R$ 19,90/mes

100.000 moedas

Professional

R$ 49,90/mes

500.000 moedas

Expert

R$ 99,90/mes

1.500.000 moedas

Requisitos Funcionais

142/142 implementados | 0 removidos

Requisitos Não-Funcionais

Performance

6 itens
RNF-001API p95 < 500msExcluindo chamadas IA
RNF-002IA < 15s (Claude) / < 30s (Ollama)Timeout configuravel
RNF-003TTFB < 200msVercel Edge Network
RNF-004100+ usuários concorrentesServerless auto-scale
RNF-005Cache de provedores IA1 minuto TTL
RNF-006Cache de respostas IA1 hora TTL

Segurança

10 itens
RNF-007RLS em todas as tabelasPostgreSQL Row Level Security
RNF-008TLS em todas as conexõesHTTPS obrigatório
RNF-009Vault AES-256-GCMSecrets criptografados no Supabase
RNF-010Anti-fraude SHA-256Hash de telefone para trial
RNF-011Rate limit SMS3 códigos/telefone/hora
RNF-012Max 5 tentativas por códigoBloqueio apos exceder
RNF-013Service_role apenas server-sideNunca expor no client
RNF-014Verificação admin em todas as rotasis_admin ou role check
RNF-015LGPD complianceExport e exclusão de dados
RNF-016Audit log de ações adminRastreabilidade completa

Escalabilidade

4 itens
RNF-017Vercel serverless auto-scaleSem gerenciamento de servidores
RNF-018Supabase managed PostgreSQLBackups automáticos
RNF-019Multi-LLM 4 provedoresDistribuição de carga
RNF-020Redis Upstash distribuidoCache global, baixa latência

Disponibilidade

3 itens
RNF-021Uptime 99.5%SLA mínimo aceitavel
RNF-022Zero erro visível ao alunoFallback em todas as camadas
RNF-023Mensagem amigavel em fallbackNunca mostrar stack trace

SEO

6 itens
RNF-024SSR para blogServer Components
RNF-025Meta tags dinamicosOpen Graph por página
RNF-026Sitemap XML automáticoAtualizado no build
RNF-027Robots.txt configuradoCrawlers permitidos
RNF-028JSON-LD estruturadoSchema.org para artigos
RNF-029Open Graph completoImagem, título, descrição

Arquitetura

Stack Técnica

CamadaTecnologiaVersão
FrontendNext.js15.5
React19
TypeScript5.9
Tailwind CSS4
Backend / APINext.js API Routes15.5
Supabase (PostgreSQL)managed
IAClaude Sonnet 4primary
Groq Llama 3.1 8Bfallback
Gemini 2.0 Flashfallback
Ollama Llama 3.2 3Blocal
InfraestruturaVercelauto
Hetzner VPSCX22
Redis Upstashserverless
pnpm9.x
IntegraçõesAssasv3
TwilioSMS
Google TTSChirp3-HD
Tiptapv2

Diagrama de Arquitetura

USUARIO -> VERCEL (Next.js 15.5) -> SUPABASE (PostgreSQL, Auth, Storage, RLS, Vault)
                                  -> AI ROUTER (Claude -> Groq -> Gemini -> Ollama -> Cache)
                                  -> SERVICOS (Assas, Twilio, Redis)
                                  -> HETZNER VPS (Ollama, Backups, Monitor)

Engine (src/engine/)

FLOW ENGINE
  engine.ts (orquestrador)
    |-- ai-router.ts (Multi-LLM fallback)
    |-- credit-manager.ts
    |-- quality-validator.ts
    |-- document-generator.ts
    |-- json-importer.ts
    |-- interview-engine.ts + jhow-prompt.ts
    |-- trial-manager.ts
    |-- sms-provider.ts
    +-- coupon-manager.ts

Fluxos de Usuário

Jornada do Aluno

1Registro
2Aceitar Termos
3Trial (opcional)
4Dashboard
5Executar Fluxo
6Biblioteca
7Assinatura

Entrevista Estruturada

1Início (Jhow)
2Conversa (texto/audio/arquivo)
3Sintese
4Documento

Jornada do Admin

1Login
2Dashboard Admin
3Módulos (fluxos, IA, analytics, créditos, usuários, planos, blog, QR, config)

Pagamento

1Aluno acessa /planos
2Checkout Assas
3Webhook
4Subscription + Créditos

Trial SMS

1Inserir telefone
2Normalizar E.164
3Hash SHA-256
4Verificar unicidade
5Enviar SMS
6Código
7Verificar
8Ativar 24h + 3 créditos

Modelo de Dados

Entidades Principais

profiles
idUUIDPK
full_nameTEXT
avatar_urlTEXT
is_adminBOOLEAN
roleTEXT
phoneTEXT
phone_verifiedBOOLEAN
flows
idUUIDPK
nameTEXT
slugTEXT
descriptionTEXT
iconTEXT
categoryTEXT
activeBOOLEAN
credits_costINT
context_pageTEXT
output_templateTEXT
flow_steps
idUUIDPK
flow_idUUIDFK
step_orderINT
titleTEXT
input_typeTEXT
prompt_templateTEXT
validation_rulesJSONB
flow_executions
idUUIDPK
user_idUUIDFK
flow_idUUIDFK
statusTEXT
current_stepINT
step_responsesJSONB
credits_consumedINT
user_documents
idUUIDPK
user_idUUIDFK
flow_idUUIDFK
titleTEXT
contentTEXT
content_jsonJSONB
versionINT
is_latestBOOLEAN
share_tokenTEXT
typeTEXT
user_credits
user_idUUIDPK
balanceINT
total_purchasedINT
total_consumedINT
credit_transactions
idUUIDPK
user_idUUIDFK
typeTEXT
amountINT
balance_afterINT
reference_typeTEXT
descriptionTEXT
interview_sessions
idUUIDPK
user_idUUIDFK
statusTEXT
messagesJSONB
extracted_dataJSONB
phaseTEXT
summaryTEXT
courses
idUUIDPK
slugTEXT
titleTEXT
instructorTEXT
total_lessonsINT
statusTEXT
course_lessons
idUUIDPK
module_idUUIDFK
slugTEXT
titleTEXT
youtube_urlTEXT
audio_urlTEXT
duration_minutesINT
is_freeBOOLEAN
blog_posts
idUUIDPK
titleTEXT
slugTEXT
contentTEXT
statusTEXT
meta_titleTEXT
reading_time_minutesINT
qr_codes
idUUIDPK
project_idUUIDFK
slugTEXT
target_urlTEXT
scan_countINT

Políticas RLS

TabelaSELECTINSERTUPDATE
profilesProprioServiceProprio
flowsPúblicoAdminAdmin
flow_stepsPúblicoAdminAdmin
flow_executionsProprioProprioProprio
user_documentsProprioServiceProprio
user_creditsProprioServiceService
credit_transactionsProprioServiceService
interview_sessionsProprioServiceService
coursesPúblicoAdminAdmin
course_lessonsPúblicoAdminAdmin
blog_postsPúblicoAdminAdmin
qr_codesAdminAdminAdmin

API Contract

Fluxos

GET/api/admin/fluxos
POST/api/admin/fluxos
PUT/api/admin/fluxos/[id]
DELETE/api/admin/fluxos/[id]
POST/api/flow/execute
POST/api/flow/suggest
POST/api/flow/complete
POST/api/flow/import

Entrevista

POST/api/interview/start
POST/api/interview/message
POST/api/interview/audio
POST/api/interview/upload
POST/api/interview/abandon
GET/api/interview/session
GET/api/interview/list

Documentos

GET/api/documents/[id]
PUT/api/documents/[id]
POST/api/documents/[id]/share
DELETE/api/documents/[id]/share
GET/api/documents/shared/[token]

Créditos

GET/api/credits/balance
GET/api/credits/history
POST/api/admin/credits/adjust

Blog

GET/api/admin/blog
POST/api/admin/blog
PUT/api/admin/blog/[slug]
DELETE/api/admin/blog/[slug]
GET/api/admin/blog/categorias
POST/api/admin/blog/categorias
POST/api/admin/blog/upload

QR Codes

GET/qr/[slug]
GET/api/admin/qr/projects
POST/api/admin/qr/projects
GET/api/admin/qr/codes
POST/api/admin/qr/codes
GET/api/admin/qr/analytics
POST/api/admin/qr/health-check
POST/api/admin/qr/import
GET/api/admin/qr/export

Auth / Trial

POST/api/auth/send-code
POST/api/auth/verify-code

Planos / Pagamentos

GET/api/admin/planos
POST/api/admin/planos
PUT/api/admin/planos/[id]
POST/api/checkout
POST/api/webhooks/assas

IA

GET/api/admin/ia/providers
PUT/api/admin/ia/providers
GET/api/admin/ia/health

Termos

GET/api/terms/current
POST/api/terms/accept
GET/api/terms/check

Integracoes

AI Router (Multi-LLM)

  • -Claude Sonnet 4 - sugestões, entrevista (15s, $0.003/$0.015 per 1k tokens)
  • -Groq Llama 3.1 8B - validação, fallback ($0.0001 per 1k tokens)
  • -Gemini 2.0 Flash - fallback secundário
  • -Ollama Llama 3.2 3B - local no VPS ($0)
  • -Whisper Large v3 - transcricao de audio
  • -Cache em memoria (1h TTL)
  • -Log completo em ai_sessions

Assas (Pagamentos)

  • -API REST em produção
  • -PIX, boleto e cartao de crédito
  • -Webhook com HMAC SHA-256
  • -Checkout -> pagamento -> subscription + créditos

Twilio (SMS)

  • -Código de 6 digitos
  • -Normalizacao E.164 para Brasil (+55)
  • -Rate limiting: 3 códigos/hora
  • -Max 5 tentativas por código
  • -Expiração em 10 minutos

Redis Upstash

  • -Cache de sessões
  • -Rate limiting distribuido
  • -Dados temporarios com TTL

Supabase

  • -PostgreSQL com RLS em todas as tabelas
  • -Auth: Google OAuth + email/senha
  • -Storage: blog-images (público, 5MB), interview-files (privado, 50MB), qr-images (público, 2MB)
  • -Vault: AES-256-GCM para secrets

Google TTS

  • -Chirp3-HD - voz masculina premium
  • -Audio para cursos Vibecoding PRO e Pre-Vibecoding
  • -Armazenado no Supabase Storage

Plano de Deploy

Ambientes

Vercel (Produção)

  • Push para main = deploy automático
  • Package manager: pnpm
  • Framework: Next.js 15.5 (auto-detected)
  • Dominio: app.ebuz.com.br
  • Edge Network global

Hetzner VPS

  • IP: 77.42.31.230
  • SSH porta 2847
  • Ollama (LLM local)
  • Backups automáticos
  • Monitor + alertas

Variaveis de Ambiente

# Supabase
NEXT_PUBLIC_SUPABASE_URL
NEXT_PUBLIC_SUPABASE_ANON_KEY
SUPABASE_SERVICE_ROLE_KEY
SUPABASE_DB_PASSWORD
SUPABASE_PROJECT_REF
SUPABASE_ACCESS_TOKEN

# IA
ANTHROPIC_API_KEY
GROQ_API_KEY
GEMINI_API_KEY
OLLAMA_API_URL

# Pagamentos
ASSAS_API_KEY
ASSAS_API_URL

# SMS
TWILIO_ACCOUNT_SID
TWILIO_AUTH_TOKEN
TWILIO_PHONE_NUMBER

# Cache
REDIS_URL
REDIS_TOKEN

# Segurança
VAULT_KEY
HMAC_SECRET

# App
NEXT_PUBLIC_APP_URL
VERCEL_TOKEN
HETZNER_HOST
HETZNER_USER

Protocolo de Deploy

  1. 1Rodar pnpm build localmente (verificar compilacao)
  2. 2Commitar com mensagem descritiva (prefixo convencional)
  3. 3Push para main no GitHub (ebuz-ia/ebuz-docs)
  4. 4Vercel detecta push e inicia build automático
  5. 5Preview deploy disponível para verificação
  6. 6Promote para produção (automático para main)
  7. 7Verificar /api/health no dominio de produção

Migrations

001_multi_tenant.sql
002_docs.sql
003_memories.sql
004_agents.sql
005_vault.sql
006_sessions.sql
010_subscriptions.sql
012_plans_flows.sql
018_flow_engine_core.sql
019_document_library.sql
020_credits_system.sql
025_coupons_signup.sql
031_interview_sessions.sql

Monitoramento

Cron a cada 5 min: monitor-v2.sh (13 checks de saúde)
Daily audit as 6h (7 categorias: disco, memoria, CPU, certificados, backups, logs, serviços)
Health endpoint: GET /api/health (status de todos os serviços)

Plano de Testes

Testes Unitarios

14 itens
normalizePhonealta
hashPhonealta
generateCodealta
maskPhonebaixa
hasEnoughCreditsalta
consumeCreditsalta
quickValidatemedia
validateInputmedia
replaceVariablesmedia
generateDocumentmedia
normalizacao de cupommedia
determinePhasemedia
parseJhowResponsemedia
exportAsHTML / exportAsMarkdownbaixa

Testes de Integração

8 itens
Fluxo completo (início -> documento)alta
Trial completo (SMS -> ativação)alta
Créditos (concessão -> consumo -> saldo)alta
Cupom (resgate -> créditos)media
Blog (criar -> publicar -> listar)media
Entrevista (início -> fases -> documento)alta
AI Router fallback (Claude off -> Groq)alta
AI Router cache hitmedia

Testes E2E

8 itens
Registro e login completoalta
Trial SMS end-to-endalta
Fluxo educacional completoalta
Biblioteca de documentosmedia
Admin: gestão de fluxosmedia
Admin: gestão de blogmedia
Pagamento e ativação de planoalta
Entrevista estruturada completaalta

Cenarios Criticos

  • Debito duplo de créditos (race condition na execução simultanea)
  • Race condition em resgate de cupons (two-phase commit)
  • Trial anti-fraude (mesmo telefone em contas diferentes)
  • Fallback de IA (Claude fora do ar, Groq assume sem erro visível)
  • RLS bypass (tentativa de acessar dados de outro usuário)
  • Admin access (rota admin acessada por usuário normal)
  • Versionamento de documento (criar nova versão sem perder anterior)
  • Expiração de trial (créditos bloqueados apos 24h)

ADRs (Architecture Decision Records)

Máquina de Livros

Fábrica modular de produção editorial. Cada projeto usa apenas os módulos que precisa.

Editor

Escrita capítulo a capítulo em Markdown

Implementado

Importação

Colar texto ou upload de .md/.txt

Implementado

Revisão IA

Gramática, editorial, acentuação, anti-IA

Implementado

Build PDF

Typst/LaTeX via VPS (gráfica + digital)

Implementado

Exportação

PDF, EPUB, Markdown

Implementado

Modelo de dados

TabelaDescriçãoRLS
book_projectsProjetos de livro (título, autor, tipo, formato, estágio)Sim
book_chaptersCapítulos (content_md, word_count, sort_order)Sim
book_reviewsRevisões IA (findings JSONB, tipo, severidade)Sim
book_buildsCompilações PDF/EPUB (status, output_url, pages)Sim
book_checklistsQA items por capítulo (tipo, checked)Sim

Planos comerciais

PlanoPreçoInclui
Livro CompletoR$ 2.000Escrita + Revisão + Diagramação + Publicação
Revisão + DiagramaçãoR$ 1.500Importação + Revisão + Diagramação + EPUB
DiagramaçãoR$ 1.000Importação + Diagramação + EPUB
PublicaçãoR$ 790EPUB + Audiolivro + Podcast

Arquivos do sistema

lib/book-engine/
  types.ts              # Tipos TypeScript (BookProject, BookChapter, etc.)
  accent-corrector.ts   # 200+ mapeamentos PT-BR
  anti-ia-scanner.ts    # 150+ padrões de vocabulário IA
  checklist-templates.ts # QA items por tipo de capítulo

src/routes/
  admin-livros-route.ts           # GET/POST projetos
  admin-livros-id-route.ts        # GET/PUT/DELETE projeto
  admin-livros-capitulos-route.ts # GET/POST capítulos
  admin-livros-capitulo-slug-route.ts # GET/PUT/DELETE capítulo
  admin-livros-build-route.ts     # POST build + GET histórico
  admin-livros-revisar-route.ts   # GET/POST/PUT revisões
  admin-livros-importar-route.ts  # POST importação
  admin-livros-exportar-route.ts  # GET/POST exportação

src/pages/
  admin-livros-dashboard-page.tsx # Dashboard com métricas
  admin-livros-novo-page.tsx      # Formulário novo projeto
  admin-livros-projeto-page.tsx   # Detalhe com módulos
  admin-livros-capitulo-page.tsx  # Editor Markdown
  admin-livros-revisao-page.tsx   # Revisão com tabs
  admin-livros-importar-page.tsx  # Importação (colar/upload)
  admin-livros-exportar-page.tsx  # Exportação (PDF/EPUB/MD)

app/maquina-livros/page.tsx       # Página de vendas pública

infra/supabase/migrations/
  034_maquina_livros.sql          # 5 tabelas + RLS + storage

Gerador de Passaportes (Passo 1)

Sistema de geração automatizada de Passaporte de Contexto e Segmentos de Mercado a partir de texto livre, arquivo ou PDF. O expert cola ou faz upload do seu conteúdo e a IA gera dois documentos completos com personas únicas por segmento.

Fluxo de uso

1

Upload de conteúdo

Expert cola texto, faz upload de .txt/.md ou envia .pdf para extração automática

2

Geração do Passaporte

IA analisa o conteúdo e gera Passaporte de Contexto com 11 seções estruturadas

3

Geração de Segmentos

IA identifica 6 segmentos de mercado com personas únicas, dores e desejos

4

Visualização e biblioteca

Documentos salvos na biblioteca com temas visuais configuráveis e slug inteligente

Requisitos funcionais

RF-P1-001Upload multi-formato (texto, .txt, .md, .pdf)Implementado
RF-P1-002Geração automática de Passaporte de Contexto via IA (11 seções)Implementado
RF-P1-003Geração automática de 6 Segmentos com personas únicas via IAImplementado
RF-P1-004Integração com biblioteca (user_documents)Implementado
RF-P1-005Consumo de moedas proporcional a tokens usadosImplementado
RF-P1-006Sistema de referências para aprendizado de formato (few-shot)Implementado
RF-P1-007Slug inteligente (nome + área, fallback random se colisão)Implementado
RF-P1-008Temas visuais configuráveis (teal, emerald, blue, violet, amber, rose)Implementado

Arquitetura

passaporte_projects

Tabela com RLS por usuário

Implementado

Flows virtuais

Agrupamento na biblioteca

Implementado

AI Router

Fallback Claude - Groq - Gemini

Implementado

Few-shot refs

Referências para aprendizado de formato

Implementado

Temas visuais

Teal
Emerald
Blue
Violet
Amber
Rose

Rotas

RotaDescrição
/passo1Upload + formulário de entrada
/passo1/[slug]/passaporteVisualização do Passaporte de Contexto
/passo1/[slug]/segmentosVisualização dos 6 Segmentos
/api/passo1/generateProcessamento IA (gerar passaporte + segmentos)
/api/passo1/extract-pdfExtração de texto de PDF

Arquivos do sistema

app/
  passo1/page.tsx                    # Upload + formulário
  passo1/[slug]/passaporte/page.tsx  # Documento Passaporte
  passo1/[slug]/segmentos/page.tsx   # Documento Segmentos

app/api/
  passo1/generate/route.ts           # Processamento IA
  passo1/extract-pdf/route.ts        # Extração de PDF

components/passaporte/
  passaporte-viewer.tsx              # Visualizador do Passaporte
  segmentos-viewer.tsx               # Visualizador dos Segmentos
  theme-selector.tsx                 # Seletor de temas visuais

lib/
  passaporte-references.ts           # Few-shot refs para formato
  slug-generator.ts                  # Gerador de slug inteligente

Auth / Onboarding

Melhorias no fluxo de autenticação e onboarding para reduzir fricção no cadastro e permitir gestão completa de usuários pelo admin.

Requisitos funcionais

RF-AUTH-001Reenvio de email de confirmaçãoImplementado
RF-AUTH-002SMTP customizado ([email protected])Implementado
RF-AUTH-003Criação manual de usuário pelo adminImplementado
RF-AUTH-004Password reset via Admin APIImplementado

Detalhes de implementação

Resend confirmation

Botão na tela de login para reenviar email quando o usuário não confirma na primeira vez

Implementado

SMTP customizado

Emails enviados de [email protected] via Supabase custom SMTP

Implementado

Criação manual

Admin cria usuário com email, nome, role e opção de trial automático

Implementado

Password reset

Admin pode resetar senha de qualquer usuário via Supabase Admin API

Implementado
eBuz Negócios Digitais - SDD v1.0 - Marco 2026