3.7 KiB
3.7 KiB
Hackerspace.sh Implementation Status
Critical Issues to Fix
1. Auth/Signup Flow ❌ BROKEN
- Problem: Signup tries to insert records directly but RLS blocks it
- Solution: Use trigger-based signup (already created in 003_signup_trigger.sql)
- Need to: Simplify signup to just create auth user with metadata, let trigger handle space/member creation
2. CLASP Attribution ❌ REMOVE
- Currently shows "powered by CLASP" but we're using Supabase Realtime
- Remove CLASP mentions from comms UI
3. Payment Integrations ❌ NOT IMPLEMENTED
- PayPal, Zeffy, Venmo connections show as UI only
- Need: OAuth flows or API key management
- Need: Webhook handlers for transaction sync
- Need: Manual transaction import
4. Import/Export ❌ UI ONLY
- CSV import shows column mapping UI but doesn't actually import
- Database connector shows form but doesn't connect
- Need: Actual file parsing and database inserts
5. Settings Actions ❌ UI ONLY
- Integration "Connect" buttons do nothing
- Webhook endpoint management doesn't work
- Need: OAuth flows, API key storage, webhook secret management
6. Member Management ❌ INCOMPLETE
- Add member button doesn't work
- Approve/deny pending members not functional
- Edit member details not working
7. Task/Project CRUD ❌ UI ONLY
- Cannot create new tasks/chores
- Cannot update task status
- Cannot create/update projects
- Kanban drag-and-drop not functional
8. Ops & KB ❌ UI ONLY
- Cannot add knowledge base entries
- Cannot add secrets
- Area lead assignment doesn't work
9. Contacts CRUD ❌ UI ONLY
- Add contact button doesn't work
- Cannot edit/delete contacts
10. Dashboard Stats ❌ FAKE DATA
- All numbers are hardcoded
- Need: Real database queries
What Works ✅
- Database schema (13 tables, all RLS policies)
- Auth infrastructure (Supabase client/server/proxy)
- Comms real-time messaging (Supabase Realtime)
- UI/UX design matches mockups exactly
- Dark theme with correct colors
- Sidebar navigation
Implementation Plan
Phase 1: Fix Auth (PRIORITY 1)
- Remove direct database inserts from signup
- Rely on trigger for space/member creation
- Handle "join via invite" properly
- Add proper error handling and loading states
Phase 2: Make All CRUD Functional
- Tasks: Create, update, claim, complete
- Projects: Create, update, change status
- Members: Add, edit, approve/deny, remove
- Contacts: Full CRUD
- KB: Add, edit, delete entries
- Secrets: Add, edit, delete (admins only)
Phase 3: Payment Integration
- Build OAuth flow for PayPal/Venmo
- API key storage for Zeffy
- Webhook handlers for transaction sync
- Manual transaction logging
- Auto-link transactions to members
Phase 4: Import/Export
- CSV parser for member data
- Database connector (PostgreSQL, MySQL)
- Export functionality
Phase 5: Settings & Admin
- Integration OAuth flows
- Webhook secret rotation
- Space settings updates
- Role/permission management
Phase 6: Testing
- Unit tests for all server actions
- Integration tests for auth flow
- E2E tests for critical paths
- Payment webhook testing
Testing Strategy
Unit Tests (Vitest)
- Server actions (auth, CRUD)
- Utility functions
- Form validation
Integration Tests
- Auth flows
- Database operations with RLS
- Webhook handlers
E2E Tests (Playwright)
- Full signup flow
- Task creation and claiming
- Project management
- Member management
- Payment reconciliation
API Documentation Needed
PayPal
- OAuth 2.0 for transaction access
- Webhook events for payments
- REST API for transaction history
Zeffy
- API key authentication
- Transaction sync endpoint
- Webhook for donations
Venmo
- Business API (if available)
- OAuth flow
- Transaction webhooks