Skip to content

Isolar contexto RLS das revisões e adicionar cobertura de autorização PostgreSQL - #107

Merged
devmnsoft merged 1 commit into
codex/s00-foundationfrom
codex/concluir-recuperacao-funcional-das-telas
Sep 25, 2026
Merged

devmnsoft merged 1 commit into
codex/s00-foundationfrom
codex/concluir-recuperacao-funcional-das-telas

Conversation

@devmnsoft

Copy link
Copy Markdown
Owner

Motivation

  • Corrigir vazamento de contexto RLS onde odca.tenant_id e odca.user_id podiam permanecer em conexões reutilizadas pelo pool após consultas de lista/detalhe de revisões.
  • Garantir que a função canônica de autorização odca.tenant_actor_has_permission seja validada em execução com a role restrita e que os endpoints reais respeitem isolamento e permissões.
  • Preparar regressão comportamental executável em PostgreSQL para prevenir regressões futuras relacionadas a RLS e autorização.

Description

  • Altere ReviewRequestsController para abrir uma transação ao iniciar as rotas de listagem e detalhe, chamar SetTenant com a transação e executar todas as consultas dentro dessa transação, commitando no final para evitar persistência do contexto na conexão (src/Odca.Api/Controllers/ReviewRequestsController.cs).
  • Adicionei um teste de integração tests/Odca.IntegrationTests/ReviewAuthorizationBehaviorTests.cs que provisiona dados sintéticos, força MaxPoolSize = 1, verifica odca.tenant_actor_has_permission e chama os métodos reais de assignees e list para comprovar comportamento: revisor autorizado, usuário sem permissão, vínculo bloqueado, organização suspensa, fila vazia e limpeza do contexto RLS.
  • Atualizei a auditoria docs/audits/CLIENT_FUNCTIONAL_AUDIT_2026-09-25.md para registrar a correção do vazamento RLS, a nova regressão PostgreSQL preparada e a classificação honesta de não-executado localmente.

Testing

  • npm run build passou localmente e validou os assets web (8 assets).
  • git diff --check passou e os arquivos modificados foram adicionados e comitados (Test review authorization against PostgreSQL).
  • Os comandos dotnet restore, dotnet build e dotnet test não foram executados no agente local porque o binário dotnet não está instalado; o novo teste PostgreSQL foi preparado mas não foi executado localmente por falta de PostgreSQL/SDK/Docker.
  • A regressão PostgreSQL está condicionada às variáveis de teste ODCA_TEST_* e ao runner CI (workflow fornece PostgreSQL 18 e role restrita) para execução automatizada; a preparação e o comando reproduzível foram documentados no README.md/audit.

Codex Task

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 25, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
🔒 Security Review ✅ Completed 2026-09-25T13:22:20.451030Z 79e0791 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@devmnsoft
devmnsoft merged commit a986dc8 into codex/s00-foundation Sep 25, 2026
2 of 4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant