Admin / Syncs

Rows below are labeled live (a real npm run sync:crm against the CRM) or demo (npm run seed:demo fixtures). Nothing on this page is itself a live CRM, Google Sheet, or Meta connection.

CRM full baseline

pending Allowed, but never run

Requires CRM_ALLOW_FULL_BASELINE=true and --confirm-full-baseline together (npm run sync:crm:full-baseline). The ~8,000-record baseline is intentionally not run automatically by anything on this page.

Google Sheets configuration

Fuente activa: la pestaña "Trabajo diario" de la hoja unificada actual. Esta reemplazó a la hoja anterior (con sus múltiples pestañas históricas) a partir del corte de 2026-09 - esa hoja anterior ya no se usa como fuente en vivo.

configured Live access is enabled and credentials are present - this does not by itself mean a sync has succeeded.

GOOGLE_SHEETS_LIVE_ENABLEDtrue
Spreadsheet ID1XZqT2g_a2V-tSPkQENCgwLTX7VGSk3rKVuC8faT0gGo
TabTrabajo diario
Service account configuredyes

The freshness and sync-run tables below are the source of truth for whether Google Sheets is actually live - this panel only reports configuration, never an assumed status.

Cohorte operativa 2026

Clasificación por registro actual (source_records.is_current), a partir de la fecha confirmada de cada fuente (CRM "Fecha", Sheets "Fecha ingreso") - ver src/server/domain/cohort.ts. Ningún registro histórico se elimina ni se sobrescribe; esta tabla solo cuenta cómo está clasificado hoy.

FuenteIncluidos 2026Históricos excluidosRequieren revisión de fechaSin clasificarTotal actual
crm32585678008936
google_sheets32931223004516

Refresh status - lo que sabemos hoy sobre cada fuente

Estos tres indicadores contestan preguntas distintas y no se deben confundir: que hubo actividad reciente no significa que haya una reconciliación completa, y una reconciliación completa pasada no significa que el conteo actual de la fuente siga siendo consistente hoy.

crm

Actividad reciente verificadafresh último éxito: 11/6/2026, 1:00:13 AM · último intento: 11/6/2026, 1:00:13 AM
Reconciliación completa de la fuentenunca completada
Cobertura vs. fuenteunknown actual: 8936 · último reportado por la fuente: 8000 · en última reconciliación: —

google_sheets

Actividad reciente verificadafresh último éxito: 11/6/2026, 1:30:07 AM · último intento: 11/6/2026, 1:30:07 AM
Reconciliación completa de la fuentecompletada alguna vez el 11/6/2026, 1:30:07 AM
Cobertura vs. fuenteunknown actual: 4516 · último reportado por la fuente: — · en última reconciliación: —

Source freshness

SourceStatusLast successLast attemptConsecutive failuresLast error (redacted)
crmfresh11/6/2026, 1:00:13 AM11/6/2026, 1:00:13 AM0—
google_sheetsfresh11/6/2026, 1:30:07 AM11/6/2026, 1:30:07 AM0—
meta_leadsnever_synced——0—

CRM field coverage

Computed from currently-ingested CRM source records - not a claim about the CRM, a read of what Guardian actually has. The confirmed listing endpoint doesn't expose phone/email/owner/origin/medium at all (see CRM_CONNECTOR.md), so those are expected to show 0% here - see the CRM detail hydration panel below for those fields, cached separately from a per-contact detail fetch.

FieldAvailableTotalCoverage
crm_code89368936100%
full_name8835893699%
phone089360%
email089360%
owner089360%
status89368936100%
origin089360%
medium089360%
updated_at89368936100%
localidad89368936100%
provincia89368936100%
tipo89368936100%

CRM detail hydration

Separate from the CRM list above: npm run hydrate:crm-details progressively fetches each contact's detail page (teléfono, email, domicilio, asesora, origen, medio, observaciones, fecha de creación - see CRM_CONNECTOR.md "CRM detail hydration") and caches the latest successful result separately from the list snapshot. Disabled by default (HYDRATE_CRM_DETAILS_ENABLED=false); nothing here implies it is scheduled to run automatically.

Elegibles (con detail_path conocido)8882
Hidratados al menos una vez8882
Nunca hidratados0
Fallando actualmente (último intento)0
Última hidratación exitosa11/6/2026, 1:07:50 AM
Campo (detalle)DisponibleTotal hidratadosCobertura
telefono8676888298%
telefono26548888274%
telefono36496888273%
celular6510888273%
email5631888263%
domicilio1870888221%
entrecalles1052888212%
codigoPostal26888823%
localidad8674888298%
provincia6708888276%
asesora88828882100%
origen8820888299%
medio8810888299%
observaciones7120888280%
fechaCreacionIso88828882100%

Procedencia por campo: nombre / estado / localidad / provincia / tipo vienen del listado CRM (arriba); teléfono / email / domicilio / asesora / origen / medio / observaciones / fecha de creación vienen de esta hidratación de detalle, cuando está disponible; CT 1-7 / fuente / situación CRM vienen de Google Sheets. Ningún campo se sobrescribe entre fuentes - se combinan con esta precedencia.

Recent sync runs

