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
Check Cross-Plugin Imports / check (push) Has been cancelled
This commit is contained in:
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user