Problem:web/portal/config/modules.json enthaelt fuer jede Modul-Kachel einen hartkodierten href wie http://localhost:3107. Beim Aufruf des Portals von einem anderen Host im LAN zeigt ein Klick auf eine Kachel auf localhost beim aufrufenden Client, nicht auf den Portal-Host — unerreichbar. Live im Portal gefunden.
Fix:web/portal/app/ModuleGrid.tsx: neue Funktion resolveModuleHref(href, currentHostname) ersetzt url.hostname nur wenn er localhost ist UND der aktuelle Hostname (aus window.location.hostname) davon abweicht. Kein Eingriff in modules.json-Format oder Backend-API.
Pruefungen:
npx vitest run ModuleGrid.test.tsx: 5/5 PASS
npx tsc --noEmit: keine Fehler in ModuleGrid.tsx/.test.tsx
**Problem:** `web/portal/config/modules.json` enthaelt fuer jede Modul-Kachel einen hartkodierten `href` wie `http://localhost:3107`. Beim Aufruf des Portals von einem anderen Host im LAN zeigt ein Klick auf eine Kachel auf `localhost` beim aufrufenden Client, nicht auf den Portal-Host — unerreichbar. Live im Portal gefunden.
**Fix:** `web/portal/app/ModuleGrid.tsx`: neue Funktion `resolveModuleHref(href, currentHostname)` ersetzt `url.hostname` nur wenn er `localhost` ist UND der aktuelle Hostname (aus `window.location.hostname`) davon abweicht. Kein Eingriff in `modules.json`-Format oder Backend-API.
**Pruefungen:**
- `npx vitest run ModuleGrid.test.tsx`: 5/5 PASS
- `npx tsc --noEmit`: keine Fehler in ModuleGrid.tsx/.test.tsx
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Problem:
web/portal/config/modules.jsonenthaelt fuer jede Modul-Kachel einen hartkodiertenhrefwiehttp://localhost:3107. Beim Aufruf des Portals von einem anderen Host im LAN zeigt ein Klick auf eine Kachel auflocalhostbeim aufrufenden Client, nicht auf den Portal-Host — unerreichbar. Live im Portal gefunden.Fix:
web/portal/app/ModuleGrid.tsx: neue FunktionresolveModuleHref(href, currentHostname)ersetzturl.hostnamenur wenn erlocalhostist UND der aktuelle Hostname (auswindow.location.hostname) davon abweicht. Kein Eingriff inmodules.json-Format oder Backend-API.Pruefungen:
npx vitest run ModuleGrid.test.tsx: 5/5 PASSnpx tsc --noEmit: keine Fehler in ModuleGrid.tsx/.test.tsx🤖 Generated with Claude Code