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
SGCvivo; - 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:
GOpara abrir un futuro gatePDF-006Cde carga inicial controlada;NO-GOpara cargar datos enPDF-006B;NO-GOpara sync diaria, scheduler, pipelines y produccion;NO-GOpara usaropenclaw-postgres-sandbox.
10. Riesgos pendientes¶
Riesgos vigentes:
line_key_v4sigueAMARILLO ACEPTADO;SOURCE-003 / SGC Ventassigue 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.