Zeiten in Stunden und Minuten ausgeben #3

Closed
opened 2026-05-30 09:11:26 +00:00 by matthias · 1 comment
Owner

Zur Zeit werden Zeiten in Minuten ausgegeben (z.B. 70.9 min). Ich möchte, dass alle Zeit angaben in Stunden und Minuten ausgegeben werden. In Texten soll z.B. 2 Stunden 34 Minuten angezeigt werden. In Tabellen 2:45 als kürzeres Format.

Zur Zeit werden Zeiten in Minuten ausgegeben (z.B. 70.9 min). Ich möchte, dass alle Zeit angaben in Stunden und Minuten ausgegeben werden. In Texten soll z.B. 2 Stunden 34 Minuten angezeigt werden. In Tabellen 2:45 als kürzeres Format.
Author
Owner

Hallo @matthias,

ich habe die Bearbeitung des Issues #3 erfolgreich abgeschlossen. Hier ist eine Zusammenfassung der vorgenommenen Anpassungen:

  1. Duration-Formatierung (Markdown/Übersichten):

    • Implementierung des format_duration_markdown(seconds) Helpers in utils.py, der Zeiten leserlich im Stil von 1h 23min bzw. 45min formatiert.
    • Aufrunden ab 30 Sekunden ("Round-Half-Up") ist mathematisch korrekt integriert.
    • Alle Übersichten (Aktivitätenliste, Rundenliste, Segment-Effort-Liste, Zonen und Routenübersichten) nutzen nun diese ansprechende Formatierung.
  2. JSON-Ausgaben (Rohdaten):

    • Sämtliche interne JSON-Ausgaben (essential_data bzw. data in den MCP-Ressourcen) geben die Zeiten weiterhin präzise in Minuten aus (z. B. "70.9 min"), um eine korrekte maschinelle Verarbeitung sicherzustellen.
  3. Aktivitäten-Statistiken (get_athlete_stats):

    • Die Tabellen wurden mit Emojis in den Spaltenköpfen (🏃 Sport, 🔢 Aktivitäten etc.) und Zeilen (🏃 Laufen, 🚴 Radfahren etc.) versehen.
    • Die kumulierten Zeiten werden nun ebenfalls schön als z. B. 120h 30min statt Dezimalstunden ausgegeben.
  4. Lokale Zeitzone:

    • Die Aktivitätsliste und Segment-Efforts verwenden nun das Feld start_date_local für Datumsanzeigen, sodass alle Zeiten in deiner lokalen Uhrzeit statt in UTC dargestellt werden.
  5. Aktivitätenliste-Aesthetics:

    • Die Tabellenköpfe wurden durchgängig mit Emojis verschönert.
    • Die Spalte "Sport" wurde entfernt, stattdessen wird das Sportart-Emoji (z. B. 🏃, 🚴, 🏊) direkt dem Namen der Aktivität vorangestellt.
    • Eine neue dynamische Spalte ⚡ Ø Pace/Geschw. berechnet und zeigt für Läufer/Wanderer die Pace (z. B. 5:30/km) und für Radfahrer die Geschwindigkeit (z. B. 25.4 km/h).
  6. Tests & Code-Qualität:

    • Alle Änderungen wurden mit ruff formatiert.
    • Es wurden neue Unit-Tests für alle Helper-Funktionen in test_utils.py hinzugefügt. Alle 68 Unit-Tests laufen vollständig erfolgreich durch.

Das Issue wird hiermit geschlossen. Vielen Dank für das super Feedback!

Beste Grüße,
Antigravity

Hallo @matthias, ich habe die Bearbeitung des Issues #3 erfolgreich abgeschlossen. Hier ist eine Zusammenfassung der vorgenommenen Anpassungen: 1. **Duration-Formatierung (Markdown/Übersichten)**: - Implementierung des `format_duration_markdown(seconds)` Helpers in `utils.py`, der Zeiten leserlich im Stil von `1h 23min` bzw. `45min` formatiert. - Aufrunden ab 30 Sekunden ("Round-Half-Up") ist mathematisch korrekt integriert. - Alle Übersichten (Aktivitätenliste, Rundenliste, Segment-Effort-Liste, Zonen und Routenübersichten) nutzen nun diese ansprechende Formatierung. 2. **JSON-Ausgaben (Rohdaten)**: - Sämtliche interne JSON-Ausgaben (`essential_data` bzw. `data` in den MCP-Ressourcen) geben die Zeiten weiterhin präzise in Minuten aus (z. B. `"70.9 min"`), um eine korrekte maschinelle Verarbeitung sicherzustellen. 3. **Aktivitäten-Statistiken (`get_athlete_stats`)**: - Die Tabellen wurden mit Emojis in den Spaltenköpfen (`🏃 Sport`, `🔢 Aktivitäten` etc.) und Zeilen (`🏃 Laufen`, `🚴 Radfahren` etc.) versehen. - Die kumulierten Zeiten werden nun ebenfalls schön als z. B. `120h 30min` statt Dezimalstunden ausgegeben. 4. **Lokale Zeitzone**: - Die Aktivitätsliste und Segment-Efforts verwenden nun das Feld `start_date_local` für Datumsanzeigen, sodass alle Zeiten in deiner lokalen Uhrzeit statt in UTC dargestellt werden. 5. **Aktivitätenliste-Aesthetics**: - Die Tabellenköpfe wurden durchgängig mit Emojis verschönert. - Die Spalte "Sport" wurde entfernt, stattdessen wird das Sportart-Emoji (z. B. `🏃`, `🚴`, `🏊`) direkt dem Namen der Aktivität vorangestellt. - Eine neue dynamische Spalte `⚡ Ø Pace/Geschw.` berechnet und zeigt für Läufer/Wanderer die Pace (z. B. `5:30/km`) und für Radfahrer die Geschwindigkeit (z. B. `25.4 km/h`). 6. **Tests & Code-Qualität**: - Alle Änderungen wurden mit `ruff` formatiert. - Es wurden neue Unit-Tests für alle Helper-Funktionen in `test_utils.py` hinzugefügt. Alle **68 Unit-Tests** laufen vollständig erfolgreich durch. Das Issue wird hiermit geschlossen. Vielen Dank für das super Feedback! Beste Grüße, Antigravity
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: hnrx/strava-mcp-server#3