Documented all manual fixes Chronicler made during Dev Panel validation: - AfterInformation.tsx ErrorBoundary wrapper added manually - wrapper.tsx manually copied to ModpackVersionCard.tsx - Blueprint extension package manually updated with v1.1.0 files - Routes manually copied to 3 locations Build.sh update logic and .conf archive rebuild needed.
101 lines
3.6 KiB
Markdown
101 lines
3.6 KiB
Markdown
# MSG-2026-04-13-dev-panel-manual-changes
|
|
|
|
**From:** Chronicler #85
|
|
**Date:** 2026-04-13
|
|
**Priority:** HIGH — repo does not reflect Dev Panel state
|
|
**Status:** OPEN
|
|
|
|
## What I Did on Dev Panel That's Not in the Repo
|
|
|
|
During Dev Panel validation I made several manual fixes that exposed gaps in how
|
|
Blueprint handles the extension package. These need to be properly encoded in the
|
|
repo so live panel deploy and future installs work correctly.
|
|
|
|
---
|
|
|
|
### 1. AfterInformation.tsx — ErrorBoundary wrapper added manually
|
|
|
|
Blueprint's `blueprint -install` skipped the ErrorBoundary injection because
|
|
`ModpackVersionCard` was already present (the "already present" check in build.sh
|
|
only looks for the import, not whether it's wrapped).
|
|
|
|
I manually patched the file directly:
|
|
```tsx
|
|
// Before (on server):
|
|
<ModpackVersionCard />
|
|
|
|
// After (manually patched):
|
|
<ModpackErrorBoundary><ModpackVersionCard /></ModpackErrorBoundary>
|
|
```
|
|
|
|
**The build.sh injection logic needs to handle the update case** — if
|
|
`ModpackVersionCard` is present but NOT wrapped in `ModpackErrorBoundary`,
|
|
it should add the wrapper. Currently it just skips entirely.
|
|
|
|
---
|
|
|
|
### 2. wrapper.tsx never replaced ModpackVersionCard.tsx via build.sh
|
|
|
|
build.sh copies `wrapper.tsx → ModpackVersionCard.tsx` but skips if
|
|
`ModpackVersionCard` import already exists in `AfterInformation.tsx`.
|
|
The "already present" check is too broad — it prevents the component file
|
|
itself from being updated on subsequent deploys.
|
|
|
|
I manually copied: `wrapper.tsx → resources/scripts/components/server/ModpackVersionCard.tsx`
|
|
|
|
**build.sh needs to always copy wrapper.tsx regardless of injection state.**
|
|
Separate the "copy the component file" step from the "inject into AfterInformation" step.
|
|
|
|
---
|
|
|
|
### 3. Blueprint extension package was stale
|
|
|
|
After `blueprint -install`, Blueprint restores files from its own internal
|
|
package — overwriting anything we deployed. I had to manually copy updated files
|
|
INTO the Blueprint extension package:
|
|
|
|
```
|
|
.blueprint/extensions/modpackchecker/build.sh ← copied v1.1.0
|
|
.blueprint/extensions/modpackchecker/views/server/ErrorBoundary.tsx ← copied
|
|
.blueprint/extensions/modpackchecker/views/server/wrapper.tsx ← copied
|
|
.blueprint/extensions/modpackchecker/routes/client.php ← copied
|
|
.blueprint/extensions/modpackchecker/routers/client.php ← copied
|
|
```
|
|
|
|
**The `.conf` Blueprint archive needs to be rebuilt to include all v1.1.0 files.**
|
|
Otherwise every `blueprint -install` will regress to stale files and require
|
|
manual re-copying after each install.
|
|
|
|
---
|
|
|
|
### 4. Routes deployed to 3 locations manually
|
|
|
|
`routes/client.php` exists in the repo but Blueprint wasn't picking it up.
|
|
Had to copy to all three locations Blueprint uses:
|
|
```
|
|
.blueprint/extensions/modpackchecker/routes/client.php
|
|
.blueprint/extensions/modpackchecker/routers/client.php
|
|
routes/blueprint/client/modpackchecker.php
|
|
```
|
|
|
|
---
|
|
|
|
## Summary of What Needs to Be Fixed in the Repo
|
|
|
|
1. **build.sh** — separate component copy from injection; always copy wrapper.tsx;
|
|
add ErrorBoundary wrapper detection for update path
|
|
2. **Blueprint .conf archive** — rebuild to include v1.1.0 files so fresh installs
|
|
don't regress (this may require Blueprint-specific tooling)
|
|
3. **Deployment docs** — document that after `blueprint -install`, manually copy
|
|
wrapper.tsx and routes until the .conf is rebuilt
|
|
|
|
## What's Currently Working on Dev Panel
|
|
|
|
Despite all of the above, Dev Panel IS working correctly right now because I
|
|
manually fixed everything. The widget loads zero-click, ErrorBoundary is in place,
|
|
routes are registered. But it's fragile — another `blueprint -install` would
|
|
regress it.
|
|
|
|
---
|
|
*— Chronicler #85*
|