mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 22:21:10 +02:00
- Add uload project with apps/web structure
- Reorganize from flat to monorepo structure
- Remove PocketBase binary and local data
- Update to pnpm and @uload/web namespace
- Add picture project to monorepo
- Remove embedded git repository
- Unify all package names to @{project}/{app} schema:
- @maerchenzauber/* (was @storyteller/*)
- @manacore/* (was manacore-*, manacore)
- @manadeck/* (was web, backend, manadeck)
- @memoro/* (was memoro-web, landing, memoro)
- @picture/* (already unified)
- @uload/web
- Add convenient dev scripts for all apps:
- pnpm dev:{project}:web
- pnpm dev:{project}:landing
- pnpm dev:{project}:mobile
- pnpm dev:{project}:backend
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
105 lines
3.8 KiB
SQL
105 lines
3.8 KiB
SQL
-- VERIFICATION SCRIPT
|
|
-- Run this in Supabase SQL Editor to verify the migration was successful
|
|
|
|
-- ============================================================================
|
|
-- 1. CHECK TABLES
|
|
-- ============================================================================
|
|
|
|
SELECT 'job_queue table' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_tables WHERE schemaname = 'public' AND tablename = 'job_queue'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status;
|
|
|
|
-- ============================================================================
|
|
-- 2. CHECK FUNCTIONS
|
|
-- ============================================================================
|
|
|
|
SELECT 'enqueue_job function' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_proc p
|
|
JOIN pg_namespace n ON p.pronamespace = n.oid
|
|
WHERE n.nspname = 'public' AND p.proname = 'enqueue_job'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status
|
|
|
|
UNION ALL
|
|
|
|
SELECT 'claim_next_job function' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_proc p
|
|
JOIN pg_namespace n ON p.pronamespace = n.oid
|
|
WHERE n.nspname = 'public' AND p.proname = 'claim_next_job'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status
|
|
|
|
UNION ALL
|
|
|
|
SELECT 'complete_job function' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_proc p
|
|
JOIN pg_namespace n ON p.pronamespace = n.oid
|
|
WHERE n.nspname = 'public' AND p.proname = 'complete_job'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status;
|
|
|
|
-- ============================================================================
|
|
-- 3. CHECK VIEWS
|
|
-- ============================================================================
|
|
|
|
SELECT 'queue_health view' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_views WHERE schemaname = 'public' AND viewname = 'queue_health'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status
|
|
|
|
UNION ALL
|
|
|
|
SELECT 'failed_jobs_recent view' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_views WHERE schemaname = 'public' AND viewname = 'failed_jobs_recent'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status
|
|
|
|
UNION ALL
|
|
|
|
SELECT 'stuck_jobs view' as check_name,
|
|
CASE WHEN EXISTS (
|
|
SELECT FROM pg_views WHERE schemaname = 'public' AND viewname = 'stuck_jobs'
|
|
) THEN '✅ EXISTS' ELSE '❌ MISSING' END as status;
|
|
|
|
-- ============================================================================
|
|
-- 4. CHECK INDEXES
|
|
-- ============================================================================
|
|
|
|
SELECT
|
|
'Indexes on job_queue' as check_name,
|
|
COUNT(*)::text || ' indexes created' as status
|
|
FROM pg_indexes
|
|
WHERE schemaname = 'public' AND tablename = 'job_queue';
|
|
|
|
-- ============================================================================
|
|
-- 5. TEST ENQUEUE FUNCTION
|
|
-- ============================================================================
|
|
|
|
-- Create a test job
|
|
DO $$
|
|
DECLARE
|
|
v_job_id UUID;
|
|
BEGIN
|
|
SELECT enqueue_job(
|
|
'generate-image',
|
|
'{"test": true, "prompt": "Database verification test"}'::JSONB,
|
|
0
|
|
) INTO v_job_id;
|
|
|
|
RAISE NOTICE '✅ Test job created: %', v_job_id;
|
|
|
|
-- Clean up test job
|
|
DELETE FROM job_queue WHERE id = v_job_id;
|
|
RAISE NOTICE '✅ Test job cleaned up';
|
|
END $$;
|
|
|
|
-- ============================================================================
|
|
-- 6. FINAL STATUS
|
|
-- ============================================================================
|
|
|
|
SELECT
|
|
'🎉 DATABASE SETUP COMPLETE!' as message,
|
|
(SELECT COUNT(*) FROM pg_tables WHERE schemaname = 'public' AND tablename = 'job_queue') as tables_created,
|
|
(SELECT COUNT(*) FROM pg_proc p JOIN pg_namespace n ON p.pronamespace = n.oid WHERE n.nspname = 'public' AND p.proname IN ('enqueue_job', 'claim_next_job', 'complete_job')) as functions_created,
|
|
(SELECT COUNT(*) FROM pg_views WHERE schemaname = 'public' AND viewname IN ('queue_health', 'failed_jobs_recent', 'stuck_jobs')) as views_created;
|