Saltar a contenido

PDF-006B SOURCE-003 Staging Snapshot Preflight

Fecha local: 2026-06-19

Estado: SNAPSHOT + PREFLIGHT OPERATIVO DOCUMENTADO / GO FUTURE GATE / NO-GO LOAD NOW

portal_visible = yes

Scope: tenant

tenant_id: alpuntodeventa

Owner: Gabi / Carlos Canu

Fuente de verdad: docs/tenants/alpuntodeventa/business-observer/production/PDF-006B-SOURCE-003-STAGING-SNAPSHOT-PREFLIGHT.md

1. Contexto desde PDF-006A

PDF-006A dejo preparado el candidate documental para una futura carga inicial controlada de SOURCE-003 en PostgreSQL staging, con estrategia raw -> core -> mart, tablas destino ya creadas y scripts candidate bloqueados por defecto para cualquier escritura.

PDF-006B documenta el resultado operativo posterior de snapshot + preflight read-only. El resultado permite abrir un futuro gate PDF-006C, pero no autoriza cargar datos en esta etapa.

2. Alcance

Alcance autorizado:

  • documentar evidencia local y VPS;
  • documentar backup post-DDL vigente ya existente;
  • documentar preflight staging read-only ya ejecutado;
  • documentar validacion local del snapshot autorizado existente;
  • publicar el resultado en el Knowledge Portal.

Fuera de alcance:

  • SQL;
  • carga SOURCE-003;
  • COPY;
  • INSERT, UPDATE, DELETE, TRUNCATE;
  • snapshot nuevo;
  • backup nuevo;
  • sync;
  • scheduler;
  • pipelines;
  • produccion;
  • openclaw-postgres-sandbox;
  • cambios runtime en OpenClaw, NPM, Portainer o PostgreSQL.

3. SAFE POINT local

Evidencia local documentada:

Control Resultado
git status limpio
HEAD local 64ef07a6c2240c29ef9e8beda09e00220a48694e
origin/main 64ef07a6c2240c29ef9e8beda09e00220a48694e
ultimo commit 64ef07a docs: prepare source-003 staging initial load candidate
git diff --check PASS
mkdocs build --strict PASS con C:\APV\openclawai.venv-portal\Scripts\mkdocs.exe

4. SAFE POINT VPS

Evidencia VPS documentada:

Control Resultado
host srv977009
VPS Git HEAD 64ef07a6c2240c29ef9e8beda09e00220a48694e
VPS origin/main 64ef07a6c2240c29ef9e8beda09e00220a48694e
PostgreSQL staging healthy
openclaw-postgres-sandbox healthy, no usado
produccion no usada como target

5. Backup vigente validado

Backup post-DDL vigente, existente fuera de Git:

text /opt/backups/openclaw/business-observer-staging/postgres/post-ddl/20260619T211134Z/openclaw-bo-staging-postgres-post-ddl-20260619T211134Z.dump

Evidencia:

Control Resultado
tamano 3517 bytes
SHA256 e7f6afb319b1ef365f45b107226dec3c579922902623c6c5afeba367ab6acc8d
sha256sum -c OK
pg_restore --list PASS, 20 lineas

Este documento no crea backup nuevo, dump nuevo ni copia del backup en Git.

6. Staging preflight read-only

Target validado:

Campo Valor
transaction mode READ ONLY
DB openclaw_business_observer_staging
schema business_observer
tablas esperadas 7/7
tablas vacias 7/7 row_count = 0
owner openclaw_bo_staging_owner
objetos fuera de alcance en schema 0

Grants observados:

Rol Grants
writer INSERT, SELECT, UPDATE
reader SELECT
reporting SELECT
PUBLIC 0

7. Snapshot autorizado SOURCE-003-SNAPSHOT-001

Snapshot congelado existente:

text C:\APV\openclawai\snapshots\source-003\SOURCE-003-TABLA2-V2-2026-06-09_20260610-210406-0300.csv

El archivo permanece fuera de Git por .gitignore.

Metodo documentado:

  • no se releyo SGC vivo;
  • se valido localmente el CSV congelado;
  • se verifico hash contra .sha256;
  • se compararon columnas contra el mapping activo.

Evidencia no sensible:

Control Resultado
snapshot autorizado SOURCE-003-SNAPSHOT-001
tamano 1169895 bytes
SHA256 07092c284b5b636b8a31cd616ef5b4fa5d0ce499b81c767437842b1f7edfcbc3
.sha256 coincide true
filas 1886
columnas 68
columnas vs mapping 68/68
orden de columnas MATCH
columnas faltantes 0
columnas extra 0
clientes unicos 173
vendedores unicos 25
SKU unicos 180
comprobantes unicos 428
importe total 48087486.83
CMV total 37881269.3025
Hora vacia 0
formato Hora invalido 0

8. Validacion contra mapping activo

Mapping activo:

text docs/tenants/alpuntodeventa/business-observer/design/SOURCE-003-SALES-ITEMS-COLUMN-MAPPING.md

Resultado:

  • columnas del CSV: 68;
  • columnas esperadas por mapping: 68;
  • coincidencia: 68/68;
  • orden: MATCH;
  • faltantes: 0;
  • extras: 0.

La evidencia confirma que el snapshot congelado esta alineado con el mapping vigente para preparar un futuro gate de carga inicial controlada.

9. Resultado GO / NO-GO

Resultado operativo:

  • GO para abrir un futuro gate PDF-006C de carga inicial controlada;
  • NO-GO para cargar datos en PDF-006B;
  • NO-GO para sync diaria, scheduler, pipelines y produccion;
  • NO-GO para usar openclaw-postgres-sandbox.

10. Riesgos pendientes

Riesgos vigentes:

  • line_key_v4 sigue AMARILLO ACEPTADO;
  • SOURCE-003 / SGC Ventas sigue siendo fuente viva;
  • el snapshot validado es congelado del 2026-06-09;
  • cualquier snapshot nuevo requiere gate propio;
  • performance real con datos en staging todavia no validada.

11. Restricciones respetadas

Durante PDF-006B no se ejecuto:

  • SQL;
  • carga;
  • COPY;
  • INSERT, UPDATE, DELETE, TRUNCATE;
  • snapshot nuevo;
  • backup nuevo;
  • dump nuevo;
  • sync;
  • scheduler;
  • pipelines;
  • cambios en produccion;
  • uso de openclaw-postgres-sandbox;
  • cambios runtime en OpenClaw, NPM o Portainer.

No se agregaron al repo:

  • CSV snapshot;
  • backups;
  • dumps;
  • .env;
  • secretos;
  • passwords;
  • connection strings reales.

12. Proximo gate recomendado

Proximo gate recomendado:

text PDF-006C SOURCE-003 staging initial controlled load

Requisitos minimos del futuro gate:

  • SAFE POINT nuevo;
  • autorizacion humana explicita;
  • confirmacion del mismo snapshot o autorizacion de snapshot nuevo;
  • backup vigente aceptado;
  • preflight read-only propio;
  • conteos esperados;
  • rollback definido;
  • carga controlada solo si el gate lo autoriza expresamente;
  • evidencia post-load;
  • decision separada para cualquier sync, scheduler, pipeline o produccion.