Every run writes four files into report/. Different views of the same session — for humans, pipelines, and post-mortems.
[SONAR 14:23:34.768] session started (id: 4d4f362394374a85) [SONAR 14:23:34.814] ⚠ WARNING cycle: [reviewer → researcher → writer → reviewer] 5 rotations [SONAR 14:23:34.815] ⚠ WARNING edge_anomaly: researcher → writer (11 events) [SONAR 14:23:34.816] ⚠ WARNING edge_anomaly: writer → reviewer (11 events) [SONAR 14:23:34.816] ⚠ WARNING edge_anomaly: reviewer → researcher (11 events) [SONAR 14:23:34.818] 🚨 CRITICAL edge_anomaly: researcher → writer (15 events) [SONAR 14:23:34.818] 🚨 CRITICAL edge_anomaly: writer → reviewer (15 events) [SONAR 14:23:34.819] 🚨 CRITICAL edge_anomaly: reviewer → researcher (15 events) [SONAR 14:23:34.819] 🚨 CRITICAL cycle: [reviewer → researcher → writer → reviewer] 15 rotations [SONAR 14:23:34.820] 🛑 PREVENTED cyclic_delegation: [reviewer → researcher → writer] stopped at 15 rotations [SONAR 14:23:34.823] session ended (45 delegations, 8 alerts)
[{
"schema_version": "0.1.0",
"event_id": "ddc39663-e971-4f60-ade2-bf60cc998fd8",
"session_id": "4d4f362394374a85",
"event_type": "prevention",
"failure_class": "cyclic_delegation",
"severity": "CRITICAL",
"topology": {
"agents_involved": ["reviewer", "researcher", "writer"],
"interaction_pattern": "circular",
"agent_count": 3,
"occurrence_count": 15
},
"thresholds": {
"warning_at": 5,
"critical_at": 15,
"current_value": 15,
"headroom_remaining": 0
}
}]
// one JSON object per line · tail -f timeline.jsonl to watch live
{"ts":"2026-05-31T14:23:34.768Z","level":"INFO","event":"session_start","data":{"session_id":"4d4f362394374a85","framework":"custom_python"}}
{"ts":"2026-05-31T14:23:34.813Z","level":"INFO","event":"cycle_detected","data":{"cycle_path":["reviewer","researcher","writer"],"rotations":1}}
{"ts":"2026-05-31T14:23:34.814Z","level":"WARNING","event":"alert","data":{"cycle_path":["reviewer","researcher","writer"],"rotations":5,"pattern":"cycle","severity":"WARNING"}}
{"ts":"2026-05-31T14:23:34.815Z","level":"WARNING","event":"anomaly_detected","data":{"source":"researcher","target":"writer","weight":11.0,"event_count":11,"trigger":"hard_limit"}}
{"ts":"2026-05-31T14:23:34.818Z","level":"CRITICAL","event":"alert","data":{"source":"researcher","target":"writer","weight":15.0,"pattern":"edge_anomaly","severity":"CRITICAL"}}
{"ts":"2026-05-31T14:23:34.819Z","level":"CRITICAL","event":"alert","data":{"cycle_path":["reviewer","researcher","writer"],"rotations":15,"pattern":"cycle","severity":"CRITICAL"}}
{"ts":"2026-05-31T14:23:34.820Z","level":"CRITICAL","event":"prevented","data":{"failure_class":"cyclic_delegation","rotations":15,"reason":"cyclic_delegation prevented after 15 rotations"}}
{"ts":"2026-05-31T14:23:34.823Z","level":"INFO","event":"session_end","data":{"total_events":45,"total_alerts":8,"warning_count":4,"critical_count":4,"clean_run":false,"duration_seconds":0.1}}