- forge_client.py: schlanker HTTP-Client fuer Forge-Contents-API (get/update),
FORGE_BASE_URL + FORGE_SERVICE_TOKEN als Config
- db.log_repo_edit: schreibt Worklog-Eintrag in ticket_timeline
- app.py: /api/tickets/<id>/repo-file (laden), /tickets/<id>/repo-edit (speichern) --
schlaegt der Worklog-Eintrag fehl, wird trotz bereits erfolgtem Forge-Commit
KEIN Erfolg gemeldet (siehe project.yaml phase-008), Commit-Sha wird dennoch
fuer manuelle Nachbearbeitung geloggt
- Ticket-Detail-Panel (JS): neue Sektion zum Laden/Bearbeiten/Committen einer
Repo-Datei direkt aus dem Ticket
Bisher war _aes_live_status() geschrieben, aber nirgends im Service-Katalog
eingebunden (totes Code). Jetzt generisch als _service_live_status(endpoint)
fuer alle gebuchten Services mit Endpoint (nicht nur AES) und im Katalog als
Badge sichtbar: 'gebucht . erreichbar' / 'gebucht . nicht erreichbar' /
'gebucht' (kein Endpoint). Schliesst die Luecke aus Task #69.