SocialHub.AI
Nuevo · Acceso anticipado

Integración de la protección contra el fraude de puntos

Flash protege el libro de puntos con un modelo de congelación y luego veredicto: detectores codificados se ejecutan todas las noches y congelan los puntos sospechosos en el momento en que se encuentran (aún en el registro del miembro, pero no utilizables y en pausa para no caducar), luego SoClaw revisa cada retención y anula, liberaciones o lo intensifica, a través de la misma lista de trabajo MCP gobernada que la recuperación.

Esta guía es para el operador/integrador que ejecuta el agente. Para obtener una descripción general del negocio, consulte la SoClaw página del producto; las herramientas de la lista de trabajo se basan en el servidor MCP gobernado en la MCP guía de integración y comparten la lista de trabajo de tareas del agente con la guía de recuperación.

Congelación al detectar, decisión tras revisión

La alternativa más segura a la concesión y recuperación: los puntos se retienen en el instante en que se activa una regla, por lo que no se puede cobrar nada durante la revisión. Un lote congelado permanece en el libro mayor, pero se excluye del saldo gastable, del canje y del vencimiento. El veredicto es lo único que mueve puntos.

# Nightly, server-side (no agent involved):
for detector in enabled_detectors(team):        # master switch + per-detector checkbox
    for hold in detector.detect(team):          # each hold = one entity, e.g. a referral or order
        freeze(hold.targets)                     # FREEZE suspect points (idempotent, reversible)
        enqueue(kind="fraud_points_hold", subject_key=hold.subject_key)   # one review task

# Agent side (self-hosted OpenClaw + SoClaw decisions skill):
task = claim_agent_task(kind="fraud_points_hold")   # NO_TASKS_AVAILABLE / AGENT_TASKS_DISABLED → STOP
facts = get_agent_task(task.id)                      # ids + signal + evidence (no PII)
complete_agent_task(task.id,
    decision="block" | "allow" | "escalate",         # block=void, allow=release, escalate=leave frozen
    reason="<why>")

Una sola señal nunca se autoconfirma. Un detector solo se congela y abre una revisión; el veredicto block/allow/escalate es del agente (o de un humano). El abuso decidible por máquina (autorreferencia, ciclos de referencia, límites de tasa de invitación, hash de recibos duplicados) se bloquea de forma síncrona en otro lugar y nunca llega a esta cola.

Los detectores

Cada opción se activa mediante una casilla de verificación bajo un interruptor principal. Solo existen señales con una base real y verificable; el robo de cuentas, la reventa de puntos y las operaciones ficticias están deliberadamente ausentes (no hay señal de contraparte, instrumento de pago o dispositivo que permita detectarlas honestamente).

same_household_referral

Una derivación convertida cuyo remitente y referido son un hogar confirmado (≥0,9): una probable autorreferencia.

Se congela: Bono por recomendación para ambas partes.

refunded_order_unclawed_points

Un pedido reembolsado en su totalidad o cancelado cuyos puntos de compra otorgados aún están presentes (aún no han sido recuperados).

Se congela: Los puntos de compra del comprador para ese pedido.

household_welcome_farming

Un hogar confirmado donde dos o más miembros todavía tienen un bono de bienvenida: posible agricultura con múltiples cuentas.

Se congela: Bono de bienvenida para cada miembro marcado.

zombie_referral

Una recomendación recompensada hace más de 30 días cuyo miembro invitado no ha realizado ningún pedido desde entonces; probablemente se trate de un registro fraudulento.

Se congela: Bono por recomendación para ambas partes.

order_velocity_burst

Un miembro que realizó una cantidad inusualmente alta de pedidos en un período corto con los puntos aún sin gastar: un proxy de negociación de lavado.

Se congela: Puntos de compra aún presentes del pico.

behavior_outlier

Un miembro cuya actividad de puntos en 30 días (cantidad de transacciones, puntos ganados, canjes) es un valor atípico estadístico extremo (puntuación z robusta ≥ 6) en comparación con la distribución de miembros del equipo.

Se congela: Los puntos aún presentes del miembro desde la ventana de valores atípicos.

Dentro de behavior_outlier: el detector estadístico

A diferencia de los detectores de cinco reglas, behavior_outlier evalúa la actividad de puntos de cada miembro durante 30 días comparándola con la distribución del equipo (tres características por miembro: recuento de transacciones de ganancias, puntos ganados y recuento de canjes), utilizando una puntuación Z robusta (mediana + desviación absoluta media, para que unos pocos usuarios influyentes no alteren la línea base):

z = (x − median) / (MAD × 1.4826)     # per feature, vs the team's own members
flag when z ≥ 6
  • Pisos antes de que se active nada. El miembro necesita ≥ 10 transacciones de ganancia en la ventana, y el equipo necesita ≥ 50 miembros activos para establecer una línea base; por debajo de cualquiera de estos valores, el detector no emite nada.
  • Mismo proceso de congelación → revisión. La congelación se ejecuta antes de que se ponga en cola la tarea de revisión; Los lotes congelados permanecen en el registro (no se pueden gastar, su vencimiento se ha pausado); la decisión (liberar/anular/escalar) la toma SoClaw o un humano; nunca se aplica un castigo automático.
  • Máximo una revisión por miembro al mes. La clave del asunto es behavior_outlier:{memberId}:{YYYYMM}, y los miembros que ya tienen un lote bloqueado se omiten; no se acumulan.
  • Optar por no participar como los demás. Una casilla de verificación por detector, activada de forma predeterminada cuando el tipo de tarea de fraude está habilitado para el equipo.
  • Evidencia de caja de cristal. Cada característica marcada en la carga útil de la razón lleva {value, teamMedian, robustZ, flagged} más los niveles mínimos que se aplicaron; el revisor ve exactamente por qué se marcó al miembro, no una puntuación.

Semántica del veredicto

DecisiónEfecto
blockFraude confirmado: los puntos bloqueados se anulan (se eliminan definitivamente y no se vuelven a canjear).
allowFalsa alarma: los puntos se liberan y vuelven a estar disponibles para canjear. Si la caducidad ha expirado, se extiende un período de gracia para que el miembro no sea penalizado por la retención.
escalateNo está claro: los puntos permanecen congelados y el caso se deja para un humano. Recomendado cuando una sola señal no es suficiente para juzgar.

Cada efecto se ejecuta a través de una escritura idempotente existente: congelar, anular y liberar se definen por (action, hold, member), y el efecto se aplica antes de que la tarea se finalice, por lo que un arrendamiento perdido nunca deja un cambio aplicado a medias. No existe una nueva ruta de dinero para el agente.

Controles de administración y el sistema de seguridad

  • Interruptor principal: la detección de fraude está desactivada hasta que el propietario/administrador de la organización habilite la tarea de retención de puntos para el equipo, y un interruptor de desactivación de la plataforma la bloquea globalmente. Ambos deben estar activados para que se ejecute cualquier detección.
  • Lista de verificación por detector: cada detector es una casilla de verificación (sin configuración almacenada = activado cuando el maestro está activado). Deshabilitar uno desactiva solo esa verificación.
  • Escalado de suspensión obsoleta: una suspensión sin veredicto después de dos semanas se escala automáticamente a un humano. Los puntos permanecen congelados: nunca se liberan automáticamente (el fraude no puede esperar a que pase el tiempo) ni se anulan automáticamente (el miembro puede ser inocente).
  • Auditoría completa: congelar, anular, liberar y escalar se escriben en la lista de trabajo con su motivo; nada se mueve silenciosamente.