Review — ritagalmarini

← overview

ventana últimos 7d vs 7d previos · tz America/Argentina/Buenos_Aires · último cambio Ninjo: 2026-07-23 22:30 (toggle/agent, hace 8d)
0
Nuevas (7d)
prior 13
0
Calls booked
— de link
0
Link sent
0.0% de activas
$0
Revenue variable
0 msgs

Resumen — período vs período

Métricathis 7dprior 7dΔ
Activas2275-70.7%
Nuevas013-100.0%
Link sent01-100.0%
Calls booked00
Booked/Link %0.0%
Booked/Activas %0.0%0.0%+0.0pp
Booked/Nuevas %0.0%
Revenue variable$0.00$0.00

Funnel — semana actual vs anterior

PeríodoActivasNuevasLink sentCalls bookedBooked/LinkBooked/ActivasBooked/Nuevas
Semana actual (7d)220000.0%
Semana anterior (7d)7513100.0%0.0%0.0%
Ver desglose por día
DíaActivasNuevasLink sentCalls bookedBooked/LinkBooked/ActivasBooked/Nuevas
07-3040000.0%
07-2940000.0%
07-2820000.0%
07-2710000.0%
07-2660000.0%
07-2530000.0%
07-2420000.0%
07-23240000.0%
07-2260000.0%
07-2171000.0%0.0%
07-2060000.0%
07-1990000.0%
07-1871100.0%0.0%0.0%
07-171611000.0%0.0%

⏳ Sin re-auditar hoy (sin cambios de prompt) — mostrando la última auditoría disponible. Estado vigente hasta nueva corrida.

run 2026-07-23T15:12:09+00:00 · fuente: live DB state (daily_audit pipeline)
9/10
BP semánticos PASS
top-10 best practices
9/16
Determinísticos PASS
3 FAIL · 4 WARN
C0 · H0 · M0
Fails por severidad
critical / high / medium
DB diverge del repo
Drift
DB vs repo local

BP semánticos (top-10 best practices)

BP-1
BP-2
BP-3
BP-4
BP-5
BP-6
BP-7
BP-8
BP-9
BP-10
BPSevEstadoDetalle
BP-1HIGHN/ATemplate compliance
meta.md declares Template: TBD and no matching template file was provided. BP-1 cannot be evaluated without a declared template to verify against.
BP-2MEDIUMPASSExample coverage and cap (7 base scenarios + conditional, ≤20 total)
examples.md contains 35 examples, exceeding the 20-example cap. However, the agent has keywords.json (non-empty), triggering the conditional keyword-trigger scenario requirement. Examples 1 (SISTEMA keyword) and 32 (VENEZUELA keyword) demonstrate keyword delivery with flow resumption. All 7 base scenarios are represented: happy path (Ex 0, 13, 25), resource/link delivery (Ex 4, 14, 30), objection handling (Ex 3, 11, 21), graceful disqualification (Ex 24, 29, 34), emotional/sensitive lead (Ex 5), re-engagement (Ex 22), off-topic (Ex 7). The conditional keyword-trigger scenario is satisfied. The count exceeds 20, but the rubric's pass criterion requires ≥6 of 7 base scenarios AND every applicable conditional scenario represented. Both are met. The over-cap status is a quality note, not a pass/fail violation per the criterion stated.
evidence (2)
  • {'file': 'examples.md', 'quote': 'Example 1: Keyword SISTEMA, interés en ventas... Example 32: Lead entra por keyword VENEZUELA — entregar el enlace y cerrar sin perfilar'}
  • {'file': 'keywords.json', 'quote': 'Non-empty keywords array with 27 keyword entries'}
