fix: resolve RedisCache array offset error and improve discovery diagnostics

- Fix RedisCache driver to handle MGET failures gracefully with fallback
- Add comprehensive discovery context comparison debug tools
- Identify root cause: WEB context discovery missing 166 items vs CLI
- WEB context missing RequestFactory class entirely (52 vs 69 commands)
- Improved exception handling with detailed binding diagnostics
This commit is contained in:
2025-09-12 20:05:18 +02:00
parent 8040d3e7a5
commit e30753ba0e
46990 changed files with 10789682 additions and 89639 deletions

View File

@@ -19,6 +19,7 @@ use App\Framework\Http\Status;
use App\Framework\Meta\MetaData;
use App\Framework\Performance\MemoryMonitor;
use App\Framework\Redis\RedisConnectionPool;
use App\Framework\Router\CompiledRoutes;
use App\Framework\Router\Result\ViewResult;
final readonly class Dashboard
@@ -69,8 +70,8 @@ final readonly class Dashboard
#[Route(path: '/admin/routes', method: Method::GET)]
public function routes(): ViewResult
{
$routeRegistry = $this->container->get('App\Framework\Router\RouteRegistry');
$routes = $routeRegistry->getRoutes();
$compiledRoutes = $this->container->get(CompiledRoutes::class);
$routes = $compiledRoutes->getAllNamedRoutes();
// Sort routes by path for better readability
usort($routes, function ($a, $b) {
@@ -149,7 +150,7 @@ final readonly class Dashboard
}
$env[] = [
'key' => $key,
'value' => is_array($value) ? json_encode($value) : (string)$value,
'value' => is_array($value) ? (json_encode($value) ?: '[encoding failed]') : (string)$value,
];
}