Saltar a contenido

SOURCE-003 Importer Validate Prepared 001

Fecha local: 2026-06-15

Estado: VALIDATE-PREPARED IMPLEMENTADO / NO DB

portal_visible = yes

Scope: tenant

tenant_id: alpuntodeventa

Owner: Gabi / Carlos Canu

Fuente de verdad: docs/tenants/alpuntodeventa/business-observer/design/SOURCE-003-IMPORTER-VALIDATE-PREPARED-001.md

1. Objetivo

Implementar el comando seguro:

text python scripts/source_003_importer.py validate-prepared

El comando valida el CSV prepared historico y el CSV generated existente sin tocar PostgreSQL, sin ejecutar SQL, sin llamar al runner, sin generar un CSV nuevo y sin reemplazar el CSV historico.

2. Artefactos validados

Prepared historico:

text snapshots/source-003/prepared/SOURCE-003-PILOT-LOAD-DEDICATED-DB-2026-06-09.csv

Generated existente:

text snapshots/source-003/prepared/generated/SOURCE-003-PILOT-LOAD-DEDICATED-DB-2026-06-09.generated.csv

Ambos artefactos quedan fuera de Git:

  • git_ignored=true
  • git_tracked=false
  • outside_git=true

3. Validaciones

El comando valida:

  • prepared sha256: 3f16a957a79fc84d4ca37930988287cb81f05166210d057fcf8b45007f184afe
  • generated sha256: 6fb44d9870a567e728df9bbdcc6b83279d84791bd732626c9e19ccf3a28dc903
  • filas: 1886
  • columnas: 83
  • fecha unica: 2026-06-09
  • batch: 1827f887-9499-4579-b4f3-234d54f41f7f
  • record_status = active
  • source_row_hash no vacio
  • line_key no vacio

4. Comparacion prepared vs generated

Resultado:

text REPRODUCIBLE ESTRUCTURAL ACEPTADO

Evidencia:

  • columnas coincidentes: 82/83
  • columna diferente esperada: id
  • razon aceptada: UUID v5 deterministico del generador
  • filas comparadas: 1886
  • CSV historico validado reemplazado: false

5. Salida validada

Salida relevante del comando:

json { "command": "validate-prepared", "result": "PASS", "rows": 1886, "columns": 83, "comparison_status": "REPRODUCIBLE ESTRUCTURAL ACEPTADO", "columns_matching": "82/83", "db_touched": false, "sql_executed": false, "data_written": false, "sync_enabled": false }

6. Restricciones preservadas

Esta etapa preserva:

  • sin PostgreSQL;
  • sin SQL;
  • sin psql;
  • sin runner;
  • sin generar CSV nuevo;
  • sin reemplazar el CSV prepared validado;
  • sin carga de datos;
  • sin sync diaria;
  • sin carga masiva;
  • sin produccion final;
  • sin OpenClaw;
  • sin NPM;
  • sin VPS;
  • sin Docker;
  • sin push;
  • sin deploy.

7. Decision

text VALIDATE-PREPARED IMPLEMENTADO / NO DB

validate-prepared queda habilitado como comando seguro read-only del importer SOURCE-003: valida prepared historico y generated existente, confirma la reproducibilidad estructural aceptada y mantiene bloqueadas todas las operaciones de DB, SQL, runner, carga y sync.