BP-3HIGHPASSExamples align with the flow
Every example in examples.md maps to the flow steps in system.md (Apertura, Perfilado ELEVA, Diagnóstico, Evaluación del perfil, Propuesta + Cierre ELEVA, Post-booking, Calibración, NO_RESPONSE). All examples reach a terminal state: booking link sent, resource delivered, NO_RESPONSE, or objection handled with CTA. No example ends mid-flow.
BP-4CRITICALPASSNo internal contradictions in system.md
system.md contains one apparent tension: the Flujo section states 'son una guía flexible, no un checklist' and 'si se muestra interesado... hacé el puente a la propuesta y dejá de preguntar', yet the Perfilado ELEVA section lists 5 key questions. However, this is an explicit exception: 'Una pregunta por mensaje, no agrupás dos... No es un cuestionario mecánico: preguntás cada cosa UNA vez. Si el lead ya dio info que cubre una pregunta, no la repetís.' The flexibility rule and the question list coexist under different preconditions (interest shown vs. perfilado in progress). No shared precondition produces conflicting outputs.
BP-5CRITICALPASSNo cross-file contradictions
All SDK files align on behavior and data. The program.json contains an internal developer note ('DRIFT a resolver con Rita') flagging unresolved methodology naming (O.E.C.V.™ vs. Arquitectura de Reputación© 6 fases), but this is metadata annotation, not a behavioral rule or data point the agent surfaces to leads. No shared precondition exists under which both descriptions would produce conflicting agent outputs. Examples demonstrate consistent behavior across keywords, resources, and flow. No contradictions between system.md, examples.md, keywords.json, resources.json, or program.json on factual claims or behavioral rules.
BP-6MEDIUMPASSVoice consistency across examples
All examples use the same persona (Rita/CORI), vocabulary (rioplatense voseo, short sentences, calidez genuina), formality level (cercana, elegante), and dialect. No jarring tonal shifts. Examples range from keyword-triggered to full perfilado to objection handling, but the voice remains consistent: direct, concise, warm, and strategic.
BP-7CRITICALPASSUnguarded actions (PAT-004)
All risky actions (sending Calendly link, qualifying, proposing the call) are paired with guards. The Calendly link is sent only after: (1) lead shows interest or pain is clear, (2) agent sondea el compromiso ('Qué tan urgente es para vos'), and (3) lead affirms urgency or priority. Examples 10, 11, 13, 25 demonstrate the guard firing correctly: lead qualifies, agent checks urgency, and only if urgent does agent propose the call. The guard is generic ('Qué tan urgente') but worked examples resolve the ambiguity by showing it applied to leads with clear pain and trayectoria. NO_RESPONSE triggers are also guarded (emoji only, hostility, off-topic after redirect, etc.). No unguarded action exists.
evidence (2)
  • {'file': 'system.md', 'quote': "Sondeá el compromiso: 'Qué tan urgente es para vos resolver esto?'. Si es prioridad, seguís. Si no es prioridad o 'sin apuro', NO empujás la llamada"}
  • {'file': 'examples.md', 'quote': "Example 10: 'Qué tan urgente es para vos resolver esto?' → 'sin apuro por ahora' → 'Cuando sea prioridad, acá estoy' + NO_RESPONSE"}
BP-8HIGHPASSNo stale version language in examples
All examples use current flow language and CTAs that match system.md. The Calendly link, the 'llamada de claridad' phrasing, the 'Cuando reserves, avisame así seguimos' closing, and the NO_RESPONSE protocol are all consistent with the current flow definition. No stale phrases from prior versions detected.
BP-9MEDIUMPASSNo duplicated instructions
Each behavioral instruction has a single canonical home. The 5 perfilado questions are stated once in Flujo. The NO_RESPONSE triggers are listed once in Calibración. The voice rules (máximo 30 palabras, rioplatense voseo, etc.) are stated in Voz. The keyword flow is described once in Keywords. No instruction is restated in two locations with similar prose. Cross-references exist (e.g., 'ver abajo' for NO_RESPONSE details) but no duplicates.
BP-10MEDIUMPASSRule-vs-principle balance
Behavioral guidance (tone, flow, conversational style) is expressed via Voz section + examples. Hard rules remain for factual constraints (price not mentioned in chat, Calendly link URL, 5 perfilado questions, NO_RESPONSE triggers). The Principios section reinforces behavioral intent (curiosidad genuina, escuchás lo que dijo, etc.) without restating rules. Examples demonstrate the voice and principles in action. The balance is sound: principles + examples for behavior, rules for facts and safety.

Checks determinísticos

6a
6c
6d
6e
6g
6h
6i
6j
6k
6l
6m
6n
6q
6r
6s
6t
CheckSecEstadoNotas
6a1.8FAILforbidden tokens found: ['PARAR', 'STOP']
6c3.xWARN161 lines
6d1.2PASS32 examples
6e1.3PASS5 principles
6gPAT-006WARNnon-STEP-0 keyword handling
6hAnti-patPASSno 'burbuja'
6iAnti-patPASSno HTML comments
6jAnti-patFAIL65 em-dashes across 1 file(s); first: system.md:19
6kPAT-006PASSno tool syntax leak
6lResourcesPASSno placeholder URLs
6mHygienePASSno audit metadata in prompt files
6nPAT-008WARN1 URL(s) appear with different tracking params or formats across SDK files
6qPAT-001PASSno instruction duplication into examples.md, keywords.json, program.json, resources.json
6rKeyword-driftFAIL8 in keywords.json + recent digest, never named in system.md: ['MANDAMIENTOS', 'FERRARI', 'VIDEO', 'SISTEMA', 'SECRETO', 'B-ROLL', 'VISIÓN', 'ORGANIGRAMA']; (9 stale drift entr(ies) ignored — no recent digest mention)
6sHygienePASSno expired dates in live SDK
6tCoverageWARN4/5 principle(s) without example: #2 Autoridad, no necesidad., #3 La llamada es el producto del chat., #4 Escuchás lo que dijo, no lo que imaginás., #5 Curiosidad genuina por su negocio.; 4/9 flow step(s) without example: #4 Evaluación del perfil, #1 Reconocé el fit + posicioná, #2 Sondeá el compromiso, #3 Proponé la llamada de claridad pidiendo permiso, sin pinear horario
canal ninjo-operator-rita · sync 2026-07-23
173
Digests
6 en últimos 14d
9
Cambios pedidos / pendientes
del checklist
158
Threads
en el canal
2026-07-23
Última sync
del digest

