Abra o relatório e leia o motivo. Se o relatório for seguro, selecione Run anyway. Se o motivo for Safety check unavailable, a verificação não pôde ser executada. Selecione Run anyway depois de ler o relatório.
Primeiros passos
A triagem coleta relatórios de bugs dos seus usuários e das suas ferramentas. Um agente investiga cada relatório no seu app Bubble e documenta a causa e uma correção.
Como funciona
Um relatório chega por meio da API, de um endereço de e-mail ou de um formulário web.
Buildprint processa o relatório em um tíquete de triagem (além de sanitizá-lo e verificá-lo quanto a tentativas de injeção).
O agente lê seu app, os logs e os dados para encontrar a causa.
O relatório se torna um item numerado na caixa de entrada, por exemplo, TRI-12. Ele mostra a gravidade, a causa e uma correção proposta.
Se você permitir, o agente fará a correção em uma nova branch. Um builder aprova cada merge.
Ativar a triagem
Abra Triage no seu projeto.
Selecione Enable triage.
Escolha como os relatórios chegarão ao projeto: API, Email ou Web form.
Você pode adicionar outras formas mais tarde em Triage → Settings. É necessário ter acesso de build ao projeto para alterar as configurações de Triage.
Coletar relatórios
Formulário web
Use um formulário web quando seus usuários relatarem bugs por conta própria.
Abra Settings → Web form e selecione Create form.
Dê ao formulário o nome do local onde ele ficará, por exemplo, Customer portal.
Edite os campos, o logotipo, a cor de destaque e o texto. Buildprint salva cada alteração automaticamente.
Selecione Share e escolha como compartilhar o formulário.
Link abre o formulário em sua própria página. Adicione
?email=ou?url=ao link para preencher esses campos.Report button adiciona um botão flutuante ao seu app. Cole o snippet antes de
</body>. O botão envia a URL da página atual junto com o relatório.Embed mostra o formulário dentro de uma das suas páginas.
Use um endereço de e-mail quando os relatórios já chegarem a uma caixa de entrada de suporte.
Abra Settings → Email e selecione Create address.
Dê ao endereço o nome do local de onde vêm os relatórios, por exemplo, Support inbox.
Copie o endereço e encaminhe os relatórios de bugs para ele.
Buildprint adiciona cada resposta na mesma conversa de e-mail ao relatório original. O agente lê as respostas durante a investigação.
Adicione Allowed senders para aceitar e-mails apenas de pessoas em quem você confia. Insira um endereço, como [email protected], ou um domínio inteiro, como acme.com. Quando a lista está vazia, Buildprint aceita e-mails de qualquer pessoa. E-mails de outros remetentes chegam como Blocked, com o motivo Sender not on allowlist, e o agente não é iniciado.
API
Use a API para enviar relatórios do Sentry, de um agente de monitoramento, de um sistema de suporte ou do seu próprio app.
Abra Settings → API e selecione Create key.
Dê à chave o nome da ferramenta que a usará.
Copie a chave. Buildprint a exibe apenas uma vez.
Copie o exemplo de solicitação em Send a report. Para permitir que seu agente de programação se conecte ao seu app, selecione Copy prompt e cole o prompt no agente.
Envie uma solicitação POST com a chave no cabeçalho Authorization:
curl -X POST <your request URL from Settings → API> \
-H "Authorization: Bearer <your key>" \
-H "Content-Type: application/json" \
-d '{
"description": "Clicking Checkout on Safari does nothing.",
"url": "https://myapp.com/version-test/checkout",
"reporterEmail": "[email protected]",
"externalId": "sentry-4821"
}'Apenas description é obrigatório.
Campo | Tipo | Descrição |
|---|---|---|
| string | O que deu errado. Até 50.000 caracteres. |
| string | Um resumo curto. Buildprint cria um a partir da descrição se você não o informar. |
| string | O e-mail da pessoa que teve o problema. |
| string | O nome da pessoa que teve o problema. |
| string | A página onde o problema ocorreu. |
| string |
|
| string | Quando o problema ocorreu, como data e hora no formato ISO 8601. |
| string | Seu ID para o relatório. Se você enviar o mesmo ID novamente, Buildprint retornará o primeiro relatório e não criará outro. |
| object | Qualquer objeto JSON, com até 20.000 caracteres. |
| string[] | Até 10 URLs de arquivos. Use URLs públicas ou assinadas para que Buildprint possa abri-las. |
Dê a cada ferramenta sua própria chave. Assim, você poderá alternar ou excluir uma chave e manter as outras funcionando.
Configurar o agente
Abra Settings → Agent para escolher como o agente funciona.
Triage new reports inicia o agente em cada relatório que passa pela verificação de injeção.
Run as define quais provedores de IA e créditos o agente usa. O agente usa o Fallback user quando a primeira pessoa não tem um modelo funcionando.
Models lista os modelos em ordem. O agente usa o primeiro modelo que o usuário consegue executar.
Additional instructions são incluídas em cada execução. Descreva seu app, seus ambientes e o que é mais importante. Por exemplo: "O app live é usado por clínicas. Tudo que envolve agendamentos tem alta gravidade."
Fix bugs define o que o agente faz quando encontra um bug que pode corrigir.
Base branch é a branch de onde as correções partem e para onde retornam após o merge.
Fix on a new branch dá a cada correção sua própria branch. Quando está desativado, o agente altera diretamente a branch base.
O agente investiga no modo Plan, então Buildprint bloqueia alterações no seu app. O agente altera seu app apenas para fazer uma correção que você permitir.
Como o agente investiga
O agente clona a branch à qual o relatório se refere. Ele usa o ambiente ou a URL do relatório para escolher a branch. Se o relatório não informar, o agente usa live.
Em seguida, o agente acompanha as páginas, os elementos, os workflows, os tipos de dados e as regras de privacidade envolvidos. Quando o editor não explica o comportamento, ele também:
Lê registros do seu banco de dados.
Lê os logs do seu servidor.
Faz login como usuário e abre o app para reproduzir o bug. Quando possível, usa a versão de teste e um usuário de teste. Ele apenas observa e navega. Não salva, envia, paga nem exclui nada.
Ler um relatório
Cada relatório na caixa de entrada mostra seu número, gravidade, origem e data.
Status | Significado |
|---|---|
New | O relatório chegou e aguarda a verificação de injeção. |
Blocked | A verificação de injeção interrompeu o relatório. Ele aguarda sua ação. |
Triaging | O agente está investigando. |
Ready | O agente terminou e documentou o que encontrou. |
Failed | O agente não conseguiu terminar. |
Abra um relatório para ler o resultado do agente.
Findings é uma tabela curta para ler primeiro. Ela mostra o que foi observado, o que era esperado, a causa, a correção e o que verificar.
What caused it rastreia o caminho no seu app e marca a etapa ou o campo com problema.
The fix mostra cada alteração no Bubble antes e depois.
Original report mostra o que o relator enviou, com arquivos e respostas de e-mail. Buildprint o recolhe por padrão.
O painel lateral mostra a gravidade, o tipo de relatório, a confiança do agente e se ele reproduziu o bug.
Gravidade | Uso |
|---|---|
Critical | Perda de dados, um problema de segurança ou um fluxo essencial que está quebrado para todos. |
High | Um fluxo quebrado sem solução alternativa. |
Medium | Um bug com solução alternativa. |
Low | Problemas cosméticos, perguntas e solicitações de recursos. |
O tipo pode ser Bug, Feature request, Question, User error ou Noise.
Selecione Re-triage para executar o agente novamente no relatório. Faça isso depois de alterar as instruções do agente ou o app.
Corrigir um bug
A configuração Fix bugs controla o que acontece quando o agente encontra um bug.
Off apenas investiga. O agente nunca altera o app.
Ask propõe uma correção. Selecione Fix it no relatório para permitir que o agente a faça.
Auto corrige bugs imediatamente quando o agente tem alta confiança. Para os demais, ele pergunta o que você deseja fazer.
O agente faz a menor alteração que corrige o bug. Com Fix on a new branch ativado, ele faz a alteração em uma branch nomeada de acordo com o relatório, por exemplo, tri-12. Ele verifica a alteração e a aplica à branch.
O agente nunca faz merge nem deploy por conta própria. Quando a correção está pronta, o relatório solicita que você faça o merge. Selecione Merge para permitir que o agente faça o merge da branch de correção na branch base. Se houver conflitos no merge, o agente os lista e para.
Teste a correção na branch antes de fazer o merge. Faça o deploy para live por conta própria.
Injeção de prompt
Os relatórios vêm de pessoas de fora da sua equipe, então um relatório pode tentar dar instruções ao agente. Buildprint verifica cada relatório antes que o agente o veja. A verificação bloqueia relatórios que fazem coisas como:
Dar instruções ao agente ou a uma IA.
Tentar alterar a função ou as regras do agente.
Pedir para revelar dados ou segredos.
Pedir para enviar dados para fora do app, por exemplo, para uma URL, um endereço de e-mail ou um webhook.
Pedir trabalho que não esteja relacionado ao problema relatado.
Ocultar ou codificar instruções.
Um relatório bloqueado mostra o motivo. Leia o relatório. Se for seguro, selecione Run anyway.
Se a verificação não puder ser executada, Buildprint bloqueará o relatório e exibirá Safety check unavailable.
Solução de problemas
Um relatório está bloqueado
Um relatório falhou
Verifique se o usuário de Run as tem um modelo funcionando e créditos suficientes. Em seguida, selecione Re-triage.
Não vejo Fix it em um relatório
Fix bugs deve estar definido como Ask ou Auto, e o agente deve relatar um bug. Perguntas, solicitações de recursos e erros do usuário não recebem uma correção.
Um e-mail encaminhado é bloqueado com o motivo Sender not on allowlist
O remetente não está na lista Allowed senders. Adicione o endereço ou o domínio. Para fazer a triagem desse relatório, selecione Run anyway.
Uma solicitação da API retorna 401
A chave está errada, foi alternada ou excluída. Crie uma nova chave em Triage Settings → API. Observe que essa chave da API não é um token de acesso pessoal das configurações de Integrations.
Não consigo alterar as configurações de Triage
É necessário ter acesso de build ao projeto. Peça ajuda a um administrador do projeto ou do workspace.