Saltar a contenido

PDF-010Z - B2B Backup Permissions Local Dev

Estado: NO-GO GRANT/BACKUP FAILED / SIN DDL B2B

Fecha: 2026-06-23

Resumen

Se publico y desplego PDF-010Y, se valido el Knowledge Portal con HTTP 200 local/publico, y luego se intento aplicar permisos minimos local/dev para habilitar un backup schema-only de business_observer.

Safe point publicado y desplegado: 3f134c5e23500d54063ec4d1f64e06c5274f87f0.

Credencial local/dev validada sin imprimir valores: C:\APV\openclawai\.venv-portal\secrets\postgres-target-admin-owner.env.

El gate quedo NO-GO: openclaw_bo_admin es owner del schema, pero la tabla existente business_observer.source_003_sales_items pertenece a postgres. Con el alcance SQL autorizado, openclaw_bo_admin no puede concederse SELECT sobre esa tabla.

GRANTs ejecutados

Alcance SQL write autorizado e intentado solo en local/dev:

sql GRANT USAGE ON SCHEMA business_observer TO openclaw_bo_admin; GRANT SELECT ON ALL TABLES IN SCHEMA business_observer TO openclaw_bo_admin; GRANT SELECT ON ALL SEQUENCES IN SCHEMA business_observer TO openclaw_bo_admin;

Resultado:

  • GRANT USAGE dejo USAGE confirmado sobre el schema.
  • GRANT SELECT ON ALL TABLES fallo con permission denied for table source_003_sales_items.
  • GRANT SELECT ON ALL SEQUENCES no quedo confirmado como completado por el corte ON_ERROR_STOP.
  • No se aplicaron ALTER DEFAULT PRIVILEGES.

Backup schema-only

Comando objetivo:

text pg_dump -Fc -s -n business_observer

Archivo fuera de Git:

text C:\APV\backups\openclawai\PDF-010Z\business_observer_schema_only_pre_ddl.dump

Resultado:

  • Estado: NO-GO.
  • Tamaño: 0 bytes.
  • Motivo: permission denied for table source_003_sales_items.
  • Backup valido mayor a 0 bytes: NO.

Confirmaciones

  • DB local/dev: gestion_de_negocios_core.
  • Usuario: openclaw_bo_admin.
  • Schema business_observer: existe.
  • Owner de schema: openclaw_bo_admin.
  • owner de business_observer.source_003_sales_items: postgres.
  • openclaw_bo_admin mantiene CREATE sobre DB/schema.
  • objetos B2B siguen ausentes.
  • Objetos B2B siguen ausentes:
  • business_observer.b2b_customer_mapping
  • business_observer.b2b_product_price
  • business_observer.b2b_pricing_decision_log
  • business_observer.v_b2b_customer_effective_price

Que NO se hizo

  • No se ejecuto DDL B2B.
  • No se crearon tablas B2B.
  • No se creo vista B2B.
  • No se cargaron datos.
  • No se ejecutaron inserts masivos.
  • No se ejecutaron updates, deletes ni truncate.
  • No se toco VPS/prod.
  • No se toco WooCommerce API.
  • No se modifico .env.
  • No se imprimieron secrets ni connection strings completas.
  • No se toco runtime.
  • No se ejecuto sync, scheduler, cron ni pipelines.

GO/NO-GO final

NO-GO GRANT/BACKUP FAILED / SIN DDL B2B.

Proximo paso

Abrir gate local/dev nuevo para ejecutar el permiso minimo con el owner real del objeto (postgres) o para normalizar ownership de objetos existentes de business_observer, segun governance. Despues repetir el backup pg_dump -Fc -s -n business_observer y avanzar al DDL B2B solo si el archivo resulta mayor a 0 bytes.