Jan 19, 2026 — App Platform v4.13.0

This release focuses on significant improvements to the deployment process, removal of deprecated components, and enhanced stability. Key highlights include the replacement of the install job with apl-operator, removal of several deprecated monitoring and maintenance tools, and numerous fixes to improve upgrade reliability and ArgoCD operations.

📘

For a full list of changes, review the release notes on GitHub: Release v4.13.0.

New

  • Installation now relies on a reconciliation loop of the apl-operator to improve overall robustness. Previously, the Kubernetes job was responsible for the initial installation.
  • ArgoCD Application sources are leveraged to fetch Helm chart values from two files that are stored in the values repository.
  • Added endpointslice availability check for oauth2proxy to improve Kubernetes compatibility
  • CoreDNS is now used for LKE Enterprise clusters to improve DNS resolution
  • Platform database connection pooling settings are now user configurable.

Changed

Fixed

  • Minor improvements to runtime upgrades
  • Resolved Helm issue that was blocking the installation retry mechanism
  • Fixed Kubeflow Pipelines (KFP) workflow image references
  • Corrected service names in OpenTelemetry CRDs
  • Force apply essential manifests on upgrade to prevent deployment failures
  • Fixed installation failures when initializing local charts repository by adding retry logic
  • Fixed string quoting in Loki config to avoid unintended type conversion
  • Addressed PostgreSQL image upgrade considerations for 4.12 release compatibility
  • Fixed bash launch on TTY startup and embedded all required changes in TTY image
  • Fixed failing jwt verification
  • Fixed missing status field for APL resources
  • Fixed config for express rate limit
  • Fixed values editor required secret fields
  • Fixed team privilege escalation through API
  • Fixed improper ACL on team metadata

Deprecated

  • Deprecated the Tempo app.
  • Removed the Falco, HTTPbin, Jaeger, Kiali, Kured, and Velero apps.

Core application changes

App nameOld versionNew versionNotes
Alertmanager0.27.00.29.0Updated
Argo CD3.1.83.2.0Updated
Cert-manager1.19.01.19.1Updated
CloudNative PostgreSQL Operator1.27.01.27.1Updated
Falco0.36.2-Removed
Gitea1.24.51.24.7Updated
Grafana12.0.212.2.1Updated
Harbor2.13.22.14.0Updated
HTTPbin0.1.0Removed
Ingress-NGINX1.13.31.14.0Updated
Istio1.26.31.27.3Updated
Jaeger1.46.0Removed
Keycloak26.3.326.4.2Updated
Kiali2.10.0Removed
Kserve0.15.20.16.0Updated
Kyverno1.15.11.15.2Updated
Kured1.13.1Removed
Loki2.9.102.9.15Updated
Prometheus3.4.23.7.3Updated
Sealed Secrets0.32.20.33.1Updated
Tempo2.6.0Deprecated
Trivy Operator0.28.00.29.0Updated
Open Telemetry Operator0.80.00.138.0Updated
Velero1.9.0Removed
Policy Reporter3.4.23.5.0Updated

Post-upgrade actions

After upgrading to v4.13.0, you may need to perform a few additional steps depending on the features and apps that are used on your App Platform deployment.

Change repository when using Auto Image Updater for a workload

Users that are leveraging a workload’s Auto Image Updater feature may need to transfer a file between Gitea repositories. For each workload, move and rename the original file below from the otomi/charts Gitea repository to a new file in the otomi/values Gitea repository.

  • Old file (in otomi/charts): <chartName>/.argocd-source-<teamId>-<workloadName>.yaml
  • New file (in otomi/values ): env/teams/<teamId>/workloadValues/<workloadName>.managed.yaml

Clean up resources for apps that have been removed

A few deprecated apps have been removed in this release and are no longer supported. App Platform doesn’t automatically clean up all resources for these apps as some users may continue using them until they are able to transition to other apps. If you do wish to remove these apps and their associated resources, use the commands below.

Falco

  • kubectl delete application falco-falco -n argocd
  • kubectl delete application falco-falco-exporter -n argocd
  • kubectl delete namespace falco

HTTPbin

  • kubectl delete namespace httpbin

Jaeger

  • kubectl delete application jaeger-operator-jaeger-operator -n argocd
  • kubectl delete namespace jaeger
  • kubectl delete namespace jaeger-operator
  • kubectl get crd | grep -i jaeger (finds all jaeger crds)
  • kubectl delete crd jaegers.jaegertracing.io

Kiali

  • kubectl delete application kiali-operator-kiali-operator -n argocd
  • kubectl delete application kiali-kiali-operator-artifacts -n argocd
  • kubectl delete namespace kiali
  • kubectl delete namespace kiali-operator
  • kubectl get crd | grep -i kiali (finds all Kiali crds)
  • kubectl delete crd kialis.kiali.io

Kured\

🚧

Be careful when removing resources for kured as some live in the kube-system namespace. To prevent unintended deletions, delete resources in that namespace by label.

  • kubectl delete application kube-system-kured -n argocd
  • kubectl delete all -n kube-system -l app.kubernetes.io/name=kured

Velero

  • kubectl delete namespace velero