# PROMPT 07 — Gestão de modelos e configuração administrativa Use o MASTER CONTEXT. ## Objetivo Implementar o ciclo de vida de modelos do workspace e a configuração que permite upload por perfis não administrativos. ## Funcionalidades ### Lista de modelos - listar somente workspace ativo; - ordem alfabética; - nome, data, criador e metadados úteis; - empty state e loading state; - seleção do modelo para operação. ### Upload de modelo - XLSX e CSV apenas; - drag-and-drop + file picker; - critérios de upload visíveis em Dialog/ajuda contextual; - até 10 modelos ativos por workspace; - impedir nome lógico duplicado; - validar cabeçalho/estrutura mínima; - permitir escolha de aba e linha de cabeçalho quando necessário; - persistir arquivo somente em storage privado aprovado pelo repo; - persistir metadados/`columns_schema` no PostgreSQL. ### Exclusão - owner/admin apenas; - Dialog de confirmação; - bloquear se houver job ativo usando o modelo; - auditar; - respeitar estratégia delete/soft delete já decidida. ### Setting de upload por não-admin - Switch oficial; - `owner/admin` alteram; - valor por workspace; - server-side authorization; - `gestor/agent` apenas recebem permissão de upload, não de exclusão/administração. ## Segurança - storage key não deve ser construída de modo vulnerável a path traversal; - MIME/extensão/estrutura devem ser checados; - não confiar em metadata do navegador; - sem bucket público. ## API/Actions Implemente no padrão do repo as operações equivalentes a: - listar; - criar; - excluir; - ler/alterar settings. ## Testes Cubra 10 modelos, 11º bloqueado, duplicidade, papel não autorizado, setting ligado/desligado, RLS, job ativo e arquivo inválido. ## Entrega Atualize documentação técnica e descreva o contrato de upload e erros possíveis.