Mejoras de sesion: estabilizacion, IA, Nexus Yonke y marketplace B2B
- F0 blindaje: Redis/Celery, pg_hba sin trust LAN, secretos a env 600, backups, webhook auth, jobs muertos - F1 caja: bugs POS, reembolsos al corte, apartados, CFDI, topes de descuento en cotizacion/apartado - F2/F7 IA de catalogo: autocategorizacion, dedup de SKUs con embeddings, OCR de facturas, descripciones, claves SAT, limpieza de fitment - F3 IA en el flujo: vision Yonke, preguntas MeLi, venta cruzada, anomalias, sinonimos, busqueda semantica (rerank/embeddings) - F4/F8 escala y cartera: /metrics+Prometheus+Grafana, pool, score de credito, churn, metricas multi-tenant - Nexus Yonke (M1-M6): modelo de datos 1-de-1, alta por donador, vitrina publica, MeLi usado, consignacion, garantia por dias, reportes, etiquetas - Marketplace B2B entre yonkes (catalogo + pedidos cross-tenant) - Seguridad: auth en /api/admin/* (35 endpoints), alertas por tenant - Migraciones v4.27/v4.28; timers expire-demos y rollup-metrics
This commit is contained in:
@@ -2,15 +2,20 @@
|
||||
-- Applies to: master DB (nexus_autoparts) and all tenant DBs
|
||||
|
||||
-- ─── MASTER DB ─────────────────────────────────
|
||||
-- These indexes only exist in the master DB (nexus_autoparts). On tenant DBs
|
||||
-- (the `parts`/`warehouse_inventory` OEM tables live only in master) they are
|
||||
-- skipped via existence guards so this migration can run against tenants too.
|
||||
|
||||
-- Index for parts name lookups (used by get_part_types, shop supplies)
|
||||
CREATE INDEX IF NOT EXISTS idx_parts_name_part ON parts(name_part);
|
||||
CREATE INDEX IF NOT EXISTS idx_parts_name_part_pattern ON parts(name_part text_pattern_ops);
|
||||
|
||||
-- Partial index for warehouse_inventory stock lookups (already created in Fase 1,
|
||||
-- kept here for completeness on fresh installs)
|
||||
CREATE INDEX IF NOT EXISTS idx_wi_part_stock_positive
|
||||
ON warehouse_inventory(part_id) WHERE stock_quantity > 0;
|
||||
DO $$
|
||||
BEGIN
|
||||
IF to_regclass('public.parts') IS NOT NULL THEN
|
||||
EXECUTE 'CREATE INDEX IF NOT EXISTS idx_parts_name_part ON parts(name_part)';
|
||||
EXECUTE 'CREATE INDEX IF NOT EXISTS idx_parts_name_part_pattern ON parts(name_part text_pattern_ops)';
|
||||
END IF;
|
||||
IF to_regclass('public.warehouse_inventory') IS NOT NULL THEN
|
||||
EXECUTE 'CREATE INDEX IF NOT EXISTS idx_wi_part_stock_positive ON warehouse_inventory(part_id) WHERE stock_quantity > 0';
|
||||
END IF;
|
||||
END $$;
|
||||
|
||||
-- ─── TENANT DB (run on each tenant) ────────────
|
||||
|
||||
|
||||
Reference in New Issue
Block a user