a03675113a
- .claude/agents/fn-orquestador/SKILL.md - .claude/commands/fn_claude.md - .claude/rules/INDEX.md - .claude/rules/cpp_apps.md - .claude/rules/ids_naming.md - CHANGELOG.md - apps/dag_engine/README.md - apps/dag_engine/api.go - apps/dag_engine/dags_migrated/example.yaml - apps/dag_engine/dags_migrated/example_lineage_tracking.yaml - ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2.4 KiB
2.4 KiB
name, id, status, created, updated, priority, risk, related_issues, apps, trigger, schedule, expected_runtime_s, tags
| name | id | status | created | updated | priority | risk | related_issues | apps | trigger | schedule | expected_runtime_s | tags | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| matrix-telemetry-bot | 0007 | pending | 2026-05-16 | 2026-05-16 | high | low |
|
|
webhook | 1 |
|
Goal
Probar agents_and_robots como sink universal de telemetria. Cada falla critica en cualquier app dispara un mensaje a sala Matrix #fn-registry-ops. Cierra el bucle observability del stack.
Pre-requisitos
- Bot Matrix activo, joineado a
#fn-registry-ops. agents_and_robotscon accionmatrix_send_messageoperativa.- Variables expuestas como funcion del registry:
matrix_send_message_py_infrao equivalente.
Flow
Tres triggers distintos, mismo sink.
Trigger 1: data_factory run failed
- En
data_factory_record_run_py_pipelines, sistatus == 'failed'-> tambien llamamatrix_send_message. - Formato:
:rotating_light: <node_id> FAILED in <duration_ms>ms error: <error[:200]>
Trigger 2: dag_engine DAG final status
- En executor de dag_engine, handler
on_failureinvocamatrix_send_message. - Formato:
:x: DAG <dag_name> run <run_id> FAILED step <step_name> exit <code>
Trigger 3: call_monitor anomaly
- Cron 1h analiza
call_monitor.violations_24h. Si > threshold (default 50)::warning: violations_24h = <N> (threshold <T>) — top rules: <rule_ids> - Si
error_rate_7d > 0.1para alguna funcion top -> alert.
Acceptance
matrix_send_message_py_infraexiste en el registry (crear si no — usa agents_and_robots backend).- Trigger 1 dispara mensaje cuando un node de data_factory falla deliberadamente.
- Trigger 2 dispara mensaje cuando un DAG falla (test con DAG que falla a proposito).
- Trigger 3 dispara mensaje cuando se inyectan violations sinteticas.
- Mensajes llegan en <3 segundos del evento.
Telemetria esperada
function_stats.matrix_send_message_*: calls dependientes de eventos reales.- Sala Matrix recibe mensajes de los 3 origenes.
Notas
- Throttling: max 1 mensaje/minuto por origen para evitar spam.
- Severidad: prefix emoji indica nivel.
- Mejora futura: comandos en sala (
!status,!ack <run_id>) para responder desde Matrix. - Pre-condicion:
agents_and_robotsnecesita estar deployado + bot autenticado.