> For the complete documentation index, see [llms.txt](https://docs.guardianservice.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.guardianservice.app/whats-new/release-notes/mgs-v1.2.0.md).

# MGS v1.2.0

### New Features & Enhancements

#### Transfer Tenant Ownership Between Administrators

Tenant ownership transfers are now a built-in workflow in MGS. A tenant admin can hand off one or more of their tenants to another verified MGS user, and the receiving admin reviews and decides on each transfer individually before access changes hands. This replaces the previous manual process and gives organizations a clean way to manage ownership when team members change roles or leave the company.

* **Initiate a transfer.** From the Profile page, a tenant admin can choose Migrate Ownership and enter selection mode for their Tenants list. After selecting one or more tenants, they enter the target user's email and username, and the request is sent for review. Multiple tenants can be transferred in a single request.
* **Review incoming requests.** The receiving admin sees a new Migration Requests area in the sidebar with a counter showing the number of pending requests. The page shows each pending tenant with its name, ID, previous owner, network, and how recently it was requested.
* **Accept or reject each request.** Each request is reviewed independently. Accepting grants full admin access to that tenant and adds it to the standard Tenants list. Rejecting declines the transfer, optionally with a reason, and ownership stays with the original admin. Tenants under pending review cannot be opened until accepted, so access is always explicit.
* **Live status while the transfer is in progress.** During a transfer the dialog now shows live progress instead of a blocking spinner, so administrators see what is happening at each step rather than a quiet wait.
* **Branded email notifications.** All parties in the workflow now receive Climission-branded emails: the receiving admin sees a request notification listing the tenants involved, and the originating admin is notified when each request is accepted or rejected, including the optional reason for rejections.

The result is a controlled, auditable handoff that protects access to tenant data and keeps both administrators informed at every step.

#### Multiple Administrators per Tenant

A tenant can now have more than one administrator. Previously, if a tenant's single admin lost access, recovering control of the tenant required a manual process through Climission support.

* Tenants now support multiple administrators, each with full admin permissions for that tenant.
* This provides a built-in safety net: if one admin leaves the team or loses access, other admins can continue to manage the tenant and invite new users without support intervention.
* Additional admins can be added and managed alongside regular tenant users from the same user-management screens you already use today.

This change reduces single points of failure for tenant ownership and lets organizations spread administrative responsibility across a team.

#### Treasury Transfers Between Climission and Tenants

The Hedera treasury experience now supports direct transfers between the Climission treasury and a tenant admin's account, in both directions. Tenant admins also benefit from automatic refill behavior that keeps their account funded.

* **Two-way HBAR transfers.** A new dialog allows transfers between the Climission treasury and any tenant admin's account, with both deposit and withdrawal supported.
* **Auto-refill on creation and low balance.** Tenant Hedera accounts can be set to top up automatically when first created and again whenever the balance drops below a configured threshold, so on-chain activity is not interrupted by an empty account.
* **No more duplicate top-ups.** An issue that could occasionally trigger duplicate top-ups has been resolved, so automatic refills now behave predictably.
* **Faster treasury balance loads.** Treasury balances now appear quickly across the administrator views, without the delays or duplicated background activity that could previously slow the page down.
* **ATP Spend History grid.** Administrators can now see a detailed grid of ATP spending events with timestamps and transaction details, including the username, in a cleaner layout.

#### Subscription Management Enhancements

This release brings a number of refinements to the subscription experience, both for tenant admins managing their own plans and for Climission admins running the platform.

* **Admin subscription requests grid.** Climission administrators now have a single grid for all incoming subscription requests, with filtering and sorting, so requests can be reviewed and actioned in one place.
* **Subscription expiry dashboard.** The admin subscriptions view now includes a "Days Remaining" column with color-coded urgency (red, yellow, green) and a filter for subscriptions expiring within 5, 10, 15, 30, 60, or 90 days. This makes it easy to identify customers approaching renewal and prioritize outreach before subscriptions lapse.
* **Configurable grace period before auto-disable.** When a tenant goes over its plan limits, MGS now flags it as "Pending disablement" for a configurable grace window rather than disabling it immediately. A tooltip shows the scheduled date so there are no surprises, and the flag is cleared automatically if usage returns to within limits.
* **Imported policies counted in your total.** The total policies count used by the subscription quota now correctly includes imported policies alongside Created, Published, and Dry-run policies, giving an accurate view across all policies in a tenant.
* **Cleaner search and filtering.** Search in the subscription request grid now returns the expected matches, and the subscription filter behaves consistently across columns.

#### Account and Profile Improvements

* **Change email from Profile.** Users can now update the email address associated with their account directly from the Profile page. A secure confirmation step through email ensures ownership of the new address before the change is applied, bringing email management into line with the existing change password flow.
* **Hedera credentials validation at registration.** MGS now validates Hedera credentials before starting the registration process. Invalid credentials are flagged immediately, so users get clear feedback at the earliest possible step rather than after a failed registration.
* **Resilient user selector during sign-in and invite acceptance.** Edge cases that previously left the user selector blank with no guidance now show a clear empty state with the user's email and next steps, so there is always a way forward.

#### Dialog and UI Polish

* **Migrate Ownership dialog rewrite.** The dialog has been redesigned for clarity: what is transferred and what is not is now described in plain language, helper text has been rewritten, the primary action is labeled "Transfer Ownership" alongside Cancel, and during submission the action button is disabled to prevent duplicate requests with a "Starting migration…" status under the spinner.
* **Clearer Delete User confirmation.** The dialog now shows guidance tailored to the type of user being deleted. Standard Registry policy ownership warnings only appear when relevant, and copy has been updated to emphasize that the action cannot be undone.
* **Tenants page scrollbar fix.** The tenant management page no longer shows a doubled scrollbar on Chromium-based browsers, including Brave, and content fits cleanly within the viewport.
* **Branding applied immediately after login.** Tenant branding now displays correctly from the first screen after login, with no momentary unbranded flash.
* **General copy and layout improvements.** A batch of small UI improvements across dialogs and screens addresses inconsistent spacing, wording, and behavior throughout the product.

### Platform Stability

#### Smoother and More Reliable Sessions

A focused stability pass reduces memory growth during long sessions and addresses a small number of correctness issues that could affect data-heavy workflows.

* **Quieter, more stable browser sessions.** Background resources across the notification banner, user profile, administrator subscription screens, the platform header, the policy formulas and contract configuration screens, the import dialog, schema fields with map inputs, and table dialogs are now released cleanly when you move between pages. The result is a steadier, more responsive experience over the course of a working day, with less need to refresh the browser tab.
* **Fewer redundant requests.** The Tenants and Subscription pages no longer fire duplicate requests on load. A page refresh now sends the expected requests once, reducing background activity and speeding up perceived load.
* **Stable memory during heavy policy execution.** Background calculations used by policies (formulas, custom logic, and data transformations) now release their resources after each evaluation. Heavy policies with many calculation steps no longer cause memory to grow unbounded over time.
* **Correct Hedera network on NFT lookups.** A network-mismatch issue affecting NFT serial lookups has been fixed, so tenants using both testnet and mainnet registries always read from the correct network.
* **Faster recovery after a platform restart.** Policies now become available faster after a platform restart, eliminating the post-restart wait that previously surfaced as an initialization error on the first requests.

### Open-Source Guardian 3.6 Now Included

MGS v1.2.0 is built on the latest open-source Guardian release, version 3.6. This brings a meaningful set of new capabilities to your MGS environment without any extra configuration on your side.

#### Highlights for policy authors

* **Edit published policy parameters at runtime.** Selected policy parameters can now be adjusted on a published policy without creating a new version, so small operational tweaks no longer require a full re-publish cycle.
* **Policy Integrity Tests.** A new testing capability lets policy authors verify that a policy produces the expected document outputs and replay recorded runs, making it easier to catch regressions introduced by policy edits, upgrades, or platform changes.
* **Top-level API for common tasks.** A simplified set of high-level API endpoints is now available for common Guardian operations, so customers building their own front ends or integrations no longer need to interact with policy-block-specific APIs for every action.

#### Enhancements you may notice in day-to-day use

* **More expressive formula and calculation blocks.** Formula Calculation Blocks now support nested arrays, multiple conditions, and special characters in variable names, with usability improvements to Formula Linked Definitions.
* **Sub-schemas and improved schema search.** Sub-schemas can now be created and assigned within policies, and schemas can be searched and filtered by ID. A long-standing policy binding issue has also been resolved.
* **Retry failed mint and transfer operations.** Failed mint and transfer operations can now be retried directly from the policy viewer, reducing the need to restart larger workflows after isolated failures.
* **Expanded API documentation.** Policy block API documentation is now generated automatically from block configurations, and external developer documentation has been expanded.
* **Configurable token minting and broader Python support.** Token minting now supports configurable rounding behavior, and the Python execution library has been extended for custom-logic blocks.

No action is required to take advantage of these capabilities, they are available as part of this release.

***

For the full changelog and release notes on the open-source Guardian please visit: <https://github.com/hashgraph/guardian/releases>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.guardianservice.app/whats-new/release-notes/mgs-v1.2.0.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
