Saltar a contenido

PDF-011H - Customer Activation DDL Preflight

Estado: PDF-011H CUSTOMER ACTIVATION DDL PREFLIGHT / GO LOCAL DEV PREFLIGHT / SIN SQL WRITE

Fecha: 2026-06-24

Objetivo

Validar en local/dev si el DDL candidate PDF-011G puede pasar a un gate posterior de ejecucion controlada. Este gate solo revisa condiciones previas: no ejecuta DDL, no crea tablas y no modifica datos.

Safe Point

  • HEAD local/origin esperado despues de publicar PDF-011G: fad053649ed55accb40330bbbc57da5267286644.
  • Working tree inicial: limpio.
  • git diff --check: sin errores.

Secrets Revisados

Hostinger SMTP candidate:

text C:\APV\openclawai.venv-portal\secrets\ladirecta-hostinger-email.env

Resultado: PENDING_SECRET / PENDING_SMTP_CONFIG.

Tambien se reviso la ruta local real:

text C:\APV\openclawai\.venv-portal\secrets\ladirecta-hostinger-email.env

Resultado: ausente. No se imprimieron valores y no se crearon secrets nuevos.

PostgreSQL local/dev:

text C:\APV\openclawai\.venv-portal\secrets\postgres-target-admin-owner.env

Resultado: existe, esta fuera de Git y se uso solo para construir variables de entorno PG* en memoria. No se imprimieron passwords ni connection strings.

Preflight PostgreSQL Read-Only

Ambiente objetivo:

  • Tipo: local/dev.
  • DB: gestion_de_negocios_core.
  • Schema: business_observer.
  • Usuario admin/owner: openclaw_bo_admin.

Resultado read-only:

  • current_database: gestion_de_negocios_core.
  • current_user: openclaw_bo_admin.
  • schema business_observer: existe.
  • schema owner: openclaw_bo_admin.
  • openclaw_bo_admin tiene CREATE sobre DB: true.
  • openclaw_bo_admin tiene CREATE sobre schema: true.
  • roles presentes: openclaw_bo_admin, openclaw_bo_writer, openclaw_bo_reader.
  • SQL write ejecutado: false.

Objetos PDF-011G

Objetos candidate revisados antes de cualquier DDL:

  • business_observer.clientes_ecommerce: ausente.
  • business_observer.ecommerce_customer_requests: ausente.
  • business_observer.ecommerce_customer_request_audit: ausente.
  • business_observer.customer_activation_audit: ausente.

Resultado: GO / NO DRIFT.

Si cualquiera de estos objetos aparece antes de ejecutar el DDL, el gate debe marcar NO-GO DRIFT y detenerse.

Backup Strategy Local/Dev

Backup schema-only valido de referencia:

text C:\APV\backups\openclawai\PDF-011A\business_observer_schema_only_post_owner_grants.dump

Resultado:

  • existe fuera de Git.
  • tamano observado: 13895 bytes.
  • mayor a 0: true.
  • generado en PDF-011A despues de resolver permisos de owner/backup.

Decision: el backup existente es valido para este preflight read-only. Antes de un gate futuro que ejecute el DDL PDF-011G, se recomienda confirmar si governance exige backup nuevo inmediato; si lo exige, documentar PENDING_BACKUP y no ejecutar DDL hasta generarlo.

Analisis DDL Candidate

Archivo analizado:

text infra/business-observer/production/b2b-pricing/PDF-011G/PDF-011G-CUSTOMER-ACTIVATION-DDL-CANDIDATE.sql

Confirmaciones:

  • no contiene DROP DATABASE.
  • no contiene TRUNCATE.
  • no contiene DML (INSERT, UPDATE, DELETE, COPY).
  • no toca WooCommerce.
  • no envia emails.
  • no guarda passwords.
  • crea solo objetos permitidos en business_observer.
  • incluye rollback candidate separado.
  • incluye grants/RLS candidate.
  • incluye campos de domicilio fiscal y domicilio de pedido.

Rollback candidate:

text infra/business-observer/production/b2b-pricing/PDF-011G/PDF-011G-CUSTOMER-ACTIVATION-ROLLBACK-CANDIDATE.sql

No fue ejecutado.

GO/NO-GO

GO LOCAL DEV PREFLIGHT / READY FOR SEPARATE DDL EXECUTION GATE.

Este resultado no autoriza ejecucion DDL por si solo. El proximo gate debe pedir autorizacion explicita para SQL write local/dev, reconfirmar backup y ejecutar/post-checkear el DDL en transaccion controlada.

Que NO Se Hizo

  • No se ejecuto SQL write.
  • No se ejecuto DDL.
  • No se crearon tablas.
  • No se modificaron datos.
  • No se toco WooCommerce API.
  • No se enviaron emails reales.
  • No se modifico .env.
  • No se imprimieron secrets.
  • No se toco VPS/prod con datos.
  • No se activo runtime, sync, scheduler, cron ni pipelines.