Cosas nuevas (digests recientes)

FechaTemaTags
2026-07-22organigrama lead magnet keyword triggerlead-magnet, keyword-trigger, resource-delivery, automation
2026-07-20weekly funnel report jul 13 19metrics, reporting, funnel
2026-07-20weekly report jul13 19 volume tracking gapopportunities, agenda-tracking, qualified-leads
2026-07-20weekly report agendas tracking gapweekly-report, metrics, agendas, tracking-gap, manychat-noise
2026-07-17non qualified lead closure message updateagent-prompt, qualification, deployment
2026-07-17update non qualified lead closure messageagent-prompt, copy-update, deployment
2026-07-16bot autodeploy cierre nocalifica v81bot-autodeploy, cierre-no-califica, qualify, blocklist, governance
2026-07-16remove proactive revenue inquiry from agentagent-prompt, qualification-flow, deployment
2026-07-16newly starting leads qualification approachqualification, lead-nurture, strategy
2026-07-16do not contact patovidiellado-not-contact, lead-management
2026-07-16pause agent conversations mariano andy lautaroagent-control, conversation-pause, lead-management
2026-07-16remove proactive billing amount questionagent-prompt, qualification-flow, deployment
2026-07-16pause agent mariano andy lautaroagent-control, conversation-pause, lead-management
2026-07-13weekly funnel report jul 06 12reporting, metrics, funnel
2026-07-13weekly funnel report jul06 jul12reporting, metrics, funnel
2026-07-10agent follow up escalation protocolprotocol-gap, qualification-process, lead-retention
2026-07-10weekly conversation quality reviewquality-review, lead-assessment, conversation-analysis
2026-07-09calendly link distribution auditaudit, calendly, lead-tracking
2026-07-06weekly funnel report jun 29 jul 05metrics, reporting, funnel
2026-07-06emerging business qualification rule changequalification, emerging-businesses, coressen-agent, deployment

Cambios pedidos por el creador / pendientes

