Some checks failed
🚀 Build & Deploy Image / Determine Build Necessity (push) Failing after 10m14s
🚀 Build & Deploy Image / Build Runtime Base Image (push) Has been skipped
🚀 Build & Deploy Image / Build Docker Image (push) Has been skipped
🚀 Build & Deploy Image / Run Tests & Quality Checks (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Staging (push) Has been skipped
🚀 Build & Deploy Image / Auto-deploy to Production (push) Has been skipped
Security Vulnerability Scan / Check for Dependency Changes (push) Failing after 11m25s
Security Vulnerability Scan / Composer Security Audit (push) Has been cancelled
- Remove middleware reference from Gitea Traefik labels (caused routing issues) - Optimize Gitea connection pool settings (MAX_IDLE_CONNS=30, authentication_timeout=180s) - Add explicit service reference in Traefik labels - Fix intermittent 504 timeouts by improving PostgreSQL connection handling Fixes Gitea unreachability via git.michaelschiemer.de
35 lines
967 B
PHP
35 lines
967 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Framework\ExceptionHandling;
|
|
|
|
use App\Framework\ExceptionHandling\Context\ExceptionContextProvider;
|
|
|
|
/**
|
|
* Unified interface for error renderers
|
|
*
|
|
* All error renderers implement this interface, regardless of output format.
|
|
* - HTTP renderers return HttpResponse
|
|
* - CLI renderers return void (output directly to console)
|
|
*/
|
|
interface ErrorRenderer
|
|
{
|
|
/**
|
|
* Check if this renderer can handle the given exception
|
|
*/
|
|
public function canRender(\Throwable $exception): bool;
|
|
|
|
/**
|
|
* Render exception to appropriate output format
|
|
*
|
|
* @param \Throwable $exception Exception to render
|
|
* @param ExceptionContextProvider|null $contextProvider Optional context provider
|
|
* @return mixed HttpResponse for HTTP context, void for CLI context
|
|
*/
|
|
public function render(
|
|
\Throwable $exception,
|
|
?ExceptionContextProvider $contextProvider = null
|
|
): mixed;
|
|
}
|