Saltar a contenido

PDF-010U - B2B Backup Strategy DDL Retry Plan

Fecha: 2026-06-23

Estado: GO BACKUP STRATEGY APPROVED FOR LOCAL DEV / SIN DDL / SIN SQL WRITE / SIN PUSH

Resumen Simple

PDF-010T no fallo por el DDL B2B ni por la credencial admin/owner. El gate se detuvo antes del DDL porque el backup full DB intento leer/bloquear un schema fuera del alcance B2B: cobranzas.

Para avanzar rapido en local/dev sin relajar seguridad productiva, se aprueba un backup acotado al schema business_observer como estrategia del proximo gate local. Para VPS/prod se mantiene una exigencia mas fuerte: backup full DB con rol adecuado o snapshot externo.

SAFE POINT Inicial

  • HEAD: 8aeb04ad30c14c4964be6ee14783763cef459638
  • origin/main: 8aeb04ad30c14c4964be6ee14783763cef459638
  • ultimo commit: 8aeb04a docs: record pdf-010q b2b ddl retry pre-ddl no-go
  • repo inicial: con cambios pendientes de PDF-010T
  • git diff --check: PASS

Evidencia PDF-010T Revisada

  • estado final PDF-010T: NO-GO BACKUP FAILED;
  • credencial admin/owner local cargada correctamente sin imprimir valores;
  • usuario conectado: openclaw_bo_admin;
  • DB: gestion_de_negocios_core;
  • schema business_observer owner: openclaw_bo_admin;
  • CREATE sobre DB/schema: confirmado;
  • roles openclaw_bo_admin, openclaw_bo_writer, openclaw_bo_reader: presentes;
  • objetos B2B candidate: ausentes antes del DDL;
  • psql y pg_dump version 15.15: disponibles;
  • DDL PDF-010P: no ejecutado;
  • tablas/vista B2B: no creadas;
  • backup fallido de 0 bytes: fuera de Git bajo C:\APV\backups\openclawai\PDF-010T\ y no valido.

Por Que Fallo El Backup

El comando de backup full DB uso pg_dump -Fc sobre la base completa. pg_dump intento bloquear cobranzas.bank_entity en modo ACCESS SHARE MODE y PostgreSQL respondio:

permission denied for schema cobranzas

Ese error pertenece al alcance del backup full DB. No prueba un problema en el DDL B2B, porque el DDL no llego a ejecutarse. Tampoco prueba un problema en la credencial admin/owner B2B, porque la misma credencial ya habia confirmado ownership y CREATE sobre business_observer.

Opciones De Backup

Opcion A - Backup Full DB

Usar backup completo de gestion_de_negocios_core con un rol aprobado que tenga permisos suficientes sobre toda la DB, por ejemplo rol backup/admin, owner operativo o superuser aprobado.

Ventajas:

  • cubre toda la base;
  • es la opcion mas segura para cambios productivos;
  • evita depender de supuestos de alcance entre schemas.

Costo:

  • requiere credencial con mayor alcance;
  • puede demorar mas;
  • debe aprobarse con governance de produccion.

Opcion B - Backup Acotado A business_observer

Usar backup especifico del schema tocado por el DDL:

powershell pg_dump -Fc -n business_observer ...

Aplica porque PDF-010P solo crea objetos dentro de business_observer y los objetos B2B aun no existen.

Ventajas:

  • evita fallar por permisos sobre schemas fuera del alcance B2B;
  • es mas rapido para local/dev;
  • conserva un punto de recuperacion del schema afectado.

Condicion:

  • debe documentarse expresamente como backup acotado, no como backup full DB.

Opcion C - Snapshot Externo

Usar snapshot del VPS, volumen o servicio administrado antes de DDL productivo.

Ventajas:

  • protege mas alla de PostgreSQL;
  • es recomendable antes de produccion real.

Condicion:

  • no es obligatorio para local/dev si governance aprueba backup acotado.

Recomendacion Unica

Para local/dev: aprobar backup acotado a business_observer con pg_dump -Fc -n business_observer y reintentar el gate DDL PDF-010P solo despues de obtener un archivo de backup nuevo, no vacio y fuera de Git.

Para VPS/prod: exigir backup full DB con rol backup/admin aprobado o snapshot externo antes de cualquier DDL productivo.

GO/NO-GO Para Reintento

Estado de estrategia: GO PARA BACKUP ACOTADO LOCAL DEV.

GO del proximo gate local/dev solo si:

  • safe point nuevo confirmado;
  • backup acotado business_observer creado con pg_dump -Fc -n business_observer;
  • archivo de backup existe, pesa mas de 0 bytes y queda fuera de Git;
  • preflight read-only confirma openclaw_bo_admin, owner y CREATE sobre business_observer;
  • objetos B2B siguen ausentes antes del DDL;
  • autorizacion explicita de SQL write/DDL para ejecutar PDF-010P.

NO-GO si:

  • no hay backup valido;
  • el backup es de 0 bytes;
  • el backup se intenta commitear;
  • cambia el owner/schema/DB esperados;
  • aparecen objetos B2B antes del DDL;
  • falta autorizacion explicita para SQL write.

Que NO Se Ejecuto

  • no se ejecuto DDL;
  • no se ejecuto SQL write;
  • no se crearon tablas B2B;
  • no se creo vista B2B;
  • no se aplicaron grants ni RLS;
  • no se ejecuto rollback;
  • no se tocaron datos;
  • no se toco WooCommerce API;
  • no se modifico .env;
  • no se imprimieron secretos, passwords ni connection strings completas;
  • no se modifico runtime WooCommerce;
  • no se ejecuto sync, scheduler, cron ni pipelines.

Proximo Gate

Abrir PDF-010V como reintento controlado local/dev:

  1. confirmar safe point;
  2. ejecutar backup acotado valido de business_observer;
  3. validar que el backup queda fuera de Git;
  4. confirmar preflight read-only;
  5. pedir autorizacion explicita de SQL write;
  6. ejecutar PDF-010P solo si todos los criterios anteriores estan en GO.