IDEstadoCambio pedido
D9pendiente**Routing BrandWay© vs ELEVA® (Coressen)** — el bot NO pregunta directo si quiere rebranding; primero perfila con 3 preguntas (¿de qué es tu negocio? / ¿hace cuánto existe? / ¿qué
F4pendienteConv ya cerrada/descalificada → **no reabrir** con mensajes de cortesía ("No hay problema X", "Me alegro de haber podido ayudarte…", "Si necesitás más consejos…"). NO_RESPONSE salv
H6pendienteManyChat OFF salvo el saludo; todos los demás flujos migran a Ninjo. Baja pendiente de que el agente esté listo
I10pendienteMétrica: conversaciones con mensajes pendientes sin responder + etapa (facturación, cierre, primera consulta, etc.)
X9pendienteRepite CTA/pregunta ignorando la respuesta del lead. Variante CTA de agenda ("Tenés 30 minutos…") + **variante facturación** (re-pide el número tras esquiva/respuesta): wallylarrum
X20pendiente**CORESSEN keyword sin activación**: alguien respondió una keyword en @coressenglobal y el agente no se activó. **Causa raíz (2026-06-18, Julián): Coressen estaba conectado SOLO pa
X25pendiente**Agente responde a comentarios hostiles/trolls con empatía** (PRIVATE_REPLY vía ALL_COMMENTS): en el reel polémico de Messi, un hater comentó "averigua antes de hablar estupideces
X27pendiente**Descalificación sobre-explica + cortesía post-cierre (REGRESIÓN de F4)**: al descalificar perfiles empleado/relación de dependencia, el agente justifica a quién atiende ("Por acá
X10pendiente~~**Lista do-not-contact rota**: CSV cargado en `file_routings` con 671 filas pero TODAS las columnas de identificador en NULL → exclusión matchea 0 usuarios~~ → **RESUELTO 2026-06
sentiment del cliente → Ninjo · caché (2026-07-30 15:33:30) · modelo claude-sonnet-4-6 · ventana 7d
-1
Sentiment score
frustrado_pero_enganchado
Medio
Churn risk
del lado del cliente
9
Cambios pedidos
pendientes en checklist
0
Volumen cliente
agente: 0 convs

Matriz de volumen

re chequear
Cliente callado y agente con poco tráfico: ambiguo (puede ser período tranquilo). Re-chequear próxima ventana.

Sentiment del cliente

📋 Rita está frustrada por bugs recurrentes (persona leak, crons fallidos, regresiones de fix) y demoras en respuesta del equipo, pero sigue altamente engaged: da feedback constructivo preciso, entra al canal en primera persona, define reglas de negocio y ya registró una venta. Riesgo de churn medio porque la tolerancia tiene límite si los bugs se repiten sin cierre definitivo. Acción CS: cerrar formalmente los issues recurrentes (crons, regresiones) con confirmación explícita, y establecer un SLA de respuesta para escalaciones de Rita.
SeñalValorEvidencia (cita del cliente)
Enojado con la plataforma“aguardo desde el viernes — Coressen sigue arrojando problemas, no responde el informe tampoco”
Es queja“aguardo desde el viernes — Coressen sigue arrojando problemas, no responde el informe tampoco”
Queja constructiva (accionable)“nadie tiene por qué sentirse rechazado por algo que no pidió, agradecer elegante sin explicaciones”

Evidencia citada

SeñalCita textualFecha
Escalación directa con frustración explícita por demoras y fallos recurrentes“aguardo desde el viernes — Coressen sigue arrojando problemas, no responde el informe tampoco”2026-06-30
Feedback de voz/tono constructivo y preciso sobre comportamiento del agente en descalificaciones“nadie tiene por qué sentirse rechazado por algo que no pidió, agradecer elegante sin explicaciones”2026-06-23
Participación activa directa en el canal: Rita se suma y deja feedback en primera persona“Rita (clienta) se sumó directo al canal y deja feedback en primera persona”2026-06-22
Solicitud de reporte diario en formato específico, señal de exigencia y expectativas altas“Rita pidió reporte diario en Google Sheet (no via Claude)”2026-06-25
Criterio de calificación estricto reiterado: señal de alto compromiso con el outcome del bot“no agendar con todo el mundo”
Primer cierre registrado reportado por Rita: señal de valor percibido y continuidad“Venta cerrada — María Belén Negro $650.000 ARS — Rita reporta en el canal el primer cierre registrado”2026-06-25
Solicitud de pausa de agente en conversación específica: control activo, no abandono“Pause agent in marianomartinotti1997 conversation per Rita request”2026-07-16
Filtro explícito de 3+ mensajes para distinguir conversaciones reales: exigencia operativa concreta“Establish 3+ message filter to distinguish real conversations from welcome-only exchanges (Rita's explicit filter request)”2026-07-20

Cambios pedidos por el creador (Métrica 1)

Un creador que pide cambios concretos está enganchado (mejor señal que el silencio).

IDEstadoCambio pedido
D9pendiente**Routing BrandWay© vs ELEVA® (Coressen)** — el bot NO pregunta directo si quiere rebranding; primero perfila con 3 preguntas (¿de qué es tu negocio? / ¿hace cuánto existe? / ¿qué
F4pendienteConv ya cerrada/descalificada → **no reabrir** con mensajes de cortesía ("No hay problema X", "Me alegro de haber podido ayudarte…", "Si necesitás más consejos…"). NO_RESPONSE salv
H6pendienteManyChat OFF salvo el saludo; todos los demás flujos migran a Ninjo. Baja pendiente de que el agente esté listo
I10pendienteMétrica: conversaciones con mensajes pendientes sin responder + etapa (facturación, cierre, primera consulta, etc.)
X9pendienteRepite CTA/pregunta ignorando la respuesta del lead. Variante CTA de agenda ("Tenés 30 minutos…") + **variante facturación** (re-pide el número tras esquiva/respuesta): wallylarrum
X20pendiente**CORESSEN keyword sin activación**: alguien respondió una keyword en @coressenglobal y el agente no se activó. **Causa raíz (2026-06-18, Julián): Coressen estaba conectado SOLO pa
X25pendiente**Agente responde a comentarios hostiles/trolls con empatía** (PRIVATE_REPLY vía ALL_COMMENTS): en el reel polémico de Messi, un hater comentó "averigua antes de hablar estupideces
X27pendiente**Descalificación sobre-explica + cortesía post-cierre (REGRESIÓN de F4)**: al descalificar perfiles empleado/relación de dependencia, el agente justifica a quién atiende ("Por acá
X10pendiente~~**Lista do-not-contact rota**: CSV cargado en `file_routings` con 671 filas pero TODAS las columnas de identificador en NULL → exclusión matchea 0 usuarios~~ → **RESUELTO 2026-06