HashLoad / HashLoad/pubpascal-dev
Infra: transferir Vercel, Supabase e domínio da conta pessoal para a HashLoad
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Contexto
O portal (pubpascal-dev) e os apps nativos (pubpascal-app) acabaram de ser
importados para a organização HashLoad. O código já está sob a HashLoad,
mas toda a infraestrutura que mantém o site no ar continua em contas
pessoais (conta do Isaque). Enquanto isso não mudar, a HashLoad é dona do
repositório mas não do ambiente de produção — cobrança, acesso, chaves e
suporte seguem atrelados a uma pessoa física.
Esta issue é o pedido formal para transferir essas contas/projetos para a
organização. Não é urgente e não deve ser feita agora — é uma tarefa de
pós-handover, para ser executada em janela combinada, porque envolve
troca de credenciais e risco de indisponibilidade.
Inventário — o que hoje está em nome pessoal
| Serviço | Para que serve no portal | Ação |
|---|---|---|
Vercel (projeto que serve pubpascal.dev) |
build e hospedagem do Next.js, variáveis de ambiente de produção, Analytics | transferir o projeto para uma Team da HashLoad |
| Supabase (projeto do portal) | Postgres (pacotes, publishers, workspaces), Auth, RLS, Storage | transferir o projeto para uma Organization da HashLoad |
Cloudflare (zona pubpascal.dev) |
DNS apontando para a Vercel (registro em nuvem cinza, não laranja) | transferir o domínio/zona para conta da HashLoad |
| Upstash Redis | rate limiting das rotas de API (@upstash/ratelimit) |
recriar/transferir o banco e rotar o token |
| Asaas | gateway de pagamento (patrocínios/checkout) | conta precisa ser da pessoa jurídica que emite as cobranças |
| Cloudflare Turnstile | anti-bot dos formulários | recriar as chaves sob a conta da HashLoad |
| GitHub OAuth App | login com GitHub e o fluxo de contribuição (fork/PR) | recriar como OAuth App da organização e atualizar o callback |
Variáveis/segredos que precisam ser reemitidos ou reapontados
Sem valores aqui — a lista serve de checklist na hora da migração.
- Vercel (Environment Variables):
NEXT_PUBLIC_SUPABASE_URL,NEXT_PUBLIC_SUPABASE_ANON_KEY,
SUPABASE_SERVICE_ROLE_KEY,NEXT_PUBLIC_SITE_URL,UPSTASH_REDIS_REST_URL,
UPSTASH_REDIS_REST_TOKEN,ASAAS_API_KEY,ASAAS_BASE_URL,ASAAS_WEBHOOK_SECRET,
NEXT_PUBLIC_TURNSTILE_SITE_KEY,TURNSTILE_SECRET_KEY,
NEXT_PUBLIC_GITHUB_AUTH_ENABLED,PUBLISH_VALIDATION_ENFORCE - GitHub Actions (secrets do repositório, usados pela esteira e pelo job de expiração de patrocínio):
SUPABASE_URL,SUPABASE_SERVICE_ROLE_KEY - Webhook do Asaas: reapontar a URL de callback depois que o projeto mudar de dono
- Supabase Auth: revisar as Redirect URLs e o provider do GitHub após recriar o OAuth App
Checklist da migração
- Criar Team na Vercel e Organization no Supabase sob a HashLoad
- Transferir o projeto Supabase (confirmar que a transferência preserva dados, RLS e migrations)
- Transferir o projeto Vercel e reconfigurar o domínio
pubpascal.devno projeto (lição já registrada: domínio precisa estar no projeto e a nuvem no Cloudflare precisa ficar cinza — laranja dá erro 525) - Transferir a zona DNS no Cloudflare
- Recriar Upstash, Turnstile e o OAuth App do GitHub sob a organização; rotar tokens
- Migrar a conta Asaas para a pessoa jurídica e reapontar o webhook
- Republicar as variáveis na Vercel e os secrets do repositório
- Rotar todas as chaves antigas que ficaram na conta pessoal
- Deploy de verificação + smoke test: home, busca, detalhe de pacote, login, publish, download de SBOM
Riscos
- A troca de domínio/DNS pode causar indisponibilidade curta — fazer em janela combinada.
- Chaves antigas continuam válidas até serem rotadas; rotar é parte da entrega, não um extra.
- O login com GitHub quebra no momento em que o OAuth App mudar, até o callback ser atualizado.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the inventory and migration checklist in this issue, then review the Vercel project, Supabase project, Cloudflare zone, Upstash, Asaas, Turnstile, GitHub OAuth App, and GitHub Actions secrets. Done means ownership is under HashLoad, credentials and callbacks are updated, old keys are rotated, and the listed smoke tests pass for the home page, search, package details, login, publish, and SBOM download.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github, next.js, supabase, typescript
- Domain
- authentication, cloud, databases, devops, infrastructure, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 28/100