DEV Community

Cover image for trajectory-sentinel v0.1.0: correlación de señales de defensa de agentes
Fenix
Fenix

Posted on

trajectory-sentinel v0.1.0: correlación de señales de defensa de agentes

trajectory-sentinel v0.1.0: correlación de señales de defensa de agentes

Monitor que junta las señales de adi-shield, wallet-guard y
goal-anchor y detecta ataques que un solo sensor no ve.

El problema

Cada sensor ve una parte. Un atacante puede pasar por uno que dice "allow" si
otro ve deriva. Hace falta una capa que correlacione las señales y decida por
la trayectoria completa, no por cada tool-call aislado.

Qué hace

trajectory-sentinel expone TrajectorySentinel y correlate(). Reglas
deterministas (0-LLM):

  • block/kill de cualquier sensor corta.
  • goal-anchor ve deriva mientras los demás dicen allow → confirma riesgo.
  • goal-anchor emite drift_retract (ampliación humana tardía) → revisa el veredicto a allow, sin congelarse ni ocultar la alerta previa.
  • ≥2 sensores en confirm → confirm agregado.

Cómo funciona

from trajectory_sentinel.monitor import TrajectorySentinel
from adi_shield.bus import LocalSignalBus
bus = LocalSignalBus()
sentinel = TrajectorySentinel(bus)
bus.publish(signal)            # Signal de cualquier sensor
rec = sentinel.report(task_id="t1")
print(rec.to_dict()["correlated"]["verdict"])
Enter fullscreen mode Exit fullscreen mode

El bus real (LocalSignalBus) se usa en los tests E2E; la integración con
goal-anchor está verificada de punta a punta.

Resultados de la auditoría

  • 13 tests en trajectory-sentinel, todos verdes; ruff limpio.
  • Auditado en clone fresco (rama main, commit 35c02e2).

Limitaciones (honestamente)

La retractación es por tarea completa, no por sub-objetivo: si dos
sub-objetivos derivan y solo uno se retracta, la tarea baja a allow entera.
Está documentado en el README. El sistema no está desplegado como middleware de
un agente real.

Pruébalo

git clone --branch main https://github.com/amurlaniakea/trajectory-sentinel.git
cd trajectory-sentinel && python -m venv .venv && . .venv/bin/activate
pip install -e . && pip install -e ../adi-shield && pip install -e ../goal-anchor
pytest tests/ -v
Enter fullscreen mode Exit fullscreen mode

Links


Licencia: AGPL-3.0-or-later. Autor: Pedro Sordo Martínez.

Top comments (0)