> ## Documentation Index
> Fetch the complete documentation index at: https://allhandsai-docs-observability-span-signals.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Release Notes

> Release notes for OpenHands Enterprise

## 0.28.0

This release adds the embedded **Agent Canvas** (mounted under `{your-openhands-instance.example.com}/canvas`), which will coexist with the current OpenHands Enterprise conversation interface for the time being. A future release will announce the deprecation date for the existing interface, after which Agent Canvas will become the default UI; in the meantime, teams can begin experimenting with the new Agent Canvas experience and share feedback with the OpenHands product teams.

Additionally, this release brings better Helm chart validation and more configuration options to make installs easier to configure and validate. The rest of the release is focused on stability and maintenance fixes.

### Enterprise Server

#### Bug Fixes

* fix: retry idempotent runtime-api reads once on timeout by @ak684 in [https://github.com/OpenHands/OpenHands/pull/15266](https://github.com/OpenHands/OpenHands/pull/15266)
* fix(agent-profiles): honor profile settings in cloud launches by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/15228](https://github.com/OpenHands/OpenHands/pull/15228)
* fix: Fix CVE-2026-53571: Update vite to 8.0.16, 7.3.5, 6.4.3 by @mamoodi in [https://github.com/OpenHands/OpenHands/pull/14982](https://github.com/OpenHands/OpenHands/pull/14982)
* fix: restore automations login redirects by @malhotra5 in [https://github.com/OpenHands/OpenHands/pull/15295](https://github.com/OpenHands/OpenHands/pull/15295)
* fix: Avoid logout on transient provider get\_user errors by @malhotra5 in [https://github.com/OpenHands/OpenHands/pull/15305](https://github.com/OpenHands/OpenHands/pull/15305)
* fix: treat Integrations Hub as a cross-app route by @malhotra5 in [https://github.com/OpenHands/OpenHands/pull/15324](https://github.com/OpenHands/OpenHands/pull/15324)
* fix: add managed LLM key refresh endpoint by @neubig in [https://github.com/OpenHands/OpenHands/pull/15023](https://github.com/OpenHands/OpenHands/pull/15023)
* fix(app-server): restore previous DB pool\_size default by @dylan-openhands in [https://github.com/OpenHands/OpenHands/pull/15333](https://github.com/OpenHands/OpenHands/pull/15333)
* fix: Debounce last\_used\_at writes in ApiKeyStore.validate\_api\_key by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15331](https://github.com/OpenHands/OpenHands/pull/15331)
* fix(jira): allow conversations without repositories by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15328](https://github.com/OpenHands/OpenHands/pull/15328)

***

### Runtime API

#### Bug Fixes

* fix: recycle pooled DB connections and bound pg8000 socket reads by @ak684 in [https://github.com/OpenHands/runtime-api/pull/640](https://github.com/OpenHands/runtime-api/pull/640)
* fix(cleanup): paginate deployment listing to stop OOM in cleanup job by @rbren in [https://github.com/OpenHands/runtime-api/pull/642](https://github.com/OpenHands/runtime-api/pull/642)
* fix(cleanup): hold archive concurrency slot until worker finishes (#643) by @aivong-openhands in [https://github.com/OpenHands/runtime-api/pull/644](https://github.com/OpenHands/runtime-api/pull/644)

#### Maintenance

* perf(cleanup): batch PVC snapshot waits instead of blocking serially by @jlav in [https://github.com/OpenHands/runtime-api/pull/648](https://github.com/OpenHands/runtime-api/pull/648)
* build(deps): bump python-multipart from 0.0.27 to 0.0.31 by @dependabot\[bot] in [https://github.com/OpenHands/runtime-api/pull/652](https://github.com/OpenHands/runtime-api/pull/652)
* build(deps): bump cryptography from 46.0.7 to 48.0.1 by @dependabot\[bot] in [https://github.com/OpenHands/runtime-api/pull/651](https://github.com/OpenHands/runtime-api/pull/651)

***

### OpenHands Cloud (Helm Chart)

#### Features

* feat(openhands): PLTF-3256 add values.schema.json for chart values validation by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/920](https://github.com/OpenHands/OpenHands-Cloud/pull/920)
* feat(openhands): PLTF-3257 add NOTES.txt post-install output to the openhands chart by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/922](https://github.com/OpenHands/OpenHands-Cloud/pull/922)
* feat: mount Agent Canvas under /canvas by @malhotra5 in [https://github.com/OpenHands/OpenHands-Cloud/pull/900](https://github.com/OpenHands/OpenHands-Cloud/pull/900)
* feat: Added environment variable for RUNTIME\_API\_BASE\_URL by @tofarr in [https://github.com/OpenHands/OpenHands-Cloud/pull/926](https://github.com/OpenHands/OpenHands-Cloud/pull/926)
* feat(openhands): PLTF-3258 add fail guard for ingress.enabled without ingress.host by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/923](https://github.com/OpenHands/OpenHands-Cloud/pull/923)
* feat: route Integrations Hub on the primary OpenHands host by @neubig in [https://github.com/OpenHands/OpenHands-Cloud/pull/899](https://github.com/OpenHands/OpenHands-Cloud/pull/899)
* feat: expose sandbox ephemeral-storage as a configurable field by @ak684 in [https://github.com/OpenHands/OpenHands-Cloud/pull/930](https://github.com/OpenHands/OpenHands-Cloud/pull/930)

#### Bug Fixes

* fix(release): make lint pass --app \[PLTF-3195] by @dylan-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/898](https://github.com/OpenHands/OpenHands-Cloud/pull/898)
* fix: preserve Integrations Hub API auth responses by @neubig in [https://github.com/OpenHands/OpenHands-Cloud/pull/933](https://github.com/OpenHands/OpenHands-Cloud/pull/933)

#### Maintenance

* chore(postgres): remove obsolete emptyDir-to-PVC migration by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/919](https://github.com/OpenHands/OpenHands-Cloud/pull/919)

## 0.24.0

This release introduces a **Usage & Monitoring** dashboard, giving organization administrators visibility into AI spend and adoption across the organization. This dashboard provides high-level reports showing conversation counts, active sessions, and cost-per-conversation metrics, along with detailed conversation, user, and model-level breakdowns to help teams measure efficiency and ROI.

The new **Budgets** feature -- also enabled for organization admins -- enables org-level spending limits with configurable alert thresholds (e.g., 80%, 90%, 100%) delivered via email or Slack. Default budgets and override budgets allow administrators to manage individual user spending limits.

The **Settings → Agent** page enables the use of third-party agents -- like Claude Code or Codex -- on OpenHands Enterprise sandboxes through the ACP (Agent Canvas Protocol) framework.

Several additional Jira Cloud and Data CEnter enhancements have been made to improve overall integration experience.

### Enterprise Server

#### Features

* feat: implement semantic file chunking using tree-sitter AST parsing by @ysinghc in [https://github.com/OpenHands/OpenHands/pull/14699](https://github.com/OpenHands/OpenHands/pull/14699)
* feat(org): Add organization conversation admin dashboard by @saurya in [https://github.com/OpenHands/OpenHands/pull/14846](https://github.com/OpenHands/OpenHands/pull/14846)
* feat(app-server): capture production workspace state — initial snapshot at start + archive before delete (APP-2403) by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/14953](https://github.com/OpenHands/OpenHands/pull/14953)
* feat(device-verify): align warning, button color, and add workspace dropdown by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15031](https://github.com/OpenHands/OpenHands/pull/15031)
* feat(enterprise/auth): add super roles via user.role\_id with permission fallback by @chuckbutkus in [https://github.com/OpenHands/OpenHands/pull/14937](https://github.com/OpenHands/OpenHands/pull/14937)
* feat(org): expose caller permissions on GET /organizations/{id}/me by @VascoSch92 in [https://github.com/OpenHands/OpenHands/pull/15048](https://github.com/OpenHands/OpenHands/pull/15048)
* feat(api-keys): add optional active window (not\_before & expires\_at) by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15085](https://github.com/OpenHands/OpenHands/pull/15085)
* feat(app-server): add repo/branch to Laminar trace metadata by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/15059](https://github.com/OpenHands/OpenHands/pull/15059)
* feat: add parallel tool calls (tool\_concurrency\_limit) to agent settings by @VascoSch92 in [https://github.com/OpenHands/OpenHands/pull/14929](https://github.com/OpenHands/OpenHands/pull/14929)
* feat(api-keys): make 'unbound' org scope an explicit, first-class option by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15096](https://github.com/OpenHands/OpenHands/pull/15096)
* feat(jira-dc): fix the integration panel so members get guidance, not the admin setup form by @ak684 in [https://github.com/OpenHands/OpenHands/pull/15040](https://github.com/OpenHands/OpenHands/pull/15040)
* feat: Add dynamic marketplace support for plugin registration by @HeyItsChloe in [https://github.com/OpenHands/OpenHands/pull/14887](https://github.com/OpenHands/OpenHands/pull/14887)
* feat(saas-auth): accept api\_key cookie as a fallback credential by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15101](https://github.com/OpenHands/OpenHands/pull/15101)
* feat(enterprise/auth): super-admin management endpoint (grant/revoke/list) by @jpshackelford in [https://github.com/OpenHands/OpenHands/pull/15006](https://github.com/OpenHands/OpenHands/pull/15006)
* feat: rename admin dashboard to usage & monitoring by @saurya in [https://github.com/OpenHands/OpenHands/pull/15146](https://github.com/OpenHands/OpenHands/pull/15146)
* feat: add SMTP email service by @saurya in [https://github.com/OpenHands/OpenHands/pull/15144](https://github.com/OpenHands/OpenHands/pull/15144)
* feat: track user login timestamps by @saurya in [https://github.com/OpenHands/OpenHands/pull/15148](https://github.com/OpenHands/OpenHands/pull/15148)
* feat: surface email enabled for smtp/resend by @saurya in [https://github.com/OpenHands/OpenHands/pull/15185](https://github.com/OpenHands/OpenHands/pull/15185)
* feat: pass repository metadata to observability traces by @neubig in [https://github.com/OpenHands/OpenHands/pull/14431](https://github.com/OpenHands/OpenHands/pull/14431)
* feat(enterprise): Agent Profiles on the cloud/SaaS backend (#15044) by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/15060](https://github.com/OpenHands/OpenHands/pull/15060)
* feat(backend): Add Budgets dashboard and expand Usage Dashboard by @saurya in [https://github.com/OpenHands/OpenHands/pull/15149](https://github.com/OpenHands/OpenHands/pull/15149)
* feat: budgets and usage monitoring UI by @saurya in [https://github.com/OpenHands/OpenHands/pull/15186](https://github.com/OpenHands/OpenHands/pull/15186)
* feat: surface email enabled for smtp/resend by @saurya in [https://github.com/OpenHands/OpenHands/pull/15214](https://github.com/OpenHands/OpenHands/pull/15214)
* feat(app-server): enrich final archive manifests and remove initial snapshots by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/15058](https://github.com/OpenHands/OpenHands/pull/15058)
* feat(enterprise): make BYOR key alias pattern configurable by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15232](https://github.com/OpenHands/OpenHands/pull/15232)

#### Bug Fixes

* fix(jira): make Jira Cloud and Jira DC HTTP timeouts configurable and consistent by @ak684 in [https://github.com/OpenHands/OpenHands/pull/15012](https://github.com/OpenHands/OpenHands/pull/15012)
* fix: Fix CVE-2026-44681: Update authlib to >=1.6.12 by @mamoodi in [https://github.com/OpenHands/OpenHands/pull/14983](https://github.com/OpenHands/OpenHands/pull/14983)
* fix: don't switch LLM profile before the conversation UUID exists (avoids 422) by @ak684 in [https://github.com/OpenHands/OpenHands/pull/14900](https://github.com/OpenHands/OpenHands/pull/14900)
* fix(enterprise): log automation HTTP response failures as errors by @wgu9 in [https://github.com/OpenHands/OpenHands/pull/15004](https://github.com/OpenHands/OpenHands/pull/15004)
* fix(enterprise): add alembic migration for execution\_status column by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15030](https://github.com/OpenHands/OpenHands/pull/15030)
* fix(jira-dc): more forgiving repo + mention resolution for Data Center by @ak684 in [https://github.com/OpenHands/OpenHands/pull/15034](https://github.com/OpenHands/OpenHands/pull/15034)
* fix(device-verify): rename 'Workspace' dropdown to 'Organization' by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15057](https://github.com/OpenHands/OpenHands/pull/15057)
* fix(jira-dc): don't org-gate a personal-workspace Jira DC integration by @ak684 in [https://github.com/OpenHands/OpenHands/pull/15036](https://github.com/OpenHands/OpenHands/pull/15036)
* fix: stream LLM tokens for cloud conversations and profile switches by @VascoSch92 in [https://github.com/OpenHands/OpenHands/pull/15021](https://github.com/OpenHands/OpenHands/pull/15021)
* fix: set email person property in PostHog during onboarding completion by @lilagrc in [https://github.com/OpenHands/OpenHands/pull/15070](https://github.com/OpenHands/OpenHands/pull/15070)
* fix: Timezones stored in the db do not have a timezone by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15092](https://github.com/OpenHands/OpenHands/pull/15092)
* fix: add test for InMemoryRateLimiter.**init** to prevent duplicate assignment regression by @aivong-openhands in [https://github.com/OpenHands/OpenHands/pull/14729](https://github.com/OpenHands/OpenHands/pull/14729)
* fix(frontend): stop streamed deltas rendering twice and fragmenting in V1 chat by @shanemort1982 in [https://github.com/OpenHands/OpenHands/pull/15108](https://github.com/OpenHands/OpenHands/pull/15108)
* fix: crash when request.client is None in InMemoryRateLimiter by @rakshith1928 in [https://github.com/OpenHands/OpenHands/pull/15119](https://github.com/OpenHands/OpenHands/pull/15119)
* fix(sandbox-spec): fall back to defaults when runtime-api has no warm runtimes by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15141](https://github.com/OpenHands/OpenHands/pull/15141)
* fix: settings page scroll layout by @saurya in [https://github.com/OpenHands/OpenHands/pull/15147](https://github.com/OpenHands/OpenHands/pull/15147)
* fix(app\_server): pass flat mcp\_config shape to SDK Agent by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15159](https://github.com/OpenHands/OpenHands/pull/15159)
* fix: scroll settings sidebar so Skills is reachable in orgs by @hieptl in [https://github.com/OpenHands/OpenHands/pull/15138](https://github.com/OpenHands/OpenHands/pull/15138)
* fix(frontend): read SDK 1.31.x flat mcp\_config wire format by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15165](https://github.com/OpenHands/OpenHands/pull/15165)
* fix(app\_server): derive agent server image from package version by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15168](https://github.com/OpenHands/OpenHands/pull/15168)
* fix(app-server): pass index columns as a list in migration 013 by @VascoSch92 in [https://github.com/OpenHands/OpenHands/pull/15176](https://github.com/OpenHands/OpenHands/pull/15176)
* fix: default ENABLE\_ACP on so ACP agent settings show in OH Cloud by @hieptl in [https://github.com/OpenHands/OpenHands/pull/15183](https://github.com/OpenHands/OpenHands/pull/15183)
* fix: send authenticated marketplace URLs to agent-server by @hieptl in [https://github.com/OpenHands/OpenHands/pull/15187](https://github.com/OpenHands/OpenHands/pull/15187)
* fix: prevent webhook-driven DB connection leaks by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15212](https://github.com/OpenHands/OpenHands/pull/15212)
* fix(frontend): mention SMTP env vars for budget alerts by @saurya in [https://github.com/OpenHands/OpenHands/pull/15218](https://github.com/OpenHands/OpenHands/pull/15218)
* fix(enterprise): cascade-delete conversation\_cost\_events on conversation delete by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15220](https://github.com/OpenHands/OpenHands/pull/15220)
* fix: Enable LIFO database connection pooling by @tofarr in [https://github.com/OpenHands/OpenHands/pull/15225](https://github.com/OpenHands/OpenHands/pull/15225)
* fix(app-server): preserve observability context metadata by @hxaxd in [https://github.com/OpenHands/OpenHands/pull/15215](https://github.com/OpenHands/OpenHands/pull/15215)
* fix(app-server): preserve conversation created\_at across lifecycle webhooks by @Sujit-1509 in [https://github.com/OpenHands/OpenHands/pull/15243](https://github.com/OpenHands/OpenHands/pull/15243)
* fix(mcp): preserve SaaS credentials with encrypted storage by @simonrosenberg in [https://github.com/OpenHands/OpenHands/pull/15257](https://github.com/OpenHands/OpenHands/pull/15257)
* fix(frontend): restore cross-domain PostHog tracking by aligning client/server distinct\_id (WIP) by @lilagrc in [https://github.com/OpenHands/OpenHands/pull/15100](https://github.com/OpenHands/OpenHands/pull/15100)
* fix(app-server): lower DB pool defaults and make them env-tunable by @dylan-openhands in [https://github.com/OpenHands/OpenHands/pull/15270](https://github.com/OpenHands/OpenHands/pull/15270)
* fix(mcp): preserve MCP auth secrets stripped by settings GET round-trip by @jlav in [https://github.com/OpenHands/OpenHands/pull/15285](https://github.com/OpenHands/OpenHands/pull/15285)

#### Maintenance

* build: pin dependency versions exactly by @rbren in [https://github.com/OpenHands/OpenHands/pull/14384](https://github.com/OpenHands/OpenHands/pull/14384)
* ci: add release ready gate by @enyst in [https://github.com/OpenHands/OpenHands/pull/14987](https://github.com/OpenHands/OpenHands/pull/14987)
* ci: PLTF-2960 open a chart image-tag bump PR on cloud release by @aivong-openhands in [https://github.com/OpenHands/OpenHands/pull/15166](https://github.com/OpenHands/OpenHands/pull/15166)
* ci: PLTF-2960 sync chart appVersion with cloud image tag by @aivong-openhands in [https://github.com/OpenHands/OpenHands/pull/15219](https://github.com/OpenHands/OpenHands/pull/15219)
* ci: wait for the docker build before retagging images by @jlav in [https://github.com/OpenHands/OpenHands/pull/15213](https://github.com/OpenHands/OpenHands/pull/15213)
* chore: Update README.md by @rbren in [https://github.com/OpenHands/OpenHands/pull/15271](https://github.com/OpenHands/OpenHands/pull/15271)

***

### Software Agent SDK

#### Features

* feat(agent-server): expose repository metadata for workspace archives by @simonrosenberg in [https://github.com/OpenHands/software-agent-sdk/pull/3932](https://github.com/OpenHands/software-agent-sdk/pull/3932)
* feat: commit-history API — list commits and per-commit diffs by @hieptl in [https://github.com/OpenHands/software-agent-sdk/pull/4075](https://github.com/OpenHands/software-agent-sdk/pull/4075)
* feat(security): add ToolShieldLLMSecurityAnalyzer by @xli04 in [https://github.com/OpenHands/software-agent-sdk/pull/2911](https://github.com/OpenHands/software-agent-sdk/pull/2911)

#### Bug Fixes

* fix(skills): match keyword triggers on whole words only by @VascoSch92 in [https://github.com/OpenHands/software-agent-sdk/pull/4008](https://github.com/OpenHands/software-agent-sdk/pull/4008)
* fix(sdk): reconnect remote conversation websocket by @bozhnyukAlex in [https://github.com/OpenHands/software-agent-sdk/pull/3987](https://github.com/OpenHands/software-agent-sdk/pull/3987)
* fix(security): add a secret-disclosure consent rule to the agent security policy by @warmjademe in [https://github.com/OpenHands/software-agent-sdk/pull/3823](https://github.com/OpenHands/software-agent-sdk/pull/3823)
* fix(sdk): keep legacy history on resume when the stored tail is a non-tree artifact by @VascoSch92 in [https://github.com/OpenHands/software-agent-sdk/pull/4068](https://github.com/OpenHands/software-agent-sdk/pull/4068)
* fix: support GPT-5.6 across Codex authentication by @neubig in [https://github.com/OpenHands/software-agent-sdk/pull/4056](https://github.com/OpenHands/software-agent-sdk/pull/4056)
* fix: pick a display base ref that keeps committed work visible by @hieptl in [https://github.com/OpenHands/software-agent-sdk/pull/4065](https://github.com/OpenHands/software-agent-sdk/pull/4065)
* fix(mcp): validate secrets after parsing by @simonrosenberg in [https://github.com/OpenHands/software-agent-sdk/pull/4099](https://github.com/OpenHands/software-agent-sdk/pull/4099)
* fix(skills): make marketplaces additive to public skills by @rsd-darshan in [https://github.com/OpenHands/software-agent-sdk/pull/4087](https://github.com/OpenHands/software-agent-sdk/pull/4087)
* fix(mcp): preserve nested object properties in LLM-facing tool schema by @ixchio in [https://github.com/OpenHands/software-agent-sdk/pull/4011](https://github.com/OpenHands/software-agent-sdk/pull/4011)
* \[codex] fix ACP prompt argument order by @neubig in [https://github.com/OpenHands/software-agent-sdk/pull/3996](https://github.com/OpenHands/software-agent-sdk/pull/3996)

#### Maintenance

* ci(version-bump-prs): make PR-creation steps independent by @VascoSch92 in [https://github.com/OpenHands/software-agent-sdk/pull/4051](https://github.com/OpenHands/software-agent-sdk/pull/4051)
* ci: add release security-scan by @smolpaws in [https://github.com/OpenHands/software-agent-sdk/pull/4042](https://github.com/OpenHands/software-agent-sdk/pull/4042)
* chore(deps): bump MishaKav/pytest-coverage-comment from 1.7.2 to 1.10.0 by @dependabot\[bot] in [https://github.com/OpenHands/software-agent-sdk/pull/4046](https://github.com/OpenHands/software-agent-sdk/pull/4046)
* chore(deps): bump docker/setup-buildx-action from 4.0.0 to 4.2.0 by @dependabot\[bot] in [https://github.com/OpenHands/software-agent-sdk/pull/4045](https://github.com/OpenHands/software-agent-sdk/pull/4045)

***

### Runtime API

#### Features

* feat(logging): emit exc\_info and stack\_info as JSON arrays by @tofarr in [https://github.com/OpenHands/runtime-api/pull/635](https://github.com/OpenHands/runtime-api/pull/635)
* feat(cleanup): enrich final workspace archive manifests by @simonrosenberg in [https://github.com/OpenHands/runtime-api/pull/630](https://github.com/OpenHands/runtime-api/pull/630)

#### Bug Fixes

* fix: prevent DetachedInstanceError on Runtime accessed after session close by @tofarr in [https://github.com/OpenHands/runtime-api/pull/636](https://github.com/OpenHands/runtime-api/pull/636)

***

### OpenHands Cloud (Helm Chart)

#### Features

* feat: upgrade embedded cluster to 2.19.2+k8s-1.34 by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/821](https://github.com/OpenHands/OpenHands-Cloud/pull/821)
* feat: upgrade embedded cluster to 2.19.2+k8s-1.35 by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/822](https://github.com/OpenHands/OpenHands-Cloud/pull/822)
* feat: upgrade embedded cluster to 2.19.2+k8s-1.36 by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/826](https://github.com/OpenHands/OpenHands-Cloud/pull/826)
* feat(sysbox): default sandbox isolation on the embedded cluster by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/770](https://github.com/OpenHands/OpenHands-Cloud/pull/770)
* feat: PLTF-3196 Configure global OpenHands resolver label by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/807](https://github.com/OpenHands/OpenHands-Cloud/pull/807)
* feat: PLTF-2960 sync metadata with image tag bumps by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/828](https://github.com/OpenHands/OpenHands-Cloud/pull/828)
* feat: Add replicated vendor portal links in release workflows by @dylan-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/833](https://github.com/OpenHands/OpenHands-Cloud/pull/833)
* feat: PLTF-3198 enable the Replicated SDK by default for helm installs by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/895](https://github.com/OpenHands/OpenHands-Cloud/pull/895)
* feat(replicated): add OEM User Creation Flow advanced option by @jpshackelford in [https://github.com/OpenHands/OpenHands-Cloud/pull/914](https://github.com/OpenHands/OpenHands-Cloud/pull/914)

#### Bug Fixes

* fix(postgres): raise embedded postgres memory limit to avoid OOM by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/829](https://github.com/OpenHands/OpenHands-Cloud/pull/829)
* fix: improve integrations-hub Datadog and probe configuration by @neubig in [https://github.com/OpenHands/OpenHands-Cloud/pull/862](https://github.com/OpenHands/OpenHands-Cloud/pull/862)
* fix(openhands): stop warm-runtimes job pods matching the runtime-api Service selector by @ak684 in [https://github.com/OpenHands/OpenHands-Cloud/pull/867](https://github.com/OpenHands/OpenHands-Cloud/pull/867)
* fix(openhands): mirror agentServerEnv into warm-runtime env so warm pools stay claimable by @ak684 in [https://github.com/OpenHands/OpenHands-Cloud/pull/866](https://github.com/OpenHands/OpenHands-Cloud/pull/866)
* fix: set default agent-server tag back to 1.36.0-python by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/908](https://github.com/OpenHands/OpenHands-Cloud/pull/908)

#### Maintenance

* ci: PLTF-2920 dispatch staging chart bumps after publish by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/801](https://github.com/OpenHands/OpenHands-Cloud/pull/801)
* refactor(openhands): rename gitlab webhook install cronjob by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/865](https://github.com/OpenHands/OpenHands-Cloud/pull/865)
* ci: PLTF-3193 dispatch development chart bumps after publish by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/843](https://github.com/OpenHands/OpenHands-Cloud/pull/843)
* test: PLTF-1257 helm-unittest setup by @aivong-openhands in [https://github.com/OpenHands/OpenHands-Cloud/pull/894](https://github.com/OpenHands/OpenHands-Cloud/pull/894)
* chore: add CODEOWNERS by @jlav in [https://github.com/OpenHands/OpenHands-Cloud/pull/878](https://github.com/OpenHands/OpenHands-Cloud/pull/878)
