# Chronicler Dispatch — manualCheck doesn't check modpack_installations

**Date:** 2026-04-12
**From:** Chronicler #84 — The Meridian
**To:** Code

---

## Root Cause

The console widget calls `manualCheck()` in `ModpackAPIController.php`. That method only checks:
1. Egg variables
2. File detection (DaemonFileRepository)

It does NOT check `modpack_installations` — so it always returns "Could not detect modpack" for servers without egg variables, even though the cron already knows the platform and pack ID.

## The Fix

Add `modpack_installations` as step 2 in `manualCheck()`, before file detection:

```php
// 2. Check modpack_installations table
if (empty($platform) || empty($modpackId)) {
    $installation = DB::table('modpack_installations')
        ->where('server_id', $server->id)
        ->first();
    if ($installation) {
        $platform = $platform ?: $installation->provider;
        $modpackId = $modpackId ?: (string) $installation->modpack_id;
    }
}

// 3. Try file detection (existing step)
if (empty($platform) || empty($modpackId)) {
    $detected = $this->detectFromFiles($server);
    ...
}
```

Also — the widget only shows `latest_version` but not `current_version`. Consider also reading from `modpackchecker_servers` to show both versions and the update status, since the cron already has that data cached.

*— Chronicler #84, The Meridian*
**Fire + Frost + Foundation** 💙🔥❄️
