fix: WeasyPrint URL fetcher + attachment improvements + webhook error propagation + WebSocket conversation check + RLS disabled on system tables (bootstrap fix)
Check Cross-Plugin Imports / check (push) Has been cancelled

This commit is contained in:
Agent Zero
2026-07-29 13:19:21 +02:00
parent 9bd6936d17
commit f1a2484055
6 changed files with 119 additions and 9 deletions
+7 -1
View File
@@ -68,7 +68,11 @@ async def _dispatch_single(
event_name: str,
data: dict[str, Any],
) -> None:
"""Send a webhook and log the result."""
"""Send a webhook and log the result. Raises on failure (P1.5 fix).
Previously errors were swallowed, causing the outbox to mark events
as 'published' even when webhook delivery failed.
"""
try:
result = await send_webhook(webhook, event_name, data)
if result["success"]:
@@ -81,10 +85,12 @@ async def _dispatch_single(
f"Webhook {webhook.id} failed for {webhook.url} "
f"event {event_name}: {result.get('error')}"
)
raise RuntimeError(f"Webhook {webhook.id} failed: {result.get('error')}")
except Exception as exc:
logger.error(
f"Webhook {webhook.id} dispatch error for {webhook.url}: {exc}"
)
raise # Re-raise so outbox can retry (P1.5 fix)
def register_webhook_event_handlers(event_bus: EventBus | None = None) -> None: