- Drop @supabase/supabase-js entirely; add drizzle-orm + postgres (porsager) driver - New packages/db: schema (pgSchema ordinarthur_os), client factory, migrate runner, drizzle-kit config - SQL migrations: 0000_init (pgcrypto + schema), 0001_jobs (jobs + job_search_criteria, no RLS) - Rewrite apps/api db module with DI symbols DB/DB_HANDLE + @InjectDb() decorator - Rewrite jobs.service.ts with Drizzle queries (upsert via onConflictDoUpdate, arrayOverlaps for stack filter) - Replace SUPABASE_* env vars with DATABASE_URL in env config + .env.example - Add docker-compose.yml (Postgres 16-alpine, dev only) - Add deploy/k8s/postgres.yaml (StatefulSet + PVC), migrate.job.yaml, updated secrets.template.yaml - Update all docs (README, PLAN, ARCHITECTURE, CLAUDE.md, AGENTS.md, packages/db/README.md) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
11 lines
378 B
SQL
11 lines
378 B
SQL
-- 0000_init.sql — Phase 0
|
|
-- Pose le socle: extension pgcrypto + schéma dédié.
|
|
-- Ces instructions sont idempotentes et sûres à ré-exécuter.
|
|
|
|
CREATE EXTENSION IF NOT EXISTS pgcrypto;
|
|
|
|
CREATE SCHEMA IF NOT EXISTS "ordinarthur_os";
|
|
|
|
COMMENT ON SCHEMA "ordinarthur_os" IS
|
|
'Assistant personnel single-user d''Arthur. Accès applicatif exclusivement via l''API NestJS.';
|