Propuesta IA: modelo PropuestaIA y capa de datos economicos

La capa de economia existe para que el dinero viva en un solo sitio y nunca
cruce hacia el prompt. El pipeline recibe de ahi solo refPartida y nombre.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
urieljareth
2026-07-28 18:10:51 -06:00
co-authored by Claude Opus 5
parent 20f535d485
commit 4e103beb27
4 changed files with 173 additions and 0 deletions
@@ -0,0 +1,26 @@
-- Propuesta consultiva con IA: tabla nueva.
-- ADITIVA. No toca ninguna tabla ni fila existente.
CREATE TABLE IF NOT EXISTS "PropuestaIA" (
"id" TEXT NOT NULL,
"cotizacionId" TEXT NOT NULL,
"estado" TEXT NOT NULL DEFAULT 'borrador',
"contenidoIA" JSONB NOT NULL,
"contenidoEditado" JSONB,
"traza" JSONB,
"avisos" JSONB NOT NULL DEFAULT '[]',
"modelo" TEXT NOT NULL,
"aprobadaPor" TEXT,
"aprobadaAt" TIMESTAMP(3),
"createdAt" TIMESTAMP(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
"updatedAt" TIMESTAMP(3) NOT NULL,
CONSTRAINT "PropuestaIA_pkey" PRIMARY KEY ("id")
);
CREATE INDEX IF NOT EXISTS "PropuestaIA_cotizacionId_idx" ON "PropuestaIA"("cotizacionId");
ALTER TABLE "PropuestaIA"
ADD CONSTRAINT "PropuestaIA_cotizacionId_fkey"
FOREIGN KEY ("cotizacionId") REFERENCES "Cotizacion"("id")
ON DELETE CASCADE ON UPDATE CASCADE;