-- L12 Zeiterfassung: approval workflow for manual time entries and correction proposals. -- Additive columns only (existing rows: tracked + approved = unchanged behaviour). No new table -> no RLS/TENANT_MODELS change. -- CreateEnum CREATE TYPE "TimeEntrySource" AS ENUM ('tracked', 'manual'); -- CreateEnum CREATE TYPE "TimeApprovalStatus" AS ENUM ('approved', 'pending', 'rejected'); -- AlterTable ALTER TABLE "time_entries" ADD COLUMN "approval_status" "TimeApprovalStatus" NOT NULL DEFAULT 'approved', ADD COLUMN "approved_at" TIMESTAMP(3), ADD COLUMN "approved_by_id" TEXT, ADD COLUMN "note" TEXT, ADD COLUMN "pending_change" JSONB, ADD COLUMN "rejection_reason" TEXT, ADD COLUMN "source" "TimeEntrySource" NOT NULL DEFAULT 'tracked'; -- AlterTable ALTER TABLE "work_sessions" ADD COLUMN "manual" BOOLEAN NOT NULL DEFAULT false; -- CreateIndex CREATE INDEX "time_entries_tenant_id_approval_status_idx" ON "time_entries"("tenant_id", "approval_status");