| Métrica | this 7d | prior 7d | Δ |
|---|---|---|---|
| Activas | 1119 | 1322 | -15.4% |
| Nuevas | 0 | 0 | — |
| Link sent | 0 | 0 | — |
| Calls booked | 0 | 3 | -100.0% |
| Booked/Link % | — | — | — |
| Booked/Activas % | 0.0% | 0.2% | -0.2pp |
| Booked/Nuevas % | — | — | — |
| Revenue variable | $0.00 | $0.00 | — |
| Período | Activas | Nuevas | Link sent | Calls booked | Booked/Link | Booked/Activas | Booked/Nuevas |
|---|---|---|---|---|---|---|---|
| Semana actual (7d) | 1119 | 0 | 0 | 0 | — | 0.0% | — |
| Semana anterior (7d) | 1322 | 0 | 0 | 3 | — | 0.2% | — |
| Día | Activas | Nuevas | Link sent | Calls booked | Booked/Link | Booked/Activas | Booked/Nuevas |
|---|---|---|---|---|---|---|---|
| 07-30 | 145 | 0 | 0 | 0 | — | 0.0% | — |
| 07-29 | 120 | 0 | 0 | 0 | — | 0.0% | — |
| 07-28 | 195 | 0 | 0 | 0 | — | 0.0% | — |
| 07-27 | 195 | 0 | 0 | 0 | — | 0.0% | — |
| 07-26 | 120 | 0 | 0 | 0 | — | 0.0% | — |
| 07-25 | 177 | 0 | 0 | 0 | — | 0.0% | — |
| 07-24 | 167 | 0 | 0 | 0 | — | 0.0% | — |
| 07-23 | 148 | 0 | 0 | 0 | — | 0.0% | — |
| 07-22 | 138 | 0 | 0 | 0 | — | 0.0% | — |
| 07-21 | 207 | 0 | 0 | 0 | — | 0.0% | — |
| 07-20 | 219 | 0 | 0 | 0 | — | 0.0% | — |
| 07-19 | 223 | 0 | 0 | 1 | — | 0.4% | — |
| 07-18 | 243 | 0 | 0 | 0 | — | 0.0% | — |
| 07-17 | 144 | 0 | 0 | 2 | — | 1.4% | — |
⏳ Sin re-auditar hoy (sin cambios de prompt) — mostrando la última auditoría disponible. Estado vigente hasta nueva corrida.
| BP | Sev | Estado | Detalle |
|---|---|---|---|
| BP-1 | HIGH | PASS | Template compliance system.md contains all 7 required sections for principles template: Identity, Voice, Keywords, Filtro de ingreso (Calibration), Flow, Principles, Tools, and NO_RESPONSE. Content aligns with template intent. |
| BP-2 | MEDIUM | PASS | Example coverage and cap (7 base scenarios + conditional, ≤20 total) examples.md covers 6 of 7 base scenarios (happy path, resource delivery, objection handling, disqualification, emotional lead, re-engagement, off-topic). Keyword-trigger examples present (Examples 1, 2, 3, 5, 6, 12, 12b, 16). Price-objection example present (Example 6). Total count: 20 examples exactly at cap. |
| BP-3 | HIGH | PASS | Examples align with the flow All examples follow the 5-step flow (Conexión → Ocupación → Ingreso → Compromiso → Cierre) in order. Each example reaches a terminal state (link sent, video sent, NO_RESPONSE, or booking confirmed). No examples end mid-flow. |
| BP-4 | CRITICAL | PASS | No internal contradictions in system.md system.md documents the Filtro de ingreso rule and explicitly names its exception: 'La única excepción es si pide específicamente el recurso del keyword por el que vino' (Keywords section). This is a stated exception, not a contradiction. Both rules apply under different preconditions (keyword resource request vs. no request). |
| BP-5 | CRITICAL | PASS | No cross-file contradictions All SDK files align on behavior. Keywords.json declares resource delivery rules; examples.md demonstrates them (e.g., Example 1 teases before delivering, Example 12b delivers when lead resists). Filtro de ingreso rule in system.md is honored in examples (Examples 3, 14, 15, 18 show sub-piso handling). No file contradicts another under the same precondition. |
| BP-6 | MEDIUM | PASS | Voice consistency across examples All examples use consistent voice: warm, validating before asking, casual Mexican Spanish, tuteo, minimal emojis (1-2 per message), short messages. No jarring tonal shifts. Examples 1–20 maintain the same persona throughout. |
| BP-7 | CRITICAL | PASS | Unguarded actions (PAT-004) All risky actions are guarded. Filtro de ingreso guards the booking link (system.md: 'PRIMERO aplicas el Filtro de ingreso, SIEMPRE, antes de cualquier link'). Keyword resource delivery is guarded by STEP 0 (ask first, deliver after intent). NO_RESPONSE is guarded by explicit triggers (emoji-only, 'gracias' without action, post-booking, descalificado). Examples demonstrate guards working correctly. |
| BP-8 | HIGH | PASS | No stale version language in examples All examples use current flow language and CTAs. Closing language matches system.md (e.g., 'te comparto el calendario' in Example 1 matches 'propón la llamada de claridad con tu mano derecha' in Cierre step). No outdated phrasing detected. |
| BP-9 | MEDIUM | PASS | No duplicated instructions Each behavioral instruction has a single canonical home. Filtro de ingreso rule stated once in system.md (Filtro section). STEP 0 keyword rule stated once in Keywords section. Principles stated once in Principles section. No instruction is restated in multiple locations; cross-references exist (e.g., keywords.json notes reference system.md sections) but no duplicates. |
| BP-10 | MEDIUM | PASS | Rule-vs-principle balance Behavioral guidance (warm tone, validate before asking, one question per turn) is expressed via Voice section + examples. Hard rules remain for facts (Filtro de ingreso pisos, Principio 5 icp_economico_confirmado_v2, NO_RESPONSE token). Examples demonstrate tone and flow better than rules would. |
| Check | Sec | Estado | Notas |
|---|---|---|---|
| 6a | 1.8 | FAIL | forbidden tokens found: ['dejar de responder'] |
| 6c | 3.x | PASS | 88 lines |
| 6d | 1.2 | PASS | 20 examples |
| 6e | 1.3 | PASS | 6 principles |
| 6g | PAT-006 | WARN | non-STEP-0 keyword handling |
| 6h | Anti-pat | PASS | no 'burbuja' |
| 6i | Anti-pat | PASS | no HTML comments |
| 6j | Anti-pat | FAIL | 25 em-dashes across 2 file(s); first: system.md:25 |
| 6k | PAT-006 | FAIL | tool-call syntax appears as raw text in examples.md (8 line(s)) |
| 6l | Resources | PASS | no placeholder URLs |
| 6m | Hygiene | PASS | no audit metadata in prompt files |
| 6n | PAT-008 | WARN | 1 URL(s) appear with different tracking params or formats across SDK files |
| 6q | PAT-001 | PASS | no instruction duplication into examples.md, keywords.json, program.json, resources.json |
| 6r | Keyword-drift | FAIL | 58 in keywords.json + recent digest, never named in system.md: ['cuaderno', 'libero', 'palma', 'sabotaje', 'rico', 'palabras', 'negra', 'triple']; (157 stale drift entr(ies) ignored — no recent digest mention) |
| 6s | Hygiene | PASS | no expired dates in live SDK |
| 6t | Coverage | WARN | 3/6 principle(s) without example: #3 Lee toda la conversación antes de responder., #4 Crisis emocional., #6 Salida ante esquive o coqueteo. |
| Fecha | Tema | Tags |
|---|---|---|
| 2026-06-16 | churn costos roi negociacion | OPEN, ESCALATION, churn-risk, cost, ROI, pricing-expectation, pause-request |
| 2026-06-15 | weekly funnel report jun08 jun14 | analytics, reporting, funnel, keywords, conversion |
| 2026-06-15 | suerte estado keywords deployed | keywords, deployment, resources, agent-config |
| 2026-06-14 | escritura cierre keywords deployed | keywords, deployment, resources, agent-config |
| 2026-06-13 | webhook booking links sent batch | automated-notification, booking-links, setter-followup |
| 2026-06-13 | vika agent booking link notifications | noise, automated-notifications, booking-links |
| 2026-06-13 | booking link conversion analysis june 13 | metrics, conversion, follow-up, booking-links |
| 2026-06-11 | booking link conversion crisis june | conversion-metrics, calendar-funnel, critical-issue |
| 2026-06-11 | income filter calibration review | icp-economico, prompt-calibration, qualification-filter |
| 2026-06-11 | setter feedback nonqualify close and overinsistence | setter-feedback, no-califica, cierre, over-insistence, keyword, remarketing, flag |
| 2026-06-11 | marco viktoria cost and booking collapse escalation | ESCALATION, CRITICAL, cost, variable-spend, booking-collapse, churn-risk, no-califica |
| 2026-06-11 | agent removal from channels | bot-action, channel-management |
| 2026-06-11 | volume and traffic source analysis | content-performance, traffic-quality, volume-trends |
| 2026-06-11 | low income lead qualifier report | qualification, income-threshold |
| 2026-06-11 | keyword aplauso deployed | keyword, deploy, aplauso |
| 2026-06-11 | june crash postmortem followup 2h metrics | metrics, postmortem, follow-up, booking-crash, workflows |
| 2026-06-11 | agent functionality verified stable | agent-health, qualification-flow, operational-check |
| 2026-06-11 | agent health diagnostic and followup timing | health-check, metrics, tracking-bug, followup, timing, open |
| 2026-06-10 | agent identity and vika ethnicity clarification | agent-identity, clarification, context |
| 2026-06-10 | setters flags fabrica nonqualify closure vika russian | setter-flags, keywords, fabrica, cierre-no-califica, persona, remarketing |
| ID | Estado | Cambio pedido |
|---|---|---|
| C5 | ⚠️ | NUNCA mencionar `@Vika` ni `@Vika.hipnocoach` en mensajes — siendo Vika quien habla, sería incoherente |
| C6 | ⚠️ | Cierre no-califica recomienda video YouTube (`video_hipnosis` o `video_contexto`), NUNCA el perfil de IG |
| C7 | ⚠️ | En no-califica, agente toma una pausa breve antes de cerrar — NO responde instantáneamente |
| D11 | ⚠️ | **Cifra exacta obligatoria**: "bastante", "mucho", "algo", "harto" no pasan como ingreso. Pedir número concreto: `"y más o menos cuánto estamos hablando?"` hasta tener cifra exacta |
| D14 | ⚠️ | **Deseo del lead de "resolverlo" / "me lo merezco" NO override al guard de ICP** — si ingreso propio < $1,500 USD, cerrar amable pese a la intención positiva |
| D20 | ⚠️ | **Guard ICP se dispara AL CONFIRMAR LA CIFRA, no después** — si el lead confirma número (e.g. "Sí, €500 al mes"), el agente cierra amable inmediatamente; las preguntas de consecuen |
| D23 | ⚠️ | **Venezuela: cifra de ingreso actual confirmada antes del handoff** — el prompt no bloqueaba avance al Paso 6 si la cifra de ingreso actual era ambigua. Caso `@mmzp77`: lead dijo " |
| D25 | ⚠️ | **Webhook "altamente calificado" dispara prematuro** (hallazgo separado, evaluador/gate de notificación) — en `@mariaba1558` el webhook 🔥 disparó a las 20:30 UTC con `Lead Score 3` |
| G11 | pendiente | **Clientes ya en programa** = NO settear ni mandar link. Hoy detección es manual (operador → Slack → Cortex pausa); pendiente integración GHL webhook |
| G17 | OPEN | **Guard idempotente double-handoff (PENDIENTE)** — antes de mandar el bloque de handoff "mano derecha" / "llamada de claridad", el agente debería verificar si el último OUTBOUND ya |
| L5 | pendiente | **Workflow "Follow-up post-link agenda"** (40 min poll, dispara 4h+ sin respuesta tras link) — fue creado 2026-05-11 14:29 UTC y DESHABILITADO 17:32 mismo día por duplicar mensajes |
| M4 | ⚠️ | **Crons de toggle agente DESHABILITADOS (2026-05-22 17:14)** — `717074b0` (KPIs diarios + pausa nocturna 11pm CDMX) y `55b92677` (Reactivación 5am CDMX) ambos `enabled:false`. El e |
| N5 | pendiente | **GHL webhook enrichment** (pendiente Lolo/Mat/Fran): evento de booking debe incluir nombre del lead, fecha y horario agendados, cupos disponibles del calendario, respuestas del fo |
| N6 | pendiente | **Setter alerts Slack channel** (pendiente Lolo/Ninjo): canal aparte para leads supercalificados; alerta con link a la conversación; agente auto-pausa al disparar alerta; setter hu |
| N7 | pendiente | **Daily KPI report** (pendiente Lolo/Ninjo + Marco): Google Sheet auto-fill con métricas que replica el tablero de setters al cierre de cada día (inbounds, follow-ups, calendarios |
| N12 | ⚠️ | **Gate de notificación**: propuesta de Lolo (19:18 2026-05-13) de subir a `lead_score >= 5` adicional al criterio económico — pendiente verificación que respete el criterio definid |
| O8 | ⚠️ | **Freeze de ~1 semana en cambios al agente (2026-05-22 → ~2026-05-29)** — Fran y Julián manejan TODOS los cambios al prompt y keywords durante el período de prueba. Maca canaliza p |
| O9 | ⚠️ | **`sync-keywords` siempre debe recibir la lista COMPLETA de keywords** — la operación hace full diff. Pasar solo una keyword wipea todas las demás (incidente recuperado en vivo el |
| P5 | ⚠️ | **Post-v145: el agente ya NO manda link, lo manda la setter humana**. La métrica P4 sigue siendo válida pero el `sent_by` cambió de `agent` a operador humano. Hay que revisar pipel |
| Q4 | OPEN | **`descalificado_setter: boolean` (PROPUESTO 2026-05-18)** — propiedad custom que setters marcan al descartar a un lead manualmente; agente lee al inicio de cada conversación y hac |
| R4 | ⚠️ | **NUNCA derivar a líneas de asistencia clínica / suicida / emergencia** — si la lead menciona temas de salud mental, crisis o suicidio, el agente NO recomienda hotlines ni servicio |
| X13 | pendiente | **16 de 24 con link no agendaron** (33% conversion link→agenda) — candidatos a follow-up automático. Pendiente de configurar workflow |
| X20 | pendiente | **Múltiples guards bot-inferidos sin approval**: programa-pricing scripted ("inversión, no un gasto, opciones de pago") REMOVED en v84. Currency conversion logic con ARS/MXN/COP ex |
| X25 | pendiente | **Daily KPI Google Sheet** — Marco aún no envió lista exacta de métricas; Lolo/Ninjo aún no construyó el sheet auto-fill. Pendiente N7 |
| X26 | pendiente | **Leads pendientes de búsqueda** (no encontrados en Ninjo DB) — `@brendsgladin`, `@pameladavilauyen`, `@k.moljim` entraron al programa pero no aparecen con conv registrada; Viktori |
| X30 | OPEN | **OPEN — "algo raro está pasando otra vez"** — Viktoria reportó a Mat a las 22:36 UTC 2026-05-13; Mat respondió pidiendo detalles, thread sin respuesta de Viktoria. Investigar qué |
| X35 | pendiente | **Mayra emotional loop — Paso 5 skipped**: `mayravasquezser` Colombia $5-6K USD/mes (ICP-qualified) quedó trabada en 40+ mensajes de loop emocional sin que el agente disparara `sen |
| X36 | pendiente | **`@pattytrujillo164` double-handoff bug** — agente envió el bloque "mano derecha" / "llamada de claridad" dos veces seguidas a la misma conversación. Causa propuesta: dos triggers |
| X38 | pendiente | **Re-calificación de leads previamente descartados por setter humana** — agente no tiene memoria entre conversaciones; cuando el lead vuelve a abrir un thread, el agente lo calific |
| X41 | OPEN | **Instagram flaggea openers con la palabra "dinero"** (2026-05-21) — todas las respuestas a comments que arrancan con "qué pasa con el dinero" / "qué bloqueo tienes con el dinero" |
| Señal | Valor | Evidencia (cita del cliente) |
|---|---|---|
| Enojado con la plataforma | sí | “algo raro está pasando otra vez 🥵” |
| Es queja | sí | “Viktoria reportó múltiples falsos positivos” |
| Queja constructiva (accionable) | sí | “Viktoria explícita 'que no siga el juego de la soy coqueta'; notificaciones DEBEN ser en español (Viktoria); criterio de Viktoria” |
| Señal | Cita textual | Fecha |
|---|---|---|
| Entusiasmo / promotor declarado | “estoy maravillada / objetivo entre más mejor” | 2026-05-10 |
| Queja por comportamiento del agente (tono inapropiado con leads) | “que no siga el juego de la 'soy coqueta'” | 2026-05-26 |
| Queja operacional: 0 notificaciones recibidas | “Viktoria reportó 0 send_notification desde 7:49am CDMX” | 2026-05-14 |
| Señal de frustración / alarma ante comportamiento inesperado de la plataforma | “algo raro está pasando otra vez 🥵” | 2026-05-13 |
| Queja por calidad de handoffs: falsos positivos masivos | “Viktoria reportó múltiples falsos positivos” | 2026-05-18 |
| Cliente realizó deploys directos al agente (señal de pérdida de confianza en el proceso / urgencia) | “4 versiones consecutivas del prompt deployadas hoy sin pasar por iteración manual del equipo” | 2026-05-18 |
| Queja por idioma de notificaciones (experiencia degradada) | “notificaciones DEBEN ser en español (Viktoria)” | 2026-05-13 |
| Queja por caída crítica de agendas (impacto directo en negocio) | “caída de agendas post-14 may (5-6/día → 0) diagnosticada como cuello de botella en el setter humano” | 2026-05-21 |
| Política de umbrales de ingresos fijada por la clienta (señal de ownership/control) | “Income filter thresholds rejected for modification per Viktoria — policy is fixed” | 2026-06-11 |
| Solicitud de reducción de tiempo de follow-up (urgencia de resultados) | “Follow-up post-link wait 240 → 120 min aplicado por Fran a pedido de Viktoria” | 2026-06-11 |
Un creador que pide cambios concretos está enganchado (mejor señal que el silencio).
| ID | Estado | Cambio pedido |
|---|---|---|
| C5 | ⚠️ | NUNCA mencionar `@Vika` ni `@Vika.hipnocoach` en mensajes — siendo Vika quien habla, sería incoherente |
| C6 | ⚠️ | Cierre no-califica recomienda video YouTube (`video_hipnosis` o `video_contexto`), NUNCA el perfil de IG |
| C7 | ⚠️ | En no-califica, agente toma una pausa breve antes de cerrar — NO responde instantáneamente |
| D11 | ⚠️ | **Cifra exacta obligatoria**: "bastante", "mucho", "algo", "harto" no pasan como ingreso. Pedir número concreto: `"y más o menos cuánto estamos hablando?"` hasta tener cifra exacta |
| D14 | ⚠️ | **Deseo del lead de "resolverlo" / "me lo merezco" NO override al guard de ICP** — si ingreso propio < $1,500 USD, cerrar amable pese a la intención positiva |
| D20 | ⚠️ | **Guard ICP se dispara AL CONFIRMAR LA CIFRA, no después** — si el lead confirma número (e.g. "Sí, €500 al mes"), el agente cierra amable inmediatamente; las preguntas de consecuen |
| D23 | ⚠️ | **Venezuela: cifra de ingreso actual confirmada antes del handoff** — el prompt no bloqueaba avance al Paso 6 si la cifra de ingreso actual era ambigua. Caso `@mmzp77`: lead dijo " |
| D25 | ⚠️ | **Webhook "altamente calificado" dispara prematuro** (hallazgo separado, evaluador/gate de notificación) — en `@mariaba1558` el webhook 🔥 disparó a las 20:30 UTC con `Lead Score 3` |
| G11 | pendiente | **Clientes ya en programa** = NO settear ni mandar link. Hoy detección es manual (operador → Slack → Cortex pausa); pendiente integración GHL webhook |
| G17 | OPEN | **Guard idempotente double-handoff (PENDIENTE)** — antes de mandar el bloque de handoff "mano derecha" / "llamada de claridad", el agente debería verificar si el último OUTBOUND ya |
| L5 | pendiente | **Workflow "Follow-up post-link agenda"** (40 min poll, dispara 4h+ sin respuesta tras link) — fue creado 2026-05-11 14:29 UTC y DESHABILITADO 17:32 mismo día por duplicar mensajes |
| M4 | ⚠️ | **Crons de toggle agente DESHABILITADOS (2026-05-22 17:14)** — `717074b0` (KPIs diarios + pausa nocturna 11pm CDMX) y `55b92677` (Reactivación 5am CDMX) ambos `enabled:false`. El e |
| N5 | pendiente | **GHL webhook enrichment** (pendiente Lolo/Mat/Fran): evento de booking debe incluir nombre del lead, fecha y horario agendados, cupos disponibles del calendario, respuestas del fo |
| N6 | pendiente | **Setter alerts Slack channel** (pendiente Lolo/Ninjo): canal aparte para leads supercalificados; alerta con link a la conversación; agente auto-pausa al disparar alerta; setter hu |
| N7 | pendiente | **Daily KPI report** (pendiente Lolo/Ninjo + Marco): Google Sheet auto-fill con métricas que replica el tablero de setters al cierre de cada día (inbounds, follow-ups, calendarios |
| N12 | ⚠️ | **Gate de notificación**: propuesta de Lolo (19:18 2026-05-13) de subir a `lead_score >= 5` adicional al criterio económico — pendiente verificación que respete el criterio definid |
| O8 | ⚠️ | **Freeze de ~1 semana en cambios al agente (2026-05-22 → ~2026-05-29)** — Fran y Julián manejan TODOS los cambios al prompt y keywords durante el período de prueba. Maca canaliza p |
| O9 | ⚠️ | **`sync-keywords` siempre debe recibir la lista COMPLETA de keywords** — la operación hace full diff. Pasar solo una keyword wipea todas las demás (incidente recuperado en vivo el |
| P5 | ⚠️ | **Post-v145: el agente ya NO manda link, lo manda la setter humana**. La métrica P4 sigue siendo válida pero el `sent_by` cambió de `agent` a operador humano. Hay que revisar pipel |
| Q4 | OPEN | **`descalificado_setter: boolean` (PROPUESTO 2026-05-18)** — propiedad custom que setters marcan al descartar a un lead manualmente; agente lee al inicio de cada conversación y hac |