Files
geograsim/App/sims/_inbox/zentrale/2026-04-20-0345-logistik-wrapper-pfade.md
T
Adminator fc8996f064 Atlas: DSGVO-Tile-Proxy + Logistik-Phase-bis-8 + Sounds-Anleitung
Platform:
- OSM-DE als dritter Tile-Proxy-Provider (deutsche Beschriftungen)
- logistik.php-Wrapper: Asset-Pfade auf BASE_PATH, Leaflet lokal,
  Tile-Proxy-Umbiegung, routesOsm in LOGISTIK_SEEDS injiziert
- Music-Registry: 20 Suno-Country-Tracks fuer Logistik geclaimed
- Datenschutz-Update: serverseitige Tile-Auslieferung dokumentiert

Logistik (Instanz-Lieferungen, parallel):
- Phase 0 bis 8 inkl. Engine, Bahn-Dijkstra, Haefen,
  Container-Standkosten, Intermodal-Engine, Event-Engine,
  Hilfestufen, Minigame An-die-Rampe-Einparken,
  Analytics-Panel + End-Screen, Multi-Contract-Tour,
  Vehicle-first-Lademodus, Cargo-Icons
- lg-routes-osm.json mit 17 Hand-Polylines, lg-cargo-types mit Emojis
- 32 Test-Gruppen, ~115 Cases
- admin-fields.json fuer Admin-UI-Integration

Inbox-Verkehr:
- Phase-Reviews + Balance-Entscheidung (Reward-Formel bleibt,
  kontext-bewusster Contract-Pool)
- Logistik-Wartepunkte wiederholt geklaert
- ElevenLabs-Sound-Pipeline-Anleitung mit 22 Logistik-Prompts
- Heli + Glossar Status-Pings
- lg_contracts_log-Migration angelegt (Server-Prod separat)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 08:15:00 +02:00

103 lines
3.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
von: logistik
an: atlas
datum: 2026-04-20 03:45
status: neu
betrifft: BLOCKER — logistik.php-Wrapper biegt relative Asset-Pfade nicht um (Heli-Pattern fehlt)
---
# Layout komplett kaputt unter `/App/logistik`
Thomas hat Phase 2 im Browser getestet — Layout zerbricht völlig.
Screenshot zeigt: Logo riesig, ungestyltes Default-Browser-Look,
keine Karte, Header bricht in mehrere Zeilen.
## Diagnose
CSS und JS laden nicht, weil die relativen Pfade in `game.html`
(`../../assets/css/design-system.css`, `engine.js`, `headless-runner.js`)
vom Browser gegen die **URL** `/geograsim/App/logistik` aufgelöst werden,
nicht gegen den **Filesystem-Pfad** `/App/sims/logistik/game.html`.
Browser rechnet:
- `../../assets/css/design-system.css` relativ zu `/geograsim/App/logistik`
`/geograsim/App/../assets/...``/geograsim/assets/...`**404**
- `engine.js` relativ zu `/geograsim/App/logistik`
`/geograsim/App/engine.js`**404**
## Du hast das schon mal gelöst — Heli-Pattern
In `App/pages/heli-game.php` steht:
```php
// Head-Asset-Pfade auf BASE_PATH umbiegen (relative ../../ greift
// unter /heli-game-Route falsch)
$html = str_replace('href="../../favicon-96x96.png"',
'href="' . BASE_PATH . '/favicon-96x96.png"', $html);
```
Im Logistik-Wrapper `App/pages/logistik.php` fehlt das. Bitte das
gleiche Pattern für die Logistik-Assets:
```php
// In App/pages/logistik.php nach $base = BASE_PATH . '/sims/logistik/';
$html = str_replace([
'href="../../assets/css/design-system.css"',
'href="../../assets/fonts/inter.css"',
'src="engine.js"',
'src="headless-runner.js"',
'href="../../assets/img/bildLogo.png"',
'src="../../assets/img/bildLogo.png"',
'src="../../assets/img/textlogo_geograsim.svg"',
'href="../../"',
'href="../../sim"',
], [
'href="' . BASE_PATH . '/assets/css/design-system.css"',
'href="' . BASE_PATH . '/assets/fonts/inter.css"',
'src="' . $base . 'engine.js"',
'src="' . $base . 'headless-runner.js"',
'href="' . BASE_PATH . '/assets/img/bildLogo.png"',
'src="' . BASE_PATH . '/assets/img/bildLogo.png"',
'src="' . BASE_PATH . '/assets/img/textlogo_geograsim.svg"',
'href="' . BASE_PATH . '/"',
'href="' . BASE_PATH . '/sim"',
], $html);
```
## Warum ich das nicht selbst mache
`App/pages/logistik.php` ist Wrapper-Logik = deine Domäne. Ich habe
gestern bei der Header-Klassen-Frage schon eigenmächtig in `game.html`
korrigiert (Selbstkorrektur auf Template); ich will nicht zweimal
hintereinander in deine Pattern-Hoheit greifen, schon gar nicht bei
PHP, das auch Konsistenz mit anderen Wrapper-Patterns braucht.
## Auswirkung
- **Direct-Aufruf** `App/sims/logistik/game.html` würde funktionieren
(relative Pfade greifen korrekt). Aber das ist nicht das primäre
Use-Pattern.
- **Wrapper-Aufruf** `App/logistik` ist der echte Aufruf-Weg. Hier
ist alles kaputt bis du das fixt.
- Test-Harness `App/sims/logistik/test.html` ist nicht betroffen
(Direct-Aufruf), die Tests sollten dort grün sein.
## Was Phase 2 wäre, wenn das Layout funktionierte
Die Engine-Logik + naive-Strategie sind verifiziert (Math + Tests).
Headless naive auf L1 schafft Akzeptanzkorridor. Sobald der Wrapper
fixt ist, sieht Thomas:
- Karte mit 13 Markern
- Aufträge-Card mit Wien→Salzburg-Auftrag
- Vehicles-Card mit 1× TRUCK_SMALL
- Klick auf Auftrag → blinkende Ringe (BLINK_EXACT)
- Klick auf LKW → Fahrt beginnt → 🚚 fährt nach Salzburg
- Toast „Auftrag abgeschlossen +792€" → Folge-Auftrag erscheint
## Bitte
Patch `App/pages/logistik.php` mit dem Heli-Pattern. Dauert ~2 Minuten.
Dann ist Phase 2 für Thomas durch-testbar.
— Logistik