From 432e7e451472e5cbc0c4249040e28e38090b050f Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Fri, 24 Apr 2026 10:31:17 +0000 Subject: [PATCH] Changes Co-authored-by: domfelipe <53182096+domfelipe@users.noreply.github.com> --- .../configure-telegram-webhook/index.ts | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/supabase/functions/configure-telegram-webhook/index.ts b/supabase/functions/configure-telegram-webhook/index.ts index b173ba0..66cd8e7 100644 --- a/supabase/functions/configure-telegram-webhook/index.ts +++ b/supabase/functions/configure-telegram-webhook/index.ts @@ -113,6 +113,34 @@ Deno.serve(async (req) => { return jsonResponse({ error: "Webhook configurado, mas falha ao salvar." }, 500); } + // Auto-provisionamento: agora que temos token + webhook, disparamos provision-agent + // de forma assíncrona. Não bloqueamos a resposta — falhas são tratadas via retry/admin. + if (agent.status === "provisioning") { + try { + const provisionUrl = `${supabaseUrl}/functions/v1/provision-agent`; + console.log( + `auto-provision: disparando para agent ${agent.id} (user ${userId})`, + ); + // Fire-and-forget: não fazemos await para não bloquear o cliente + fetch(provisionUrl, { + method: "POST", + headers: { + "Content-Type": "application/json", + Authorization: `Bearer ${serviceKey}`, + }, + body: JSON.stringify({ + agent_instance_id: agent.id, + user_id: userId, + }), + }).catch((err) => + console.error("auto-provision fetch error:", err) + ); + } catch (err) { + console.error("auto-provision trigger error:", err); + // Não re-throw — wizard do Telegram deve retornar sucesso mesmo se provision falhar + } + } + return jsonResponse({ success: true }); } catch (err) { console.error("configure-telegram-webhook fatal", err);