46 lines
1.7 KiB
Markdown
46 lines
1.7 KiB
Markdown
# REQ-2026-04-13-missing-modpack-installations-migration
|
|
|
|
**Filed by:** Chronicler #85
|
|
**Date:** 2026-04-13
|
|
**Priority:** HIGH — blocks Dev Panel deploy, will block any fresh install
|
|
**Status:** OPEN
|
|
|
|
## Problem
|
|
|
|
The `modpack_installations` table exists on live panel (panel-vps) but has **no migration file** in the repo. It was created directly on the server at some point and never committed.
|
|
|
|
This caused an API error on Dev Panel during today's deploy — the table simply didn't exist. Chronicler manually created it via raw SQL as a temporary fix to unblock testing.
|
|
|
|
## Live Panel Schema (confirmed via Trinity Core)
|
|
|
|
```
|
|
Field | Type | Null | Key | Default | Extra
|
|
provider | varchar(191) | NO | | NULL |
|
|
modpack_id | varchar(191) | NO | | NULL |
|
|
server_id | bigint(20) unsigned | NO | PRI | NULL |
|
|
finalized | tinyint(1) | NO | | 0 |
|
|
```
|
|
|
|
PRIMARY KEY on `server_id`. Engine InnoDB, charset utf8mb4.
|
|
|
|
## What Code Needs to Do
|
|
|
|
Create a proper Laravel migration file:
|
|
|
|
```
|
|
services/modpack-version-checker/blueprint-extension/database/migrations/2026_04_13_000001_create_modpack_installations_table.php
|
|
```
|
|
|
|
Using the schema above. Standard Blueprint/Laravel migration format matching the existing migration files in that directory.
|
|
|
|
## Why It Matters
|
|
|
|
Without this, any fresh Blueprint install (new panel, wipe and reinstall) will throw:
|
|
`SQLSTATE[42S02]: Table 'panel.modpack_installations' doesn't exist`
|
|
|
|
This will affect every BuiltByBit customer who purchases ModpackChecker.
|
|
|
|
## After Code Pushes
|
|
|
|
Chronicler will pull on Dev Panel and confirm the migration file is present before live panel deploy.
|