Zum Inhalt

Polycrate CLI 0.40.0

Release-Datum: 9. Mai 2026
Typ: Breaking Release

Highlights

0.40.0 ist ein signifikantes Release mit zwei Schwerpunkten: SDD-Workflow-Verbesserungen und Operator-Stabilitaet.

SDD Lifecycle Overhaul (breaking)

Der 5-Status-Lifecycle (planned → pending-approval → approved → pending-verification → implemented) wurde auf 3 Status komprimiert: draft → approved → done. Die zwei mittleren Gates, die den meisten Agent-Friction verursachten, entfallen. spec submit auto-approved jetzt standardmaessig — Agents muessen den User nicht mehr nach einer Self-Review um Freigabe bitten. Legacy-Status werden beim Laden automatisch gemappt und koennen mit spec index migrate dauerhaft migriert werden.

Direkte Spec-Body-Bearbeitung

Agents koennen Section-Bodies jetzt direkt mit Standard-File-Tools bearbeiten (StrReplace, Write). Zwei neue Kommandos — spec lint und spec format — erzwingen strukturelle Integritaet zur Ladezeit und beheben automatisch haeufige Drift (falsche Section-Reihenfolge, veraltete Section-Namen, doppelte Sections). Strikte Operationen (submit, Statuswechsel, Release) blockieren bei ungeloester Drift.

Operator-Stabilitaet

Alle updateStatus-Methoden der Reconciler und inline Status().Update-Aufrufe sind jetzt in retry.RetryOnConflict gewrappt, wodurch die "object has been modified"-Fehler bei parallelen Status-Updates entfallen. Die Patch- und Delete-Methoden des Operator-API-Clients liefern jetzt strukturierte *HTTPError-Werte, was korrekte Self-Healing-Logik in apisync ermoeglicht (PATCH 404 → stale CR loeschen fuer Re-Discovery).

API Schema Sync

Der Go-Client wurde aus dem aktualisierten polycrate-api-Schema neu generiert (drf-standardized-errors). Alle umbenannten Enum-Typen wurden in den Operator-Controllern angepasst.

Artefakte

Docker Images

docker pull cargo.ayedo.cloud/library/polycrate:0.40.0

CLI Downloads

Plattform Architektur Download
Linux amd64 Download
Linux arm64 Download
macOS amd64 Download
macOS arm64 (Apple Silicon) Download

Installation & Update

polycrate update 0.40.0

Installationsanleitung

Aenderungen

Breaking: SDD Lifecycle auf 3 Status komprimiert (Spec 184)

Der bisherige 5-Status-Lifecycle wurde auf drei Status reduziert:

Alt Neu
planned / pending-approval draft
approved approved
pending-verification / implemented done

Legacy-Status werden beim Laden automatisch gemappt. Bestehende Spec-Dateien koennen mit polycrate spec index migrate dauerhaft auf die neuen Status migriert werden.

Breaking: spec submit auto-approved standardmaessig (Spec 184)

polycrate spec submit <id> setzt den Status jetzt automatisch auf approved (frueheres Verhalten: nur submitted: true setzen, Freigabe manuell). Um das alte Verhalten beizubehalten:

polycrate spec submit <id> --no-auto-approve

Feat: spec lint — struktureller Validator (Spec 185)

Neues Kommando polycrate spec lint <id> prueft Spec-Dateien auf Strukturfehler (falsche Section-Reihenfolge, veraltete Section-Namen, doppelte Sections) ohne Schreibzugriff. Gibt Exit-Code 1 bei Drift zurueck. Wird automatisch in spec submit, spec update --set status und release create/finalize ausgefuehrt.

polycrate spec lint 184 -w .

Feat: spec format — idempotenter Struktur-Normalisierer (Spec 185)

Neues Kommando polycrate spec format <id> behebt automatisch Strukturfehler (falsche Reihenfolge, veraltete Section-Namen, fehlende Sections). Bewahrt den Inhalt der Section-Bodies. Idempotent.

polycrate spec format 184 -w .

Feat: Direkte Markdown-Bearbeitung von Section-Bodies (Spec 185)

Agents koennen Section-Bodies (Text zwischen zwei ##-Ueberschriften) jetzt direkt mit Standard-File-Tools bearbeiten. spec lint und spec format sichern die strukturelle Integritaet.

Feat: spec review kompaktiert, Anti-Hand-Wave-Anker (Spec 189)

Der Review-Output wurde von ~50 auf ~18 Zeilen reduziert (8-Dimensionen-Tabelle). Findings muessen jetzt einen Codebase-Anker (@path/to/file.ext:LINE) und eine Severity (minor|major|blocker) enthalten. Hand-Wave-Reviews ("alles OK") werden abgelehnt.

Feat: spec review --submit Chaining

polycrate spec review <id> --submit fuehrt Review und spec submit in einem Schritt aus.

Feat: reviewed_at Frontmatter-Timestamp

spec review setzt jetzt einen reviewed_at-Timestamp im Frontmatter. spec submit warnt, wenn die Spec nach dem letzten Review modifiziert wurde.

Fix: Operator API-Client Patch/Delete geben strukturierte *HTTPError zurueck (Spec 186)

Die Patch- und Delete-Methoden des Operator-API-Clients liefern jetzt strukturierte *HTTPError-Werte statt fmt.Errorf-Strings. Ermoeglicht korrektes Branching in apisync:

  • PATCH 404 → stale CR loeschen fuer Re-Discovery
  • Korrekte Nutzung von api.IsHTTPNotFound / api.IsHTTPConflict

Fix: RetryOnConflict fuer Operator Status-Updates (Spec 188)

Alle updateStatus-Methoden der Reconciler und inline Status().Update-Aufrufe sind jetzt in retry.RetryOnConflict gewrappt. Eliminiert "object has been modified"-Fehler bei parallelen Status-Updates unter Last.

Chore: API-Client nach Schema-Update regeneriert

Der Go-Client wurde aus dem aktualisierten polycrate-api-Schema neu generiert (drf-standardized-errors, Spec 286). Alle umbenannten Enum-Typen wurden in den Operator-Controllern angepasst.

polycrate-operator Block

Der polycrate-operator Block wurde auf Version 0.7.0 aktualisiert (app_version: 0.40.0):

polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-operator
polycrate run polycrate-operator deploy

Migration

SDD-Lifecycle-Migration

Bestehende Spec-Dateien mit Legacy-Status koennen dauerhaft migriert werden:

polycrate spec index migrate -w .

Der Befehl mappt alle veralteten Status auf die neuen Werte und schreibt die Frontmatter-Dateien direkt um.

Jetzt aktualisieren

polycrate update 0.40.0

Oder laden Sie die Binaries direkt vom PolyHub herunter.