Skip to content

fix(deploy): AI ignoreCommand builds on git errors instead of failing (#119) - #120

Open
Fluory wants to merge 1 commit into
mainfrom
claude/fix-ai-ignore-command-119
Open

Fluory wants to merge 1 commit into
mainfrom
claude/fix-ai-ignore-command-119

Conversation

@Fluory

@Fluory Fluory commented Oct 11, 2026 •

Copy link
Copy Markdown
Owner

Warum

Fixes #119 · Folgefehler aus #102: Seit dem Merge endet jedes main-Deployment von requestflow-ai nach 2–3 s als Error (fatal: bad object 9dae5de… – der zuletzt deployte Commit fehlt im flachen Klon, git diff endet mit 128, Vercel wertet alles außer 0/1 als Fehler).

Arbeitsstand

  • Ziel: Der Ignored Build Step überspringt nur bei Exit 0 (keine Änderung unter services/ai/); jeder git-Fehler führt zum Build statt zum Fehlschlag.
  • Nicht-Ziele: tieferes Klonen, Wechsel der Vergleichsbasis.
  • Erledigt: ignoreCommand mit 2>/dev/null || exit 1, Runbook §3 Schritt 6 korrigiert, CHANGELOG.
  • Offen: Freigabe durch den Orchestrator (Infra-Regel), danach Merge; Nachweis am ersten main-Deployment danach.
  • Annahmen: Vercel führt den Befehl in einer POSIX-Shell aus (wie bisher mit ${…:-…}).
  • Nächster kleinster Schritt: Freigabe.

Was ist passiert (Klartext)

Die Regel aus #102 sollte den KI-Dienst nur bauen, wenn sich an ihm etwas geändert hat. Vercel lädt aber nur die letzten Commits herunter. Der Vergleichs-Commit von vor zwei Wochen war nicht dabei, git meldete einen Fehler, und Vercel hat das Deployment deshalb abgebrochen statt zu bauen. Der Showcase lief weiter auf dem alten, funktionierenden Stand – aber eine echte Änderung am KI-Dienst wäre nicht live gegangen. Jetzt gilt: Im Zweifel wird gebaut.

Plan-Pflicht (SYSTEM.md §4)

  • Kein Auslöser – keine Modulgrenze, öffentliche API, Migration, Auth/Rechte, kein Zahlungs-/Daten-/Infrapfad, höchstens zwei Module, keine Architekturvarianten, umkehrbar
  • Auslöser zutreffend – Impact Manifest ausgefüllt (Plan vor Code)

Hinweis: Deploy-Konfiguration (Infra-Regel: menschliche Freigabe), aber kein neuer Infrapfad und per Revert umkehrbar.

Geändert

Nachweis (SYSTEM.md §11)

  • Build-Log requestflow-pxlmoe047 (2026-10-10): fatal: bad object 9dae5de7d4cdeba01447e0be9323e762640bf491 → Status Error
  • Lokal in einem Test-Repo mit sh -c nachgestellt: Änderung seit HEAD^ → Exit 1 (Build); fehlender Commit 9dae5de… → Exit 1 (Build); leere Variable → HEAD^ → Exit 1; Vergleich mit HEAD (keine Änderung) → Exit 0 (Skip)
  • verify:changed: JSON gültig (Python json.loads)
  • verify: grün – CI check Run 38183882860 am PR-Kopf aa1e54d (Doku + JSON, keine Code-Änderung)
  • verify:full / E2E-Spec: nicht betroffen
  • Manueller Prüfnachweis: nach dem Merge – das main-Deployment von requestflow-ai baut (Fehlerfall → Exit 1) und endet als Ready statt Error

Doku-Entscheidung (genau eine)

Entferntes oder Umbenanntes: docs/ gegrept nach „git cannot compare“ – einziger Treffer ersetzt

Dateigrößen und neue Bausteine (SYSTEM.md §7)

Dateien über 500 Zeilen im Diff (Ausnahmen: generierter Code, Lockfiles, Fixtures, Migrationen, Schemas, Ressourcen, Doku, Konfiguration):

  • keine
  • bewusst belassen – Begründung: –
  • im selben PR nach fachlicher Verantwortung geteilt
  • Folge-Issue –

Über 800 Zeilen mit neuer Fachlogik oder über 1000 Zeilen (P1/P2): nicht betroffen

Neue Shared-Komponente, Utility-Datei, Adapter oder fachlicher Service:

  • nein
  • ja – gesucht nach: –

Subagent-Einsätze

  • keine

Risiken / offene Punkte

  • Das erste main-Deployment nach dem Merge baut auf jeden Fall (Vergleichs-Commit fehlt) und legt ein neues Image ab (Registry jetzt 2/…, Platz vorhanden). Danach ist der Vergleichs-Commit aktuell und Skips greifen wieder.

🤖 Generated with Claude Code

…#119)

Vercel fails a deployment on any exit code other than 0/1. In the shallow
clone the last deployed commit is missing, git diff exits 128 and every
main deployment of requestflow-ai ended as Error. Map errors to exit 1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@Fluory
Fluory marked this pull request as ready for review October 15, 2026 07:38

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(deploy): AI ignoreCommand errors instead of building when the previous SHA is missing

1 participant