Zum Inhalt

Polycrate API 0.14.10

Release-Datum: 12. März 2026
Typ: Feature-Patch

Highlights

  • Personal Note – Full-Page Monaco Editor als persönlicher Scratch-Pad mit Auto-Save (1500ms Debounce + Ctrl+S) und "Create Note from Selection" im Kontextmenü
  • SLO/SLA im Info DrawerTable – SLO/SLA-Felder in der Info-Drawer für alle ManagedObjects (Endpoint, Host, etc.) mit System-Default-Badge bei nicht gesetzten Werten
  • S3Bucket-Erstellung blocking – API und UI warten auf Provider-seitige Erstellung bevor sie zurückkehren
  • Modal View Cleanup – Veraltete Modal-Views entfernt, Full-Page Create/Edit konsolidiert

Artefakte

Docker Image

docker pull cargo.ayedo.cloud/polycrate/polycrate-api:0.14.10

Block

polycrate pull cargo.ayedo.cloud/ayedo/k8s/polycrate-api
polycrate run polycrate-api install

Features

Personal Note

Jeder User hat einen persönlichen Scratch-Pad im vollen Monaco Editor unter /ui/accounts/personal-note/.

  • Auto-Save via 1500ms Debounce nach letzter Änderung (PATCH /api/v1/personal-notes/mine/)
  • Ctrl+S / Cmd+S – sofortiges Speichern
  • Create Note from Selection – Rechtsklick auf markierten Text öffnet ein Popover zum Anlegen einer Polycrate Note (Kind, Organization, Workspace wählbar)
  • Topbar-Button – direkter Zugriff über das Stift-Icon in der globalen Navigation
  • Markdown – Editor-Sprache markdown mit Syntax-Highlighting

Technische Details: Das Feature nutzt den generierten JS API Client (Polycrate.initApiClient()) für alle API-Calls. Alpine.js-Kompatibilität erfordert, dass Monaco-Instanz und API-Client als Closure-Variablen (nicht im Alpine-Proxy) gehalten werden — andernfalls provoziert der Alpine Proxy-Wrapper einen CPU-intensiven Feedback-Loop.

Migration: Neue PersonalNote-Tabelle → make migrate erforderlich.

SLO/SLA Felder im Info DrawerTable

Die Info-Drawer aller ManagedObjects (Endpoint, Host, S3Bucket, etc.) zeigt jetzt die SLO/SLA-Felder:

  • slo_target / slo_window_days
  • sla_target / sla_window_days

Wenn für das Objekt kein Wert gesetzt ist, wird der System-Default aus SystemConfig als Badge angezeigt (z.B. 99.9% [System-Default]).

S3Bucket-Erstellung blocking

Die S3Bucket-Erstellung (API + UI) wartet jetzt auf die Provider-seitige Erstellung bevor sie antwortet. Konsistent mit dem Architektur-Prinzip für alle Provider-Backed Objects (per .specs/0.14.10/provider-backed-creation-consistency.md).

Fixes

K8sCluster On-Premise: KUBECONFIG_API_SERVER_UNREACHABLE

Die Condition KUBECONFIG_API_SERVER_UNREACHABLE wird nicht mehr für On-Premise Cluster (on_premise=True) gesetzt. On-Premise Cluster sind per Design nicht über das öffentliche Netz erreichbar.

Außerdem wird der Endpoint-Reconciliation-Step für On-Premise Cluster übersprungen.

SLO/SLA Breach Conditions aus WARNING_CONDITIONS

SLO_BREACH und SLA_BREACH wurden aus WARNING_CONDITIONS entfernt. Die Breach-Conditions lösen eigenständig Notifications aus — eine doppelte Aufnahme in WARNING_CONDITIONS führte zu redundantem Alerting.

S3 Bucket Policy Cross-Access

Analyse und Fixes für org-übergreifende S3 Bucket Policy-Zugriffe. Bucket Policies werden jetzt korrekt auf Org-Grenzen beschränkt.

Endpoint Form: Monaco Widget JSON-Fix

Das Monaco-Widget im Endpoint-Formular erzeugte bei bestimmten JSON-Inhalten einen Parse-Fehler. Fix: Korrekte Initialisierung des Monaco-Widgets für JSON-Content-Type.

Zusätzlich: Status-Code-Labels im Endpoint-Detail werden jetzt korrekt dargestellt.

Chore

Veraltete Modal-Views (Create/Edit als Modal-Overlay) wurden entfernt und durch Full-Page Create/Edit ersetzt. Betroffen: Endpoints, Blocks, Workspaces, Organizations, S3-Clusters, PoP-Provider und weitere.

Konsistente UX: Create/Edit immer als Full-Page, nie als Modal.

Detail Bottombar deaktiviert

Die Bottombar in Detail-UIs wurde deaktiviert — sie hatte seit 0.14.x keinen aktiven Content mehr.

Migration

make migrate

Neue Migration: users App – PersonalNote-Tabelle (Personal Note Feature).

Alle anderen Änderungen erfordern keine Datenbank-Migration. Direktes Update von 0.14.9.