PDF-010Y - B2B Backup Permissions Plan¶
Fecha: 2026-06-23
Estado: PLAN BACKUP PERMISSIONS / SIN DDL / SIN SQL WRITE / SIN PUSH
Resumen Simple¶
PDF-010X confirmo que el preflight local/dev esta listo para crear los
objetos B2B con openclaw_bo_admin, pero el backup schema-only obligatorio
fallo antes del DDL porque pg_dump no pudo bloquear una tabla existente:
business_observer.source_003_sales_items.
No se ejecuta ningun DDL en este gate. Este plan define como resolver el
permiso de backup antes de reintentar PDF-010P.
Evidencia PDF-010X Revisada¶
- estado final
PDF-010X:NO-GO BACKUP FAILED / SIN DDL B2B; - safe point publicado:
ead51e59f67c005664c744218f91903eefed73d2; - DB local/dev:
gestion_de_negocios_core; - usuario admin/owner:
openclaw_bo_admin; - schema:
business_observer; - owner schema:
openclaw_bo_admin; CREATEsobre DB/schema:true;- objetos B2B previos: ausentes;
- backup intentado:
pg_dump -Fc -s -n business_observer; - error:
permission denied for table source_003_sales_items; - tabla bloqueada:
business_observer.source_003_sales_items; - dump:
0bytes; - DDL
PDF-010P: no ejecutado; - SQL write ejecutado: ninguno;
- objetos B2B posteriores: ausentes.
Bloqueo Actual¶
El bloqueo no esta en el DDL B2B candidate sino en el permiso necesario para
que pg_dump lea o bloquee objetos existentes dentro de business_observer.
Mientras el backup schema-only de business_observer no genere un archivo
valido mayor a 0 bytes, el gate de DDL debe seguir en NO-GO.
Opciones Backup Permissions¶
Opcion A - Credencial admin/backup real¶
Usar una credencial local/dev aprobada para backup que pueda ejecutar
pg_dump -Fc -s -n business_observer sobre todo el schema.
Ventaja: no cambia permisos del rol actual.
Costo: requiere administrar una credencial mas poderosa y mantenerla fuera de Git, sin imprimir valores.
Opcion B - Permiso minimo sobre objetos existentes¶
Dar a openclaw_bo_admin permisos de lectura/backup sobre objetos existentes
del schema business_observer.
Comandos candidate, no ejecutar en este gate:
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;
Ventaja: mantiene el gate con el rol admin/owner ya validado y evita usar superuser para operar el DDL B2B.
Costo: requiere autorizacion explicita de governance para SQL admin minimo en un gate separado.
Opcion C - Backup solo del DDL candidate¶
Respaldar solo el SQL candidate y confiar en rollback porque los objetos B2B aun no existen.
Ventaja: es la opcion mas rapida para local/dev.
Riesgo: no valida que pg_dump funcione sobre el schema real. Debe quedar
como excepcion local/dev y no es recomendada para produccion.
Recomendacion Unica¶
Para local/dev, recomendar Opcion B si governance acepta SQL admin minimo en
un gate separado. Es la alternativa mas simple y robusta porque permite un
backup schema-only reproducible sin usar superuser y mantiene el mismo rol
openclaw_bo_admin para el reintento controlado.
Para VPS/prod, exigir snapshot o backup full con rol adecuado antes de cualquier DDL productivo.
GO/NO-GO Para Proximo Gate¶
GO solo si:
- safe point nuevo confirmado;
- governance autoriza explicitamente el grant minimo o una credencial admin/backup real;
- se ejecuta el ajuste de permisos en gate separado;
pg_dump -Fc -s -n business_observergenera archivo mayor a0bytes fuera de Git;- preflight read-only confirma
openclaw_bo_admin, DBgestion_de_negocios_core, schemabusiness_observery objetos B2B ausentes; - hay autorizacion separada para ejecutar
PDF-010P.
NO-GO si:
- no hay backup schema-only valido;
- el dump queda en
0bytes; - persiste
permission denied for table source_003_sales_items; - aparecen objetos B2B antes del DDL;
- falta autorizacion explicita para SQL admin minimo o DDL.
Que NO Se Ejecuto¶
- no se ejecuto DDL;
- no se ejecuto SQL write;
- no se ejecutaron
GRANT; - 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;
- no se ejecuto sync, scheduler, cron ni pipelines.
Proximo Paso¶
Abrir un gate separado para PDF-010Y execution o PDF-010Z equivalente:
- confirmar safe point;
- autorizar SQL admin minimo de Opcion B o credencial backup de Opcion A;
- ejecutar solo el ajuste aprobado;
- repetir backup schema-only;
- validar dump mayor a
0bytes; - recien despues abrir gate separado para reintentar
PDF-010P.