UzzOps e uma plataforma interna para gestao de desenvolvimento de software, com foco em backlog, sprints, riscos, equipe e operacao de produto.
Status atual: base multi-tenant endurecida (migracoes 013-015) e QA concluido com evidencias.
docs/AI_PROJECT_CONTEXT_MASTER.md(fonte unica de contexto para IA/handoff)docs/RESTART_CHECKLIST.md(checklist rapido para reinicio de sessao)
- Rotas de autenticacao:
/login,/register,/pending - Selecao de projeto:
/projects - Workspace:
/projects/[projectId]/* - API com contexto de tenant por
x-tenant-idou cookieactive_tenant_id - RLS por
company_memberspara isolamento de dados por tenant - Criacao de projeto disponivel via frontend
- Next.js (App Router)
- React + TypeScript
- Supabase (Postgres + Auth)
- React Query
- Tailwind + componentes UI
- Instalar dependencias:
pnpm install- Configurar
.env.locala partir de.env.example - Em ambiente novo, aplicar primeiro
supabase/migrations/001_init.sqle depois as migracoes em ordem numerica dedatabase/migrations - Rodar aplicacao:
pnpm devComece por aqui:
docs/README_DOCUMENTATION.md
Referencias principais:
docs/AI_PROJECT_CONTEXT_MASTER.mddocs/RESTART_CHECKLIST.mddocs/PROJECT_OVERVIEW.mddocs/ARCHITECTURE.mddocs/API_DOCUMENTATION.mddocs/R01_EXTENDED.mdCODEBASE_MAP.mdDATABASE_SCHEMA.mdAI_CONTEXT.mddocs/QA_CHECKLIST_MIGRATION_015.mddocs/RELATORIO_FINAL_QA_MIGRATION_015.mddocs/ATA_IMPORT_MIGRATION_RUNBOOK.md
Migracoes-chave:
database/migrations/013_profiles_company_members.sqldatabase/migrations/014_fix_all_rls_policies.sqldatabase/migrations/015_harden_permissions_and_tenant_context.sql
Pontos criticos:
- Membership canonica em
company_members - Contexto ambiguo de tenant retorna
409 TENANT_CONTEXT_REQUIRED - Acesso cruzado entre tenants bloqueado por API e RLS
pnpm dev
pnpm lint
pnpm test
pnpm exec tsc --noEmit- Onboarding de novo tenant (nova empresa) ainda e SQL/admin-driven.
- Fluxo principal atual esta focado em uma empresa com multiplos usuarios/projetos.
- Se aparecer
409, valide contexto de tenant (active_tenant_ide headerx-tenant-id) antes de diagnosticar outras camadas.