Implement frontend-backend integration from next_steps.md
Schema reconciliation: - Unified supabase_schema.sql: merged items (added draft_url, listing_screenshot_url, listing_preview_payload), conversations (added user_id, listing_url, seller, status), messages (added target_price), completed_trades (added listing_url, seller, conversation_id, run_id), plus agent_runs and agent_run_events tables - Updated migration 0002 to match unified schema with frontend column names - Updated RLS policies for cross-table access patterns Backend changes: - buy_writeback.py: column names aligned (sender/text instead of role/content), added item_id, username, last_message, last_message_at to conversation upserts - orchestrator.py: passes item_id from session metadata to buy writeback - Fixed test_buy_writeback.py to match new column names - API_CONTRACT.md: documented all 7 authenticated endpoints Frontend changes: - New frontend/lib/api.ts: typed FastAPI client with auth headers for all endpoints - New frontend/lib/sse.ts: fetch-based SSE client for React Native - New frontend/constants/config.ts: backend URL configuration - AuthContext: exposed accessToken for API calls - Item detail: Start Selling/Buying buttons, real-time agent progress, sell listing review UI, buy results display, sell results display - Agents settings: backend status indicator and agent list from /agents endpoint Tests: 403 passed (7 pre-existing Windows path failures unchanged) Frontend: TypeScript compiles clean (0 errors) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
S
samsam324 committed
10342836b019bd744b430fa158d5a4bee6e0637c
Parent: 5554161