StartedSourceOriginTriggerStatusReadCreatedUpdatedUnchangedFailedCursor / progressLatest error (redacted)
11/6/2026, 1:30:07 AMgoogle_sheetslivefull_baselinesuccess4516166344370——
11/6/2026, 1:00:13 AMcrmlivemanualsuccess80001616796808000/8000 (160 pages)—
11/5/2026, 1:30:07 AMgoogle_sheetslivefull_baselinesuccess4500208044000——
11/5/2026, 1:00:12 AMcrmlivemanualsuccess80002038794208000/8000 (160 pages)—
11/4/2026, 1:30:09 AMgoogle_sheetslivefull_baselinesuccess4480447843580——
11/4/2026, 1:00:12 AMcrmlivemanualsuccess80004438791808000/8000 (160 pages)—
11/3/2026, 1:30:09 AMgoogle_sheetslivefull_baselinesuccess443678443450——
11/3/2026, 1:00:11 AMcrmlivemanualsuccess8000726796708000/8000 (160 pages)—
11/2/2026, 1:30:09 AMgoogle_sheetslivefull_baselinesuccess44290044290——
11/2/2026, 1:00:12 AMcrmlivemanualsuccess800002799808000/8000 (160 pages)—
11/1/2026, 1:30:08 AMgoogle_sheetslivefull_baselinesuccess442951644080——
11/1/2026, 1:00:14 AMcrmlivemanualsuccess800054799108000/8000 (160 pages)—
10/31/2026, 1:30:09 AMgoogle_sheetslivefull_baselinesuccess4424178543220——
10/31/2026, 1:00:15 AMcrmlivemanualsuccess80001740794308000/8000 (160 pages)—
10/30/2026, 1:30:08 AMgoogle_sheetslivefull_baselinesuccess4407128443110——
10/30/2026, 1:00:13 AMcrmlivemanualsuccess80001343794408000/8000 (160 pages)—
10/29/2026, 1:30:09 AMgoogle_sheetslivefull_baselinesuccess4395225043230——
10/29/2026, 1:00:17 AMcrmlivemanualsuccess80002422795408000/8000 (160 pages)—
10/28/2026, 1:30:12 AMgoogle_sheetslivefull_baselinesuccess43732210142500——
10/28/2026, 1:00:18 AMcrmlivemanualsuccess80002345793208000/8000 (160 pages)—
10/27/2026, 1:30:11 AMgoogle_sheetslivefull_baselinesuccess4351566142340——
10/27/2026, 1:00:18 AMcrmlivemanualsuccess80005730791308000/8000 (160 pages)—
10/26/2026, 1:30:08 AMgoogle_sheetslivefull_baselinesuccess42950042950——
10/26/2026, 1:00:14 AMcrmlivemanualsuccess800002799808000/8000 (160 pages)—
10/25/2026, 12:30:09 AMgoogle_sheetslivefull_baselinesuccess429581342740——
10/25/2026, 12:00:17 AMcrmlivemanualsuccess800096798508000/8000 (160 pages)—
10/24/2026, 12:30:09 AMgoogle_sheetslivefull_baselinesuccess4287207641910——
10/24/2026, 12:00:20 AMcrmlivemanualsuccess80002220795808000/8000 (160 pages)—
10/23/2026, 12:30:07 AMgoogle_sheetslivefull_baselinesuccess4267197341750——
10/23/2026, 12:00:13 AMcrmlivemanualsuccess80001929795208000/8000 (160 pages)—
10/22/2026, 12:30:06 AMgoogle_sheetslivefull_baselinesuccess4248254641770——
10/22/2026, 12:00:13 AMcrmlivemanualsuccess80002627794708000/8000 (160 pages)—
10/21/2026, 12:30:06 AMgoogle_sheetslivefull_baselinesuccess42232210340980——
10/21/2026, 12:00:14 AMcrmlivemanualsuccess80002539793608000/8000 (160 pages)—
10/20/2026, 12:30:07 AMgoogle_sheetslivefull_baselinesuccess4201434137210——
10/20/2026, 12:00:12 AMcrmlivemanualsuccess80004316794108000/8000 (160 pages)—
10/19/2026, 12:30:06 AMgoogle_sheetslivefull_baselinesuccess41580041580——
10/19/2026, 12:00:12 AMcrmlivemanualsuccess800002799808000/8000 (160 pages)—
10/18/2026, 12:30:09 AMgoogle_sheetslivefull_baselinesuccess415831141440——
10/18/2026, 12:00:16 AMcrmlivemanualsuccess800047798908000/8000 (160 pages)—
10/17/2026, 12:30:09 AMgoogle_sheetslivefull_baselinesuccess41551567834620——
10/17/2026, 12:00:15 AMcrmlivemanualsuccess80001523796208000/8000 (160 pages)—
10/16/2026, 12:30:07 AMgoogle_sheetslivefull_baselinesuccess4140235940580——
10/16/2026, 12:00:16 AMcrmlivemanualsuccess80002423795308000/8000 (160 pages)—
10/15/2026, 12:30:08 AMgoogle_sheetslivefull_baselinesuccess411712536228020——
10/15/2026, 12:00:11 AMcrmlivemanualsuccess80004224793408000/8000 (160 pages)—
10/14/2026, 12:30:08 AMgoogle_sheetslivefull_baselinesuccess2864344327870——
10/14/2026, 12:00:15 AMcrmlivemanualsuccess80003418794808000/8000 (160 pages)—
10/13/2026, 12:30:09 AMgoogle_sheetslivefull_baselinesuccess283087127510——
10/13/2026, 12:00:16 AMcrmlivemanualsuccess8000829796308000/8000 (160 pages)—