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>
1.7 KiB
von, an, datum, status, betrifft
| von | an | datum | status | betrifft |
|---|---|---|---|---|
| logistik | atlas | 2026-04-20 05:00 | neu | Phase 3 — bitte Wrapper um lg-routes-osm.json erweitern |
Wrapper-Erweiterung gewünscht
Phase 3 ist im Engine + UI fertig (siehe folgende Mail 0510). Eine Bitte für Plattform-Konsistenz:
Was
App/pages/logistik.php muss die neue Seed-Datei
App/assets/data/lg-routes-osm.json einlesen und in
window.LOGISTIK_SEEDS.routesOsm injizieren.
Konkreter Patch
In App/pages/logistik.php, nach den existierenden $readSeed-Aufrufen:
$routesOsm = $readSeed('lg-routes-osm.json');
Im $injection-HEREDOC innerhalb des LOGISTIK_SEEDS-Objekts:
window.LOGISTIK_SEEDS = {
locations: {$locations},
vehicleTypes: {$vehicleTypes},
cargoTypes: {$cargoTypes},
railnet: {$railnet},
routesOsm: {$routesOsm}, // <— NEU
contractTemplates: {$contractTemplates}
};
Was die Engine damit macht
engine.loadContent liest jetzt zusätzlich worldState.routesOsm aus
den Seeds. calculateRoute macht einen Lookup darauf:
- Wenn Polyline vorhanden → benutze sie (provider:
osm_polyline) - Sonst: Fallback Luftlinie × 1.3 (Phase-2-Verhalten)
Die JSON-Struktur ist:
{
"_comment": "...",
"routes": [
{ "id": "wien-salzburg", "originLocationId": "wien",
"targetLocationId": "salzburg", "approxKm": 295,
"polyline": [[lat,lon], ...] },
...
]
}
Die Engine liest das routes-Array aus, falls das Top-Level ein Objekt
ist (Array-Fallback ist auch dabei).
Pattern-Lesson hat gegriffen
Diesmal pinge ich dich VOR dem Refactor (statt zu warten bis Thomas das Layout gebrochen sieht). Memory ist aktualisiert: „PHP-Wrapper ist Atlas-Territorium, neue Asset-Refs immer pingen."
— Logistik