AOSSIE-Org / AOSSIE-Org/InPactAI
BUG: Fix SQL schema issues (USER-DEFINED, FK order, duplicate blocks, triggers) + missing SUPABASE_JWT_SECRET in .env.example
- Langage dominant
- TypeScript
- Étoiles
- 102
- Forks
- 144
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
### Is there an existing issue for this?
- [x] I have searched the existing issues
### What happened?
## 📌 Issue Overview
While setting up the project locally, several schema-related issues cause SQL migrations to fail and the local environment to become unusable without manual fixes. In addition, one required environment variable (SUPABASE_JWT_SECRET) is missing from .env.example.
This makes the project difficult to set up for contributors.
## 🔍 Steps to Reproduce
1. Clone the repository
2. Run the provided SQL schema in Supabase or a local PostgreSQL instance
3. Attempt to run the app using .env.example
4. Observe multiple SQL errors and a runtime permission error
## 🎯 Expected Behavior
- Schema should apply cleanly without manual corrections
- No duplicate table or trigger definitions
- Foreign key references should resolve in proper order
- Enum types should be valid PostgreSQL types
- `.env.example` should include all required variables
- Local environment should work without “permission denied” errors
## 🚨 Actual Behavior
1. Invalid Enum Type Usage**
Several tables use this invalid syntax:
```sql
status USER-DEFINED DEFAULT 'value'::some_enum
```
This causes:
```
ERROR: syntax error at or near "USER"
```
### **2. Duplicate Table / Trigger Definitions**
- `proposals` table is defined twice
- `update_proposals_updated_at` function + trigger are defined twice
Causes:
```
ERROR: trigger "update_proposals_updated_at" already exists
```
### **3. Incorrect Table Creation Order**
Some tables reference others before they exist. Example:
```
FOREIGN KEY (user_id) REFERENCES public.profiles(id)
```
but `public.profiles` is created later.
Causes:
```
ERROR: relation "public.profiles" does not exist
```
### **4. Permission Errors After Schema Load**
After migrations succeed, creating a profile fails with:
```
permission denied for schema public
```
GRANT statements appear to be missing for `anon`, `authenticated`, and `service_role`.
### **5. Missing Required Env Variable**
`.env.example` is missing:
```
SUPABASE_JWT_SECRET=
```
This prevents the local app from running correctly.
## 📷 Screenshot
(Not included here, but can be added if maintainers want visual logs.)
## 💡 Suggested Improvements
1. Replace all `USER-DEFINED` placeholders with the actual enum types (`application_status`, `invite_status`, `payment_status`, `deal_status`).
2. Remove duplicate `proposals` table + duplicate trigger/function definitions.
3. Reorder tables so referenced tables exist before foreign keys are applied.
4. Add missing permissions back to the schema setup:
```sql
GRANT USAGE ON SCHEMA public TO anon, authenticated, service_role;
GRANT ALL ON ALL TABLES IN SCHEMA public TO service_role;
```
5. Add missing variable to `.env.example`:
```env
SUPABASE_JWT_SECRET=
```
I’m willing to submit a PR addressing these issues.
### Record
- [x] I agree to follow this project's Code of Conduct
- [x] I want to work on this issue
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Évaluation
Cette issue n'a pas encore été évaluée.