feature/clearmealplan #1

Closed
kevin wants to merge 6 commits from feature/clearmealplan into feature/firstrelease
Owner

added clear meal plan logic and minor adjustetments regarding local API endpoints

added clear meal plan logic and minor adjustetments regarding local API endpoints
Signed-off-by: Kevin Mika <mika.kevin@nexus-6.eu>
Signed-off-by: Kevin Mika <mika.kevin@nexus-6.eu>
Signed-off-by: Kevin Mika <mika.kevin@nexus-6.eu>
kevin force-pushed feature/clearmealplan from a0f2ac67ab to e3ac60e6e1 2026-05-03 19:16:35 +00:00 Compare
Author
Owner

Von Claude:
Review: feature/clearmealplan #1
Was gut ist

URL-Migration auf HTTPS + Domain – sinnvoll, lokale IP war ohnehin nur für dein Netz.
api_key Dateiname – endlich befüllt statt leerem String, das war vorher ein stiller Bug.
API-Pfad-Fixes (meal-plan → objects/meal_plan) – sieht nach einer Korrektur gegen die tatsächliche Grocy API aus, macht Sinn.

⚠️ Kritische Punkte

  1. pull_latest_config() – self-updating Script ist ein Antipattern
    bashgit -C "$script_dir" pull --ff-only 2>&1 | tee -a "$LOG_FILE"
    Das Script aktualisiert sich selbst während es läuft. Wenn git pull neue Versionen von Funktionen holt die nach dem aktuellen Ausführungspunkt liegen, ist das okay – aber wenn z.B. main() oder bereits geladene Funktionen geändert wurden, führt Bash trotzdem den alten Code aus, der bereits im Speicher/geparst ist. Das ist nicht atomar und kann zu inkonsistentem Verhalten führen.
    Besser: Den Pull außerhalb des Scripts triggern (Cron-Job, Systemd-Unit davor, oder ein separates Wrapper-Script).
  2. Fehler im pull wird stillschweigend ignoriert
    bashif ! git -C "$script_dir" pull ...; then
    log_error "..." # <-- kein exit, kein die()
    fi
    Das Script läuft mit potenziell veralteter Config weiter. Je nach Kontext kann das okay sein – aber dann sollte das Verhalten dokumentiert/bewusst sein. Wenn du set -euo pipefail gesetzt hast aber hier explizit weitermachst, zumindest einen Kommentar rein warum.

🔍 Kleinigkeiten
3. Inkonsistenter API-Pfad zwischen den beiden Funktionen
bash# add_meal_plan:
api_post "objects/meal_plan" # korrekt

add_product_meal:

api_post "meal_plan" # fehlt das "objects/" Prefix
Das ist wahrscheinlich ein Versehen – add_product_meal wurde nicht vollständig migriert.
4. Diff-Artefakt: -2 Zeile
Im Diff taucht eine isolierte -2 auf vor main(). Sieht wie ein Merge-Artefakt oder ein versehentlich gelöschter Kommentar aus – prüfen ob das intentional ist.

Zusammenfassung
API-Pfad-Fixes mergenHTTPS/Domain mergenpull_latest_config⚠️ überdenkenadd_product_meal Pfad fixen vor merge-2 Artefakt klären

Von Claude: Review: feature/clearmealplan #1 ✅ Was gut ist URL-Migration auf HTTPS + Domain – sinnvoll, lokale IP war ohnehin nur für dein Netz. api_key Dateiname – endlich befüllt statt leerem String, das war vorher ein stiller Bug. API-Pfad-Fixes (meal-plan → objects/meal_plan) – sieht nach einer Korrektur gegen die tatsächliche Grocy API aus, macht Sinn. ⚠️ Kritische Punkte 1. pull_latest_config() – self-updating Script ist ein Antipattern bashgit -C "$script_dir" pull --ff-only 2>&1 | tee -a "$LOG_FILE" Das Script aktualisiert sich selbst während es läuft. Wenn git pull neue Versionen von Funktionen holt die nach dem aktuellen Ausführungspunkt liegen, ist das okay – aber wenn z.B. main() oder bereits geladene Funktionen geändert wurden, führt Bash trotzdem den alten Code aus, der bereits im Speicher/geparst ist. Das ist nicht atomar und kann zu inkonsistentem Verhalten führen. Besser: Den Pull außerhalb des Scripts triggern (Cron-Job, Systemd-Unit davor, oder ein separates Wrapper-Script). 2. Fehler im pull wird stillschweigend ignoriert bashif ! git -C "$script_dir" pull ...; then log_error "..." # <-- kein exit, kein die() fi Das Script läuft mit potenziell veralteter Config weiter. Je nach Kontext kann das okay sein – aber dann sollte das Verhalten dokumentiert/bewusst sein. Wenn du set -euo pipefail gesetzt hast aber hier explizit weitermachst, zumindest einen Kommentar rein warum. 🔍 Kleinigkeiten 3. Inkonsistenter API-Pfad zwischen den beiden Funktionen bash# add_meal_plan: api_post "objects/meal_plan" # ✅ korrekt # add_product_meal: api_post "meal_plan" # ❌ fehlt das "objects/" Prefix Das ist wahrscheinlich ein Versehen – add_product_meal wurde nicht vollständig migriert. 4. Diff-Artefakt: -2 Zeile Im Diff taucht eine isolierte -2 auf vor main(). Sieht wie ein Merge-Artefakt oder ein versehentlich gelöschter Kommentar aus – prüfen ob das intentional ist. Zusammenfassung API-Pfad-Fixes✅ mergenHTTPS/Domain✅ mergenpull_latest_config⚠️ überdenkenadd_product_meal Pfad❌ fixen vor merge-2 Artefakt❌ klären
Signed-off-by: kevin mika <mika.kevin@nexus-6.eu>
Signed-off-by: kevin mika <mika.kevin@nexus-6.eu>
Signed-off-by: kevin mika <mika.kevin@nexus-6.eu>
kevin closed this pull request 2026-05-03 20:00:07 +00:00
kevin deleted branch feature/clearmealplan 2026-05-03 20:00:21 +00:00

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
kevin/campsupplies!1
No description provided.