Sprint 1 cerrado: seed real (34 preguntas) + REVOKE consent SELECT + validado en Cloud
This commit is contained in:
@@ -150,3 +150,18 @@ granted_at timestamptz not null default now()
|
||||
- `agg_segment(survey_id, dimensions[])` → agregación que **suprime** automáticamente celdas con
|
||||
`count < k_threshold` (devuelve "n insuficiente" en lugar del valor).
|
||||
- Un trigger/constraint que rechaza `respondent_id` no nulo cuando `is_anonymous = true`.
|
||||
|
||||
---
|
||||
|
||||
## Decisiones ratificadas en ejecución (Sprint 1)
|
||||
- **`options` en preguntas `rating` (F3, G4):** se guarda como objeto
|
||||
`{"min":1,"max":5,"min_label":"...","max_label":"..."}`, NO como array. El frontend (Sprint 2)
|
||||
debe manejar dos formas de `options`: array para `single_choice`/`multiple_choice`, objeto para
|
||||
`rating`.
|
||||
- **`required = false` en todas las preguntas seeded:** la obligatoriedad real se define en Sprint 2
|
||||
(validación del formulario). Nota: B1 estaba marcada obligatoria en el mockup; revisar al construir
|
||||
el formulario.
|
||||
- **Policies de `org_admin` presentes pero inertes en v1:** las policies RLS para `org_admin`
|
||||
(acceso multi-tenant por empresa) existen en migración 003, pero v1 NO tiene login de cliente
|
||||
("nosotros presentamos a cada empresa"). El acceso real lo hace el analyst vía `service_role`. El
|
||||
camino `org_admin` queda reservado para un futuro de auto-servicio, no operado en v1.
|
||||
|
||||
Reference in New Issue
Block a user